Unidad Didáctica 3: El Microprocesador



Descargar 91.16 Kb.
Fecha de conversión03.03.2017
Tamaño91.16 Kb.






Unidad Didáctica 3: El Microprocesador.


Contenidos y Temporalización




Apartado

Horas

  1. Microprocesadores.

    1. Frecuencia de reloj.

    2. Buses.

    3. Paralelismo a nivel de instrucción

      1. Superescalaridad.

  2. Memoria Caché integrada

    1. Jerarquía

    2. Velocidad y tamaño

  3. Conjunto de instrucciones

    1. Diseño CISC.

    2. Diseño RISC.

  4. Evolución de los microprocesadores

    1. Síntesis de la trayectoria de Intel.

    2. Síntesis de la trayectoria de AMD.

    3. Comparativa Técnicas entre Procesadores Intel y AMD

5. Actividades

3
0.5

0.5


2

6


Total

12




Desarrollo de los contenidos




  1. Microprocesadores.

El microprocesador es un circuito integrado compuesto por millones de componentes que contiene todos los elementos de una "unidad central de procesamiento”. Como se vio en el modelo Von Neumann, las unidades funcionales que componen un microprocesador son: registros, la Unidad de control, la Unidad aritmético-lógica, y dependiendo del procesador, una unidad en coma flotante.

En base a estas unidades funcionales, el microprocesador se encarga de ejecutar las instrucciones almacenadas en la memoria principal. Ahora recordamos los pasos en los que realizamos la ejecución de las instrucciones:



  • Lectura de la instrucción desde la memoria principal.

  • Envío de la instrucción al decodificador.

  • Decodificación de la instrucción, es decir, determinar qué instrucción es y por tanto qué se debe hacer.

  • Lectura de operandos (si los hay).

  • Ejecución.

  • Escritura de los resultados en la memoria principal o en los registros.

El ritmo de ejecución de estas tareas viene marcado por los impulsos que genera un reloj que está presente en todo microprocesador. Este reloj genera un ritmo constante de impulsos eléctricos y al tiempo que pasa entre el inicio de un pulso y el siguiente se le denomina ciclo.

    1. Frecuencia de reloj

La frecuencia de reloj indica la velocidad a la que un microprocesador realiza sus operaciones más básicas, como sumar dos números o transferir el valor de un registro a otro. Se mide en ciclos por segundo (hercios). Actualmente, la velocidad de los microprocesadores se mide en Gigahercios (GHz), donde un gigahercio equivale a 1.000.000.000 de Hz, por lo que un microprocesador que trabaje a 1GHz puede realizar “teóricamente” 1.000.000.000 operaciones básicas.

Esta señal de reloj es la que sincroniza todos los dispositivos del ordenador, pero no todos los dispositivos pueden trabajar a la misma velocidad. Por lo que, en base a una señal de reloj común del sistema, se obtienen las señales de reloj de cada uno de los dispositivos usando para ello multiplicadores de frecuencia.

Normalmente, cuando se usa el término frecuencia de reloj aplicado a un ordenador, suele sobreentenderse que se refiere la velocidad de funcionamiento del procesador principal.


    1. Buses

Una computadora personal requiere de transferir datos del disco a la UCP, de la UCP a la memoria y de la memoria al adaptador de video, al de red, módem... y no se pueden tener circuitos eléctricos separados para cada par de dispositivos.

La solución para el problema de la comunicación entre dispositivos dentro de la computadora fue la utilización de un transporte de datos genérico, también conocido como bus. Este transporte de datos es simplemente un conjunto de líneas eléctricas comunes que conectan todos los dispositivos y componentes de la computadora, en donde los circuitos observan las cargas en estas líneas para identificar los datos y responder cuando su número de identificación es transmitido y comienzan a transmitir o recibir datos en otro conjunto de cables. Este transporte es el medio por el cual viajan los datos y pueden tener las siguientes características:



  • Ancho del bus que es la cantidad de bits que puede transportar de manera simultánea.

  • Velocidad del bus, que hace referencia a la cantidad de grupos de datos por segundo que se pueden enviar el bus.

  • El ancho de banda es la combinación de las dos anteriores, dando como resultado la cantidad de bits por segundo que pueden viajar a través del transporte. La fórmula para calcular el ancho de banda es: Ancho de bus * Velocidad del bus. A mayor ancho de banda, mayor velocidad de transferencia y, por tanto, de ejecución.

