Вы находитесь на странице: 1из 10

Procesadores Introduccin El procesador (CPU, por Central Processing Unit o Unidad Central de Procesamiento), es por decirlo de alguna manera,

el cerebro del ordenador. Permite el procesamiento de informacin numrica, es decir, informacin ingresada en formato binario, as como la ejecucin de instrucciones almacenadas en la memoria. El primer microprocesador (Intel 4004) se invent en 1971. Era un dispositivo de clculo de 4 bits, con una velocidad de 108 kHz. Desde entonces, la potencia de los microprocesadores ha

aumentado de manera exponencial. Funcionamiento El procesador (denominado CPU, por Central Processing Unit) es un circuito electrnico que funciona a la velocidad de un reloj interno, gracias a un cristal de cuarzo que, sometido a una corriente elctrica, enva pulsos. La velocidad de reloj (tambin denominada ciclo), corresponde al nmero de pulsos por segundo, expresados en Hertz (Hz). De este modo, un ordenador de 200 MHz posee un reloj que enva 200.000.000 pulsos por segundo. Por lo general, la frecuencia de reloj es un mltiplo de la frecuencia del sistema (FSB, Front-Side Bus o Bus de la Parte Frontal), es decir, un mltiplo de la frecuencia de la placa madre. Con cada pulso de reloj, el procesador ejecuta una accin que corresponde a su vez a una instruccin o bien a una parte de ella. La medida CPI (Cycles Per Instruction o Ciclos por Instruccin) representa el nmero promedio de ciclos de reloj necesarios para que el microprocesador ejecute una instruccin. En consecuencia, la potencia del microprocesador puede caracterizarse por el nmero de instrucciones por segundo que es capaz de procesar. Los MIPS (millions of instructions per second o millones de instrucciones por segundo) son las unidades que se utilizan, y corresponden a la frecuencia del procesador dividida por el nmero de CPI. Instrucciones Una instruccin es una operacin elemental que el procesador puede cumplir.. Las instrucciones se almacenan en la memoria principal, esperando ser tratadas por el procesador. Las instrucciones poseen dos campos:

el cdigo de operacin, que representa la accin que el procesador debe ejecutar; el cdigo operando, que define los parmetros de la accin. El cdigo operando depende a su vez de la operacin. Puede tratarse tanto de informacin como de una direccin de memoria.

Cdigo de Operacin Campo de Operacin

El nmero de bits en una instruccin vara de acuerdo al tipo de informacin (entre 1 y 4 bytes de 8 bits). Las instrucciones pueden agruparse en distintas categoras. A continuacin presentamos algunas de las ms importantes:

Acceso a Memoria: acceso a la memoria o transferencia de informacin entre registros. Operaciones Aritmticas: operaciones tales como suma, resta, divisin o multiplicacin. Operaciones Lgicas: operaciones tales como Y, O, NO, NO EXCLUSIVO, etc. Control: controles de secuencia, conexiones condicionales, etc.

Registros Cuando el procesador ejecuta instrucciones, la informacin almacena en forma temporal en pequeas ubicaciones de memoria local de 8, 16, 32 o 64 bits, denominadas registros. Dependiendo del tipo de procesador, el nmero total de registros puede variar de 10 a varios cientos. Los registros ms importantes son:

el registro acumulador (ACC), que almacena los resultados de las operaciones aritmticas y lgicas; el registro de estado (PSW, Processor Estado: Word o Palabra de Estado del Procesador), que contiene los indicadores de estado del sistema (lleva dgitos, desbordamientos, etc.); el registro de instruccin (RI), que contiene la instruccin que est siendo procesada actualmente; el contador ordinal (OC o PC por Program Counter, Contador de Programa), que contiene la direccin de la siguiente instruccin a procesar;

el registro del bfer, que almacena informacin en forma temporal desde la memoria.

Memoria cach La memoria cach (tambin memoria buffer) es una memoria rpida que permite reducir los tiempos de espera de las distintas informaciones almacenada en la RAM (Random Access Memory o Memoria de Acceso Aleatorio). En efecto, la memoria principal del ordenador es ms lenta que la del procesador. Existen, sin embargo, tipos de memoria que son mucho ms rpidos, pero que tienen un costo ms elevado. La solucin consiste entonces, en incluir este tipo de memoria local prxima al procesador y en almacenar en forma temporal la informacin principal que se procesar en l. Los ltimos modelos de ordenadores poseen muchos niveles distintos de memoria cach:

La Memoria cach nivel 1 (denominada L1 Cache, por Level 1 Cache) se encuentra integrada directamente al procesador. Se subdivide en dos partes:
o

