INFORME Z80

Microprocesador Z80 TEMA: MICROPROCESADOR Z80 OBJETIVO GENERAL Diseñar un sistema básico con un microprocesador de 8 bit

Views 73 Downloads 1 File size 1MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Microprocesador Z80 TEMA: MICROPROCESADOR Z80 OBJETIVO GENERAL Diseñar un sistema básico con un microprocesador de 8 bits utilizando el microprocesador Z80. OBJETIVOS ESPECÍFICOS  Analizar la estructura del microprocesador, las memorias y de los puertos E/S en el datasheet.  Estudiar cada elemento que compone el sistema.  Conectar esquemáticamente los elementos del sistema. MARCO TEÓRICO Estudio del Microprocesador: mPZ80 DESCRIPCIÓN GENERAL El Zilog Z80 (Z80) es un microprocesador de 8 bits, maneja instrucciones de 16 bits y puede direccionar hasta 64 Kb de RAM. Su arquitectura se encuentra a medio camino entre la organización de acumulador y de registros de propósito general. Si consideramos al Z80 como procesador de arquitectura de registros generales, se sitúa dentro del tipo de registromemoria. CARACTERÍSTICAS GENERALES           

   

Bus de datos de 8 bits Bus de direcciones de 16 bits En total 18 registros de 8 bits y 4 de 16 bits 12 registros de 8 bits que se pueden usar en pares para formar 6 de 16 bits Clock de 4 MHz El set de instrucciones contiene 158 instrucciones. El extenso set de instrucciones incluye operaciones con palabras, bit, byte y cadena de caracteres. Set duplicado de registros de banderas y de propósito general. Dos registros índices de 16 bits. Contador de refresco de memoria dinámica. Bajo consumo de energía * 40mA Tipo (5V, 10MHz en el modo RUN) * 2mA Tipo (5V, 10MHz en modo IDLE1) * 10mA Tipo (5V, 10MHz en modo IDLE2) * 5uA Tipo (5V en el modo STOP) * DC a 10MHz operación (5V ± 10%) Una fuente de alimentación de 5V (5V ± 10%) Temperatura de funcionamiento (0°C a 70°C) Potente función de interrupción 10 modos de direccionamiento

CICLOS DE MAQUINA Y CICLOS DE INSTRUCCION

1

Microprocesador Z80 Se denomina "M1" al ciclo de máquina correspondiente a la búsqueda del código de operación, durante el cual, la pata M1 del microprocesador se coloca a nivel bajo. El ciclo de máquina M1 ocupa 4 ciclos de reloj; un ciclo de reloj dura aproximadamente 0.29 microsegundos (millonésimas de segundo), por lo que el ciclo M1 dura 1.14 microsegundos. Un ciclo de memoria es una operación de lectura o escritura en memoria, emplea 3 ciclos de reloj, y dura 0.86 microsegundos. REGISTROS Los registros constituyen una especie de pequeña memoria interna al microprocesador. El Z-80 tiene registros de 8 y 16 bits, si bien los de 8 bits se pueden agrupar de 2 en 2 para formar uno de 16 bits. Todas las operaciones que realiza el Z-80 se hacen entre números contenidos en los registros, o bien, entre un registro y una posición de memoria; por eso se dice que el Z-80 es un microprocesador orientado hacia los registros. La posibilidad de agrupar dos registros de 8 bits para formar uno de 16, permite al Z-80 realizar operaciones de 16 bits a pesar de ser un microprocesador de 8 bits. El Z-80 tiene, en total, 18 registros de 8 bits y 4 registros de 16 bits. Algunos son de uso general y otros tienen asignadas funciones específicas.  Registros especiales de 16 bits Los cuatro registros especiales de 16 bits son:   

Contador de programa (program counter "pc") Puntero de pila (stack pointer "sp") Registro índice (index x e index y “ix” e “iy”)  Registros especiales de 8 bits

 

VECTOR DE INTERRUPCION (Interrupt "I") Registro de regeneración (refresh "r")  Registros alternativos

   

