stringtranslate.com

Alfa 21064

El microprocesador 21064
El microprocesador 21064 montado en una tarjeta de visita

El Alpha 21064 es un microprocesador desarrollado y fabricado por Digital Equipment Corporation que implementó la arquitectura de conjunto de instrucciones (ISA) Alpha (introducida como Alpha AXP) . Fue presentado como DECchip 21064 antes de que fuera renombrado en 1994. El 21064 también es conocido por su nombre en código, EV4 . Fue anunciado en febrero de 1992 y estuvo disponible en grandes cantidades en septiembre de 1992. El 21064 fue la primera implementación comercial de la ISA Alpha y el primer microprocesador de Digital en estar disponible comercialmente. Fue sucedido por un derivado, el Alpha 21064A en octubre de 1993. Esta última versión fue reemplazada por el Alpha 21164 en 1995.

Historia

El primer procesador Alpha fue un chip de prueba con el nombre en código EV3 . Este chip de prueba se fabricó utilizando el proceso CMOS-3 de 1,0 micrómetros (μm) de Digital. El chip de prueba carecía de una unidad de punto flotante y solo tenía cachés de 1  KB . El chip de prueba se utilizó para confirmar el funcionamiento de las agresivas técnicas de diseño de circuitos . El chip de prueba, junto con simuladores y emuladores, también se utilizó para activar el firmware y los diversos sistemas operativos que la empresa admitía.

El chip de producción, cuyo nombre en código era EV4 , se fabricó utilizando el proceso CMOS-4 de 0,75 μm de Digital. Dirk Meyer y Edward McLellan fueron los microarquitectos. Ed diseñó la lógica de emisión mientras que Dirk diseñó los otros bloques principales. Jim Montanaro dirigió la implementación del circuito. El EV3 se utilizó en la Unidad de demostración Alpha (ADU), un sistema multiprocesador utilizado por Digital para desarrollar software para la plataforma Alpha antes de la disponibilidad de piezas EV4. [1]

El 21064 se presentó en la 39.ª Conferencia Internacional de Circuitos de Estado Sólido (ISSCC) a mediados de febrero de 1992. Se anunció el 25 de febrero de 1992, con una muestra de 150 MHz presentada el mismo día. Su precio era de 3.375 dólares en cantidades de 100, 1.650 dólares en cantidades entre 100 y 1.000, y 1.560 dólares en cantidades superiores a 1.000. Los envíos en grandes cantidades comenzaron en septiembre de 1992.

A principios de febrero de 1993, el precio de la versión de 150 MHz se redujo a 1.096 dólares desde 1.559 dólares en cantidades superiores a 1.000.

El 25 de febrero de 1993 se introdujo un modelo de 200 MHz, con kits de muestra disponibles a un precio de 3.495 dólares. En volumen, el precio era de 1.231 dólares por unidad en cantidades superiores a 10.000 unidades. Se aceptaron pedidos por volumen en junio de 1993, y los envíos se realizaron en agosto de 1993. Como respuesta, se redujo el precio de la versión de 150 MHz. El kit de muestra se redujo de 3.375 dólares a 1.690 dólares, a partir de abril de 1993; y en volumen, se redujo de 1.355 dólares a 853 dólares por unidad en cantidades superiores a 10.000 unidades, a partir de julio de 1993.

Con la introducción del Alpha 21066 y el Alpha 21068 el 10 de septiembre de 1993, Digital ajustó la posición de los 21064 existentes e introdujo una versión de 166 MHz con un precio de 499 dólares por unidad en cantidades de 5000. El precio de la versión de 150 MHz se redujo a 455 dólares por unidad en cantidades de 5000.

El 6 de junio de 1994, el precio de la versión de 200 MHz se redujo en un 31% a 544 dólares para posicionarlo frente al Pentium de 60 MHz; y el de la versión de 166 MHz en un 19% a 404 dólares por unidad en cantidades de 5.000, a partir del 3 de julio de 1994.

El Alpha 21064 se fabricó en las instalaciones de Digital en Hudson, Massachusetts y South Queensferry, Escocia .

Usuarios

El 21064 se utilizó principalmente en computadoras de alta gama, como estaciones de trabajo y servidores . Entre los usuarios se encontraban:

Actuación

