Sei sulla pagina 1di 39

Capitolo 7

Circuiti logici
Indice
7.1 Porte logiche . . . . . . . . . . . . . . . . . . . . . . 4
7.1.1 Parametri elettrici statici delle porte logiche . . . . . 4
7.1.2 Compatibilit tra porte logiche . . . . . . . . . . . . 8
7.1.3 Margini di rumore . . . . . . . . . . . . . . . . . . . 9
7.1.4 Fan-out . . . . . . . . . . . . . . . . . . . . . . . . . 9
7.1.5 Famiglie logiche . . . . . . . . . . . . . . . . . . . . . 10
7.1.6 Ingressi delle porte logiche . . . . . . . . . . . . . . . 11
7.1.7 Uscite delle porte logiche . . . . . . . . . . . . . . . 14
7.2 Cenni sulla famiglia logica TTL . . . . . . . . . . . 17
7.3 Porte CMOS . . . . . . . . . . . . . . . . . . . . . . 18
7.3.1 Logica statica complementare . . . . . . . . . . . . . 18
7.3.2 Logica nMOS-like . . . . . . . . . . . . . . . . . . . 25
7.3.3 Logica dinamica . . . . . . . . . . . . . . . . . . . . 26
7.3.4 Logica a Transmission Gate . . . . . . . . . . . . . . 29
7.4 Esempi pratici . . . . . . . . . . . . . . . . . . . . . 31
7.4.1 Calcolo di fan-out . . . . . . . . . . . . . . . . . . . 31
7.4.2 Pilotaggio di LED . . . . . . . . . . . . . . . . . . . 32
7.4.3 Wired-or . . . . . . . . . . . . . . . . . . . . . . . . 34
7.5 Comportamento dinamico delle porte logiche . . 37
7.5.1 Denizioni . . . . . . . . . . . . . . . . . . . . . . . . 37
7.5.2 Ritardo di propagazione . . . . . . . . . . . . . . . . 37
7.5.3 Considerazioni energetiche . . . . . . . . . . . . . . . 39
I
transistori in commutazione costituiscono la base dei circuiti digitali, in
primis delle porte logiche. Nel corso di Elettronica Applicata siamo interessati
a studiare le porte logiche ponendo laccento non sulle funzioni logiche svolte, ma
sulle caratteristiche elettriche statiche e dinamiche dei circuiti che le realizzano.
La nostra trattazione sar quindi in massima parte elettronica e non lo-
gica. Nel seguito supporremo che siano gi noti i teoremi di base dellalgebra
booleana, le funzioni logiche combinatorie e sequenziali. Quando potremo, uti-
lizzeremo per il nostro studio le porte elementari, in particolar modo linverter.
Quasi sempre i risultati ottenuti studiando le caratteristiche elettriche di questo
dispositivo possono essere estesi a porte di complessit qualunque.
3
(a)
1
(b)
V
AL
(c)
Figura 7.1: Simboli logici dellinverter: (a) standard de facto (b) standard IEEE
(c) con connessione esplicita alle alimentazioni.
7.1 Porte logiche
Cominciamo lanalisi dei circuiti digitali considerando le porte combinatorie ele-
mentari. Nel capitolo sui transistori in commutazione abbiamo gi analizzato dei
circuiti che svolgono la funzione di inverter, infatti sia il circuito base utilizzato
per lo studio del BJT, sia quello introdotto nello studio del MOSFET, producono
sul carico una uscita bassa in corrispondenza di un valore elevato della tensione
dingresso, mentre generano unuscita alta in corrispondenza ad un valore basso
di ingresso. La funzione logica realizzata dunque linversione (NOT), funzione
propria dellinverter.
Nel seguito assoceremo in generale il livello elettrico alto (anche detto H)
al livello logico 1, il livello basso (L) al livello logico 0. Tale associazione, detta
logica positiva, usuale ma non obbligatoria. Ci sono casi in cui conviene as-
sociare L alluno logico e H allo zero logico. In questo caso si parler di logica
negata.
E sempre possibile rappresentare una porta logica mediante lo schema elet-
trico che realizza la funzione logica, ma diventa molto dicile progettare e ana-
lizzare il circuito. Nellelettronica circuitale si preferisce dunque attuare una rap-
presentazione di livello pi alto, astraendo dalla realizzazione circuitale. Esistono
diversi standard di disegno delle porte logiche, tra cui uno denito dallIEEE,
che per non ha avuto molta fortuna tra i progettisti. Noi utilizzeremo lo stile
di disegno pi diuso, anche se mai standardizzato, in cui linverter rappre-
sentato come in gura 7.1a. La gura 7.1b rappresenta il simbolo IEEE mentre
in 7.1c sono esplicitati i terminali di alimentazione della porta, generalmente
omessi negli schemi dei circuiti digitali ma fondamentali per il funzionamento
del dispositivo.
7.1.1 Parametri elettrici statici delle porte logiche
Il circuito interno delle porte logiche (anche dellinverter) generalmente pi
complesso di quelli visti nel capitolo sui transistori in commutazione. Studiere-
mo in seguito la realizzazione circuitale di alcune porte logiche. Prima per
necessario concentrarsi sui parametri statici di ingresso e uscita di questi disposi-
tivi, che analizzeremo astraendo dalla realizzazione circuitale. Abbiamo appena
parlato di tensioni di ingresso e di uscita alte o basse. Occorre per una de-
nizione pi precisa, che indichi il campo di tensioni ammissibili per lingresso
di una porta logica e di quelle attese alluscita della porta stessa.
4
Utilizziamo di nuovo linverter come caso di studio e realizziamo un esperi-
mento che ci permetta di capire esattamente i termini del problema. Alimentia-
mo linverter alla tensione nominale prevista dal data-sheet (V
AL
) e poniamo in
ingresso un generatore di tensione variabile. Colleghiamo alluscita della porta
un altro inverter identico, al ne di simulare la condizione di uso normale, in
cui ogni porta logica pilota almeno unaltra porta dello stesso tipo (gura 7.2a).
Facciamo variare la tensione di ingresso nel campo tra 0 V e V
AL
. In corrispon-
denza di ogni valore della tensione di ingresso, riportiamo su un graco il valore
di tensione letto sulluscita della porta.
V
i
V
u
V
AL
(a)
(b)
V
i
V
u
Figura 7.2: a) Circuito di prova dellinverter. b) Transcaratteristica.
Una possibile caratteristica V
i
/V
u
dellinverter reale riportata in gura
7.2b. La caratteristica disegnata quella ideale di un inverter in tecnologia
CMOS e la ritroveremo pi avanti. Nella gura si nota chiaramente lesistenza
di un ampio intervallo di tensioni di ingresso che produce una tensione duscita
prossima a quella di alimentazione e di un secondo campo di tensioni di ingresso
che produce una tensione duscita prossima a 0 V. Questi due campi sono sepa-
rati da una zona di transizione in cui si ha il cambiamento di stato della porta.
Se ripetessimo il nostro esperimento con porte dello stesso tipo, oppure con la
stessa porta ma variando la temperatura, il carico o la tensione di alimentazione,
otterremmo caratteristiche simili ma non perfettamente sovrapponibili.
Tensioni di ingresso e uscita
I costruttori delle porte logiche, tenendo conto della variabilit dei processi di
produzione, del campo di temperatura di funzionamento, dei limiti di carico
ammissibile e delle caratteristiche circuitali delle porte logiche, deniscono i
5
campi di tensione di ingresso che in ogni caso sono interpretati dal dispositivo
come livello di tensione basso o alto.
V
IL
V
IH
V
AL
Livello L Livello H
V
i
V
u
Figura 7.3: Campi per le tensioni logiche di ingresso basse e alte.
Nel graco 7.3 si possono notare alcuni livelli di tensione di ingresso parti-
colarmente signicativi:
V
IL
la massima tensione di ingresso che il costruttore garantisce sia
interpretata dal dispositivo come livello basso (L). Perci le tensioni di
livello basso sono comprese tra 0 V e V
IL
.
V
IH
la minima tensione di ingresso che il costruttore garantisce sia
interpretata dal dispositivo come livello alto (H). Perci le tensioni di
livello alto sono comprese tra V
IH
e V
AL
.
Generalmente il livello elettrico L associato al livello logico 0, mentre il
livello H associato alluno logico. Questa associazione, detta logica positiva,
la pi utilizzata ma non lunica possibile. In alcuni casi opportuno associare
luno logico al livello elettrico L e lo zero al livello H. Si parla allora di logica
negativa.
Le tensioni che abbiamo individuato rappresentano i limiti di un intervallo
di valori. In molti testi vengono presentate denizioni formali di V
IL
e V
IH
come
punti a derivata unitaria delle funzioni che descrivono la transcaratteristica della
porta logica, ma esse non vanno tenute in considerazione allatto pratico. Per i
progetti sono da utilizzare i parametri ricavati statisticamente dal costruttore
della porta logica in un intervallo di temperature diverse e condizioni di carico
variabili. Essi sono dichiarati sul data-sheet della porta.
Abbiamo denito i parametri relativi allingresso, ma occorre caratterizzare
allo stesso modo luscita. Dobbiamo per notare che la tensione duscita non
pu essere denita separatamente dalle condizioni di carico. E evidente che nel
caso limite di cortocircuito a 0 V delluscita, non potr aspettarmi una tensione
duscita diversa da 0 V anche nel caso di uscita alta. Dobbiamo quindi legare
i valori di tensione possibili per uscita alta o bassa alla corrente che la porta
in grado di fornire. Di conseguenza i parametri di uscita sono deniti come:
V
OL
: massima tensione di uscita corrispondente a livello logico basso (la
minima si assume pari a 0 V) quando la corrente in uscita dalla porta sia
inferiore a un valore massimo chiamato I
OL
;
6
V
I
I
I
I
O
V
O
Figura 7.4: Denizione delle grandezze elettriche su una porta logica.
V
OH
: minima tensione di uscita corrispondente a livello logico alto (la
massima si assume pari a V
AL
) quando la corrente in uscita dalla porta
sia inferiore a un valore massimo chiamato I
OH
.
Le correnti duscita dipendono dal carico collegato alla porta. I costruttori forni-
scono i valori della tensione duscita in condizioni di carico considerate standard
per il tipo di circuito in esame e non raro il caso in cui esistano diversi valori dei
parametri relativi a correnti diverse. Vedremo che questo vero in particolare
per le porte CMOS.
Correnti di ingresso e uscita
Nel caso standard in cui una porta logica pilota altre porte ad essa compatibili,
ovvio che il carico presente sulluscita della porta costituito dalle correnti
che scorrono nellingresso delle porte pilotate. E quindi necessario specicare
per ogni porta logica non solo qual il campo di tensioni ammesse in ingresso
per i due livelli logici, ma anche quale corrente assorba la porta in funzione del
livello logico presente sullingresso.
Mentre non ci sono dubbi sulla misura delle tensioni di ingresso e uscita, che
sono sempre riferite al potenziale di riferimento del sistema (i famosi 0 V), occor-
re prestare attenzione alla convenzione usata per le correnti. Sia per lingresso
sia per luscita delle porte logiche si utilizza la convenzione degli utilizzato-
ri: cosiderata cio positiva una corrente entrante nel terminale della porta,
indipendentemente dalla funzione svolta.
La convenzione e le grandezze elettriche sono riportate in gura 7.4.
Le denizioni delle correnti di ingresso e uscita sono le seguenti:
I
IL
: massima corrente che la porta richiede in ingresso quando la tensione
di ingresso mantenuta a un valore compreso tra 0 V e V
IL
;
I
IH
: massima corrente che la porta richiede in ingresso quando la tensione
di ingresso mantenuta a un valore compreso tra V
IH
e V
AL
;
I
OL
: massima corrente che pu essere assorbita dalluscita della porta,
quando la porta genera un livello logico basso, anch la tensione di uscita
sia garantita inferiore a V
OL
;
I
OH
: massima corrente che luscita della porta pu fornire al carico, quan-
do la porta genera un livello logico alto, anch la tensione di uscita sia
garantita superiore a V
OH
.
7
Quale segno ci aspettiamo che abbiano le quattro correnti sopra elencate? Per
quanto riguarda le correnti di ingresso, nel caso di porte realizzate con transi-
stor bipolari, possiamo ragionare in questo modo: se la porta non fosse collegata
a nulla, sullingresso dovremmo avere una tensione intermedia compresa tra i
limiti imposti dalle tensioni di alimentazione. Potremmo modellare lingresso
come una resistenza collegata a una certa tensione V
eq
. Per forzare lingresso a
un valore basso allora la corrente sar uscente dalla porta, mentre per porta-
re lingresso a un valore alto bisogner fornire una corrente alla porta stessa.
Quindi I
IL
< 0 e I
IH
> 0. Le uscite dovranno essere in grado di gestire queste
correnti, quindi I
OL
> 0 e I
OH
< 0. Questo ragionamento confermato pen-
sando alle semplici porte studiate nel capitolo sui transistor in commutazione.
Con transistor interdetto (uscita alta), luscita della porta equivalente ad una
resistenza (R
C
o R
D
a seconda del circuito) collegata a V
AL
, per cui, a meno
che il carico non sia in grado di forzare tensioni superiori a V
AL
, la porta potr
solo fornire correnti uscenti, quindi I
IH
> 0. Allo stesso modo, con transistor
in saturazione (livello basso), si ha un interruttore chiuso verso 0 V e la porta
potr solo assorbire corrente dal carico, quindi I
OL
> 0.
Nel caso di porte realizzate con dei MOSFET (ingresso sul gate), lingresso
non assorbe alcuna corrente, a meno di considerare i circuiti di protezione di cui
parleremo in seguito. La corrente reale sullingresso sar molto bassa e potr in
questo caso essere entrante o uscente dal dispositivo.
7.1.2 Compatibilit tra porte logiche
Una delle funzioni dei parametri elettrici statici stabilire se sia possibile o meno
collegare luscita di una porta logica allingresso di unaltra, cio se due porte
logiche sono tra loro compatibili. Come abbiamo visto, i parametri elettrici
che abbiamo studiato non rappresentano la tensione che troviamo realmente
sulluscita di una porta logica o la corrente eettivamente fornita o assorbita,
ma i valori limite di un intervallo. Dunque non sappiamo esattamente quale sia la
tensione presente nel circuito ma conosciamo i limiti che essa potr assumere in
condizioni siologiche. Per stabilire se due porte A e B possono essere collegate
tra loro, con luscita di A collegata allingresso di B, occorrer vericare che B
non rappresenti per A un carico troppo elevato e che le tensioni generate da A
a livello logico alto e basso siano correttamente interpretate da B.
In pratica occorrer vericare che:

