Está en la página 1de 7

Zilog Z80

Ir a la navegaci�nIr a la b�squeda

Zilog Z80 A.

Un Z80 en encapsulado LQFP.


El Zilog Z80 (Z80) es un microprocesador de 8 bits cuya arquitectura se encuentra a
medio camino entre la organizaci�n de acumulador y de registros generales. Si
consideramos al Z80 como procesador de arquitectura de registros generales, se
sit�a dentro del tipo de registro-memoria.

Fue lanzado al mercado en julio de 1976 por la compa��a Zilog, y se populariz� en


los a�os 80 a trav�s de ordenadores como el Sinclair ZX Spectrum, Amstrad CPC o los
ordenadores de sistema MSX. Es uno de los procesadores de m�s �xito del mercado,
del cual se han producido infinidad de versiones cl�nicas, y sigue siendo usado de
forma extensiva en la actualidad en multitud de sistemas embebidos.

�ndice
1 Historia
1.1 Introducci�n
1.2 Usos notables
1.3 Segundas fuentes y cl�nicos
2 Evoluciones
2.1 Z180
2.2 Z80182
2.3 Hitachi HD64180
2.4 Z280
3 Estructura
3.1 Registros
3.1.1 Acumulador
3.1.2 Par HL
3.1.3 Pares BC y DE
3.1.4 Registros indexados IX e IY
3.1.5 Puntero de pila SP
3.1.6 Registros especiales
3.2 Bits de condici�n (flags) del Z80
3.3 Patillaje
4 V�ase tambi�n
5 Referencias
5.1 Bibliograf�a
6 Enlaces externos
Historia
Introducci�n
El Z80 fue dise�ado principalmente por Federico Faggin, que estuvo trabajando en
Intel como dise�ador jefe del Intel 4004 y del Intel 8080. Cuando se termin� de
producir, en 1974, Federico Faggin dej� Intel, fund� Zilog y comenz� a trabajar en
el dise�o de Z80 bas�ndose en la experiencia adquirida creando el Intel 8080 y
bas�ndose en la estructura de este �ltimo. Dos a�os despu�s estaba a la venta el
Z80.

El Z80 estaba dise�ado para ser compatible a nivel de c�digo con el Intel 8080, de
forma que la mayor�a de los programas para el 8080 pudieran funcionar en �l,
especialmente el sistema operativo CP/M.

El Z80 ten�a ocho mejoras fundamentales respecto al Intel 8080:

Un conjunto de instrucciones mejorado, incluyendo los nuevos registros �ndice IX e


IY y las instrucciones necesarias para manejarlos.
Dos bancos de registros que pod�an ser cambiados de forma r�pida para acelerar la
respuesta a interrupciones.
Instrucciones de movimiento de bloques, E/S de bloques y b�squeda de bytes.
Instrucciones de manipulaci�n de bits.
Un contador de direcciones para el refresco de la DRAM integrado, que en el 8080
ten�a que ser proporcionado por el conjunto de circuitos de soporte.
Alimentaci�n �nica de 5 voltios.
Necesidad de menos circuitos auxiliares, tanto para la generaci�n de la se�al de
reloj como para el enlace con la memoria y la E/S.
M�s barato que el Intel 8080.
Una tipo especial de reset que s�lo reinicia el contador de programa de modo que el
Z80 se puede usar en un sistema de desarrollo ICE (In-Circuit Emulator).1?
El Z80 elimin� r�pidamente al Intel 8080 del mercado y se convirti� en uno de los
procesadores de 8 bits m�s populares. Las primeras versiones funcionaban a 2,5 MHz,
pero su velocidad ha aumentado hasta los 20 MHz. As�, la versi�n m�s utilizada fue
el Z80A funcionando a 3,58 MHz (un cuarto de la frecuencia PAL o NTSC) siendo la
velocidad de f�brica de 4 MHz.2?

En la actualidad Zilog sigue fabricando versiones del Z80 original y otros modelos
compatibles con �l que mejoran las prestaciones.

