Você está na página 1de 9

ARQUITECTURA DEL MICROPROCESADOR Z80

El Z80 fu el primero de la tercera generacin, sin embargo es uno de los


microprocesadores de 8 bits ms empleado hasta nuestros das, se encuentran
versiones mejores del mismo tales como Z80A, Z80B, Z80H, stas se
caracterizan por trabajar a frecuencias superiores de 4 Mcps, 6.5 Mcps y 8
Mcps respectivamente, las caractersticas fundamentales del Z80 son:
1. El transporte de seales se realiza sobre tres buses, el bus de direcciones, el
bus de datos, as como el bus de control.
2. Rgimen de interrupcin uniforme, con la posibilidad de encadenar las
prioridades de los circuitos perifricos.
3. Alto grado de programabilidad.
4. Reloj nico.
5. Fuente de voltaje nica de +5 Volts.
Un sistema con Z80 se completa con el empleo de memorias estndar de
lectura y memorias estticas o dinmicas de lectura y escritura, adems
pertenecen al sistema, puertos de entrada y salida paralelo, interfaces de
comunicacin serie, sistemas contadores temporizadores y circuitos de acceso
directo a memoria.
El funcionamiento del sistema consiste en que las instrucciones del
microprocesador, que estn en la memoria ROM, se ejecutan en una forma
secuencial de operacin, la fuente de datos es, la propia CPU, los perifricos o
las memorias, la transferencia interna de datos es a travs del CPU,
exceptuando la transferencia de datos en el proceso de acceso directo a
memoria.
El microprocesador Z80 contiene las siguientes unidades funcionales;
1).- Unidad aritmtica y lgica
2).- El contador de programa

3).- El apuntador del stack


4).- Registros de propsito general
5).- Registros de ndice
6).- Registros de interrupciones
7).- Registro de banderas
8).- Registro para refrescar memorias dinmicas

LA UNIDAD ARITMTICA Y LGICA (ALU)


Las operaciones del CPU Z80 se realizan con un grupo de dispositivos lgicos
conocidos comnmente como unidad aritmtica y lgica (ALU) esta efecta
las siguientes operaciones;
1. Suma binaria.
2. Operaciones lgicas.
3. Complementar a dos.
4. Corrimiento de un bit a la derecha o a la izquierda.
5. Registro de resultados importantes como el acarreo, signo, acarreo auxiliar,
paridad o si el resultado es cero.
6. Comparaciones
7. Poner, Limpiar o probar un bitEL

CONTADOR DE PROGRAMA (PC)


Es un registro de 16 bits, que continuamente tiene la direccin de la localidad
de memoria siguiente que se va a accesar, de esa localidad obtiene el cdigo
de la instruccin a ejecutarse, en la CPU el PC se incrementa en uno, cada vez
que el microprocesador lee el cdigo de la instruccin contenida en la localidad
direccionada, de esta forma el contador del programa direcciona
secuencialmente las localidades de la memoria ROM, donde se encuentra
almacenado el programa.
EL APUNTADOR DEL STACK (SP)
El microprocesador Z80 cuenta con el registro de pila (SP) o stack pointer que
contiene una direccin de memoria RAM a partir de la cual y en forma
descendente, se almacenan los contenidos de un par de registros, o a partir del
cual en forma ascendente se obtienen los ltimos dos datos de 8 bits
almacenados en esa rea, el SP es un registro de 16 bits, para almacenar en el
stack el contenido de un par de registros se utiliza la instruccin PUSH y para
cargar a un par de registros con los dos ltimos bytes del stack se utiliza la
instruccin POP.
REGISTROS DE PROPSITO GENERAL
El microprocesador Z80 contiene 14 registros de 8 bits separados en dos
grupos;
GRUPO 1; A, B, C, D, E, H, y L
GRUPO 2; A', B', C', D', E', H' y L
Todas las instrucciones trabajan con los registros del grupo 1, con las
instrucciones EX y EXX se logra el intercambio entre los contenidos de los
registros del grupo 1 con los contenidos de los registros del grupo 2, el grupo 2
se utiliza en cierta forma como stack del grupo 1, dentro de la propia CPU.
Con los 14 registros de propsito general se efectan por medio de las
instrucciones las siguientes funciones;
1. Recibir datos desde la memoria.

