- En 1993, Intel lanzó el procesador Pentium de alto rendimiento
- Mientras analizaban los circuitos del Pentium, descubrieron un circuito complejo para multiplicar por 3
- Este circuito forma parte del multiplicador de punto flotante del Pentium y multiplica números de 64 bits usando una base octal
- La necesidad de la multiplicación en base octal
- La multiplicación binaria es conceptualmente simple, pero lenta
- El Pentium realiza la multiplicación en base octal para reducir circuitería y aumentar la velocidad
- La multiplicación octal es compleja porque hay que multiplicar por dígitos del 0 al 7
- El algoritmo de Booth y el circuito ×3
- Se usa el algoritmo de Booth para optimizar la multiplicación
- El circuito ×3 debe manejarse como un caso especial en la multiplicación de punto flotante
- Este circuito debe funcionar rápidamente y usa técnicas como carry lookahead para maximizar el rendimiento
- Carry lookahead y sumadores de prefijo paralelo
- El sumador carry lookahead calcula todos los bits de acarreo en paralelo para realizar la suma rápidamente
- Se implementa carry lookahead en bloques de 8 bits usando un sumador de prefijo paralelo
- Se usa el algoritmo de Kogge-Stone para minimizar la latencia y estructurar el circuito de forma eficiente
- Sumador carry select
- El sumador carry select realiza dos sumas al mismo tiempo y entrega el resultado en cuanto se determina el acarreo
- El Pentium usa un sumador carry select para cada bloque de 8 bits en el circuito ×3
- Driver de salida BiCMOS
- La salida del circuito ×3 requiere alta corriente, y se usa un proceso BiCMOS para reducir el retraso de la señal
- BiCMOS combina CMOS y transistores bipolares para ofrecer alto rendimiento
- Conclusión
- El circuito ×3 del Pentium tiene un diseño complejo y usa más transistores que los microprocesadores del pasado
- Esto muestra cuánto ha aumentado la complejidad de los procesadores
1 comentarios
Opiniones de Hacker News
En la emulación de computadoras ternarias existe una forma de convertir la división por potencias de 3 en desplazamientos de bits y sumas
El procesador de los juegos arcade de Cinematronics tiene dos acumuladores de 12 bits
Peter Kogge obtuvo su doctorado en Stanford y, como IBM Fellow, fue una de las personas que inventaron la CPU multinúcleo
Multiplicar por 3 en el cálculo de direcciones es una operación común
En un multiplicador, hay una forma de resolver ×7 multiplicando por 8 y restando 1
El multiplicador ×3 incluye alrededor de 9000 transistores, más que el microprocesador Z80 de 1976
Un multiplicador Booth radix-8 necesita un circuito x3
8086: 29,000
La desventaja de la multiplicación radix-8 es que multiplicar por números del 0 al 7 es complejo