Usos notables
A comienzos de los a�os 1980 el Z80 o versiones cl�nicas del mismo fueron usadas en
multitud de ordenadores dom�sticos, como la gama MSX, el Radio Shack TRS-80, el
Sinclair ZX80, ZX81 y ZX Spectrum. Tambi�n fue usado en el Osborne 1, el Kaypro y
otra gran cantidad de ordenadores empresariales que dominaban el mercado por
aquella �poca y que usaban el sistema operativo CP/M.

A mediados de los a�os 1980 el Z80 fue usado en el Tatung Einstein y la familia de
ordenadores dom�sticos y empresariales Amstrad CPC y Amstrad PCW. El Z80 tambi�n
fue usado en los ordenadores Tiki 100, que se empleaban en los colegios de Noruega
por entonces.

Tal fue la popularidad del Z80 y el CP/M que otros ordenadores basados en el MOS
Technology 6502 o 6510 que ya estaban en el mercado, como el BBC Micro, el Apple II
y el Commodore 64 pod�an ser ampliados mediante una tarjeta o cartucho que conten�a
un procesador Z80. Tambi�n el Commodore 128 inclu�a un Z80 secundario junto al MOS
Technology 8502 principal para poder usar CP/M.

Ya en los a�os 1990 el Z80 ha sido usado en las videoconsolas Sega Master System y
Sega Game Gear. Adem�s las videoconsolas SNK Neo-Geo y la Sega Mega Drive y muchas
m�quinas arcade usan un Z80 como el procesador especializado en sonido.

Las Game Boy y Game Boy Color de Nintendo utilizan una variante del Z80 fabricada
por Sharp.

En la actualidad parte de la gama de calculadoras gr�ficas programables de Texas


Instruments tales como las TI-73 (1998), TI-73 Explorer (2003), TI-82 (s�lo modelo
1999), TI-83 Plus (s�lo modelos 1999 y 2001),3? y sus sucesoras emplean una versi�n
cl�nica del Z80 fabricada por NEC como procesador principal.

Adem�s el Z80 tambi�n es un microprocesador popular para ser usado en sistemas


embebidos, campo donde se emplea de manera extensiva.

Segundas fuentes y cl�nicos


Mostek y SGS fueron segundas fuentes del Z80 (Mostek MK3880 y SGS Z8400). Sharp y
NEC fabrican cl�nicos del Z80 (Sharp LH-0080 y NEC �PD780C). National Semiconductor
fabric� un procesador cl�nico, el NSC800, con tecnolog�a CMOS pero que no era
compatible pin a pin. Hitachi fabric� una versi�n con tecnolog�a CMOS mejorada,
cuya segunda fuente fue curiosamente la propia Zilog.

En la Rep�blica Democr�tica Alemana se produjo una versi�n cl�nica del Z80 llamada
U880, que fue empleada en los sistemas inform�ticos de Robotron y de VEB
Mikroelektronik M�hlhausen, tales como las series KC85 y en muchos ordenadores de
fabricaci�n casera.

En Ruman�a se fabric� una versi�n cl�nica del Z80, el MMN80, y que seg�n algunas
fuentes fue tambi�n fabricada en la Uni�n Sovi�tica, donde se crearon varias copias
del Z80, siendo el m�s conocido el T34. Este microprocesador fue utilizado en la
mayor�a de ordenadores fabricados en este pa�s, casi todos clones de los Sinclair
ZX Spectrum: Ice Felix HC85, HC90, HC91, HC2000, Datatim/Universidad T�cnica de
Timisoara TIM-S, MicroTIM y MicroTIM+ o los Intreprinderea Electr�nica CIP, CIP-02,
CIP-03, CIP-04.

Hoy en d�a existen dos n�cleos de procesador llamados T80 y TV80 que son
funcionalmente equivalentes al Zilog Z80 y se encuentran disponibles bajo una
licencia tipo BSD. El c�digo fuente de estos n�cleos est� disponible tanto en
Verilog como en VHDL. Una vez sintetizada esta �ltima versi�n puede funcionar hasta
35 MHz en una FPGA Xilinx Spartan II.

En la actualidad la propia Zilog fabrica una versi�n mejorada del Z80 llamada eZ80,
que funcionando a 50 MHz tiene un rendimiento similar a un Z80 funcionando a 150
MHz y adem�s puede direccionar hasta 16 MB de memoria RAM extendiendo el tama�o de
los registros, frente a los 64 KB del Z80.