El 21064 fue el microprocesador de mayor rendimiento desde su lanzamiento hasta 1993, después de que International Business Machines (IBM) introdujera el POWER2 multichip . Posteriormente se convirtió en el microprocesador de un solo chip de mayor rendimiento, posición que mantuvo hasta que se presentó el 21064A de 275 MHz en octubre de 1993. [2]

Descripción

El Alpha 21064 es un microprocesador superescalar de doble emisión y supercanalización que ejecuta instrucciones en orden . Es capaz de emitir hasta dos instrucciones por cada ciclo de reloj a cuatro unidades funcionales: una unidad de enteros , una unidad de punto flotante (FPU), una unidad de dirección y una unidad de ramificación. La canalización de enteros tiene siete etapas de longitud y la de punto flotante diez etapas. Las primeras cuatro etapas de ambas canalizaciones son idénticas y están implementadas por la I-Box.

Caja I

La I-box es la unidad de control ; obtiene, decodifica y emite instrucciones y controla la tubería. [3] Durante la etapa uno, se obtienen dos instrucciones de la caché I. La predicción de bifurcación se realiza mediante lógica en la I-box durante la etapa dos. Se utiliza predicción estática o predicción dinámica. La predicción estática examinó el bit de signo del campo de desplazamiento de una instrucción de bifurcación , predijo la bifurcación como tomada si el bit de signo indicaba una bifurcación hacia atrás (si el bit de signo contenía 1). La predicción dinámica examinó una entrada en la tabla de historial de bifurcaciones de 2048 entradas por 1 bit. Si una entrada contenía 1, se predijo que la bifurcación era tomada. [4] Si se utilizó la predicción dinámica, la predicción de bifurcación tiene una precisión de aproximadamente el 80% para la mayoría de los programas. [5] La penalización por predicción errónea de bifurcación es de cuatro ciclos. [6]

Estas instrucciones se decodifican durante la tercera etapa. A continuación, la I-box comprueba si los recursos requeridos por las dos instrucciones están disponibles durante la cuarta etapa. Si es así, se emiten las instrucciones, siempre que se puedan emparejar. Las instrucciones que se pueden emparejar se determinaron por el número de puertos de lectura y escritura en el archivo de registro de enteros. [7] El 21064 podía emitir: una operación de enteros con una operación de punto flotante, cualquier instrucción de carga/almacenamiento con cualquier instrucción de operación, una operación de enteros con una rama de enteros o una operación de punto flotante con una rama de punto flotante. No se permitían dos combinaciones: una operación de enteros y un almacenamiento de punto flotante, y una operación de punto flotante y un almacenamiento de enteros. Si una de las dos instrucciones no se puede emitir juntas, las primeras cuatro etapas se detienen hasta que se emite la instrucción restante. Las primeras cuatro etapas también se detienen en caso de que no se pueda emitir ninguna instrucción debido a la falta de disponibilidad de recursos, dependencias o condiciones similares.

La I-box contiene dos buffers de traducción (TLB) para traducir direcciones virtuales a direcciones físicas . Estos TLB se denominan buffers de traducción de instrucciones (ITB). Los ITB almacenan en caché las entradas de la tabla de páginas utilizadas recientemente para el flujo de instrucciones. Se utiliza un ITB de ocho entradas para páginas de 8 KB y un ITB de cuatro entradas para páginas de 4 MB. Ambos ITB son completamente asociativos y utilizan un algoritmo de reemplazo de páginas no utilizadas por última vez. [8]

Ejecución

La ejecución comienza durante la quinta etapa para todas las instrucciones. Los archivos de registro se leen durante la cuarta etapa. Las secuencias de comandos que comienzan en la quinta etapa no se pueden detener.

Unidad entera

La unidad entera es responsable de ejecutar instrucciones enteras. Consiste en el archivo de registro entero (IRF) y la caja E. La IRF contiene treinta y dos registros de 64 bits y tiene cuatro puertos de lectura y dos puertos de escritura que se dividen equitativamente entre la unidad entera y la unidad de ramificación. [9] La caja E contiene un sumador , una unidad lógica, un desplazador de barril y un multiplicador . A excepción de las instrucciones de multiplicación, desplazamiento y manipulación de bytes, la mayoría de las instrucciones enteras se completan al final de la etapa cinco y, por lo tanto, tienen una latencia de un ciclo. El desplazador de barril está canalizado, pero las instrucciones de desplazamiento y manipulación de bytes no se completan al final de la etapa seis y, por lo tanto, tienen una latencia de dos ciclos. El multiplicador no se canalizó para ahorrar área de matriz; [5] por lo tanto, las instrucciones de multiplicación tienen una latencia variable de 19 a 23 ciclos según los operandos. En la etapa siete, las instrucciones enteras escriben sus resultados en la IRF.