Se distinguen tres tipos de buses:

  • Bus de direcciones: Mediante este bus se establece la dirección de memoria del dato con el que se tiene que operar. El número de líneas de este de canal limita la cantidad de direcciones de memoria principal diferentes que el microprocesador puede usar. Esa cantidad de ubicaciones resulta de elevar el 2 a la 32ª potencia. "2" porque son dos las señales binarias, los bits 1 y 0; y "32ª potencia" porque las 32 pistas del Bus de Direcciones son, en un instante dado, un conjunto de 32 bits. Así, con 32 líneas, podemos ir a 232 direcciones diferentes, que son 4 gigabytes de memoria principal.

  • Bus de datos: es el bus por el que viajan los datos e instrucciones a ejecutar. Un mayor ancho de este bus hace que pueda viajar mas información a la vez, o trabajar con datos mas complejos.

  • Bus de control: Gobierna el uso y acceso a las líneas de datos y de direcciones. Sincronizar las actividades y transacciones con los periféricos del sistema.  Como estas líneas están compartidas por todos los componentes tiene que proveerse de determinados mecanismos que controlen su utilización. Las señales de control transmiten tanto ordenes como información de temporización entre los módulos del sistema.

Actualmente, cuando en un micro decimos que "tiene un bus de 64 bits" solemos referirnos a que su bus de datos es de 64 bits. En ese bus es donde van, precisamente, los datos e instrucciones que el micro tiene que manejar.

Luego existe el "bus de direcciones" y nos marca la cantidad de bytes de memoria externa que el micro puede manejar. Un micro con un bus de direcciones de 16 bits (Z80 por ejemplo) puede majenar 65.536 bytes de memoria. Un micro de 32 bits en el bus de direcciones manejaría hasta 4 Gbytes.

Centrémonos en el bus de datos, que es lo que nos suelen indicar cuando nos dan las prestaciones de un procesador.

Se ha comentado que por ese bus van los datos y las órdenes que el micro debe ejecutar. Esa es una ventaja de un bus más ancho: puedes manejar números mayores de un solo "clic" de reloj. Es decir, un bus más ancho permite además de manejar números mayores y añadir más funcionalidades a las instrucciones de la CPU. Con esto se consigue disminuir el tiempo que el procesador tarda en realizar una tarea.

Paralelismo a nivel de instrucción

El paralelismo consiste en ejecutar más instrucciones en menos tiempo, aunque las instrucciones sigan tardando lo mismo en ejecutarse. Para ello, nos aprovechamos del proceso de segmentación en la ejecución de las instrucciones, es decir, ejecución de instrucción por fases.





      1. Superescalaridad.

La necesitad de aumentar la velocidad de la ejecución de instrucciones dio a luz a otras técnicas. La superescalaridad es una técnica que consiste en duplicar componentes funcionales dentro del microprocesador para así poder realizar operaciones independientes paralelamente. Los componentes candidatos a su “clonación” son la ALU y la FPU, ya que suelen ser los que realizan las operaciones más costosas en lo que se refiere a tiempo. Esta técnica es compatible con la segmentación.

Actualmente se está llegando a clonar el microprocesador, existiendo modelos que implementan hasta 8 núcleos de ejecución. 



  1. Memoria Caché integrada

Debido a la gran velocidad alcanzada por los microprocesadores, la RAM del ordenador no es lo suficientemente rápida para almacenar y transmitir los datos que el microprocesador necesita, por lo que tendría que esperar a que la memoria estuviera disponible y el trabajo se ralentizaría. Para evitarlo, se usa una memoria muy rápida, estratégicamente situada entre el micro y la RAM: la memoria caché.

