información general | |
---|---|
Lanzado | Marzo de 1984 (1984-03) | [1]
Fabricantes comunes | |
Actuación | |
Ancho de datos | 16 bits |
Especificaciones físicas | |
Transistores |
|
Núcleos |
|
Coprocesador |
|
Historia | |
Sucesor | NEC V60 |
El NEC V20 es un microprocesador diseñado y producido por NEC . Es compatible en cuanto a pines y código objeto con el Intel 8088 , con una arquitectura de conjunto de instrucciones (ISA) similar a la del Intel 80188 con algunas extensiones. [2] El V20 se presentó en marzo de 1984. [1] [2]
El chip V20 estaba compuesto por 63.000 transistores , más del doble de los 29.000 de la CPU 8088. [1] El chip estaba diseñado para un ciclo de trabajo de reloj del 50%, en comparación con el ciclo de trabajo del 33% utilizado por el 8088. [3] El V20 tiene dos buses de datos internos de 16 bits de ancho, lo que permite que se produzcan dos transferencias de datos simultáneamente. [4] Diferencias como esa significaban que un V20 normalmente podía completar más instrucciones en un tiempo determinado que un Intel 8088 funcionando a la misma frecuencia. [2]
El V20 se fabricó con tecnología CMOS de 2 micrones. [5] [3] Las primeras versiones funcionaban a velocidades de 5, 8 y 10 MHz . [6] : 2 En 1990, una actualización de la tecnología del proceso de fabricación dio como resultado el V20H y el V20HL, con un rendimiento mejorado y un consumo de energía reducido. [5] Las versiones posteriores agregaron velocidades de 12 y 16 MHz. Los V20HL también eran completamente estáticos, lo que permitía detener su reloj.
El V20 se describía como un dispositivo de 16 bits de ancho interno. Utilizaba un bus de datos externo de 8 bits que se multiplexaba en los mismos pines que el byte bajo del bus de direcciones. Su bus de direcciones de 20 bits de ancho podía direccionar 1 MB de memoria.
Se informó que el V20 era compatible con el coprocesador de unidad de punto flotante (FPU) Intel 8087. [7] NEC también diseñó su propia FPU, la μPD72091 , que se canceló antes de llegar a producción. A continuación, diseñaron un diseño revisado, el μPD72191, pero no está claro cuántos ejemplares de esta segunda parte se fabricaron, si es que se fabricó alguno. [8]
El V30, una CPU casi idéntica con un bus de datos externo de 16 bits de ancho, debutó el 1 de marzo de 1984. [9] [5] Era compatible en pines y código objeto con el Intel 8086.
La ISA del V20 incluye varias instrucciones que no ejecuta el 8088, como instrucciones para manipulación de bits, operaciones BCD empaquetadas, multiplicación y división. También incluye nuevas instrucciones en modo real del Intel 80286. [10]
Las instrucciones ADD4S
, SUB4S
, y CMP4S
eran capaces de sumar, restar y comparar enormes números decimales codificados en binarioROL4
almacenados en la memoria. Las instrucciones y rotar nibblesROR4
de cuatro bits . Otra familia estaba formada por las instrucciones , , , y , que prueban, establecen, borran e invierten bits individuales de sus operandos, pero son mucho menos eficientes que los posteriores equivalentes i80386 , , , y ; sus codificaciones tampoco son compatibles. Había dos instrucciones para extraer e insertar campos de bits de longitudes arbitrarias ( , ). Y, por último, había dos prefijos de repetición adicionales, y , que modificaban las instrucciones y originales para escanear una cadena de bytes o palabras (con instrucciones y ) mientras una condición menor o no menor permaneciera verdadera. [11]TEST1
SET1
CLR1
NOT1
BT
BTS
BTR
BTC
EXT
INS
REPC
REPNC
REPE
REPNE
SCAS
CMPS
El V20 ofrecía un modo que emulaba una CPU Intel 8080.BRKEM
Se emite una instrucción para iniciar la emulación 8080. El operando de la instrucción especifica un número de interrupción cuyo vector contiene el segmento:desplazamiento donde debe comenzar la emulación. Para finalizar, RETEM
se emite una instrucción en código 8080. Una característica que no se utiliza a menudo es (call native) que emite una llamada de interrupción de tipo 8086 que permite mezclar CALLN
el código x86 (que retorna utilizando un ) con el código 8080.IRET
Otro modo pone al procesador en un estado de ahorro de energía a través de una HALT
instrucción. [6] [7]
En 1982, Intel demandó a NEC por los diseños μPD8086 y μPD8088 de esta última. La demanda se resolvió extrajudicialmente y NEC aceptó licenciar los diseños de Intel. [12]
A finales de 1984, Intel volvió a presentar una demanda contra NEC, alegando que el microcódigo en el V20 y V30 infringía sus patentes para los procesadores 8088 y 8086. [13] El ingeniero de software de NEC, Hiroaki Kaneko, había estudiado tanto el diseño de hardware de las CPU Intel como el microcódigo original de Intel.
En su fallo, el tribunal determinó que el microcódigo del almacén de control constituye un programa informático y, por lo tanto, está protegido por derechos de autor. [14] Además, determinó que Intel había perdido sus derechos de autor al no asegurarse de que todos los chips de segunda fuente estuvieran debidamente marcados. El tribunal también determinó que NEC no se limitó a copiar el microcódigo de Intel y que el microcódigo de los modelos V20 y V30 era lo suficientemente diferente del de Intel como para no infringir las patentes de Intel.
El juez del caso aceptó la prueba de sala limpia de NEC . También aprobó el uso de ingeniería inversa por parte de NEC con respecto a la creación del microcódigo Rev.2 de NEC, sin hacer comentarios al respecto con respecto al código Rev.0. [14] : 212–221
Producto | N° de pieza | Detalles |
---|---|---|
NEC V30 | μPD70116 | En esencia, era un NEC V20 con un bus de datos externo de 16 bits y era compatible con los pines del Intel 8086. El V30 era una actualización de fábrica del 8086 utilizado en el conmutador de oficina central GTD-5 EAX Clase 5. También se utilizó en la Psion Series 3 , la NEC PC-9801 VM, la Olivetti PCS86, la tarjeta "PC Transporter" de Applied Engineering para la serie de computadoras Apple II y en varias máquinas recreativas (particularmente las fabricadas por Irem ) a fines de la década de 1980. Años después, se utilizó una versión MZ V30 de bajo voltaje en la consola de juegos portátil WonderSwan de Bandai . |
NEC V20HL | μPD70108H | Versión de alta velocidad (hasta 16 MHz) y bajo consumo del V20. |
NEC V30HL | μPD70116H | Versión de alta velocidad (hasta 16 MHz) y bajo consumo del V30. |
NEC V25 | μPD70320 | Una versión de microcontrolador del NEC V20. |
NEC V25HS | μPD79011 | Una versión del V25 con el RTOS RX116 en la ROM interna. |
NEC V25+ | μPD70325 | Versión de alta velocidad del V25. |
NEC V33 | μPD70136 | Una versión del V30 con buses de datos y direcciones independientes y con decodificación de instrucciones realizada mediante lógica cableada en lugar de un almacén de control microprogramado. El rendimiento es el doble que el de un V30 para la misma frecuencia de reloj. El V33 tiene un rendimiento equivalente al Intel 80286. El espacio de direcciones de memoria se ha incrementado a 16 M bytes. Dos instrucciones adicionales, BRKXA y RETXA , admiten el modo de direccionamiento extendido. No se admite la emulación 8080. |
Normativa nacional V33A | μPD70136A | Se diferencia del V33 en que tiene números de vector de interrupción compatibles con los procesadores 80X86 de Intel. |
NEC V35 | μPD70330 | Una versión de microcontrolador del NEC V30. |
NEC V35HS | μPD79021 | Una versión del V35 con el RTOS RX116 en la ROM interna. |
NEC V35+ | μPD70335 | Una versión de alta velocidad del V35. |
NEC V40 | μPD70208 | Versión integrada del V20, con USART 8251 compatible con Intel integrado , temporizador de intervalo programable 8253 e interfaz de puerto paralelo 8255. Se utiliza en Olivetti PC1, Digisystems Jetta XD, Sharp PC-4500 y Zenith Eazy PC . |
NEC V40HL | μPD70208H | Una versión de alta velocidad y bajo voltaje del V40. |
NEC V50 | μPD70216 | Una versión integrada del V30. Es la CPU principal de los Akai S1000 y S1100, y del Korg M1 . [15] [16] |
NEC V50HL | μPD70216H | Una versión de alta velocidad y bajo voltaje del V50. |
NEC V41 | μPD70270 | Integra un núcleo V30HL y periféricos PC-XT : interfaz de puerto paralelo 8255 , temporizador de intervalo programable 8254 , PIC 8259 , controlador DMA 8237 y controlador de teclado 8042. También integra un controlador DRAM completo. |
NEC V51 | μPD70280 | Integra un núcleo V30HL y periféricos PC-XT : interfaz de puerto paralelo 8255 , temporizador de intervalos programable 8254 , PIC 8259 , controlador DMA 8237 y controlador de teclado 8042. También integra un controlador DRAM completo. Se utilizó en la Olivetti Quaderno PT-XT-20. |
NEC V53 | μPD70236 | Integra un núcleo V33 con DMA de 4 canales (μPD71071 [17] /i8237), UART (μPD71051/i8251), tres temporizadores/contadores (μPD71054/ i8254 ) y controlador de interrupciones (μPD71059/ i8259 ). Fue utilizado en Akai MPC3000 [18] [19] y Akai SG01v . |
NEC V53A | μPD70236A | Integra algunos periféricos con un núcleo V33A. Se utiliza en Sharp Zaurus PI-B304/B308 |
NEC V55PI | μPD70433 | El V55PI tiene registros de segmento extendidos llamados DS2 y DS3, y al desplazar el valor del registro 8 bits hacia la izquierda y agregar un valor de desplazamiento, es posible acceder a todo el espacio de direcciones de 16 MB. [20] |
NEC V55SC | μPD70423 | El V55SC no solo viene con registros de segmento extendidos, llamados DS2 y DS3, sino que también está equipado con un controlador serial multiprotocolo (MPSC) de dos canales que es un subconjunto de μPD72001/72002. [21] |
Vadem VG230 | Plataforma de PC de un solo chip. [22] El VG230 contenía un procesador NEC V30HL de 16 MHz y lógica de núcleo compatible con IBM PC/XT, controlador LCD (CGA/AT&T640x400) con soporte de plano táctil, escáner de matriz de teclado, controlador de tarjeta dual PCMCIA 2.1, soporte de hardware EMS 4.0 para hasta 64 MB y temporizador incorporado, controladores PIC, DMA, UART y RTC. Se utilizó en HP OmniGo 100 , 120 e IBM Simon . [23] | |
Vadem VG330 | Sucesor del VG230, contenía un procesador NEC V30MX de 32 MHz y lógica central compatible con IBM PC/AT con PIC duales, controlador LCD (640x480), escáner de matriz de teclado, controlador PC Card ExCA 2.1 y puerto SIR. | |
NEC V60 | μPD70616 | Con el procesador V60, NEC abandonó el diseño x86 y lanzó una nueva arquitectura CISC de 32 bits . El V60 y el V70, que se diferenciaban principalmente en el ancho de sus respectivos buses de direcciones y datos externos, incluían un modo de emulación V20/V30. [24] : §10 [8] |