Penn ESE680-002 Spring2007 -- DeHon 1 ESE680-002 (ESE534): Computer Organization Day 13: February 26, 2007 Interconnect 1: Requirements.

Slides:



Advertisements
Similar presentations
CALTECH CS137 Fall DeHon 1 CS137: Electronic Design Automation Day 19: November 21, 2005 Scheduling Introduction.
Advertisements

Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 14: March 19, 2014 Compute 2: Cascades, ALUs, PLAs.
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day6: October 11, 2000 Instruction Taxonomy VLSI Scaling.
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day17: November 20, 2000 Time Multiplexing.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 11: March 4, 2008 Placement (Intro, Constructive)
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 17: April 2, 2008 Scheduling Introduction.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 21: April 2, 2007 Time Multiplexing.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 15: March 12, 2007 Interconnect 3: Richness.
CS294-6 Reconfigurable Computing Day 8 September 17, 1998 Interconnect Requirements.
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day10: October 25, 2000 Computing Elements 2: Cascades, ALUs,
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day8: October 18, 2000 Computing Elements 1: LUTs.
DeHon March 2001 Rent’s Rule Based Switching Requirements Prof. André DeHon California Institute of Technology.
Penn ESE Fall DeHon 1 ESE (ESE534): Computer Organization Day 19: March 26, 2007 Retime 1: Transformations.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 26: April 18, 2007 Et Cetera…
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 11: February 14, 2007 Compute 1: LUTs.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 19: April 9, 2008 Routing 1.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 4: January 22, 2007 Memories.
JR.S00 1 Lecture 13: (Re)configurable Computing Prof. Jan Rabaey Computer Science 252, Spring 2000 The major contributions of Andre Dehon to this slide.
EDA (CS286.5b) Day 7 Placement (Simulated Annealing) Assignment #1 due Friday.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 18: March 21, 2007 Interconnect 6: MoT.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 16: March 14, 2007 Interconnect 4: Switching.
Penn ESE Spring DeHon 1 FUTURE Timing seemed good However, only student to give feedback marked confusing (2 of 5 on clarity) and too fast.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 14: February 28, 2007 Interconnect 2: Wiring Requirements and Implications.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 5: January 24, 2007 ALUs, Virtualization…
CprE / ComS 583 Reconfigurable Computing Prof. Joseph Zambreno Department of Electrical and Computer Engineering Iowa State University Lecture #3 – FPGA.
CSET 4650 Field Programmable Logic Devices
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 13: February 4, 2005 Interconnect 1: Requirements.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 15: February 12, 2003 Interconnect 5: Meshes.
ESE Spring DeHon 1 ESE534: Computer Organization Day 19: April 7, 2014 Interconnect 5: Meshes.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 9: February 24, 2014 Operator Sharing, Virtualization, Programmable Architectures.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 2: January 21, 2015 Heterogeneous Multicontext Computing Array Work Preclass.
CBSSS 2002: DeHon Costs André DeHon Wednesday, June 19, 2002.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 7: February 6, 2012 Memories.
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day11: October 30, 2000 Interconnect Requirements.
Penn ESE370 Fall DeHon 1 ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems Day 7: September 22, 2010 Delay and RC Response.
Penn ESE370 Fall DeHon 1 ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems Day 30: November 19, 2010 Crosstalk.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 14: February 10, 2003 Interconnect 4: Switching.
CALTECH CS137 Winter DeHon CS137: Electronic Design Automation Day 13: February 20, 2002 Routing 1.
CBSSS 2002: DeHon Interconnect André DeHon Thursday, June 20, 2002.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 16: February 14, 2003 Interconnect 6: MoT.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 18: April 2, 2014 Interconnect 4: Switching.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 16: February 14, 2005 Interconnect 4: Switching.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 5: February 1, 2010 Memories.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 13: February 6, 2003 Interconnect 3: Richness.
Penn ESE534 Spring DeHon 1 ESE534 Computer Organization Day 9: February 13, 2012 Interconnect Introduction.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 11: January 31, 2005 Compute 1: LUTs.
ESE Spring DeHon 1 ESE534: Computer Organization Day 18: March 26, 2012 Interconnect 5: Meshes (and MoT)
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day14: November 10, 2000 Switching.
ESE Spring DeHon 1 ESE534: Computer Organization Day 20: April 9, 2014 Interconnect 6: Direct Drive, MoT.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 12: February 5, 2003 Interconnect 2: Wiring Requirements.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 8: February 19, 2014 Memories.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 17: March 29, 2010 Interconnect 2: Wiring Requirements and Implications.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 22: April 16, 2014 Time Multiplexing.
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day12: November 1, 2000 Interconnect Requirements and Richness.
ESE534: Computer Organization
ESE532: System-on-a-Chip Architecture
ESE532: System-on-a-Chip Architecture
ESE534: Computer Organization
ESE534 Computer Organization
ESE532: System-on-a-Chip Architecture
CS184a: Computer Architecture (Structure and Organization)
ESE534: Computer Organization
ESE534: Computer Organization
ESE534: Computer Organization
ESE534: Computer Organization
ESE534: Computer Organization
CprE / ComS 583 Reconfigurable Computing
ESE534: Computer Organization
CS184a: Computer Architecture (Structure and Organization)
ESE532: System-on-a-Chip Architecture
Presentation transcript:

Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 13: February 26, 2007 Interconnect 1: Requirements

