CAPITOLO 5
Utilizzo della tecnologia 0.18 µm CMOS
5.1 Introduzione
I buoni risultati ottenuti con la tecnologia 0.35 µm CMOS fanno pensare che sia possibile il raggiungimento dei 40 Gb/s passando a una tecnologia ancora CMOS ma più performante.
La nuova tecnologia utilizzata per la progettazione del ricevitore è la 0.18 µm CMOS della UMC.
L’incremento delle prestazioni nel passaggio alla nuova tecnologia è notevole. Per avere dei dati numerici, si consideri un buffer costituito da due inverter minimi in cascata e lo si inserisca all’interno di una catena di tre buffer in modo da ottenere una situazione analoga a una linea di ritardo. Il ritardo introdotto da tale buffer è pari a 133.6 ps se si utilizza la tecnologia 0.35 µm CMOS della AMS mentre vale 40.43 ps utilizzando la 0.18 µm CMOS della UMC. Oltre a questo, con la 0.35 µm il ritardo introdotto da una porta in condizioni slow è pari a circa 4 volte quello in condizioni fast mentre con la 0.18 µm i due ritardi sono separati da un fattore inferiore al 2.
L’altro grande vantaggio che deriva dall’uso della nuova tecnologia è la minore occupazione di spazio su silicio. Ciò permette di passare a una linea di ritardo formata da un maggior numero di celle assicurando comunque una buona compattezza della struttura e garantendo, quindi, l’equipotenzialità del segnale ad alto bit rate all’interno del chip.
In questo capitolo, dopo aver descritto i benefici che derivano dall’utilizzo di una linea di ritardo composta da 64 celle, si descrive il dimensionamento del campionatore e si determina il tempo di discesa massimo del suo segnale di sincronismo per una
corretta acquisizione dei dati di ingresso ad alto bit rate nelle varie condizioni di funzionamento, viene poi dimensionata la cella di ritardo e si dimostra che il ricevitore è in grado di funzionare a 40 Gb/s a partire dalle condizioni di lavoro tipiche.
5.2
Migliorie sul pettine di campionamento
Abbiamo visto nel secondo capitolo che, in condizioni di corretto aggancio della DLL, l’intervallo di tempo che intercorre tra un fronte di campionamento e il successivo è pari a Tclk/Nc (si ricorda che Tclk rappresenta il periodo dell’oscillatore locale e Nc il numero
di celle di ritardo costituenti la linea). Utilizzando una DLL formata da 48 celle di ritardo e in condizioni di aggancio ammesso, la posizione dei fronti di campionamento è mostrata in figura 5.1 insieme a un andamento semplificato del segnale di ingresso ad alto bit rate. Dall’esempio si nota che solo uno dei tre fronti cade durante i pieni livelli di tensione del dato da prelevare (In_2) mentre gli altri due cadono durante la transizione di tale dato (In_1 e In_3).
Figura 5.1: Fronti di campionamento in condizioni di aggancio.
Per migliorare l’acquisizione del segnale di ingresso, quindi, sarebbe opportuno che il pettine di campionamento fosse formato da fronti concentrati all’interno del dato da prelevare come mostrato in figura 5.2.
Figura 5.2: Fronti di campionamento compattati verso il centro del bit. Data In
In_1 In_2 In_3
Data In
Per ottenere un andamento del tipo mostrato in figura 5.2 senza cambiare DLL, i ritardi delle celle dovrebbero essere aggiustati in modo diverso a seconda delle condizioni di aggancio della catena. Le difficoltà realizzative, però, sconsigliano l’uso di questa tecnica.
Grazie alle ridotte dimensioni garantite dalla tecnologia 0.18 µm CMOS, è possibile aggirare il problema ricorrendo a un maggior numero di celle di ritardo. Utilizzando una DLL formata da 64 celle e agganciando la linea in modo opportuno, si ottiene l’andamento dei fronti di campionamento mostrato in figura 5.3.
Figura 5.3: Fronti di campionamento in condizioni di aggancio utilizzando una linea con 64
celle di ritardo.
Dalla figura si vede che tre dei quattro fronti cadono durante i pieni livelli di tensione del dato da prelevare mentre solo uno cade durante la transizione di tale dato. L’idea è quella di processare solamente i tre campioni evidenziati in figura 5.3 (In_1, In_2 e
In_3) in modo da ottenere un risultato identico a quello di figura 5.2. La rete di
acquisizione e quella di riordino andranno configurate in modo tale da verificare questa condizione.
Oltre al vantaggio legato al campionamento, gli agganci ammessi utilizzando la DLL formata da 64 celle di ritardo sono tutti quelli il cui numero di periodi Ne del
segnale dell’oscillatore locale è dispari compreso tra 1 e 63. In questo modo sono possibili più agganci a parità di intervallo di regolazione del ritardo di cella Tc. In
tabella 5.1 sono riportati tali ritardi, espressi in picosecondi, per tutti i valori utili di Ne
per segnali di ingresso a 40 Gb/s (Tc_40) e a 10 Gb/s (Tc_10) utilizzando,
rispettivamente, un periodo dell’oscillatore locale pari a 400 ps e a 1600 ps per poter mantenere la stessa architettura.
Data In
Ne Tc_40 Tc_10 1 6,2792 25,1175 3 18,8376 75,3525 5 31,396 125,5875 7 43,9544 175,8225 9 56,5128 226,0575 11 69,0712 276,2925 13 81,6296 326,5275 15 94,188 376,7625 17 106,7464 426,9975 19 119,3048 477,2325 21 131,8632 527,4675 23 144,4216 577,7025 25 156,98 627,9375 27 169,5384 678,1725 29 182,0968 728,4075 31 194,6552 778,6425 33 207,2136 828,8775 35 219,772 879,1125 37 232,3304 929,3475 39 244,8888 979,5825 41 257,4472 1029,8175 43 270,0056 1080,0525 45 282,564 1130,2875 47 295,1224 1180,5225 49 307,6808 1230,7575 51 320,2392 1280,9925 53 332,7976 1331,2275 55 345,356 1381,4625 57 357,9144 1431,6975 59 370,4728 1481,9325 61 383,0312 1532,1675 63 395,5896 1582,4025
5.3 Il
campionatore
Vista la bontà del campionatore utilizzato con la tecnologia 0.35 µm CMOS, conviene adottare lo stesso schema circuitale adattandolo alla 0.18 µm CMOS.
5.3.1 Dimensionamento
Per ottimizzare il campionatore alla nuova tecnologia, tutti i blocchi che lo compongono sono stati dimensionati nuovamente mantenendo la configurazione circuitale mostrata nel terzo capitolo. Viene dimensionato anche il flip flop che schematizza la rete di acquisizione configurata per poter vedere le prestazioni complessive del sistema nell’acquisizione dei dati di ingresso.
o Dimensionamento del sense amplifier (figura 3.7): • Lunghezze di canale minime = 0.18 µm.
• Winpass = 20 µm.
• Wsainvn = 2.5 µm.
• Wsainvp = 5 µm.
o Dimensionamento dello pseudo-inverter (figura 3.8): • Lunghezze di canale minime = 0.18 µm.
• Larghezza di canale degli nMOS di ingresso = 1.3 µm.
• Larghezza di canale dei pMOS costituenti il pull up = 1.7 µm.
• Larghezza di canale degli nMOS di uscita = 2 µm.
o Dimensionamento dell’inverter con soglia inferiore a VDD/2 (figura 3.9):
• Lunghezze di canale minime = 0.18 µm.
• Larghezza di canale del transistore nMOS = 6 µm.
o Dimensionamento del flip flop dinamico master/slave che schematizza la rete
di acquisizione configurata (figura 3.10):
• Lunghezze di canale minime = 0.18 µm.
• Larghezza di canale degli nMOS delle pass gate = 0.8 µm.
• Larghezza di canale dei pMOS delle pass gate = 1.6 µm.
• Larghezza di canale degli nMOS costituenti gli inverter = 2.2 µm.
• Larghezza di canale dei pMOS costituenti gli inverter = 4.4 µm.
5.3.2 Simulazioni
Analogamente a quanto fatto nel terzo capitolo, per testare il campionatore si sono utilizzati dei generatori ideali di tensione che, in prima approssimazione, rappresentano le uscite dell’amplificatore transresistivo (In1 e In2), l’uscita della cella di ritardo della DLL (Clocksa) e le uscite dell’oscillatore locale che sincronizza le reti di acquisizione (Clock1dff e Clock2dff). Come carico si è scelto un condensatore da 30 fF che rappresenta qualitativamente il primo blocco della rete di riordino dei dati. Per ottenere un corretto confronto tra le due tecnologie utilizzate, le caratteristiche dei segnali di ingresso sono le medesime delle simulazioni effettuate con la 0.35 µm.
Parametri principali dei segnali utilizzati nelle simulazioni con ingresso a 40 Gb/s: Ingresso.
1. In1 = /In2.
2. Segnale che provoca la maggior lentezza della circuiteria. 3. Durata minima dell’impulso = 15 ps.
4. Tempo di salita = Tempo di discesa = 10 ps. Clock.
1. Clock1dff = /Clock2dff = /Clocksa.
2. Periodo = 400 ps → Frequenza = 2.5 GHz. 3. Tempo di salita = Tempo di discesa = 50 ps.
I segnali che appaiono nei grafici delle simulazioni sono i seguenti:
In1: uno dei due ingressi al campionatore e al sense amplifier (In1sa). Clocksa: clock del sense amplifier.
Out1sa e Out2sa: segnali in uscita dal sense amplifier e in ingresso allo pseudo-inverter (In1pi e In2pi).
Outpi: segnale in uscita dallo pseudo-inverter e in ingresso all’inverter con soglia inferiore a VDD/2 (In1lti).
Outlti: segnale in uscita dal secondo inverter e in ingresso al flip flop (Indff). Clockdff: clock del flip flop dinamico (Clock1dff).
Outdff: segnale in uscita dal flip flop dinamico.
Il segnale che provoca la maggior lentezza della circuiteria è quello per cui l’uscita dello pseudo-inverter deve portarsi a VDD partendo da una situazione di regime in cui il suo
valore di tensione era nullo (c’è un nMOS che collega l’uscita all’alimentazione). Un segnale formato da un bit pari a zero in mezzo a infiniti bit che valgono uno, quindi, è il peggiore che si possa presentare all’ingresso del campionatore; proprio tale segnale viene scelto per testarne il funzionamento.
Come evidenziato dalla simulazione riportata in figura 5.4, il comportamento del campionatore è notevolmente migliorato rispetto a quanto ottenuto nel terzo capitolo in quanto si riescono ad acquisire correttamente segnali di ingresso a 40 Gb/s anche in condizioni di lavoro tipiche. Da notare che l’istante ideale di campionamento è ancora quello per cui vale Vclock ≈ VDD – VTn al centro del bit da acquisire durante la transizione
¹ Il bit rate si riferisce a quello del segnale in ingresso al chip.
² Le condizioni ambientali prese in considerazione sono fast (T = 0º C, VDD = 1.98 V), tipiche (T = 27º C, VDD = 1.8 V) e slow
(T = 70º C, VDD = 1.62V).
Figura 5.4: 40 Gb/s¹, processo tipico, condizioni ambientali tipiche².
Dalla figura 5.4 si può notare che le uscite del sense amplifier raggiungono degli ottimi livelli di tensione. In questo modo si garantisce un buon pilotaggio dello pseudo-inverter che permette di avere una durata del segnale utile in uscita dal secondo inverter di circa 100 ps. La rete di acquisizione, quindi, dovrà disporre di un clock a 4 fasi per poter essere configurata al meglio in funzione delle condizioni di aggancio della DLL.
Le correnti assorbite dai terminali, relativamente alla simulazione rappresentata in figura 5.4, sono mostrate in figura 5.5.
Figura 5.5: Andamento delle correnti relative alla situazione di figura 5.4.
5.4 Problema
del
T
fallAbbiamo visto nel quarto capitolo che, per una corretta acquisizione dei dati in ingresso ad alto bit rate, il tempo di discesa del segnale di sincronismo del campionatore (Tfall)
deve essere inferiore a un certo valore che dipende dalle condizioni ambientali e di processo.
Diversamente da quanto fatto nel capitolo precedente, per ricavare il massimo Tfall
ammesso cerchiamo di soddisfare delle condizioni più stringenti, cioè non consideriamo solo il campionamento nell’istante ideale ma prevediamo la corretta acquisizione di tutti e tre i campioni del bit di ingresso. Il campionatore, infatti, deve essere in grado di prelevare uno qualsiasi di tali campioni.
Utilizzando la DLL formata da 64 celle di ritardo, i tre campioni sono acquisiti in un tempo pari a circa 12.56 ps come mostrato in figura 5.6.
Figura 5.6: Fronti di campionamento con clock agganciato ai dati di ingresso.
In particolare, il campionatore deve essere in grado di prelevare uno qualsiasi dei tre campioni del bit di ingresso quando il clock è agganciato ai dati. Se ciò avvenisse, infatti, il funzionamento del ricevitore in condizioni di clock non agganciato sarebbe anch’esso corretto in quanto due dei tre campioni da prelevare sarebbero spostati verso il centro del bit, il campionatore riuscirebbe ad acquisirli e la rete per la valutazione dell’uscita non presenterebbe errore. In figura 5.7 è mostrato il caso in cui il clock è in anticipo rispetto ai dati di ingresso. I campioni In_2 e In_3 sono prelevati verso il centro del bit e verranno elaborati correttamente dalla rete per la valutazione dell’uscita. I campioni da non processare sono segnati con una crocetta.
Figura 5.7: Fronti di campionamento con clock in anticipo rispetto ai dati.
Per ricavare il massimo Tfall, occorre testare il nuovo campionatore ricorrendo agli stessi
segnali utilizzati nelle precedenti simulazioni ma imponendo al clock un tempo di salita e di discesa pari a Tfall e un ritardo pari a Delayck. Supponendo di far variare il ritardo
del clock mantenendo fisso il segnale di ingresso ad alto bit rate, ci si aspetta che l’uscita del flip flop in funzione del ritardo del clock abbia una larghezza minima dei campioni del bit da acquisire di 12.56 ps; solo così, infatti, si ha la certezza di prelevare uno qualsiasi dei tre campioni del bit di ingresso quando il clock è agganciato ai dati.
Data In
In_1 In_2 In_3
Data In
12.56 ps In_1 In_2 In_3
Per determinare il massimo Tfall si ripete l’operazione assegnando un nuovo valore al
tempo di discesa. In dettaglio, l’esperimento che si effettua è il seguente: 1) Si assegna un valore a Tfall.
2) Si fa variare il ritardo del clock e si campiona a ogni passo il dato in ingresso ad alto bit rate.
3) Si grafica l’uscita del flip flop in funzione del ritardo del clock e si misura la larghezza dei campioni relativi al dato da acquisire.
4) In base al risultato ottenuto al terzo punto si assegna un nuovo valore a Tfall.
5) Si ripete la procedura dal secondo punto fino a trovare il massimo valore ammesso per Tfall che permetta una corretta acquisizione di uno qualsiasi dei
tre campioni del dato di ingresso.
Per chiarire meglio tale esperimento, si osservi l’esempio mostrato in figura 5.8. Si assegna inizialmente un clock avente Tfall di 25 ps, si fa variare il ritardo del clock e si
misura la larghezza Tsample dei campioni relativi al dato da acquisire (a).
(a) Vclock Vin1 t t VDD VDD 0 0 10 ps 15 ps 10 ps VDD - VTn Tfall_1 Delayck Voutdff Delayck VDD 0 Tsample_1
Si aumenta il Tfall se tale andamento è corretto (b) altrimenti si riduce. Si continua in
questo modo fino ad arrivare al caso in cui è sufficiente una variazione di Tfall
dell’ordine del picosecondo per ottenere una uscita del flip flop che sia o meno corretta (Tsample ≈ 13 ps).
(b)
Figura 5.8: Campionamento dell’ingresso al variare del ritardo del clock e del Tfall.
Le simulazioni effettuate utilizzando la tecnologia 0.18 µm CMOS della UMC hanno portato ai seguenti risultati:
o 40 Gb/s.
• Processo fast, ambiente fast → Tfall ≤ 90 ps.
• Processo fast, ambiente typ → Tfall ≤ 80 ps.
• Processo fast, ambiente slow → Tfall ≤ 70 ps.
• Processo typ, ambiente fast → Tfall ≤ 80 ps.
• Processo typ, ambiente typ → Tfall ≤ 75 ps.
Vclock Vin1 t t VDD VDD 0 0 10 ps 15 ps 10 ps VDD - VTn Tfall_2 Delayck Voutdff Delayck VDD 0 Tsample_2
• Processo typ, ambiente slow → Tfall ≤ 55 ps.
• Processo slow, ambiente fast → Tfall ≤ 73 ps.
• Processo slow, ambiente typ → Tfall ≤ 58 ps.
• Processo slow, ambiente slow → Campionamento non corretto.
o 10 Gb/s.
• Processo slow, ambiente slow → Tfall ≤ 650 ps.
Si capisce come i requisiti sul Tfall per l’acquisizione dei dati a 40 Gb/s siano ancora
molto stringenti; per il campionamento a 10 Gb/s, invece, non sembrano esserci problemi.
5.5
Progetto della cella di ritardo
In figura 5.9 è presentato lo schema della cella di ritardo scelta.
Figura 5.9: Schema della cella di ritardo scelta. P0 P11 G0 G3 C0 C2 In /Out Out P0 P11 G0 G3 C0 C2
In uscita a ciascun inverter sono collegati dodici condensatori piccoli (P0 – P11), quattro grandi (G0 – G3) e tre di calibrazione (C0 – C2). Nei paragrafi che seguono sono illustrati i dettagli del progetto di tutti gli elementi che costituiscono la cella di ritardo il cui layout completo è mostrato in figura 5.15.
5.5.1 Gli
inverter
La scelta della dimensione e della struttura degli inverter è stata fatta con il principale intento di minimizzare il tempo di discesa del segnale in uscita dalla cella di ritardo poiché tale segnale viene utilizzato come clock del campionatore veloce. Per prima cosa, quindi, tramite simulazione è stata valutata la dipendenza dei tempi che caratterizzano un buffer costituito da due inverter in cascata in funzione della larghezza dei transistori e al variare delle condizioni di lavoro. Indicando con Tc il ritardo di
propagazione del buffer, con Trise il tempo di salita del suo segnale di uscita, con Tfall il
tempo di discesa e con W la larghezza del gate dei transistori nMOS che lo costituiscono (larghezza doppia per i pMOS e lunghezze minime), dalla figura 5.10 si vede che i tempi caratterizzanti il buffer tendono a diminuire all’aumentare di W.
0 50 100 150 200 250 0 5 10 15 20 25 30 35 W (µm) ps
Tc fast Tc typ Tc slow Tfall fast Tfall typ Tfall slow Trise fast Trise typ Trise slow
Figura 5.10: Relazione tra W e i tempi che caratterizzano il buffer.
Tale diminuzione è inizialmente molto marcata, poi si fa sempre più blanda a causa delle capacità parassite che caricano la porta e tendono ad annullare i vantaggi di un aumento della W. In base ai risultati ottenuti, si è scelto l’utilizzo di transistori di dimensioni tali da ottenere un compromesso ragionevole tra velocità di propagazione della porta, dimensioni e potenza dissipata. In particolare, le larghezze di canale che si utilizzano sono pari a 13.5 µm per i transistori nMOS e 27 µm per i pMOS. La lunghezza di canale pari a 0.18 µm è quella minima consentita dalla tecnologia.
Per quanto riguarda la scelta della struttura degli inverter, quella di tipo interdigitato è preferibile rispetto alle altre date le dimensioni dei transistori che li costituiscono. Il layout dei due inverter che compongono la cella di ritardo è mostrato in figura 5.11.
Figura 5.11: Layout degli inverter della cella di ritardo.
5.5.2 I
condensatori
Analizziamo le caratteristiche dei tre condensatori realizzati con la tecnologia 0.18 µm CMOS della UMC. In tabella 5.2 ne sono indicate le dimensioni.
Tipo
Area (µm²)
P0
0,1584
G0
1,296
C0
0,8064
Tabella 5.2: Dimensioni dei condensatori.
Con la tecnologia a disposizione, la minima lunghezza e la minima larghezza del gate sono rispettivamente pari a 0.18 µm e 0.24 µm. Per quanto visto nel capitolo precedente, non conviene scegliere tali dimensioni per realizzare il condensatore piccolo; la sua lunghezza, allora, è stata aumentata a 0.36 µm e la sua larghezza a 0.44 µm. Il layout dei due condensatori piccoli è mostrato in figura 5.12.
Figura 5.12: Layout dei condensatori piccoli.
I condensatori grandi, che devono introdurre un ritardo pari a otto volte quello di uno piccolo, hanno la forma a bottone quadrato al centro del quale si trova il contatto D/S. Il loro layout è mostrato in figura 5.13.
Per quanto riguarda i condensatori di calibrazione, le loro dimensioni sono state scelte in modo tale che il ritardo introdotto dal più piccolo di essi sia pari al 2% del ritardo totale della cella in condizioni nominali (cioè con metà del carico capacitivo inserito). Di conseguenza devono avere un’area di valore intermedio tra quello dei due tipi di condensatori visti finora. Adottando ancora, come forma di partenza, quella rettangolare dei condensatori piccoli, possiamo aumentare la dimensione W attorno al contatto D/S (il valore di L rimane inalterato) senza circondarlo totalmente. Si ottiene così una forma simile a quella di un ferro di cavallo come si può notare dal layout rappresentato in figura 5.14. Questa soluzione è stata adottata anche perché, rispetto ad altre possibili, risponde in modo migliore alle nostre esigenze di compattezza e affiancabilità.
Figura 5.14: Layout dei condensatori di calibrazione.
Il layout completo della cella di ritardo è mostrato in figura 5.15. Da notare la presenza dei numerosi contatti di substrato vicino agli inverter per scongiurare il fenomeno del
L’estensione orizzontale della cella è di circa 10 µm. Di conseguenza la linea di ritardo composta da 64 elementi avrà una lunghezza pari a circa 640 µm. Quindi è ragionevole pensare che sia verificata l’equipotenzialità del segnale di ingresso ad alto bit rate all’interno del chip. Le metal sono state dimensionate basandosi sulle simulazioni delle correnti in condizioni worst power (fast) con segnale di ingresso a 40 Gb/s. Ad esempio, considerando la configurazione del carico 1p1g4c (numero di condensatori attivi per ogni tipo), in figura 5.16 sono mostrati gli andamenti della tensione di ingresso della cella di ritardo e delle correnti in ingresso all’inverter, in uscita dall’inverter (cambiata di segno), in ingresso al condensatore piccolo attivo, a un condensatore di calibrazione attivo e a quello grande attivo.
5.5.3 Simulazioni
Come visto nel capitolo precedente, per simulare correttamente la cella di ritardo si ricorre a un modello per gli shunt capacitor costituito da una catena di transistori, ciascuno dei quali rappresenta una porzione di condensatore. In tabella 5.3 sono riportati, per ogni condensatore, i parametri dei transistori nei quali lo abbiamo scomposto per effettuare la simulazione. Si ricorda che W indica la larghezza del transistore, L la lunghezza, PS il perimetro di source, PD il perimetro di drain, AS l’area di source e AD quella di drain. Le aree sono espresse in µm², il resto in µm.
M1 M2
Tipo W L PS PD AS AD W L PS PD AS AD
P0 0,44 0,18 0,54 0 0,1188 0 0,44 0,18 0 0 0 0 G0 2,88 0,18 0 0 0,2916 0 4,32 0,18 0 0 0 0 C0 1,88 0,18 0,54 0 0,2646 0 2,6 0,18 0 0 0 0
Tabella 5.3: Parametri dei transistori del circuito elettrico che schematizza i condensatori.
Per simulare correttamente l’inverter interdigitato, è stata considerata una larghezza del transistore nMOS pari a 13.5 µm mentre i restanti parametri sono stati modificati in modo da far pesare meno gli effetti capacitivi di bordo. Le simulazioni hanno mostrato che la cella di ritardo scelta permette di avere un Tfall adeguato al corretto
campionamento dei dati di ingresso a 40 Gb/s a partire dalle condizioni di lavoro tipiche e un range di aggancio che permette la sovrapposizione dei funzionamenti a 10 Gb/s e a 40 Gb/s proprio per tali condizioni. Per convincersi di ciò, nelle tre tabelle successive sono riportati i risultati delle simulazioni effettuate nelle nove principali condizioni di lavoro. Nella prima colonna è indicata la configurazione del carico (numero di condensatori attivi per ogni tipo), le successive riportano il ritardo introdotto dalla cella misurato sui fronti in discesa e su quelli in salita (Tcf e Tcr) e il tempo di discesa e quello
di salita del segnale in uscita dalla cella (rispettivamente Tfall e Trise); tali valori, che
caratterizzano la cella di ritardo, sono anche riportati nelle condizioni di aggancio utile, cioè quelle per cui Ne e Nc risultano primi tra loro e il Tfall è inferiore al valore massimo
“aggancio improbabile” si intende una condizione di aggancio che dipende dallo stato dei condensatori di calibrazione dopo la linearizzazione. Ad esempio, in tabella 5.4 si vede che, in condizioni di processo fast e ambiente tipico, nel funzionamento a 10 Gb/s i due agganci utili si trovano agli estremi del range di funzionamento della cella (confrontare i valori con quelli indicati in tabella 5.1); a seconda dell’esito della linearizzazione, quindi, potrebbe accadere che nessuno dei due agganci sia possibile.
Nelle tre figure che seguono, i valori di Tcf e Tfall sono riportati in forma grafica in
funzione del numero di condensatori attivati dove l’unità di questi ultimi corrisponde a P0 e il carico G0 è considerato equivalente a otto di tali unità; tale numero è anche pari alla capacità attiva C in relazione alla capacità Co del condensatore piccolo. Queste
simulazioni sono state effettuate con quattro condensatori di calibrazione inseriti.
Dalla tabella 5.5 si evince che, in condizioni tipiche e considerando i fronti in discesa, ogni condensatore piccolo contribuisce al ritardo per circa 0.46 ps e ognuno di quelli grandi introduce effettivamente un ritardo circa otto volte superiore (3.6 ps). Nella configurazione nominale (0p8g4c) il ritardo di una cella risulta di 115.5 ps. Dall’analisi del secondo blocco di righe possiamo dedurre l’incidenza dei condensatori di calibrazione: quando questi vengono tutti disattivati si ottiene un ritardo di 106.3 ps mentre quando ne aggiungiamo sette alla condizione nominale il ritardo diventa di 122.4 ps. Questo significa che l’escursione permessa dai sette condensatori di calibrazione risulta di circa 16.1 ps che corrisponde in percentuale al 13.94 % cioè ogni carico di questo tipo fa variare il ritardo in modo solo leggermente inferiore al 2% che era il nostro obiettivo. Dalla medesima tabella si può anche notare la sovrapposizione dei funzionamenti a 40 Gb/s e a 10 Gb/s in condizioni di lavoro tipiche.
Infine, nella tabella 5.7 sono indicate le condizioni di riordino per i valori utili di
Figura 5.17: Tcf e Tfall in funzione del numero di condensatori inseriti e al variare delle
Figura 5.18: Tcf e Tfall in funzione del numero di condensatori inseriti e al variare delle
Figura 5.19: Tcf e Tfall in funzione del numero di condensatori inseriti e al variare delle
Ne 9 11 13 15 17 19 Tc 56,51 69,07 81,63 94,19 106,75 119,3 Cella k Posizione 0 0 0 0 0 0 0 1 9 11 13 15 17 19 2 18 22 26 30 34 38 3 27 33 39 45 51 57 4 36 44 52 60 4 12 5 45 55 1 11 21 31 6 54 2 14 26 38 50 7 63 13 27 41 55 5 8 8 24 40 56 8 24 9 17 35 53 7 25 43 10 26 46 2 22 42 62 11 35 57 15 37 59 17 12 44 4 28 52 12 36 13 53 15 41 3 29 55 14 62 26 54 18 46 10 15 7 37 3 33 63 29 16 16 48 16 48 16 48 17 25 59 29 63 33 3 18 34 6 42 14 50 22 19 43 17 55 29 3 41 20 52 28 4 44 20 60 21 61 39 17 59 37 15 22 6 50 30 10 54 34 23 15 61 43 25 7 53 24 24 8 56 40 24 8 25 33 19 5 55 41 27 26 42 30 18 6 58 46 27 51 41 31 21 11 1 28 60 52 44 36 28 20 29 5 63 57 51 45 39 30 14 10 6 2 62 58 31 23 21 19 17 15 13 32 32 32 32 32 32 32 33 41 43 45 47 49 51 34 50 54 58 62 2 6 35 59 1 7 13 19 25 36 4 12 20 28 36 44 37 13 23 33 43 53 63 38 22 34 46 58 6 18 39 31 45 59 9 23 37 40 40 56 8 24 40 56 41 49 3 21 39 57 11 42 58 14 34 54 10 30 43 3 25 47 5 27 49 44 12 36 60 20 44 4 45 21 47 9 35 61 23 46 30 58 22 50 14 42 47 39 5 35 1 31 61 48 48 16 48 16 48 16 49 57 27 61 31 1 35 50 2 38 10 46 18 54 51 11 49 23 61 35 9 52 20 60 36 12 52 28 53 29 7 49 27 5 47 54 38 18 62 42 22 2 55 47 29 11 57 39 21 56 56 40 24 8 56 40 57 1 51 37 23 9 59 58 10 62 50 38 26 14 59 19 9 63 53 43 33 60 28 20 12 4 60 52 61 37 31 25 19 13 7 62 46 42 38 34 30 26 63 55 53 51 49 47 45
5.6
Test per la decisione del bit rate
Per quanto visto nel precedente paragrafo, la cella di ritardo scelta permette il funzionamento del ricevitore a 40 Gb/s in condizioni di processo slow e ambientali fast e dalle condizioni tipiche. Dato, però, che in condizioni di processo tipiche e ambientali
slow non è possibile il funzionamento a 40 Gb/s, conviene considerare come riferimento
la sovrapposizione dei funzionamenti nelle condizioni tipiche. Come visto nel capitolo precedente, conviene far funzionare il ricevitore a 40 Gb/s se il processo e le condizioni ambientali lo permettono, optare per i 10 Gb/s altrimenti (figura 5.20).
Figura 5.20: Scelta del bit rate al variare delle condizioni di lavoro.
In fase di collaudo del chip è possibile decidere a che bit rate far funzionare il ricevitore. Sembra ragionevole, quindi, separare il dispositivo in due classi di funzionamento che
Fast Slow
40 Gb/s 10 Gb/s
dipendono dalle condizioni di processo con cui è stato fabbricato: la prima classe prevede il funzionamento a 40 Gb/s (classe A) e la seconda quello a 10 Gb/s (classe B).
Abbiamo visto precedentemente che il valore di Ne che si viene a determinare
nella condizione di regime dipende dal valore del ritardo medio di cella nelle condizioni iniziali, cioè dalle condizioni di processo e ambientali in cui il chip si viene a trovare. Il sistema di aggancio, se realizzato in modo classico, va a cercare spontaneamente la condizione immediatamente più vicina a quella di partenza andando ad aumentare il ritardo di cella. Per scoprire in che condizioni di processo è stato realizzato il dispositivo, quindi, in fase di test è sufficiente imporre delle condizioni ambientali tipiche e valutare la situazione di aggancio conseguita dalla DLL.
Dall’esame delle precedenti quattro tabelle, sembra ragionevole dividere le classi di funzionamento nel modo seguente:
• Ne ≤ 13 → Classe A.
• Ne ≥ 14 → Classe B.
Le fasi che compongono il test per la decisione del bit rate sono elencate di seguito: 1) Imposizione di condizioni ambientali tipiche.
2) Aggancio dell’oscillatore locale a un clock di riferimento esterno a frequenza di 2.5 GHz.
3) Si procede all’aggancio della DLL all’oscillatore locale usando gli appositi condensatori, controllati globalmente allo stesso modo in tutte le celle. I condensatori di linearizzazione sono mantenuti nella configurazione di massima dinamica.
4) Si valuta quale situazione di aggancio sia stata effettivamente conseguita. 5) Si decide la classe di funzionamento del ricevitore.
5.7
Modifiche all’architettura e osservazioni
Si è già accennato al fatto che il doppio standard avrebbe comportato delle modifiche all’architettura. Di seguito sono analizzate qualitativamente due di tali modifiche, di cui solo la prima necessaria, e si accenna a una soluzione per la configurazione delle reti per l’acquisizione e il riordino dei campioni.
5.7.1
Aggiunta di due divisori di frequenza
Per poter utilizzare la stessa DLL nel funzionamento a 40 Gb/s e a 10 Gb/s, abbiamo visto che è necessario usare, rispettivamente, un clock a 2.5 GHz e a 625 MHz. Il secondo è ricavabile dal primo dividendone la frequenza per quattro.
Per quanto riguarda il generatore di clock, notiamo che esso non deve essere necessariamente in grado di produrre sempre un clock a 2.5 GHz; in condizioni di processo diverse da quelle fast, infatti, ne deve produrre uno a 625 MHz. La scelta del doppio standard, quindi, rilassa le specifiche dell’oscillatore.
Una possibile architettura potrebbe prevedere la possibilità di scegliere tra una divisione per due o per quattro a seconda delle condizioni di processo e la scelta dell’uscita potrebbe essere fatta mediante un multiplexer (figura 5.21).
Figura 5.21: Aggiunta dei divisori di frequenza per una corretta implementazione del doppio standard.
Oscillatore ÷2 ÷2
Multiplexer Config.
5.7.2
Realizzazione semi-custom della rete per il riordino dei
campioni
Per verificare il corretto funzionamento della rete di riordino, bisogna considerare il percorso più lento all’interno della singola cella che la compone. Consideriamo, allora, la parte di tale rete che comprende il multiplexer mostrata in figura 5.22. C1 e C0 sono i bit di configurazione e provengono dalla memoria della cella.
Figura 5.22: Parte centrale della cella di riordino.
Una possibile realizzazione della parte centrale della cella di riordino è quella mostrata in figura 5.23 in cui il multiplexer è composto da pass gate abilitate dai bit di configurazione e il flip flop è di tipo dinamico master/slave.
Figura 5.23: Possibile realizzazione del multiplexer e del flip flop della cella di riordino.
Dimensionando le pass gate in modo tale che da ogni terminale di ingresso si veda la stessa impedenza del flip flop usato per le simulazioni del campionatore, in condizioni
C0 /C0 C1 /C1 /Clock Clock Down Ok Up Ok' Down Ok Up C1 C0 Clock Ok' 01 00 10 D Q
tipiche il funzionamento della singola cella della matrice di riordino è corretto anche per una frequenza di clock pari a 5 GHz come mostrato dalla simulazione riportata in figura 5.24. VA0 è uno dei tre ingressi, Clock sincronizza il flip flop e Out è l’uscita della cella (Ok').
Figura 5.24: Simulazione della cella di riordino in condizioni di tipiche.
Dato che la massima frequenza di funzionamento della cella è sicuramente superiore a quella di utilizzo, potrebbe risultare possibile un corretto funzionamento della rete per il riordino dei campioni per una frequenza di clock di 2.5 GHz anche se progettata con tecniche semi-custom.
5.7.3
Configurazione delle reti per l’acquisizione e il
riordino dei campioni
Una volta ricavato Ne, è possibile effettuare la configurazione delle reti per
l’acquisizione e il riordino dei campioni. Non sembra possibile, però, trovare una soluzione per effettuare automaticamente tale configurazione. Dato il ridotto numero di periodi utili al funzionamento del ricevitore, si possono ricavare manualmente le sei sequenze numeriche per la configurazione della rete per poi inserirle in una ROM indirizzabile tramite Ne. La sequenza numerica viene utilizzata per l’impostazione dei
valori delle memorie ricorrendo, ad esempio, a un accesso seriale usando registri tradizionali in configurazione SIPO (Serial In, Parallel Out).