Está en la página 1de 24

MICROPROCESADOR

ARQUITECTURA DE COMPUTADORAS
HECTOR ERNESTO ZUNIGA HERNANDEZ 09070980

Microprocesador

El microprocesador es un circuito integrado que contiene todos los elementos de una "unidad central de procesamiento" o CPU (Central Process Unit). Suelen tener forma de prisma chato, y se instalan sobre un elemento llamado zcalo (en ingls, socket). Actualmente se dispone de un zcalo especial para alojar el microprocesador y el sistema de enfriamiento, que comnmente es un ventilador (cooler). La unidad aritmtica/lgica; proporciona al chip su capacidad de clculo Los registros; reas de almacenamiento temporal que contienen datos La seccin de control; dirige y controla todos los procesos Un bus interno; red de lneas de comunicacin.
2

Ejemplo Microprocesador

Uno de los actuales microprocesadores de 64 bits 3 y doble ncleo, un AMD Athlon 64 X2 3600.

Un poco de historia

El primer procesador comercial, el Intel 4004, fue presentado el 15 de noviembre de 1971. Existen una serie de fabricantes de microprocesadores, como IBM, Intel, Zilog, Motorola, Cyrix y AMD. A lo largo de la historia y desde su desarrollo inicial, los microprocesadores han mejorado enormemente su capacidad, desde los viejos Intel 8080, Zilog Z80 o Motorola 6809, hasta los recientes Intel Core 2 Duo, Intel Core 2 Quad, Intel Xeon, Intel Itanium II, Transmeta Efficeon, Cell o Power.

Ejemplos Microprocesadores

Intel 4004

Zilog Z80

Motorola 68000

Intel 80486DX2

Avances
Hay que destacar que los grandes avances en la construccin de microprocesadores se deben ms a la Arquitectura de Computadores que a la miniaturizacin electrnica. En los primeros procesadores gran parte de los componentes estaban ociosos el 90% del tiempo.

Evolucin del microprocesador

1971: Intel 4004. Nota: Fue el primer microprocesador comercial. 1972: Intel 8008 1974: Intel 8080, Intel 8085 1975: Signetics 2650, MOS 6502, Motorola 6800 1976: Zilog Z80 1978: Intel 8086, Motorola 68000 1979: Intel 8088 1982: Intel 80286, Motorola 68020 1985: Intel 80386, Motorola 68020, AMD Am386 1987: Motorola 68030 1989: Intel 80486, Motorola 68040, AMD Am486
7

1993: Intel Pentium, Motorola 68060, AMD K5, MIPS R10000 1995: Intel Pentium Pro 1997: Intel Pentium II, AMD K6, PowerPC G3, MIPS R120007 1999: Intel Pentium III, AMD K6-2, PowerPC G4 2000: Intel Pentium 4, Intel Itanium 2, AMD Athlon XP, AMD Duron, MIPS R14000 2003: PowerPC G5 2004: Intel Pentium M 2005: Intel Pentium D, Intel Extreme Edition con hyper threading, Intel Core Duo, AMD Athlon 64, AMD Athlon 64 X2, AMD Sempron 128. 2006: Intel Core 2 Duo, Intel Core 2 Extreme, AMD Athlon FX 2007: Intel Core 2 Quad, AMD Quad Core, AMD Quad FX

El microprocesador ejecuta instrucciones almacenadas como nmeros binarios organizados secuencialmente en la memoria principal. La ejecucin de las instrucciones se puede realizar en varias fases:
Preselecciona (PreFetch): pre-lectura de la instruccin desde la memoria principal. Selecciona (Fetch): envo de la instruccin al decodificador. Decodificacin (Decode) de la instruccin: determinar qu instruccin es y por tanto qu se debe hacer.
Lectura de operandos (si los hay)

Funcionamiento

Cada una de estas fases se realiza en uno o varios ciclos de CPU, dependiendo de la estructura del procesador. La duracin de estos ciclos viene determinada por la frecuencia de reloj. El microprocesador se conecta a un oscilador, normalmente un cristal de cuarzo capaz de generar pulsos a un ritmo constante, de modo que genera varios ciclos (o pulsos) en un segundo. 9

Ejecucin (Execute): lanzamiento de las mquinas de estado que llevan a cabo el procesamiento. Escritura (Store) de los resultados en la memoria principal o en los registros.

Para que un programa pueda ser ejecutado por un ordenador, ha de estar almacenado en la memoria central (memoria RAM). El microprocesador tomar una a una las instrucciones que lo componen e ir realizando las tareas correspondientes.

Ejecucin de las instrucciones

Velocidad

Actualmente se habla de frecuencias de Gigaherzios (GHz.), o de Megaherzios (MHz.). Lo que supone miles de millones o millones, respectivamente, de ciclos por segundo. El indicador de la frecuencia de un microprocesador es un buen referente de la velocidad de proceso del mismo, pero no el nico. La cantidad de instrucciones necesarias para llevar a cabo una tarea concreta, as como el ancho de banda cantidad de instrucciones ejecutadas por ciclo ICP, son los otros dos factores que determinan la velocidad de la CPU.

Segmentacin

