Está en la página 1de 6

El microprocesador Pentium

Introduccin
El 19 de octubre de 1992, Intel anunci que la quinta generacin de su lnea de
procesadores compatibles (cuyo cdigo interno era el P5) lleara el nombre Pentium en
e! de 5"# u "$5"#, como todo el mundo estaba esperando% Esta &ue una estrategia de Intel
para poder registrar la marca y as poder di&erir el nombre de sus procesadores del de sus
competidores ('() y *yri+ principalmente)%
Este microprocesador se present el 22 de mar!o de 199, con elocidades iniciales de #$ y
## (-! (112 millones de instrucciones por segundo en el .ltimo caso), ,%1$$%$$$
transistores (&abricado con el proceso /I*(01 (/ipolar2*(01) de $," micrones), cac34
interno de " 5/ para datos y " 5/ para instrucciones, eri&icacin interna de paridad para
asegurar la e6ecucin correcta de las instrucciones, una unidad de punto &lotante me6orada,
bus de datos de #7 bit para una comunicacin m8s r8pida con la memoria e+terna y, lo m8s
importante, permite la e6ecucin de dos instrucciones simult8neamente% El c3ip se
empaqueta en &ormato P9' (Pin 9rid 'rray) de 2:, pines%
*omo el Pentium sigue el modelo del procesador ,"#;7"# y a<ade unas pocas instrucciones
adicionales pero ning.n registro programable, 3a sido denominado un dise<o del tipo 7"#=%
Esto no quiere decir que no 3ay caractersticas nueas o me6oras que aumenten la potencia%
>a me6ora m8s signi&icatia sobre el 7"# 3a ocurrido en la unidad de punto &lotante% -asta
ese momento, Intel no 3aba prestado muc3a atencin a la computacin de punto &lotante,
que tradicionalmente 3aba sido el bastin de las estaciones de ingeniera% *omo resultado,
los coprocesadores "$2": y "$,": y los coprocesadores integrados en la lnea de *P?s 7"#
)@ se 3an considerado an4micos cuando se les compara con los procesadores AI1*
(Aeduced Instruction 1et *omputer), que equipan dic3as estaciones%
Bodo esto 3a cambiado con el PentiumC la unidad de punto &lotante es una prioridad para
Intel, ya que debe competir en el mercado de DindoEs FB con los procesadores AI1* tales
como el c3ip 'lp3a 21$#7 de )igital Equipment *orporation y el (IP1 A7$$$ de 1ilicon
9rap3ics% Esto puede ayudar a e+plicar por qu4 el Pentium presenta un incremento de 5
eces en el rendimiento de punto &lotante cuando se le compara con el dise<o del 7"#% En
contraste, Intel slo pudo e+traer un aumento del doble para operaciones de punto &i6o o
enteros%
El gran aumento de rendimiento tiene su contraparte en el consumo de energaC 1, Eatt
ba6o la operacin normal y 1# Eatt a plena potencia (,,2 amperes + 5 olt G 1# Eatt), lo que
3ace que el c3ip se caliente demasiado y los &abricantes de tar6etas madres (mot3erboards)
tengan que agregar complicados sistemas de re&rigeracin%
Beniendo esto en cuenta, Intel puso en el mercado el : de mar!o de 1997 la segunda
generacin de procesadores Pentium% 1e introdu6o con las elocidades de 9$ y 1$$ (-!
con tecnologa de $,# micrones y Posteriormente se agregaron las ersiones de 12$, 1,,,
15$, 1#$ y 2$$ (-! con tecnologa de $,,5 micrones% En todos los casos se redu6o la
tensin de alimentacin a ,,, olt% Esto redu6o dr8sticamente el consumo de electricidad (y
por ende el calor que genera el circuito integrado)% )e esta manera el c3ip m8s r8pido (el de
2$$ (-!) consume lo mismo que el de ## (-!% Estos integrados ienen con 29# pines%
'dem8s la cantidad de transistores subi a ,%,$$%$$$% Esto se debe a que se agreg
circuitera adicional de control de clock, un controlador de interrupciones aan!ado
programable ('PI*) y una inter&a! para procesamiento dual (&acilita el desarrollo de
mot3erboards con dos Pentium)%
En octubre de 1997, un matem8tico report en Internet que la Pentium tena un error que se
presentaba cuando se usaba la unidad de punto &lotante para 3acer diisiones (instruccin
H)II) con determinadas combinaciones de n.meros% Por e6emploC
9#2 ,$# 95: $,, ; 11 $1$ $7# G ": 7$2,#2"2$2:,71 (respuesta correcta)
9#2 ,$# 95: $,, ; 11 $1$ $7# G ": ,99,5"$5",1,29 (Pentium &allada)
El de&ecto se propag r8pidamente y al poco tiempo el problema era conocido por gente
que ni siquiera tena computadora% Este bug se arregl en las ersiones )1 y posteriores de
los Pentium #$;## (-! y en las ersiones /5 y posteriores de los Pentium :5;9$;1$$ (-!%
>os Pentium con elocidades m8s eleadas se &abricaron posteriormente y no posee este
problema%
En enero de 199: apareci una tercera generacin de Pentium, que incorpora lo que Intel
llama tecnologa MMX (MultiMedia eXtensions) con lo que se agregan 5: instrucciones
adicionales% Est8n disponibles en elocidades de ##;1## (-!, ##;2$$ (-! y ##;2,, (-!
(elocidad e+terna;interna)% >as nueas caractersticas incluyen una unidad ((@ y el
doble de cac34% El Pentium ((@ tiene 7%5$$%$$$ transistores con un proceso *(012
silicio de $,,5 micrones me6orado que permite ba6ar la tensin a 2," olt% E+ternamente
posee ,21 pines%
Vas de acceso mltiples
>o que comen! con la t4cnica del ,"#;7"# de tener as de acceso m.ltiples para la
e6ecucin de instrucciones, se e re&inado en el Pentium ya que tiene un dise<o con doble
a de acceso% El ob6etio de 4sta es el de procesar m.ltiples instrucciones
simult8neamente, en arios estados de e6ecucin, para obtener una elocidad de e6ecucin
general de instrucciones de una instruccin por ciclo de relo6%
El resultado &inal de la estructura doble a de acceso es un dise<o superescalar que tiene la
3abilidad de e6ecutar m8s de una instruccin en un ciclo de relo6 dado% >os procesadores
escalares, como la &amilia del 7"#, tienen slo una a de acceso%
1e puede pensar que el microprocesador moderno con as de acceso doble es similar a una
lnea de produccin que recibe en un e+tremo materias primas sin procesar y a medio
procesar y que saca el producto terminado en el otro e+tremo% >a lnea de produccin con
a de acceso doble del Pentium trans&orma la materia prima de in&ormacin y de cdigo de
so&tEare en el producto terminado% El Pentium sigue el modelo de a de acceso del 7"#,
e6ecutando instrucciones simples con enteros en un ciclo de relo6% 1in embargo es m8s
e+acto decir que aquellas instrucciones estaban en la etapa de e6ecucin de la a de acceso
durante un ciclo de relo6% 1iempre se requieren ciclos adicionales de relo6 para buscar,
decodi&icar la instruccin y otros procesos itales% >a secuencia de &uncionamiento de la a
de datos es como sigueC preb.squeda, decodi&icacin 1, decodi&icacin 2, e6ecucin y
retroescritura%
Esto es similar a una lnea de produccin que produce un artculo por minuto, pero que se
demora arias 3oras para completar cada artculo indiidual, y siempre 3abr8 una multitud
de unidades en di&erentes etapas del ensamblado% En el caso ptimo, las instrucciones
estaran alineadas en la a de acceso de &orma que, en general, 4sta e6ecutar8
apro+imadamente una instruccin por ciclo de relo6%
>os aspectos superescalares del Pentium dependen de su a de acceso doble% >os
procesadores superescalares permiten que se e6ecute m8s de una instruccin por e!% El
procesador tiene dos as de acceso de enteros, una en &orma de ? y otra en &orma de I y
autom8ticamente aparea las instrucciones para incrementar la proporcin de instrucciones
por ciclo de relo6 para que sea mayor que 1% 1i el tener m.ltiples instrucciones pasando por
dos as suena como el equialente de un tranque en el tr8&ico del microprocesador, eso no
es as, porque 3ay reglas y restricciones que eitan las colisiones y los retrasos%
Por e6emplo, los con&lictos principales que tienen que er con generar y e6ecutar m8s de una
instruccin al mismo tiempo incluyen dependencias de in&ormacin (de un par de
instrucciones que se emiten al mismo tiempo, la in&ormacin de salida de una se necesita
como entrada de otra, como por e6emplo IF* '@, IF* '@), dependencias de recursos (es
una situacin en la que ambas instrucciones que &ueron emitidas al mismo tiempo compiten
por el mismo recurso del microprocesador, por e6emplo, un registro espec&ico% -ay
t4cnicas aan!adas que permiten disminuir estas dependencias pero el Pentium no las tiene)
o saltos en el cdigo (llamadas dependencias de procedimiento)%
1i se detectara una dependencia, el procesador reconoce que las instrucciones deben &luir en
orden y asegura que la primera instruccin termine su e6ecucin antes de generar la segunda
instruccin% Por e6emplo, el Pentium ena la primera instruccin por la a ? y genera la
segunda y tercera instrucciones 6untas, y as sucesiamente%
>as dos as no son equialentes, o intercambiables% >a a ? e6ecuta instrucciones de
enteros y de punto &lotante, mientras que la a I slo puede e6ecutar instrucciones simples
con enteros y la instruccin de intercambio de contenido de registros de punto &lotante%
El orden en que ia6an las instrucciones por las as dobles del Pentium nunca es distinto al
orden de las instrucciones en el programa que se e6ecuta% Bambi4n tanto las instrucciones
para la a ? como la I entran a cada etapa de la ruta en unsono% 1i una instruccin en una
a termina una etapa antes de que la instruccin en la otra a, la m8s adelantada espera
por la otra antes de pasar a la pr+ima etapa%
>as instrucciones de punto &lotante, com.nmente utili!adas en programas de matem8tica
intensia, pasan las as de entero y son manipuladas desde la a de punto &lotante en la
etapa de e6ecucin% En de&initia las as de enteros y el de punto &lotante operan
independiente y simult8neamente%
Dependencias de procedimiento
Puede ocurrir un problema potencial con la e6ecucin debido a las muc3as trayectorias que
la secuencia de una instruccin puede tomar% >a prediccin de la trayectoria a tomar es el
m4todo que debe usarse aqu% El Pentium dibu6a algo parecido a un mapa de carreteras de
los lugares a donde es posible que se diri6a la instruccin y lo usa para tratar de agili!ar la
e6ecucin de la instruccin% Intel a&irma que esta caracterstica, por s sola, aumenta el
rendimiento un 25J%
1in predecir las trayectorias a tomar, si un procesador superescalar doble estuiera ocupado
procesando instrucciones en ambas as de acceso y se encontrara una instruccin de salto
que cambiara la secuencia de e6ecucin de la instruccin, ambas as y el bu&&er de
preb.squeda de instruccin tendran que borrarse y cargarse con nueas instrucciones, lo
que retrasara al procesador% *on la prediccin de la trayectoria a tomar, el procesador
precarga las instrucciones de una direccin de destino que 3aya sido pronosticada de un
6uego alterno de bu&&ers% Esto le da al procesador una enta6a para reducir los con&lictos y
las demoras% El resultado es una me6or utili!acin de los recursos del procesador%
-ay dos tipos de instrucciones de saltoC condicional e incondicional% ?n salto incondicional
siempre llea el &lu6o de la instruccin a una nuea direccin de destino y siempre se
e6ecuta% ?na situacin m8s incmoda es el salto condicional donde se puede o no desiar el
&lu6o del programa de acuerdo a los resultados de una comparacin o cdigo de condicin y
puede incluir arios tipos de instrucciones%
*uando no se e6ecuta un salto condicional, el programa sigue e6ecutando la pr+ima
instruccin de la secuencia% (uc3os programas tienen de un 1$J a un 2$J de
instrucciones de salto condicional y 3asta un 1$J de saltos incondicionales% El porcenta6e
de eces que se e6ecuta un salto condicional ara de programa a programa, pero es de un
promedio de un 5$J% >as instrucciones de la!o o de repeticin 3ace que se tomen
decisiones &recuentemente, 3asta el 9$J del tiempo en algunos casos% ?n buen sistema de
prediccin de decisiones escoger8 las trayectorias correctas m8s del "$J del tiempo%
Hsicamente, la unidad de prediccin de decisiones (/P?) est8 situada al lado de la a de
acceso, y reisa con anticipacin el cdigo de la instruccin para determinar las cone+iones
de las decisiones% El orden es algo asC >a /P? inspecciona las instrucciones en la etapa de
preb.squeda, y si la lgica de prediccin de decisiones predice que se a a reali!ar el salto,
se le indica inmediatamente a la unidad de preb.squeda (P?) que comience a buscar
instrucciones de la direccin de destino de la direccin que se predi6o% )e &orma alterna, si
se determin que no se iba a tomar la decisin, no se perturba la secuencia original de
preb.squeda% 1i la trayectoria pronosticada resulta ser errnea, se aca la a de acceso y
los bu&&ers alternos de preb.squeda, y se recomien!a la preb.squeda desde la trayectoria
correcta% 1e paga una penalidad de tres o cuatro ciclos de relo6 por predecir una trayectoria
de &orma errnea%
El Pentium usa un bu&&er de decisin de destino (/B/) como su mecanismo% El /B/
incluye tres elementos por cada entradaC la direccin de la instruccin de salto, la direccin
de destino de la instruccin y los bits de 3istoria% 1e usa una tabla de 3asta 25# entradas
para predecir los resultados de las decisiones% El &lu6o est8 basado, y se administra
directamente desde la a ?% 1e usa la direccin de la a ? para la direccin de la
instruccin de decisin del /B/, a.n si la decisin est8 realmente en la a I% -ay dos bits
de 3istoria que in&orman si se tom la decisin anterior o no% El resultado es un procesador
que corre con suaidad y que a menudo sabe lo que 3ar8 antes de completar la tarea%
Ejecucin de punto flotante en el Pentium
1e 3a reconstruido por completo la unidad de punto &lotante (HP?), a partir de la de los ,"#
y 7"# y a3ora tiene algunas de las caractersticas de los AI1*% -ay oc3o etapas de a y las
cinco primeras se comparten con la unidad de enteros% >a unidad cumple con la norma
IEEE2:57, usa algoritmos m8s r8pidos y aproec3a la arquitectura con as para lograr
me6oras de rendimiento de entre 7 y 1$ eces, dependiendo de la optimi!acin del
compilador%
Ahorro de energa
El Pentium usa un modo de administracin de sistema (SMM) similar al que usa el 7"# 1>,
que permite que los ingenieros dise<en un sistema con ba6o consumo% >a interrupcin de
administracin del sistema actia el 1(( por deba6o del niel del sistema operatio o de la
aplicacin% 1e guarda toda la in&ormacin sobre el estado de los registros para despu4s
restaurarla, y se e6ecuta el cdigo de mane6ador de 1(( desde un espacio de direcciones
totalmente separado, llamado A'( de administracin del sistema (1(A'()% 1e sale del
1(( e6ecutando una instruccin especial (A1()% Esto llea al *P? de nueo al mismo
punto en que estaba cuando se llam al 1((%
'lgunos procesadores (1$$ (-! o m8s lentos) presentan problemas en este modo%
Nueas instrucciones del microprocesador Pentium
1on las siguientesC
!MP"!#$%& reg, mem64 (Compare and Exchange 8 Btes)C *ompara el alor de #7 bits
ubicado en E)@CE'@ con un alor de #7 bits situado en memoria% 1i son iguales, el alor
en memoria se reempla!a por el contenido de E*@CE/@ y el indicador KH se pone a uno%
En caso contrario, el alor en memoria se carga en E)@CE'@ y el indicador KH se pone a
cero%
!P'ID (C!" #denti$ication)C >e in&orma al so&tEare acerca del modelo de
microprocesador en que est8 e6ecutando% ?n alor cargado en E'@ antes de e6ecutar esta
instruccin indica qu4 in&ormacin deber8 retornar *P?I)% 1i E'@ G $, se cargar8 en
dic3o registro el m8+imo alor de E'@ que se podr8 utili!ar en *P?I) (para el Pentium
este alor es 1)% 'dem8s, en la salida aparece la cadena de identi&icacin del &abricante
contenido en E/@, E*@ y E)@% E/@ contiene los primeros cuatro caracteres, E)@ los
siguientes cuatro, y E*@ los .ltimos cuatro% Para los procesadores Intel la cadena es
L9enuineIntelL% >uego de la e6ecucin de *P?I) con E'@ G 1, E'@M,C$N contiene la
identi&icacin de la reisin del microprocesador, E'@M:C7N contiene el modelo (el primer
modelo est8 indicado como $$$1b) y E'@M11C"N contiene la &amilia (5 para el Pentium)%
E'@M,1C12N, E/@ y E*@ est8n reserados% El procesador pone el registro de
caractersticas en E)@ a 1/H3, indicando las caractersticas que soporta el Pentium% ?n bit
puesto a uno indica que esa caracterstica est8 soportada% >a instruccin no a&ecta los
indicadores%
(DMS( (%ead $rom Model&'peci$ic %egister)C El alor en E*@ especi&ica uno de los
registros de #7 bits espec&icos del modelo del procesador% El contenido de ese registro se
carga en E)@CE'@% E)@ se carga con los ,2 bits m8s signi&icatios, mientras que E'@ se
carga con los ,2 bits menos signi&icatios%
(D)S! (%ead $rom (ime 'tamp Counter)C *opia el contenido del contador de tiempo
(B1*) en E)@CE'@ (el Pentium mantiene un contador de #7 bits que se incrementa por
cada ciclo de relo6)% *uando el niel de priilegio actual es cero el estado del bit B1) en el
registro de control *A7 no a&ecta la operacin de esta instruccin% En los anillos 1, 2 ,, el
B1* se puede leer slo si el bit B1) de *A7 ale cero%
(SM (%esume $rom 'stem Management Mode)C El estado del procesador se restaura
utili!ando la copia que se cre al entrar al modo de mane6o del sistema (1(()% 1in
embargo, los contenidos de los registros espec&icos del modelo no se a&ectan% El
procesador sale del 1(( y retorna el control a la aplicacin o sistema operatio
interrumpido% 1i el procesador detecta alguna in&ormacin in8lida, entra en el estado de
apagado (s3utdoEn)%
*(MS( ()rite to Model&'peci$ic %egister)C El alor en E*@ especi&ica uno de los
registros de #7 bits espec&icos del modelo del procesador% El contenido de E)@CE'@ se
carga en ese registro% E)@ debe contener los ,2 bits m8s signi&icatios, mientras que E'@
debe contener los ,2 bits menos signi&icatios%

También podría gustarte