Z80_CTC

Páginas: 5 (1171 palabras) Publicado: 22 de octubre de 2015

Z80-CTC (Counter/Timer Circuit).

Es un circuito temporizador contador de eventos programables (programmable interval timer/counter) y es un dispositivo que permite proporcionar intervalos de tiempo tanto a un mp como a dispositivos externos de un sistema digital, así también, cuenta eventos externos y entrega la cuenta al mp.

Posee 4 canales programables e independientes, que satisfacen losrequerimientos comunes de un sistema de una microcomputadora en lo referente a conteo de eventos, interrupciones, intervalos de tiempo y generación de rangos de reloj. Entre sus aplicaciones podemos mencionar:

1. Interrumpir a un sistema operativo multiusuario para lograr conmutación entre programas.

2. Enviar señales temporizadas con periodos programables a un dispositivo E/S (ejemplo unconvertidor digital/analógico).

3. Generador de baud-rate.

4. Medir retardos de tiempo entre eventos externos.

5. Interrumpir al procesador después de ocurrida una cantidad de eventos externos.

Figura 1. Muestra el diagrama a bloques del CTC


Bus de E/S. Interfaza las señales de datos y de control de la CPU con el bus interno del CTC.

Lógica de control interna. Controla las funcionesde operación del chip, como son: la habilitación, reset y la lógica de lectura y escritura.

Lógica de control de interrupciones. Esta lógica garantiza que las interrupciones del CTC se interfacen correctamente con el sistema de interrupciones del Z80 CPU. La lógica de control da prioridad a la interrupción del CTC a través de la señal IEI. Si IEI es “1”, el CTC tendrá mayor prioridad.Mientras se procesa la interrupción, la lógica de interrupciones tiene la salida IEO en bajo, inhibiendo las operaciones de interrupción en dispositivos de mas baja prioridad. IEO será “1”, si el CTC no se encuentra atendiendo las interrupciones e IEI es “1”.

Figura 2. Muestra la lógica de control de interrupciones





Lógica de control de canales. La lógica de control recibe una palabra de controlde canal de 8 bits, cuando es programado el canal contador/temporizador. La lógica del control de canal decodifica la palabra de control y pone las siguientes condiciones: habilitación de interrupciones, modo de operación (temporizador o contador), valor del preescalar (16 o 256) en modo temporizador, selección de flancos CLK/TRG, modo de disparo (automático

o entrada CLK/TRG) en modotemporizador, si la palabra siguiente es una constante de tiempo y reset por software.

Registro constante de tiempo. Cuando el canal contador/temporizador es programado, el registro de circuito de tiempo recibe y guarda una constante de tiempo de 8 bits (puede ser de 1 a 256, 0 = 256). Esta constante es automáticamente cargada en el contador descendente, cuando el canal es inicializado subsecuentementedespués de cada cuenta 0.

Preescalar. Es usado sólo en modo temporizador, y divide la frecuencia del CLK del sistema por un factor de 16 o 256. La salida del preescalar va al contador descendente durante la operación de temporización.

Contador descendente. El contador comienza con un valor inicial y se decrementa. Dicho decremento depende del modo de operación.


Figura 3. Muestra el modode operación del CTC.
a) Modo temporizador.
b) Modo contador









El valor del contador se puede leer por la CPU en cualquier instante de tiempo, para monitorear las operaciones del sistema.

MODOS DE OPERACIÓN

Modo contador.

Cuando un canal del CTC se programa en este modo se utiliza como contador de eventos externos o pulsos de reloj. Estos pulsos de relojdeben de entrar por la pata CLK/TRG del canal, cada vez que se detecte un pulso activo, se decrementa en uno el valor de una constante de tiempo que inicialmente fue programada en el registro de constante de tiempo del canal. Esta constante es un número binario con un valor máximo de FFH. Cuando dicha constante de tiempo alcanza el valor de 00H, se activa la salida ZC/TO del canal y del valor...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS