680 likes | 827 Views
Optimizing High-Performance Digital Circuits in Energy Constrained Environment. Vojin G. Oklobdzija ACSEL Laboratory University of California, Davis www.ece.ucdavis.edu/acsel. 4ème journées francophones d'études Faible Tension Faible Consommation Présentation Invité May 15, 2003.
E N D
Optimizing High-Performance Digital Circuits in Energy Constrained Environment Vojin G. Oklobdzija ACSEL Laboratory University of California, Davis www.ece.ucdavis.edu/acsel 4ème journées francophones d'études Faible Tension Faible Consommation Présentation Invité May 15, 2003
Objective • Compare Energy-Delay parameters for several commonly used high-performance adder topologies. • Determine which topology is the best for given Energy-Delay. • Determine which topology can stretch the furthest in terms of speed or power. • Develop an estimation tool which can provide those answers before design is committed. 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Representative 64-b Adders Delay (Static CMOS design) 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Realistic Design Decisions • It is difficult to determine which design can provide most speed if energy is not constrained. • Design can always be made faster by increasing power. However, there is a limit. • Which design is fastest if power is no object ? • Which design is fastest for a given power budget ? • Which design works at the minimal power ? 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Energy-Delay Space Energy The only way to compare ! Emin Dmin Delay 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Design Objective • Design takes time: • comparing designs afterward does not bring much value • There is a disconnect between estimates used on algorithmic level and what is obtained when implementation is finished. • We need a simple tool that can evaluate different design trade-offs (speed/power) before we commit to design. 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Methodology Background • “Back of the Envelope” complexity – Logical Effort method • “Logical Effort” accuracy is not sufficient • We needed to extend and refine the method • However, that becomes more than “Back of the Envelope” • Excel – a platform of choice: • Simple enough • Can provide relatively complex computation quickly • Easy to enter a given design • For accuracy technology characterization is needed: • This needs to be done only once and should be available for every design afterwards 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Delay in a Logic Gate • Delay of a logic gate has two components • d = f + p • Logical effort describes relative ability of gate topology to • deliver current (defined to be 1 for an inverter) • Electrical effort is the ratio of output to input capacitance parasitic delay effort delay, stage effort electrical effort is also called “fanout” f = gh electrical effort = Cout/Cin logical effort *from Mathew Sanu / D. Harris 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Logical Effort Parameters: Inverter Delay g=2.2 (logic effort) d=gh+p p=3.8ps (parasitic delay) Fanout: h =Cin/Cout • d = gh + p • Delay increases linearly with fanout • More complex gates have greater g and p *from Mathew Sanu / D. Harris 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Normalized Logical Effort: Inverter *from Mathew Sanu / D. Harris 6 5 g = p = d = 1 4 inverter 1 Normalized delay: d 3 gh + p = h+1 effort delay 2 1 parasitic delay 1 2 3 4 5 Fanout: h = Cout/Cin • Define delay of unloaded inverter = 1 • Define logical effort ‘g’ of inverter = 1 • Delay of complex gates can be defined w.r.t d=1 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Computing Logical Effort DEF: Logical effort is the ratio of the input capacitance to the input capacitance of an inverter delivering the same output current • Measured from delay vs. fanout plots of simulated gates • Or estimated, counting capacitance in units of transistor W *from Mathew Sanu / D. Harris 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
L.E for Adder Gates *from Mathew Sanu / D. Harris • Logical effort parameters obtained from simulation for std cells • Define logical effort ‘g’ of inverter = 1 • Delay of complex gates can be defined w.r.t d=1 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Normalized L.E • Logical effort & parasitic delay normalized to that of inverter *from Mathew Sanu 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Delay of a string of gates S S • Delay of a path, D = di = gihi + pi • gi & pi are constants • To minimize path delay, optimal values of hi are to be determined D is minimized when each stage bears the same effort, i.e. gihi = g i+1h i+1 *from Mathew Sanu / D. Harris 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
bi B = f = gihi = F1/N Con-path + Coff-path b = Con-path Minimizing path delay *from Mathew Sanu / D. Horowitz gi G = • Logical Effort of a string of gates: • Path Electrical Effort: • Branching Effort • Path Branching Effort: • Path Effort: F=GBH Cout(path) = H = hi Cin(path) Delay is minimized when each stage bears the same effort: NF1/N + P The minimum delay of an N-stage path is: 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Modeling interconnect cap. • Include interconnect cap in branching factor Coff-path Coff-path PG CM0 PG CM0 Adder bitpitch Adder bitpitch Cint CM0 CM0 Con-path Con-path Con-path + Coff-path+Cint Con-path + Coff-path Cint = 2+ b = = 2 b = Con-path Con-path Con-path = 2 + I I : % int. cap to gate cap in 1 adder bitpitch 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Correction on Branching g0 g1 g2 g3 Logical Effort assumes the “branching” factor of this circuit to be 2. This is incorrect and can create significant inaccuracies 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Correction on Branching g0 g1 g2 g3 f0 = f1 , f2 = f3 Td1 = (f0 + f1 + parasitics) Td2 = (f2 + f3 + parasitics) Minimum Delay occurs when Td1 = Td2 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
“Real” Branching Calculation Branching only equals 2 when: This explains why we had to resort to Excel ! 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Technology Characterization 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Characterization Setup • Logical Effort Requirements: • Equalize input and output transitions. (We should also account for the input slope dependence of delay) • Logical Effort is characterized by varying the h (Cout/Cin) of a gate. By using a variable load of inverters each gate can be characterized over the same range of loads. 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Characterization Setup • The Logical Effort of each gate is characterized for each input. • Energy is characterized for each output transition of the gate caused by each input transition. i.e. for an inverter: energy is measured for tLH and tHL 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
tLH • tHL • Average • Energy In Gate Gate Gate Gate .. Variable Load LE Characterization Setup for Static Gates 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
tHL • Energy In Gate Gate Variable Load LE Characterization Setup for Dynamic Gates 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
LE Table (Static CMOS) • Technology: P/N Ratio = 2 INV = 3.67, pINV = 4.29 • Measured on worst-case single-input switching 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Static CMOS Gates: Delay Graphs 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
LE Table (Static CMOS, Pull-up) • Technology: • Measured on worst-case single-input switching • Pull-up path only 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Static Gates: Pull-up Delay Graph 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
LE Table (Dynamic CMOS) • Technology: • Minimum-sized keeper included • Measured on all-input switching of worst path 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
LE Table (Dynamic CMOS) 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Dynamic CMOS: Delay Graphs 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Dynamic CMOS: Delay Graphs 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Energy Calculation 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Energy Calculation 16X Minimal Size Dyn-NAND 8X Minimal Size Dyn-NAND 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Energy Calculation 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Energy CalculationNAND-2 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
NAND-2 Energy Calculation 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Example: 64-Bit Adders • Han-Carlson (prefix-2, HC2): Static and Dynamic • Han-Carlson (prefix-2, HC2-2): Dynamic-Static • Kogge-Stone (prefix-2, KS2): Static and Dynamic • Kogge-Stone (prefix-2, KS2-2): Dynamic-Static • Quaternary-Tree (prefix-2, QT2): Static and Dynamic Included wire delay, tdelay = 0.7RwireCwire Included wire energy, Ew = CwireV2 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Han-Carlson Adder: Circuits 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Han-Carlson Adder: Diagram 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Han-Carlson Adder: Critical Path 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Han-Carlson: Logical Effort Delay 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Koggie-Stone Adder: Circuits 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Koggie-Stone Adder:Diagram 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Koggie-Stone Adder:Critical Path 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Koggie-Stone Adder:Logical Effort Delay Calculation 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Quaternary-Tree Adder: Circuits *from Mathew Sanu, Intel AMR 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Quaternary-Tree Adder:Diagram b63 b61 b59 b57 b6 b4 b2 b0 2b 4b 8b 16b 16b Cin C15 C47 C31 Int. Carry Genr Int. Carry Genr Int. Carry Genr Int. Carry Genr 12b C59 C55 C51 C27 C23 C19 C47 C43 C39 C35 C15 C11 C7 C3 C31 4b 4-bit SumGenr 4-bit SumGenr 4-bit SumGenr 4-bit SumGenr 4-bit SumGenr Sum[63:60] Sum[3:0] Sum[15:12] Sum[31:28] Sum[47:44] *from Mathew Sanu, Intel AMR 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Quaternary-Tree Adder:Logical Effort Delay Calculation 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité
Quaternary-Tree Adder:Logical Effort Delay Calculation 4ème journées francophones d'études: Faible Tension Faible Consommation, Présentation Invité