Está en la página 1de 4

Arquitectura del Pentium

El Pentium es un microprocesador de 32 bits caracterizado por 5 etapas:

 Subsistema de memoria cache.


 Unidad de enteros superescalar.
 FPU.
 Sistemas de predicción de saltos condicionales.
 BIU: unidad de interfaz con el bus.

Subsistema de memoria cache.

Está constituido por dos memorias internas, una para datos y otra para instrucciones, cada una
posee una capacidad de 8 KB. Lo más importante es que son independientes entre sí. La
organización de estas memorias cache es de tipo asociativa de 2 vías, cada vía con un total de 128
etiquetas asociadas a líneas (o datos) de 32 bytes. Cada etiqueta tiene una tamaño de 22 bits, 20
bits son para direccionar y los otros 2 bits para atributos (WP y V).

Las caches son de escritura obligatoria, es decir no se transfieren las actualizaciones hasta que no
sea necesario. Además utilizan el algoritmo LRU, aquel que sustituye la línea menos
frecuentemente usada.

Utiliza el protocolo MESI para asegurar la consistencia de datos entre la cache y la memoria
principal.

Unidad de enteros superescalar.

El Pentium tiene arquitectura superescalar, por lo que dispones de 2 unidades de ejecución


(o cause) para las instrucciones que manejen números enteros, además cuenta con otra unidad de
ejecución para instrucciones en coma flotante. Estas unidades de ejecución de números enteros
pueden trabajar en forma simultánea lo que permite obtener 2 resultados de instrucciones por
ciclo de reloj.

Los 2 causes están segmentados:

 Búsqueda de la instrucción.
 Decodificación.
 Búsqueda de operandos.
 Ejecución.
 Escritura de los resultados.

En modelos posteriores se aumento el número de etapas, es decir hace uso de la


súpersegmentación.
FPU.

Es un coprocesador matemático que opera en paralelo con las unidades de números enteros. La
FPU dispones de un cause segmentado en 8 etapas:

 Búsqueda de la instrucción.
 Decodificación.
 Búsqueda de operandos.
 Ejecución.
 Ejecución de las instrucciones de coma flotante.
 Ejecución de las instrucciones de coma flotante.
 Escritura de los resultados.
 Informe de errores.

Dispone además de registros especiales:

 Registro de estado: indica el estado de la FPU.


 Registro de control: indica la precisión de la FPU.
 Registro puntero de instrucciones: dirección de la última instrucción ejecutada.
 Registro puntero al operando: dirección del último operando utilizado.
 Registro de código: almacena el código de la última instrucción ejecutada.

Sistemas de predicción de saltos condicionales.

Es uno de los factores que afectan al rendimiento, debido que el procesador no sabe que
instrucción hay que introducir al cause hasta que no se ejecute la instrucción de salto condicional.
Para solucionar este problema Intel utiliza:

 Buffer de destino de las bifurcaciones (BTB): es una cache ultra rápida que almacena las
últimas 256 instrucciones de salto condicional.
 Algoritmo estadístico.

El sistema se pone en funcionamiento cuando se encuentra una instrucción de salto para ejecutar,
se consulta la tabla BTB y aplicando un potente algoritmo se determina probabilísticamente el
destino del salto más probable. Si la predicción es una cierto, el salto se produce inmediatamente,
en caso contrario se debe realizar el salto y luego la ejecución de la siguiente instrucción.
BIU.

Unidad de interfaz con el bus. Es el bloque encargado de soportar todas las transferencias entre
los elementos externos al microprocesador.

Observaciones:

 El bus de datos es de 64 bits.


 El bus de direcciones es de 32 bits.

Esto supone que la organización de la memoria se lleva a cabo en bloques de 8 bits, es decir cada
posición de memoria constara de 8 bloques de 8 bits cada uno. Como el procesador puede
manejar varios byte a la vez cada bloque posee una señal de control que incida su validez de
acceso, a esta señal se la llama BEn#.

El bus del procesador utiliza una técnica llamada pipeline, que permite comenzar el siguiente ciclo
de bus antes de a ver finalizado el anterior.

Monitor de prestaciones.

El procesador posee una serie de contadores y unidades rastreo y traza que archivan los
acontecimientos significativos en el flujo de datos. Accediendo a estos mediante el puerto serie se
puede obtener información útil para poder optimizar las aplicaciones.

Bus a ráfagas.

Permite trasferir 256 bits (32 byte) en un solo ciclo, esta longitud de información coincide con el
tamaño de una línea de la memoria cache. Su función es acelerar la actualización de la cache.

Unidad de redundancia funcional.

El Pentium utiliza una serie de mecanismos simples para poder mantener la integridad de los
datos. Usando bits de paridad para cada bloque de 8 bits del bus de datos, es decir un total de 8
bits de paridad que el procesador comprueba en cada lectura como también, lo genera al escribir.
También el bus de dirección añade un bit de paridad a cada dirección generada, que luego
comprueba en cada acceso de escritura o lectura. Lo que le permite al Pentium detectar errores
como también comprobar que la dirección de memoria sea válida.
Modos de funcionamiento del Pentium.

El Pentium trabaja en 4 modos:

 Modo real.
 Modo protegido.
 Modo virtual.
 Modo de manejo de sistema.

Modo real.

Es básicamente el funcionamiento del 8086, pero con algunas extensiones añadidas. Trabajando
en este modo emplea solo 20 bits en el bus de direcciones lo que le permite solo direccionar 1 MB
de memoria. En el Pentium el modo real solo se utiliza en el arranque del sistema para la creación
de tablas y de todos los elementos necesarios.

Modo protegido.

Este es el modo habitual de trabajo del Pentium, funciona con todo su potencia. Permite el
proceso multitarea como además el manejo de memoria virtual.

Modo virtual 8086.

Es una mescla entre el modo real y el modo protegido, se trabaja en un ambiente igual que en el
modo protegido, es decir multitarea y con manejo de memoria virtual, pero permite ejecutar
tareas del modo real.

Modo de manejo de sistema.

El procesador al entrar en este modo, en primera instancia guarda el estado de todos los registros
para después restaurarlos y después se ejecuta el código de manejador de SMM. Permite diseñar
un sistema de bajo consumo.

Pasajes de un modo a otro.

 De modo real a protegido: hay que poner el bit PE (protection enabled) en 1.


 De cualquier modo a real: resteando el sistema.
 De modo protegido a virtual: hay que poner el bit VN en 1.
 De modo virtual a protegido: hay que poner el bit VN en 0.
 De SMM a cualquier otro: usando una instrucción RSM.

También podría gustarte