Unidad de dirección

La unidad de dirección, también conocida como "A-box", ejecutaba instrucciones de carga y almacenamiento. Para permitir que la unidad de dirección y la unidad de enteros funcionen en paralelo, la unidad de dirección tiene su propio sumador de desplazamiento , que utiliza para calcular direcciones virtuales , en lugar de utilizar el sumador en la unidad de enteros. [10] Se utiliza un búfer de traducción totalmente asociativo (TLB) de 32 entradas para traducir direcciones virtuales en direcciones físicas . [10] Este TLB se conoce como búfer de traducción de datos (DTB). El 21064 implementó una dirección virtual de 43 bits y una dirección física de 34 bits, y por lo tanto es capaz de direccionar 8 TB de memoria virtual y 16 GB de memoria física .

Las instrucciones de almacenamiento dan como resultado datos almacenados en un búfer de escritura de 4 entradas por 32 bytes. El búfer de escritura mejoró el rendimiento al reducir la cantidad de escrituras en el bus del sistema mediante la fusión de datos de almacenamientos adyacentes y al retrasar temporalmente los almacenamientos, lo que permite que las cargas se atiendan más rápido ya que el bus del sistema no se utiliza con tanta frecuencia. [10]

Unidad de punto flotante

La unidad de coma flotante consta del archivo de registro de coma flotante (FRF) y la F-box. [7] La ​​FRF contiene treinta y dos registros de 64 bits y tiene tres puertos de lectura y dos puertos de escritura. La F-box contiene una tubería de coma flotante y una unidad de división no canalizada que retiraba un bit por ciclo.

En la etapa cuatro se lee el archivo de registro de punto flotante y se formatean los datos en fracción, exponente y signo. Si se ejecutan instrucciones de suma, el sumador calcula la diferencia de exponentes y se inicia un detector predictivo de ceros o unos iniciales que utiliza operandos de entrada para normalizar el resultado. Si se ejecutan instrucciones de multiplicación, se genera un multiplicando 3 X.

En las etapas cinco y seis, se realizan cálculos de alineación o desplazamiento de normalización y de bits fijos para sumas y restas. Las instrucciones de multiplicación se multiplican en una matriz intercalada bidireccional segmentada que utiliza un algoritmo de Booth de base 8. [5] [11] En la etapa ocho, se realiza la suma final en paralelo con el redondeo . Las instrucciones de punto flotante escriben sus resultados en la FRF en la etapa diez. [11]

Las instrucciones ejecutadas en la canalización tienen una latencia de seis ciclos. [11] Las divisiones de precisión simple (32 bits) y de precisión doble (64 bits), que se ejecutan en la unidad de división no canalizada, tienen una latencia de 31 y 61 ciclos, respectivamente. [12]

Cachés

El 21064 tiene dos cachés primarios en el chip : un caché de datos de 8 KB (conocido como caché D) que utiliza una política de escritura simultánea y un caché de instrucciones de 8 KB (conocido como caché I). Ambos cachés están mapeados directamente para acceso de ciclo único y tienen un tamaño de línea de 32 bytes. Los cachés están construidos con celdas de memoria de acceso aleatorio estático (SRAM) de seis transistores que tienen un área de 98 μm2 . Los cachés tienen 1024 celdas de ancho por 66 celdas de alto, y las dos filas superiores se utilizan para redundancia.

Se admitía una caché secundaria externa opcional, conocida como caché B, con capacidades de 128 KB a 16 MB. La caché funcionaba a una frecuencia de entre un tercio y un dieciseisavo de la frecuencia de reloj interna, o de 12,5 a 66,67 MHz a 200 MHz. [13] La caché B se asigna directamente y tiene un tamaño de línea de 128 bytes por defecto que se puede configurar para utilizar cantidades mayores. Se accede a la caché B a través del bus del sistema.

Interfaz externa