|I
IH,B
| < |I
OH,A
|
|I
IL,B
| < |I
OL,A
|
per quanto riguarda le correnti. Relativamente alle tensioni, se le porte sono
alimentate con la stessa tensione V
AL
, dovr essere

V
IH,B
< V
OH,A
V
IL,B
> V
OL,A
In caso di tensioni di alimentazione diverse occorrer anche tenere conto degli
altri estremi degli intervalli: i valori di tensione possibili alluscita di A devono
essere tutti ammissibili dallingresso di B, cio rientrare nel campo di tensioni
valido per un valore alto o basso di ingresso.
In gura 7.5a evidenziata gracamente la relazione tra gli intervalli di
tensione duscita e di ingresso di due porte tra loro compatibili. In generale la
8
A B
0 V
V
OL
V
OH
V
AL
0.3 V
V
IL
V
IH
V
AL
+ 0.3 V
(a)
A B
V
OL
V
OH
V
IL
V
IH
Noise Margin H
Noise Margin L
(b)
Figura 7.5: a) Rappresentazione graca degli intervalli delle grandezze elettriche
di ingresso ed uscita di due porte interconnesse; b) Margini di rumore.
porta accetta in ingresso livelli di tensione leggermente pi ampi della tensione
di alimentazione. La connessione possibile se lintervallo di tensioni generabili
dalluscita (in verde) ricade completamente nel campo di tensioni ammissibili
per lingresso (in rosso).
7.1.3 Margini di rumore
bene che gli intervalli di tensione ammessi dallingresso siano pi ampi degli
intervalli generabili dalluscita. In questo modo non si avranno problemi an-
che se la connessione tra le due porte fosse disturbata, ad esempio per rumore
elettromagnetico sulla linea dati o cadute di tensione sulle linee di alimentazio-
ne. Le dierenze V
IL
V
OL
e V
OH
V
IH
sono dette margini di rumore (noise
margin) rispettivamente a livello basso e livello alto. I margini di rumore sono
rappresentati gracamente in gura 7.5b.
7.1.4 Fan-out
Spesso luscita di una porta logica deve essere collegata a pi ingressi di por-
te, generalmente costruite con la stessa tecnologia. Si denisce fan-out di una
porta sia il numero di ingressi collegati alluscita di quella porta in un circuito
specico, sia il numero massimo di ingressi di porte costruite con la stessa tec-
nologia collegabili alluscita rispettando i vincoli per la compatibilit dei livelli
di tensione e di corrente. Conoscendo il massimo fan-out della porta, diventa
immediato vericare se possibile o meno realizzare un circuito digitale.
Per calcolare il fan-out limite nel caso in cui gli ingressi da collegare abbia-
no tutti le stesse caratteristiche elettriche, suciente, una volta vericata la
compatibilit tra le tensioni di ingresso e uscita, calcolare la quantit:
9
F
O
= min

I
OH
I
IH

I
OL
I
IL