Ésta es la baza principal de la memoria caché: es muy rápida. ¿Cuánto es "muy rápida"? Bien, unas 5 ó 6 veces más que la RAM. Esto la encarece bastante, claro está, y ése es uno de los motivos de que su capacidad sea mucho menor que el de la RAM. Es un tipo de memoria cuyo cometido es almacenar una serie de instrucciones y datos a los que el procesador accede continuamente, con la finalidad de que la disponibilidad de estos datos sea casi instantánea aprovechando la velocidad de la memoria caché.

El funcionamiento de la caché de lectura se parece al de un adivino, debe anticipar lo que ocurrirá en el futuro y aprovechando que va a memoria principal a por lo datos que necesita en ese momento, debe traerse los datos que cree que necesitará a continuación, evitando así accesos a memoria principal, aprovechándonos de la velocidad de acceso que nos ofrece la memoria caché. 

Si el dispositivo que está siendo cacheado encuentra los datos en la caché, habrá un éxito ("hit"), en caso contrario, un fracaso ("miss") y tendrá que ir a buscarlos a la memoria principal.  Los sistemas de caché actuales son capaces de proporcionar una tasa de éxitos superior al 90%.




    1. Velocidad y tamaño

Leído lo anterior, usted pensará: pues cuanto más grande, mejor. Cierto, pero no; o más bien, casi siempre sí. Aunque la caché sea de mayor velocidad que la RAM, si usamos una caché muy grande, el micro tardará un tiempo apreciable en encontrar el dato que necesita. Esto no sería muy importante si el dato estuviera allí, pero ¿y si no está? Entonces habrá perdido el tiempo, y tendrá que sumar ese tiempo perdido a lo que tarde en encontrarlo en la RAM.

Por tanto, la caché actúa como un resumen, una "chuleta" de los datos de la RAM, y todos sabemos que un resumen de 500 páginas no resulta nada útil. Se puede afirmar que, para usos normales, a partir de 1 MB (1024 Kb) la caché resulta ineficaz, e incluso pudiera llegar a ralentizar el funcionamiento del ordenador.

Las memorias caché son extremadamente rápidas (su velocidad es unas 5 veces superior a la de una RAM de las más rápidas), con la ventaja añadida de no tener latencia, por lo que su acceso no tiene ninguna demora... pero es un tipo de memoria muy cara.

Esto, unido a su integración en el procesador (ya sea directamente en el núcleo o no) limita bastante el tamaño, por un lado por lo que encarece al procesador y por otro por el espacio disponible.


Lógicamente, mientras mayor sea la caché, más datos se podrán almacenar cuyo acceso sea casi instantáneo, pero mas tediosa será su gestión y, por tanto, su velocidad, por lo que hay que llegar a un nivel intermedio entre tamaño y la velocidad de acceso que se pretende obtener.

4. Evolución de los microprocesadores

Dentro de los anales de la electrónica esta el año de 1970 como la fecha de invención del microprocesador.  Con el microprocesador se inició una nueva era de desarrollo de la industria de las computadoras y de la electrónica, la cual hasta el presente ha ido evolucionando con una velocidad que aún sorprende incluso a los visionarios más futuristas. Nadie en esa época se imaginaba el impacto tan grande que causaría este desarrollo en la vida del hombre moderno.



El microprocesador es: El máximo exponente de la etapa siguiente al transistor; la tecnología de los Circuitos Integrados.

 El concepto de circuito integrado, empezó a rondar por los cerebros y mentes prodigiosas de quienes trabajaban en el diseño y fabricación de transistores. El planteamiento fue más o menos el siguiente: si se fabrican transistores en forma individual y luego se tenían que unir siempre de la misma forma entre sí con alambres y con otros componentes ¿Por qué no fabricar de una vez todo el conjunto de material semiconductor y aislante, interconectado internamente para que cumpliera la misma función del sistema total?



    1. Síntesis de la trayectoria de Intel.

Año 1971


4004

Fecha de comercialización: 15-Noviembre-1971


Frecuencia de Reloj: 108 KHz 
Número de transistores :2,300 ( tecnología 10 micras)
Ancho de Bus de datos: 4 bits
Memoria direccionable:640 bytes
Diseñado para:  una calculadora Busicom 
primer chip microcomputador con aritmética.

Año 1974