Acumulador (acumulator "a") Registro de estado (flags "f") Registros de uso general ("b", "c", "d", "e", "h", "l") Registro de instrucciones

PINES DEL Z-80

2

Microprocesador Z80



8 líneas de datos (denominadas: de D0 a D7)



16 de direcciones (denominadas: de A0 a A15).



/RESET: Es un pin de entrada; cuando se activa se resetea el microprocesador, lo cual produce, entre otras acciones, que se cargue 0000h en el contador de programa.



/M1: Es un pin de salida, se activa cuando el microprocesador está buscando el código de operación de una instrucción.



/MREQ: Es un pin de salida, se activa cuando el microprocesador está accediendo a la memoria, ya sea en un ciclo de lectura o de escritura

 /IORQ: Es un pin de salida, se activa cuando el microprocesador está accediendo a un dispositivo de entrada/salida, ya sea en un ciclo de lectura o de escritura.  /RD: Es un pin de salida, se activa cuando el microprocesador está ejecutando un ciclo máquina de lectura; ya sea lectura de memoria o lectura de un dispositivo de entrada/salida.  /WR: Es un pin de salida, se activa cuando el microprocesador está ejecutando un ciclo máquina de escritura; ya sea escritura en memoria o escritura en un dispositivo de entrada/salida.  /HALT: Detener la señal Indica que la CPU ha ejecutado una instrucción de detener  /RFSH: Es un pin de salida; el microprocesador lo activa en los últimos ciclos de reloj de todos los ciclos máquina M1, para realizar el refresco de la memoria dinámica.  /WAIT: Es un pin de entrada; que indica al microprocesador que la operación de memoria o entrada/salida que estaba realizando aún no se ha terminado por lo que debe incluir una serie de estados de espera mientras que esta señal permanezca activa.  /INT: Señal de petición de interrupción enmascarable Interrupción es generada por LSI periférico. Esta señal será aceptado si la habilitación de interrupción del flip-flop (FIB) se fija en "1". /INT es normalmente cable-O y requiere una tracción externa para estas aplicaciones. Consideraciones de Operación Recomendada Parámetr o Vcc GND VIL VIH

Descripción

Mínimo

Máximo

4.5 V 0.0 V -0.3 V

Típic o 5.0 V 0.0 V 0.0 V

Alimentación Tierra Entrada de voltaje baja Entrada de voltaje alta

2.2 V

-

5V

5.5 V 0.0 V 0.8 V

3

Microprocesador Z80

Tabla. 1 Valores de operación Z80

Puertos de comunicación: Z80-PIO ADAPTADOR DE PUERTOS Z80 PIO DESCRPCION GENERAL El Z8O paralelo de I/O (PIO) es un circuito programable, el dispositivo de puerto dual que proporciona un interfaz TTL compatible entre dispositivos periféricos y la CPU Z80. Note que los paquetes de QFP están sólo disponibles en la versión CMOS. La CPU configura la Z8O-PIO para interactuar con una amplia gama de dispositivos periféricos sin ajena lógica necesaria, típicos dispositivos periféricos que son totalmente compatibles con el Z80-PIO incluyen mayoría de los teclados, lectores de cinta de papel y puñetazos, las impresoras, los programadores de PROM, etc. Z8O-PIO se empaqueta en un DIP de 40 pines, o un PLCC de 44 pines, o un PFO de 44 pines. NMOS y versiones CMOS están también disponibles. CARACTERISTICAS          

Proporciona una interfaz directa entre el sistema de microcomputadora Z80 y dispositivos periféricos. Cuatro modos operativos programables salida, entrada, bidireccional (solamente Port A), y Bit de control. Interrupciones programables sobre condiciones del estado de periféricos (1.5mV - 1.5V). NMOS versión para soluciones de costo de funcionamiento sensible. CMOS versión para los diseños que requieren alta velocidad y bajo consumo de energía. NMOS Z0842004-4MHz, Z0842006-6.17Mhz. 6 MHz compatible con la versión 6.144 MHz operación del reloj de la CPU. Voltajes en Vcc con respecto a Vss (-0.3V a +7.0V) Voltajes en todas las entradas con respecto a Vss (-0.3V a Vcc+0.3V) Temperatura de almacenamiento (-65°C a +150°C)

