El Cyrix 6x86 (nombre en clave M1) es un microprocesador x86 de 32 bits de sexta generación diseñado por Cyrix y fabricado por IBM y SGS-Thomson . Fue lanzado originalmente en 1996.
Cache | |
---|---|
Caché L1 | 16 KB (6x86 / L) o 64 KB (6x86MX / MII) |
Arquitectura y clasificación | |
Microarquitectura | 6x86 |
Conjunto de instrucciones | IA-32 / x86 |
Especificaciones físicas | |
Transistores |
|
Núcleos |
|
Enchufe (s) | |
Productos, modelos, variantes | |
Modelo (s) |
|
Historia | |
Predecesor | Cyrix Cx486 |
Arquitectura
El 6x86 es superescalar y superpipelinado y realiza cambio de nombre de registro , ejecución especulativa , ejecución fuera de orden y eliminación de dependencia de datos . [1] Sin embargo, continuó usando la ejecución x86 nativa y solo microcódigo ordinario , como el Winchip de Centaur , a diferencia de sus competidores Intel y AMD, que introdujeron el método de traducción dinámica a microoperaciones con Pentium Pro y K5 . El 6x86 es compatible con socket con el Intel P54C Pentium y se ofreció en seis niveles de rendimiento: PR 90+, PR 120+, PR 133+, PR 150+, PR 166+ y PR 200+. Estos niveles de rendimiento no se corresponden con la velocidad de reloj del chip en sí (por ejemplo, un PR 133+ corrió a 110 MHz, un PR 166+ corrió a 133 MHz, etc.).
Con respecto a los cachés internos, tiene un caché principal de 16 KB y un caché de línea de instrucciones de 256 bytes totalmente asociativo se incluye junto con el caché principal, que funciona como el caché de instrucciones principal. [1]
El 6x86 y el 6x86L no eran completamente compatibles con el conjunto de instrucciones Intel P5 Pentium y no son compatibles con multiprocesador. Por esta razón, el chip se identificó como 80486 y deshabilitó la instrucción CPUID por defecto. El soporte de CPUID se puede habilitar habilitando primero los registros CCR extendidos y luego configurando el bit 7 en CCR4. La falta de compatibilidad total con P5 Pentium causó problemas con algunas aplicaciones porque los programadores habían comenzado a usar instrucciones específicas de P5 Pentium. Algunas empresas lanzaron parches para sus productos para que funcionen en el 6x86.
La compatibilidad con el Pentium se mejoró en el 6x86MX, al agregar un contador de marca de tiempo para admitir la instrucción RDTSC del Pentium P5. [2] También se agregó soporte para las instrucciones CMOVcc de Pentium Pro. [2]
Actuación
De manera similar a AMD con sus procesadores K5 y los primeros K6 , Cyrix usó una clasificación PR (Performance Rating) para relacionar su rendimiento con el Intel P5 Pentium (anterior al P55C ), ya que el mayor rendimiento por reloj del 6x86 en relación con un P5 Pentium cuantificado frente a una parte Pentium de mayor frecuencia. Por ejemplo, un 6x86 de 133 MHz igualará o superará a un Pentium P5 a 166 MHz y, como resultado, Cyrix podría comercializar el chip de 133 MHz como equivalente a un Pentium 166 P5. Sin embargo, la calificación de relaciones públicas no fue una representación completamente veraz del desempeño del 6x86.
Si bien el rendimiento entero del 6x86 fue significativamente más alto que el del Pentium P5, su rendimiento de punto flotante fue más mediocre: entre 2 y 4 veces el rendimiento del 486 FPU por ciclo de reloj (dependiendo de la operación y la precisión). El FPU en el 6x86 era en gran parte el mismo circuito que se desarrolló para los coprocesadores de alto rendimiento compatibles con 8087/80287/80387 anteriores de Cyrix, que era muy rápido para su época: el FPU de Cyrix era mucho más rápido que el 80387, e incluso el 80486 FPU . Sin embargo, seguía siendo considerablemente más lento que los nuevos y completamente rediseñados P5 Pentium y P6 Pentium Pro - Pentium III FPU.
Durante el desarrollo del 6x86, la mayoría de las aplicaciones ( software de oficina y juegos) realizaban operaciones casi enteras con números enteros. Los diseñadores previeron que las aplicaciones futuras probablemente mantendrían este enfoque de instrucción. Entonces, para optimizar el rendimiento del chip para lo que creían que era la aplicación más probable de la CPU, los recursos de ejecución de números enteros recibieron la mayor parte del presupuesto del transistor. Más tarde, esto demostraría ser un error estratégico, ya que la popularidad del Pentium P5 hizo que muchos desarrolladores de software optimizaran manualmente el código en lenguaje ensamblador para aprovechar la FPU de baja latencia y canalización estrecha del Pentium P5. Por ejemplo, el muy esperado juego de disparos en primera persona Quake usó un código de ensamblaje altamente optimizado diseñado casi en su totalidad alrededor de la FPU del Pentium P5. Como resultado, el Pentium P5 superó significativamente a otras CPU en el juego.
Por lo tanto, a pesar de ser muy rápidos reloj a reloj, el 6x86 y MII se vieron obligados a competir en la gama baja del mercado, ya que AMD K6 e Intel P6 Pentium II siempre iban por delante en la velocidad del reloj. La unidad de punto flotante "clase 486" de la generación anterior de 6x86 y MII combinada con una sección entera que estaba en el mejor de los casos a la par con los nuevos chips P6 y K6 significaba que Cyrix ya no podía competir en rendimiento.
Modelos
6x86
El 6x86 (nombre en clave M1) fue lanzado por Cyrix en 1996. La primera generación del 6x86 tenía problemas de calor. Esto se debió principalmente a su mayor salida de calor que otras CPU x86 del día y, como tal, los constructores de computadoras a veces no las equiparon con la refrigeración adecuada. Las CPU alcanzaron una salida de calor de alrededor de 25 W (como el AMD K6 ), mientras que el Pentium P5 produjo alrededor de 15 W de calor residual en su punto máximo. Sin embargo, ambos números serían una fracción del calor generado por muchos procesadores de alto rendimiento, algunos años después.
Primer disparo de Cyrix 6x86 (M1)
6x86L
El 6x86L (nombre en clave M1L) fue lanzado más tarde por Cyrix para abordar problemas de calor; la L significa bajo consumo . Las tecnologías de fabricación mejoradas permitieron el uso de un Vcore más bajo. Al igual que el Pentium MMX, el 6x86L requería un regulador de voltaje de plano de potencia dividido con voltajes separados para E / S y núcleo de CPU.
Disparo de matriz Cyrix 6x86L (M1L)
6x86MX / MII
Otra versión del 6x86, el 6x86MX , agregó compatibilidad MMX junto con el conjunto de instrucciones EMMI , mejoró la compatibilidad con Pentium y Pentium Pro al agregar un contador de marca de tiempo e instrucciones CMOVcc respectivamente, y cuadruplicó el tamaño de la caché principal a 64 KB. El caché de línea de instrucciones de 256 bytes se puede convertir en un caché de memoria virtual para brindar soporte a las operaciones multimedia. [2] Las revisiones posteriores de este chip pasaron a llamarse MII , para competir mejor con el procesador Pentium II. Desafortunadamente, 6x86MX / MII llegó tarde al mercado y no pudo escalar bien en la velocidad del reloj con los procesos de fabricación utilizados en ese momento.
Cyrix 6x86MX 150 MHz
IBM 6x86MX 133MHz
Cyrix MII 250 MHz
Disparo de matriz Cyrix 6x86MX (M2)
Referencias
- ^ a b "Hoja de datos de Cyrix M1" (PDF) .
- ^ a b c "Hoja de datos de IBM 6x86MX" (PDF) .
Otras lecturas
- Gwennap, Linley (25 de octubre de 1993). Informe del microprocesador "Cyrix Describe Pentium Competitor" .
- Gwennap, Linley (5 de diciembre de 1994). "Cyrix M1 Design Tapes Out". Informe del microprocesador .
- Gwennap, Linley (2 de junio de 1997). "Cyrix 6x68MX supera a AMD K6". Informe del microprocesador .
- Slater, Michael (12 de febrero de 1996). "Cyrix, IBM Push 6x86 a 133 MHz". Informe del microprocesador .
- Slater, Michael (28 de octubre de 1996). "Cyrix duplica el rendimiento x86 con M2". Informe del microprocesador .
enlaces externos
- Cyrix 6x86 ("M1") en PCGuide en Wayback Machine (archivado el 22 de junio de 2017)
- Cyrix 6x86 ("M1") en PCGuide
- cpu-collection.de Imágenes y descripciones del procesador Cyrix 6x86
- Comparación de CPU x86 de sexta generación de Paul Hsieh, análisis en profundidad de las CPU x86 de sexta generación, incluido el 6x86MX.
- Estadísticas de Cyrix M1 en Sandpile.org