Penn ESE Spring DeHon 2 Last Time Saw various compute blocks To exploit structure in typical designs we need programmable interconnect All reasonable, scalable structures: –small to moderate sized logic blocks –connected via programmable interconnect said delay across programmable interconnect is a big factor

Penn ESE Spring DeHon 3 Today Interconnect Design Space Dominance of Interconnect Interconnect Delay Simple things –and why they don’t work

Penn ESE Spring DeHon 4 Dominant Area

Penn ESE Spring DeHon 5 Dominant Time

Penn ESE Spring DeHon 6 Dominant Time

Penn ESE Spring DeHon 7 Dominant Power [Energy] XC4003A data from Eric Kusse (UCB MS 1997)

Penn ESE Spring DeHon 8 For Spatial Architectures Interconnect dominant –area –energy, power –time …so need to understand in order to optimize architectures

Penn ESE Spring DeHon 9 Interconnect Problem –Thousands (100,000s) of independent (bit) operators producing results true of FPGAs today …true for *LIW, multi-uP, etc. in future –Each taking as inputs the results of other (bit) processing elements –Interconnect is late bound don’t know until after fabrication

Penn ESE Spring DeHon 10 Design Issues Flexibility -- route “anything” –(w/in reason?) Area -- wires, switches Delay -- switches in path, stubs, wire length Energy -- switch, wire capacitance Routability -- computational difficulty finding routes

Penn ESE Spring DeHon 11 Delay

Penn ESE Spring DeHon 12 Wiring Delay Delay on wire of length L seg : T seg = T gate RC C = L seg  C sq R = L seg  R sq T seg = T gate C sq  R sq  L seg 2

Penn ESE Spring DeHon 13 Wire Numbers R sq = 0.17  /sq. –from ITRS:Interconnect  =2.2  m-cm (Cu) Conductor effective resistance A/R (aspect ratio) ~ 1.8 [Table 80a, ITRS2005] C sq = 7  F/sq. R sq  C sq  s T gate = 30 ps, 5 ps ? – [ITRS2005 Table 40a,  =0.4ps x 13.5  5.4ps] Chip: 7mm side, 70nm sq. (45nm process) –10 5 squares across chip

Penn ESE Spring DeHon 14 Wiring Delay Wire Delay T seg = T gate C sq  R sq  L seg 2 T seg = 30ps s  T seg = 30ps + 4ns  4ns ….even if 5ps

Penn ESE Spring DeHon 15 Buffer Wire Buffer every L seg T cross = (L cross /L seg ) T seg T cross = (L cross /L seg ) ( T gate C sq  R sq  L seg 2 ) = (L cross ) ( T gate /L seg C sq  R sq  L seg )

Penn ESE Spring DeHon 16 Opt. Buffer Wire T cross = (L cross ) ( T gate /L seg C sq  R sq  L seg ) Minimize:  0 = (L cross ) (- T gate /L seg C sq  R sq )  T gate = 0.4 C sq  R sq L seg 2

Penn ESE Spring DeHon 17 Optimization Point Optimized: T cross = (L cross /L seg ) ( T gate C sq  R sq  L seg 2 ) T gate = 0.4 C sq  R sq L seg 2  Says: equalize gate and wire delay

Penn ESE Spring DeHon 18 Optimal Segment Length T gate = 0.4 C sq  R sq L seg 2 L seg =  ( T gate / 0.4 C sq  R sq ) L seg =  (30× s/0.4× s) –Or L seg =  (5 × s/0.4× s) L seg   (10 8 )  10 4 sq. –Or L seg   (10 7 )  3.5×10 3 sq.

Penn ESE Spring DeHon 19 Buffered Delay Chip: 7mm side, 70nm sq. (45nm process) –10 5 squares across chip L seg  10 4 sq. (3.5×10 3 sq.) 10 segments: –Each of delay 2 T gate –T cross = 20  30ps = 600ps Compare: 4ns –T cross = 2  30  5ps = 300ps

Penn ESE Spring DeHon 20 Implications 10 segments: –Each of delay 2 T gate –T cross = 20  30ps = 600ps Compare: 4ns –T cross = 2  30  5ps = 300ps Chip crossing large compared to gate delay –20× … 60× –Worse as gates get faster

Penn ESE Spring DeHon 21 First Attempts

Penn ESE Spring DeHon 22 (1) Shared Bus Familiar case Use single interconnect resource Reuse in Time Consequence?

Penn ESE Spring DeHon 23 Shared Bus Consider operation: y=Ax 2 +Bx +C –3 mpys –2 adds –~5 values need to be routed from producer to consumer Performance lower bound if have design w/: –m multipliers –u madd units –a adders –i simultaneous interconnection busses

Penn ESE Spring DeHon 24 Resource Bounded Scheduling Scheduling in general NP-hard –(find optimum) –can approximate in O(E) time

Penn ESE Spring DeHon 25 Lower Bound: Critical Path ASAP schedule ignoring resource constraints –(look at length of remaining critical path) Certainly cannot finish any faster than that

Penn ESE Spring DeHon 26 Lower Bound: Resource Capacity Sum up all capacity required per resource Divide by total resource (for type) Lower bound on remaining schedule time –(best can do is pack all use densely)

Penn ESE Spring DeHon 27 Example Critical Path Resource Bound (2 resources) Resource Bound (4 resources)

Penn ESE Spring DeHon 28 Example 2 RB = 8/2=4 LB = 5 best delay= 6

Penn ESE Spring DeHon 29 Shared Bus Consider operation: y=Ax 2 +Bx +C –3 mpys –2 adds –~5 values need to be routed from producer to consumer Performance lower bound if have design w/: –m multipliers –u madd units –a adders –i simultaneous interconnection busses

Penn ESE Spring DeHon 30 Viewpoint Interconnect is a resource Bottleneck for design can be in availability of any resource Lower Bound on Delay: Logical Resource / Physical Resources May be worse –Dependencies (critical path bound) –ability to use resource

Penn ESE Spring DeHon 31 Shared Bus Flexibility (+) –routes everything (given enough time) –can be trick to schedule use optimally Delay (Power) (--) –wire length O(kn) –parasitic stubs: kn+n –series switch: 1 –O(kn) –sequentialize I/B Area (++) –kn switches –O(n)