La segmentacin (en ingls pipelining, literalmente oleoducto) es un mtodo por el cual se consigue aumentar el rendimiento de algunos sistemas electrnicos digitales. Es aplicado, sobre todo, en microprocesadores. El nombre viene de que para impulsar el gas en un oleoducto a la mxima velocidad es necesario dividir el oleoducto en tramos y colocar una bomba que de un nuevo impulso al gas. La ventaja primordial de este sistema es que, tal y como se muestra en la imagen, una vez el pipe est lleno, es decir, despus de una latencia de cuatro en la imagen, los resultados de cada comando vienen uno tras otro cada flanco de reloj y sin latencia extra por estar encadenados dentro del mismo pipe. Todo esto habiendo maximizado la frecuencia mxima de trabajo.

Ejemplo

Programa de instrucciones en el Intel Pentium 4.

Ejemplo de segmentacin

Unidad aritmtico lgica

La Unidad Aritmtico Lgica Arithmetic Logic Unit (ALU), es un circuito digital que calcula operaciones. Las operaciones que realiza son las siguientes: suma, resta, multiplicacin, divisin, comparacin (mayor que, menor que, igual a) y aquellas que trabajan con dgitos binarios (10 que se conoce como operaciones lgicas: AND, NOR, NOT, NAND, OR, X-OR, etc) entre dos nmeros. Los ms complejos ALU son construidos dentro de los chips de microprocesadores modernos como el Core Duo Quad. Estos procesadores tienen dentro de ellos un ALU muy complejo y poderoso que pueden tener mltiples ncleos, cada ncleo con mltiples unidades de ejecucin, cada una de ellas con mltiples ALU.

Ejemplos GPU y Coprocesador

Graphics Processing Intel 287

Unit Coprocesador numrico


1

Smbolo Esquemtico ALU

Un tpico smbolo esquemtico para una ALU: A y B son operandos; R es la salida; F es la entrada de la 1 7 unidad de control; D es un estado de la salida

Componentes ALU

La ALU se compone bsicamente de: Circuito Operacional, Registros de Entradas, Registro Acumulador y un Registro de Estados, conjunto de registros que hacen posible la realizacin de cada una de las operaciones.

Circuito Operacional, contiene los circuitos electrnicos necesarios para la realizacin de las operaciones con los datos procedentes de los Registros de Entradas (REN), en las cuales se almacenan los operandos y a travs de un selector de operaciones comandadas por las microordenes procedentes del secuenciador de la Unidad de Control.

Componentes ALU
El registro de estado (Flags) son registros de memoria en los que se deja constancia algunas condiciones que se dieron en la ltima operacin realizada y que habrn de ser tenidas en cuenta en operaciones posteriores. El registro acumulador (Acumulador) almacena los resultados de las operaciones ejecutadas por el Circuito Operacional, tambin se encuentra conectado con los Registros de Entradas como una realimentacin para realizar las operaciones encadenadas, por supuesto que se encuentra conectado con el bus de datos del sistema con el propsito de enviar los resultados a la Memoria principal o (RAM) o a algn perifrico.
1

Diagrama ALU

Operaciones Bsicas

La mayora de las ALU pueden realizar las siguientes operaciones:


Operaciones aritmticas de nmeros enteros (adicin, sustraccin, y a veces multiplicacin y divisin, aunque esto es ms costoso) Operaciones lgicas de bits (AND, NOT, OR, XOR) Operaciones de desplazamiento de bits (Desplazan o rotan una palabra en un nmero especfico de bits hacia la izquierda o la derecha, con o sin extensin de signo). Los desplazamientos pueden ser interpretados como multiplicaciones o divisiones por 2.

Operaciones Complejas

Se puede disear un ALU para calcular cualquier operacin, sin importar lo compleja que sea; el problema es que cuanto ms compleja sea la operacin, tanto ms costosa ser la ALU, ms espacio usar en el procesador, y ms energa disipar. Imagine que usted necesita calcular, digamos, la raz cuadrada de un nmero; se examinar las opciones siguientes para implementar esta operacin:

Disear una ALU muy compleja que calcule la raz cuadrada de cualquier nmero en un solo paso. Esto es llamado clculo en un solo ciclo de reloj. Disear una ALU compleja que calcule la raz cuadrada con varios pasos (como el algoritmo que aprendimos en la escuela). Esto es llamado clculo interactivo. Disear una ALU simple en el procesador, y vender un procesador separado, especializado y costoso, que el cliente pueda instalar adicional al procesador, y que implementa una de las opciones de arriba. Esto es llamado coprocesador.
2

Operaciones Complejas
Emular la existencia del coprocesador, es decir, siempre que un programa intente realizar el clculo de la raz cuadrada, hacer que el procesador compruebe si hay presente un coprocesador y usarlo si lo hay; si no hay uno, interrumpir el proceso del programa e invocar al sistema operativo para realizar el clculo de la raz cuadrada por medio de un cierto algoritmo de software. Esto es llamado emulacin por software. Decir a los programadores que no existe el coprocesador y no hay emulacin, as que tendrn que escribir sus propios algoritmos para calcular races cuadradas por software. Esto es realizado por bibliotecas de software.

Unidad de Control

La Unidad de control (CU) es la encargada de activar o desactivar los diversos componentes del microprocesador en funcin de la instruccin que el microprocesador est ejecutando y en funcin tambin de la etapa de dicha instruccin que se est ejecutando. La unidad de control (UC) interpreta y ejecuta las instrucciones almacenadas en la memoria principal y genera las seales de control necesarias para ejecutarlas. Existen dos tipos de unidades de control, las cableadas, usadas generalmente en mquinas sencillas, y las microprogramadas, propias de mquinas ms complejas