la primera parte es la cach de instruccin, que contiene instrucciones de la RAM que fueron decodificadas durante su paso por las canalizaciones. la segunda parte es la cach de informacin, que contiene informacin de la RAM, as como informacin utilizada recientemente durante el funcionamiento del procesador.

El tiempo de espera para acceder a las memorias cach nivel 1 es muy breve; es similar al de los registros internos del procesador.

La memoria cach nivel 2 (denominada L2 Cache, por Level 2 Cache) se encuentra ubicada en la carcasa junto con el procesador (en el chip). La cach nivel 2 es un intermediario entre el procesador con su cach interna y la RAM. Se puede acceder ms rpidamente que a la RAM, pero no tanto como a la cach nivel 1. La memoria cach nivel 3 (denominada L3 Cache, por Level 3 Cache) se encuentra ubicada en la placa madre.

Todos estos niveles de cach reducen el tiempo de latencia de diversos tipos de memoria al procesar o transferir informacin. Mientras el procesador est en funcionamiento, el controlador de la cach nivel 1 puede interconectarse con el controlador de la cach nivel 2, con el fin de transferir informacin sin entorpecer el funcionamiento del procesador. Tambin, la cach nivel 2 puede interconectarse con la RAM (cach nivel 3) para permitir la transferencia sin entorpecer el funcionamiento normal del procesador. Seales de Control

Las seales de control son seales electrnicas que orquestan las diversas unidades del procesador que participan en la ejecucin de una instruccin. Dichas seales se envan utilizando un elemento denominado secuenciador. Por ejemplo, la seal Leer/Escribir permite que la memoria se entere de que el procesador desea leer o escribir informacin. Unidades Funcionales El procesador se compone de un grupo de unidades interrelacionadas (o unidades de control). Aunque la arquitectura del microprocesador vara considerablemente de un diseo a otro, los elementos principales del microprocesador son los siguientes:

Una unidad de control que vincula la informacin entrante para luego decodificarla y enviarla a la unidad de ejecucin:La unidad de control se compone de los siguientes elementos:
o

secuenciador (o unidad lgica y de supervisin ), que sincroniza la ejecucin de la instruccin con la velocidad de reloj. Tambin enva seales de control: contador ordinal, que contiene la direccin de la instruccin que se est ejecutando actualmente; registro de instruccin, que contiene la instruccin siguiente.

Una unidad de ejecucin (o unidad de procesamiento), que cumple las tareas que le asigna la unidad de instruccin. La unidad de ejecucin se compone de los siguientes elementos:
o

la unidad aritmtica lgica (se escribe ALU); sirve para la ejecucin de clculos aritmticos bsicos y funciones lgicas (Y, O, O EXCLUSIVO, etc.); la unidad de punto flotante (se escribe FPU), que ejecuta clculos complejos parciales que la unidad aritmtica lgica no puede realizar; el registro de estado; el registro acumulador.

o o

Una unidad de administracin del bus (o unidad de entrada-salida) que administra el flujo de informacin entrante y saliente, y que se encuentra interconectado con el sistema RAM;

El siguiente diagrama suministra una representacin simplificada de los elementos que componen el procesador (la distribucin fsica de los elementos es diferente a la disposicin):

Transistor Con el fin de procesar la informacin, el microprocesador posee un grupo de instrucciones, denominado "conjunto de instrucciones", hecho posible gracias a los circuitos electrnicos. Ms precisamente, el conjunto de instrucciones se realiza con la ayuda de semiconductores, pequeos "conmutadores de circuito" que utilizan el efecto transistor, descubierto en 1947 por John Barden, Walter H. Brattain y William Shockley, quienes recibieron por ello el premio Nobel en 1956. Un transistor (contraccin de los trminos transferencia y resistor) es un componente electrnico semi-conductor que posee tres electrodos capaces de modificar la corriente que pasa a travs suyo, utilizando uno de estos electrodos (denominado electrodo de control). stos reciben el nombre de "componentes activos", en contraste a los "componentes pasivos", tales como la resistencia o los capacitores, que slo cuentan con dos electrodos (a los que se denomina "bipolares"). El transistor MOS (metal, xido, silicona) es el tipo de transistor ms comn utilizado en el diseo de circuitos integrados. Los transistores MOS poseen dos reas con carga negativa, denominadas respectivamente fuente (con una carga casi nula), y drenaje (con una carga de 5V), separadas por una regin con carga positiva, denominada sustrato. El sustrato posee un electrodo de control superpuesto, denominado puerta, que permite aplicar la carga al sustrato.

Cuando una tensin no se aplica en el electrodo de control, el sustrato con carga positiva acta como barrera y evita el movimiento de electrones de la fuente al drenaje. Sin embargo, cuando se aplica la carga a la puerta, las cargas positivas del sustrato son repelidas y se realiza la apertura de un canal de comunicacin con carga negativa entre la fuente y el drenaje.