La interfaz externa es un bus de datos de 128 bits que funcionaba a una frecuencia de reloj de entre la mitad y la octava parte de la interna, o de 25 a 100 MHz a 200 MHz. El ancho del bus era configurable, los sistemas que utilizaban el 21064 podían tener una interfaz externa de 64 bits. La interfaz externa también constaba de un bus de direcciones de 34 bits .

Fabricación

Disparo de matriz del modelo DEC Alpha 21064 (EV4S)

El 21064 contenía 1,68 millones de transistores. [14] El EV4 original fue fabricado por Digital en su proceso CMOS-4, que tiene un tamaño de característica de 0,75 μm y tres niveles de interconexión de aluminio . [14] El EV4 mide 13,9 mm por 16,8 mm, para un área de 233,52 mm 2 . El EV4S posterior se fabricó en CMOS-4S, una contracción óptica del 10% de CMOS-4 con un tamaño de característica de 0,675 μm. Esta versión medía 12,4 mm por 15,0 mm, para un área de 186 mm 2 . [15]

El 21064 utilizaba una fuente de alimentación de 3,3 voltios (V). [14] El EV4 disipaba un máximo de 30 W a 200 MHz. El EV4S disipa un máximo de 21,0 W a 150 MHz, 22,5 W a 166 MHz y 27,0 W a 200 MHz. [16]

Paquete

Un microprocesador 21064 empaquetado

El 21064 está empaquetado en una matriz de rejilla de pines de alúmina-cerámica de 431 pines (PGA) que mide 61,72 mm por 61,72 mm. [17] De los 431 pines, 291 eran para señales y 140 eran para alimentación y tierra. [14] [18] El disipador de calor está conectado directamente al paquete, asegurado por tuercas unidas a dos pernos que sobresalen del difusor de calor de tungsteno .

Derivados

Alfa 21064A

Disparo de matriz DEC Alpha 21064A (EV45)

El Alpha 21064A , presentado como DECchip 21064A , con nombre en código EV45 , es un desarrollo posterior del Alpha 21064 presentado en octubre de 1993. Operaba a frecuencias de reloj de 200, 225, 233, 275 y 300 MHz. El modelo de 225 MHz fue reemplazado por el modelo de 233 MHz el 6 de julio de 1994, que en el momento de su introducción, tenía un precio de US$788 en cantidades de 5.000, un 10% menos que el modelo de 225 MHz al que reemplazó. El mismo día, los precios del modelo de 275 MHz también se redujeron en un 25% a US$1.083 en cantidades de 5.000. El modelo de 300 MHz se anunció y probó el 2 de octubre de 1995 y se envió en diciembre de 1995. También hubo un modelo, el 21064A-275-PC, que estaba restringido a ejecutar Windows NT o sistemas operativos que utilizan el modelo de administración de memoria de Windows NT.

El 21064A sucedió al 21064 original como microprocesador Alpha de gama alta. Posteriormente fue el que más se utilizó en sistemas de gama alta. Entre los usuarios se encontraban:

El 21064A tuvo una serie de mejoras de microarquitectura con respecto al 21064. Las cachés primarias se mejoraron de dos maneras: la capacidad de la caché I y la caché D se duplicó de 8 KB a 16 KB y se agregó protección de paridad a las etiquetas de caché y a las matrices de datos de caché. Las divisiones de punto flotante tienen una latencia menor debido a un divisor mejorado que retira dos bits por ciclo en promedio. La predicción de bifurcaciones se mejoró con un BHT más grande de 4096 entradas por 2 bits.

El 21064A contiene 2,8 millones de transistores y tiene un tamaño de 14,5 por 10,5 mm, para un área de 152,25 mm 2 . Fue fabricado por Digital en su proceso CMOS de quinta generación, CMOS-5, un proceso de 0,5 μm con cuatro niveles de interconexión de aluminio . [19]

Alfa 21066

El Alpha 21066 , presentado como DECchip 21066 , con nombre en código LCA4 ( Low Cost Alpha ), es una variante de bajo costo del Alpha 21064. Las muestras se introdujeron el 10 de septiembre de 1993, con envíos en volumen a principios de 1994. En el momento de la introducción, el Alpha 21066 de 166 MHz tenía un precio de US$385 en cantidades de 5.000. También existía un modelo de 100 MHz, destinado a sistemas integrados . El muestreo comenzó a fines de 1994, con envíos en volumen en el tercer trimestre de 1995. El Microprocessor Report reconoció al Alpha 21066 como el primer microprocesador con un controlador PCI integrado.