2. Enviar datos hacia la memoria.


3. Incrementar o decrementar en uno su contenido.
4. Formar una direccin con el contenido de un par de registros.
5. Transferir datos entre los registros.
6. Obtener un operando durante las funciones de la ALU.
REGISTROS DE NDICE IX e IY.
Estos son registros de 16 bits cada uno y conservan direcciones base que se
usan para modo de direccionamiento indexado, en este modo un registro de
ndice se usa como base para apuntar a una regin de la memoria. La direccin
efectiva de la localidad de memoria a donde se va a depositar el dato o de
donde se va a leer, se obtiene, al sumar el contenido del registro de ndice y el
valor de 8 bits contenido en el campo de "desplazamiento" de las instrucciones
que emplean direccionamiento con ndice, estos desplazamientos se
especifican con nmeros enteros signados con el complemento a dos.
REGISTRO DE INTERRUPCIONES
El Z80 opera en modo de interrupcin en el que responde como una "llamada"
indirecta en respuesta a una solicitud de interrupcin. El registro I se usa para
este propsito almacenando los8 bits ms significativos de la direccin indirecta
mientras que el dispositivo que interrumpe proporciona los 8 bits menos
significativos de la direccin ndice, esta caracterstica permite quelas rutinas
servicio de las interrupciones se localicen en cualquier parte de la memoria y
que se puedan accesar en un tiempo muy corto.
BANDERAS DE ESTADO
El microprocesador Z80 tiene un registro de 8 Flips Flops, para monitorear
ciertos resultados de las operaciones de la ALU, a la informacin que
almacenan estos flips-flops se conoce como banderas de estado, las banderas
se actualizan despus de cada operacin con alguno de los registros, no todas
las operaciones modifican a todas las banderas, de los 8 bits del registro de
banderas, nicamente seis registran informacin til para el programador,

cuatro de estas banderas se prueban, esto es, se usan como condiciones de


salto (JP), llamada (CALL), o regreso (RET), estas banderas son;
1. La paridad o sobre flujo (P/V). El registro "P" se utiliza para realizar funciones
auxiliares necesarias para el usuario, le sirven para interpretar los resultados,
es uno cuando el resultado de la operacin lgica del complemento a dos
produce un acarreo, de otro forma es un cero lgico.
2. SIGN (S); Set if into the result of ALU operation the most significant bit = 1,
otherwise reset.
3. ZERO (Z); Set if result of ALU operation is zero otherwise it is reset.
4. AUXILIARY CARRY; Set if carry out results b3 into b4 otherwise reset.
5. CARRY (C); Set if result of addition or subtraction operation result in a carry
or borrow of thehighest order bit, otherwise reset.
DESCRIPCIN DE TERMINALES
El microprocesador Z80 est integrado en una pastilla de 40 pines.

Estos terminales pueden agruparse funcionalmente como muestra la siguiente


figura:

Bus de direcciones El bus de direcciones est formado por 16 lneas que


van desde la lnea A0 hasta la lnea A15. Estas lneas poseen 3 estados,
de modo que cuando el bus de direcciones est inactivo, ellos se
encuentran en un estado de alta impedancia.
Cuando el procesador maneja dispositivos de I/O, las 8 lneas menos
significativas de este bus contienen la direccin del dispositivo, la cual
puede tener un valor entre 0 y 255(d).
Por otro lado, las lneas menos significativas de este bus contienen,
durante un lapso en ejecucin da cada instruccin, el valor presente en
el registro de Refresh de memoria R.

