1 Introduction and Overview
Thucydides Xanthopoulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 The Clock Design Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Some Subjective Milestones in the History
of Microprocessor Clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.1 Integrating the PLL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.2 Clock Distribution Moves to the Forefront: The Dawn
of the GHz Race . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.3 Delay Lock Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.4 Exploiting Inductance for Oscillation and Distribution . . . . . . . . . 5
1.2.5 Variable Frequency (and Voltage) . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.6 Frequency Increase (or Supply Lowering) Through Resiliency . . . 6
1.3 Overview of this Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2 Modern Clock Distribution Systems
Simon Tam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 Definitions and Design Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.1 Setup and Hold Timing Constraints . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2.2 Clock Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Static and Dynamic Clock Uncertainties . . . . . . . . . . . . . . . . . . . . . 14
Distribution Delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Duty Cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2.3 Clock Distribution Power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.3 Clock Distribution Topologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3.1 Unconstrained Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3.2 Balanced Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.3.3 Central Spine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.3.4 Spines with Matched Branches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.3.5 Grid. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.3.6 Hybrid Distribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.4 Microprocessor Clock Distributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.5 Clock Design for Test and Manufacturing . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.5.1 Global and Local Clock Compensations. . . . . . . . . . . . . . . . . . . . . . 36
2.5.2 Global Clock Compensation Architecture . . . . . . . . . . . . . . . . . . . . 37
2.5.3 Local Clock Compensation Architecture . . . . . . . . . . . . . . . . . . . . . 43
2.6 Elements of Clock Distribution Circuits . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.6.1 Clock Duty Cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.6.2 Power Supply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.7 Clock DFX Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.7.1 Optical Probing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.7.2 On-Die Measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.7.3 Locating Critical Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.7.4 On-Die-Clock Shrink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.8 Multiclock Domain Distributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
2.8.1 Multicore Processor Clock Distribution . . . . . . . . . . . . . . . . . . . . . . 55
2.9 Future Directions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
2.10 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3 Clocked Elements
James Warnock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
3.2 CSE Design Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.2.1 Latency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.2.2 Hold Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3.2.3 Power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3.2.4 Scan Design for CSEs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.3 Static Latch Designs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.3.1 Master–Slave Latches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.3.2 Two-Phase Level-Sensitive Latches . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.3.3 Pulsed-Clock Static Level-Sensitive Latches . . . . . . . . . . . . . . . . . . 78
3.4 Flip-Flop Designs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
3.4.1 Sense-Amp Style Flip-Flop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
3.4.2 Hybrid Latch Flip-Flop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
3.4.3 Semi-Dynamic Flip-Flop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
3.5 Test and Debug Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
3.6 CSE Design for Variability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
3.6.1 Variability-Induced Frequency Degradation . . . . . . . . . . . . . . . . . . . 88
3.6.2 Variability-Induced Functional Failures . . . . . . . . . . . . . . . . . . . . . . 89
3.7 Reliability Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
3.7.1 Soft Error Rate Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
3.7.2 End of Life Considerations for CSE Design . . . . . . . . . . . . . . . . . . 93
3.8 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4 Exploiting Inductance
Nestoras Tzartzanis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.2 Monolithic Inductance. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
4.2.1 Spiral Inductors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
4.2.2 Transmission Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
4.3 Inductor-Based Clock Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
4.3.1 Differential LC VCO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
4.3.2 Quadrature LC VCO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
4.3.3 Distributed VCO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
4.3.4 Poly-Phase Circularly Distributed VCO . . . . . . . . . . . . . . . . . . . . . . 121
4.4 Clock Distribution Using Inductance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
4.4.1 Rotary Traveling-Wave Oscillator Arrays . . . . . . . . . . . . . . . . . . . . 123
4.4.2 Standing Wave Oscillator and Grid . . . . . . . . . . . . . . . . . . . . . . . . . . 124
4.4.3 Inductor-Based Resonant Global Clock Distribution . . . . . . . . . . . 128
4.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
5 Phase Noise and Jitter
Scott Meninger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
5.2 Timing Error in the Time Domain: Jitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
5.2.1 Phase Jitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
5.2.2 Period Jitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
5.2.3 Cycle-to-Cycle Jitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
5.3 Timing Error in the Frequency Domain: Phase Noise . . . . . . . . . . . . . . . . . 142
5.3.1 Relationship Between Phase Noise and Jitter . . . . . . . . . . . . . . . . . 143
5.4 Frequency Domain Modeling of PLLs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
5.4.1 PLL Phase Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
5.4.2 PLL Intrinsic Noise: VCO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
5.4.3 PLL Intrinsic Noise: Feedback Divider . . . . . . . . . . . . . . . . . . . . . . 146
5.4.4 PLL Intrinsic Noise: Phase Detector . . . . . . . . . . . . . . . . . . . . . . . . . 146
5.4.5 PLL Intrinsic Noise: Charge Pump . . . . . . . . . . . . . . . . . . . . . . . . . . 148
5.4.6 PLL Intrinsic Noise: Loop Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
5.4.7 PLL Extrinsic Noise: Reference Clock . . . . . . . . . . . . . . . . . . . . . . . 151
5.4.8 PLL Extrinsic Noise: Supply Noise . . . . . . . . . . . . . . . . . . . . . . . . . 152
5.4.9 PLL Extrinsic Noise: Buffer Delay and Noise . . . . . . . . . . . . . . . . . 152
5.4.10 PLL Phase Noise Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Some Intuition on Reference Clock Phase Noise
(or Jitter) Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
5.4.11 Phase Noise to Period Jitter and Phase Noise to C2C Jitter . . . . . . 156
5.4.12 Phase, Period, and C2C Jitter Examples . . . . . . . . . . . . . . . . . . . . . . 159
Phase Jitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Period Jitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
C2C Jitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
5.5 Reference Clock Jitter Transfer Example: Microprocessor . . . . . . . . . . . . . 161
5.5.1 A Proposed Core Clock Methodology Using Mean Time
Between Failures (MTBF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
5.6 Non-Random Jitter Distributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
5.6.1 Reference Spurs in PLLs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
5.6.2 Duty Cycle Distortion (DCD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
5.6.3 Power Supply Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
5.6.4 Inter-Symbol Interference (ISI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
5.6.5 Including Deterministic Jitter in Analysis . . . . . . . . . . . . . . . . . . . . 172
5.7 Reference Clock Jitter Transfer Example: Serial Link . . . . . . . . . . . . . . . . . 173
5.7.1 Serial Link Budgeting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
5.7.2 Bit Error Rate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
5.7.3 Serial Link Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
5.8 Delay Locked Loops (DLLs) and Jitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
5.9 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
6 Digital Delay Lock Techniques
Thucydides Xanthopoulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
6.2 What Constitutes a Digital Delay Locked Loop? . . . . . . . . . . . . . . . . . . . . . 183
6.3 An Overview of DLL Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
6.4 Phase Detectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
6.4.1 Metastability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
An Example of Phase Detector Failure Calculation . . . . . . . . . . . . 201
6.5 DCDL Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
6.5.1 Gate-Delay DCDLs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
Synchronous vs. Asynchronous Operation in Coarse DCDLs . . . . 207
6.5.2 Subgate-Delay DCDLs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
6.5.3 Resolution vs. Dynamic Range in DCDLs . . . . . . . . . . . . . . . . . . . . 211
6.6 Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
6.6.1 Sensitivity to Initial Phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
6.6.2 Dynamic Range Increase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
6.6.3 Stability and Bandwidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
6.6.4 Lock Acquisition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
6.7 Putting it All Together . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
6.8 Noise Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
6.9 Advanced Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
6.9.1 Duty Cycle Correction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
6.9.2 Clock Multiplication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
6.9.3 Infinite Dynamic Range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
6.9.4 Clock-Data Recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
6.9.5 On-Chip Temperature Sensing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
6.10 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
7 Clocking and Variation
James Tschanz. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
7.2 Variation Reduction Through Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
7.2.1 Skew and Jitter-Tolerant Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
7.2.2 Time Borrowing for Datapath Variation Reduction . . . . . . . . . . . . . 246
7.3 Variation Reduction Through Tuning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
7.3.1 Manufacturing Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
7.3.2 Active Clock Deskew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
7.3.3 Dynamic Frequency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
7.4 Variation Reduction Through Resiliency . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
7.4.1 Timing Error Detection – Error Detection Sequentials . . . . . . . . . . 262
7.4.2 Timing Error Correction and Recovery . . . . . . . . . . . . . . . . . . . . . . 266
7.4.3 Results: Guardband Reduction Through Resiliency . . . . . . . . . . . . 268
7.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
8 Physical Design Considerations
Georgios Konstadinidis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
8.2 Clock Skew Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
8.2.1 Setup Time Skew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
8.2.2 Hold Time Skew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
8.2.3 Half-Cycle Setup Skew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
8.2.4 Multiple-Cycle Setup Skew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
8.2.5 Grid or H-Tree? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
8.3 Transistor Variation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
8.3.1 Channel Length Variation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
Photolithography Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
Poly Flaring and Poly Pullback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
Line Edge Roughness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
Channel Length Variation Control. . . . . . . . . . . . . . . . . . . . . . . . . . . 288
8.3.2 Dopant Fluctuation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
8.3.3 Well Proximity Effect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
8.3.4 Strain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
Stress Memorization and Tensile Stress Liner . . . . . . . . . . . . . . . . . 293
SiGe and Compressive Stress Liner . . . . . . . . . . . . . . . . . . . . . . . . . 293
Shallow Trench Isolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
New Materials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
8.3.5 Long Term Effects on Variation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
NBTI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
Hot Carrier Injection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
8.4 Voltage Variation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
8.5 Temperature Variation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
8.6 Interconnect Variation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
8.7 Conclusion: Clock Design and Analysis Guidelines:
Putting All Together . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
8.7.1 Clock Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
8.7.2 Minimizing Variation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
1