El transistor acta entonces como conmutador programable, gracias al electrodo de control. Cuando se aplica una carga al electrodo de control, ste acta como interruptor cerrado, y cuando no hay carga, acta como interruptor abierto. Circuitos Integrados Una vez combinados, los transistores pueden constituir circuitos lgicos que, al combinarse, forman procesadores. El primer circuito integrado data de 1958 y fue construido por Texas Instruments. Los transistores MOS se componen, entonces, de lminas de silicona (denominadas obleas), obtenidas luego de mltiples procesos. Dichas lminas de silicona se cortan en elementos

rectangulares para formar un "circuito". Los circuitos se colocan luego en carcasas con conectores de entrada-salida, y la suma de esas partes compone un "circuito integrado". La minuciosidad del grabado, expresado en micrones (micrmetros, se escribe m) define el nmero de transistores por unidad de superficie. Puede haber millones de transistores en un slo procesador. La Ley de Moore, escrita en 1965 por Gordon E. Moore, cofundador de Intel, predijo que el rendimiento del procesador (por extensin del nmero de transistores integrados a la silicona) se duplicara cada 12 meses. Esta ley se revis en 1975, y se cambi el nmero de meses a 18. La Ley de Moore sigue vigente hasta nuestros das. Dado que la carcasa rectangular contiene clavijas de entrada-salida que parecen patas, en Francia se utiliza el trmino "pulga electrnica" para referirse a los circuitos integrados. Familias Cada tipo de procesador posee su propio conjunto de instrucciones. Los procesadores se agrupan en las siguientes familias, de acuerdo con sus conjuntos de instrucciones exclusivos:

80x86: la "x" representa la familia. Se hace mencin a 386, 486, 586, 686, etc. ARM IA-64 MIPS Motorola 6800 PowerPC SPARC ...

Esto explica por qu un programa producido para un tipo especfico de procesador slo puede trabajar directamente en un sistema con otro tipo de procesador si se realiza lo que se denomina traduccin de instrucciones, o emulacin. El trmino "emulador" se utiliza para referirse al programa que realiza dicha traduccin. Conjunto de Instrucciones Un conjunto de instrucciones es la suma de las operaciones bsicas que puede cumplir un procesador. El conjunto de instrucciones de un procesador es un factor determinante en la arquitectura del ste, aunque una misma arquitectura puede llevar a diferentes implementaciones por diferentes fabricantes.

El procesador funciona de forma eficiente gracias a un nmero limitado de instrucciones, conectadas de forma permanente a los circuitos electrnicos. La mayora de las operaciones se pueden realizar utilizando funciones bsicas. Algunas arquitecturas, no obstante, s incluyen funciones avanzadas de procesamiento. Arquitectura CISC La arquitectura CISC (Complex Instruction Set Computer, Ordenador de Conjunto de Instrucciones Complejas) se refiere a la conexin permanente del procesador con las instrucciones complejas, difciles de crear a partir de las instrucciones de base. La arquitectura CISC es especialmente popular en procesadores de tipo 80x86. Este tipo de arquitectura tiene un costo elevado a causa de las funciones avanzadas impresas en la silicona. Las instrucciones son de longitud diversa, y a veces requieren ms de un ciclo de reloj. Dado que los procesadores basados en la arquitectura CISC slo pueden procesar una instruccin a la vez, el tiempo de procesamiento es una funcin del tamao de la instruccin. Arquitectura RISC Los procesadores con tecnologa RISC (Reduced Instruction Set Computer, Ordenador de Conjunto de Instrucciones Reducidas) no poseen funciones avanzadas conectadas en forma permanente. Es por eso que los programas deben traducirse en instrucciones sencillas, lo cual complica el desarrollo o hace necesaria la utilizacin de un procesador ms potente. Este tipo de arquitectura tiene un costo de produccin reducido si se lo compara con los procesadores CISC. Adems, las instrucciones de naturaleza sencilla se ejecutan en un slo ciclo de reloj, lo cual acelera la ejecucin del programa si se lo compara con los procesadores CISC. Para terminar, dichos procesadores pueden manejar mltiples instrucciones en forma simultnea, procesndolas en paralelo. Mejoras Tecnolgicas A travs del tiempo, los fabricantes de microprocesadores (denominados fundadores) han desarrollado un determinado nmero de mejoras que optimizan el rendimiento del procesador. Procesamiento Paralelo El procesamiento paralelo consiste en la ejecucin simultnea de instrucciones desde el mismo programa pero en diferentes procesadores. Implica la divisin del programa en mltiples procesos manejados en paralelo a fin de reducir el tiempo de ejecucin. No obstante, este tipo de tecnologa necesita sincronizacin y comunicacin entre los diversos procesos, de manera similar a lo que puede llegar a ocurrir cuando se dividen las tareas en una empresa: se distribuye el trabajo en procesos discontinuos ms pequeos que son manejados por

