elettronica generale progettazione in tecnologia cmos di ... · in elettronica questo termine e...

36
Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato finale in Elettronica Generale Progettazione in tecnologia CMOS di una linea di ritardo programmabile Anno Accademico 2013/2014 Candidato: Erasmo Purificato matr.N46/001371

Upload: doantuong

Post on 20-Feb-2019

217 views

Category:

Documents


0 download

TRANSCRIPT

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

Dedica. . .

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

Ringraziamenti

27

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