Elettronica Generale Progettazione in tecnologia CMOS di ... · In elettronica questo termine e...
Transcript of Elettronica Generale Progettazione in tecnologia CMOS di ... · In elettronica questo termine e...
Scuola Politecnica e delle Scienze di BaseCorso di Laurea in Ingegneria Informatica
Elaborato finale in Elettronica Generale
Progettazione in tecnologiaCMOS di una linea di ritardo
programmabile
Anno Accademico 2013/2014
Candidato: Erasmo Purificato
matr.N46/001371
Indice
Introduzione vi
1 Struttura di una linea di ritardo digitale 1
1.1 Modelli MUX-based . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Modelli NAND-based . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Modelli TINV-based . . . . . . . . . . . . . . . . . . . . . . 3
1.4 Fenomeno del glitching . . . . . . . . . . . . . . . . . . . . . 3
2 Analisi della DCDL NAND-based 5
2.1 DCDL NAND-based glitch-free . . . . . . . . . . . . . . . . 7
2.2 Proprieta di commutazione glitch-free . . . . . . . . . . . . 9
3 Circuito di pilotaggio 11
3.1 Progettazione del Flip-flop . . . . . . . . . . . . . . . . . . . 12
3.2 Progettazione circuito NAND-based . . . . . . . . . . . . . 16
3.3 Risultati delle simulazioni sul circuito . . . . . . . . . . . . 17
4 Progettazione della linea di ritardo 19
4.1 Progettazione DE . . . . . . . . . . . . . . . . . . . . . . . . 20
4.2 Simulazione della commutazione glitch-free . . . . . . . . . 21
4.3 Simulazione con forzamento di glitch . . . . . . . . . . . . . 22
ii
Indice
4.4 Ritardo prodotto dalla DCDL . . . . . . . . . . . . . . . . . 23
4.5 Potenza dissipata . . . . . . . . . . . . . . . . . . . . . . . . 24
5 Conclusioni 25
Ringraziamenti 27
Bibliografia 28
iii
Elenco delle figure
1.1 Effetto del glitch su un segnale . . . . . . . . . . . . . . . . 3
2.1 Struttura DCDL NAND-based con problema di glitch . . . 5
2.2 Struttura DCDL NAND-based glitch-free . . . . . . . . . . 7
3.1 Circuito di pilotaggio per i bit di controllo della DCDL . . . 11
3.2 Andamento dei segnali di un Flip-flop . . . . . . . . . . . . 12
3.3 Flip-flop realizzato con LTspice IV . . . . . . . . . . . . . . 13
3.4 Overlap segnali di clock . . . . . . . . . . . . . . . . . . . . 14
3.5 Funzionamento Flip-flop . . . . . . . . . . . . . . . . . . . . 14
3.6 Clock-to-Q . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.7 Grafico tempo di setup troppo breve . . . . . . . . . . . . . 15
3.8 Porta NAND in tecnologia CMOS . . . . . . . . . . . . . . 16
3.9 Circuito di pilotaggio implementato in LTspice IV . . . . . 17
3.10 Tempo di propagazione High-Low della porta NAND . . . . 17
3.11 Tempo di propagazione Low-High della porta NAND . . . . 18
3.12 Grafico del vincolo temporale ∆s . . . . . . . . . . . . . . . 18
3.13 Grafico del vincolo temporale ∆t . . . . . . . . . . . . . . . 18
4.1 Elemento di ritardo LTspice IV . . . . . . . . . . . . . . . . 19
4.2 DCDL utilizzata progettata in LTspice IV . . . . . . . . . . 20
iv
Elenco delle figure
4.3 Tempificazione dei bit di controllo del ritardo . . . . . . . . 21
4.4 Segnale d’uscita L-H della DCDL . . . . . . . . . . . . . . . 22
4.5 Segnale d’uscita H-L della DCDL . . . . . . . . . . . . . . . 22
4.6 Segnale d’uscita della DCDL con glitch . . . . . . . . . . . . 22
4.7 Durata temporale glitch . . . . . . . . . . . . . . . . . . . . 23
4.8 Ritardo prodotto dalla DCDL . . . . . . . . . . . . . . . . . 23
4.9 Potenza dissipata dalla DCDL . . . . . . . . . . . . . . . . 24
v
Introduzione
Le linee di ritardo sono dei componenti elettronici ideati per generare
autonomamente dei ritardi tra il segnale posto in ingresso ad un circuito
e le varie uscite disponibili.
Quando vengono collegati in sequenza vari componenti elettronici, spesso
non si considera il tempo di ritardo che un segnale elettrico impiega per
attraversare ognuno dei componenti del circuito. Accade quindi che il
segnale, pur potendo conservare la sua forma, si troverebbe ad assumere
un ritardo temporale sicuramente maggiore rispetto al segnale originario.
Per far sı, quindi, che segnali che devono essere necessariamente sincro-
nizzati, o segnali di controllo, possano giungere contemporaneamente a
moduli diversi posti nella stessa piastra, sono stati prodotti questi circuiti.
Sebbene l’introduzione delle linee di ritardo digitali programmabili
(denominate DCDL - Digitally Controlled Delay-Lines) risalga a tempi
relativamente recenti, esse rappresentano, oggigiorno, un elemento fonda-
mentale in numerose applicazioni, come gli ADPLL (All-Digital Phase-
Locked Loop, circuiti elettrici ampiamente utilizzati nell’ambito delle tele-
comunicazioni che permettono di creare un segnale la cui fase ha una rela-
zione fissa con quella di un segnale di riferimento), gli ADDLL (All-Digital
Delay-Locked Loop, sistemi elettronici non lineari con feedback negativo in
grado di generare un certo numero di segnali in uscita sfasati rispetto ad
vi
Introduzione
un clock in ingresso che, passando attraverso una catena di celle a ritardo
variabile, viene ritardato fino a che la differenza di fase fra l’ingresso e l’u-
scita e esattamente un ciclo di clock) o gli SSCG (Spread-Spectrum Clock
Generator, componenti utilizzati in alcuni sistemi digitali sincroni, in par-
ticolare quelli contenenti microprocessori, per ridurre la densita spettrale
delle interferenze elettromagnetiche che questi sistemi generano), senza
dimenticare le molte applicazioni nell’ambito sonoro: dalla progettazione
di innumerevoli algoritmi per l’elaborazione dei segnali audio, come ad
esempio quelli per la generazione di eco e riverbero, fino alla simulazione
dell’acustica di una stanza, passando per la sintetizzazione del suono di
strumenti musicali a fiato o a corde.
Inoltre, dato che con le attuali tecnologie si prevede che l’elaborazione
dei segnali analogici sia progressivamente sostituita da un’elaborazione nel
dominio digitale, va considerato che, in questo scenario, le DCDL pos-
sono giocare il ruolo di convertitori digitali-analogici (DAC) nei circuiti
tradizionali (analog-intensive).
vii
Capitolo 1
Struttura di una linea di
ritardo digitale
In questo capitolo verranno, dapprima, descritte brevemente tutte le
possibili topologie di implementazione di una linea di ritardo digitale e
i parametri critici dei vari modelli e, successivamente, verra analizzato il
problema del glitch e i modi per evitarlo.
1.1 Modelli MUX-based
L’approccio classico di progettazione di una DCDL prevede di utilizza-
re una concatenazione di celle di ritardo ed un multiplexer per selezionare
la cella d’uscita desiderata. In queste DCDL MUX-based, il ritardo del
multiplexer aumenta con l’aumentare del numero di celle.
Per molte applicazioni che utilizzano questa tipologia di linee di ritar-
do, un parametro critico e rappresentato dal ritardo minimo della DCDL
(tmin), poiche determina la frequenza massima del circuito. Ad esempio,
per gli ADSSCG (All-Digital SSCG) una sincronizzazione corretta e otte-
1
Capitolo 1. Struttura di una linea di ritardo digitale
nuta semplicemente imponendo che tmin sia piu piccolo di meta periodo
del clock in ingresso al circuito. In altre applicazioni, invece, l’ampio tmin
delle DCDL MUX-based puo essere ridotto utilizzando una topologia di
multiplexer ad albero.
Un ulteriore modello prevede la progettazione della DCDL utilizzando
una cascata regolare di uguali elementi di ritardo (definiti DE - Delay
Elements) che, oltre a permettere un semplice schema realizzativo, rea-
lizzano una struttura fortemente lineare. Ogni DE e costruito usando un
invertitore e un multiplexer invertente. Questa topologia presenta due de-
bolezze: il primo inconveniente e dovuto ai differenti ritardi dell’invertitore
e del multiplexer, mentre il secondo e legato esclusivamente al considere-
vole ritardo del multiplexer, che fornisce una notevole risoluzione all’intero
circuito.
1.2 Modelli NAND-based
Come per il modello precedentemente illustrato, anche questa struttura
di DCDL fa uso di una cascata di DE uguali, ma in questo tipo di circuito, il
multiplexer delle precedenti DCDL e concettualmente spalmato tra tutte le
celle del DE. In questo modo il ritardo minimo tmin e molto basso e diventa
indipendente dal numero di celle. Ogni elemento di ritardo e formato
solamente da porte NAND e cio permette di ottenere una buona linearita
e risoluzione. Un’analisi piu approfondita di questa topologia verra fatta
in seguito, poiche utilizzero proprio questo modello per la progettazione
della mia linea di ritardo.
2
Capitolo 1. Struttura di una linea di ritardo digitale
1.3 Modelli TINV-based
Per completezza e doveroso citare anche questa ulteriore struttura di
DCDL, sempre costituita da DE che in questo caso, pero, sono costrui-
ti usando degli invertitori tri-state (TINV). Dal momento che la rete di
pull-up di un TINV richiede due serie di dispositivi, al contrario di una
porta NAND che utilizza un singolo dispositivo, abbiamo che la risolu-
zione di questo modello e sicuramente maggiore della risoluzione delle
DCDL NAND-based. Di contro, pero, questa topologia ha il vantaggio,
non indifferente, di evitare facilmente il problema del glitch, utilizzando
un particolare codice di controllo.
1.4 Fenomeno del glitching
Si pensa che il vocabolo inglese glitch derivi dal termine tedesco glitschen
(slittare) e dalla parola yiddish gletshn (scivolare, pattinare).
In elettronica questo termine e usato per indicare un picco breve ed im-
provviso (non periodico) in una forma d’onda, causato da un errore non
prevedibile. Nei sistemi che impiegano DCDL, il glitching e un problema
di progettazione piuttosto comune che interessa il transitorio del segnale
d’uscita di questi circuiti causando una serie di commutazioni spurie in-
desiderate.
Figura 1.1: Effetto del glitch su un segnale
Poiche nelle piu comuni applicazioni le DCDL sono impiegate per processa-
3
Capitolo 1. Struttura di una linea di ritardo digitale
re e/o generare segnali di clock, l’operazione di glitch-free e assolutamente
necessaria.
Nelle tipologie di DCDL MUX-based e TINV-based, il glitch puo essere
evitato usando un codice termometrico per i bit di controllo dei DE, mentre
per le DCDL NAND-based ”tradizionali”, il problema del glitch e quasi
totalmente irrisolto e questo inconveniente limita notevolmente l’impiego
delle DCDL NAND-based, a vantaggio delle altre strutture.
4
Capitolo 2
Analisi della DCDL
NAND-based
Prima di passare ad illustrare nel dettaglio la DCDL utilizzata, e do-
veroso descrivere la struttura che nel capitolo precedente ho definito co-
me DCDL NAND-based ”tradizionale”, per indicare la linea di ritardo
maggiormente impiegata, riferendosi a modelli con DE formati da porte
NAND.
Figura 2.1: Struttura della DCDL NAND-based con problema di glitch
In figura 2.1 e mostrata una linea di ritardo formata da quattro DE, ognu-
no composto da quattro NAND, nel quale ”A” indica il fast input di ogni
porta, mentre con ”D” sono indicate le cosiddette dummy cells, ovvero
5
Capitolo 2. Analisi della DCDL NAND-based
delle porte fittizie aggiunte con il solo compito di bilanciare il carico.
Il ritardo del circuito e controllato attraverso i bit di controllo Si, che
codificano il codice di controllo del ritardo (denominato c) con un
codice termometrico:
Si = 1 se i ≥ 0
Si = 0 se i < 0
Usando questa codifica, ogni DE puo essere in pass-state (Si = 0) oppure
in turn-state (Si = 0). Tutte le porte NAND presentano lo stesso carico
(costituito da due porte NAND) e per questo si puo assumere, in pri-
ma approssimazione, che abbiano lo stesso ritardo. Questa considerazione
permette di scrivere il ritardo δ (da In a Out) come:
δ = 2tNAND + 2tNAND · c
dove tNAND = (tNANDLH+ tNANDHL
)/2 rappresenta il tempo di pro-
pagazione di una porta NAND, ovvero l’intervallo temporale necessario
affinche una commutazione dell’ingresso si manifesti in uscita. In partico-
lare, il tNANDLH(e viceversa il tNANDHL
) e definito come la distanza dal
punto in cui il segnale d’ingresso ha raggiunto il 50% della commutazione
alto-basso (H-L) al punto in cui il segnale d’uscita ha raggiunto il 50%
della conseguente commutazione basso-alto (L-H).
Si puo osservare che l’espressione di δ precedente rimane invariata sia per
commutazioni H-L che per commutazioni L-H dell’uscita e cio porta a defi-
nire tmin = 2tNAND e tR = 2tNAND, dove tR, tempo di risoluzione della
DCDL, rappresenta il minimo ritardo ottenibile con la linea di ritardo.
La figura 2.1 mostra come questa DCDL sia affetta da glitch anche
considerando solo la commutazione dei bit di controllo mantenendo stabi-
le il segnale d’ingresso. Piu in generale, il problema del glitch della DCDL
NAND-based appena descritta cresce perche, per un codice di controllo
pari a c, tutti i segnali αi e βi in figura, con i ≥ c, sono bloccati a 1,
6
Capitolo 2. Analisi della DCDL NAND-based
mentre per i < c, lo stato logico dei segnali αi e βi dipende dall’ingresso
In. Quando viene aumentato il codice di controllo, lo stato logico dell’u-
scita diventa dipendente da una porzione della DCDL per il quale αi e βi
commutano da 1 a uno stato logico dipendente da In, e questa commuta-
zione puo determinare glitch in uscita. Da queste considerazioni ricaviamo,
inoltre, che non puo esserci glitch quando il codice di controllo del ritardo
viene decrementato.
2.1 DCDL NAND-based glitch-free
In tempi recenti e stata sviluppata e proposta una nuova topologia di
DCDL NAND-based, attraverso la quale si riesce ad evitare il problema
del glitch presente nelle altre strutture della stessa tipologia (per i dettagli
della pubblicazione si faccia riferimento a [1]).
Figura 2.2: Struttura della DCDL NAND-based glitch-free
Come per la struttura precedente, anche in questo caso, ”A” denota il
fast input della porta NAND, mentre con la lettera ”D” sono indicate le
dummy cells, utilizzate per il bilanciamento del carico.
Si puo notare come, in questa struttura, ogni DE e formato da sei porte
NAND ed inoltre vengono utilizzati due set di bit di controllo per regolare
il ritardo della DCDL:
7
Capitolo 2. Analisi della DCDL NAND-based
• i bit Si, come per il modello gia descritto, codificano il codice di
controllo c usando un codice termometrico:
Si = 1 se i ≥ 0
Si = 0 se i < 0
• i bit Ti codificano ancora il codice di controllo c facendo uso, pero,
di un codice one-cold : Ti = 1 per i 6= c + 1, Tc+1 = 0.
La figura 2.2 mostra lo stato di tutti i segnali nel caso In = 1, c = 1.
In accordo alla codifica utilizzata per i bit di controllo, ogni DE puo
essere in uno di tre possibili stati, ad ognuno dei quali corrispondono i
valori di Si e Ti riassunti nella Tabella 2.1 riportata nel seguito.
I DE con i < c sono in pass-state: in questo stato l’uscita della NAND
”3” e uguale a 1 e la NAND ”4” permette la propagazione del segnale alle
porte NAND del livello inferiore.
Il DE con i = c e in turn-state: in questo stato l’uscita del DE e passata
all’uscita della NAND ”3”.
Il successivo DE (i = c + 1) e in post-turn-state: in questo elemento
di ritardo l’uscita della NAND ”4” e bloccata a 1, permettendo la propa-
gazione, nel DE precedente (che e in turn-state), dell’uscita della NAND
”3” attraverso la NAND ”4”.
Tutti i rimanenti DE, con i > c + 1, sono ancora in turn-state.
Stato DE Si Ti
Pass 0 1Turn 1 1
Post-turn 1 0
Tabella 2.1: Possibili stati logici dei DE della DCDL
8
Capitolo 2. Analisi della DCDL NAND-based
In questa DCDL lo stato di tutti i segnali αi e βi dipende dall’ingresso:
α2i = β2i = In e α2i+1 = β2i+1 = In, con la sola eccezione di βc , che rimane
bloccato a 1.
In figura 2.2 si noti inoltre che, incrementando il codice di control-
lo di 1, vengono inserite due porte NAND nel percorso di propagazione
del segnale tra In e Out. Pertanto, similmente alla DCDL NAND-based
analizzata all’inizio del capitolo, la risoluzione puo essere scritta come
tNANDLH+ tNANDHL
, ovvero 2tNAND, mentre il ritardo minimo risulta
tmin ≈ 3tNAND (maggiore di quello dell’altra struttura dove era di 2tNAND).
2.2 Proprieta di commutazione glitch-free
L’operazione di commutazione senza glitch e concettualmente semplice
da dimostrare.
Si assuma una commutazione del codice di controllo da c = k a c = h.
Nello stato iniziale della linea, α2i = β2i = In e α2i+1 = β2i+1 = In, ad
eccezione di βk , che rimane bloccato a 1. Si supponga di commutare prima
il k+1-esimo DE dal post-turn-state al turn-state. In queste condizioni,
si puo osservare che βk commuta da 1 a αk . Il segnale βk e l’ingresso
della porta NAND ”4” del k -esimo DE. La commutazione di βk e priva
di glitch, in quanto l’altro ingresso della porta e bloccato a αk , pertanto
l’uscita della NAND ”4” rimane uguale a αk. Dopo la commutazione del
k+1-esimo DE, tutte le celle sono o in pass-state o in turn-state. In queste
condizioni e possibile cambiare liberamente lo stato dei DE da pass-state
a turn-state, dato che questo cambiamento non influisce lo stato logico dei
segnali αi e βi . Dopo questa fase l’h+1-esimo DE puo essere commutato
dal turn-state al post-turn-state. Tale commutazione e ancora priva di
glitch, dato che solo il segnale βh commuta da αh a 1.
9
Capitolo 2. Analisi della DCDL NAND-based
Questo meccanismo, oltre al fatto di dover necessitare di una commu-
tazione 3-step della DCDL, presenta anche l’inconveniente di essere lento
e puo portare ad una non semplicissima progettazione di un circuito di
pilotaggio per i bit di controllo della DCDL.
Un’analisi piu dettagliata della DCDL (presente nell’Appendice I di [1]),
mostra che una condizione sufficiente per ottenere un’operazione glitch-free
nella DCDL e quella di ritardare tra di loro i segnali di controllo Si e Ti,
in modo che siano rispettati i seguenti vincoli temporali (che nei prossimi
capitoli saranno validati con una serie di simulazioni):
(1) ∆s = tSHL- tTLH
> tNAND; (2) ∆t = tSLH- tTHL
< 3tNAND.
10
Capitolo 3
Circuito di pilotaggio
In questo capitolo saranno descritti gli elementi circuitali che ho uti-
lizzato per la realizzazione del circuito di pilotaggio dei bit di controllo
della mia linea di ritardo e saranno mostrati i risultati delle simulazioni
effettuate per riuscire a rispettare i vincoli temporali sui segnali Si e Ti
visti alla fine del precedente capitolo.
Per l’implementazione del circuito e per le simulazioni ho utilizzato il
software LTspice IV.
Figura 3.1: Circuito di pilotaggio per i bit di controllo della DCDL
Per evitare il glitching della DCDL, i segnali Si e Ti devono essere
loro stessi privi di glitch. Seguendo questo ragionamento, si assume che i
segnali Ti siano generati come uscita di un flip-flop, mentre ogni segnale
11
Capitolo 3. Circuito di pilotaggio
Si e ottenuto usando un flip-flop seguito da un circuito NAND-based
che presenta diversi ritardi di propagazione (tpLH 6= tpHL), in modo da
poter rispettare i vincoli (1) e (2) visti in precedenza.
Un inconveniente di questo circuito di pilotaggio e rappresentato dalla
complessita realizzativa, poiche, per ogni segnale Si, e necessario un circuito
formato da tre porte NAND (in aggiunta ai due flip-flop).
3.1 Progettazione del Flip-flop
I flip-flop sono circuiti elettronici elementari, definiti anche bistabili,
poiche possiedono solamente due stati stabili. Un flip-flop come quello
realizzato e detto Master-Slave, ha due ingressi (D e ck) ed un segnale
d’uscita (Q); ck rappresenta il segnale di temporizzazione, o clock. Ad
ogni fronte attivo del clock (solitamente quello di salita, ma puo capitare
anche che sia quello di discesa), l’uscita Q memorizza il valore corrente di
D e lo mantiene fino al successivo fronte attivo (un flip-flop non e mai
trasparente, ovvero non segue mai l’andamento dell’ingresso).
Figura 3.2: Andamento dei segnali di un Flip-flop
12
Capitolo 3. Circuito di pilotaggio
Figura 3.3: Flip-flop realizzato con LTspice IV
Come mostrato in figura 3.3, il flip-flop e stato realizzato ponendo in
cascata due D-latch, trasparenti su livelli opposti del clock. Il primo, det-
to Master, e trasparente per ck = 0, mentre il secondo, denominato Slave,
e trasperente per ck = 1. Gli invertitori presenti nei D-latch, cosı come
tutti gli altri invertitori presenti in questo elaborato, sono stati realizzati
in tecnologia CMOS 28-nm. Considerando l’implementazione di tutti i
transistori a lunghezza minima (LN = LP = Lmin = 28 nm, dove i pedici
N e P indicano rispettivamente i mosfet a canale N e a canale P), consi-
derando la larghezza standard per questa tecnologia e volendo progettare
i transistori del flip-flop in modo da avere uguali tempi di propagazione
(ovvero WP = 2.5WN ) abbiamo che le dimensioni degli invertitori sono:
WN = 45 nm e WP = 112.5 nm.
Per la generazione dei segnali di ck e ck, che rappresentano i segnali di
abilitazione delle porte di trasmissione presenti nel circuito, si e utiliz-
zato necessariamente un ulteriore invertitore. Cio presuppone, pero, che il
segnale ck arrivi ritardato rispetto al segnale ck e se questo ritardo diventa
apprezzabile, puo capitare che i due segnali ck e ck ci trovino allo stesso
valore logico e la porta di trasmissione si trova in uno stato di funziona-
13
Capitolo 3. Circuito di pilotaggio
mento intermedio tra la conduzione e l’interdizione. Questo problema e
detto overlap dei segnali di clock.
Figura 3.4: Overlap segnali di clock
Il problema si puo risolvere, o quantomeno ridurre notevolmente, facendo
in modo il ritardo di ck rispetto a ck risulti trascurabile. E per farlo, utiliz-
ziamo un invertitore molto piu grande rispetto a quelli usati per i D-latch
in modo che il segnale risulti piu veloce: WN = 90 nm, WP = 225 nm.
Il funzionamento del Flip-flop e mostrato in figura 3.5, dove in verde ab-
biamo il segnale di ck, in blu l’ingresso D e in rosso l’uscita Q.
Figura 3.5: Funzionamento Flip-flop
Per completare l’analisi del Flip-flop restano da calcolare altri due
tempi caratteristici: il clock-to-Q e il tempo di setup.
Il clock-to-Q rappresenta la distanza temporale tra una variazione del
fronte attivo del clock e la conseguente variazione del segnale d’uscita e in
figura 3.6 e mostrato come in questo circuito il suo valore si assesti attorno
ai 5 ps.
14
Capitolo 3. Circuito di pilotaggio
Figura 3.6: Clock-to-Q
Il tempo di setup rappresenta il tempo precedente al fronte attivo del
clock in cui l’ingresso D deve rimanere stabile, affinche l’uscita Q riesca a
memorizzare un valore logico alto o basso e non uno intermedio. Il calcolo
e stato fatto attraverso una simulazione parametrica in LTspice IV. Si e
posto come parametro il tempo di arrivo del segnale d’ingresso. L’analisi e
stata effettuata utilizzando un generatore di clock con periodo 1 ns e tempo
di salita di circa 1 ps. Si supponga inoltre di avere una commutazione del
dato a circa 20 ps prima del fronte attivo del clock. Considerando un tempo
di misura di due periodi di clock si e fatto variare il tempo di arrivo del dato
in un intervallo che va da 0 a 20 ps con passo di 1 ps. Da questa analisi
evinciamo che, se il tempo di arrivo del segnale d’ingresso e sui 990 ps
e quello del fronte attivo del clock e sui 1.01 ns, l’uscita riesce ancora a
seguire l’ingresso, ma, come mostrato in figura 3.7, se la commutazione del
dato d’ingresso avviene a circa 1 ns, l’uscita non riesce piu a commutare
sul fronte considerato.
Figura 3.7: Mancata commutazione in uscita per tempo di setup troppo piccolo
Da cio possiamo concludere che tSETUP ≥ 10 ps.
15
Capitolo 3. Circuito di pilotaggio
3.2 Progettazione circuito NAND-based
Anche le porte NAND, cosı come gli invertitori, sono state costruite
tutte in tecnologia CMOS.
Figura 3.8: Porta NAND realizzata in tecnologia CMOS
La rete di pull-up e realizzata mettendo in parallelo due mosfet a canale P,
mentre la rete di pull-down e stata realizzata mettendo in serie due
mosfet a canale N. Queste due reti, in tecnologia CMOS, devono essere
costruite rispettando la seguente condizione: per qualsiasi combinazione
degli ingressi, una ed una sola delle due reti deve essere in conduzione
(offrendo un cammino verso l’alimentazione o verso massa), mentre l’altra
deve essere interdetta.
La dimensione dei transistori e il segnale d’ingresso al circuito di
pilotaggio sono stati ovviamente scelti per far sı che fossero rispettati i due
vincoli temporali, che permettono di evitare il glitch sul segnale d’uscita:
(1) ∆s = tSHL- tTLH
> tNAND; (2) ∆t = tSLH- tTHL
< 3tNAND.
Dopo una serie di simulazioni, per i transistori delle NAND (che ho pro-
gettato identiche tra di loro) ho scelto le seguenti dimensioni (ricordando
16
Capitolo 3. Circuito di pilotaggio
sempre che, per tutti i transistori, ho scelto la lunghezza minima di 28 nm):
WN = 100 nm e WP = 250 nm.
Per il segnale d’ingresso, invece, ho scelto un generatore con le seguenti
caratteristiche: Tdelay = 3 ns (tempo di arrivo del dato), Ton = 5 ns (tempo
di attivazione del livello logico alto), Tperiod = 12 ns (periodo del segnale).
3.3 Risultati delle simulazioni sul circuito
In figura 3.9 e mostrato il circuito di pilotaggio implementato in LTspice IV
sul quale sono state effettuate le simulazioni.
Figura 3.9: Circuito di pilotaggio implementato in LTspice IV
Il primo parametro calcolato e stato il tempo di propagazione di
una porta NAND, ricordando che esso e ottenuto attraverso la formula
tNAND = (tNANDHL+ tNANDLH
)/2. Le figure 3.10 e 3.11 mostrano proprio
il valore di tNANDHLe tNANDLH
, rispettivamente.
Figura 3.10: Tempo di propagazione High-Low della porta NAND
17
Capitolo 3. Circuito di pilotaggio
Figura 3.11: Tempo di propagazione Low-High della porta NAND
Essendo tNANDHL≈ 5.33 ps e tNANDLH
≈ 3.69 ps, possiamo concludere
che tNAND ≈ 4.5 ps.
Sulla base di questi risultati, si puo mostrare come le scelte progettuali
illustrate nel precedente paragrafo riescono effettivamente a soddisfare i
vincoli temporali imposti.
I grafici seguenti mostrano il valore di ∆s e ∆t rispettivamente.
Figura 3.12: Grafico del vincolo temporale ∆s
Notiamo come il vincolo sia praticamente rispettato (salvo un certo mar-
gine dovuto a fattori non considerati in questa analisi come, ad esempio,
le capacita parassite dei circuiti): ∆s ≈ 13 ps (≈ 3 · 4.5 ps).
Figura 3.13: Grafico del vincolo temporale ∆t
Anche in questo caso il vincolo temporale e perfettamente rispettato,
con ∆t ≈ 4.6 ps.
18
Capitolo 4
Progettazione della linea di
ritardo
Come gia descritto in precedenza, la DCDL NAND-based considerata
per la progettazione prevede una sequenza di uguali elementi di ritardo,
ognuno dei quali formato da sei porte NAND identiche tra loro, disposte
in modo da formare lo schema mostrato in figura 4.1.
Figura 4.1: Elemento di ritardo LTspice IV
19
Capitolo 4. Progettazione della linea di ritardo
4.1 Progettazione DE
Tutte le porte NAND sono state progettate in tecnologia CMOS
28-nm ed e stata utilizzata una tensione di alimentazione di 1.0 V per
tutti i componenti del circuito.
Per le simulazioni e il calcolo dei parametri caratteristici e stata consi-
derata una DCDL composta da quattro elementi di ritardo, implementata
sempre utilizzando il software LTspice IV.
Figura 4.2: DCDL utilizzata progettata in LTspice IV
Tutta la DCDL e stata dimensionata in modo da ottimizzare il tempo di
risoluzione tR. Le porte NAND presentano un rapporto 2WP/WN = 1.5,
invece del classico WP = 2.5WN dove, al solito, WP e WN rappresentano
le larghezze di PMOS e NMOS, rispettivamente.
I segnali Si e Ti, che identificano i bit di controllo del ritardo della
DCDL, sono generati dai circuiti di pilotaggio analizzati nel capitolo pre-
cedente. Come dimostrato in precedenza, questi segnali devono rispettare
una precisa tempificazione, mostrata in figura 4.3, al fine di evitare il glitch
sul segnale di uscita.
20
Capitolo 4. Progettazione della linea di ritardo
Figura 4.3: Tempificazione dei bit di controllo del ritardo
4.2 Simulazione della commutazione glitch-free
Per le simulazioni ho fatto commutare i circuiti di pilotaggio in modo
da avere una commutazione del codice di controllo da c = 1 a c = 2 (e
viceversa). La configurazione dei bit di controllo per entrambi i codici di
controllo e mostrata nelle tabelle che seguono:
DE Si Ti Stato
0 0 1 Pass1 1 1 Turn2 1 0 Post-turn3 1 1 Turn
Tabella 4.1: Configurazione bit di controllo per codice di controllo c = 1
DE Si Ti Stato
0 0 1 Pass1 0 1 Pass2 1 1 Turn3 1 0 Post-Turn
Tabella 4.2: Configurazione bit di controllo per codice di controllo c = 2
La simulazione, effettuata sempre con il software LTspice IV, e sta-
ta fatta durare 26 ns e di seguito sono mostrate le uscite sia in caso di
commutazione Low-High, sia nel caso di commutazione High-Low.
21
Capitolo 4. Progettazione della linea di ritardo
Figura 4.4: Segnale d’uscita L-H della DCDL
Figura 4.5: Segnale d’uscita H-L della DCDL
Le figure 4.4 e 4.5 evidenziano come sia stato effettivamente evitato il
glitch sul segnale d’uscita.
4.3 Simulazione con forzamento di glitch
Per completezza, ma soprattutto per validare quanto mostrato nel pa-
ragrafo precedente, ho effettuato un’ulteriore simulazione in cui, pero, i
bit di controllo Si e Ti non rispettano i vincoli temporali su ∆s e ∆t piu
volte imposti all’interno di questo elaborato.
In particolare ho scelto: ∆s ≈ 40 ps (> tNAND) e ∆t ≈ 30 ps (> 3tNAND).
Figura 4.6: Segnale d’uscita della DCDL con glitch
In figura 4.6 ho evidenziato in maniera precisa il punto un cui avviene il
glitch, mentre in figura 4.7 viene fatto vedere come il glitch sia un distur-
22
Capitolo 4. Progettazione della linea di ritardo
bo non propriamente impulsivo, ma con una durata abbastanza rilevante
(nella simulazione effettuata la durata del glitch e di circa 23 ps).
Figura 4.7: Durata temporale glitch
Le due simulazioni confermano che, per evitare il glitch, una condizione
sufficiente e quella di rispettare i vincoli temporali, gia espressi:
(1) ∆s = tSHL- tTLH
> tNAND; (2) ∆t = tSLH- tTHL
< 3tNAND.
4.4 Ritardo prodotto dalla DCDL
Il ritardo prodotto dalla DCDL e sicuramente il parametro piu im-
portante, ovvero quello che caratterizza la struttura progettata.
Figura 4.8: Ritardo prodotto dalla DCDL
Come evidenziato in figura 4.8, il ritardo generato dalla DCDL progettata
e di circa 21 ps.
Il dimensionamento delle NAND dei DE ci permette, inoltre, di dire
che la risoluzione della DCDL puo essere scritta come tR = 2tNAND,
valore che, in questa DCDL, e di circa 10 ps.
23
Capitolo 4. Progettazione della linea di ritardo
4.5 Potenza dissipata
Per gli invertitori CMOS, l’unico contributo significativo e dato dalla
dissipazione di potenza dinamica.
La dissipazione di potenza statica e trascurabile (considerata pratica-
mente nulla), ma ad essere precisi e presente un piccolissimo contributo
legato a fenomeni del secondo e del terzo ordine dovuti al fatto che, anche
se in interdizione, all’interno dei mosfet scorre una debolissima corrente di
sottosoglia che genera una piccolissima dissipazione di potenza statica).
La dissipazione di potenza dinamica, invece, e dovuta allo switch dei
singoli dispositivi e si puo definire come il rapporto tra l’energia erogata
dal generatore di corrente e il periodo del segnale.
Figura 4.9: Potenza dissipata dalla DCDL
Come mostrato in figura 4.9, la potenza dissipata dalla DCDL proget-
tata e PD ≈ 14.75 nW.
24
Capitolo 5
Conclusioni
In questo breve elaborato ho descritto come sia possibile progettare
una piccola linea di ritardo digitale, utilizzando il software LTspice IV, sia
per la progettazione che per le simulazioni.
Ho posto l’attenzione sul problema del glitching e sulle soluzioni adot-
tate per evitarlo. A questo proposito, si e fatto riferimento ad una topo-
logia di recente presentazione che riesce ad evitare il glitch, mantenendo
una struttuta NAND-based, semplicemente ricavando due vincoli tempo-
rali sui due set di bit di controllo del ritardo, a loro volta generati da un
particolare circuito di pilotaggio, anch’esso analizzato e progettato.
Infine sono stati analizzati tutti i risultati prodotti e confrontati con i
vincoli di progetto dati.
Per quanto riguarda la risoluzione, il risultato ottenuto (tR ≈ 10 ps) e
abbondantemente al di sotto del vincolo che chiedeva una risoluzione mas-
sima nell’ordine dei 100 ps. Anche se il risultato ottenuto non e del tutto
veritiero, poiche si sono trascurati alcuni parametri presenti nella realta
(come ad esempio le capacita parassite), la progettazione e da ritenersi
soddisfacente.
25
Capitolo 5. Conclusioni
Riguardo il ritardo massimo, era richiesto nell’ordine dei 10 ns. Con-
siderando che, avendo usato una DCDL con quattro elementi di ritardo, si
e ottenuto un ritardo t ≈ 21 ps, posso concludere affermando che, per pro-
durre un ritardo apprezzabile, occorrono piu di un migliaio di elementi di
ritardo, se si considerano gli stessi parametri utilizzati in questo elaborato.
26
Bibliografia
[1] Davide De Caro, ”Glitch-Free NAND-Based Digitally Con-trolled Delay-Lines”, IEEE Transactions On Very Lar-ge Scale Integration (VLSI) Systems, Vol. 21, No.1,January 2013.
[2] Mary Paul, Amrutha E., ”Power Reduction and Glitch-free MUX-based Digitally Controlled Delay Lines”, Inter-national Conference on Recent Innovations in Engineering(ICRIE’14).
[3] S. Kokilamani, K. R. Nimisha, ”Delay Locked LoopUsing Glitch Free Nand-based DCDL”, International Jour-nal of Advanced Research in Electrical, Electronics andInstrumentation Engineering, Vol. 3, Issue 4, April 2014.
[4] Adel S. Sedra, Kenneth C. Smith, “Circuiti per lamicroelettronica”, 4ed. 2012, EdiSES.
[5] Nicola Petra, Lucidi del corso di ”Elettronica Generale”,Cdl Ing.Informatica, Universita degli Studi ’Federico II’Napoli, a.a. 2013/14.
[6] http://it.wikipedia.org/wiki/Glitch
28