El Alpha 21066 fue diseñado para su uso en aplicaciones de bajo costo, específicamente computadoras personales que ejecutaban Windows NT . Digital utilizó varios modelos del Alpha 21066 en sus clientes Multia , placas base de fabricante de equipos originales (OEM) AXPpci 33 y computadoras de placa única AXPvme . Fuera de Digital, los usuarios incluyeron a Aspen Systems en su estación de trabajo Alpine, Carrera Computers en su estación de trabajo Pantera I, NekoTech utilizó un modelo de 166 MHz en su computadora personal Mach 1-166 y Parsys en sus supercomputadoras TransAlpha TA9000 Series.

Debido a la reducción del proceso, se pudieron incluir características que eran deseables en sistemas integrados sensibles a los costos. Estas características incluyen un controlador de memoria y caché B en chip con soporte ECC , un acelerador de gráficos funcionalmente limitado que admite hasta 8 MB de VRAM para implementar un búfer de cuadros , un controlador PCI y un generador de reloj de bucle de enganche de fase (PLL) para multiplicar una señal de reloj externa de 33 MHz a la frecuencia de reloj interna deseada.

El controlador de memoria admitía de 64 KB a 2 MB de caché B y de 2 a 512 MB de memoria. La implementación de ECC era capaz de detectar errores de 1, 2 y 4 bits y corregir errores de 1 bit. Para reducir los costes, el Alpha 21066 tiene un bus de sistema de 64 bits, lo que redujo la cantidad de pines y, por lo tanto, el tamaño del paquete. El ancho reducido del bus de sistema también redujo el ancho de banda y, por lo tanto, el rendimiento en un 20%, lo que se consideró aceptable.

El 21066 contenía 1,75 millones de transistores y medía 17,0 por 12,3 mm, para un área de 209,1 mm 2 . Se fabricó en CMOS-4S, un proceso de 0,675 μm con tres niveles de interconexión. El 21066 estaba empaquetado en un CPGA de 287 pines que medía 57,404 por 57,404 mm.

Alfa 21066A

Alfa DEC 21066A

El Alpha 21066A , cuyo nombre en código es LCA45 , es una variante de bajo costo del Alpha 21064A. Se anunció el 14 de noviembre de 1994, con muestras de los modelos de 100 y 233 MHz introducidas el mismo día. Ambos modelos se enviaron en marzo de 1995. Cuando se anunciaron, los modelos de 100 y 233 MHz tenían un precio de $175 y $360, respectivamente, en cantidades de 5000. Más tarde se puso a disposición un modelo de 266 MHz.

El 21066A fue adquirido en segundo lugar por Mitsubishi Electric como M36066A . Fue el primer microprocesador Alpha fabricado por la empresa. Las piezas de 100 y 233 MHz se anunciaron en noviembre de 1994. En el momento del anuncio, las muestras de ingeniería estaban previstas para diciembre de 1994, las muestras comerciales para julio de 1995 y las cantidades en volumen para septiembre de 1995. La pieza de 233 MHz tenía un precio de 490 dólares en cantidades de 1000. [20]

Aunque se basaba en el 21064A, el 21066A no tenía cachés de datos e instrucciones de 16 KB. Una característica específica del 21066A era la gestión de energía: la frecuencia del reloj interno del microprocesador podía ajustarse mediante software.

Digital utilizó varios modelos de 21066A en sus productos que anteriormente habían utilizado el 21066. Fuera de Digital, Tadpole Technology utilizó un modelo de 233 MHz en su portátil ALPHAbook 1 .

El 21066A contenía 1,8 millones de transistores en una matriz de 14,8 x 10,9 mm, para un área de 161,32 mm 2 . Se fabricó mediante el proceso CMOS de quinta generación de Digital, CMOS-5, un proceso de 0,5 μm con tres niveles de interconexión. Mitsubishi Electric fabricó el M36066A mediante su propio proceso de metal de tres niveles de 0,5 μm.

Alfa 21068

