Post on 04-Apr-2015
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
1
Ecole Microélectronique, building blocks 0.35m, La Londe les Maures 2009
Interpolateur de temps à 50ps de pas de
quantification
Ph.VALLERAND – L.LETERRIER
R&D Mesure de temps
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
2
Objectif
Développer une architecture à 50ps de pas de
quantification :
Architecture à base
d’une D.L.L « multi-échantillonnée »
Principe : mémoriser l’état d’une DLL
à différents instants
D.L.L « multi-échantillonnée »
Hit 1
Hit 2
Hit 3
Hit 4
32 bits
32 bits
32 bits
32 bits
TimeMeasurement
7 bits
DLL 32 cells
Hit Register 1
Hit Register 2
Hit Register 3
Hit Register 4
Hit1
Hit2
Hit3
Hit4
32 bits
clock
fclock = 160 MHz
•à base d’une DLL (Delay Locked Loop)
•technologie AMS CMOS 0.35m
•système asservi
•faible consommation
•faible encombrement
limite technologique
pas de quantification ~
200ps
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
3
Principe de l’interpolateur Principe du « multi-échantillonnage »
exemple : une DLL à 200ps de LSB, échantillonnée 4 fois toutes les 50ps
200 ps
X X+1 X+2
Hit1Hit2Hit3Hit4
1er cas
N°Registre
Reg1
Reg2
Reg3
Reg4
Code mémorisé
XX
XX
0 20050 100 150
Hit1Hit2Hit3Hit4
2ème cas
Reg1
Reg2
Reg3
Reg4
XX
X+1X
Hit1Hit2Hit3Hit4
3ème cas
Reg1
Reg2
Reg3
Reg4
XX
X+1X+1
Hit1Hit2Hit3Hit4
4ème cas
Reg1
Reg2
Reg3
Reg4
XX+1
X+1X+1
Position du Hit déduite des
états mémorisés de la DLL
Hitentre
0 et 50(ps)
Hitentre
50 et 100(ps)
Hitentre
100 et 150(ps)
Hitentre
150 et 200(ps)
200 ps 200 ps
DLLiDLLi+1DLLi+2
Signaux issus de la DLL
400
État de la DLL
250 300 350 450 500
50 ps
50 ps
50 ps
Inconvénient
ligne à retard passive :
complexe
et difficile à calibrer
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
4
Principe de l’interpolateur
Principe du « multi-échantillonnage 50ps » transposable
en « multi-échantillonnage 250ps »
200 ps
X X+1 X+3X+2 X+4
Hit1Hit2Hit3Hit4
1er cas
N°Registre
Reg1
Reg2
Reg3
Reg4
Code mémorisé
XX+1
X+3X+2
0 20050 100 150
Hit1Hit2Hit3Hit4
2ème cas
Reg1
Reg2
Reg3
Reg4
XX+1
X+4X+2
Hit1Hit2Hit3Hit4
3ème cas
Reg1
Reg2
Reg3
Reg4
XX+1
X+4X+3
Hit1Hit2Hit3Hit4
4ème cas
Reg1
Reg2
Reg3
Reg4
XX+2
X+4X+3
Position du Hit correspondant aux états de
DLL mémorisés
Hitentre
0 et 50(ps)
Hitentre
50 et 100(ps)
Hitentre
100 et 150(ps)
Hitentre
150 et 200(ps)
250 ps
250 ps
250 ps
200 ps 200 ps 200 ps 200 ps
DLLiDLLi+1DLLi+2
Signaux issus de la DLL
État de la DLL
DLLi+3DLLi+4DLLi+5 Avantage
délai de 250ps
réalisable
avec des cellules
à retard
système asservipossible
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
5
Avantage :pas de calibration
Inconvénient :très sensible
à la DNL de la DLL32
Architecture de l’interpolateur
Interpolateur à base d’une DLL et d’une ligne à retard “multi-hits” controlée par une seconde DLL
clock
hit
7 bits
Time Measurement
Fine Time
Encoder
fclock = 160 MHz
PDCP Tcell
Delay Locked Loop - 32 delay cells
Delay Line – 4 delay cells
Delay Locked Loop - 4 delay cells
32 bits
32 bits
32 bits
32 bits
32 bits hit1
hit2
hit3
hit4
Tcell’
Tcell’
Tcell 200 ps
Tcell’ 250 ps
dummy cell
PDCP
dummy cell
hit register 4
hit register 3
hit register 2
hit register 1
Tcell’ = 5/4.Tcell
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
6
La cellule à retard : 2 inverseurs dégénérés sur le NMOS
Interpolateur 50ps : la D.L.L à 32 cellules
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
7
Caractéristique du délai en fonction de la tension de contrôle
Dispersion des délais de propagation
front « montant –descendant »
Δ r_f ~ 1,5 ps
18m
52m
délai min ~ 130 ps
La cellule à retard : résultats de simulations post-layout
Interpolateur 50ps : la D.L.L à 32 cellules
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
8
Simulations post-layout : self de bonding = 10nH capacités de découplage =
100pF
650m
86m
Interpolateur 50ps : la D.L.L à 32 cellules
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
9
Non Linéarité Différentielle de la D.L.L à 32 cellules :
DNL diff ≈ 2,9 %
Δdélai ≈ 5,8ps
Consommation de la DLL à 32 cellules : ~ 6 mA
Interpolateur 50ps : la D.L.L à 32 cellules
Délaicellule en ps
numéro de canal
189
193
197
201
205
185
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
10
Association d’une D.L.L. principale
à 32 cellules
Interpolateur 50ps : les 2 DLLs interverrouillées
DLL_32_4
Delay Locked Loop 32 cells
31 2 31 3230
Φ1
T cell = 195,3 ps
Charge
Φ3 Φ32Φ31Φ30Φ2
Miseen forme
Clk
Delay Locked Loop 4 cells
Phase Detector
Phase Detector
out_cp<4>
DL32
ChargePumpCP4
up
down
V_CP_DL4
31 2 4
Φ1
Charge
Φ3 Φ4Φ2
Miseen forme
out_cp<3>
DL4
Phase Detector
Phase Detector
clk360
ChargePumpCP32
up
down
V_CP_DL32clk0
Tuningclk0
Tuningclk360clk0 clk360
Φ5
T’ cell = 244,125 ps
et d’une D.L.L secondaire à 4 cellules
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
11
Interpolateur 50ps : les 2 DLLs interverrouillées
Non Linéarité Différentielle de la D.L.L principale à 32 cellules :
DNL diff ≈ 6,5 %
Δdélai ≈ 13ps
190
192,5
195
197,5
200
202,5
187,5
Délaicellule en ps
numéro de canal
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
12
Interpolateur 50ps : les 2 DLLs interverrouillées
Non Linéarité Différentielle de la D.L.L secondaire à 4 cellules :
DNL diff ≈ 3 %
Consommation des 2 DLLs : ~ 6,7 mA
ΔTHit1-Hit2 ΔTHit2-Hit3 ΔTHit3-Hit4
245,4ps
249,4ps
251ps
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
13
Layout :
Registres de mémorisation
Multiplexeur de données
DLL32 &DLL4Mise en forme du Hit
LAR_Multi_Hits
710m
27
1m « Interpolateur 50ps » 1 voie
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
14
Bloc « Interpolateur 50ps »2 voies
Nombre d’IOs
54 Pads
Layout « bloc 2 voies » , en cours…
1,65mm
2,1mm
Surface (mm2)
3,56
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
15
Bilan des résultats de simulations :
Interpolateur Haute Résolution :
DLL32 DLL4
DNL 6,5 % 3 %
Consommation 6,7 mA
Surface 0,2 (mm2)
Conclusions & perspectives
soumission du bloc 2 voies fin 2009
simulations pour caractériser complètement l’interpolateurrestent à faire
•Principe validé mais DNL de la DLL 32 cellules est à améliorer…•Consommation conforme aux spécifications•Encombrement faible donc « chip multivoies » possible
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
16
Conclusions & perspectives
Améliorations : diminuer la sensibilité à la DNL de la DLL32
dispositif de glissement pour améliorer la DNL de la DLL32
clock
hit
7 bits
Fine Time
Encoder
fclock = 160 MHz
PDCP Tcell
Delay Locked Loop - 32 delay cells
Delay Line – 5 delay cells
Delay Locked Loop - 5 delay cells
32 bits
32 bits
32 bits
32 bits
32 bits hit1
hit2
hit3
hit4
Tcell’
Tcell’
Tcell 200 ps
Tcell’ 250 ps
dummy cell
PDCP
dummy cell
hit register 3
hit register 2
hit register 1
Tcell MUX
hit register 4
Sliding Scale
delay_0_4
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
17
FIN
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
18
Schéma structurel
Mise en forme du Hit Ligne à retard Multi_Hits
DLL32 & DLL4Registres de
mémorisationMultiplexeurde données
« Interpolateur 50ps » 1 voie
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
19
D.L.L. à 32 cellules + cellule d’optimisation de l’erreur de phase
Delay Line : 32 cells
PhaseTuning
Phase Detector
Master Clock
Φ1 Φ2 Φ32Φ3 Φ31Φ30
Phase Detector
Delay 2
Delay 1
V_Delay 1
V_Delay 2
ChargePump
&Buffer
up
down
V_pump
Interpolateur 50ps : la DLL à 32 cellules
Optimisation de la DNL de la D.L.L
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
20 20
Principe de base
Le marquage du temps
En charge d’assurer :
•une mesure fine du temps garantissant la résolution souhaitée
•une mesure grossière du temps fixant la dynamique
Réalisation :
•En général par l’association
d’un interpolateur
d’un compteur
L’interpolateur, qui est le cœur de cette étude, est à base d’une boucle à verrouillage de retard (DLL, Delay Locked Loop)
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
21
Résultats de simulations de la DLL :
Configurations Post Layout
Blocs Noms Unités 1 2 3 4
Selfs de bonding Sb ( nH ) 10 10 10 10
Capacité de bonding Cb ( pF ) 50 100 50 100
Capacité de Pompe de Charge Cpc ( pF ) 10 10 25 25
out_cell<31>
Rising_delay ( ps ) 197,6 198,3 197,5 197,2
Falling_delay ( ps ) 206,0 206,6 207,4 207,6
Δ r_f ( ps ) 8,40 8,30 9,90 10,40
to_reg1<31>
Rising_delay ( ps ) 197,8 198,0 195,7 196,8
Falling_delay ( ps ) 194,8 195,4 196,2 196,2
Δ r_f ( ps ) -3,00 -2,60 0,50 -0,60
D.L.L
r_delay Line ( ps ) 6060,0 6060,0 6058,0 6061,0
r_delay moyen ( ps ) 189,4 189,4 189,3 189,4
I_moyen (200ns) (mA) 5,714 5,713 5,729 5,728
Delta V (vdd_B - vss_B)
(mV) 43,1 21,2 53,3 20,3
D.N.L. (single) ( ps ) 11,2 11,0 11,4 11,2
D.N.L. (différentiel) ( ps ) 9,5 8,0 9,2 5,8
Architecture 50ps : la DLL
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
22
Résultats de simulations :
Architecture 50ps : les 2 DLLs interverrouillées
DLL_32_4 ( Réaliste ) (avec selfs et capas de bonding) Unités Schematic Post Layout
Cellule Mesures V_charge_pump ( V ) DLL_32 DLL_32_4 DLL_32 DLL_32_4
Rising_delay ( ps ) 191,7 197,2 190,5
Falling_delay ( ps ) 179,7 207,6 185,4 out_cell<31>
Δ r_f ( ps ) -12,00 10,40 -5,10
Rising_delay ( ps ) 195,0 196,8 194,1
Falling_delay ( ps ) 179,8 196,2 184,2 to_reg1<31>
Δ r_f ( ps ) -15,20 -0,60 -9,90
r_delay Line ( ps ) 6280,0 6061,0 6276,0
r_delay moyen ( ps ) 196,3 189,4 196,1 Delay_Line
I_moyen (200ns) (mA) 4,505 5,728 -
DLL32
DNL_32 Differential ( ps ) 6,96 5,3 12,78
Rising_delay ( ps ) 245,7 249,4
Falling_delay ( ps ) 226,4 224,1 out_cell<31>
Δ r_f ( ps ) -19,30 -25,30
Rising_delay ( ps ) 247,5 248,9
Falling_delay ( ps ) 228,2 224,1 to_reg1<31>
Δ r_f ( ps ) -19,30 -24,80
r_delay Line ( ps ) 996,80 1020,0
r_delay moyen ( ps ) 249,2 255,0 Delay_Line
I_moyen (200ns) (mA) 0,77 -
DLL4
DNL_4 ( ps ) 5,94
Δ (vdd_B - vss_B) en régime établi (mV) 28,4 27,1 DLL_32_4
I_moyen (200ns) I_moyen (200ns) (mV) 5,275 5,225
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
23
Résultats de simulations : suite..
Architecture 50ps : les 2 DLLs interverrouillées
DLL_32_4 ( Réaliste ) MN3 CP4 ( µm ) 0,85 x 0,35 0,65 x 0,35 0,60 x 0,35 0,55 x 0,35 (avec selfs et capas de bonding) Unités Sch Post Sch Post Sch Post Sch Post
Cellule Mesures V_charge_pump ( V ) DLL_32_4 DLL_32_4 DLL_32_4 DLL_32_4 DLL_32_4 DLL_32_4 DLL_32_4 DLL_32_4
Rising_delay ( ps ) 191,7 190,5 194,3 191,6 195,2 194,0
Falling_delay ( ps ) 179,7 185,4 209,9 179,8 209,6 209,9 out_cell<31>
Δ r_f ( ps ) -12,00 -5,10 15,60 -11,80 14,41 15,90
Rising_delay ( ps ) 195,0 194,1 189,2 195,0 189,5 189,2
Falling_delay ( ps ) 179,8 184,2 189,1 179,8 189,0 189,1 to_reg1<31>
Δ r_f ( ps ) -15,20 -9,90 -0,10 -15,20 -0,50 -0,10
r_delay Line ( ps ) 6280,0 6276,0 6258,0 6280,0 6257,2 6259,0
r_delay moyen ( ps ) 196,3 196,1 195,6 196,3 195,5 195,6 Delay_Line
I_moyen (200ns) (mA) 4,505 -
DLL32
DNL_32 Differential ( ps ) 6,96 12,78 13,30 6,78 13,39 13,43
Rising_delay ( ps ) 245,7 249,4 245,9 240,6 244,6 242,8
Falling_delay ( ps ) 226,4 224,1 250,7 222,1 249,2 247,6 out_cell<31>
Δ r_f ( ps ) -19,30 -25,30 4,80 -18,50 4,54 4,80
Rising_delay ( ps ) 247,5 248,9 246,4 243,0 244,6 242,9
Falling_delay ( ps ) 228,2 224,1 253,6 223,8 251,8 250,2 to_reg1<31>
Δ r_f ( ps ) -19,30 -24,80 7,20 -19,20 7,26 7,30
r_delay Line ( ps ) 996,80 1020,0 985,2 978,2 978,9 972,0
r_delay moyen ( ps ) 249,2 255,0 246,3 244,6 244,7 243,0 Delay_Line
I_moyen (200ns) (mA) 0,77 -
DLL4
DNL_4 ( ps ) 5,94 3,70 3,36 3,30
Δ (vdd_B - vss_B) en régime établi (mV) 28,4 27,1 27,8 28,4 27,1 27,8 DLL_32_4
I_moyen (200ns) I_moyen (200ns) (mV) 5,275 5,225 6,708 5,27 6,706 6,704
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
24
Plan
o La problématique du projet
o Le cahier des charges de l’interpolateur
o Le principe de l’interpolateur
o Les résultats de simulations
o Améliorations de l’architecture
o Conclusion & perspectives
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
25
D.L.L. à 32 cellules + cellule d’optimisation de l’erreur de phase
Delay Line : 32 cells
PhaseTuning
Phase Detector
Master Clock
Φ1 Φ2 Φ32Φ3 Φ31Φ30
Phase Detector
Delay 2
Delay 1
V_Delay 1
V_Delay 2
ChargePump
&Buffer
up
down
V_pump
Architecture 50ps : particularités de la DLL
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
26
La problématique
• Objectifs : – Marquage des paramètres physiques
– Précision temporelle de 100ps
• Performances visées :
– Dynamique > durée d’un « RUN » 12 h
– Résolution < 100ps FWHM 43ps RMS
Développer un marqueur de temps à hautes performances :
Développer un marqueur de temps à hautes performances :
Résolution temporelle suffisante
pour la majorité des expériences dephysique nucléaire
mesure du temps de vol des particules
Transfert de données par bloc d’évtsPlus de temps mort communImplémentation d’1 trigger off-line
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
27
Architecture du marqueur de temps :
Association : Compteur & Interpolateur
clock
hit
MSB bits
Time measurement
Counter
Counter
Interpolator
MUX
LSB bits
Latch
in out
L
Latch
in out
L
Latch
in out
L
select in1
in2
out
Mesure « fine » de tempsHaute résolution
Mesure « grossière » de tempsGrande dynamique
Interpolateur
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
28
Le cahier des charges de l’interpolateur de temps
• ASIC fondu en technologie AMS CMOS 0.35m
• Nb de voies d’interpolation = 1• Fréquence de fonctionnement = 160MHz• LSB 100ps
• Résolution 40ps RMS
• Temps mort < 50ns
Bloc soumis en janvier 2007
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
29
L’interpolateur : à technique numérique
Délai élémentairepar cellule de DLL
390 ps
Horloge de 160MHzde Fréquence
DLL à 16 cellules à retard
Ligne à retard //à 4 cellules à retard
Résolution temporelle
de 97.5 ps
ordre 1
ordre 2
÷16
Période d’horloge de 6.25ns
Interpolateur de temps
÷4
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
30
à base d’une D.L.L. et d’une ligne à retard // à 4 cellules à retard :
Avantage :faible temps mort
Inconvénient :Autocalibration complexe
voltage controlled delay line : 16 cells
Phase
Detector
Master Clock
hit
16 bits
Time measurement
Register
16 shifted phase clocks
Register
Register
Register
hit1
hit2
hit3
hit4
Switch Tri-state
16 bits
16 bits
16 bits
16 bits
voltage controlled delay cells
Fro
m
digi
tal c
alib
ratio
n
Fin = 160MHz
τ1=400ps
τ2=500ps
τ3=600ps
τ4=700ps
enable
Delay Locked Loop
Delay Line
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
31
La ligne à retard // à 4 cellules à retard :
voltage controlled delay line : 16 cells
Phase
Detector
Master Clock
hit
16 bits
Time measurement
Register
16 shifted phase clocks
Register
Register
Register
hit1
hit2
hit3
hit4
Switch Tri-state
16 bits
16 bits
16 bits
16 bits
voltage controlled delay cells
Fro
m
digi
tal c
alib
ratio
n
Fin = 160MHz
τ1=400ps
τ2=500ps
τ3=600ps
τ4=700ps
enable
Delay Locked Loop
Delay Line
t
hit
τ2
τ4
τ3
τ1 hit1
hit4
hit3
hit2
hit
hit1
hit2
hit3
hit4
voltage controlled delay cells
τ1=400ps
τ2=500ps
τ3=600ps
τ4=700ps
calibration
R,C R,C R,C R,C R,C R,C hit
hit1 calibration
hit2
C C
Avantages:
Pas besoin de délais RC passifs
Délais indépendants
après l’autocalibrationpar mesure statistique:
τ2-τ1 τ3-τ2 τ4-τ3
100ps
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
32
Plan
SNATS : Super NEMO Absolute Time Stamper
Marqueur de temps 50ps ( de LSB)
Perspectives
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
33
Collaboration LAL-LPC Caen (V.Tocut, L.Leterrier, P.Vallerand)
Besoins : Mesure du temps avec une résolution ≤ 100ps
RMSMarquage du temps sur quelques dizaines
d’heures
Exigences pour SNATS:résolution ≤ 70ps RMSpas de quantification théorique ≤ 245ps
Contraintes pour SNATS:
Techno AMS CMOS 0.35µm
SNATS : Super Nemo Absolute Time Stamper
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
34
16 PMsSlow Shaper
PACTrack & Hold
Fast Shaper CFD
SNIFE (SuperNemo Integrated Front-end)
SNATS
ADC12bits / 40MHz
FPGACyclone 3
1616Data
Readout
Electronique Front-End du Calorimètre de SuperNemo
20000 voies PM 1250 SNATS
Clock MultiplierSI5325
CLK 40MHz
160MHz
Control
9
6
SNATS dans le front end de Super Nemo
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
35
voltage controlled delay line : M cells
Phase
Detector
Master Clock
Hit Fine Time Memory
M shifted phase clocks
@ Fin
Delay Locked Loop SNATS
Coarse Time Counter :
N bits Coarse Time Memory
Fine Time
Decoder
N bits
Time measurement :
N+Q bits
N bits
Q bits
Une mesure fine du temps (haute résolution) DLLUne mesure grossière du temps (dynamique) Compteur N bits
SNATS : Principe
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
36
SNATS : Architecture
48 registers
48 registers
data
Register
Register
48bit Gray counter0 1 47Master Clock
Synchronizer
Hit0
Hit1
Hit_coarse0
5416
Addr_ch (3:0)
Data_sel (1:0)
Clear
Hit14
Hit15
SNATS
DLL
Encoder
Encoder
Synchronizer
error
Hit_fine0
Hit_fine1
Hit_coarse1
Addresschannel
5
5
Wordselect
Reg_sel (1:0)
Data(15:0)
data
error
Cle
ar0
Cle
ar1
Valid
0V
alid
1
1 channel for testsHit_visu
Visu output
Endata_in, Data_in, Clk_in
Data_out
Registerselect
ConfigRegister
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
37
Technologie AMS CMOS 0.35µm (C35B4)
Fréquence d’horloge : 160MHz retard d’une cellule ≈
195psDLL à 32 cellules
DNL <10%
Dynamique de codage : 53 bits compteur d’horloge sur 48 bits (≈ 20 jours) encodage de l’état de la DLL sur 5 bits sortie parallèle 16 bits (4 mots 16 bits)
Modularité : 16 voies/chip
SNATS : Spécifications pour répondre au cahier des charges
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
38
- La DLL (Cellule retard)
- Raccordement entre DLL et compteur
- Compteur 48 bits
SNATS : Détails sur certains blocs
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
39
Inverseur non dégénéré : gain ≈ 30ps
Un seul buffer : gain ≈ 30ps
Résultat obtenu : délai nominal ≈ 195ps avec une marge ≈ 30ps
SNATS : cellule à retard
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
40
DNL de la DLL <2% à 27°C
Délai minimum 150ps à 27°C 166ps à 60°C
Pente d’une cellule à retard 0.15ps/mV
SNATS : Simulation post layout de la DLL (en typique)
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
41
Pb : DLL et compteur sont synchrones mais pas en phase!
0 1 2 31
0 1 2 31
0 1 2 31
CLK
N N+1N-1Counter
DLL
Hit
Code DLL mémorisé : 0Code compteur mémorisé : N au lieu de N+1
Erreur d’une période d’horloge
SNATS : Raccordement entre DLL et compteur
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
42
clock
hit
MSB bits
Time measurement
Counter
Counter
DLL
MUX
LSB bits
Latch
in out
L
Latch
in out
L
Latch
in out
L
select in1
in2
out
Généralement, une structure à 2 compteurs est utilisée:
Inconvénients:- Surface occupée (2 compteurs +
multiplexeur)- Puissance consommée
SNATS : Raccordement entre DLL et compteur
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
43 43
Delay_line_200ps_al1 Post Layout (Convergence sur 300 ns)
La DLL32
Boucle à verrouillage de retard
DLL_32_cells_al1 Post Layout (Sb = 10 nH, Cb = 100 pF, Ccp = 25 pF)
DNL ≈ 2,9 %
Courbe référencée au vss Courbe référencée au gnd_int
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
44
Idée : conditionnement de l’instant de mémorisation du compteur en fonction de l’état mémorisé de la DLL
Clock
Hit
MSB bits
Time
measurement
Counter
DLL
Synchroniser
LSB bits
Latch
in out
L Register in
out
C hit_counter
Latch
in out
L Register in
out
C
hit_dll
status_dll
Raccordement entre DLL et compteur : Solution pour SNATS
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
45
Evénement avec correction:
Plage de valeur de DLL où nous avons une erreur de code
0 1 2 31
0 1 2 31
0 1 2 31
CLK
N N+1N-1Counter
DLL
Hit
Hit _dll
Hit_counter
Status_dll
Code DLL mémorisé : 0Code compteur mémorisé en fonction du code DLL : N+1
Code correct
Raccordement entre DLL et compteur : Solution pour SNATS
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
46
Contraintes :Fréquence de fonctionnement : 160MHzDynamique : 48 bits (20 jours)Faible consommationPas d’état transitoire
Code Gray
Idée de départ: optimisation entre complexité/performance.
Division du compteur en 3 blocs de 16 bits constitués chacun de 4 tronçons de 4 bits
Tronçon 4 bits
Tronçon 4 bits
Tronçon 4 bits
Tronçon 4 bits
16
Q0-Q15
Chain4
Tronçon 4 bits
Tronçon 4 bits
Tronçon 4 bits
Tronçon 4 bits
16
Q16-Q31
Chain8
Tronçon 4 bits
Tronçon 4 bits
Tronçon 4 bits
Tronçon 4 bits
16
Q32-Q47
CLK
RESET
Tronçon 4 bits
Tronçon 4 bits
Tronçon 4 bits
Tronçon 4 bits
16
Q0-Q15
Chain4
Tronçon 4 bits
Tronçon 4 bits
Tronçon 4 bits
Tronçon 4 bits
16
Q16-Q31
Chain8
Tronçon 4 bits
Tronçon 4 bits
Tronçon 4 bits
Tronçon 4 bits
16
Q16-Q31
Chain8
Tronçon 4 bits
Tronçon 4 bits
Tronçon 4 bits
Tronçon 4 bits
16
Q32-Q47
CLK
RESET
SNATS : compteur 48 bits en code GRAY
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
47
Simulé en post layout jusqu’à 200MHz et 28ième bit
Temps d’établissement des sorties < 1.5ns
Taille :780µm X 100µm
Layout réalisé sous Soc Encounter avec l’aide précieuse de l’IPHC de Strasbourg (Abdelkader Himmi)
SNATS : compteur 48 bits en code GRAY
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
48
SNATS : Fonctionnement pour une voie touchée
Hit+<i>
Data_Select<0:1>
Word_Select<0:1>
Adress_ch<0:3>
Data<0:15> 0 Voie touchée = i LSB MSB
0 i
i 0
0
10 01
00 10 01 11 00
10
Clear
1 2 3 41 2 3 4
0
0
0
10
01
1 2 3 4
Hit<0>
Hit<i>
Hit<15>16
1616
Data<0:15>
Data_Select<0:1>Word_Select<0:1>10 01 1100
Clear
Adress<0:3>
16Hit<0:15>
43210 1 0
1
1
2
3
4
6
5
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
49
Consommation:Alimentation en 3.3V10mA/DLL + 35mA pour le restePour 8 DLLs: 115 mA P= 380 mW
Signal d’horloge : Entrée en LVDS ou asymétrique (3.3V)Fréquence nominale : 160MHzFaible jitter : qq ps RMS
Signal de Hit :Niveau d’entrée au choix entre 1V et 3.3VDéclenchement sur front montant
Entrées / Sorties de Readout et control:Standard LVCMOS 3.3V
SNATS : Caractéristiques électriques
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
50
Non Linéarité Différentielle : ± 0.2LSB
SNATS : Mesures
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
51
Non Linéarité Intégrale : ± 1.3LSB
SNATS : Mesures
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
52
SNATS : Mesures
Résolution : σ = 71 ps
0 1 1.5
0.5-0.5-1.5 -1
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
53
SNATS : Mesures
Non Linéarité Différentielle : ± 0.024LSB
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
54
SNATS : Mesures
Non Linéarité Intégrale : ± 1.98LSB
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
55
SNATS : Mesures
Résolution différentielle: σ = 109 ps
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
56
Spécifications respectées
Taille :4467µm X 2853µm
Boitier : CQFP100
SNATS : Bilan
Philippe VALLERANDEcole Microélectronique, La Londe les Maures, 11 au 16 octobre 2009
57
Avantage :pas de calibration
Inconvénient :La DNL de de DLL32doit être très bonne
clock
Coarse Time counter : 48 bits
hit
48 bits
7 bits
Fine Time
Encoder
fclock = 160 MHz
Coarse Time register
48 bits
PDCP Tcell
Delay Locked Loop - 32 delay cells
Delay Line – 5 delay cells
Delay Locked Loop - 5 delay cells
32 bits
32 bits
32 bits
32 bits
32 bits hit1
hit2
hit3
hit4
Tcell’
Tcell’
Tcell’ = 5/4.Tcell
Tcell 200 ps
Tcell’ 250 ps
dummy cell
PDCP
dummy cell
hit register 3
hit register 2
hit register 1
Tcell MUX
hit register 4
Sliding Scale
delay_0_4
Architecture 50ps Interpolateur à base d’une DLL et d’une ligne à retard “multihits” controlée
par une seconde DLL
Main Performances : LSB=50ps , RMS 22ps