diversos departamentos. El funcionamiento de una empresa puede verse afectado en gran medida si la comunicacin entre los distintos servicios internos no funciona de manera correcta. Canalizacin Se denomina canalizacin a la tecnologa destinada a mejorar la velocidad de ejecucin de instrucciones mediante la colocacin de las diversas etapas en paralelo. A fin de comprender el mecanismo de canalizacin, es necesario primero comprender las etapas de ejecucin de una instruccin. Las etapas de ejecucin de una instruccin correspondientes a un procesador con canalizacin "clsica" de 5 pasos son las siguientes:

RECUPERACIN: (recupera la instruccin de la cach; DECODIFICACIN: decodifica la instruccin y busca operandos (valores de registro o inmediatos); EJECUCIN: ejecuta la instruccin (por ejemplo, si se trata de una instruccin ADD, se realiza una suma, si es una instruccin SUB, se realiza una resta, etc.); MEMORIA: accede a la memoria, y escribe o recupera informacin desde all; POST ESCRITURA (retirar): registra el valor calculado en un registro.

Las instrucciones se organizan en lneas en la memoria y se cargan una tras otra. Gracias a la canalizacin, el procesamiento de instrucciones no requiere ms que los cinco pasos anteriores. Dado que el orden de los pasos es invariable (RECUPERACIN, DECODIFICACIN, EJECUCIN, MEMORIA, POST ESCRITURA), es posible crear circuitos especializados para cada uno de stos en el procesador. El objetivo de la canalizacin es ejecutar cada paso en paralelo con los pasos anteriores y los siguientes, lo que implica leer la instruccin (RECUPERACIN) mientras se lee el paso anterior (DECODIFICACIN), al momento en que el paso anterior est siendo ejecutado (EJECUCIN) al mismo tiempo que el paso anterior se est escribiendo en la memoria (MEMORIA), y que el primer paso de la serie se registra en un registro (POST ESCRITURA).

En general, deben planificarse 1 o 2 ciclos de reloj (rara vez ms) para cada paso de canalizacin, o un mximo de 10 ciclos de reloj por instruccin. Para dos instrucciones, se necesita un mximo de 12 ciclos de reloj (10+2=12 en lugar de 10*2=20), dado que la instruccin anterior ya se encontraba en la canalizacin. Ambas instrucciones se procesan simultneamente, aunque con una demora de 1 o 2 ciclos de reloj. Para 3 instrucciones, se necesitan 14 ciclos de reloj, etc. El principio de la canalizacin puede compararse a una lnea de ensamblaje automotriz. El auto se mueve de una estacin de trabajo a la otra a lo largo de la lnea de ensamblaje y para cuando sale de la fbrica, est completamente terminado. A fin de comprender bien el principio, debe visualizarse la lnea de ensamblaje como un todo, y no vehculo por vehculo. Se necesitan tres horas para producir cada vehculo, pero en realidad se produce uno por minuto. Debe notarse que existen muchos tipos diferentes de canalizaciones, con cantidades que varan entre 2 y 40 pasos, pero el principio siempre es el mismo. Superscaling La tecnologa Superscaling consiste en ubicar mltiples unidades de procesamiento en paralelo con el fin de procesar mltiples instrucciones por ciclo. HyperThreading La tecnologa HyperThreading (se escribe HT) consiste en ubicar dos procesadores lgicos junto con un procesador fsico. El sistema reconoce as dos procesadores fsicos y se comporta como un sistema multitareas, enviando de esta manera, dos subprocesos simultneos denominados SMT (Simultaneous Multi Threading, Multiprocesamiento Simultneo). Este "engao", por decirlo de alguna manera, permite emplear mejor los recursos del procesador, garantizando el envo masivo de informacin al ste. HyperTransport La tecnologa HyperTransport es un enlace punto a punto de alta velocidad y desempeo para circuitos integrados, que provee una conexin universal diseada para reducir el nmero de buses dentro de un sistema y provee de un enlace de alto desempeo para aplicaciones empotradas, habilitando sistemas multiproceso altamente escalables. Fue creado por AMD y se desarroll por un consorcio de empresas que liderea esta misma empresa, para habilitar la comunicacin entre dispositivos, dentro de las computadoras, llegando a los 12.8 Gbps; 48 veces ms rpido que PCI, 6 que PCI X. Esta es una tecnologa para ncleo, dentro de un equipo electrnico, y soporta distancias de hasta 24 pulgadas.