Existen dise�os de hardware actuales que implementan un Z80 dentro de un chip


programables programando parte del chip para que cumpla las funciones del Z80.

No todos los clones de este microprocesador tienen conectado el pin NMI, por lo que
al intentar usarlo en algunos modelos este hace caso omiso.

El T34BM1, clon sovi�tico del Z80.

NEC �PD780C, clon del Z80 en la placa madre de un ZX Spectrum.

Toshiba TMPZ84C015 - un Z80 que incluye funciones de perif�ricos y otros en el


mismo chip.

Hitachi HD64180

Evoluciones
Z180

Un antiguo Z180 en un empaquetado PLCC (los m�s peque�os QFP y LQFP son m�s comunes
hoy d�a).

Z8S180.
El Z180 es el sucesor del Z80. Es compatible con una larga colecci�n de software
escrito para este.4? La familia Z180 a�ade mayores prestaciones y funciones de
perif�ricos integrados como el generador de reloj, contadores/relojes de 16 bits,
controlador de interrupciones, generadores de estado de espera, puertos serie y un
controlador DMA.5? Usa ciclos de lectura y escritura separados, usando relojes
similares a los del Z80 y a los procesadores Intel.6? La MMU integrada tiene la
capacidad de direccionar hasta 1 MB de memoria. Es posible configurar el Z180 para
que opere como un Hitachi HD64180.

Chip Velocidad (MHz) Relojes I/O Ctrl. comunicaciones Otros


Z80180 6, 8, 10 2 N/S CPU 1 MB MMU, 2xDMAs, 2xUARTs
Z80181 10 1 16 CPU 1 MB MMU, 2xDMAs, 2xUARTs
Z80182 16, 33, 20 0 Reloj serie, 24 ESCC, CSIO, UART S180 Megacell,
2xESCC channels, 16550 MIMIC
Z80195 20, 33 4 7/24 SCC, CSIO, UART
Z8L180 20 2 Reloj serie CSIO, UART 1 MB MMU, 2xDMAs, 2xUARTs, 3.3 V
Operation
Z8L182 20 0 Reloj serie ESCC, CSIO, UART S180 Megacell, 2xESCC
channels, 16550 MIMIC, 3.3V operation
Z8S180 10, 20, 33 2 Reloj serie UART, DMA, I2C, SPI 1 MB MMU, 2xDMAs,
2xUARTs
Z80182

Z80182
El Z80182 es una versi�n mejorada del Z80 y es parte de la familia Z180. Se le
apoda Controlador de perif�ricos inteligentes de Zilog (ZIP: Zilog Intelligent
Peripheral Controller). Tambi�n es completamente est�tico (el reloj puede ser
parado y no se pierden datos de los registros)[cita requerida] y tiene una opci�n
de baja interferencia electromagn�tica que reduce el slew rate de las salidas.[cita
requerida].

El Z80182 puede operar a 33 MHz con un oscilador externo operando a 5 voltios, o a


20 MHz usando el oscilador interno a 3,3 V.7?

Hitachi HD64180
Art�culo principal: HD64180
Hitachi HD64180

Hitachi HD64180

Hitachi HD64180 DIP64


El HD64180 es un microprocesador basado en el Z80 desarrollado por Hitachi que
incluye una MMU. El HD64180 Super Z80 fue posteriormente licenciado a Zilog y
vendido por esta con el nombre Z64180 incluyendo algunas mejoras como las presentes
en el Z180.

Z280
Art�culo principal: Zilog Z280

El Z280 en un empaquetado PLCC


El Z280 fue una mejora de la arquitectura Z80 presentada en julio de 1987.
B�sicamente es una versi�n CMOS ligeramente mejorada del anterior Z800. Ambas
versiones, el Z280 y el Z800, fueron fracasos comerciales.8?