El Alpha 21068 , presentado como DECchip 21068 , es una versión del 21066 orientada a sistemas embebidos. Era idéntico al 21066 pero tenía una frecuencia de reloj más baja para reducir la disipación de energía y el costo. Se introdujeron muestras el 10 de septiembre de 1993 y los envíos en grandes cantidades se realizaron a principios de 1994. Operaba a 66 MHz y tenía una disipación de energía máxima de 9 W. En el momento de su introducción, el 21068 tenía un precio de 221 dólares estadounidenses cada uno en cantidades de 5000. El 6 de junio de 1994, Digital anunció que reduciría el precio en un 16% a 186 dólares estadounidenses, con efecto a partir del 3 de julio de 1994.

El Alpha 21068 fue utilizado por Digital en su placa base AXPpci 33 y en las computadoras de placa única AXPvme 64 y 64LC .

Alfa 21068A

El Alpha 21068A , presentado como DECchip 21068A , es una variante del Alpha 21066A para sistemas integrados. Operaba a una frecuencia de reloj de 100 MHz.

Conjuntos de chips

Inicialmente, no existía un chipset estándar para los modelos 21064 y 21064A. Los ordenadores de Digital utilizaban circuitos integrados específicos de la aplicación (ASIC) personalizados para interconectar el microprocesador con el sistema. Como esto aumentaba el coste de desarrollo para terceros que deseaban desarrollar productos basados ​​en Alpha, Digital desarrolló un chipset estándar, el DECchip 21070 ( Apecs ), para los fabricantes de equipos originales (OEM).

Existían dos modelos del 21070, el DECchip 21071 y el DECchip 21072. El 21071 estaba destinado a estaciones de trabajo, mientras que el 21072 estaba destinado a estaciones de trabajo de gama alta o servidores monoprocesador de gama baja. Los dos modelos se diferenciaban en las características del subsistema de memoria: el 21071 tiene un bus de memoria de 64 bits y admite de 8 MB a 2 GB de memoria protegida por paridad , mientras que el 21072 tiene un bus de memoria de 128 bits y admite de 16 MB a 4 GB de memoria protegida por ECC .

El chipset constaba de tres diseños de chip: el controlador de memoria y caché B COMANCHE , el segmento de datos DECADE y el controlador PCI EPIC. Los chips DECADE implementaron las rutas de datos en segmentos de 32 bits y, por lo tanto, el 21071 tiene dos de esos chips, mientras que el 21072 tiene cuatro. El chip EPIC tiene una ruta de 32 bits hacia los chips DECADE.

El modelo 21070 se presentó el 10 de enero de 1994, [21] con muestras disponibles. Los envíos en grandes cantidades comenzaron a mediados de 1994. En cantidades de 5.000, el modelo 21071 se vendió a 90 dólares y el modelo 21072 a 120 dólares.

21070 usuarios incluyeron a Carrera Computers en sus estaciones de trabajo Pantera y a Digital en algunos modelos de sus AlphaStations y AlphaServers uniprocesadores .

Véase también

Notas

  1. ^ Charles P. Thacker; David G. Conroy; Lawrence C. Stewart (1992). "La unidad de demostración Alpha: un multiprocesador de alto rendimiento para el desarrollo de software y chips" (PDF) . Digital Technical Journal . 4 (4).
  2. ^ Ryan 1994
  3. ^ Digital Equipment Corporation 1996, pág. 2-3-2-4
  4. ^ Digital Equipment Corporation 1996, pág. 2-5
  5. ^ abc McLellan 1993, pág. 42
  6. ^ Dobberpuhl 1992, pág. 37
  7. ^ de Dobberpuhl 1992, pág. 36
  8. ^ Digital Equipment Corporation 1996, pág. 2-6
  9. ^ Dobberpuhl 1992, págs. 35-36
  10. ^ abc McLellan 1993, pág. 43
  11. ^abc Dobberpuhl 1992, pág. 38
  12. ^ Gwennap 1994
  13. ^ McLellan 1993, pág. 44
  14. ^ abcd Dobberpuhl 1992, pág. 35
  15. ^ Bhandarkar 1995, págs. 2-4
  16. ^ Digital Equipment Corporation 1996, pág. 8-3
  17. ^ Digital Equipment Corporation 1996, pág. 8-2
  18. ^ Bhandarkar 1995, pág. 2
  19. ^ Bhandarkar 1995, pág. 3
  20. ^ Krause 1994
  21. ^ Corporación de equipos digitales 1994

Referencias

Lectura adicional