F
O
indica il massimo numero di ingressi collegabili alla singola uscita. Se il
numero di ingressi da collegare inferiore o uguale a F
O
, il circuito realizzabile,
altrimenti occorrer cambiare schema (ad esempio interponendo dei buer).
7.1.5 Famiglie logiche
Anche se non abbiamo ancora studiato linterno delle porte logiche, abbiamo
visto che esse sono basate su transistor bipolari o a eetto di campo pilotati
in commutazione. Nel progetto delle porte logiche pratica comune separare
la porzione di circuito che realizza la particolare funzione logica dallinterfaccia
di ingresso e di uscita, cio dalla parte responsabile del collegamento ad altri
blocchi. In questo modo le caratteristiche elettriche statiche delle porte logiche
dipenderanno dalla tecnologia utilizzata mentre saranno quasi completamente
indipendenti dalla funzione logica svolta dalla porta.
Un insieme di circuiti logici che realizzano funzioni logiche diverse creati con
la stessa tecnologia e con caratteristiche statiche di ingresso/uscita comuni
detto famiglia logica.
Le prime famiglie logiche commercializzate erano basate su transistori bi-
polari. Sono state introdotte a partire dal 1962 (primo circuito logico integrato
prodotto commercialmente). Successivamente si sono rese disponibili porte lo-
giche basate su MOSFET. Ogni famiglia logica contraddistinta da una sigla.
Le prime sono state: ECL (Emitter Coupled Logic), DTL (Diode Transistor Lo-
gic) e RTL (Resistor Transistor Logic). La RTL stata utilizzata per creare la
prima CPU basata su circuiti integrati (Computer di guida del razzo vettore
Apollo). La pi diusa famiglia logica degli anni 60 e 70 per la famiglia TTL
(Transistor-Transistor Logic).
La verisone LS di questa famiglia logica (Low power Schottky), introdotta
nel 1976, rimasta per decenni lo standard di riferimento per le caratteristiche
elettriche statiche delle porte logiche. Ancora oggi in alcune occasioni si ragiona
in termini di carichi TTL-LS equivalenti. La tensione di alimentazione tipica
delle famiglie logiche bipolari di quegli anni era 5 V.
Per la famiglia logica TTL stata creata una serie di circuiti integrati la
cui sigla era caratterizzata da un presso comune: 74 (commerciale) oppure 54
(militare). A questo presso seguivano due o tre cifre indicanti la funzione logica
svolta dal circuito e la piedinatura. Ad esempio, il circuito 7400 conteneva 4
porte NAND a due ingressi, mentre il 7404 aveva sei inverter. Quando sono state
introdotte le famiglie logiche successive, si mantenuta la struttura ideata per
la TTL, realizzando circuiti funzionalmente e topologicamente compatibili. La
sigla dei nuovi circuiti conteneva sempre lo stesso presso numerico 74, seguito
da una o pi lettere indicanti la nuova famiglia logica, terminato inne dallo
stesso codice numerico gi usato per il corrispondente circuito TTL. Cos ad
esempio il sestuplo inverter in tecnologia LS siglato 74LS04. Il componente
pin-to-pin compatible con il 7404.
La prima famiglia logica a sfruttare la tecnologia CMOS stata la serie
4000, che non manteneva la compatibilit pin-to-pin con la serie TTL ed era
caratterizzata da consumi estremamente bassi, grande essibilit nella tensione
di alimentazione (2 V - 18 V) e estrema lentezza nelle commutazioni.
10
TTL-LS V
AL
= (5.00 0.25) V
V
IL
0.8 V I
IL
400.0 A
V
IH
2.0 V I
IH
20.0 A
V
OL
0.5 V I
OL
8.0 mA
V
OH
2.7 V I
OH
0.4 mA
HC V
AL
= 4.5 V
V
IL
1.35 V I
IL
1 A
V
IH
3.15 V I
IH
1 A
V
OL
0.1 V I
OL
20.0 A
V
OL
0.33 V I
OL
4.0 mA
V
OH
4.4 V I
OH
20.0 A
V
OH
3.84 V I
OH
4.0 mA
Tabella 7.1: Parametri elettrici principali delle famiglie logiche TTL-LS e
HCMOS.
La prima famiglia logica CMOS ad avere prestazioni dinamiche compatibili
con le tecnologie bipolari stata la famiglia HC (High speed CMOS), introdotta
nel 1982. La famiglia HC mantiene la compatibilit funzionale e topologica con
la TTL (es. 74HC04).
Nel corso degli anni la quantit di funzioni integrabili sullo stesso chip
cresciuta con una legge esponenziale (legge di Moore), quindi le funzioni semplici
svolte da un integrato della serie 74 non sono pi generalmente richieste: lintero
sistema digitale viene integrato in un singolo circuito o in pochi circuiti con
svariati milioni di porte logiche. Spesso per quando si devono interfacciare
tra loro pi dispositivi servono delle porte sparse, magari un NOT o un singolo
NAND, per permettere di derivare un segnale non previsto (in inglese glue logic).
La tensione di alimentazione decisamente pi bassa dei 5 V storici e i consumi
per porta decisamente ridotti. Esistono perci circuiti integrati di dimensioni
estremamente ridotte che svolgono semplici funzioni logiche.
Nel seguito noi utilizzeremo alcune porte storiche, essenzialmente delle se-
rie LS e HC, per svolgere qualche esercizio ed esperienza di laboratorio. Il motivo
lo stesso che ci ha spinto ad usare lLM741 come amplicatore operazionale: i
parametri parassiti sono chiaramente misurabili, la velocit non eccessiva, le
dimensioni sono tali da rendere agevole il montaggio di circuiti sperimentali in
laboratorio.
In tabella 7.1 sono riportate le caratteristiche elettriche statiche standard
delle porte LS e HC. Si noti che esistono porte speciali, ad esempio i bus dri-
ver con capacit di pilotaggio maggiore. Analizzando la tabella occorre prestare
attenzione ad una serie di particolarit: la tensione di alimentazione specica-
ta per le porte HC di 4.5 V, diversa da quella delle porte LS. Le porte HC
funzionano con alimentazioni comprese tra 2 V e 6 V. Nei datasheet i parametri
sono specicati per 2 V, 4.5 V e 6 V. La corrente assorbita da un ingresso HC
piccolissima. Il datasheet specica allora due condizioni duso: porta collegata
ad altre porte HC e porta collegata ad altri carichi che assorbono pi corrente.
Per questa ragione in tabella sono riportate due righe per ognuna delle tensioni
duscita, in funzione di una diversa corrente duscita.
7.1.6 Ingressi delle porte logiche
Analizziamo ora pi in dettaglio le caratteristiche di ingresso delle porte.
Oltre allingresso standard caratterizzato dalle tensioni V
IL
e V
IH
, esiste per
applicazioni particolari la possibilit di avere una isteresi nelle commutazioni.
11
Studieremo questo tipo di ingresso e parleremo poi dei circuiti di protezione
che sono sempre presenti sugli ingressi dei circuiti logici, indipendentemente dal
tipo e dalla tecnologia.
Ingresso Schmitt-trigger
Quando abbiamo trattato loperazionale come comparatore di tensione abbiamo
visto che lintroduzione di una isteresi migliora il comportamento del dispositivo
in presenza di rumore. Lingresso di una porta logica di fatto un comparatore
di tensione. Lingresso standard non ha isteresi, quindi se il segnale dingresso
aetto da rumore e ha un livello vicino alla tensione di commutazione del-
la porta, lo stato logico letto dalla porta varier casualmente in funzione del
rumore. In una situazione normale in cui luscita e gli ingressi cui collegata
siano ragionevolmente vicini, la correttezza del livello logico letto dagli ingressi
garantita dal margine di rumore. Se per uscita e ingresso sono lontani, ad
esempio su schede diverse collegate da un cavo, possibile che il rumore som-
mato al segnale digitale sia cos alto da provocare la situazione sopra descritta
e portare a commutazioni spurie che possono pregiudicare il funzionamento del
sistema.
Per ovviare a questi problemi sono state introdotte porte con ingressi dotati
di isteresi. Tali porte sono molto pi immuni al rumore delle porte standard.
Lingresso con isteresi viene comunemente chiamato Schmitt-trigger.
V
i
V
u
Figura 7.6: Caratteristica e simbolo di un inverter Schmitt-trigger.
In gura 7.6 riportata la caratteristica ingresso uscita tipica di un inverter
con ingresso a trigger di Schmitt, assieme al simbolo di questo dispositivo.
C
R
Figura 7.7: Multivibratore astabile con inverter Schmitt-trigger.
12
Oltre al caso di segnali con molto rumore sovrapposto, questi dispositivi sono
usati quando la transizione tra livelli di tensione dingresso avviene in modo
estremamente lento, situazione che pu creare commutazioni spurie in porte
normali anche in assenza di molto rumore. Vengono inoltre usati per creare
generatori donda quadra, in modo analogo al multivibratore astabile basato su
operazionale che abbiamo visto in precedenza. Il circuito riportato in gura
7.7. un utile esercizio il calcolo della frequenza di oscillazione di questo circuito
a partire dalle caratteristiche della porta. Utilizzare il datasheet del 74HC14.
Protezione degli ingressi
R
D
1
V
AL
D
2
Figura 7.8: Circuito di protezione sullingresso di un circuito integrato.
Allinterno di tutti i piedini di ingresso dei circuiti integrati digitali (e an-
che di molti circuiti integrati analogici) sono presenti dei circuiti di protezione,
studiati per intervenire in situazioni che mettono a rischio la vita del compo-
nente. La prima e pi pericolosa situazione si incontra nella fase di produzione
e stoccaggio del componente, no alla sua saldatura sul circuito stampato,
costituita dalle cariche elettrostatiche che si possono accumulare sullingresso
quando il componente viene trasportato, maneggiato o immagazzinato. Lin-
gresso infatti collegato ad un nodo di alta impedenza, su cui anche un mode-
sto quantitativo di cariche elettrostatiche pu provocare un grosso aumento di
potenziale. Ci in particolare vero per i componenti CMOS in cui lingresso
sul gate di uno o pi MOSFET di piccole dimensioni. In questo caso il nodo
dingresso un condensatore molto piccolo e, dato lo spessore ridotto dellossido
di gate, il campo elettrico nel dispositivo pu assumere valori pericolosi anche
per pochi volt di dierenza di potenziale. Quando il dispositivo montato nel
circuito nale le protezioni intervengono se il segnale dingresso supera i limiti
deniti dalle tensioni di alimentazione.
Il circuito di protezione pi diuso mostrato in gura 7.8. La resistenza
R di basso valore per non limitare la velocit della commutazione del segnale
dingresso. I due diodi D
1
e D
2
sono detti diodi di clamp: nel funzionamento
normale sono polarizzati inversamente e non intervengono nel funzionamento
del circuito (eccetto per le piccole correnti di perdita). Quando per il potenzia-
le presente sullingresso esce dai limiti deniti dalle tensioni di alimentazione,
uno dei diodi entra in conduzione e limita in tal modo lescursione della tensio-
13
ne dingresso. Prima del montaggio del componente nel circuito i terminali di
alimentazione non sono collegati a componenti esterni ma i diodi intervengono
in caso di accumulo di cariche sullingresso, che caratterizzato da una modesta
capacit parassita, inserendo in parallelo a questultima la capacit legata alla
porzione di alimentazione, di area molto pi grande. Se la tensione cresce a su-
cienza, il circuito pu essere alimentato dalle cariche accumulate. In questo caso
le cariche vengono dissipate dalle componenti resistive (canali dei MOSFET)
del dispositivo.
7.1.7 Uscite delle porte logiche
Sono possibili diverse congurazioni delluscita di una porta logica: totem-pole,
tri-state e open-collector/open-drain. Esse sono caratterizzate da diverse capa-
cit di pilotaggio e stati logici generabili. Infatti, mentre le uscite totem-pole
possono generare solo livelli elettrici H e L, le altre tipologie permettono un
terzo stato, detto Z, in cui luscita presenta unalta impedenza e non in grado
di denire il livello elettrico della linea cui collegata.
V
AL
V
u
(a)
V
AL
V
u
OE
(b)
OE
V
u
(c)
*
Figura 7.9: Modelli circuitali semplicati e simboli circuitali delle uscite totem-
pole (a) tri-state (b) e open-collector/open-drain (c).
Il modello circuitale semplicato di ogni congurazione ed il simbolo che la
identica in uno schema elettrico sono riportati in gura 7.9.
Uscita Totem-pole
Luscita normale detta totem-pole. A seconda dello stato della porta questa
uscita genera un livello elettrico H o L. Il modello pi semplice di questa uscita
costituito da due interruttori in controfase, uno collegato tra luscita e 0 V,
laltro tra uscita e V
AL
. Il nome totem-pole (Il palo del totem degli Indiani
dAmerica) deriva dalla struttura interna delle porte TTL, in cui, sulluscita, a
14
IN OE OUT
L L Z
H L Z
L H H
H H L
Tabella 7.2: Tavola di verit dellinverter con uscita tri-state. Si osservi che
quando lingresso Output Enable attivo il comportamento della porta quello
usuale, mentre quando non attivo luscita disabilitata e si trova nello stato
ad alta impedenza a prescindere dallingresso.
partire dallalimentazione, si trovavano in serie una resistenza, un transistor, un
diodo e un secondo transistor, questultimo con lemettitore a 0 V (si veda pi
oltre, gura 7.11). Nello schema il disegno delluscita assomigliava (con un po
di fantasia) al totem, con le varie gure sedute una sullaltra.
Uscita tri-state
Quando una porta logica deve pilotare una linea di una connessione a bus, come
nel caso di un registro collegato ad una linea dati di una cpu, necessario che
solo una uscita tra le molte collegate in parallelo sia abilitata in ogni istante
di tempo. In caso contrario si otterrebbero delle condizioni anomale quando
due uscite dovessero cercare di forzare un diverso livello elettrico sulla linea.
Si utilizzano allora porte con unuscita particolare, detta tri-sate (o 3-state,
three-state o altro ancora a seconda del produttore).
Questa uscita pu essere abilitata o disabilitata in funzione del valore logico
presente su un ingresso dedicato chiamato Output Enable, o OE (gura 7.9b). Se
OE attivo, la porta funziona come una porta totem-pole. Se invece OE non
attivo, la porta viene disabilitata e presenta in uscita unimpedenza molto
alta. Concettualmente OE agisce su un interruttore posto in serie alluscita
della porta (lo schema elettrico pu in realt essere molto diverso da questa
semplicazione).
Ci aumenta il numero di possibili stati delluscita rispetto alla totem-pole:
infatti si hanno 3 stati simboleggiati da L, H e Z.
La tabella 7.2 mostra la tavola della verit per un inverter con uscita tri-state.
Nelle connessioni al bus dati di un microprocessore il segnale OE ricavato
a partire dal valore presente sul bus indirizzi mediante un decodicatore. Spesso
il segnale OE attivo a livello basso (OE).
Uscita open-collector (open-drain)
In alcuni casi esiste lesigenza di avere pi dispositivi che possano attivare la
stessa linea, senza che ci sia un supervisore che abiliti a turno le uscite corri-
spondenti. il caso ad esempio di una linea di interrupt condivisa di un mi-
croprocessore, oppure dei segnali di controllo del bus PCI. In alcune situazioni,
durante la produzione del sistema non noto il numero di dispositivi presenti
sulla linea, ad esempio nel caso del bus PCI incluso in un PC. Il numero eettivo
di schede presenti sul bus viene deciso dallutente del sistema, quindi ogni linea
15
potr avere una o pi porte che in determinate condizioni dovr essere in grado
di forzare un valore di tensione sulla linea stessa.
In situazioni del genere si usano delle porte dotate di unuscita speciale,
detta open-collector se la tecnologia di costruzione bipolare, open-drain nel
caso di MOS.
Le porte open-drain possono solo forzare sulla linea il valore L oppure essere
sconnesse (Z). Comparandole con una porta totem-pole si vede che nelle porte
open-drain esiste solo linterruttore verso 0 V, mentre del tutto assente la
connessione a V
AL
.
Negli schemi elettrici queste porte sono di solito contrassegnate da un sim-
bolo (pallino, asterisco, rombo) posto in prossimit delluscita, come ad esempio
in gura 7.9c.
Il fatto che la porta possa solo imporre un valore basso o essere in alta
impedenza implica che il valore alto sulla linea collegata alluscita sia generato
da un componente esterno. Questo componente consiste quasi sempre in una
resistenza collegata tra la linea e la tensione di alimentazione, detta resistenza di
pull-up. Quando la porta nello stato Z, la resistenza eleva la tensione sulla linea
a un valore prossimo alla tensione dalimentazione, riconosciuto come H dagli
ingressi. Quando la porta invece nello stato L, forza la linea ad un valore basso,
assorbendo la corrente che in questo caso attraversa la resistenza. Ovviamente
per dimensionare la resistenza occorre prestare attenzione alle correnti massime
di uscita della porta logica.
Alcune porte open-collector possono sopportare sulluscita tensioni decisa-
mente pi elevate della propria tensione di alimentazione. Tali porte possono
essere sfruttate per interfacciare porte logiche a bassa tensione a circuiti logi-
ci ad alta tensione. Ad esempio i controllori logici programmabili industriali
utilizzano ingressi a 12 V o 24 V, non compatibili con le logiche standard a 5 V.
Limpiego pi diuso per questo tipo di porte per nella congurazione
detta wired-OR, in cui diverse uscite open-drain pilotano la stessa linea, come
in gura 7.10.
A
*
R
pu
V
AL
B
*
U
Figura 7.10: Connessione wired-OR.
In riferimento allo schema della gura 7.10, se le uscite A e B sono in stato di
alta impedenza Z, il livello elettrico della linea U sar H, a causa della presenza
di R
pu
. Se invece almeno una delle porte forza uno stato L, il livello presente
sulla linea sar L.
16
A B U
Z Z H
L Z L
Z L L
L L L
Tabella 7.3: Tavola di verit della connessione wired-OR rappresentata in gura
7.10.
Di fatto la connessione di due o pi uscite open-collector sulla stessa linea
porta alla formazione di una funzione logica cablata, la cui tabella di verit
riportata in tabella 7.3.
Per questo motivo la congurazione viene chiamata wired-OR. Si potrebbe
obiettare che, utilizzando la convenzione standard che associa il livello elettrico
H alluno logico, al pi si potrebbe parlare di AND. Il nome deriva dal fatto
che le porte open-collector possono solo forzare uno stato L in uscita o essere
sconnesse. Sono dunque considerate attive in corrispondenza del livello elettrico
L e quindi questo stato che viene associato alluno logico.
7.2 Cenni sulla famiglia logica TTL
Come gi accennato, le famiglie logiche basate su transistor bipolari non sono
quasi pi utilizzate al giorno doggi. Vi sono applicazioni in cui si usano circuiti
ibridi con ingresso MOS e uscita bipolare, detti BiCMOS. In particolare questa
soluzione viene adottata in tecnologia SiGe per alta frequenza ed al di fuori
degli scopi di questa trattazione.
Accenniamo solo per motivi storici alla struttura interna di una porta TTL.
Lo schema equivalente di un inverter TTL riportato in gura 7.11.
Considerando lingresso a 0 V, il transistor T
1
in saturazione: questo per-
ch la base collegata a V
AL
tramite R
1
, lemettitore a 0 V e la tensione di
collettore non pu superare circa 1.2 V, pari alla somma delle V
BE
di T
2
e T
4
;
inoltre T
1
non pu aspirare una corrente signicativa dal collettore per come
esso collegato alla base di T
2
. T
2
risulta quindi interdetto, come pure T
4
. T
3
conduce portando luscita a un livello alto, seppure pi basso della tensione di
alimentazione.
Se invece consideriamo lingresoo alto (V
AL
), T
1
si trover in regione attiva
inversa, in quanto la tensione di emettitore decisamente pi alta di quella di
collettore (sempre intorno a 1.2 V come nel caso precedente). Sar quindi in
grado di iniettare corrente in T
2
che entrer in saturazione, seguito da T
4
. T
3
interdetto, anche grazie alla presenza del diodo D
1
. Di conseguenza luscita
sar pari alla V
CESAT
di T
4
, cio bassa.
Il diodo D
2
funge da protezione per lingresso (diodo di clamp).
Un limite alla velocit di questo circuito dato dal fatto che i transistor du-
rante la commutazione del circuito devono passare da saturazione a interdizione.
Un notevole miglioramento della velocit o del consumo della porta venuto
rispettivamente dalle famiglie S e LS in cui gli elementi attivi sono stati rim-
piazzati da transistor Schottky (cio da dispositivi accoppiati a diodi Schottky
17
T
2
T
1
R
1
T
3
T
4
D
1
R
2
R
4
R
3
D
2
In
V
AL
Out
Figura 7.11: Schema circuitale di un inverter della famiglia TTL.
posti tra base e collettore per evitare la saturazione del transistor, come visto
nel capitolo sui transistor in commutazione).
La porta NAND in tecnologia TTL molto simile allinverter. Si sostituisce
T
1
con un transistor multi-emettitore (cio un dispositivo con pi aree di emet-
titore associate alla stessa base). Ogni emettitore collegato a un ingresso della
porta. Se almeno un emettitore a livello basso, il transistor va in saturazione
e luscita alta. Solo nel caso in cui tutti gli emettitori siano a tensione alta,
luscita va a livello basso.
7.3 Porte CMOS
Esistono diversi modi di realizzare porte logiche in tecnologia CMOS. Le porte
standard utilizzano una topologia detta logica statica complementare in cui
ogni funzione viene realizzata con una serie di pMOS, detti di pull-up, responsa-
bili di portare a livello alto luscita della porta e con altrettanti nMOS, detti di
pull-down, responsabili di portare luscita a livello basso. Esistono diverse alter-
native, cui accenneremo nel seguito, chiamate logica nMOS-like, logica dinamica,
e logica a transmission gate.
7.3.1 Logica statica complementare
Per quanto riguarda questa tecnica per realizzare circuiti logici, ci occuperemo
dapprima di studiare a fondo la porta pi semplice, linverter, poi aggiunge-
18
remo transistor per ottenere circuiti in grado di realizzare funzioni logiche pi
complesse.
Inverter
La realizzazione di un inverter in logica CMOS statica complementare molto
intuitiva. Consideriamo inizialmente che la porta che vogliamo costruire deve
avere unuscita totem-pole. Questo signica avere due interruttori che collegano
luscita rispettivamente alla tensione di alimentazione e a 0 V, come in gura
7.9a.
M
1
M
2
V
AL
Out In
Figura 7.12: Schema circuitale di un inverter CMOS.
I due interruttori devono chiudersi in controfase. Quello che collega luscita
a 0 V dovr attivarsi quando lingresso sia a un valore alto. evidente che un
transistor nMOS, collegato col gate sullingresso, source a 0 V e drain sullu-
scita, realizza la funzione richiesta. Occorre ora un secondo interruttore posto
tra ingresso, V
AL
e uscita che si attivi quando lingresso basso. altrettanto
semplice vericare che tale interruttore pu essere realizzato con un pMOS col-
legato col gate sullingresso, il source a V
AL
e il drain sulluscita. La porta che
abbiamo costruito visibile in gura 7.12.
Analizziamo pi in dettaglio lo schema. Lingresso collegato ai due gate
di M
1
e M
2
. Il circuito che pilota la porta vede dunque un carico capacitivo e
deve fornire corrente solo durante le commutazioni. Se consideriamo allora un
sistema costruito tutto con porte realizzate con questa tecnica, possiamo notare
che il circuito consumer molto poco in condizioni statiche, cio in assenza di
commutazioni degli ingressi, mentre si avr assorbimento di corrente signica-
tivo durante i cambiamenti di stato. In caso di porte collegate a carico resistivo
si avr invece ovviamente passaggio di corrente nei MOSFET anche in condi-
zioni statiche. Queste considerazioni e quanto studieremo nel resto del capitolo
sono vere per dispositivi di dimensioni non troppo piccole. I recenti processi che
permettono di realizzare transistor di dimensioni molto inferiori al micron ne-
cessitano di modelli del MOSFET diversi da quelli classici e il comportamento
della porta molto diverso dallideale.
Ma qual il legame tra le dimensioni dei transistor e le caratteristiche della
porta? Per scoprirlo analizziamo la transcaratteristica statica: imponiamo sul-
lingresso una tensione continua V
i
e studiamo il comportamento della porta
19
1 2
3
4 5
V
i
V
u
Figura 7.13: Transcaratteristica dellinverter CMOS.
in risposta a variazioni della tensione di ingresso nel campo compreso tra 0 V
e V
AL
, considerando linverter non caricato o collegato a unaltra porta nella
stessa tecnologia (carico capacitivo).
La transcaratteristica della porta disegnata in gura 7.13.
Si possono identicare 5 zone distinte di funzionamento:
1. Quando V
i
compresa tra 0 V e la tensione di soglia di M
1
, che chiameremo
V
Tn
, M
1
interdetto (V
GS
< V
Tn
), mentre M
2
in zona resistiva. Questo
perch la tensione V
GS
di M
2
negativa e tale da portarlo in conduzione,
mentre, essendo M
1
interdetto e non essendoci carico resistivo sulluscita,
la caduta di tensione tra source e drain di M
2
nulla.
2. Quando V
i
compresa tra V
Tn
e una tensione limite che chiameremo
V
inv
, M
1
in zona di saturazione, in quanto il termine V
GS
V
Tn
piccolo
mentre V
DS
elevato, essendo M
2
fortemente in conduzione. M
2
dalla zona
resistiva tende a passare alla zona quadratica di funzionamento (triodo),
dal momento che il termine V
2
DS
/2 inizia a non essere pi trascurabile.
3. Quando V
i
= V
inv
si ha la cosiddetta zona di inversione. Questa zona ha
unampiezza ridotta, tanto che, se per i MOSFET si utilizza il modello
che trascura la modulazione di lunghezza di canale, si riduce a un singolo
punto. Nella realt lampiezza della zona dipende dai parametri dei tran-
sistor ma comunque tale per cui una piccola variazione della tensione
di ingresso provoca una grossa variazione della tensione duscita. In altre
parole, nella zona di inversione la porta si comporta come un amplica-
tore invertente con guadagno elevato (almeno per transistor non troppo
piccoli). Nella zona di inversione sia M
1
sia M
2
sono in saturazione di
canale.
4. Quando V
i
compresa tra V
inv
e V
AL
+V
Tp
M
1
in zona lineare e M
2
in
zona di saturazione di canale; si ha un comportamento simmetrico rispetto
alla zona 2.
5. Superando V
AL
+ V
Tp
, M
2
si interdice ed M
1
in zona resistiva; il com-
portamento simmetrico rispetto alla zona 1.
Da questa analisi risulta evidente che il comportamento della porta dipende
essenzialmente da dove posizionata la zona di inversione (zona 3 in gura 7.13).
20
Come abbiamo visto in questa zona luscita commuta molto rapidamente da un
valore alto, prossimo a V
AL
, a un valore basso, prossimo a 0 V. Spostando la
tensione di inversione si modicano i valori di V
IL
e V
IH
della porta.
Abbiamo gi notato che in zona 3 entrambi i transistor sono in saturazione
di canale, si comportano cio da generatori di corrente. Poich assumiamo che
non ci siano carichi resistivi e poich il drain di M
1
in serie al drain di M
2
,
questa condizione pu esistere solo se i due generatori di corrente generano due
correnti identiche.
Possiamo allora eguagliare le I
D
di M
1
e di M
2
ottenendo:

