Advanced Digital Design The Synchronous Design Paradigm A. Steininger Vienna University of Technology.

Slides:



Advertisements
Similar presentations
1/1/ / faculty of Electrical Engineering eindhoven university of technology Architectures of Digital Information Systems Part 1: Interrupts and DMA dr.ir.
Advertisements

Introduction to CMOS VLSI Design Sequential Circuits.
ECE C03 Lecture 81 Lecture 8 Memory Elements and Clocking Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
Lecture 11: Sequential Circuit Design. CMOS VLSI DesignCMOS VLSI Design 4th Ed. 11: Sequential Circuits2 Outline  Sequencing  Sequencing Element Design.
Digital Logic Design Lecture # 17 University of Tehran.
Introduction to Sequential Logic Design Bistable elements Latches.
Module 12.  In Module 9, 10, 11, you have been introduced to examples of combinational logic circuits whereby the outputs are entirely dependent on the.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 5 – Sequential Circuits Part 1 – Storage.
Digital Logic Design Lecture 22. Announcements Homework 7 due today Homework 8 on course webpage, due 11/20. Recitation quiz on Monday on material from.
Sequential Circuit Analysis & Design Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum & Minerals Dr. Aiman H. El-Maleh.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics High-level synthesis. Architectures for low power. GALS design.
1 Lecture 28 Timing Analysis. 2 Overview °Circuits do not respond instantaneously to input changes °Predictable delay in transferring inputs to outputs.
Introduction to CMOS VLSI Design Lecture 19: Design for Skew David Harris Harvey Mudd College Spring 2004.
Introduction to CMOS VLSI Design Clock Skew-tolerant circuits.
EE141 © Digital Integrated Circuits 2nd Timing Issues 1 Digital Integrated Circuits A Design Perspective Timing Issues Jan M. Rabaey Anantha Chandrakasan.
Synchronous Digital Design Methodology and Guidelines
CSE477 L19 Timing Issues; Datapaths.1Irwin&Vijay, PSU, 2002 CSE477 VLSI Digital Circuits Fall 2002 Lecture 19: Timing Issues; Introduction to Datapath.
Clock Design Adopted from David Harris of Harvey Mudd College.
RTL Hardware Design by P. Chu Chapter 161 Clock and Synchronization.
ENGIN112 L28: Timing Analysis November 7, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 28 Timing Analysis.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 6 –Selected Design Topics Part 3 – Asynchronous.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
Asynchronous Machines
Advanced Digital Design Asynchronous Design: DI Methods by A. Steininger and M. Delvai Vienna University of Technology.
Logic and Computer Design Fundamentals Registers and Counters
1 Advanced Digital Design Asynchronous Design: Research Concept by A. Steininger and M. Delvai Vienna University of Technology.
Introduction to CMOS VLSI Design Lecture 10: Sequential Circuits Credits: David Harris Harvey Mudd College (Material taken/adapted from Harris’ lecture.
Lecture 11 MOUSETRAP: Ultra-High-Speed Transition-Signaling Asynchronous Pipelines.
CS 151 Digital Systems Design Lecture 28 Timing Analysis.
Digital Integrated Circuits for Communication
Sequential Circuits Chapter 4 S. Dandamudi To be used with S. Dandamudi, “Fundamentals of Computer Organization and Design,” Springer,  S.
CS3350B Computer Architecture Winter 2015 Lecture 5.2: State Circuits: Circuits that Remember Marc Moreno Maza [Adapted.
1 H ardware D escription L anguages Modeling Digital Systems.
Chap 4. Sequential Circuits
Advanced Digital Design Limits of Synchonous Design by A. Steininger and M. Delvai Vienna University of Technology.
© BYU 18 ASYNCH Page 1 ECEn 224 Handling Asynchronous Inputs.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 11 Binary Adder/Subtractor.
Topic: Sequential Circuit Course: Logic Design Slide no. 1 Chapter #6: Sequential Logic Design.
Advanced Digital Design The Need for a Design Style by A. Steininger Vienna University of Technology.
TOPIC : Different levels of Fault model UNIT 2 : Fault Modeling Module 2.1 Modeling Physical fault to logical fault.
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
By Nasir Mahmood.  The NoC solution brings a networking method to on-chip communication.
ECE C03 Lecture 81 Lecture 8 Memory Elements and Clocking Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
Moore’s Law and Its Future Mark Clements. 15/02/2007EADS 2 This Week – Moore’s Law History of Transistors and circuits The Integrated circuit manufacturing.
Advanced Digital Design Asynchronous Design: Principles by A. Steininger and M. Delvai Vienna University of Technology.
Timing Behavior of Gates
Synchronous Sequential Circuits by Dr. Amin Danial Asham.
Review: Sequential Definitions
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU 99-1 Under-Graduate Project Design of Datapath Controllers Speaker: Shao-Wei Feng Adviser:
May 2006Andreas Steininger1 D istributed A lgorithms for R obust T ick S ynchronization.
Advanced Digital Design
Lecture 11: Sequential Circuit Design
Chapter #6: Sequential Logic Design
Advanced Digital Design
Stateless Combinational Logic and State Circuits
Advanced Digital Design
Advanced Digital Design
Timing Analysis 11/21/2018.
触发器 Flip-Flops 刘鹏 浙江大学信息与电子工程学院 March 27, 2018
Day 26: November 1, 2013 Synchronous Circuits
Advanced Digital Design
Advanced Digital Design
CSE 370 – Winter Sequential Logic - 1
Sequential Circuit Analysis & Design
ECE 352 Digital System Fundamentals
ECE 352 Digital System Fundamentals
VLSI Testing Lecture 7: Delay Test
Advanced Digital Design
Synchronous Digital Design Methodology and Guidelines
Synchronous Digital Design Methodology and Guidelines
Presentation transcript:

Advanced Digital Design The Synchronous Design Paradigm A. Steininger Vienna University of Technology

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 2 Outline The Need for a Design Style The Need for a Design Style The „ideal“ Method – Requirements The „ideal“ Method – Requirements The Fundamental Problem The Fundamental Problem Timed Communication Model Timed Communication Model Synchronous Design as a Solution Synchronous Design as a Solution Pros & Cons of Synchronous Design Pros & Cons of Synchronous Design

Lecture "Advanced Digital Design"© A. Steininger / TU Vienna 3 Why a Design Stlye? Skew is inevitable and unpredictable Skew is inevitable and unpredictable It causes inconsistent transient states It causes inconsistent transient states Their logic evaluation causes glitches Their logic evaluation causes glitches Boolean Logic forms a digital abstraction, as- suming continuous signal validity & consistency Boolean Logic forms a digital abstraction, as- suming continuous signal validity & consistency In addition, we need a design style to maintain these abstractions in the presence of skew In addition, we need a design style to maintain these abstractions in the presence of skew recall

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 4 Without a Design Style… …combinational gates may, due to race conditions, receive contradictory inputs „simultaneously“, hence …combinational gates may, due to race conditions, receive contradictory inputs „simultaneously“, hence create glitch or runt pulses that may create glitch or runt pulses that may be converted into erroneous stable states or be converted into erroneous stable states or even cause metastability in storage loops. even cause metastability in storage loops. These glitches, runts and/or manifestations of metastability may propagate, and These glitches, runts and/or manifestations of metastability may propagate, and they may be subject to „Byzantine“ inter- pretation, causing further erroneous states. they may be subject to „Byzantine“ inter- pretation, causing further erroneous states. recall

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 5 The Chip Design Crisis designer productivity gap hard physical limits impede miniaturization excessive test complexity heat problems power delivery problems increasing transient fault rates hard physical limits impede speed-up increasing NRE costs short time-to-market Do we need a new („revolutionary“) design approach?

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 6 A Fair Comparison Severe technological problems force us to question the synchronous design practice. Severe technological problems force us to question the synchronous design practice. Alternatives must be critically evaluated with respect to improvements concerning Alternatives must be critically evaluated with respect to improvements concerning area („embedded“, „intelligent“, cost…) area („embedded“, „intelligent“, cost…) power (mobile devices, heat,…) power (mobile devices, heat,…) performance (as always) performance (as always) designability (efficient design of complex sys.) designability (efficient design of complex sys.) verifiability (test & validation cost!) verifiability (test & validation cost!) robustness (critical apps, higher fault rates,…) robustness (critical apps, higher fault rates,…)

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 7 Performance Performance has been improved by Transistor scaling (technology) Transistor scaling (technology) Architectrural advances (pipelines, caches, prediction,…) Architectrural advances (pipelines, caches, prediction,…) Parallelization (vector operations, multicore,…) Parallelization (vector operations, multicore,…)  The design style has remained unchanged !

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 8 Verification Need to make sure that implemen- tation matches specification: Need to make sure that implemen- tation matches specification: all desired functions available all desired functions available no undesired behavior no undesired behavior 70% of time spent on verification 70% of time spent on verification Model-based approach: Model-based approach: spec transformed into (high-level) model spec transformed into (high-level) model model properties formally verified model properties formally verified model is implemented in HW & SW model is implemented in HW & SW BUT: how check implementation vs. model??

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 9 Test Test complexity rises with more than O(n 2 ) with circuit complecity Test complexity rises with more than O(n 2 ) with circuit complecity It will soon cost more to test a transistor than to manufacture it It will soon cost more to test a transistor than to manufacture it log € cost/trans test costs -29%/a  const [ITRS] t

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 10 Transient Faults …occur 10…100 times more often than permanent faults today …occur 10…100 times more often than permanent faults today …originate from storage elements being upset (directly or indirectly) …originate from storage elements being upset (directly or indirectly) …can only be caused by disturbances with an energy larger than that stored in the affected cell …can only be caused by disturbances with an energy larger than that stored in the affected cell … are often caused by particle hits (single event upsets: SEUs) … are often caused by particle hits (single event upsets: SEUs)

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 11 Fault Rate Predictions energy stored in a storage element scales with energy stored in a storage element scales with feature size feature size power supply power supply energy distribution of particles is non-linear energy distribution of particles is non-linear significantly more particles towards lower energy significantly more particles towards lower energy fault potential largely increases with every technology node

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 12 Fault Mitigation stopping miniaturization stopping miniaturization is not an option is not an option technology (materials, shielding,…) technology (materials, shielding,…) reduces fault rate per transistor reduces fault rate per transistor but still overall increase per chip but still overall increase per chip robust circuit design robust circuit design Several techniques applied, but Several techniques applied, but Design style not changed Design style not changed system-level fault tolerance system-level fault tolerance current solution, expensive (typ. 3x) current solution, expensive (typ. 3x)

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 13 A First Summary An ideal design method … minimizes power consumption minimizes power consumption miminizes area overhead miminizes area overhead naturally supports intuitive design naturally supports intuitive design naturally aids testability naturally aids testability yields robust circuits yields robust circuits yields fast circuits. yields fast circuits.

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 14 Terminology consistent DW: all bits belong to the same context valid signal: result of function applied to consistent DW

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 15 What we actually need SRCSNK f(x) When it is valid and consistent When SNK has consumed the previous one When can SNK use its input? When can SRC apply the next input? completion detection problem input/output mode operation, requires indication principle

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 16 Timed Comm. Model for details see: M. Delvai, A. Steininger. Solving the fundamental Problem of Digital Design – A Systematic Review of Design Methods, 9th Euromicro Conference on System Design, Dubrovnik „contamination delay“

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 17 The Capture Condition Control TRGSNK: Have SNK capture data only after it has become consistent. Formal Condition: t cons,x > t snkrdy,x  snk > -  snktrg

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 18 The Issue Condition Control TRGSRC: Have SRC issue the next data word such that the current one can still be safely consumed by SNK. Formal Condition: t invalid,x > t safe,x  src > -  invalid

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 19 Our Options We must only use consistent input vectors We must only use consistent input vectors How can we tell an input vector is consistent? How can we tell an input vector is consistent? (1) use TIME to mark consistent phases synchronous approach / global time base synchronous approach / global time base asynchronous/bounded delay asynchronous/bounded delay (2) use CODING to add information asynchronous/delay insensitive asynchronous/delay insensitive

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 20 Control by Global Time

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 21 The Synchronous Concept f(x) FF1FF2 T Clk periodic Pure time domain solution: use periodic clock edges to derive triggers for SRC & SNK; determine period such that capture condition and issue condition are always fulfilled.

Synchr. Timing Model How does the synchronous design fit into the timing model of global time? How does the synchronous design fit into the timing model of global time? What is  ? What is  ? What is  ? What is  ? Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 22

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 23 The Implications Clock Period T Clk = Period  Clock Period T Clk = Period  determined by static timing analysis determined by static timing analysis Free choice of  snk :  capture condition Free choice of  snk :  capture condition Phase  =  (!) Phase  =  (!) this implies that this implies that  src = -( snktrg +  cons ) still we must guarantee still we must guarantee  src > - invalid (issue condition) Therefore it must hold that Therefore it must hold that  invalid >  snktrg +  cons This is not formally safe – but it works! (No freedom to choose!)

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 24 Benefits of Sync. Logic Simplicity improves productivity Simplicity improves productivity time is considered discrete (!) time is considered discrete (!) design on high level of abstraction design on high level of abstraction transients are irrelevant, all considered states are clearly defined transients are irrelevant, all considered states are clearly defined timing analysis separate, after design timing analysis separate, after design clear distinction between data & clock clear distinction between data & clock

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 25 Benefits of Sync. Logic (2) High implementation efficiency: High implementation efficiency: one single control signal for the complete system! one single control signal for the complete system! periodic clock is easy to generate periodic clock is easy to generate single-rail data coding single-rail data coding minimum number of transitions on the data rails minimum number of transitions on the data rails clock also provides a time base clock also provides a time base

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 26 Resume 1 Synchronous design does work Synchronous design does work billions of working designs billions of working designs Synchronous design is VERY efficient Synchronous design is VERY efficient wrt. design (intuition) wrt. design (intuition) wrt. implementation (area) wrt. implementation (area) So everything is solved So everything is solved Is it? Is it?

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 27 The Original Problem SRCSNK f(x) When it is valid and consistent When SNK has consumed the previous one When can SNK use its input? When can SRC apply the next input? recall

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 28 What have we done? We have expressed a simple information related condition by means of complicated timing related parameters that we don‘t even know! DOES IT MATTER ? recall

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 29 That damned traffic light YES! It does matter

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 30 That damned … Traffic light Traffic light number of waiting cars number of waiting cars Microwave oven Microwave oven temperature of the food temperature of the food Wiper Wiper visibility through the front shield visibility through the front shield Stairway light Stairway light presence of a person in the stairway presence of a person in the stairway

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 31 What‘s wrong? As time is easy to measure, a projection is often made for the relative time between the occurrence of an event in the past and one expected in the future – instead of directly observing the latter. As time is easy to measure, a projection is often made for the relative time between the occurrence of an event in the past and one expected in the future – instead of directly observing the latter. This requires a model to be established, expressing how the quantity of interest relates to time. This requires a model to be established, expressing how the quantity of interest relates to time. This becomes annoying when this artificial relation between actual event and time is so weak that either the model prediction gets too fuzzy, or the model too complicated. This becomes annoying when this artificial relation between actual event and time is so weak that either the model prediction gets too fuzzy, or the model too complicated.

Pre-Determined Timing Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 32 Designer system model projected conditions User actual conditions actual system worst case safety margins ?(unknown) ?(imperfections) Timing completely fixed after design No way to react to actual conditions & system

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 33 The Synchronous Approach f(x) FF1FF2 T Clk „After some TIME T clk FF2 can use f(x)‘s output and at the same time FF1 can apply a new input“ Relating flow control to time in this way is convenient and effective, but in fact the implied relation does not (naturally) exist! We need to establish this relation artificially during design (timing optimization & constraints) and preserve it during operation (temp, VCC) => „contract“ between designer, fab and user

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 34 The annoying consequences need to determine clock period need to determine clock period circuit functionality is technology dependent circuit functionality is technology dependent substantial design efforts, large design loops substantial design efforts, large design loops need to make worst-case assumptions need to make worst-case assumptions necessarily pessimistic (corner cases) necessarily pessimistic (corner cases) still no robustness wrt. exceeding them still no robustness wrt. exceeding them need to maintain global synchrony need to maintain global synchrony clock distribution problems (skew!) clock distribution problems (skew!) power consumption problems power consumption problems

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 35 Timing Analysis not possible before the end of the design flow (large iteration loops!) not possible before the end of the design flow (large iteration loops!) Design-Entry Synth. & Technol.-Mapping Partitioning & Placement Routing Manufact. Specification Operation gate delays interconnect delays P-variations VT-variations

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 36 normally too pessimistic normally too pessimistic real, chip could run faster no tolerance when exceeded no tolerance when exceeded graceful degradation desirable    lim Worst-Case Assumptions

The Clock Skew Problem What happens if we move SRC time against SNK time? What happens if we move SRC time against SNK time? Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 37

Sync. Design – Properties Area: + single rail encoding, single clock line - clock network Area: + single rail encoding, single clock line - clock network Power: + small, efficient circuit - clock net, permanent concurrent switching Power: + small, efficient circuit - clock net, permanent concurrent switching Performance: + pure feed-forward flow control - worst case design, safety margins Performance: + pure feed-forward flow control - worst case design, safety margins Designability: + good abstraction level for logic - timing analysis complex, composability? Designability: + good abstraction level for logic - timing analysis complex, composability? Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 38

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 39 Robustness  metastability Issues  clock = single point of failure  non-redundant signal coding  no graceful degradation timing margins help masking faults timing margins help masking faults  but they are shrinking!  synchrony is a very strong assumption  it takes a lot of efforts to maintain it  „assumption coverage“ is lower

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 40 Experimental Results Fault Injection Results for SPEAR [Thesis Rahbaran] PhD Huber: Design Flow & Validation asyn SPEAR PhD Delvai: Design asynchronous processor SPEAR PhD Rahbaran: Robustness Comparison syn/asyn

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 41 Fault Masking Effects electrical masking electrical masking too short fault pulse is filtered out by (parasitic) low-passes too short fault pulse is filtered out by (parasitic) low-passes logical masking logical masking faults on masked gate inputs are irrelevant faults on masked gate inputs are irrelevant temporal masking temporal masking signal values are considered only shortly before/during latching window; faults go unrecognized when outside signal values are considered only shortly before/during latching window; faults go unrecognized when outside 0 0 Diploma thesis: Fault masking syn vs. asyn

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 42 Scan test turns sequential problem into combinational one => hard to beat! Testability

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 43 Conclusion An analysis of the data transfer process allows mapping the trigger conditions for data source and sink to the time domain, yielding an „issue condition“ and a „capture condition“. An analysis of the data transfer process allows mapping the trigger conditions for data source and sink to the time domain, yielding an „issue condition“ and a „capture condition“. A convenient mapping to a purely time based solution is used by some design styles, in particular the synchronous design. A convenient mapping to a purely time based solution is used by some design styles, in particular the synchronous design. This mapping is, however, not natural. This mapping is, however, not natural. As an alternative signal coding may be used to control the triggers of source and sink. As an alternative signal coding may be used to control the triggers of source and sink.

Lecture "Advanced Digital Design"© A. Steininger & M. Delvai / TU Vienna 44 Conclusion Synchronous design is extremely efficient wrt. design and testing. Synchronous design is extremely efficient wrt. design and testing. It builds on a relation between handshake events and time that becomes increasingly cumbersome. It builds on a relation between handshake events and time that becomes increasingly cumbersome. Weak points are inherent robustness and composability Weak points are inherent robustness and composability Power efficiency, area efficiency and performance efficiency are very good in principle, but limitations in clock distributions tend to foil these benefits. Power efficiency, area efficiency and performance efficiency are very good in principle, but limitations in clock distributions tend to foil these benefits.