A. Marcas de microprocesadores.
Antes de continuar, vamos a repasar por encima qué grandes marcas y productos (por series o modelos conocidos) tienen o habían tenido en el mercado.
Intel:
- 4004, 4040, 8008, familia 8048 (MCS), 8080, 8085, 8086, 8088, 80186, 80188, 80286, 80386, 80486, Pentium (80586), Pentium MMX, Pentium Pro, Pentium II, Pentium Celeron, Pentium II Xeon, Pentium III y Pentium III Xeon, Pentium M y Pentium M Celeron, Pentium Core y Core Duo, Pentium 4, Pentium Itanium y Pentium Itanium II, Pentium D, Pentium Xeon Dual Core, Intel Xeon Quad Core, Intel Core 2 Duo, Intel Core 2 Xtreme, Intel Core 2 Quad, Intel Dual Core, Pentium G, Atom, MIC, Intel Core i3, Intel Core i5, Intel Core i7 e Intel Core i9.
Tenéis que tener en cuenta que estos son tipos genéricos. Existen muchos modelos, con distinta arquitectura, velocidades y otras características.
AMD:
- AMD 9080 (copia del 8080), Am2901, Am29116, Am293xx, Am 23k, (clones de Intel: 8086, Am286, Am386, Am486, Am5x86), AMD K5, K6 (Athlon), Duron, Sempron, K7, AMD 64, AMD K8, AMD Opteron, AMD 64x2, AMD Turion, AMD Phenom (K10), AMD Athlon II, AMD Phenom II, AMD Fusion, Bobcat, Bulldozer, Vishera y los últimos, AMD Ryzen.
Zilog:
- Z80.
MOS Tech/Rockwell:
- 6502.
Qualcomm:
-Series Snapdragon 200, 400, 600, 700, 800, Snapdragon 8+, Snapdragon 8+ gen 2
Motorola:
- Motorola 6800, Motorola 6809, Motorola 68000, Motorola 68008, Motorola 68012, Motorola 68020, Motorola 68030, Motorola 68040, Motorola 68881, Motorola 88000, Motorola 96000, Motorola Dragonball, Motorola 68LC040, Motorola MC68EC020, Motorola MC14500B, Motorola Dragonball, Motorola Coldfire, Motorola PowerPC.
Samsung:
- Samsung ARM 1176, Samsung S5PC100 ARM Cortex-A8
TSMC (para Apple - iPhone):
- Chip A4 ARM Cortex A8, Chip A5 ARM Cortex A9, Chip A6, Chip A7, Chip A8, Chip A9, Chip A10 Fusion, Chip A11 Bionic, Chip A12 Bionic, Chip A13 Bionic y Chip A14 Bionic por el momento.
Bien hasta aquí una lista de microprocesadores por fabricante. Seguro que hay muchos más que no he citado, pero estos son de más importantes, tanto para PC's como para los dispositivos móviles.
B. ¿Cómo está compuesto internamente un microprocesador?
Desde los prehistóricos 4004, 8008 y 8080 (y anteriores), considerados como los primeros microprocesadores, hasta los actuales i5, i7 e i9 de Intel, los Ryzen y Athlon de AMD o los Qualcomm Snapdragon 2, todos trabajan de la siguiente forma:
1. Todos los microprocesadores disponen de tres buses para trabajar. El bus de direcciones, el bus de datos y el bus de control.
a. El bus de direcciones sirve para indicar al microprocesador a qué dirección de memoria tiene que acceder.
b. El bus de datos sirve para indicar al microprocesador el dato a trabajar.
c. El bus de control. Este consta de distintas líneas independientes cuyas funciones son diversas, desde señales de cronómetro hasta transmitir órdenes a los distintos dispositivos, o como indicativo de qué acciones son de lectura y cuáles de escritura, interrupciones y más. Todos los buses del microprocesador son bidireccionales, es decir, funcionan en ambos sentidos, excepto algunos (bastantes) del bus de control, que tan solo tienen un sentido (por ejemplo, el reloj).
2. Todos los microprocesadores disponen de al menos una memoria buffer (o caché) entre los buses del microprocesador y los de la placa base, con objeto de adecuar las diferentes velocidades de trabajo entre micro y placa base. En los microprocesadores de últimas generaciones se les llama L1, L2 e incluso L3.
3. Todos los microprocesadores tienen una sección de control. Esta se encarga de decodificar las instrucciones recibidas en código máquina (o instrucciones de ensamblador) y la ejecución de las mismas.
4. Todos los microprocesadores tienen registros. Los registros son memorias de alta velocidad que utiliza el microprocesador internamente para su gestión. Hay registros de 4 bits hasta de 64 bits. Incluso mucho de estos registros se permiten juntar para realizar cálculos superiores.
5. Todos los microprocesadores disponen de una ALU. ALU significa Unidad Aritmética Lógica en inglés, en español es UAL, pero es lo mismo. Esta unidad se encarga de coger ciertos datos de algunos registros (no todos trabajan con la ALU) y realizar operaciones aritméticas y booleanas. Esta ALU puede verse apoyada por un co-procesador aritmético, que en los micros viejos era una opción pero en los nuevos ya vienen incorporados. En los micros de Intel, uno de los cambios del x486 al Pentium era este, la adición del co-procesador aritmético de serie.
A todo este entramado, se le llama núcleo. Habréis visto en las características de los microprocesadores el uso de 2 núcleos, 4, 8, 12 núcleos e incluso en los últimos i7/i9 de Intel de 13a generación hasta 16 núcleos. Bien, significa que son en realidad x microprocesadores unidos internamente, con lo cual se agiliza mucho el proceso.
6. Todos los microprocesadores trabajan con una frecuencia reloj. Esta frecuencia que va en hercios (Hz) proporciona al microprocesador un patrón para ejecutar las instrucciones. No quiero liaros mucho con esto, porque tampoco, a este nivel, es necesario. Simplemente quedaros que cuanta más frecuencia tiene, más rápido se ejecutan las instrucciones y por lo tanto, más rápido va el pc a la hora de ejecutar programas. Las primeras frecuencias eran de 2/4 MHz (millones de hercios) y los actuales i5/i7 van entorno a los 5GHz hasta los 6Ghz los de 13a generación. 1 GHz = 1000 MHz.
C. Trabajo interno de los microprocesadores.
1. El procesador coge una instrucción a través del buffer y la decodifica en la sección de control, transportada a través del bus de direcciones y de datos, a un registro.
2. La decodifica. Según la instrucción que sea, carga valores en la ALU, las procesa y ...
3. La vuelve a dejar el valor en el registro, para su posterior tratamiento. Y así con todas las instrucciones binarias hasta acabar.
Voy a enseñaros, a modo de conocimiento, como lo hace, con ensamblador.
El ensamblador es un lenguaje de programación de bajo nivel, que sirve para facilitar la programación de código máquina o binario. Uso el sistema del micro Z80 (8 bits) pero, en el resto de microprocesadores usan instrucciones similares. No quiero que os lo aprendáis, es simplemente captar la idea.
Ensamblador:
LD HL, (#95E7) ; cargamos en un registro que se llama HL el valor (lo que contenga) la memoria en la posición #95E7 hexadecimal. LD es una instrucción de ensamblador que significa LoaD (leer). Cuando la sección de control detecta esta instrucción, inmediatamente sabe que el procesador tiene que leer una posición de memoria, y pone en movimiento todo el proceso de lectura de memoria RAM, para pasar la información
LD A, (HL); cargamos en el registro A (Acumulador) el contenido del registro HL. El acumulador es un registro especial de la ALU. Esto nos indica que vamos a ejecutar una operación Aritmético -lógica en el microprocesador
CMP A, (BC); comparamos (CMP - CoMPare) el valor de A con el contenido de otro registro llamado BC.
RET NZ; regresamos (RETurn) si la operación no ha resultado positiva en flag, que es otro registro especial de la ALU.SUB A, 1; le quitamos 1 al valor resultante (SUBstraction)XOR A; le hacemos una operación Booleana ( OR exclusiva - XOR)LD HL, A; Cargamos el el registro HL, el resultado de la operación en la ALU.LD #95E8,(HL); volvemos a pasar a la RAM el valor del registro HL, después de tratarlo.RET ; devolvemos el proceso al programa que le llamó
Este sería un ejemplo práctico en ensamblador para tratar de explicar de como trabaja el microprocesador por dentro (en este caso, de un Z80, pero podría buscaros las instrucciones de Intel, AMD, Qualcomm o la que sea y veríais que funciona prácticamente igual. Repito, quiero que os quedéis con el concepto, nada más.
F. Tipos de arquitectura.
Bueno, este es otro tema que voy a tocar por encima, para que os suene.
La arquitectura de un microprocesador es básicamente, la estructura interna que tiene. Y con ello estoy también explicando la forma en la que se construyen.
- Arquitectura CISC y RISC.
CISC es el tipo de arquitectura que se utiliza actualmente. Si queréis ampliar la información, al final os dejo un enlace donde podréis comparar los tipos de arquitecturas. Luego existe el término microarquitectura, que es el sistema de fabricación dentro de la arquitectura. Si os suena ARM, Coffee Lake, Skylake, Zen, Zen 2 y otras, estamos hablando de esto. Solo lo comento para que tengáis una idea.
G. Mejora de la arquitectura, ¿qué implica?
Obviamente, la mejora de la arquitectura lo implica todo, desde la capacidad de procesamiento de los datos, la velocidad, la accesibilidad a más memoria (no es la misma capacidad de acceso de un microprocesador de 8 bits, que es de 64k de memoria que uno de 64 bits, que es muy superior (no soportable por los S.O., que tiene una limitación de 128 Gb y 512 Gb en versiones pro). En general, más capacidad de trabajo de un PC. Por eso, las distintas compañías han dedicado su esfuerzo en crear micros cada vez más potentes.
Y hasta aquí, el capítulo 5.
Enlaces de interés:
https://www.muycomputer.com/2018/10/24/procesador-que-es/
https://serbal.pntic.mec.es/irec0010/cpu.html
Partes de un microprocesador:
https://www.profesionalreview.com/2019/06/30/partes-de-un-procesador/
Sockets:
https://www.profesionalreview.com/2021/03/07/tipos-de-socket/
Arquitecturas microprocesadores:
https://www.profesionalreview.com/2022/04/26/tipos-de-arquitectura-de-un-ordenador/
https://www.profesionalreview.com/procesador-cpu/
https://www.ticarte.com/contenido/arquitectura-interna-del-microprocesador
No me voy a extender más. Espero que después de tanta cosa, no os duela la cabeza. 😂😂 La semana que viene, toca chipset y placa base. Otro capítulo muy apasionante (y largo).
Espero que os haya gustado.
🖌️ Todas las imágenes son © a sus respectivos autores.
Saludos.
No hay comentarios:
Publicar un comentario