Bus de data El bus de datos est formado por 8 lneas que van desde la
lnea D0 a la lnea D7. Este bus es bidireccional permitiendo la
transferencia de informacin desde la CPU haca la memoria o
dispositivos de I/O y viceversa. Es tambin un bus de 3 estados.

Alimentacin El microprocesador Z80 requiere solamente de 2 lneas de


alimentacin 0 y5 V, con un margen de 5%, y consume una corriente
mxima de 200 mA.

Seales de Reloj El Z80 requiere solamente una seal de reloj. La


frecuencia de esta seal para el Z80 es de 4[MHhz].

Seales de control

Control de los buses.


La CPU posee dos seales asociadas con el control de los buses de
direccin y datos. Estas seales son la seal de entrada BUSRQ y la
seal de salida Busak
La seal BUSRQ es generada por un dispositivo externo para obtener el
control de los buses y realizar una operacin de acceso directo a
memoria.
Cuando un dispositivo externo solicita el control de los buses colocando
en 0 la lnea BUSRQ, el procesador concluye la instruccin que estaba
ejecutando y responde mediante la seal de reconocimiento BUSAK.
Colocando la seal de salida Busak en 0, el procesador informa al
dispositivo externo que el bus de direccin, el bus de datos y las seales
de control de salida se encuentran en estado de alta impedancia y en
consecuencia, se encuentran libres para ser controladas por dicho
dispositivo.

Control de la memoria
El Z80 posee 4 seales relacionadas con las operaciones de control de
la memoria. Ellas son las seales MREQ, RD, WR y RFSH.
La seal MREG es una seal de 3 estados que se activa en 0 indicando
que el bus de direcciones contiene una direccin vlida.
Las seales RD y WR indican a la memoria si la CPU efectuar una
operacin de lectura o escritura.
La seal RFSH no est asociada con la operacin normal de la memoria
sino que se usa solamente con memoria dinmica. Las memorias
dinmicas requieren que se refresque peridicamente la informacin
almacenada antes que se degrade.

Control de memoria
MREG

RFSH

RD WR

Leer memoria
Escribir en memoria
Ciclo de refresco (7 bits)

0
0
0

0
0
0

Control de I/O
La CPU usa la seal IORQ' para informar a los dispositivos de I/O que
los 8 bits menos significativos del bus de direcciones contienen una
direccin de I/O vlida

Control de I/O

Leer dispositivo I/O

IORQ'

RD

Escribe dispositivo I/O 0

WD

Control de las Interrupciones


El microprocesador Z80 posee dos lneas de entrada a travs de las
cuales un dispositivo externo puede solicitar la interrupcin del programa
que se est ejecutando y la ejecucin de una rutina que maneje dicha
interrupcin. Estas lneas son la NM I y INT'.

Seales Miscelneas.
En este grupo se encuentran las seales M1', RESET, WAIT y HALT. La
seal RESET es una seal de entrada a la CPU y que se activa (se
coloca en 0) para efectuar una operacin de reset general. Esta seal es
puesta en cero en los microcomputadores que usan este
microprocesador, inmediatamente despus que se aplica la energa y
cada vez que se resetea el sistema.
Cuando se activa la seal RESET, las interrupciones quedan en modo 0,
los registros R e I quedan tambin en cero y el Program Counter carga
la direccin 000H.

La seal WAIT es una seal asociada con memorias o dispositivos de I/O


lentos.
Mientras, la seal Wait est en cero, la CPU no hace nada esperando la
respuesta de la memoria o del dispositivo de I/O lento.

Finalmente, la seal HALT es una seal que se activa (se pone en cero)
cuando se ejecuta una instruccin HALT.
Cuando el microprocesador est en estado HALT realiza solamente
instrucciones NOP (No operation) para asegurar el adecuado refresh de
memoria. Se puede salir de este estado solo mediante interrupciones.

Você também pode gostar