Intel 8253 - Timer a intervalli programmabili

Intel 8253 e 8254 sono PTI (Programmable Interval Timer) progettati per microprocessori per eseguire funzioni di temporizzazione e conteggio utilizzando tre registri a 16 bit. Ogni contatore ha 2 pin di ingresso, cioè Clock & Gate, e 1 pin per l'uscita "OUT". Per azionare un contatore, viene caricato un conteggio a 16 bit nel suo registro. A comando, inizia a decrementare il conteggio fino a portarlo a 0, quindi genera un impulso che può essere utilizzato per interrompere la CPU.

Differenza tra 8253 e 8254

La tabella seguente differenzia le caratteristiche di 8253 e 8254:

8253 8254
La sua frequenza operativa è 0-2,6 MHz La sua frequenza operativa è 0-10 MHz
Utilizza la tecnologia N-MOS Utilizza la tecnologia H-MOS
Il comando Read-Back non è disponibile È disponibile il comando Read-Back
Le letture e le scritture dello stesso contatore non possono essere intercalate. Le letture e le scritture dello stesso contatore possono essere intercalate.

Caratteristiche di 8253/54

Le caratteristiche più importanti di 8253/54 sono le seguenti:

  • Dispone di tre contatori a 16 bit indipendenti.

  • Può gestire ingressi da DC a 10 MHz.

  • Questi tre contatori possono essere programmati per conteggio binario o BCD.

  • È compatibile con quasi tutti i microprocessori.

  • 8254 ha un potente comando chiamato READ BACK, che consente all'utente di controllare il valore di conteggio, la modalità programmata, la modalità corrente e lo stato corrente del contatore.

8254 Architecture

L'architettura dell'8254 è la seguente:

Descrizione pin 8254

Ecco il diagramma dei pin di 8254 -

Nella figura sopra sono presenti tre contatori, un buffer del bus dati, una logica di controllo di lettura / scrittura e un registro di controllo. Ogni contatore ha due segnali di ingresso - CLOCK e GATE e un segnale di uscita - OUT.

Buffer bus dati

È un buffer a 8 bit bidirezionale a tre stati, utilizzato per interfacciare l'8253/54 al bus dati di sistema. Ha tre funzioni di base:

  • Programmazione delle modalità 8253/54.
  • Caricamento dei registri di conteggio.
  • Lettura dei valori di conteggio.

Logica di lettura / scrittura

Comprende 5 segnali, cioè RD, WR, CS e le linee di indirizzo A 0 e A 1 . Nella modalità I / O periferica, i segnali RD e WR sono collegati rispettivamente a IOR e IOW. Nella modalità I / O mappata in memoria, questi sono collegati a MEMR e MEMW.

Le linee di indirizzo A 0 e A 1 della CPU sono collegate alle linee A 0 e A 1 dell'8253/54 e CS è collegato a un indirizzo decodificato. Il registro della parola di controllo e i contatori vengono selezionati in base ai segnali sulle linee A 0 e A 1 .

A 1 A 0 Risultato
0 0 Contatore 0
0 1 Contatore 1
1 0 Contatore 2
1 1 Registro delle parole di controllo
X X Nessuna selezione

Registro delle parole di controllo

Si accede a questo registro quando le linee A 0 e A 1 sono a logica 1. Viene utilizzato per scrivere una parola di comando, che specifica il contatore da utilizzare, la sua modalità e un'operazione di lettura o scrittura. La tabella seguente mostra il risultato per vari ingressi di controllo.

A 1 A 0 RD WR CS Risultato
0 0 1 0 0 Scrivi contatore 0
0 1 1 0 0 Scrivi contatore 1
1 0 1 0 0 Scrivi contatore 2
1 1 1 0 0 Scrivi parola di controllo
0 0 0 1 0 Leggi contatore 0
0 1 0 1 0 Leggi contatore 1
1 0 0 1 0 Leggi contatore 2
1 1 0 1 0 Nessuna operazione
X X 1 1 0 Nessuna operazione
X X X X 1 Nessuna operazione

Contatori

Ogni contatore è costituito da un singolo contatore a 16 bit, che può essere utilizzato sia in binario che in BCD. Il suo ingresso e uscita è configurato dalla selezione delle modalità memorizzate nel registro della parola di controllo. Il programmatore può leggere il contenuto di uno qualsiasi dei tre contatori senza disturbare il conteggio effettivo in corso.