8080
Fecha de comercialización: Abril 1974
Frecuencia de Reloj: 2 MHz 
Número de transistores: 6,000 (6 micras)
Tamaño de Registros:  8 bit  -  Registros de propósito general.
Ancho de Bus de datos: 8 bits
Memoria direccionable: 64 Kbytes
Dedicado para: controladores de semaforos, ordenador Altair  (primer PC).


Año 1978


8086
Fecha de comercialización:8-Junio-1978
Frecuencia de reloj:

5MHz (0.33 MIPS)


8 MHz (0.66 MIPS)
10 MHz (0.75 MIPS)

Número de transistores: 29,000 (3 micras)


Tamaño de Registros:  16 bit  - 8 Registros de propósito general.
Ancho de Bus de datos: 16 bits
Memoria direccionable:1 Megabyte
Dedicado para: ordenadores personales y portables.
Rendimiento 10 veces superior al 8080


Año 1982


80286
Fecha de comercialización:Febrero 1982
Frecuencia de Reloj: 6 MHz (0.9 MIPS)
10 MHz (1.5 MIPS)
12 MHz (2.66 MIPS)
Número de transistores:134,000 (1.5 micras)
Tamaño de Registros:  16 bit  - 8 Registros de propósito general.
Ancho de Bus de datos: 16 bits
Memoria direccionable:16 Megabytes
Memoria virtual: 1 Gigabyte
Dedicado para: microprocesador estándar para  PC. 
Rendimiento de 3 a 6 veces superior a un 8086.


Año 1985


Intel386™ DX CPU
Fecha de comercialización: 17-Octubre-1985
Frecuencia de reloj:16 MHz (5 a 6 MIPS)
Número de transistores:275,000 (1.5 micras)
Tamaño de Registros:  32 bit  - 8 Registros de propósito general.
Ancho de Bus de datos: 32 bits
Memoria direccionable: 4 gigabytes
Memoria virtual: 64 terabytes
Dedicado para: ordenadores de sobremesa.


Año 1989


Intel486™ DX CPU
Fecha de comercialización: 10-Abril-1989
Frecuencia de reloj: 25 MHz 
(20 MIPS) Número de transistores:1,200,000 (1 micra)
Tamaño de Registros:  32 bit  - 8 Registros de propósito general. 80 bit  - 8 Registros FPU
Ancho de Bus de datos: 32 bits
Memoria direccionable: 4 Gigabytes
Memoria virtual: 64 Terabytes
Dedicado para: ordenadores de sobremesa y servidores.
50X el rendimiento del  8086.


Año 1993


Pentium® Processor 
Fecha de comercialización: 22-Marzo-1993
Frecuencia de reloj: 60 MHz
(100 MIPS)
Número de transistores: 3.1 millones (0.8 micras, BiCMOS)
Tamaño de Registros:  32 bit  - 8 Registros de propósito general. 80 bit  - 8 Registros FPU
Ancho de Bus de datos : 64 bits (bus datos ext),  32 bits (bus direcciones)
Memoria direccionable: 4 Gigabytes
Memoria virtual: 64 Terabytes
Dedicado para:  ordenadores de sobremesa.


Año 1995


Pentium® Pro Processor 

Fecha de comercialización: 1-Noviembre-1995


Frecuencia de reloj: 150 MHz 
(6.08 SPECint95, 5.42 SPECfp95 en un Alder 256K L2)
Número de transistores: 5.5 millones (0.6 micras) y con 256K cache  L2: 15.5 millones (0.6 micras)
Tamaño de Registros:  32 bit  - 8 Registros de propósito general. 80 bit  - 8 Registros FPU
Ancho de Bus de datos: 64 bits y 64 bits adicionales con la cache L2
Memoria direccionable: 64 Gigabytes
Memoria virtual: 64 Terabytes
Dedicado para: ordenadores de sobremesa de alta gama, workstations, y servidores



Año 1997



Pentium® II Processor 

Fecha de comercialización: 7-Mayo-1997