Estructura
A pesar de ser un microprocesador de 8 bits, el Z80 puede manejar instrucciones de
16 bits y puede direccionar hasta 64 KiB de RAM. Una de las caracter�sticas m�s
rese�ables es que tiene las instrucciones del Intel 8080 como subconjunto, de modo
que algunos ordenadores basados en Z80 pod�an ejecutar programas dise�ados para el
CP/M del 8080. Esto ha hecho que los formatos de instrucci�n del Z80 sean bastante
complejos, ya que tienen que mantener su compatibilidad con el 8080. Sin embargo el
Z80 ha conseguido mejorar al microprocesador de Intel en velocidad, ha a�adido
nuevos modos de direccionamiento y contiene un juego de instrucciones m�s amplio.
Registros

Estructura interna del Z80.


La estructura de registros del Z80 est� compuesta por un banco principal, otro
alternativo y por �ltimo un banco compuesto por registros especiales.9? La
existencia del banco alternativo mejora la velocidad ante la presencia de las
interrupciones ya que permite cambiar desde el banco principal al alternativo. Los
registros son:

A, B, C, D, E, H y L (banco principal)
A', B', C', D', E', H' y L' (banco alternativo)
I, R, IX, IY, SP y PC (registros especiales)
Los registros del banco principal son generales y de 8 bits. Se pueden tomar por
parejas, siendo entonces IX e IY los registros �ndices. El registro A sirve de
acumulador. El R almacena el bloque de memoria a cuyo refresco se va a proceder. El
SP es el puntero de cima de pila. El PC es el contador de programa. El F contiene
los flags o tambi�n llamados bits de condici�n.

Registros primarios Registros alternativos


+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| A |S Z - A - P N C| F | A' |S Z - A - P N C| F'
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| B | C | | B' | C' |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| D | E | | D' | E' |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| H | L | | H' | L' |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Registros �ndice
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IX |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IY |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Puntero de pila y Contador de programa
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SP | Puntero de pila
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PC | Contador de programa
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Registro de interrupciones y
Registro de refresco de memoria
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| I | R |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Acumulador
Registro utilizado para guardar el dato que se est� usando. Es el registro m�s
importante, junto al registro F (con el que forma el par de registros AF). La
mayor�a de las operaciones matem�ticas y l�gicas de 8 bits se realizan a trav�s de
este registro, de ah� su importancia.

Par HL
Es el par de registros m�s vers�til, utilizado sobre todo para contener direcciones
de memoria. En el registro simple L se coloca el byte m�s bajo (LOW en ingl�s) de
la direcci�n de memoria, y en H, se coloca el byte m�s alto (HIGH en ingl�s) de la
direcci�n de memoria. As� mismo, es muy utilizado por las llamadas a subrutinas
BIOS (CALL) para datos de entrada/salida de la subrutina llamada. Algunas
instrucciones Assembler son espec�ficas de este par de registros.
Pares BC y DE
Se utilizan como pares auxiliares de HL en instrucciones que manipulan bloques como
LDI, LDIR, etc.

Registros indexados IX e IY
Son 2 registros de 16 bits. Se utilizan como registros base para apuntar a una
direcci�n de memoria de donde se va a tomar un dato. Se indica un byte adicional
que implica desplazamiento.

Aunque no est� documentado oficialmente, se pueden utilizar como 2 registros de 8


bits independientes, obteniendo un total de 4 registros de 8 bits extras.
Puntero de pila SP
Permite el anidamiento de rutinas. Apunta a una zona de memoria llamada STACK que
es una estructura de pila o LIFO.

Registros especiales
Flag F: Indica condiciones especiales al realizar operaciones matem�ticas o
l�gicas.
Sirve como conjunto de banderas, que nos indican la informaci�n sobre las
operaciones que se est�n realizando.10?11? 12? 13?

Registro de interrupciones I: Se utiliza para ejecutar cualquier subrutina como


respuesta a una interrupci�n hardware, utiliz�ndose como puntero I como la parte
alta de la direcci�n y el dato que exista en el bus de datos como la parte baja,
esto permite manejar 128 interrupciones distintas.
Registro de refresco R: El valor del registro R se coloca en el bus de direcciones
mientras se activa la se�al de refresco proporcionada por la CPU. Esto ocurre
mientras la CPU decodifica una instrucci�n, o un prefijo de instrucci�n.
Bits de condici�n (flags) del Z80
0-C: Acarreo.
1-N: Resta BCD, para correcci�n con DAA.
2-P/V: Paridad/desbordamiento.
4-H: Medio acarreo, para correcci�n BCD con DAA.
6-Z: Cero.
7-S: Signo.
Los bits 3 y 5 no se utilizan, pero ciertas instrucciones los modifican, aunque no
est�n oficialmente documentados.