n
C
OX
W
n
L
n
(V
i
V
Tn
)
2
=
p
C
OX
W
p
L
p
(V
i
V
AL
V
Tp
)
2
Questa uguaglianza pu essere vericata per un unico valore di tensione di
ingresso, che chiamiamo V
inv
o tensione di inversione. Se avessimo tenuto conto
del parametro avremmo ottenuto unespressione pi complessa che ammetteva
soluzione per un intervallo di valori di tensione dingresso, ma i risultati della
analisi semplicata sono pi che sucienti per i nostri scopi.
Si nota che il valore della tensione dinversione dipende da alcuni parame-
tri tecnologici (
n
e
p
, mobilit di elettroni e lacune, V
Tn
e V
Tp
, tensioni di
soglia dei transistor) e da alcuni parametri modicabili dal progettista (W
n
e
W
p
, larghezza dei canali dei transistor, L
n
e L
p
, lunghezza dei canali dei transi-
stor), oltre che dalla tensione di alimentazione. Questo signica che agendo ad
esempio sulla larghezza di canale possibile modicare il valore della tensione
di inversione. dunque possibile progettare V
inv
a seconda delle esigenze dei
circuiti di pilotaggio della porta.
Un risultato particolarmente interessante si ottiene ponendo:

n
C
OX
W
n
L
n
=
p
C
OX
W
p
L
p
In questo caso lespressione si semplica in:
(V
inv
V
Tn
)
2
= (V
inv
V
AL
V
Tp
)
2
Eliminando i quadrati (attenzione al segno!) si ha inne:
V
inv
V
Tn
= V
AL
V
inv
+V
Tp
= 2V
inv
= V
AL
+V
Tn
+V
Tp
Se poi, come si soliti fare, si ottimizza il processo in modo che V
Tn
= V
Tp
,
si ha:
V
inv
=
V
AL
2
Questo risultato importante, in quanto il posizionamento della tensione
di inversione a met della tensione di alimentazione rappresenta una situazione
ottimale in assenza di esigenze particolari (compatibilit con porte diverse).
Infatti questo permette di massimizzare i margini di rumore in quanto abbiamo
visto che la tensione di uscita molto vicina a V
AL
per il livello alto e a 0 V per
il livello basso. Porre V
inv
a met strada tra questi valori signica porre anche
V
IL
e V
IH
(che tengono anche conto delle tolleranze di processo) in posizioni
21
simmetriche rispetto a met alimentazione e il pi distante possibile dai valori
di V
OH
e V
OL
. In pi, una variazione della tensione di alimentazione comporter
un adattamento automatico dei valori delle soglie.
Si noti che la condizione imposta da:

