El 4004 fue el primer microprocesador del mundo, creado en un simple chip, y desarrollado por Intel. Era un CPU de 4 bits y tambin fue el primero disponible comercialmente. Este desarrollo impuls la calculadora de Busicom y dio camino a la manera para dotar de inteligencia a objetos inanimados, as como la computadora personal.
1972: El Intel 8008
Codificado inicialmente como 1201, fue pedido a Intel por Computer Terminal Corporation para usarlo en su terminal programable Datapoint 2200, pero debido a que Intel termin el proyecto tarde y a que no cumpla con la expectativas de Computer Terminal Corporation, finalmente no fue usado en el Datapoint. Posteriormente Computer Terminal Corporation e Intel acordaron que el i8008 pudiera ser vendido a otros clientes.
1974: El SC/MP
El SC/MP desarrollado por National Semiconductor, fue uno de los primeros microprocesadores, y estuvo disponible desde principio de 1974. El nombre SC/MP (popularmente conocido como Scamp) es el acrnimo de Simple Cost-effective Micro Processor (Microprocesador simple y rentable). Presenta un bus de direcciones de 16 bits y un bus de datos de 8 bits. Una caracterstica, avanzada para su tiempo, es la capacidad de liberar los buses a fin de que puedan ser compartidos por varios procesadores. Este microprocesador fue muy utilizado, por su bajo costo, y provisto en kits, para propsitos educativos, de investigacin y para el desarrollo de controladores industriales diversos.
1974: El Intel 8080
EL 8080 se convirti en la CPU de la primera computadora personal, la Altair 8800 de MITS, segn se alega, nombrada en base a un destino de la Nave Espacial Starship del programa de televisin Viaje a las Estrellas, y el IMSAI 8080, formando la base para las mquinas que ejecutaban el sistema operativo CP/M-80. Los fanticos de las computadoras podan comprar un equipo Altair por un precio (en aquel momento) de u$s395. En un periodo de pocos meses, se vendieron decenas de miles de estas PC.
1975: Motorola 6800
Se fabrica, por parte de Motorola, el Motorola MC6800, ms conocido como 6800. Fue lanzado al mercado poco despus del Intel 8080. Su nombre proviene de que contena aproximadamente 6800 transistores. Varios de los primeras microcomputadoras de los aos 1970 usaron el 6800 como procesador. Entre ellas se encuentran la SWTPC 6800, que fue la primera en usarlo, y la muy conocida Altair 680. Este microprocesador se utiliz profusamente como parte de un kit para el desarrollo de sistemas controladores en la industria. Partiendo del 6800 se crearon varios procesadores derivados, siendo uno de los ms potentes el Motorola 6809
1976: El Z80
La compaa Zilog Inc. crea el Zilog Z80. Es un microprocesador de 8 bits construido en tecnologa NMOS, y fue basado en el Intel 8080. Bsicamente es una ampliacin de ste, con lo que admite todas sus instrucciones. Un ao despus sale al mercado el primer computador que hace uso del Z80, el Tandy TRS-80Model 1 provisto de un Z80 a 1,77 MHz y 4 KB de RAM. Es uno de los procesadores de ms xito del mercado, del cual se han producido numerosas versiones clnicas, y sigue siendo usado de forma extensiva en la actualidad en multitud de sistemas embebidos. La compaa Zilog fue fundada 1974 porFederico Faggin, quien fue diseador jefe del microprocesador Intel 4004 y posteriormente del Intel 8080.
1978: Los Intel 8086 y 8088
Una venta realizada por Intel a la nueva divisin de computadoras personales de IBM, hizo que las PC de IBM dieran un gran golpe comercial con el nuevo producto con el 8088, el llamado IBM PC. El xito del 8088 propuls a Intel a la lista de las 500 mejores compaas, en la prestigiosa revista Fortune, y la misma nombr la empresa como uno de Los triunfos comerciales de los sesenta.
1982: El Intel 80286
El 80286, popularmente conocido como 286, fue el primer procesador de Intel que podra ejecutar todo el software escrito para su predecesor. Esta compatibilidad del software sigue siendo un sello de la familia de microprocesadores de Intel. Luego de 6 aos de su introduccin, haba un estimado de 15 millones de PC basadas en el 286, instaladas alrededor del mundo.
1985: El Intel 80386
Este procesador Intel, popularmente llamado 386, se integr con 275000 transistores, ms de 100 veces tantos como en el original 4004. El 386 aadi una arquitectura de 32 bits, con capacidad para multitarea y una unidad de traslacin de pginas, lo que hizo mucho ms sencillo implementar sistemas operativosque usaran memoria virtual.
1985: El VAX 78032
El microprocesador VAX 78032 (tambin conocido como DC333), es de nico chip y de 32 bits, y fue desarrollado y fabricado por Digital Equipment Corporation(DEC); instalado en los equipos MicroVAX II, en conjunto con su ship coprocesador de coma flotante separado, el 78132, tenan una potencia cercana al 90% de la que poda entregar el minicomputador VAX 11/780 que fuera presentado en 1977. Este microprocesador contena 125000 transistores, fue fabricado en tecnologa ZMOS de DEC. Los sistemas VAX y los basados en este procesador fueron los preferidos por la comunidad cientfica y de ingeniera durante la dcada del 1980. 1989: El Intel 80486
La generacin 486 realmente signific contar con una computadora personal de prestaciones avanzadas, entre ellas,un conjunto de instrucciones optimizado, una unidad de coma flotante o FPU, una unidad de interfaz de bus mejorada y una memoria cach unificada, todo ello integrado en el propio chip del microprocesador. Estas mejoras hicieron que los i486 fueran el doble de rpidos que el par i386 - i387 operando a la misma frecuencia de reloj. El procesador Intel 486 fue el primero en ofrecer un coprocesador matemtico o FPU integrado; con l que se aceleraron notablemente las operaciones de clculo. Usando una unidad FPU las operaciones matemticas ms complejas son realizadas por el coprocesador de manera prcticamente independiente a la funcin del procesador principal.
1991: El AMD AMx86
Procesadores fabricados por AMD 100% compatible con los cdigos de Intel de ese momento, llamados clones de Intel, llegaron incluso a superar la frecuencia de reloj de los procesadores de Intel y a precios significativamente menores. Aqu se incluyen las series Am286, Am386, Am486 y Am586.
1993: PowerPC 601
Es un procesador de tecnologa RISC de 32 bits, en 50 y 66MHz. En su diseo utilizaron la interfaz de bus del Motorola 88110. En 1991, IBM busca una alianza con Apple y Motorola para impulsar la creacin de este microprocesador, surge la alianza AIM (Apple, IBM y Motorola) cuyo objetivo fue quitar el dominio que Microsoft e Intel tenan en sistemas basados en los 80386 y 80486. PowerPC (abreviada PPC o MPC) es el nombre original de la familia de procesadores de arquitectura de tipo RISC, que fue desarrollada por la alinza AIM. Los procesadores de esta familia son utilizados principalmente en computadores Macintosh de Apple Computer y su alto rendimiento se debe fuertemente a su arquitectura tipo RISC.
1993: El Intel Pentium
El microprocesador de Pentium posea una arquitectura capaz de ejecutar dos operaciones a la vez, gracias a sus dos pipeline de datos de 32bits cada uno, uno equivalente al 486DX(u) y el otro equivalente a 486SX(u). Adems, estaba dotado de un bus de datos de 64 bits, y permita un acceso a memoria de 64 bits (aunque el procesador segua manteniendo compatibilidad de 32 bits para las operaciones internas, y los registros tambin eran de 32 bits). Las versiones que incluan instrucciones MMX no slo brindaban al usuario un ms eficiente manejo de aplicaciones multimedia, como por ejemplo, la lectura de pelculas en DVD, sino que tambin se ofrecan en velocidades de hasta 233 MHz. Se incluy una versin de 200 MHz y la ms bsica trabajaba a alrededor de 166 MHz de frecuencia de reloj. El nombre Pentium, se mencion en las historietas y en charlas de la televisin a diario, en realidad se volvi una palabra muy popular poco despus de su introduccin.
1994: EL PowerPC 620
En este ao IBM y Motorola desarrollan el primer prototipo del procesador PowerPC de 64 bit[2], la implementacin ms avanzada de la arquitectura PowerPC, que estuvo disponible al ao prximo. El 620 fue diseado para su utilizacin en servidores, y especialmente optimizado para usarlo en configuraciones de cuatro y hasta ocho procesadores en servidores de aplicaciones de base de datos y vdeo. Este procesador incorpora siete millones de transistores y corre a 133 MHz. Es ofrecido como un puente de migracin para aquellos usuarios que quieren utilizar aplicaciones de 64 bits, sin tener que renunciar a ejecutar aplicaciones de 32 bits.
1995: EL Intel Pentium Pro
Lanzado al mercado para el otoo de 1995, el procesador Pentium Pro (profesional) se dise con una arquitectura de 32 bits. Se us en servidores y los programas y aplicaciones para estaciones de trabajo (de redes) impulsaron rpidamente su integracin en las computadoras. El rendimiento del cdigo de 32 bits era excelente, pero el Pentium Pro a menudo era ms lento que un Pentium cuando ejecutaba cdigo o sistemas operativos de 16 bits. El procesador Pentium Pro estaba compuesto por alrededor de 5,5 millones de transistores.
1996: El AMD K5
Habiendo abandonado los clones, AMD fabricada con tecnologas anlogas a Intel. AMD sac al mercado su primer procesador propio, el K5, rival del Pentium. La arquitectura RISC86 del AMD K5 era ms semejante a la arquitectura del Intel Pentium Pro que a la del Pentium. El K5 es internamente un procesador RISC con una Unidad x86- decodificadora, transforma todos los comandos x86 (de la aplicacin en curso) en comandos RISC. Este principio se usa hasta hoy en todas las CPU x86. En la mayora de los aspectos era superior el K5 al Pentium, incluso de inferior precio, sin embargo AMD tena poca experiencia en el desarrollo de microprocesadores y los diferentes hitos de produccin marcados se fueron superando con poco xito, se retras 1 ao de su salida al mercado, a razn de ello sus frecuencias de trabajo eran inferiores a las de la competencia, y por tanto, los fabricantes de PC dieron por sentado que era inferior.
1996: Los AMD K6 y AMD K6-2
Con el K6, AMD no slo consigui hacerle seriamente la competencia a los Pentium MMX de Intel, sino que adems amarg lo que de otra forma hubiese sido un plcido dominio del mercado, ofreciendo un procesador casi a la altura del Pentium II pero por un precio muy inferior. En clculos en coma flotante, el K6 tambin qued por debajo del Pentium II, pero por encima del Pentium MMX y del Pro. El K6 cont con una gama que va desde los 166 hasta los ms de 500 Mhz y con el juego de instrucciones MMX, que ya se han convertido en estndares. Ms adelante se lanz una mejora de los K6, los K6-2 de 250 nanmetros, para seguir compitiendo con los Pentium II, siendo ste ltimo superior en tareas de coma flotante, pero inferior en tareas de uso general. Se introduce un juego de instrucciones SIMD denominado 3DNow!
1997: El Intel Pentium II
Un procesador de 7,5 millones de transistores, se busca entre los cambios fundamentales con respecto a su predecesor, mejorar el rendimiento en la ejecucin de cdigo de 16 bits, aadir el conjunto de instrucciones MMX y eliminar la memoria cach de segundo nivel del ncleo del procesador, colocndola en una tarjeta de circuito impreso junto a ste. Gracias al nuevo diseo de este procesador, los usuarios de PC pueden capturar, revisar y compartir fotografas digitales con amigos y familia va Internet; revisar y agregar texto, msica y otros; con una lnea telefnica; el enviar vdeo a travs de las lneas normales del telfono mediante Internet se convierte en algo cotidiano.
1998: El Intel Pentium II Xeon
Los procesadores Pentium II Xeon se disean para cumplir con los requisitos de desempeo en computadoras de medio-rango, servidores ms potentes y estaciones de trabajo (workstations). Consistente con la estrategia de Intel para disear productos de procesadores con el objetivo de llenar segmentos de los mercados especficos, el procesador Pentium II Xeon ofrece innovaciones tcnicas diseadas para las estaciones de trabajo y servidores que utilizan aplicaciones comerciales exigentes, como servicios de Internet, almacenamiento de datos corporativos, creaciones digitales y otros. Pueden configurarse sistemas basados en este procesador para integrar de cuatro o ocho procesadores trabajando en paralelo, tambin ms all de esa cantidad.
1999: El Intel Celeron
Continuando la estrategia, Intel, en el desarrollo de procesadores para los segmentos del mercado especficos, el procesador Celeron es el nombre que lleva la lnea de de bajo costo de Intel. El objetivo fue poder, mediante sta segunda marca, penetrar en los mercados impedidos a los Pentium, de mayor rendimiento y precio. Se disea para el aadir valor al segmento del mercado de los PC. Proporcion a los consumidores una gran actuacin a un bajo coste, y entreg un desempeo destacado para usos como juegos y el software educativo.
1999: El AMD Athlon K7 (Classic y Thunderbird)
Procesador totalmente compatible con la arquitectura x86. Internamente el Athlon es un rediseo de su antecesor, pero se le mejor substancialmente el sistema de coma flotante (ahora con 3 unidades de coma flotante que pueden trabajar simultneamente) y se le increment la memoria cach de primer nivel (L1) a 128 KiB (64 KiB para datos y 64 KiB para instrucciones). Adems incluye 512 KiB de cach de segundo nivel (L2). El resultado fue el procesador x86 ms potente del momento. El procesador Athlon con ncleo Thunderbird apareci como la evolucin del Athlon Classic. Al igual que su predecesor, tambin se basa en la arquitectura x86 y usa el bus EV6. El proceso de fabricacin usado para todos estos microprocesadores es de 180 nanmetros. El Athlon Thunderbird consolid a AMD como la segunda mayor compaa de fabricacin de microprocesadores, ya que gracias a su excelente rendimiento (superando siempre al Pentium III y a los primeros Pentium IV de Intel a la misma frecuencia de reloj) y bajo precio, la hicieron muy popular tanto entre los entendidos como en los iniciados en la informtica.
1999: El Intel Pentium III
El procesador Pentium III ofrece 70 nuevas instrucciones Internet Streaming, las extensiones de SIMD que refuerzan dramticamente el desempeo con imgenes avanzadas, 3D, aadiendo una mejor calidad de audio, video y desempeo en aplicaciones de reconocimiento de voz. Fue diseado para reforzar el rea del desempeo en el Internet, le permite a los usuarios hacer cosas, tales como, navegar a travs de pginas pesadas (con muchos grficos), tiendas virtuales y transmitir archivos video de alta calidad. El procesador se integra con 9,5 millones de transistores, y se introdujo usando en l tecnologa 250 nanmetros.
1999: El Intel Pentium III Xeon
El procesador Pentium III Xeon amplia las fortalezas de Intel en cuanto a las estaciones de trabajo (workstation) y segmentos de mercado de servidores, y aade una actuacin mejorada en las aplicaciones del comercio electrnico e informtica comercial avanzada. Los procesadores incorporan mejoras que refuerzan el procesamiento multimedia, particularmente las aplicaciones de vdeo. La tecnologa del procesador III Xeon acelera la transmisin de informacin a travs del bus del sistema al procesador, mejorando el desempeo significativamente. Se disea pensando principalmente en los sistemas con configuraciones de multiprocesador.
2000: EL Intel Pentium 4
Este es un microprocesador de sptima generacin basado en la arquitectura x86 y fabricado por Intel. Es el primero con un diseo completamente nuevo desde el Pentium Pro. Se estren la arquitectura NetBurst, la cual no daba mejoras considerables respecto a la anterior P6. Intel sacrific el rendimiento de cada ciclo para obtener a cambio mayor cantidad de ciclos por segundo y una mejora en las instrucciones SSE.
2001: El AMD Athlon XP
Cuando Intel sac el Pentium 4 a 1,7 GHz en abril de 2001 se vio que el Athlon Thunderbird no estaba a su nivel. Adems no era prctico para el overclocking, entonces para seguir estando a la cabeza en cuanto a rendimiento de los procesadores x86, AMD tuvo que disear un nuevo ncleo, y sac el Athlon XP. Este compatibilizaba las instrucciones SSE y las 3DNow! Entre las mejoras respecto al Thunderbird se puede mencionar la prerrecuperacin de datos por hardware, conocida en ingls como prefetch, y el aumento de las entradas TLB, de 24 a 32.
2004: El Intel Pentium 4 (Prescott)
A principios de febrero de 2004, Intel introdujo una nueva versin de Pentium 4 denominada 'Prescott'. Primero se utiliz en su manufactura un proceso de fabricacin de 90 nm y luego se cambi a 65nm. Su diferencia con los anteriores es que stos poseen 1 MiB o 2 MiB de cach L2 y 16 KiB de cach L1 (el doble que los Northwood), prevencin de ejecucin, SpeedStep, C1E State, un HyperThreading mejorado, instrucciones SSE3, manejo de instrucciones AMD64, de 64 bits creadas por AMD, pero denominadas EM64T por Intel, sin embargo por graves problemas de temperatura y consumo, resultaron un fracaso frente a los Athlon 64.
2004: El AMD Athlon 64
El AMD Athlon 64 es un microprocesador x86 de octava generacin que implementa el conjunto de instrucciones AMD64, que fueron introducidas con el procesador Opteron. El Athlon 64 presenta un controlador de memoria en el propio circuito integrado del microprocesador y otras mejoras de arquitectura que le dan un mejor rendimiento que los anteriores Athlon y que el Athlon XP funcionando a la misma velocidad, incluso ejecutando cdigo heredado de 32 bits.El Athlon 64 tambin presenta una tecnologa de reduccin de la velocidad del procesador llamada Cool'n'Quiet,: cuando el usuario est ejecutando aplicaciones que requieren poco uso del procesador, baja la velocidad del mismo y su tensin se reduce.
2006: EL Intel Core Duo
Intel lanz sta gama de procesadores de doble ncleo y CPUs 2x2 MCM (mdulo Multi-Chip) de cuatro ncleos con el conjunto de instrucciones x86-64, basado en el la nueva arquitectura Core de Intel. La microarquitectura Core regres a velocidades de CPU bajas y mejor el uso del procesador de ambos ciclos de velocidad y energa comparados con anteriores NetBurst de los CPU Pentium 4/D2. La microarquitectura Core provee etapas de decodificacin, unidades de ejecucin, cach y buses ms eficientes, reduciendo el consumo de energa de CPU Core 2, mientras se incrementa la capacidad de procesamiento. Los CPU de Intel han variado muy bruscamente en consumo de energa de acuerdo a velocidad de procesador, arquitectura y procesos de semiconductor, mostrado en las tablas de disipacin de energa del CPU. Esta gama de procesadores fueron fabricados de 65 a 45 nanmetros.
2007: El AMD Phenom
Phenom fue el nombre dado por Advanced Micro Devices (AMD) a la primera generacin de procesadores de tres y cuatro ncleos basados en la microarquitectura K10. Como caracterstica comn todos los Phenom tienen tecnologa de 65 nanmetros lograda a travs de tecnologa de fabricacin Silicon on insulator (SOI). No obstante, Intel, ya se encontraba fabricando mediante la ms avanzada tecnologa de proceso de 45 nm en 2008. Los procesadores Phenom estn diseados para facilitar el uso inteligente de energa y recursos del sistema, listos para la virtualizacin, generando un ptimo rendimiento por vatio. Todas las CPU Phenom poseen caractersticas tales como controlador de memoria DDR2 integrado, tecnologa HyperTransport y unidades de coma flotante de 128 bits, para incrementar la velocidad y el rendimiento de los clculos de coma flotante. La arquitectura Direct Connect asegura que los cuatro ncleos tengan un ptimo acceso al controlador integrado de memoria, logrando un ancho de banda de 16 Gb/s para intercomunicacin de los ncleos del microprocesador y la tecnologa HyperTransport, de manera que las escalas de rendimiento mejoren con el nmero de ncleos. Tiene cach L3 compartida para un acceso ms rpido a los datos (y as no depende tanto del tiempo de latencia de la RAM), adems de compatibilidad de infraestructura de los zcalos AM2, AM2+ y AM3 para permitir un camino de actualizacin sin sobresaltos. A pesar de todo, no llegaron a igualar el rendimiento de la serie Core 2 Duo.
2008: El Intel Core Nehalem
Intel Core i7 es una familia de procesadores de cuatro ncleos de la arquitectura Intel x86-64. Los Core i7 son los primeros procesadores que usan la microarquitectura Nehalem de Intel y es el sucesor de la familia Intel Core 2. FSB es reemplazado por la interfaz QuickPath en i7 e i5 (zcalo 1366), y sustituido a su vez en i7, i5 e i3 (zcalo 1156) por el DMI eliminado el northBrige e implementando puertos PCI Express directamente. Memoria de tres canales (ancho de datos de 192 bits): cada canal puede soportar una o dos memorias DIMM DDR3. Las placa base compatibles con Core i7 tienen cuatro (3+1) o seis ranuras DIMM en lugar de dos o cuatro, y las DIMMs deben ser instaladas en grupos de tres, no dos. El Hyperthreading fue reimplementado creando ncleos lgicos. Est fabricado a arquitecturas de 45 nm y 32 nm y posee 731 millones de transistores su versin ms potente. Se volvi a usar frecuencias altas, aunque a contrapartida los consumos se dispararon.
2008: Los AMD Phenom II y Athlon II
Phenom II es el nombre dado por AMD a una familia de microprocesadores o CPUs multincleo (multicore) fabricados en 45 nm, la cual sucede al Phenom original y dieron soporte a DDR3. Una de las ventajas del paso de los 65 nm a los 45 nm, es que permiti aumentar la cantidad de cache L3. De hecho, sta se increment de una manera generosa, pasando de los 2 MiB del Phenom original a 6 MiB. Entre ellos, el Amd Phenom II X2 BE 555 de doble ncleo surge como el procesador bincleo del mercado. Tambin se lanzan tres Athlon II con slo Cache L2, pero con buena relacin precio/rendimiento. El Amd Athlon II X4 630 corre a 2,8 GHz. El Amd Athlon II X4 635 contina la misma lnea. AMD tambin lanza un triple ncleo, llamado Athlon II X3 440, as como un doble ncleo Athlon II X2 255. Tambin sale el Phenom X4 995, de cuatro ncleos, que corre a ms de 3,2GHz. Tambin AMD lanza la familia Thurban con 6 ncleos fsicos dentro del encapsulado
2011: El Intel Core Sandy Bridge
Llegan para remplazar los chips Nehalem, con Intel Core i3, Intel Core i5 e Intel Core i7 serie 2000 y Pentium G. Intel lanz sus procesadores que se conocen con el nombre en clave Sandy Bridge. Estos procesadores Intel Core que no tienen sustanciales cambios en arquitectura respecto a nehalem, pero si los necesarios para hacerlos ms eficientes y rpidos que los modelos anteriores. Es la segunda generacin de los Intel Core con nuevas instrucciones de 256 bits, duplicando el rendimiento, mejorando el desempeo en 3D y todo lo que se relacione con operacin en multimedia. Llegaron la primera semana de Enero del 2011. Incluye nuevo conjunto de instrucciones denominado AVX y una GPU integrada de hasta 12 unidades de ejecucin Ivy Bridge es la mejora de sandy bridge a 22 nm. Se estima su llegada para 2012 y promete una mejora de la GPU, as como procesadores de sexdcuple ncleo en gamas ms altas y cudruple ncleo en las ms bajas, abandonndose los procesadores de ncleo doble.
2011: El AMD Fusion
AMD Fusion es el nombre clave para un diseo futuro de microprocesadores Turion, producto de la fusin entre AMD y ATI, combinando con la ejecucin general del procesador, el proceso de la geometra 3D y otras funciones de GPUs actuales. La GPU (procesador grfico) estar integrada en el propio microprocesador. Se espera la salida progresiva de esta tecnologa a lo largo del 2011; estando disponibles los primeros modelos (Ontaro y Zacate) para ordenadores de bajo consumo entre ltimos meses de 2010 y primeros de 2011, dejando el legado de las gamas medias y altas (Llano, Brazos y Bulldozer para mediados o finales del 2011)
FUNCIONAMIENTO DE PIPELINING
En computacin, se le llama pipeline a una serie de elementos de procesamiento de datos ordenados de tal modo que la salida de cada uno es la entrada del siguiente, como quien dice una cadena de montaje pero en vez de orientada a la manufactura, orientada al procesamiento de datos e instrucciones. En esta gua explicaremos cmo funcionan.
Introduccin En computacin, se le llama pipeline a una serie de elementos de procesamiento de datos ordenados de tal modo que la salida de cada uno es la entrada del siguiente, como quien dice una cadena de montaje pero en vez de orientada a la manufactura, orientada al procesamiento de datos e instrucciones.
Entender cmo funciona un pipeline es un paso importante para entender qu diablos ocurre dentro de un procesador, y es por eso que en esta gua, que hemos separado en dos captulos, intentaremos dejarte en claro el sentido y mecnica de estas cadenas de montaje que existen al interior de un CPU.
El material que vas a leer fu licenciado a partir de un documento facilitado por Arstechnica, el cual fu traducido y adaptado por CHW para el mejor entendimiento de nuestro pblico. Es del chipset de la placa base, y es una memoria intermedia de muy rapido acceso que se usa para cachear instrucciones de bajo nivel (vease assembler) del procesador Es una caracterstica de los procesadores superescalares, y parte de la idea de la segmentacin de instrucciones. Un procesador superescalar (Pentium, PowePc.....) tiene varios pipelines. Partiendo de la segmentacin de instrucciones, por ejemplo. esta instruccion la dividimos en 5 etapas: ADD R1,#4 (suma 4 al registo R1 y guardalo en R1) -Decodificacin instruccin -Busqueda instruccin -Busqueda operandos -Ejecucin operacin. -Guardar resultado.
En este caso hipottico el pipeline tiene las 5 etapas anteriores. Que se gana con un solo pipeline? Sera usar la segmentacin, o sea quando una instruccin acaba la etapa de decodificacin de instruccin seguidamente puede entrar la siguiente instruccin al pipleline para que sea decodificada y as paulatinamente. Si slo tuvieramos una etapa en el pipeline, hasta que no hubiera acabado de hacerlo todo no podria entrar ninguna instruccin. As conseguimos ejecutar mas instrucciones secuencialmente pero en menos tiempo, ya que las diferentes etapas del pipleline se mantienen ocupadas. Y como comentaba los procesadores superescalares tienen diferentes pipelines, esto hace que puedan ejecturarse todas las etapas anteriormente comentadas simultaneamente. Por ejemplo si tenemos 4 pipelines, tendremos 4 etapas de busqueda de instrucciones, 4 etapas de busqueda de instruccin, 4 de busqueda de operandos, 4 de ejecucin y 4 de guardar resultado. Eso si, hay que tener en cuenta las dependencias entre instrucciones para ejecturar simultaneamente.
En condiciones normales el procesador (hablo d los 8086) ejecutaba las instrucciones a medida q las sacaba d la memoria del sistema, pero mientras leia la instrucion la unidad aritmetico-logica se rascaba la barriga, obligando a meter ciclos d espera ya q no tenia instrucciones q procesar, las estaba leyendo. El pipeline es una tecnica con la q aadiendo un buffer junto al procesador mientras ejecuta una instruccion, carga la siguiente y asi sucesivamente, d ahi lo d pipeline (q viene a significar mas o menos "tuberia" o "por un tubo") El mayor avance del pentium 2 fue disponer d 2 pipelines independientes (podriamos llamarlos "canales d instrucciones") d manera q si con uno ganas n fluidez al disponer d dos, solapaba las instrucciones d tal forma q parecia q ejecutaba dos instrucciones a la vez, evidentemente la alu solo procesa una instruccion d cada vez, pero asi reducian aun mas los ciclos d espera y se aprovechan mejor los micros.
La segmentacin de cauce, tambin denominada pipeline, es una tcnica empleada en el diseo de procesadores, basada en la divisin de la ejecucin de las instrucciones en etapas, consiguiendo as que una instruccin empiece a ejecutarse antes de que hayan terminado las anteriores y, por tanto, que haya varias instrucciones procesndose simultneamente. Cada una de las etapas debe completar sus acciones en un ciclo de reloj, pasando sus resultados a la etapa siguiente y recibindolos de la anterior. Para eso es necesario almacenar los datos en registros intermedios. Cualquier valor que pueda ser necesario en una etapa posterior debe irse propagando a travs de esos registros intermedios hasta que ya no sea necesario. Para conseguir la segmentacin es necesario que una instruccin utilice solamente una etapa en cada ciclo de ejecucin. Ya que todas las etapas deben de tardar lo mismo en su ejecucin, el tiempo de ciclo ser el de la etapa ms lenta, ms el del retardo provocado por la utilizacin de los registros intermedios. Comparando este esquema con el multiciclo, el tiempo de ciclo ser ms lento, pero el CPI (Ciclos Por Instruccin) ser menor, lo que provoca un aumento del rendimiento. Ya que si no tenemos en cuenta los riesgos estructurales (que pueden provocar paradas en el pipeline), tendramos que en cada ciclo de reloj, termina de ejecutarse una instruccin (CPI=1). Segmentacin (Pipeline) Es una tcnica de implementacin por medio de la cual se puede traslapar la ejecucin de instrucciones. En la actualidad la segmentacin es una de las tecnologas utilizadas para hacer procesadores ms rpidos. El Pentium 4 y sus pipelines El Pentium 4 original era un diseo radical por un nmero de razones, pero quizs su caracterstica ms llamativa era su "pipelining" o "segmentacin" extraordinariamente profunda. Con ms de 20 etapas, los "pipes" del Pentium 4 eran casi dos veces ms profundos que los "pipes" de sus competidores. Recientemente el Prescott, sucesor de los Pentium 4 en 90nm, llev el "pipelining" a un nivel superior, agregando otras 10 etapas sobre los "pipes" del Pentium 4.
La estrategia de Intel de profundizar el pipeline del Pentium 4, una prctica que Intel llama "hyperpipelining", ha dado sus frutos en trminos del funcionamiento, pero no sin sus desventajas.Despus de una introduccin bsica sobre el concepto de los "pipes",Diremos qu se requiere para hacer "pipes" eficientes y qu desventajas presentan diseos con pipelines profundos como el Prescott.
Ciclo de vida de una instruccin La accin bsica de cualquier microprocesador, en tanto se mueve a travs de la corriente de instrucciones, se puede descomponer en una serie de cuatro pasos simples, que cada instruccin en la corriente de cdigo debe atravesar para ser ejecutada: 1. Fetch: "traer" la instruccin que se va a ejecutar, de la direccin almacenada en el contador de programa. 2. Store: "almacenar" la instruccin en el registro de instrucciones y "descifrarla", incrementando la direccin en el contador de programa. 3. Execute: "Ejecutar" la instruccin almacenada en el registro de instrucciones. Si la instruccin no es una instruccin de rama sino una instruccin aritmtica, este proceso la enva a la ALU apropiada (ALU: Arithmetic Logic Unit ? en espaol: Unidad Aritmtico-Lgica), donde el microprocesador: a. "Lee" el contenido de los registros de entrada. b. "Agrega" el contenido de los registros de entrada. 4. Write: "Escribir" los resultados de esa instruccin de la ALU nuevamente dentro del registro de destinacin En un procesador moderno, los cuatro pasos arriba descritos son repetidos una y otra vez hasta que el programa termine de ejecutarse. stas son, en hecho, las cuatro etapas en un "pipe" clsico del RISC.
Aqu estn las cuatro etapas en su forma abreviada, que es la ms comn: 1. Fetch (Traer) 2. Decode (Descifrar) 3. Execute (Ejecutar) 4. Write (Escribir)
Cada uno de los conceptos anteriores puede ser usado para representar una fase en el "ciclo de vida" de una instruccin. Una instruccin comienza en la fase de "traer", se mueve a la fase de "descifrar", despus a la fase "ejecutar", y finalmente a la fase "escribir". Cada fase toma un tiempo fijo, pero de ningn modo igual al que otra fase toma en cumplir su cometido. Un ejemplo sin pipelining.
Tiempo atrs, los procesadores sin pipelining trabajaban sobre una instruccin a la vez, moviendo cada instruccin a travs de las cuatro fases de su ciclo de vida en el tiempo de un ciclo de reloj. As, los procesadores sin pipeline se llaman tambin procesadores de ciclo simple, porque todas las instrucciones toman exactamente un ciclo de reloj para ejecutarse completamente (o, para pasar a travs de las cuatro fases de sus ciclos de vida).
Como el procesador completa instrucciones al ritmo de una por ciclo de reloj, queremos que el reloj del CPU corra lo ms rpidamente posible, para que la tasa de ejecucin de instrucciones del procesador (esto es, el nmero de instrucciones completadas por nanosegundo) sea tan alta como sea posible. As necesitamos calcular la mnima cantidad de tiempo que toma completar una instruccin, y hacer el ciclo de reloj equivalente a esa longitud de tiempo. Simplemente pasa que en nuestro caso hipottico de CPU, las cuatro fases del ciclo de vida de la instruccin toman un total de cuatro nanosegundos para completarse, por lo tanto deberamos setear la duracin del ciclo de reloj del CPU a cuatro nanosegundos, as el CPU puede completar todo el ciclo de vida de la instruccin, desde fetch hasta write-back, en un solo ciclo. (Un ciclo de reloj de CPU es simplemente denominado ciclo.)
Un ejemplo con pipelining.
Hacer "pipelining" a un procesador significa descomponer su proceso de ejecucin de instrucciones ? lo que hemos estado llamando el "ciclo de vida" de la instruccin- en una serie de etapas discretas de segmentacin, que pueden ser completadas en secuencia por hardware especializado.
En tanto el ciclo de vida de una instruccin consiste en cuatro fases completamente distintas, podemos empezar por descomponer el proceso de ejecucin de instrucciones de nuestro procesador de ciclo simple en una secuencia de cuatro etapas discretas de segmentacin ?un pipeline de cuatro etapas-, donde cada etapa corresponde a una fase en el ciclo de vida estndar de la instruccin: Etapa 1: Traer la instruccin desde el almacn de cdigo. Etapa 2: Decodificar la instruccin. Etapa 3: Ejecutar la instruccin. Etapa 4: Escribir los resultados de la instruccin en el archivo de registro.
Nos referimos al nmero de etapas del pipeline como profundidad del pipeline. Entonces, nuestro pipeline de 4 etapas tiene una profundidad de pipeline igual a 4.