Presentation is loading. Please wait.

Presentation is loading. Please wait.

12004 MAPLD: 153Brej Early output logic and Anti-Tokens Charlie Brej APT Group Manchester University.

Similar presentations


Presentation on theme: "12004 MAPLD: 153Brej Early output logic and Anti-Tokens Charlie Brej APT Group Manchester University."— Presentation transcript:

1 12004 MAPLD: 153Brej Early output logic and Anti-Tokens Charlie Brej APT Group Manchester University

2 22004 MAPLD: 153Brej Overview  Synchronous Problems  Asynchronous Logic  Why?  How?  Solutions  Early Output  Anti-Tokens

3 32004 MAPLD: 153Brej Problems: Communication  Communication horizon  “For a 60 nanometer process a signal can reach only 5% of the die’s length in a clock cycle” [D. Matzke,1997]  Clock distributed using wave pipelining

4 42004 MAPLD: 153Brej Problems: Performance Cycle time Unbalanced Stages Clock Skew/Jitter Transistor Variability Signal Integrity Worst – Average case performance Real Computation Clock overheads Timing Assumption overheads

5 52004 MAPLD: 153Brej Clock! What is it good for?  No arguing with the clock  9am - 5pm. No excuses!

6 62004 MAPLD: 153Brej Bundled-Data  When you finish, do the next task  Flexitime Request + Delay Acknowledge

7 72004 MAPLD: 153Brej How do you know when you are finished?  Synchronous:  Estimate  Global timing reference  Asynchronous (bundled-data)  Estimate  Local delay elements  Asynchronous (delay-insensitive)  When the data arrives  Intrinsic

8 82004 MAPLD: 153Brej Becoming Delay Insensitive  Dual-Rail  Two wires  00 – NULL  01 – Zero  10 – One  (11 – Not used)  Four Phase handshake  Return to zero R1 Ack R0

9 92004 MAPLD: 153Brej Early Output Logic  Dual-Rail interfaces  Output generated as early as possible  Two Early output cases  If either input is ‘0’ then the output is ‘0’

10 102004 MAPLD: 153Brej Bit level pipelining  Forward completed parts of the result  Pace work  Don’t stall parts unless you have to

11 112004 MAPLD: 153Brej Bit level pipelining  Forward completed parts of the result  Pace work  Don’t stall parts unless you have to

12 122004 MAPLD: 153Brej Bit level pipelining  Forward completed parts of the result  Pace work  Don’t stall parts unless you have to

13 132004 MAPLD: 153Brej Early Output cases

14 142004 MAPLD: 153Brej Validity  Unnecessary late inputs  Must be acknowledged  Must wait until they arrive  Validity signal  Latch generated  Ready to be acknowledged  Result before all inputs present  Acknowledge after all inputs present

15 152004 MAPLD: 153Brej Synchronisation Hurts  No need to wait before generating result  Need to wait for input in order to acknowledge it  Unnecessary stall

16 162004 MAPLD: 153Brej Anti-Tokens  Unnecessary late inputs  Stall the entire stage  Proactive approach  Send a ‘cancel’ signal backward to the source  Acknowledge before data arrives  Anti-Token latches  Assert validity early

17 172004 MAPLD: 153Brej Anti-token generation 0 1 C

18 182004 MAPLD: 153Brej Anti-token generation 0 A 1 C

19 192004 MAPLD: 153Brej Anti-token Propagation 1 C A

20 202004 MAPLD: 153Brej Anti-token Propagation 1 C A A

21 212004 MAPLD: 153Brej Anti-token Token collisions 11 AA 11 AA ? A ? 1

22 222004 MAPLD: 153Brej Anti-token Token collisions 11 A 11 AA 1 A1 1 1

23 232004 MAPLD: 153Brej Remove Unnecessary computation Cycle time Unbalanced Stages Clock Skew/Jitter Transistor Variability Signal Integrity Worst – Average case performance Real Computation Clock overheads Timing Assumption overheads Unnecessary Computation/Delays

24 242004 MAPLD: 153Brej Summary  Asynchronous  Delay Insensitive  Safe  No timing assumptions  Average case performance  Remove unnecessary computation  Anti-tokens without mutual exclusion units


Download ppt "12004 MAPLD: 153Brej Early output logic and Anti-Tokens Charlie Brej APT Group Manchester University."

Similar presentations


Ads by Google