Frecuencia de reloj: 233 MHz 
(9.47 SPECint95, 7.04 SPECfp95) 
Número de transistores:7.5 million (0.35 micras), 
512K cache L2 
Tamaño de Registros:  32 bit  - 8 Registros de propósito general. 80 bit  - 8 Registros FPU ,64 bit  - 8 Registros MMX
Ancho de Bus de datos: 64 bits Bus de sistema ; 64 bit Bus Cache 
Memoria direccionable: 64 Gigabytes
Memoria virtual: 64 Terabytes
Dedicado para: ordenadores de sobremesa de alta gama, workstations, y servidores
 

Año 1999

Pentium® III Processor 

Fecha de comercialización:  26-Febrero-1999 


Frecuencia de reloj: 500 MHz 
(12.8 SPECint95, 9.14 SPECfp95, 8.32 SPECfpbase)
Número de transistores: 9,5 millones (0.18 micras), si se incluye 512K L2  integra 28.1 millones de transistores.
Tamaño de Registros:  32 bit  - 8 Registros de propósito general. 80 bit  - 8 Registros FPU 64 bit  - 8 Registros MMX 128 bit  - 8 Registros XMM .
Ancho de Bus de datos: 64 bit Bus de sistema; 256+32 bit Bus Cache 
Memoria direccionable:64 Gigabytes
Memoria virtual: 64 Terabytes
velocidad de Bus : 133MHz
Dedicado para: PCs, servidores y workstations


Año 2000


Pentium® 4

Fecha de comercialización:  Noviembre-2000


Frecuencia de reloj: 3.1 GHz 
(483 SPECint2000, 511 SPECfp2000e)
Número de transistores:  42  millones (0.18 micras), 256K L2 .
Tamaño de Registros:  32 bit  - 8 Registros de propósito general 80 bit  - 8 Registros FPU 64 bit  - 8 Registros MMX 128 bit  - 8 Registros XMM .
Ancho de Bus de datos: 64 bit Bus de sistema;
Memoria direccionable:64 Gigabytes
Memoria virtual: 64 Terabytes
velocidad de Bus (NetBurst) : 400MHz
Dedicado para: PCs, servidores y workstations


Año

2005


Pentium® D
Los procesadores Pentium D fueron introducidos por Intel en el Sprint 2005 Intel Developer Forum. Un chip Pentium D consiste básicamente en dos procesadores Pentium 4 (de núcleo Prescott) en una única pieza de silicio con un proceso de fabricación de 90nm.

Existen cuatro variantes del Pentium D:



  • Pentium D 820, a 2.8GHz

  • Pentium D 830, a 3.0GHz

  • Pentium D 840, a 3.2GHz

  • Pentium D Extreme Edition, a 3.2GHz, y con Hyper Threading. (que no hay que confundir con el Pentium 4 Extreme Edition a 3.73GHz, que únicamente posee un único núcleo Prescott)

Cada uno de ellos posee dos núcleos Prescott, con 1MB de memoria caché L2 para cada núcleo. Todos los Pentium D incluyen la tecnología EM64T, que les permite trabajar con datos de 64bits nativamente. Y las placas madre que los soportan son las que utilizan los chipsets 945 y 955.




    1. Síntesis de la trayectoria de AMD.

Año 1991


Am386
Fue creado por AMD en 1991. Era un procesador con características semejantes al Intel 80386 y compatible 100% con este último, lo que le valió varios recursos legales de Intel por copiar su tecnología. Tenía una velocidad de hasta 40 MHZ lo que superaba a su competidor que sólo llegó a los 33 MHz.


Año 1993


Am486
Frecuencia de reloj: 25 MHz 
(20 MIPS, 16.8 SPECint92, 7.40 SPECfp92)
Número de transistores:1,200,000 (1 micra)
Tamaño de Registros:  32 bit  - 8 Registros de propósito general. 80 bit  - 8 Registros FPU
Ancho de Bus de datos: 32 bits


Año 1995


K-5

Optimizado para ejecutar instrucciones de 16 y 32 bits.


Dispone de una caché de instrucciones de 16Kb, y 8Kb. para los datos.
Trabaja a 3,52 voltios y algunos a doble voltaje.
Están fabricados con tecnología de 0,35 micras.
Incorpora 4,3 millones de transistores.


Año 1997


K-6

Optimizado para ejecutar instrucciones tanto de 16 como 32 bits.