Penn ESE Spring DeHon 32 Term: Bisection Bandwidth Partition design into two equal size halves Minimize wires (nets) with ends in both halves Number of wires crossing is bisection bandwidth

Penn ESE Spring DeHon 33 (2) Crossbar Avoid bottleneck Every output gets its own interconnect channel

Penn ESE Spring DeHon 34 Crossbar

Penn ESE Spring DeHon 35 Crossbar

Penn ESE Spring DeHon 36 Crossbar Flexibility (++) –routes everything (guaranteed) Delay (Power) (-) –wire length O(kn) –parasitic stubs: kn+n –series switch: 1 –O(kn) Area (-) –Bisection bandwidth n –kn 2 switches –O(n 2 )

Penn ESE Spring DeHon 37 Crossbar Better than exponential Too expensive –Switch Area = k*n 2 *2.5K 2 –Switch Area/LUT = k*n* 2.5K 2 –n=1024, k=4  10M 2 What can we do?

Penn ESE Spring DeHon 38 Avoiding Crossbar Costs Typical architecture trick: –exploit expected problem structure What structure/freedom do we have? We have freedom in operator placement Designs have spatial locality  place connected components “close” together –don’t need full interconnect?

Penn ESE Spring DeHon 39 Exploit Locality Wires expensive Local interconnect cheap 1D versions What does this do to –Switches? –Delay? (quantify on hmwrk)

Penn ESE Spring DeHon 40 Exploit Locality Wires expensive Local interconnect cheap Use 2D to make more things closer Mesh?

Penn ESE Spring DeHon 41 Mesh Analysis Can we place everything close?

Penn ESE Spring DeHon 42 Mesh “Closeness” Try placing “everything” close

Penn ESE Spring DeHon 43 Mesh Analysis Flexibility - ? –Ok w/ large w Delay (Power) –Series switches 1--  n –Wire length w--w  n –Stubs O(w)--O(w  n) Area –Bisection BW -- w  n –Switches -- O(nw) –O(w 2 n) –larger on homework

Penn ESE Spring DeHon 44 Mesh Plausible …but What’s w …and how does it grow?

Penn ESE Spring DeHon 45 Returning to Delay

Penn ESE Spring DeHon 46 Buffered Delay Chip: 7mm side, 70nm sq. (45nm process) –10 5 squares across chip L seg  10 4 sq. 10 segments: –Each of delay 2 T gate –T cross = 20  30ps = 600ps (300ps) – Compare: 4ns

Penn ESE Spring DeHon 47 …But These aren’t just wires What else? May go through switches Have switch loads

Penn ESE Spring DeHon 48 Unbuffered Switch R~600  (width ~20) –About 3600 squares? [0.17  /sq. ] C~5  F –About 100 squares? Not lumped ~2x worse Together contribute roughly 800 squares –  (2RC/(R sq C sq )) –Vs or 3×10 3 sq. / rebuffer R switch C switch

Penn ESE Spring DeHon 49 Buffered Switch Pay T gate at each switch Slows down relative to –Optimally buffered wire –Unbuffered switch …when placed too often

Penn ESE Spring DeHon 50 Stub Capacitance Every untaken switch touching line C~2.5  F –About 50 squares …and lumped so 2  C switch

Penn ESE Spring DeHon 51 Delay through Switching 0.6  m CMOS How far in GHz clock cycle?

Penn ESE Spring DeHon 52 Admin Assignment 4 due today Assignment 5 out today –Due after Spring Break March 14 (Wed. after return) Reading for Wednesday –Rent’s Rule paper (on web)

Penn ESE Spring DeHon 53 Big Ideas [MSB Ideas] Interconnect Dominant –power, delay, area Can be bottleneck for designs Can’t afford full crossbar Need to exploit locality Can’t have everything close