Patillaje
Patillas del Z80. Las l�neas del bus de direcciones se ven en rojo, las del bus de
datos en azul y las del bus de control en color verde.

+--\/--+
<-- A11 1| |40 A10 -->
<-- A12 2| |39 A9 -->
<-- A13 3| |38 A8 -->
<-- A14 4| |37 A7 -->
<-- A15 5| |36 A6 -->
--> CLK 6| |35 A5 -->
<-> D4 7| |34 A4 -->
<-> D3 8| |33 A3 -->
<-> D5 9| Z80 |32 A2 -->
<-> D6 10| |31 A1 -->
+5V Vcc 11| |30 A0 -->
<-> D2 12| |29 GND
<-> D7 13| |28 !RFSH -->
<-> D0 14| |27 !M1 -->
<-> D1 15| |26 !RESET <--
--> !INT 16| |25 !BUSRQ <--
--> !NMI 17| |24 !WAIT <--
<-- !HALT 18| |23 !BUSAK -->
<-- !MREQ 19| |22 !WR -->
<-- !IORQ 20| |21 !RD -->
+------+
V�ase tambi�n
Intel 8080
Intel 8085
MOS 6502
Referencias
http://www.primrosebank.net/computers/z80/z80_special_reset.htm
�Z80180 Microprocessor Unit Product Specification� (pdf). San Jose, California:
Zilog. noviembre de 2006. Consultado el 15 de julio de 2009.
�DataMath Calculator Museum�. Consultado el 29 de julio de 2016.
Ganssle, Jack (1992). �The Z80 Lives!�. �The designers picked an architecture
compatible with the Z80, giving Z80 users a completely software compatible upgrade
path�.
Jack G. Ganssle. (1992). The art of programming embedded systems. San Diego:
Academic Press. p. 13. ISBN 9780122748806.
Stuart R. Ball. (2002). Embedded microprocessor systems real world design.
Amsterdam: Newnes. p. 34. ISBN 9780750675345.
�CPU Control Register�. Z80182/Z8L182 Zilog Intelligent Peripheral Controller
Product Specification. San Jose, California: Zilog. 1997. p. 3�48.
�Z80S180/Z80L180 Product Specification� (pdf). San Jose, California: Zilog. 2000.
Consultado el 15 de julio de 2009.
Harston, J.G. (9 de septiembre de 1997). �Z180 Opcode Map�. Consultado el 15 de
julio de 2009.
�Z8S180 SL1960 Product Specification� (pdf). San Jose, California: Zilog. 1998.
Consultado el 15 de julio de 2009.
�Z8018x MPU Family User Manual� (pdf). San Jose, California: Zilog. 2003.
Consultado el 15 de julio de 2009.
Harston, J.G. (15 de abril de 1998). �Full HD64180/Z180 Opcode List�. Consultado
el 15 de julio de 2009.
Harston, J.G. (15 de abril de 1998). �Full Z280 Opcode List�. Consultado el 15 de
julio de 2009.
Bibliograf�a
Z280 MPU Microprocessor Unit Preliminary Technical Manual. San Jose, California:
Zilog. 1989. Consultado el 15 de julio de 2009. (Nota: Fichero PDF de 20MB)
Z80 Family Data Book. San Jose, California: Zilog. Enero de 1989.
Reh, Tilmann (16 de septiembre de 1991). �The CPU280 and Z280�. TCJ. Consultado el
15 de julio de 2009.
Enlaces externos
Documentaci�n oficial del Z80 (en ingl�s)
Variedades del Z80 fabricadas actualmente por Zilog (en ingl�s)
Tutorial de c�digo m�quina del Z80 (en ingl�s)
OCR de un cursillo de la revista MicroHobby (en ingl�s)
Lista de todos los procesadores Hitachi 64180 con sus frecuencias de reloj (en
ingl�s)
Categor�as: Microprocesadores ZilogIntroducciones relacionadas a la ciencia de la
computaci�n de 1976

También podría gustarte