Funciona a 66 Mhz, aunque suele tolerar frecuencias de bus de 100 Mhz. sin demasiados problemas en los modelos superiores (sobretodo el 300).
La memoria caché esta compuesta por 32 Kb para instrucciones y 32 para datos.
Posee 8,8 millones de transistores.


Año 1998

K-6II

Da soporte al bus de 100 Mhz.


Soporta zócalos tipo 7 a 66 Mhz y tipo Super 7 a 100 Mhz.
Dispone de 64 Kb. de caché L1.
Fabricado con 8,8 millones de transistores.


Año 1998


K-6III

Instrucciones MMX.


Instrucciones 3DNow.
La memoria de segundo nivel trabaja a la misma velocidad que la CPU.
64 Kb. de caché L1 (32 para datos y 32 para instrucciones)
256 Kb. de caché L2.
Fabricados con 21,3 millones de transistores y tecnología de 0,25 micras.
Soporte para AGP.

Los voltajes mínimo y máximo son 2,3 y 2,5 v




Año

1999


ATHLON

Este bus trabaja a velocidades de 200 Mhz, en contra de los 100 de los modelos actuales, y están previstos modelos futuros a 400 Mhz.

La memoria de primer nivel cuenta con 128 KB (cuatro veces la de los Pentium III) y la L2 es programable , lo que permite adaptar la cantidad de caché a distintas necesidades, contando en un principio con 512 KB, pero estando previstos modelos con hasta 8 MB.

Los modelos iniciales trabajan a 500, 550 y 600 Mhz y siguen estando fabricados   con la tecnología actual de 0,25 micras.

Incorporan 22 millones de transistores.

Soporta las instrucciones 3DNow.




Año

2004


Athlon xp

9 Operaciones por ciclo de reloj

3 Pipelines (conductos) de enteros

3 Pipelines (conductos) de punto flotante

3 Decodificadores x86 en total

Caché L1 de 128KB

Caché L2 de 256KB

Velocidad del bus de sistema de 266 MHz

Instrucciones para optimización de 3D con 3DNow!™ Professional

Controles de caché/prebúsqueda

Controles de flujo de datos en tiempo real (streaming)

Extensiones DSP/comm




Año

2005

OPTERON

El procesador AMD Opteron™, el cual permite el cómputo simultáneo de 32 y 64 bits, presenta por primera vez la innovadora arquitectura AMD64. El procesador AMD Opteron está diseñado para ejecutar las aplicaciones de 32 bits existentes, con un excepcional nivel de rendimiento, a la vez que ofrece a los clientes una ruta de migración simplificada al cómputo de 64 bits. Este procesador ofrece un gran avance en términos de compatibilidad, rendimiento, protección de la inversión y menor costo total de propiedad. El procesador AMD Opteron™ se ofrece en tres series: serie 100 (1 procesador), serie 200 (1 ó 2 procesadores), y serie 800 (hasta 8 procesadores).






    1. Comparativas Técnicas entre Procesadores Intel y AMD.




Procesador

Mhz

Cpu Mips

Cpu Mflops

Mpu Mips

Mpu Mflops

Intel Pentium 4 560

3600

9803

2418

22064

35566

Intel Pentium 4 550

3400

9258

2284

19321

22791

Intel Pentium 4 540

3200

8714

2149

18185

21415

Intel Pentium 4 2.8

2800

7349

2044

17102

21896

Intel Celeron 1.7

1700

4460

1241

10384

13294

Amd Opteron 150

2400

10683

3723

22926

24644

Amd Opteron 148

2200

9793

3413

21016

22590

Amd Opteron 146

2000

8902

3102

19105

20536

Amd XP 3200+

2200

9142

3482

20838

22089

Amd XP 3000+

2160

9000

3428

20516

21748

Amd XP 2800+

2080

8672

3303

19767

20954

Amd Duron 1800

1800

6800

2812

16367

16368

Amd Sempron 3100+

1800

7513

2841

13483

17723

Mhz = Velocidad | Mips = Millones de Enteros/Segundo | Mflops = Millones de Reales/Segundo





La base de datos está protegida por derechos de autor ©bazica.org 2016
enviar mensaje

    Página principal