Post on 01-Feb-2021
1G.V. Persiano – Elettronica Digitale
Circuiti sequenziali CMOS
Proprietà: l’uscita dipende non solo dal valore istantaneo degli ingressi, ma anche dal valore degli stati precedenti (circuiti con memoria)
Circuiti sequenziali (combinatori) = circuiti rigenerativi (non rigenerativi)
CombinatorioSequenziale
LogicoCircuito OutIn
OutIn
Stato
LogicoCircuito
Out = f(In )Out = f(In, In precedenti)
2G.V. Persiano – Elettronica Digitale
Classificazione dei circuiti sequenziali
Circuiti (latches e registri) di tipo:
• Statico (memoria tramite reazione positiva)– Latch a multiplexer– Registri master-slave ed edge-triggered– Flip-flop SR statici
• Dinamico (memoria tramite immagazzinamento carica)– Registri a porte di trasmissione– Latch C2MOS– Registri a fase di clock singola (TSPCL)
3G.V. Persiano – Elettronica Digitale
Definizione di latch, registro, flip-flop
Nei vari libri sono applicate differenti convenzioni per definirei latches, i registri ed i flip-flop. Qui, indichiamo con:• Latch, un dispositivo sensibile al livello del clock CLK
– Trasparenza trasferimento valore dell’ingresso all’uscita– Latch positivo (negativo) se trasparente quando CLK alto (basso)
• Registro, un elemento di memoria edge-triggered– Edge-triggered = campionamento dell’ingresso e trasferimento in
uscita solo in corrispondenza di una data commutazione di CLK– Negative edge-triggered = campionamento quando CLK 1→0– Positive edge-triggered = campionamento quando CLK 0→1
• Flip-flop, elemento bistabile formato dalla connessioneincrociata di porte logiche
4G.V. Persiano – Elettronica Digitale
Differenza tra latch e registro
Latch(trasparente quando CLK è alto)
Registro(campiona sul fronte di salita di CLK)
D
CLK
Q D
CLK
Q
CLK CLK
D D
Q Q
5G.V. Persiano – Elettronica Digitale
Temporizzazione dei latch positivo e negativo
In
clk
In
Out
Positive Latch
CLK
DG
Q
Out
Outstable
Outfollows In
In
clk
In
Out
Negative Latch
CLK
DG
Q
Out
Outstable
Outfollows In
6G.V. Persiano – Elettronica Digitale
Tecniche di progetto con i latches
• N-latch è trasparente quando = 0,
NLatch Logica
Logica
PLatch
P-latch è trasparente quando = 1
7G.V. Persiano – Elettronica Digitale
Macchina a stati finiti con registri
COMBINATIONALLOGIC
Registers
Outputs
Next state
CLK
Q D
Current State
Inputs
Esempio con registri positive edge-triggered
8G.V. Persiano – Elettronica Digitale
Caratteristiche temporali dei circuiti sequenziali
Tempi di set-up tsetup, di hold thold e di propagazione tc→q
t
CLK
t
D
tc→ q
tholdtsetup
t
Q DATOSTABILE
DATOSTABILE
Registro
CLK
D Q
9G.V. Persiano – Elettronica Digitale
Massima frequenza di clock
FF’s
LOGIC
tp,comb
Inoltre, vale:
tcd,reg + tcd,logic > thold tcd: tempo di contaminazione (ritardo minimo)
tc →q + tp,comb + tsetup = T
10G.V. Persiano – Elettronica Digitale
Reazione positiva: bistabilità
11G.V. Persiano – Elettronica Digitale
Metastabilità
Nella regione di indeterminazione, il guadagno di tensione AV deve essere > 1
12G.V. Persiano – Elettronica Digitale
Cambio di stato in un latch statico
CLK
CLK
CLK
D
Q
Implementazione con multiplexer
D
CLK
CLK
D
- Uso del clock come segnale di discriminazione tra i 2 stati opachi e trasparenti del latch
Imposizione del valore di D
13G.V. Persiano – Elettronica Digitale
Implementazione del latch con multiplexer
Latch negativo(trasparente quando CLK è basso)
Latch positivo(trasparente quando CLK è alto)
CLK
1
0D
Q 0
CLK
1D
Q
InClkQClkQ InClkQClkQ
14G.V. Persiano – Elettronica Digitale
Schema circuitale del latch con multiplexer (I)
Implementazione con porte di trasmissione
CLK
CLK
CLK
D
Q
15G.V. Persiano – Elettronica Digitale
Schema circuitale del latch con multiplexer (II)
Implementazione con pass transistor NMOS
CLK
CLK
CLK
CLK
QM
QM
Clock non sovrapposti
16G.V. Persiano – Elettronica Digitale
Registro (edge-triggered) Master-Slave
Schema a blocchi Diagramma temporale
1
0D
CLK
QM
Master
0
1
CLK
Q
Slave
QM
Q
D
CLK
Struttura con 2 latches di tipo opposto con commutazione sul fronte di salita di CLK
17G.V. Persiano – Elettronica Digitale
Master Slave
Implementazione Master-Slave con coppia di latch a multiplexer
QM
Q
D
CLK
T2I2
T1I1
I3 T4I5
T3I4
I6
18G.V. Persiano – Elettronica Digitale
Analisi temporale con il simulatore SPICE (I)
Tempo di propagazione del registro
D
Q
CLK
2 0.5
0.5
1.5
2.5
tc → q(lh)
0.5 1 1.5 2 2.50time, nsec
Voltstc → q(hl)
19G.V. Persiano – Elettronica Digitale
Analisi temporale con il simulatore SPICE (II)
Effetto del tempo di setup (tsetup=210 ps)
D
Q
QM
CLK
I2 2 T2
2 0.5
Volts
0.0
0.2 0.4time (nsec)
(a) Tsetup 5 0.21 nsec
0.6 0.8 10
0.5
1.0
1.5
2.0
2.5
3.0
DQ
QM
CLK
I2 2 T2
2 0.5Vo
lts
0.0
0.2 0.4time (nsec)
(b) Tsetup 5 0.20 nsec
0.6 0.8 10
0.5
1.0
1.5
2.0
2.5
3.0
Analisi con tsetup=210 ps Analisi con tsetup=200 ps
20G.V. Persiano – Elettronica Digitale
Registro Master-Slave con carico di clock ridotto
- Accurato dimensionamento di T1 e I2 per determinare il valore sul nodo A- Attenzione all’eventuale influenza dello slave sul master (propagazione inversa)
D QT1 I 1
CLK
CLK
T2
CLK
CLKI2
I 3
I4
- Rimozione delle porte di trasmissione sull’anello di retroazione carico del clock dimezzato
A
21G.V. Persiano – Elettronica Digitale
Effetti della sovrapposizione del clock
- Sovrapposizione del clock può causare race-condition o segnale indefinito sul nodo A
Schema circuitale
Sovrapposizione dei clock
CLK
CLK
AB
X
D
Q
CLK
CLK
CLK
CLK
22G.V. Persiano – Elettronica Digitale
Configurazione
Segnali di clock
CLK1
CLK1
AB
X
D
Q
CLK2
CLK2
CLK2
CLK1
Latch pseudostatico a 2 fasi
- Uso di 2 segnali di clock non sovrapposti tra loro tratto di funzionamento dinamico
t12
t12 < tleakage
23G.V. Persiano – Elettronica Digitale
Flip-Flop SR (I)
Configurazione a porte NOR
Stato proibito
S
S
R
Q
QRS Q
Q00 Q
101 0
010 1011 0R Q
24G.V. Persiano – Elettronica Digitale
Flip-Flop SR (II)
Configurazione a porte NAND
Stato proibito
S
R
Q
Q
QRS Q
Q11 Q
110 0
001 1100 1
S
QR
Q
25G.V. Persiano – Elettronica Digitale
Schema circuitale SR NOR
Implementazione in CMOS con segnale di clock
M1
M2
M3
M4Q
M5S
M6CLK
M7 R
M8 CLK
VDD
Q
- Dissipazione statica nulla
Quando CLK è alto
- Struttura base per le celle di memoria statiche
26G.V. Persiano – Elettronica Digitale
Tensione statica in funzione di W5 e W6
Dimensionamento dei MOS (I)
Criteri generali
4.03.53.0W/L5 and 6
Q (V
olts
)
2.52.00.0
0.5
1.0
1.5
2.0
W2 = 1,5 mL2 = 0,25 m
27G.V. Persiano – Elettronica Digitale
Risposta in transitorio
Dimensionamento dei MOS (II)
Criteri generali
time (ns)0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
0
1
2
W = 1 m
3Q S
W = 0.9 mW = 0.8 m
W = 0.7 mW = 0.6 m
W = 0.5 m
Volts L = 0,25 m
W2 = 1,5 mL2 = 0,25 m
28G.V. Persiano – Elettronica Digitale
Meccanismo di memoria dello stato
Statico Dinamico
CLK
CLK
CLK
D
Q D
CLK
CLK
Q
29G.V. Persiano – Elettronica Digitale
Flip-flop dinamico a 2 fasi
D
CLK1
CLK1
CLK2
CLK2
D
CLK2
CLK1
30G.V. Persiano – Elettronica Digitale
Latch C2MOSCaratteristiche: - Configurazione insensibile alla configurazione dei clock- Particolarmente adatto per funzionamento ad alta velocità- Richiede meno contatti del latch dinamico a 2 fasi layout più compatto
Schema base
M1
D
M3CLK
M4
M2
CLK
VDD
C
X
31G.V. Persiano – Elettronica Digitale
Master-slave flip-flop in C2MOS- 2 sezioni con clock simmetrici: una opera in fase di trasmissione dati (valutazione), l’altra in
fase di conservazione dato (hold)
M1
D Q
M3CLK
M4
M2
CLK
VDD
CL1
X
CL2
M5
M7CLK
CLK M8
M6
VDD
Master Slave
32G.V. Persiano – Elettronica Digitale
Sovrapposizione 0-0
Insensibilità alla sovrapposizione dei clock
M1
D Q
M4
M2
0 0
VDD
X
M5
M8
M6
VDD
M3
M1
D Q
M2
1
VDD
X
M71
M5
M6
VDD
Sovrapposizione 1-1
33G.V. Persiano – Elettronica Digitale
Pipelining
Versione pipelinedVersione non-pipelined
Definizione: metodo di progetto per velocizzare il funzionamento dei sistemi digitali,basato sull’impiego di registri e blocchi combinatori
REG
REG
REGlog
a
CLK
CLK
CLK
Out
b
REG
REG
REGlog
a
CLK
CLK
CLK
REG
CLK
REG
CLK
Out
b
34G.V. Persiano – Elettronica Digitale
Evoluzione delle operazioni dell’architettura pipeline
35G.V. Persiano – Elettronica Digitale
Strutture pipelined (I)
Circuito pipelined con registro dinamico a 2 fasi
F G
CLK
CLK
In Out
C1 C2
CLK
C3
CLK
CLK
Compute F compute G
Inconveniente: configurazione soggetta a race conditionSoluzione: uso di una configurazione tipo C2MOS
36G.V. Persiano – Elettronica Digitale
Strutture pipelined (II)
Circuito pipelined con latch C2MOS
DCLK
CLK
VDD
CL1F
CLK
CLK
VDD
CL2G
CLK
CLK
VDD
CL3Q
Quesito: quali vincoli devono soddisfare F e G per avere una struttura senza race condition (NO RAce CMOS = NORA-CMOS) ?
37G.V. Persiano – Elettronica Digitale
Risposta: un circuito pipelined basato su registri C2MOS è immune da race condition se lefunzioni logiche F G ecc. (di tipo statico) tra i latches sono non-invertenti
Sovrapposizione dei clock di tipo 1-1
CLK
CLK CLK
CLK
Malfunzionamento !!
38G.V. Persiano – Elettronica Digitale
Strutture pipelined (III)Logica NORA-CMOS
Proprietà:combina registri pipelined C2MOS e blocchi combinatori statici e dinamici
Modulo con valutazione per CLK
CLK
CLK
CLK
CLK
CLK
CLK
CLK
CLK
CLK
CLKModulo con valutazione per CLK
39G.V. Persiano – Elettronica Digitale
Regole per evitare la race condition
CLK
CLK
CLK
CLK
40G.V. Persiano – Elettronica Digitale
Logica True Single-Phase Clocked (TSPCL)
Latch negativoLatch positivo
Caratteristiche: - Logica funzionante con un solo segnale di clock- Diversamente da C2MOS, nessun vincolo progettuale per evitare race-condition- Numero di MOS superiore per analoghe funzioni in C2MOS
CLKIn
VDD
CLK
VDD
Out
In CLK
VDD
CLK
VDD
Out
41G.V. Persiano – Elettronica Digitale
Circuiti in logica TSPCL
Latch ANDCircuito logico incluso nel latch
Caratteristiche: - Nessun vincolo sul numero di inversioni tra latches e blocchi dinamici- Circuiti statici e dinamici possono combinarsi liberamente tra loro e con i latches- Numero di MOS per latch pari a 6 (rispetto ai 4 del C2MOS)
CLKIn CLK
VDDVDD
QPUN
PDN
CLK
VDD
Q
CLK
VDD
In1
In1 In2
In2
42G.V. Persiano – Elettronica Digitale
CLK
CLK
D
VDD
M3
M2
M1
CLK
Y
VDD
Q
Q
M9
M8
M7
CLK
X
VDD
M6
M5
M4
Registro positive edge-triggered
Registro negative edge-triggeredCLK
CLK
D
VDD
M3
M2
M1
CLK
Y
VDD
Q
Q
M9
M8
M7
CLK
X
VDD
M6
M5
M4
43G.V. Persiano – Elettronica Digitale
CLK
Latch negativoLatch positivo
Latch TSPCL semplificato (split-output)
CLK
Registro positive edge-triggered CLK CLK
Vantaggio: minor effetto di carico del clock (2 connessioni anziché 4)
44G.V. Persiano – Elettronica Digitale
Trigger di Schmitt
Simbolo
Configurazione non-invertente
Caratteristiche: - Bistabile con isteresi (diversa soglia logica per VT crescente o decrescente)- Risponde a segnali lentamente variabili con rapide transizioni in uscita- Previene commutazioni spurie causate da eventuale rumore sovrapposto a Vin
Configurazione invertente
45G.V. Persiano – Elettronica Digitale
DD
Soppressione del rumore mediante un Trigger di Schmitt
Vin
t0
VM
VM
t
Vout
t0 + tp t
Implementazione in CMOS
- Configurazione non-invertente- Valore di VM+ e VM- dipendente da kp/kn- Doppio invertitore VOL= 0, VOH= VDD
46G.V. Persiano – Elettronica Digitale
Analisi del Trigger di Schmitt mediante il simulatore SPICE
Caratteristica di trasferimento con isteresi
2.5
VM2
VM1
Vin (V)
2.0
1.5
1.0
0.5
0.00.0 0.5 1.0 1.5 2.0 2.5
VX
(V)
Effetto delle dimensioni del PMOS M4. La larghezza W è k*0,5m
VDD
VDD
OutIn
M1
M5
M2X
M3
M4
M6
Configurazione alternativa
2.5
k=2k=3
k=4
k=1
Vin (V)
2.0
1.5
1.0
0.5
0.00.0 0.5 1.0 1.5 2.0 2.5
VX
(V)
47G.V. Persiano – Elettronica Digitale
Circuiti multivibratori: classificazione
Multivibratore Bistabile
Multivibratore Monostabile
Multivibratore Astabile
Flip-Flop, Trigger di Schmitt
one-shot
Oscillatori, VCO
S
R
T
Parallelo con sistemi meccanici
48G.V. Persiano – Elettronica Digitale
Circuiti monostabili
Circuito monostabile basato su porte logiche
Caratteristiche: - Circuito con uno stato stabile (riposo) ed uno instabile (sollecitazione in ingresso)- Usato come generatore di impulsi di durata predeterminata- Durata dell'impulso data da 2 meccanismi: ritardi di porte logiche tp e circuiti RC
49G.V. Persiano – Elettronica Digitale
Circuito monostabile basato su rete RC
Inconvenienti dei monostabili basati su reti RC: - costante di tempo RC scelta molto maggiore del ritardo t delle porte logiche- VM molto sensibile a variazioni dei parametri di processo diversi valori di tp
50G.V. Persiano – Elettronica Digitale
Circuiti astabili
Circuito astabile basato su porte logiche (oscillatore ad anello)
Caratteristiche: - Circuito che oscilla tra due stati instabili- Usato come generatore di clock- Periodo dell’onda data da 2 meccanismi: ritardi di porte logiche tp e circuiti RC
Circuito Simulazione delle forme d’onda con N=5
51G.V. Persiano – Elettronica Digitale
Circuito astabile basato su rete RC (oscillatore a rilassamento)
52G.V. Persiano – Elettronica Digitale
Oscillatore controllato in tensione (VCO)
Tempo di propagazione in funzione di Vcontr
53G.V. Persiano – Elettronica Digitale
VCO basato su elementi di ritardo differenziali
Cella di ritardo (tipo DCVSL)
in2
V ctrl
V o2 V o1
in1
delay cell
v 1v 2
v 3
v 4
Oscillatore a 2 stadi
0.5
0.0
0.5
1.0
1.5
2.0
2.5
3.0
2 0.5 1.5
V 1 V 2 V 3 V4
time (ns)2.5 3.5
Simulazione forme d’onda del VCO a 2 stadi