Procesador Intel Pentium: arquitectura superescalar, saltos y punto flotante
Resumen
El documento describe el procesador Intel Pentium, su evolución desde el 8086 hasta el Pentium y sus características principales. Explica la arquitectura superescalar con doble vía de ejecución, el tratamiento de las instrucciones de salto y la unidad de punto flotante rediseñada. También incluye conceptos de pipeline y un ejemplo de representación IEEE 754.
Puntos clave
- El Pentium es superescalar: ejecuta dos instrucciones simultáneamente gracias a su doble vía de ejecución (pipeline).
- Respecto al 486, mantiene el modelo de programación sin nuevos registros para el usuario estándar, pero añade algunas instrucciones.
- La FPU fue reconstruida por completo, con ocho etapas de pipeline y cumplimiento de la norma IEEE 754.
- La mejora de punto flotante va de 4 a 10 veces según la optimización del compilador, y hasta 5 veces frente al diseño del 486.
- Los saltos condicionales suponen entre el 10% y el 20% de las instrucciones de muchos programas, y un buen predictor acierta más del 80% de las veces.
- En un pipeline, varias instrucciones se encuentran en distintas etapas (Fetch, Decode, Execute) al mismo tiempo.
Evolución de Procesadores Intel
La línea de procesadores Intel ha evolucionado significativamente a lo largo de los años, pasando por modelos clave como:
- 8086
- 80286
- 80486
- Pentium (sucesor del i486, a veces referido como 586)
El Procesador Pentium
Características Clave
- Permite la ejecución de dos instrucciones simultáneamente (arquitectura superescalar).
- Sigue el modelo de los procesadores 386/486, añadiendo unas pocas instrucciones adicionales pero sin nuevos registros programables para el usuario estándar.
- La mejora más significativa sobre el 486 se encuentra en la unidad de punto flotante (FPU). Esta unidad fue una prioridad para Intel, en parte para competir en el mercado de Windows NT con los procesadores RISC.
- El Pentium presenta un incremento de hasta 5 veces en el rendimiento de punto flotante comparado con el diseño del 486.
Arquitectura Superescalar y Saltos
Los aspectos superescalares del Pentium dependen de su doble vía de ejecución (pipeline). Los procesadores superescalares permiten que se ejecute más de una instrucción por ciclo de reloj.
Un desafío clave en las arquitecturas con pipeline son las instrucciones de salto:
- Salto Incondicional: Siempre lleva el flujo de la instrucción a una nueva dirección de destino y siempre se ejecuta.
- Salto Condicional: El flujo del programa puede desviarse o no según los resultados de una comparación o código de condición. Puede incluir varios tipos de instrucciones. Cuando no se ejecuta un salto condicional, el programa sigue ejecutando la próxima instrucción de la secuencia.
Muchos programas contienen entre un 10% y un 20% de instrucciones de salto condicional y hasta un 10% de saltos incondicionales. El porcentaje de veces que se ejecuta un salto condicional varía, pero promedia alrededor del 50%. Las instrucciones de bucle (loop) o repetición hacen que se tomen saltos condicionales frecuentemente (hasta el 90% del tiempo en algunos casos). Un buen sistema de predicción de saltos escogerá las trayectorias correctas más del 80% del tiempo, minimizando las paradas en el pipeline.
Ejecución de Punto Flotante en el Pentium
Se reconstruyó por completo la unidad de punto flotante (FPU) respecto a la de los 386 y 486, incorporando características inspiradas en RISC.
- Posee ocho etapas de pipeline, compartiendo las cinco primeras con la unidad de enteros.
- Cumple con la norma IEEE 754.
- Utiliza algoritmos más rápidos y aprovecha la arquitectura con vías para lograr mejoras de rendimiento de entre 4 y 10 veces, dependiendo de la optimización del compilador.
Pipeline (Cauce de Instrucciones)
Niveles de Pipeline
El pipeline divide la ejecución de una instrucción en etapas secuenciales:
- Nivel 1 (Conceptual): Las instrucciones entran en el cauce y se ejecutan secuencialmente.
LDA -> MUL -> SUMNivel 2 (Etapas Básicas - Ejemplo con LDA):Instrucción: LDA
Etapa: Fetch -> Decode -> Execute
(Buscar) (Decodificar) (Ejecutar)Nivel 3 (Ejecución Superpuesta): Múltiples instrucciones están en diferentes etapas simultáneamente. Mientras LDA está en la etapa Decode (D), MUL puede iniciar la etapa Fetch (F).Tiempo 1: Fetch(LDA)
Tiempo 2: Decode(LDA) Fetch(MUL)
Tiempo 3: Execute(LDA) Decode(MUL) Fetch(SUM)Canal de Transmisión del Pentium
El Pentium utiliza múltiples canales o pipelines (específicamente, dos principales para instrucciones de enteros) para procesar instrucciones en paralelo, lo que fundamenta su naturaleza superescalar.
Aritmética de Punto Flotante
Representación IEEE 754 (32 bits - Precisión Simple)
El estándar IEEE 754 define cómo se representan los números de punto flotante en binario.
Ejemplo conceptual de componentes (datos del usuario):
1350 = +0.1350 x 10^+4 (Notación científica decimal, no directamente IEEE 754)
La estructura general en 32 bits es:
| Componente | Bits | Ejemplo Decimal (Usuario) | Ejemplo Binario (Usuario) |
|---|---|---|---|
| Signo | 1 | 0 (+) | 0 |
| Exponente | 8 | 4 (del ejemplo 10^+4) | 0100 (incompleto/incorrecto para IEEE 754) |
| Mantisa | 23 | 135 (del ejemplo 0.1350) | 10000111 (incompleto/incorrecto para IEEE 754) |
Nota: Los valores binarios del ejemplo proporcionado por el usuario no corresponden a la representación estándar IEEE 754 para el número 1350. La representación correcta requiere normalización binaria y ajuste del exponente con un sesgo (bias).
- Bit de Signo: 0 para positivo (+), 1 para negativo (-).
Descargar
PDF Word HTMLPreguntas frecuentes
¿Qué significa que el Pentium sea superescalar?
Significa que puede ejecutar más de una instrucción por ciclo de reloj, gracias a sus dos vías de ejecución para instrucciones de enteros. Esto permite procesar instrucciones en paralelo.
¿Por qué las instrucciones de salto son un problema en un pipeline?
Porque un salto puede cambiar la dirección del programa y obligar a descartar las instrucciones que ya habían entrado en el cauce. Un buen predictor de saltos reduce estas paradas al elegir la trayectoria correcta la mayoría de las veces.
¿Qué cambió en la unidad de punto flotante del Pentium?
Se reconstruyó por completo respecto a los 386 y 486, con características inspiradas en RISC, ocho etapas de pipeline y algoritmos más rápidos. Compartía las cinco primeras etapas con la unidad de enteros.
Ponte a prueba
Tarjetas de repaso
Pulsa una tarjeta para ver la respuesta.
Test
Preguntas generadas con IA a partir del documento: comprueba las respuestas con el texto.