n
W
n
L
n
=
p
W
p
L
p
permette ancora dei gradi di libert, che possono essere sfruttati per denire
la capacit di pilotaggio della porta. Se questa interna ad un circuito inte-
grato e deve pilotare poche porte di piccole dimensioni, allora si adotteranno i
minimi valori ammessi dal processo per le dimensioni dei transistor, se invece la
porta deve pilotare un carico esterno, i transistor saranno progettati per avere
una bassa resistenza duscita e unalta capacit di pilotaggio, a scapito delle
dimensioni.
NAND e NOR
Abbiamo visto come si realizzi un inverter in logica statica complementare. Per
poter sintetizzare qualunque funzione logica, abbiamo per bisogno di costruire
una porta NAND o NOR.
Nellanalisi dellinverter abbiamo notato come il transistor NMOS collegato
tra uscita e 0 V sia utilizzato per fornire il valore basso in uscita, mentre il PMOS
sia attivo quando luscita debba assumere un valore alto. possibile estendere
questa funzionalit osservando che per realizzare una qualunque funzione logica
occorre una rete di NMOS che si attivi quando la funzione logica deve fornire
unuscita bassa e una rete di PMOS attiva per valori alti di uscita.
Proviamo a costruire questa rete nel caso semplice di una porta NOR a due
ingressi (A e B). Luscita della porta deve essere bassa se almeno uno degli
ingressi alto. Questa funzione si ottiene facilmente collegando due NMOS con
il canale in parallelo tra uscita e 0 V, con i gate collegati rispettivamente a A e
B. Luscita deve essere bassa se e solo se entrambi gli ingressi sono bassi. Allora
la rete di PMOS deve creare un percorso a bassa resistenza tra uscita e V
AL
solo
quando entrambi gli ingressi sono bassi. Questo si ottiene inserendo due PMOS
con i gate collegati rispettivamente a A e B e i canali in serie tra uscita e V
AL
.
In gura 7.14 possibile vedere lo schema risultante.
Lo schema di una porta NAND a due ingressi si costruisce nello stesso mo-
do, ma i ruoli della rete di NMOS e di PMOS sono invertiti. Infatti, essendo
necessario avere un valore basso in uscita solo in corrispondenza di un valore
alto di entrambi gli ingressi, i canali dei due transistor NMOS saranno collegati
in serie tra uscita e tensione di riferimento, mentre i canali dei transistor PMOS
saranno connessi in parallelo tra uscita e alimentazione essendo necessario un
valore alto in uscita in corrispondenza di almeno un valore basso in ingresso.
Lo schema risultante per la porta NAND riportato in gura 7.15.
Lanalisi delle caratteristiche elettriche statiche e il dimensionamento dei
parametri dei transistor di queste porte sono leggermente pi complicati del
caso dellinverter e sono lasciati ai corsi successivi.
Lestensione degli schemi visti sopra a porte NAND e NOR a pi di due
ingressi immediata: basta inserire per ogni ingresso un transistor NMOS e un
transistor PMOS collegando i canali in serie o in parallelo nello stesso modo
22
M
1
M
2
M
3
M
4
V
AL
Out
A
A
B
B
A B U
H H L
H L L
L H L
L L H
Figura 7.14: Schema di un NOR a due ingressi.
visto per i primi due: un NOR a tre ingressi vedr quindi tre NMOS in parallelo
e tre PMOS in serie.
Porte logiche complesse
Abbiamo visto nora come realizzare tre tipi di porta: inverter, NAND e NOR.
Tutte queste porte sono di tipo invertente. Questa una caratteristica generale:
una porta non invertente, ad esempio un AND, non si pu sintetizzare diret-
tamente in logica statica complementare ma dovr essere realizzata come un
NAND seguito da un inverter o un NOR ai cui ingressi siano collegati due in-
verter. Il motivo semplice: un NMOS conduce quando il suo ingresso a livello
alto e, se altri elementi in serie non interrompono il circuito, pu solo portare a
un cammino a bassa resistivit tra uscita e tensione di riferimento, producendo
un livello basso in uscita. La situazione duale per il PMOS (un livello basso
di ingresso al pi produce un livello alto duscita).
Esistono equazioni logiche pi complesse che sono sintetizzabili direttamen-
te come porte logiche statiche complementari. Queste equazioni devono essere
esprimibili in una forma detta AOI, per And-Or-Invert. Luscita deve cio essere
espressa come la negazione di una serie di AND e OR degli ingressi aermati,
ad esempio:
U = (A + B) (C +D)
Le porte NAND e NOR sono un caso semplice di questa categoria.
Per la sintesi delle altre porte AOI, basta seguire una semplice regola derivata
dalla costruzione di NAND e NOR. Occorre progettare due reti pilotate dagli
ingressi, una di NMOS che servono a generare un livello basso in uscita e una
di PMOS che servono a portare luscita alla tensione di alimentazione. Le due
23
M
1
M
2
M
3
M
4
V
AL
U
A
A
B
B
A B U
H H L
H L H
L H H
L L H
Figura 7.15: Schema di una porta NAND a due ingressi.
reti sono duali, nel senso che per ogni congurazione dellingresso una e una
sola delle due reti deve essere attiva (cio collegare luscita al rispettivo ramo
di alimentazione.
Per quanto riguarda la rete di NMOS, si analizza lequazione da realizzare e
per ogni ingresso si inserisce un transistor. I canali dei transistor devono essere
collegati:
in serie, in corrispondenza di un prodotto (AND);
in parallelo, in corrispondenza di una somma (OR).
Un estremo della rete cos disegnata deve essere collegato alluscita, laltro al
riferimento. La rete di NMOS si chiama rete di pull-down.
La rete di PMOS si disegna in modo duale: per ogni ingresso si inserisce un
transistor. I canali dei transistor devono essere collegati:
in parallelo, in corrispondenza di un prodotto (AND);
in serie, in corrispondenza di una somma (OR).
Un estremo della rete cos disegnata deve essere collegato alluscita, laltro alla
tensione di alimentazione. La rete di PMOS si chiama rete di pull-up.
Il circuito corrispondente allequazione desempio riportata sopr sar perci
composto da quattro NMOS e quattro PMOS, essendoci quattro termini in cui
compaiono gli ingressi. I due NMOS i cui gate sono collegati ad A e B saranno
posti con i canali in parallelo, essendo A e B in OR, cos come i due NMOS
collegati a C e D. Le due coppie devono poi essere collegate in serie, essendoci
un termine AND che lega tra loro i due OR.
La rete PMOS sar duale, con i PMOS collegati ad A e B in serie, cos come
quelli collegati a C e D. Le due coppie saranno in parallelo.
24
M
1
M
5
M
2
M
6
M
3
M
7
M
4
M
8
V
AL
U
A
A
C
C
B
B
D
D
Figura 7.16: Realizzazione AOI di U = (A + B) (C +D).
Il circuito risultante riportato in gura 7.16.
La tecnica per realizzare porte logiche con questo metodo detta AOI (And
Or Invert): essa permette di realizzare qualsiasi porta invertente, basata sulla
combinazione di AND e OR logici. Normalmente la parte di un integrato che
realizza la vera operazione logica sui segnali di ingresso seguita da un paio
di inverter con transistori di dimensioni maggiori che migliorano le capacit di
pilotaggio del componente.
7.3.2 Logica nMOS-like
Il difetto principale della logica complementare consiste nella necessit di rea-
lizzare due reti logiche duali che forniscono separatamente i valori alto e basso
delluscita. Per realizzare ogni funzione logica sono necessarie sempre sia la rete
di pull-up che quella di pull-down. Questo fatto, per quanto i MOSFET occupi-
no relativamente poca area di silicio, sconveniente perch si utilizza il doppio
dello spazio necessario a denire una funzione logica.
Per risparmiare spazio si pu pensare di realizzare una sola delle due funzioni
complementari e trovare un modo di ssare luscita al valore opposto quando la
logica implementata non sia attiva.
Questo metodo di lavoro era utilizzato agli albori della tecnologia MOS quan-
do non si riusciva ad integrare in un solo chip transistor di tipo N e di tipo P.
Se ad esempio si utilizzavano solo nMOS, si realizzava la rete di pull-down per
collegare luscita a 0 V e si aggiungeva sulluscita una resistenza di pull-up, come
nella logica open-drain, per portare luscita della porta a livello alto quando la
rete di pull-down non era attiva.
La stessa tecnica si pu utilizzare anche nei circuiti CMOS, dove la resi-
stenza viene sostituita da un pMOS, opportunamente dimensionato in modo da
25
garantire un livello logico corretto quando luscita della porta deve assumere
un valore basso, con il gate permanentemente collegato a 0 V. Ad esempio, la
funzione di gura 7.16 si realizza in logica nMOS-like con il circuito di gura
7.17.
M
1
M
5
M
2
M
3
M
7
V
AL
U
A
C
B
D
Figura 7.17: Realizzazione di U = (A +B) (C +D) in logica nMOS-like.
Questa realizzazione pi compatta della logica complementare ma sore
di un grosso problema che ne limita fortemente lutilizzo: quando luscita della
porta bassa scorre corrente da V
AL
a 0 V, si ha cio dissipazione di potenza non
solo nella commutazione ma anche in condizioni statiche. Si perde quindi uno
deivantaggi della logica CMOS che consiste nel bassissimo consumo in assenza
di commutazioni.
7.3.3 Logica dinamica
In alcune applicazioni possibile utilizzare una tecnica simile alla nMOS-like
per ridurre lo spazio occupato dalle funzioni logiche, eliminando il problema del
consumo di corrente in condizioni statiche.
Un esempio si ha nei blocchi logici associati alle macchine a stati: si tratta di
blocchi di logica combinatoria le cui uscite non devono necessariamente essere
disponibili sempre, ma solo in corrispondenza del fronte attivo di un segnale di
campionamento (clock).
Le tipologie circuitali che abbiamo visto nora, logica complementare e
nMOS-like, sono dette statiche perch le uscite reagiscono sempre ai cambia-
menti degli ingressi con ritardi dettati solo dalla velocit di propagazione, come
vedremo pi avanti. Le tipologie che studieremo adesso sono invece dette di-
namiche in quanto le uscite saranno valide (cio il loro valore corrisponder a
quello della funzione logica realizzata applicata al valore degli ingressi) solo in
determinati istanti di tempo.
Per introdurre il discorso delle logiche dinamiche consideriamo il circuito gi
visto in gura 7.17. Il transistor M
2
sempre abilitato ed il responsabile del
consumo statico di corrente della porta. Se proviamo a rimuovere il cortocircuito
26
sul gate e a collegarlo invece a un segnale , otteniamo un circuito in cui esiste
una rete di pull-down nMOS che realizza una certa funzione logica, pi un
unico transistor pMOS che pu, in certe condizioni ( = L e congurazione
degli ingressi tale da non attivare la rete di pull-down), portare luscita a livello
alto.
Supponiamo ora che luscita della porta sia alta e analizziamo che cosa suc-
cede se portiamo a livello alto. Il transistor M
2
si disattiva. Che cosa succede
alluscita della porta? Dipende ovviamente dalla congurazione degli ingressi.
Se gli ingressi permangono in una congurazione tale da non attivare la rete di
pull-down, non vi alcun percorso a bassa impedenza tra luscita della porta e
i rami di alimentazione (supponendo che la porta abbia come carico solo gate
di transistor MOSFET).
Per capire che cosa succede dobbiamo allora introdurre degli elementi nora
non considerati: le capacit parassite associate ai transistor MOSFET. Luscita
della porta in eetti costituita dalle aree di drain di un certo numero di tran-
sistor ed collegata a uno o pi gate di transistor MOSFET. Ogni area di drain
e ogni gate presentano anche una capacit parassita rispetto al substrato. Pos-
siamo quindi considerare che luscita sia associata ad un condensatore parassita
C
p
, somma di tutte le capacit parassite sopra descritte.
Nella condizione che stiamo considerando, tale condensatore stato caricato
a V
AL
nel periodo di tempo in cui luscita era alta con basso. Non esistendo
percorsi di bassa impedenza verso i rami delle alimentazioni, il condensatore si
manterr carico per un certo periodo di tempo, mantenendo luscita a valore
alto.
Se invece dopo il passaggio di a valore alto la congurazione degli ingressi
cambia in modo da attivare la rete di pull-down, C
p
viene scaricato e la porta
commuta a valore basso. Si noti che se la rete di pull-down si disattiva la porta
non ritorna a valore alto.
M
2
rete di
pull-down
nMOS
V
AL
U

I
1
I
2
I
n
Figura 7.18: Schema a blocchi di una porta in logica dinamica con solo pMOS
di precarica.
27
Precharge/Evaluation
possibile generalizzare quanto osservato sopra e ricavarne un modo di realiz-
zare circuiti logici dinamici. Lo schema a blocchi di una rete dinamica del tipo
che abbiamo considerato visibile in gura 7.18.
Il funzionamento diviso in due fasi successive a seconda del valore di :
= L detta fase di precarica. Gli ingressi devono assumere valori tali da
non attivare la rete di pull-down. Qualunque rete in nMOS non attiva
se tutti gli ingressi sono a valore basso. Luscita viene precaricata a valore
alto.
= H detta fase di valutazione. Gli ingressi assumono il valore eettivo
per cui il blocco logico deve calcolare luscita. Se il valore assunto tale da
attivare la rete di pull-down, luscita si porter a livello basso, altrimenti
rimarr alta. Si noti che gli ingressi non possono variare ulteriormente no
alla fase di precarica successiva (la porta pu avere solo una transizione
da H a L e non viceversa).
Possiamo notare che questa tecnica ha diversi problemi: il pi grave che
in fase di precarica luscita viene portata a livello alto, mentre gli ingressi de-
vono essere a livello basso. Questo vuol dire che non possibile connettere
direttamente in cascata luscita allingresso di un altro blocco dello stesso tipo.
Se si devono mettere in cascata funzioni logiche dinamiche si pu agire in
diversi modi. Una possibilit alternare porte logiche basate su rete di nMOS di
pull-down e un pMOS di precarica con altre duali basate su una rete di pMOS
di pull-up e un nMOS di precarica. Per queste porte la precarica delluscita a
0 V e la fase di valutazione fa eventualmente commutare luscita a livello alto.
Gli ingressi in fase di precarica devono essere alti. Questa soluzione non ottima
nel senso che i pMOS sono pi lenti o pi grossi dei transistor nMOS.
Unaltra soluzione consiste nellaggiungere in serie alla rete di nMOS, verso
0 V, un ulteriore nMOS collegato allo stesso segnale di precarica , detto foot,
che disconnette la rete di pull-down in fase di precarica, ottenendo la struttura
di gura 7.19.
Domino Logic
Anche questa precauzione non sempre suciente a proteggere il circuito da
false commutazioni di porte di questo tipo connesse in cascata. Lo studio di
dettaglio delle tecniche usate fuori dagli scopi di questo corso, si pu tuttavia
accennare al fatto che se si aggiunge un inverter alluscita di una porta logica
del tipo di gura 7.19, si ottiene da un lato una porta logica NON invertente, in
grado di realizzare funzioni tipo AND o OR, dallaltro che nella fase di precarica
e allinizio della fase di valutazione luscita della porta a livello basso e quindi
compatibile con logiche dello stesso tipo. Questo accorgimento alla base della
struttura denominata domino logic, una delle pi utilizzate in pratica. Il nome
deriva dal fatto che, in caso di diversi livelli di logica in cascata, allinizio della
fase di valutazione il primo livello di logica eventualmente commuter, poi il
secondo, il terzo e cos via come nel caso di una serie di tessere del domino
disposte in verticale in riga.
28
M
2
M
1
rete di
pull-down
nMOS
V
AL
U

I
1
I
2
I
n
Figura 7.19: Schema a blocchi di una porta in logica dinamica con pMOS di
precarica e nMOS di abilitazione.
Charge sharing
La logica dinamica sore anche di altri problemi. Se ad esempio la rete di nMOS
quella di gura 7.17, si nota che i drain di M
1
e M
5
sono in parallelo e
formano un nodo intermedio che si trova in uno stato di alta impedenza in fase
di precarica se gli ingressi sono a livello basso. La tensione su questo nodo in
questo caso dipende da qual era il valore degli ingressi nella fase di valutazione
precedente. Se questo valore diverso dal livello alto e se nella fase di valutazione
successiva uno o entrambi gli ingressi C o D sono alti, mentre A e B sono bassi,
le capacit parassite delluscita e del nodo intermedio si vengono a trovare in
parallelo e quindi c tra loro un passaggio di carica e una variazione di tensione
delluscita. possibile che tale variazione sia sucientemente alta da portare
ad una commutazione non voluta delluscita. Tale fenomeno si chiama charge
sharing. Per evitarlo occorre aggiungere dei pMOS di precarica su tutti i nodi
intermedi a meno che la loro capacit parassita sia molto pi piccola di quella
relativa alluscita.
7.3.4 Logica a Transmission Gate
Unaltra tecnica atta a realizzare funzioni logiche utilizza come elemento base
non un inverter ma un transmission gate (in seguito TG), che abbiamo studiato
nel capitolo precedente. Questa tecnica sfruttata in particolare nella realiz-
zazione di circuiti logici programmabili, o FPGA (Field Programmable Gate
Array). Lelemento base realizzabile facilmente con una coppia di transmission
gate il multiplexer.
La funzione logica di un multiplexer quella di trasmettere alluscita U il
segnale binario A quando il segnale di selezione S alto, mentre sulluscita
29
compare il valore presente sul secondo ingresso B quando S basso. Il segnale
di controllo S il selettore del canale di ingresso e il circuito si comporta come
un deviatore elettronico a due vie.
U = A S +B S

S = 1 = U = A
S = 0 = U = B
Realizzare questa funzione in logica statica complementare richiede tre porte
NAND a due ingressi (o NOR a due ingressi) e un inverter, per un totale di 14
transistor. Risulta molto semplice vericare che la topologia di g. 7.20 realizza
la stessa funzione, utilizzando solo 6 transistor (i quattro di gura pi due
necessari per ricavare il segnale S se solo S disponibile).
A TG
1
TG
2
U
B
S
S
S
Figura 7.20: Realizzazione di un multiplexer (MUX) con transmission gate.
Quando S alto, il transmission gate inferiore TG
1
conduce, collegando eet-
tivamente luscita allingresso A. Essendo pilotato in controfase, il transmission
gate superiore TG
2
si trova in alta impedenza con questo valore di S.
Se invece S basso, TG
1
in alta impedenza mentre TG
2
conduce collegando
lingresso B alluscita U.
Luso dei transmission gate risulta particolarmente vantaggioso nella sinte-
si di altre porte logiche che richiedono molti transistor se realizzate in logica
complementare. Un esempio la funzione logica EX-OR.
Pur essendo una struttura pi compatta di quella ottenibile con logica com-
plementare, non sempre possibile o conveniente usarla, a causa di una sostan-
ziale dierenza tra porte a transmission gate e porte standard. Abbiamo detto
infatti che quando un TG attivo, instaura un percorso di bassa impedenza tra
ingresso e uscita. Il circuito equivalente una resistenza in serie tra il terminale
di ingresso e quello duscita, di valore pari alla R
ON
del TG. Il livello di tensio-
ne presente in ingresso viene dunque propagato alluscita, senza nessun tipo di
amplicazione o, per meglio dire, rigenerazione. Ogni rumore in ingresso sar
trasferito in uscita e le capacit parassite presenti nel circuito formeranno con
la R
ON
un ltro passabasso.
30
Porta 1
V
OL
0.5 V I
OL
5.0 mA
V
OH
4.5 V I
OH
5.0 mA
Porte L
V
IL
1.0 V I
IL
0.4 mA
V
IH
3.0 V I
IH
20 A
Tabella 7.4: Parametri elettrici delle porte di tipo 1 e L.
In una porta realizzata invece in logica statica complementare lingresso col-
legato a un comparatore di soglia e il livello della tensione duscita indipendente
dal rumore presente sullingresso, purch esso non superi la soglia.
Dunque impensabile utilizzare lunghe sequenze di TG per realizzare un
circuito logico complesso. Occorre in ogni caso interporre ogni qualche livello di
logica una porta complementare per evitare il rischio di un deterioramento del
segnale tale da indurre malfunzionamenti nel circuito logico.
7.4 Esempi pratici
I prossimi paragra presentano degli esempi di interconnessione e pilotaggio
di carichi con porte logiche di tecnologie diverse e illustrano con degli esempi
numerici i valori tipici delle grandezze elettriche di interesse.
7.4.1 Calcolo di fan-out
1 L
2
L
1
V
AL
R
PU
R
PD
L
N
Figura 7.21: Schema circuitale a cui fa riferimento lesempio 7.4.1.
Nello schema 7.21, R
PD
= 2 k e R
PU
= 10 k rappresentano un carico
NON standard associato alluscita della porta 1. V
AL
= 5 V. Le caratteristiche di
uscita della porta 1 e di ingresso delle porte L sono riportate in tabella 7.4.Qual
il massimo numero di porte L che possibile connettere alluscita della porta
1?
31
Soluzione
In primo luogo si pu osservare che le porte L sono compatibili con la porta 1
per quanto riguarda le tensioni. Infatti si ha che V
OL1
< V
ILL
e V
OH1
> V
IHL
.
Occorre poi vericare quante porte sia in grado di pilotare la porta 1 oltre al
carico rappresentato dalle due resistenze, calcolando la corrente totale assorbita
a livello alto e basso.
Livello alto Quando luscita della porta 1 a livello alto, se consideriamo il
nodo di uscita abbiamo due correnti entranti, quella della porta 1 e quella che
scorre nella resistenza R
PU
, e due correnti uscenti, quella che scorre in R
PD
e la somma delle correnti di ingresso nelle porte L. La tensione duscita deve
rimanere compresa tra V
OH1
e V
AL
e questo succede se |I
O1
| < |I
OH1
|.
Se consideriamo la tensione duscita pari a V
OH1
avremo il massimo contri-
buto ammissibile per la resistenza R
PU
e il minimo contributo della resistenza
R
PD
. Poich la corrente in R
PU
ha lo stesso verso della corrente duscita della
porta, questa rappresenta un aiuto alla porta 1, mentre la corrente in R
PD
rappresenta in questo caso un carico aggiuntivo. La corrente I
O1
pu quindi
essere espressa da:
I
O1
= n I
IHL
+
V
OH1
R
PD

V
AL
V
OH1
R
PU
|I
OH1
|
= I
O
= n 20 A +
4.5 V
2 k

0.5 V
10 k
5 mA = n 140
Livello basso Nella situazione di uscita bassa la porta 1 assorbe corrente,
no al massimo della I
OL
pari a 5 mA. Le resistenze giocano un ruolo opposto
al caso precedente: R
PU
rappresenta un carico supplementare che deve essere
assorbito da 1 oltre alla corrente uscente dagli ingressi delle porte logiche L;
la resistenza R
PD
invece facilita il pilotaggio assorbendo parte della corrente
proveniente dai carichi. Supponiamo che il carico sia massimo, il che equivale a
dire tensione sulluscita pari a V
OL
.
I
O
= n |I
IL
| +
V
AL
V
O
R
PU

V
O
R
PD
I
OL
I
O
= n 0.4 mA +
4.5 V
10 k

0.5 V
2 k
5 mA = n 12
Quindi il fan-out determinato da questa seconda situazione di utilizzo e il
massimo numero di porte logiche L che possono essere collegate vale dodici.
7.4.2 Pilotaggio di LED
Si vuole pilotare un diodo LED con un inverter TTL-LS. Si utilizzino le speciche
seguenti:
Tensione di alimentazione: V
AL
= 5 V.
Caratteristiche LED: V
ON
= 1.7 V, corrente necessaria per avere una
buona illuminazione del diodo: I
ON
= 5 mA.
Caratteristiche di uscita della porta: V
OH
= 2.7 V; V
OL
= 0.5 V; I
OH
=
400 A; I
OL
= 8 mA.
32
R
(a)
V
AL
R
(b)
Figura 7.22: Due possibili modalit di collegamento del diodo LED.
Soluzione
I diodi LED sono diodi costruiti con semiconduttori diversi dal silicio (GaAs,
GaP, GaAsP,SiC, GaInP, ...). La caratteristica tensione-corrente di un LED
simile a quella di un diodo normale, a parte il fatto che la tensione di soglia
diversa e dipende dalla composizione chimica del LED e dal colore della luce
emessa. In funzione del tipo di diodo varia anche la corrente necessaria per
ottenere una buona luminosit. Le speciche dellesercizio si riferiscono a un
tipico LED rosso usato per segnalazione di stato di circuiti digitali.
Non possibile collegare alluscita di un circuito logico direttamente un LED
verso 0 V o V
AL
in quanto non risulterebbe controllabile la corrente allinterno
del dispositivo. Occorre allora inserire in serie una resistenza di valore opportu-
no. I due circuiti possibili, riferendo il LED a 0 V o V
AL
, sono rappresentati in
gura 7.22.
Qualora la capacit di pilotaggio della porta logica sia simmetrica (cio
|I
OH
| |I
OL
|), entrambi i circuiti sono utilizzabili purch la corrente assor-
bita dal LED sia inferiore alla massima corrente fornibile dalla porta, mentre se
la caratteristica della porta asimmetrica occorre stabilire quale soluzione sia
possibile. Occorre cio analizzare per entrambi i circuiti il funzionamento con
uscita a livello alto e basso.
1. Con la prima topologia (g. 7.22.a) non ci sono problemi a livello basso:
V
OL
= 0.5 V e il LED in questo caso risulta spento. Se per si analizza
che cosa succede con luscita della porta a livello logico alto, si scopre che
la massima corrente che la porta in grado di fornire al LED, I
OH
=
0.4 mA, decisamente insuciente ad accendere il LED.
2. Utilizzando la seconda soluzione (g. 7.22.b), a livello basso pu scorrere
corrente nel LED: infatti la corrente viene assorbita dalla porta e la ten-
sione duscita pari al massimo a V
OL
. Il valore massimo della corrente
duscita compatibile con la corrente che deve scorrere nel LED, I
ON
.
Dunque la corrente passa nel LED e nella resistenza R, provocando nel
LED una caduta di tensione pari alla sua tensione di accensione V
ON
e
33
A
LS05
*
L
R
pu
V
AL
B
LS05
*
HC
LS
Figura 7.23: Schema dellesempio 7.4.3.
sulla resistenza una caduta pari ad almeno V
AL
V
ON
V
OL
. allora suf-
ciente dimensionare R perch in queste condizioni si abbia una corrente
pari a I
ON
nella resistenza stessa:
R =
V
AL
V
ON
V
OL
I
ON
= 560
Che cosa succede quando luscita della porta a livello alto? A prima
vista potrebbe sembrare che nel LED possa anche in questo caso scorrere
corrente, in quanto V
OH
= 2.7 V sembra tale da permettere un passaggio
di corrente nel dispositivo (V
AL
V
ON
= 3.3 V). In realt questo non
succede, perch la porta a livello alto non in grado di assorbire corrente
ma solo eventualmente di generarla. In questo caso quindi la tensione
duscita salir a un livello tale da non permettere passaggio di corrente in
R.
La capacit di pilotaggio asimmetrico delle porte TTL, vericata in questo
esercizio, obbligava i progettisti a soluzioni del tipo presentato, cio a pilotare i
carichi quando le porte logiche presentavano un livello di uscita basso. La tecno-
logia attuale permette di costruire porte con capacit di pilotaggio simmetrica,
per cui possibile indierentemente pilotare carichi riferiti a 0 V o a V
AL
.
7.4.3 Wired-or
Si vuole dimensionare la resistenza di pull-up R
PU
nel circuito riportato nello
schema 7.23. Si ricorda che il simbolo sulle porte logiche indica il fatto che la
loro uscita open collector.
Si considerino le seguenti caratteristiche elettriche delle porte logiche:
porte open collector tipo LS05:
V
OH
5.5 V; I
OH
= 100 A; V
OL
= 0.5 V; I
OL
= 8 mA;
porta di tipo HC:
V
IH
= 3.15 V; I
IH
= 1 A; V
IL
= 1.35 V; I
IL
= 1 A;
34
porta di tipo LS standard:
V
IH
= 2 V; I
IH
= 20 A; V
IL
= 0.8 V; I
IL
= 400 A;
Soluzione
La linea pu assumere valore logico alto quando sia A che B hanno uscita in
alta impedenza (corrispondente al livello alto di una porta totem-pole), oppure
livello basso in tutti gli altri casi. Per dimensionare R
PU
occorre studiare il
comportamento del circuito considerando tutte le congurazioni delle uscite.
Analizzeremo separatamente lo stato alto e basso della linea.
Livello alto Leggendo le caratteristiche delle porte LS05 ci accorgiamo che
sono denite una tensione V
OH
e una corrente I
OH
. Dato che la porta non in
grado di fornire un livello di tensione denito a livello alto, che di fatto per
la porta un livello Z, occorre capire il signicato di tali parametri. Per quanto
riguarda la tensione, V
OH
in questo caso la massima tensione che la linea pu
presentare senza provocare danni alluscita della porta quando questa in alta
impedenza. Di fatto V
OH
indica la massima tensione a cui pu essere collegata
la resistenza di pull-up. Esistono delle porte open collector ad alta tensione in
cui questo valore supera di molto la tensione di alimentazione del dispositivo.
Laltro parametro riguardante luscita alta, I
OH
, rappresenta la massima corren-
te parassita che pu essere assorbita dalla porta anche quandessa idealmente
scollegata nello stato Z. necessario tenere conto di questo parametro in quanto
rappresenta un termine spesso preponderante nella corrente che scorre in R
PU
con linea a livello alto.
Calcoliamo la corrente che scorre a livello alto nella resistenza di pull-up:
I
PU
= 2I
OH
+I
IH,HC
+I
IH,LS
= 0.221 mA
La tensione sulla linea allora sar:
V
L
= V
AL
V
PU
= V
AL
R
PU
I
PU
Il potenziale V
L
deve essere maggiore o uguale della minima delle tensio-
ni riconoscibile come alta in ingresso alle porte HC e LS per poterle pilotare
correttamente.
V
L
max (V
IH,HC
= 3.15 V, V
IH,LS
= 2 V)
R
PU

V
AL
V
IH,HC
I
PU
=
5 V 3.15 V
221 A
8.2 k
Anche se questo dimensionamento corretto, sarebbe preferibile utilizzare
come valore minimo di tensione sulla linea una tensione un po pi alta di 3.15 V
in modo da garantire un certo margine di rumore. Considerando ad esempio
3.7 V, il valore massimo di resistenza diventa circa 5.6 k.
35
Livello basso La linea pu portarsi a livello logico basso in tre modi diversi:
A = L, B = L; A = Z, B = L; A = L, B = Z. La prima di queste combinazioni
vede entrambe le porte attive, in grado quindi di assorbire corrente, mentre nelle
altre due una sola porta deve gestire tutta la corrente proveniente da resistenza
di pull-up e ingressi. Scegliamo dunque per il dimensionamento del circuito una
di queste congurazioni, pi sfavorevoli della prima. La porta non attiva viene
completamente ignorata nei calcoli: non si considera cio la corrente I
OH
di cui
abbiamo tenuto conto nei calcoli a livello alto, in quanto un termine parassita
sulla cui presenza non si pu fare adamento e che, se considerato, sarebbe un
aiuto alla porta attiva. Dunque il caso peggiore non considerarlo. Lequazione
al nodo L quindi:
I
O
=
V
AL
V
O
R
PU
+I
IL,HC
+ I
IL,LS
I
OL
La tensione V
O
sulla linea al massimo pu valere V
OL
, da cui:
5 V0.5 V
R
PU
+ 0.4 mA 8 mA
R
PU
592
Il valore minimo per R
PU
nella serie E12 680 .
Osservazioni nali Lanalisi del circuito ha portato ad ammettere per R
PU
una gamma di valori ampia circa una decade. Quali sono le scelte progettuali
pi corrette per dimensionare in modo ottimo tale componente? I due parametri
che generalmente si considerano sono:
Dissipazione di potenza. Una resistenza di valore basso porta ad una mag-
giore corrente sulla linea a livello basso (a livello alto la corrente dipende
poco dal valore di resistenza). Viene quindi aumentata la dissipazione di
potenza del circuito.
Velocit di commutazione. La transizione H-L sulla linea dovuta allen-
trata in conduzione di una delle uscite ed quindi indipendente dal valore
della resistenza, mentre la transizione L-H dovuta al passaggio di unu-
scita dallo stato attivo allo stato di alta impedenza. La linea si porta a
livello alto solo grazie a R
PU
, la quale deve caricare le capacit parassi-
te presenti nel circuito. R
PU
e le capacit parassite formano quindi un
circuito RC in cui la costante di tempo dipende dalla resistenza. Risul-
ta quindi evidente come una resistenza pi bassa porti a una maggiore
velocit delle transizioni L-H.
A seconda delle necessit e delle caratteristiche dei segnali trattati, ossia del
contesto nel quale va inserito il circuito, si sceglie un valore della resistenza di
pull-up atto ad ottimizzare le prestazioni richieste.
36
7.5 Comportamento dinamico delle porte logi-
che
7.5.1 Denizioni
Finora ci siamo occupati della caratteristica statica dei circuiti logici. Studiamo
ora che cosa succede durante la commutazione da un livello logico allaltro.
Essendo le porte logiche dei componenti reali, non reagiranno istantanea-
mente ad una variazione degli ingressi. Inoltre la commutazione non avverr in
tempo 0. Occorre denire in modo rigoroso come misurare i ritardi dei segnali e i
tempi necessari a commutare. Il tempo impiegato nella commutazione alto-basso
di un segnale logico viene detto tempo di discesa, o fall time. E denito come
il tempo intercorso tra lattraversamento da parte del segnale della soglia posta
al 10% dellampiezza della transizione e lattraversamento della soglia posta al
90% della stessa (g. 7.24a). In modo analogo denito il tempo necessario alla
commutazione basso-alto. Tale tempo indicato come tempo di salita o rise
time.
Per quanto riguarda il tempo necessario a propagare il segnale allinterno
di un circuito logico si parla di propagation delay e si misura dallistante in
cui il segnale dingresso supera una soglia posta a met della transizione di
ingresso allistante in cui il segnale duscita supera una soglia posta a met della
transizione duscita (g. 7.24b). Il ritardo di propagazione pu essere diverso nel
passaggio del segnale da alto a basso (t
pdHL
) e da basso ad alto (t
pdLH
).
90%
10%
t
r
(a)
t
f
t
V
50%
t
pdHL
(b)
t
pdLH
t
V
Figura 7.24: a) Tempi di salita e discesa; b) ritardi di propagazione tra ingresso
e uscita di un inverter
7.5.2 Ritardo di propagazione
Per studiare come caratterizzare il ritardo di propagazione di un segnale in un
circuito digitale possiamo rifarci ad uno schema molto semplice, rappresentante
37
M
1
M
2
V
AL
In
M
3
M
4
V
AL
C
o
C
i
C
l
Figura 7.25: Capacit equivalenti in un collegamento tra porte logiche.
un inverter la cui uscita sia collegata ad un altro dispositivo dello stesso tipo. Il
circuito 7.25 rappresenta appunto due inverter CMOS in cascata.
Nella gura 7.25 il condensatore C
o
rappresenta la capacit parassita asso-
ciata alluscita del primo inverter mentre il condensatore C
i
tiene conto della
capacit parassita relativa allingresso del secondo inverter. Lulteriore conden-
satore C
l
rappresenta invece la capacit parassita della linea di collegamento.
Nella nostra analisi supporremo le porte vicine, cio in posizione tale per cui
la lunghezza della linea di collegamento sia trascurabile rispetto alla veloci-
t di commutazione delle porte. Se cos non fosse, dovremmo considerare il
collegamento una linea di trasmissione e la trattazione sarebbe pi complessa.
Al ne di far commutare lo stato del secondo inverter necessario che la
tensione al suo ingresso attraversi la tensione di inversione (tipicamente a met
alimentazione). Supponiamo ad esempio che allinizio luscita del primo inver-
ter sia bassa. In questo caso il MOS M
1
sar in conduzione (zona resistiva)
e la tensione sulla linea sar 0 V. Facciamo ora commutare il primo inverter,
cio cambiamo la tensione di ingresso in modo che M
1
si interdica e M
2
vada
in conduzione. Ci vorr un tempo iniziale per spegnere M
1
e accendere M
2
.
Chiamiamo questo tempo t
0
.
Quando M
2
va in conduzione, per poter variare la tensione sulla linea deve
caricare tutte le capacit presenti. Assumendo che la transizione in ingresso al
primo inverter sia veloce, M
2
si trover ad operare in zona di saturazione di
canale per gran parte della durata della transizione. Ai ni del ritardo di propa-
gazione, interessa valutare il tempo impiegato dalla linea a superare la tensione
di inversione del secondo inverter. Per semplicare la trattazione possiamo allo-
ra assumere che la corrente di uscita di M
2
sia costante per tutto questo tempo
e pari ad un certo valore I
Dp
.
Allora il tempo t
1
necessario per arrivare alla tensione di inversione V
inv
sar:
V
inv
=
I
Dp
C
o
+C
l
+C
i
t
1
cio
t
1
=
V
inv
I
Dp
(C
o
+ C
l
+C
i
)
38
Il ritardo di propagazione sar la somma del tempo iniziale t
0
e il tempo t
1
in cui la tensione duscita sale no a raggiungere la tensione V
inv
, cio
t
pd
= t
0
+
V
inv
I
Dp
(C
o
+C
l
+C
i
)
Secondo questo modello vi una dipendenza lineare tra ritardo di propaga-
zione e capacit parassita totale del circuito pilotato dalla porta. In un circuito
reale non sempre le connessioni sono punto-punto, spesso una porta pilota di-
versi ingressi. Allora il ritardo complessivo dipende in modo lineare dal numero
di porte collegate, a causa dei loro elementi parassiti aggiunti al sistema.
Il costruttore fornisce sui datasheet i tempi di salita, discesa ed il ritardo
di propagazione considerando un carico capacitivo standard, solitamente 50 pF.
Data la dipendenza lineare tra carico capacitivo e ritardi, sui datasheet, di solito,
si trova unespressione di questo genere:
t
pLH
= t
pLH
|
50 pF
+k
ps
pF
Lespressione costituita da due termini:
1. Ritardo di propagazione su carico standard, pari a 50 pF: si considera tale
il carico apportato dalla pista di interconnessione pi un singolo ingresso.
La capacit relativa a un ingresso elencata nel datasheet ed di solito
intorno ai 15 pF. I 35 pF rimanenti si considerano dovuti alla capacit
dellinterconnessione (valore ragionevole come prima approssimazione per
interconnessioni su circuito stampato tra componenti non troppo lontani).
2. Per ogni pF aggiuntivo si avranno k ps in pi. In pratica si contano le porte
in pi rispetto alla prima e si sommano le relative capacit parassite per
calcolare il ritardo aggiuntivo introdotto. Se linterconnessione lunga (ma
non tanto da ricadere nel modello a linea di trasmissione) si aggiunger
una capacit in pi che tenga conto anche di questo fattore.
Risulta dunque evidente che la velocit di un circuito logico dipende dal fa-
nout delle singole porte. Se ritorniamo ad esaminare la tecnologia CMOS, ad
esempio la famiglia HC le cui caratteristiche statiche sono riportate in tabel-
la 7.1, possiamo vericare come dal punto di vista statico in tale tecnologia le
uscite possano pilotare migliaia di porte dello stesso tipo. Per la stessa famiglia
possiamo calcolare il ritardo di propagazione in funzione del numero di porte
collegate a una singola uscita. Ci accorgiamo allora che le prestazioni della porta
degradano rapidamente con il carico e il massimo numero di ingressi collegabili
limitato a una ventina, per applicazioni in cui sia richiesta una media veloci-
t operativa. Dunque il massimo fanout dipende non solo dalle caratteristiche
statiche delle porte ma anche, e, per la tecnologia CMOS, principalmente, da
quelle dinamiche.
7.5.3 Considerazioni energetiche
Abbiamo visto che le porte CMOS, se connesse solo ad altre porte costruite
con la stessa tecnologia, in pratica non consumano energia quando il livello di
uscita sia sso, basso o alto, a parte per gli eetti di una modestissima corrente,
39
detta quiescent current. Abbiamo altres notato che la commutazione tra un
livello e laltro comporta la carica/scarica dei condensatori parassiti associati ai
vari nodi del circuito. Tale carica richiede lassorbimento di corrente in modo
impulsivo dal sistema di alimentazione e quindi il consumo di una certa quantit
di energia.
importante quanticare lenergia dissipata durante una transizione, per
arrivare a calcolare la potenza dissipata dal circuito e quindi dimensionare
lalimentatore.
Ricordiamo che lenergia immagazzinata in un condensatore C carico ad una
tensione V vale:
E =
1
2
CV
2
Riferiamoci di nuovo alla gura 7.25. Se supponiamo di voler far commutare
luscita dellinverter da alta, quindi con condensatori parassiti carichi allin-
circa alla tensione di alimentazione, a bassa, il transistor M
1
dovr dissipare
unenergia pari a:
E
T
=
1
2
CV
2
AL
dove C la capacit totale vista dalla porta, cio C = C
o
+C
l
+C
i
. Per riportare
luscita a livello alto, dovr transitare la stessa quantit di carica nel transistor
M
2
, il quale si trover a dissiparre una quantit di energia analoga.
Supponiamo che il circuito sia sincrono con un clock a frequenza f
CLK
. Un
inverter (o un buer) collegato direttamente al segnale di clock eseguir un ciclo
di carica e scarica ad ogni impulso di clock. La potenza dissipata da questa porta
vale allora:
P =
E
T
= E f = P
d
= 2

