Parametri
CARATTERISTICHE STATICHE DELLE PORTE LOGICHE
NOMENCLATURA:
1) Livelli logici alti
Dove Ioh è detta corrente di Source
2) Livelli logici bassi
Dove Iol è detta corrente di Sink.
1
Funzione di trasferimento:
Esempio con una porta NOT:
a) Caso ideale
b) Caso reale
1b) Curva semplificata
2b) Curva non semplificata
2
Margine di rumore: Il margine di rumore di una porta logica è la misura della sua immunità
al rumore, cioè la sua capacità di mantenere un buon funzionamento nonostante le
fluttuazioni della Vi dovute al rumore.
I valori limite indicati dai manuali per la tensione d'uscita di una porta TTLSTD sono
Vol(max)=0.4V e Voh(min)=2.4V.
D'altra parte il costruttore assicura che la porta è in grado di sentire al suo ingresso un livello basso
finchè Vi si mantiene al di sotto di Vil(max)=0.8V e di sentire un livello alto finchè Vi si mantiene
superiore a Vih(min)=2V.
Da ciò si deduce che il pilotaggio di una porta da parte di un'altra è assicurato in maniera
ottimale. Prende il nome di margine di rumore (NM) la differenza tra le tensioni di ingresso e
uscita nei due stati possibili. In particolare:
- Livello basso:
Vol max + NMl < Vilmax
NMl=Vil(max)-Vol(max)=0.4V
- Livello alto:
Vohmin - NMh > Vihmin
NMh=Voh(min)-Vih(min)=0.4V
3
Ritardo di propagazione. E' il ritardo con il quale l'uscita cambia stato rispetto all'ingresso. In
genere è diverso nel passaggio tra i due stati alto-basso o basso-alto ma si assume
convenzionalmente per la porta TTL standard il valore di 10ns.
Tempi di Set-up e di Hold: sono i tempi che mi assicurano una lettura sicura del livello di
ingresso.
4
Fan out. E' la capacità che ha l'uscita di una porta logica di pilotare porte in parallelo. Ad es. per
quanto riguarda la TTLSTD al livello basso l'uscita può assorbire fino a 16mA; d'altra parte un
ingresso a livello basso può erogare fino a 1.6mA; di conseguenza un'uscita può pilotare fino a 10
ingressi. A livello alto i valori di Ioh=-400uA e Iih=40uA confermano che anche in questo caso
il fan out vale 10.
a) LIVELLO ALTO
b ) LIVELLO BASSO
Dissipazione di potenza. I valori della corrente assorbita variano con il tipo di porta e con lo stato
della sua uscita. Per l'integrato 7400, comprendente quattro porte NAND, i valori tipici sono
rispettivamente Icch=4mA, con uscite alte, e Iccl=12mA con uscite basse. Si noti come con
uscita alta la porta consumi meno.
Prodotto velocità-potenza. Ha lo scopo di fornire una base di comparazione per i circuiti logici
nella situazione in cui il ritardo di propagazione (tphl , tplh ) e la Dissipazione di potenza
costituiscono entrambi fattori importanti per la scelta della porta logica opportuna.
Esempio di confronto:
HCMOS = 1,4 PJ (picojoule)
TTLLS = 20 PJ
5
Le sottofamiglie TTL
Dalla TTL standard(STD) hanno preso origine nel tempo numerose sottofamiglie, di cui le più
usate attualmente sono quelle contraddistinte dalle sigle LS, S, ALS e AS. I vari
integrati conservano gli stessi numeri dei corrispondenti della serie STD, con l'aggiunta della sigla
tipica di ogni serie. Gli integrati 74LS00 e 74ALS00 contengono, ad esempio, ciascuno quattro
porte NAND a due ingressi della serie TTL LS e TTL ALS rispettivamente.
Serie TTL LS. E' attualmente la serie più diffusa per impieghi di tipo generale (general purpose).
Viene definita TTL a bassa dissipazione (low-power Schottky). Per ridurre il consumo sono
state impiegate resistenze interne più elevate. Ciò comporta per un ritardo maggiore nella risposta
dell'uscita. Per ovviare all'inconveniente si è fatto ricorso all'uso di transistor Schottky che
presentano tempi di commutazione notevolmente inferiori rispetto ai normali BJT. Grazie all'uso
di questi transistor ed ai miglioramenti circuitali si è riusciti a mantenere il ritardo di
propagazione della TTL LS nei limiti di quello della TTL STD (10ns), ma con una P dissipata
notevolmente inferiore (2mW).
I livelli di tensione sono leggermente diversi da quelli della TTL STD (verificabili sui data sheet
del costruttore).
Serie TTL S. La serie TTL Schottky impiega nella struttura delle porte il transistor Schottky e
resistenze di valore più basso rispetto alle TTL LS. Raggiunge così ritardi di propagazione
molto bassi (3ns), anche se a spese di un consumo di potenza piuttosto elevato.
Serie TTL avanzate. Le TTL avanzate ALS e AS sono le serie più recenti della famiglia e
presentano notevoli miglioramenti rispetto alle precedenti. Oltre ad utilizzare i transistor Schottky,
impiegano soluzioni circuitali ottimizzate e processi tecnologici che consentono di ridurre
notevolmente le dimensioni dei componenti e di conseguenza le capacità parassite. I tempi di
propagazione risultano così decisamente ridotti.
La serie TTL ALS (advanced LS) presenta consumi ridottissimi. La serie TTL AS (advanced
Schottky) è quella che ha il minor ritardo di propagazione (1.5ns).
6
FAMIGLIE UNIPOLARI
Le tecnologie che impiegano i MOS, grazie alle dimensioni estremamente ridotte dei transistor,
consentono di raggiungere la più alta densità di integrazione. Attualmente con questa tecnologia si
realizzano integrati VLSI quali microprocessori, memorie ad alta densità ecc.
I CMOS commerciali - Le sottofamiglie CMOS.
I CMOS o MOS complementari costituiscono un'importante famiglia logica che, come la TTL, ha
dato origine a numerose sottofamiglie. Accanto alle classiche, ma tuttora valide, serie 4000 e 74C,
troviamo le famiglie ad alta velocità 74HC e 74AC, sviluppate e commercializzate in tempi
recenti.
Serie 4000. Nell'ambito di questa famiglia, la serie più diffusa è quella contrassegnata con il
suffisso B, iniziale di buffered. La struttura di una porta 4000B comprende, oltre allo stadio che
implementa la funzione desiderata, una coppia di stadi invertitori che fungono da buffer, separano
cioè elettricamente lo stadio di ingresso dall'uscita, migliorando nettamente le caratteristiche della
porta.Al contrario della TTL, l'alimentazione della serie 4000 non è fissata rigidamente, ma può
essere scelta in una gamma da 3 a 18V.
Teoricamente l'immunità al rumore arriva quasi a Vdd/2; più precisamente i costruttori
forniscono come valore limite il 45% di Vdd. Ciò significa che per variazioni di Vi da 0 a 0,45Vdd
la porta continua a sentire al suo ingresso uno 0 logico, così come per Vi compreso fra 0,55Vdd e
Vdd continua a sentire all'ingresso un 1 logico. Tuttavia i costruttori forniscono cautelativamente i
valori Vil(max)=30%Vdd e Vih(min)=70%Vdd. Ad esempio per Vdd= 5V si ha Vil(max)=1,5V e
Vih(min)=3,5V.
I livelli di uscita dipendono ovviamente dalla corrente. Per corrente praticamente nulla, caso
che si verifica quando il carico è costituito da altre porte CMOS, vengono forniti i valori limite
Voh(min)=Vdd-0,05V e Vol(max)=0,05V.
Serie 74C. Questa serie presenta caratteristiche simili alla serie 4000B ma non è bufferizzata. Ha
la particolarità di essere equivalente come funzionalità e piedinatura alla famiglia TTL;
ciò significa che integrati con la stessa sigla nelle due famiglie contengono le stesse funzioni
logiche e presentano le stesse connessioni esterne. E' così possibile implementare direttamente in
CMOS progetti nati per la TTL senza alcuna modifica.
Serie 74HC e 74HCT. Il limite principale dei CMOS tradizionali, la scarsa velocità, viene
brillantemente superato con le serie CMOS veloci che possono competere ormai, quanto a
frequenza di lavoro, con la serie TTL LS.
La serie 74HC (high-speed CMOS) comprende la maggior parte delle funzioni delle serie TTL e le
più importanti della serie 4000. La tensione di alimentazione deve essere compresa fra 2 e 6V. I
valori limite delle correnti di uscita sono più elevati di quelli della serie 4000, risultando pari a + o 4mA.La serie 74HCT (high-speed CMOS TTL compatible) presenta le stesse caratteristiche
della serie precedente con la differenza che i livelli di ingresso sono gli stessi della TTL LS. In
questo modo vengono eliminati tutti i problemi di interfacciamento fra porte CMOS e TTL.
Serie 74AC e 74ACT. Il processo di riduzione delle dimensioni del MOS ha portato recentemente
alla produzione di nuove famiglie che hanno tempi di propagazione confrontabili con quelli delle
TTL ALS, con i benefici di un consumo molto più contenuto. Anche in questa famiglia è
disponibile una serie, la 74ACT, caratterizzata da livelli di ingresso TTL compatibili.
7
TTL: norme di impiego
Come è noto, gli integrati TTL vanno alimentati con tensione Vcc=5V; più precisamente per gli
integrati delle serie commerciali 74STD, LS e S la tolleranza sull'alimentazione è del 5%
(Vcc=4,75 - 5,25V), mentre per le serie militari 54 e le serie ALS e AS è del 10%.
Per fornire la tensione di alimentazione è adatto, ad esempio, il regolatore 7805, in grado di fornire
una tensione stabilizzata di 5V con una corrente fino a 1,5A. temperatura dell'ambiente di lavoro
deve essere compresa tra 0 e 70°C per la serie commerciale 74 e tra -55 e +125°C per la serie
militare 54.
Nei fogli tecnici si trovano i due parametri Icch e Iccl che indicano le correnti assorbite
dall'alimentazione dell'integrato con le uscite delle porte rispettivamente a livello alto e a livello
basso. Per avere la potenza dissipata dall'integrato basta moltiplicare questi valori per 5V. Ad
esempio per il 7400 si legge Icch=4mA e Iccl=12mA. Supponendo che le porte lavorino con un
duty cycle del 50%, cioè che le uscite siano alte per la metà del tempo e basse per l'altra metà, si
ottiene una corrente media assorbita di 8mA. La potenza media dissipata dall'integrato vale
Pd=Icc*Vcc=8*5=40mW. Essendo quattro le porte contenute nel 7400, ciascuna dissipa il valore
tipico di 10mW. Per la porta 7400:
Icch = 4mA Iccl = 12 mA
con δ = 50%
Imedia = 8 mA per cui
-3
Pd = 8 * 10 * 5 = 40 mW
Gli ingressi inutilizzati non devono mai essere lasciati scollegati perchè, per una questione
costruttiva tipica dei TTL, in questo caso è come se a tali ingressi fosse applicato un livello alto.
Se misuriamo la tensione presente ad un ingresso libero vedremo che essa vale circa 1,2V,
mentre il valore tipico di Vil(max) è di 0,8V. Per garantire un corretto funzionamento questi
ingressi andranno collegati a massa per le porte OR e NOR e all'alimentazione Vcc per le porte
AND e NAND. Nella serie LS gli ingressi non utilizzati possono essere collegati direttamente a
Vcc. Conviene che le porte non usate di un integrato siano lasciate nello stato con uscita alta. Dai
valori di Icch e Iccl si vede infatti che con uscita alta il consumo è minore.
Se un ingresso di una porta TTL deve essere commutato fra i due livelli logici mediante un
pulsante o un interruttore, si collegherà tale ingresso a massa attraverso una resistenza di pull
down di valore opportuno (vedi schemi sottoriportati) così calcolato per TTL STD:
R=Vil(max):Iil(max) cioè R=0,8V:0,4mA=2K, per garantire il buon funzionamento della porta si
sceglie un valore più basso, tipicamente R=1K. Lo stesso lo si può ottenere con un collegamento
con R di pull-up sempre dello stesso valore. La resistenza, oltre a garantire i livelli logici Vil e Vih,
viene inserita anche per non creare un corto circuito fra Vcc e GND al momento della chiusura
dell'interruttore.
8
CMOS: norme di impiego
L'alimentazione non è rigidamente vincolata come per le TTL, ma può variare da 3 - 18V per le
serie 4000B e 74C, e da 2 a 6V per le HC e AC.
Nella serie 4000B i terminali di alimentazione sono indicati con Vdd (positivo) e con Vss
(negativo); nelle altre serie si usa la convenzione delle TTL, cioè Vcc e GND.
Le frequenze massime di commutazione vanno da circa 5MHz per le serie 4000B e 74C a valori
intorno a 50MHz per la HC e addirittura a 160MHz per la serie AC.
Le temperature di esercizio per i CMOS commerciali, sia della serie 4000B sia di quelle 74HC e
74AC, vanno da -40 a 85°C;per le serie militari sono comprese invece fra -55 e 125°C.
Gli ingressi non utilizzati non devono mai essere lasciati scollegati. La porta verrebbe a lavorare
nella sua zona di transizione e basterebbero disturbi minimi per renderla instabile. Occorre quindi
collegare questi ingressi direttamente a massa (porte OR e NOR) oppure all'alimentazione (porte
AND e NAND).
Se l’ingresso di una porta, ad es. il CLOCK di un contatore, deve essere commutato fra i due
livelli mediante un pulsante o un interruttore è bene applicare a tale ingresso un circuito
antirimbalzo opportuno, come in figura. Anzitutto dovrà esserci sull'ingresso una resistenza verso
massa (10K) che garantisce il livello basso ad ingresso scollegato. In parallelo a tale resistenza
metteremo un condensatore (100nF) che ha il compito di filtrare i picchi di tensione dovuti
all'apertura e alla chiusura del pulsante. In serie con l'ingresso mettiamo una resistenza limitatrice
dei suddetti picchi (1K).
Questo circuito è molto utile nei CMOS, che sono particolarmente sensibili ai disturbi, per evitare
letture sbagliate degli impulsi. La chiusura di un contatto meccanico non è, infatti, stabile
istantaneamente, ma ha delle oscillazioni che potrebbero portare all'ingresso della porta impulsi
alti e bassi in rapida successione, che variano, cioè, diverse volte nella zona di commutazione
dei CMOS che vale all'incirca 1/2Vdd. Si pensi al danno funzionale che potrebbe avere, ad
esempio, un contatore che riceve una serie di impulsi anzichè uno solo.
Schema di circuito antirimbalzo per integrati CMOS
9
CIRCUITO ANTIRIMBALZO
Analizziamo il seguente circuito:
Come si può notare si tratta di un Latch SR inserito all'ingresso di un contatore
incrementato al conteggio tramite un commutatore.
Il Latch serve in tal caso ad eliminare i rimbalzi causati dal commutatore stesso che
potrebbero essere visti dal contatore come impulsi.
Infatti basandoci sulla tabella di verità del Flip-Flop:
funzione
S R Qn+1
Qn+1
0 0
1
1
IMP.
0 1
1
0
SET
1 0
0
1
RESET
1 1
Qn
Qn
MEMORIA
Se il commutatore ha dei rimbalzi,
cioè passando da A a B non ha un
contatto perfetto, si avrà la
situazione con:
S=R=1
e cioè ci si trova nello stato di
MEMORIA e quindi l'uscita non
varia e al contatore non arriva nulla
di nuovo.
10
INTERFACCIAMENTO FRA PORTE TTL E CMOS
Se in un circuito è necessario usare integrati logici appartenenti a famiglie diverse si devono usare
degli accorgimenti idonei.
Occorre cioè interfacciare correttamente, ad esempio, TTL con CMOS o viceversa. Per fare
questo si deve tenere presente dei valori delle tensioni e delle correnti caratteristici di ogni
famiglia. Nella tabella sotto riportata sono presenti i parametri relativi alle famiglie più comuni; i
livelli di tensione dei CMOS sono riferiti ad una alimentazione di 5V.
TTL
CMOS
Vcc
VIH
VIL
VOH
VOL
IIH
-IIL
-IOH
LS
5V
2,0V
0,8V
2,7V
0,5V
20µ Α
0,4 mA 400 µΑ
8 mA
STD
5V
2,0V
0,8V
2,4V
0,4V
40 µΑ
1,6 mA 400 µΑ
16 mA
4000B
5V
3,5V
1,5V
4,95V
0,05V
0,1 µΑ
0,1 µΑ 440 µΑ 440 µΑ
HC
5V
3,15V
0,9V
4,4V
0,1V
0,1 µΑ
0,1 µΑ
4 mA
IOL
4 mA
Interfacciamento TTL/CMOS
Consideriamo il caso di alimentazione comune Vcc=Vdd=5V.
Per quello che riguarda le correnti non nascono problemi dato il basso assorbimento delle CMOS.
Per i livelli di tensione, invece, sorgono problemi dati dal fatto che l'uscita dei TTL può scendere
fino a 2,4V, mentre i CMOS hanno una Vihmin=3.5V. Per alzare il livello dell'uscita dei TTL il
sistema più semplice consiste nel collegare una resistenza di 1K, detta di pull-up, come in
figura 7. Quando l'uscita della TTL si porta a livello alto la resistenza R=1K porta la tensione su
di essa a quasi 5V. Per comprendere il perchè di ciò si deve pensare che la resistenza fra Vcc e
uscita della TTL è dell'ordine di alcuni Mohm per cui, aggiungendo la R come detto, si viene a
creare un partitore di tensione, formato dal parallelo della resistenza fra Vcc e uscita della porta
TTL con la R=1K il risultato del partitore viene ad essere quindi una resistenza di circa 1K sulla
quale cadrà un valore di tensione molto minore di prima per cui si alzerà il valore di tensione
all'uscita della TTL.
Fig.7 Interfacciamento TTL/CMOS con Vcc=Vdd=5V
Se la porta CMOS deve essere alimentata con tensione Vdd >5V non si può usare il collegamento
diretto come in Fig.7 ma ci si deve servire di una interfaccia TTL open collector in grado di
sopportare tensioni di almeno 15V. Allo scopo sono adatti i buffer 7407 e 7417 con la resistenza di
pull-up R collegata a Vdd.
Nel caso si lavori con porte HCMOS, si può interporre fra TTL e CMOS una porta HCT (ad
esempio la HCT34), i cui livelli di ingresso sono TTL compatibili.
11
Interfacciamento CMOS/TTL
Consideriamo il caso di alimentazione comune Vdd=Vcc=5V.
Come è facilmente verificabile non sussistono problemi per quello che riguarda i livelli di tensione
ma possono nascere problemi di corrente. Con uscita bassa le porte della serie 4000B hanno una
Iol=0,44mA mentre le TTL STD hanno una Iil=-1,6mA. In questo caso è necessario l'uso di buffer
4049 o 4050, come in Fig.8, che sono in grado di assorbire una Iol di 4mA.
Se la TTL da pilotare è del tipo LS, invece, non occorre buffer, vedi Fig.9, perchè la Iil di tale porta
è di 0,4mA insorgono però problemi di F.O..
Fig.8 Interfacciamento CMOS4000/TTL STD con Vdd=Vcc=5V
Fig.9 Interfacciamento CMOS/TTLLS
Nel caso di alimentazioni diverse (Vdd >5V) occorre sempre interporre i buffer 4049 o 4050, in
grado di ricevere in ingresso tensioni più elevate della propria alimentazione.
Con gli HCMOS le cose si semplificano poichè queste porte, avendo correnti di source e di
sink=4mA, possono pilotare direttamente sia la porta TTL STD che la porta TTL LS.
12
Per l'interfacciamento con carichi che non siano porte logiche occorre tenere presente i livelli
delle correnti di uscita di source e di sink forniti dal costruttore.
Ad esempio per accendere un led il collegamento corretto è il primo, infatti l'uscita di una porta
TTL LS (le più usate nei nostri laboratori) possono assorbire una Iol=8mA che è sufficìente per
garantire l'accensione del led. In questo caso, naturalmente, l'accensione del led si avrà quando
l'uscita della porta è a livello basso e la corrente può scorrere da Vcc verso la porta e andare a
massa. La corrente di uscita di una TTL LS a livello alto è dell'ordine di 0,4mA, valore
insufficente a pilotare un led (il led potrebbe anche accendersi ma il livello min. di Voh=2,7V
non sarebbe più garantito).
a)
(b)
Fig.10 Pilotaggio di un led con porte TTL: schema (a) corretto; schema (b) non corretto
Per carichi più elevati, o se si desidera che un carico venga pilotato dall'uscita a livello alto, si
può usare un BJT come buffer. Considerando la corrente di base di 0,4mA (Ioh) e un
hFEmin.=100 si possono pilotare carichi che assorbono fino a 40mA Fig11a. Nel secondo schema
Fig.11b la corrente viene fornita anche da Vcc per cui è possibile alimentare carichi ancora
maggiori. Si noti che, quando l'uscita della porta è bassa, la resistenza da 680 ohm limita il
valore di Iol a poco più di 7mA, valore assolutamente accettabile. La resistenza da 1K ha il
compito di velocizzare la commutazione del BJT in off.
Fig . 11
(a)
(b)
13
Si può fare uso anche di porte open-collector, in tal modo la corrente viene fornita solo da Vcc
attraverso la R come in Fig.12, in tal modo si possono pilotare carichi che necessitano di correnti
notevoli.
Fig.12
In una scheda con I.C. digitali occorre prestare particolare cura ai collegamenti di alimentazione e
di massa onde ridurre, per quanto possibile, gli spike (picchi) di tensione dovuti alle
commutazioni degli integrati logici. Conviene, a tale scopo, inserire, fra le piste di alimentazione
e di massa, condensatori per radiofrequenza (ad esempio ceramici da 100nF) in ragione di uno
ogni I.C..Si deve aggiungere anche un condensatore elettrolitico al tantalio fra le piste di
alimentazione di valore da 22uF per ogni scheda utili come riserva di energia per i condensatori
ceramici.
Le correnti disponibili in uscita per la serie 4000B sono piuttosto deboli. Per pilotare carichi non
CMOS, ad esempio un diodo led, si deve fare attenzione alle correnti di uscita nei due livelli.
Si possono usare gli stessi accorgimenti visti per le porte TTL, oppure usare dei buffer, invertenti
o non come il 4049 o il 4050 rispettivamente, che accettano correnti in uscita, a livello basso, fino
a 40mA. In particolare il led dovrà essere pilotato con una alimentazione esterna, attraverso una
opportuna resistenza di limitazione, sfruttando la possibilità della porta di assorbire una corrente
di sink sufficente per accendere un led. Si può, come per le porte TTL, pilotare un bjt per
accendere il led.
La famiglia HC è in grado di fornire correnti tali da poter pilotare direttamente un led.
14
Circuito di master reset
Una semplice ma importante applicazione del transitorio del condensatore è rappresentata dal
circuito in figura, chiamato generatore di reset principale, presente di solito nei sistemi digitali.
Fig. 13
La sua funzione è quella di fornire un impulso di reset al momento dell’accensione del sistema in
modo che gli integrati vengano azzerati e predisposti a partire correttamente.
15
Quando viene collegata la Vcc il condensatore è scarico; la porta NOT sente in ingresso uno 0
logico, quindi vo è a 1. Il condensatore comincia a caricarsi finchè vc, crescendo esponenzialmente,
+
non arriva alla tensione di soglia superiore V . A questo punto la tensione in uscita della porta NOT
commuta al livello basso.
Il diodo inserito nel circuito serve a scaricare velocemente il condensatore quando viene tolta
l’alimentazione.
Il pulsante P serve per dare ancora l’impulso di RESET anche ad accensione avvenuta. Premendo P,
C si scarica istantaneamente e vo sale al livello alto, dando inizio all’impulso. Dopo che il pulsante è
stato rilasciato, il condensatore inizia a ricaricarsi.
I valori riportati sullo schema sono per porte TTL.
Per le CMOS conviene elevare il valore di R (ad es. 100kΩ), abbassando corrispondentemente
quello di C (ad es. 1µF).
16