MODOS DE TRABAJO El Z80PIO trabaja en cuatro modos de trabajo. 

MODO 0, 1 O 2, (entrada, salida de la señal, o bidireccional)

4

Microprocesador Z80 Requiere que al menos uno, y hasta tres, palabras de control por puerto. Estas palabras son:  Modo de palabra de control. Selecciona el modo de funcionamiento del puerto. Esta palabra es necesaria y puede ser escrita en cualquier momento.  Interrupción de la Palabra de Vector. El Z80 PIO está diseñado para utilizarse con la CPU Z80 en el modo de interrupción 2. Esta palabra debe ser programada si las interrupciones se van a utilizar.  Interrupción de la palabra de control o interrumpir Deshabilitar la Palabra: Controla el activar o desactivar la función de la PIO de interrupción. 

MODO 3 (control de bits).

Requiere al menos dos, y hasta cuatro de las palabras de control.  Modo de palabra de control. Selecciona el modo de funcionamiento del puerto. Esta palabra es necesaria y puede ser escrita en cualquier momento.  I/O Registro palabra de control. Cuando se selecciona el modo 3, el Modo de Control de la Palabra debe ser seguida por la E/S de control de palabra. Esta palabra configura el I/O registro de control, que define si las líneas de puerto son entradas o salidas.  Interrumpir la palabra de control. En el modo 3, handshake no es usada. Las interrupciones son generadas como una función lógica de los niveles de señal de entrada. DESCRIPCION DE PINES

5

Microprocesador Z80

Fig.1 Disposición de pines Fig.2 Disposición de delpines Z80 del Z80 PIO

D7 - DO Z80-CPU bus de datos (bidireccional tri-estatal). Este bus se utiliza para transferir todos los datos y comandos entre la Z80CPU y la Z80-PIO. D0 es el bit menos significativo del bus. PORTSEL B/A Sel puerto B o A Select (insumos, activos de alto). Este pin define qué puerto tendrá acceso durante la transferencia de datos entre la CPU y Z80-la-PIO Z8O. Un nivel bajo en este pin selecciona el puerto A, mientras que un nivel alto selecciona Puerto B. A menudo, el bit A0 de la CPU se utiliza para esta función de selección. CONTSEL C/D Sel de control o datos de Select (insumos, activos de alto). Este pin define el tipo de transferencia de datos a ser realizado entre la CPU y la PIO. Un nivel alto en este pin durante la escritura de la CPU a la PIO hace que el bus de datos Z80 debe interpretarse como un comando para el puerto seleccionado por el B/A, seleccione la línea. Un nivel bajo en este pin significa que el bus de datos Z80 se utiliza para transferir datos entre la CPU y la PIO a menudo el bit Al de la CPU se utilizará para esta función. CE Chip Enable (insumos, activos de baja).

6