1
2
CV
2

f
CLK
= f
CLK
CV
2
Se adesso passiamo a considerare tutte le porte presenti nel circuito, potre-
mo denire come C la capacit media associata ad una singola porta. Se poi
chiamiamo n il numero medio di porte che commutano ad ogni ciclo di clock,
possiamo stimare la potenza media dissipata dal circuito:
P
d
= n f
CLK
C V
2
AL
Questa relazione importante perch ci indica quali sono i parametri su
cui agire per limitare la potenza dissipata da un circuito logico. Prendiamo in
considerazione ogni termine:
Tensione di alimentazione: la potenza dissipata dipende dal quadrato di
questo parametro, per cui evidente che convenga ridurre il valore della
tensione di alimentazione al minimo necessario a garantire il funziona-
mento del circuito. Per questo motivo i circuiti interni dei sistemi digitali
complessi sono alimentati a tensioni basse (dellordine del volt).
Capacit equivalente del circuito: poich questa dipende essenzialmente
dallarea dei dispositivi, questo parametro migliora riducendo le dimen-
sioni del circuito.
40
Numero di porte che commutano per ogni ciclo di clock. Ovviamente
questo parametro dipende dalla complessit del circuito, ma possibi-
le limitare il numero medio di commutazioni mediante opportune scelte
realizzative. Ad esempio nel progetto di un microprocessore dimostra-
to che opportune scelte nella codica delle istruzioni riducono la potenza
dissipata dal dispositivo.
Frequenza di clock. Ovviamente le prestazioni di un microprocessore di-
pendono dalla frequenza di clock, quindi questo parametro non sempre
a disposizione del progettista. In dispositivi portatili la frequenza di clock
viene abbassata quando il sistema non ha bisogno di grossa potenza di
calcolo per aumentare la autonomia delle batterie. In sistemi ad alte pre-
stazioni la frequenza di clock viene aumentata per far fronte ai picchi di
richieste computazionali.
41