INTRODUCCION AL MICROPROCESADOR Z80
Enviado por alex2489 • 11 de Mayo de 2012 • 2.658 Palabras (11 Páginas) • 853 Visitas
INTRODUCCION AL MICROPROCESADOR Z80
MICROPROCESADOR Z80
El Z80 es un microprocesador de la empresa Zilog Inc, que surgió de personas que desarrollaron el 8080 en INTEL, por lo que mantiene cierta compatibilidad con este pero mejorando notablemente sus prestaciones. Tuvo gran éxito y se hizo muy popular desde su aparición, por su incorporación al Spectrum y su utilización en muchos otros sistemas, además de ser el microprocesador alrededor del cual se diseñó el sistema operativo CP/M.
1.1.1. Características Del Z80
Bus de datos bidireccional de 8 bits.
Bus de direcciones de 16 bits.
Línea de salida /M1 que indica que el procesador se encuentra en el ciclo máquina de recogida del código de operación en la memoria.
Terminal de salida /MREQ (Memory request) que indica acceso a memoria.
Terminal de salida /IOREQ (Input/Output request) que indica operación de entrada/salida sobre un periférico.
Señales de salida /RD (Read) y /WR (Write) para indicar, respectivamente, operaciones de lectura y escritura.
Línea de salida /RFSH (Refresh) que se activa para indicar que los terminales de direcciones A0-A7 contienen una dirección de refresco. El registro R hace de contador de filas en las operaciones de refresco de las memorias dinámicas.
Línea de salida /HALT que indica que la CPU se encuentra en espera (tras la instrucción HALT ejecuta instrucciones NOP hasta la llegada de una interrupción).
Señal de entrada /WAIT que hace que provoca el retraso de la ejecución de la instrucción, para conectar periféricos más lentos.
Terminal /RESET que inicializa la CPU y pone el PC a cero.
Dos terminales de interrupción: /INT (Programable) y /NMI (No enmascarable).
Señal de entrada /BUSREQ (Bus request) para la petición del bus y señal de salida /BUSACK (Bus acknowledge) para la confirmación de bus cedido que permiten implementar los protocolos de gestión del bus para el DMA y el multiproceso.
1.2. ARQUITECTURA DEL MICROPROCESADOR Z80
1.2.1. La Unidad Aritmética Y Lógica (ALU)
Estas operaciones se realizan a través de un grupo de dispositivos lógicos conocidos, a los cuales se los conoce como unidad aritmética y lógica (ALU) esta efectúa las siguientes operaciones:
1. Suma binaria.
2. Operaciones lógicas.
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 zero.
6. Comparaciones
7. Poner, Limpiar o probar un bit
1.2.2. El Contador De Programa (PC)
Es un registro de 16 bits, que indica al microprocesador la dirección de la localidad de memoria donde se está ejecutando el programa, en la CPU el PC se incrementa en uno, cada vez que el microprocesador lee el código de la instrucción 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.
1.2.3. El Apuntador Del Stack (SP)
El microprocesador Z80 cuenta con el registro de pila (SP) o stack pointer que contiene una dirección de memoria RAM en la cual en forma descendente, se almacenan los contenidos de un par de registros, o 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 instrucción PUSH y para cargar a un par de registros con los dos últimos bytes del stack se utiliza la instrucción POP.
1.2.4. Registros De Propósito 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 propósito general se efectuan por medio de las instrucciones las siguientes funciones;
1. Recibir datos desde la memoria.
2. Enviar datos hacia la memoria.
3. Incrementar o reducir en uno su contenido.
4. Formar una dirección con el contenido de un par de registros.
5. Transferir datos entre los registros.
6. Obtener un operando durante las funciones de la ALU.
1.2.5. Registros De Índice IX e IY.
Es un registros de 16 bits cada uno y conservan direcciones base que se usan para modo de direccionamiento, en un registro de índice se usa como base para apuntar a una región de la memoria. La dirección 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, "desplazamiento" de las instrucciones que emplean direccionamiento con índice, estos desplazamientos se especifican con números enteros signados con el complemento a dos.
1.2.6. Registro De Interrupciones
El Z80 opera en modo de interrupción en el que responde como una "llamada" indirecta en respuesta a una solicitud de interrupción. El registro I se usa para este propósito almacenando los 8 bits más significativos de la dirección indirecta mientras que el dispositivo que interrumpe proporciona los 8 bits menos significativos de la dirección índice, esta característica permite que las rutinas servicio de las interrupciones se localicen en cualquier parte de la memoria y que se puedan accesar en un tiempo muy corto.
1.2.7. Banderas De Estado
El microprocesador Z80 tiene un registro de 8 Flips Flops, en el cual los resultados de las operaciones de la ALU son monitoreados, esta información almacenanada se conoce como banderas de estado, donde estas se actualizan después de cada operación con alguno de los registros.
En si no todas las operaciones modifican los 8 bits del registro de banderas, únicamente seis registran información útil para el programador, cuatro de estas banderas se prueban, usándolas como condiciones de salto (JP), llamada (CALL), o regreso (RET), estas banderas son:
a. Paridad
...