Microprocesador Z80 Un nivel bajo en el pin permite a la PIO aceptar el mando o entradas de datos de la CPU durante un ciclo de escritura o para transmitir datos a la CPU durante un ciclo de lectura. La señal es generalmente una decodificación de cuatro de I / O los números de puerto que abarcan los puertos A y B, los datos de control. } Φ El reloj del sistema (entrada). El Z80-PIO utiliza el reloj Z80 sistema estándar para sincronizar determinados señales internamente. Este es un reloj de una sola fase. /M1 (Ciclo de máquina) Es una señal de la CPU. Esta señal de la CPU se utiliza como un pulso de sincronización para controlar varias operaciones internas de la PIO. Cuando / M1 está activa y el RD de señal es activa, el Z80-CPU busca una instrucción de la memoria. Por el contrario, cuando / M1 se activa y / IORQ está activo, la CPU está reconociendo una interrupción. Además, la señal de Ml / tiene otros dos funciones dentro de la Z80-PIO. /IORQ de entrada /salida Solicitud del Z80-CPU (entrada, activo bajo). La señal /IORQ se utiliza junto con el B/A, C/D Seleccione, el ICE, y /RD señales para transferir los comandos y datos. Cuando /CE, /RD y /IORQ están activos, el puerto dirigido por B/A transferirá datos a la CPU (una operación de lectura). Por el contrario, cuando /CE y /IORQ están activos pero /RD no está activo, entonces el puerto dirigido por B/A se escribirá en la CPU ya sea con datos o información de control según lo especificado por la C / D Selección de señal. Además, si /IORQ y /M1 se activa al mismo tiempo, la CPU está reconociendo una interrupción y el puerto de interrumpir automáticamente colocar su vector de interrupción en el bus de datos de la CPU si es la prioridad de dispositivo de alto interés en un interruptor. / RD Reed Ciclo Condición Jurídica y Social de la Z80-CPU (entrada, activo bajo). /RD es una lectura activa MEMORY o E/S de operación de lectura en curso. La señal de RD / se utiliza con A / B Seleccione, C/D, /CE y /IORQ señales para transferir datos desde el Z80-Z80 PIO a la CPU. /IEL Entrada para Interrumpir Habilitar (entrada, activos de alto). Esta señal se utiliza para formar una prioridad de conexión en cadena de interrupción cuando más de un dispositivo impulsado por interrupción se está utilizando. Un nivel alto en el pin indica que otro dispositivo de mayor prioridad no está siendo atendido por un servicio de rutina de interrupción de la CPU. /OEI Salida para Interrupción Habilitar (salida, activos de alto). La señal de la OEI es la señal de otra índole necesaria para formar una cadena de sistema de prioridades. Es alta sólo si IEL es alta y la CPU no es una interrupción de servicio de este PIO. Por lo tanto, esto bloquea la señal de dispositivos de menor prioridad de la interrupción, mientras que una mayor prioridad /INT 7

Microprocesador Z80 Petición de interrupción (producción, drenaje abierto, activo bajo). Cuando /INT está activo el Z80 PIO está solicitando una interrupción de la CPU Z80.

Dispositivos de almacenamiento: Memorias RAM 6116 y EEPROM 2826 RAM 6116 El dispositivo 6116 es una memoria de acceso aleatorio, Random Acces Memory (RAM), cuenta con una capacidad de 2048 palabras de 8 bits cada una, es una memoria estática de alta velocidad, está fabricada con la tecnología CMOS, opera con una fuente de alimentación de +5.0 Volts y está dispuesta en una pastilla de 24 terminales. El bus de direcciones consta de once terminales (211=2048), el bit menos significativo es A0 y el más significativo es A10. El bus de datos es de 8 bits y va desde I/O0 hasta I/O7. Tiene además una terminal de habilitación (chip select), y terminales que indican modo lectura o escritura WE y OE ESQUEMA

Fig.3 Disposición de pines de la RAM 6116 RESUMEN DE CARACTERÍSTICAS DE LA MEMORIA RAM 6116     

Organización de la memoria: 2048 X 8 Baja potencia en estado inactivo: 10 µW Baja potencia en estado activo: 160 mW RAM completamente estática: No requiere reloj para su funcionamiento Rango de Temperatura de operación -55 a +125 grados centígrados de acuerdo a estas temperaturas el trabajo de la memoria es distinto lo que se muestra en la tabla siguiente 8

Microprocesador Z80

Tiempo de acceso máximo Corriente Output Enable Corriente de operación máxima Corriente de standby TTL CMOS

-55° 150 ns 60 ns 45mA

+125° 185ns 80 ns 45mA

1.7mA 50µA

2mA 500µA

Tabla. 3 Valores de operación RAM 6116   

Potencia de disipación: 1 Watts Todas sus entradas y salidas son compatibles directamente con la tecnología TTL Es directamente compatible con las memorias de 16K estándar, tipo RAM 6132

Tabla de verdad para operaciones de lectura y escritura

L L

H L

L X

Tabla.6 Tabla de verdad para RAM 6116

OPERACIÓ N Lectura Escritura activación de modos en la

EEPROM 2816 El circuito integrado EEPROM 2816 es una memoria reprogramable y borrable que contiene 2048 localidades de memoria con 8 bits cada una, (2K X 8) y opera con una sola fuente de alimentación de + 5 V. Está fabricada con la tecnología NMOS. Es una memoria no volátil, todas las tensiones que usa son compatibles, con la tecnología TTL. ESQUEMA

Fig.4 Disposición de pines de la EEPROM 2816

9

Microprocesador Z80

RESUMEN DE CARACTERÍSTICAS 2816  

Organización de la memoria 2048 X8 Tipo de funcionamiento; chip estático



Tiempos de acceso a lectura; 250 nseg.



Capacidad de corrección para un solo bit tiempo de escritura max, 10 mseg.



Rangos de Temperatura -40°C a +85°C.



Potencia de disipación a) Estado activo; 610 Mw b) Estado inactivo: 295 mW

Tabla de verdad para operaciones

L L

H

L H

de esta memoria OPERACIÓ N Lectura Escritura

Tabla.7 Tabla de verdad para activación de modos en la EEPROM 2816 ESQUEMA DE CONEXIÓN DEL Z80 CON OTROS DISPOSITIVOS Y MEMORIAS

10

Microprocesador Z80

Fig.4 Tabla de verdad para EEPROM 2816

activación de modos en la

ARQUITECTURA DEL SISTEMA Este procesador está concebido precisamente para una arquitectura Von Neumann, por lo cual se accede a las dos memorias (datos y programa) mediante un único bus de direcciones.  Alimentación de todo el sistema 5V  Frecuencia de reloj escogida 4MHz  Otros elementos utilizados para la construcción del sistema 



Regulador 7805: Estabiliza el voltaje de 5V para todo el sistema. Decodificador 74LS138N: El decodificador es un circuito que recibe n entradas y produce 2n salidas. Puede verse como un generador de min términos, puesto que cada salida corresponde a una de las 2n combinaciones de entrada. De todas las salidas, solo se generará un 1 en la salida cuyo sub índice corresponde al código binario de la combinación de entrada. Los decodificadores se utilizan en los sistemas digitales para diversas aplicaciones, como lo son: direccionar una localidad de memoria, conversión de datos binarios, y para generar funciones lógicas

11

Microprocesador Z80

Fig.5 Disposición de pines de Decodificador 74LS138

Arquitectura del microprocesador Z80

12

Microprocesador Z80

Fig.6 Arquitectura microprocesador Z80 Arquitectura fundamental

del

13

Microprocesador Z80

Fig.7 Arquitectura microprocesador Z80

Fundamental

del

14

Microprocesador Z80 CONCLUSIONES  El sistema es simple debido a su arquitectura  Zilog, el fabricante de este procesador brinda además algunos elementos compatibles con éste, como es el caso del Z80 PIO.  EL Z80 PIO no necesita direccionamiento pues no es un dispositivo de almacenamiento  EL Z80 PIO puede recibir no solo datos (información);sino también comandos (configuración).  En el diseño no se necesita multiplexar los buses de dirección y de datos, pues son independientes RECOMENDACIONES  Es necesario analizar las tablas de verdad antes de conectar los pines correspondientes  Es importante no dejar las entradas flotantes se debe asegurarlas a un estado lógico, utilizando las dos configuraciones de resistencias Pullup o Pulldown  Para el diseño es importante determinar la aplicación y el ambiente de trabajo, pues con esto se puede determinar la utilización de elementos para que el sistema soporte las condiciones de operación. BIBLIOGRAFÍA  http://www.datasheetcatalog.com  http://proton.ucting.udg.mx/dpto/maestros/mateos/z80/arquitectura/arqu itectura.html  http://www.z80.info/zip/z80piomn.pdf  http://proton.ucting.udg.mx/dpto/maestros/mateos/memorias/memorias. html  http://www.speccy.org/curso-cm/fr_cap3.html  http://medusa.unimet.edu.ve/sistemas/bpis03/decodificadores.htm

15