on the existence of hazard free multi level logic
play

On the Existence of Hazard-Free Multi-Level Logic Steven M. Nowick - PowerPoint PPT Presentation

On the Existence of Hazard-Free Multi-Level Logic Steven M. Nowick Charles W. ODonnell Department of Computer Science Columbia University Preliminaries Combinational Circuit Preliminaries Combinational Circuit multiple-input


  1. On the Existence of Hazard-Free Multi-Level Logic Steven M. Nowick Charles W. O’Donnell Department of Computer Science Columbia University

  2. Preliminaries Combinational Circuit

  3. Preliminaries Combinational Circuit multiple-input transition (1)

  4. Preliminaries hazard = potential for a glitch Combinational (1) Circuit multiple-input output transition transition

  5. Preliminaries hazard-free = no potential for a glitch Combinational (1) Circuit multiple-input output transition transition Goal: design hazard-free combinational circuits

  6. Outline • Background: Background: Hazard-Free 2-Level Logic • • Overview of Multi Overview of Multi- -Level Method Level Method • – Hazard-Free Decomposition – Algorithm + Examples – Standard 3-Level Circuit Structures – Canonicity • Related Work: Related Work: Bredeson Bredeson [ [’ ’74] 74] • • Experimental Results Experimental Results • • Conclusions Conclusions •

  7. Circuit & Environmental Models: #1 CIRCUIT MODEL: unbounded gate & wire delays (no timing assptns.) Combinational Circuit … Environment ENVIRONMENTAL MODEL: Our Focus: “generalized fundamental mode” (env. must wait until circuit stable) … used for “burst-mode” controllers, etc. Goal: synthesize hazard-free circuit under this model

  8. Circuit & Environmental Models: #2 CIRCUIT MODEL: isochronic fork assptn. ( i.e. timing assptn. ) Combinational Circuit … Environment ENVIRONMENTAL MODEL: “input/output mode” Alternative Model: (no timing assptns.) … used for “QDI” controllers, etc.

  9. Combinational Hazards in 2-Level Circuits: Notation A (1) B Combinational Circuit F C (1) D end point start point AB 0 0 0 1 1 1 1 0 CD F: t1 0 0 1 1 1 1 0 1 1 0 0 1 input transition t1: Function F: represented using start point: 0100 Karnaugh Map (= truth table) t2 0 1 1 0 1 1 end point: 1101 1 0 1 1 0 0

  10. Function Hazards • An input transition which is not monotonic in function F itself [Unger69] • Intuition: occurs when user specifies glitchy behavior – circuit implementations cannot be guaranteed glitch-free! AB 0 0 0 1 1 1 1 0 CD F: t4 0 0 1 1 1 1 t4: function hazard-free 0 1 1 0 0 1 0 1 1 0 1 1 t3: function hazard 1 0 1 1 0 0 t3 … only consider function hazard-free input transitions [Unger 69]

  11. Logic Hazards: Conditions for Hazard-Free Transitions • Property of a given circuit implementation • An input transition has a logic hazard if circuit impltn. may glitch Case 1: 0 � 0 Transition AB 0 0 0 1 1 1 1 0 C CD F: D 0 0 1 1 1 1 B D 0 1 1 0 0 1 t5 A C 0 1 1 0 1 1 D logic hazard-free 1 0 1 1 0 0 …every AND-OR circuit is logic hazard-free for 0 � 0 transitions [Unger 69]

  12. Logic Hazards (cont.) Case 2: 1 � 1 Transition Example: input transition t1 AB 0 0 0 1 1 1 1 0 hazard! CD F: C 0 0 t1 1 1 1 1 D A (1) B 0 1 1 0 0 1 B D (0) C (1) A 0 1 1 0 1 1 D C D 1 0 1 1 0 0 hazard-free C AB 0 0 0 1 1 1 1 0 CD F: D 0 0 (1) 1 1 t1 1 1 B D 0 1 1 0 0 1 (0) A C “required 0 1 1 0 1 1 D cube” (1) new gate B C 1 0 1 1 0 0 Transition t1’s “required cube” must be covered

  13. Logic Hazards (cont.) Case 3: 1 � 0 (0 � 1) Transition Example: input transition t2 AB 0 0 0 1 1 1 1 0 hazard! partial transition CD (0) F: C 0 0 1 1 1 1 D A (0) B 0 1 1 0 0 1 B (1) D C t2 (1) A 0 1 1 0 1 1 D C D 1 0 1 1 0 0 hazard-free (0) C AB 0 0 0 1 1 1 1 0 CD F: D 0 0 (1) 1 1 1 1 B D 0 1 1 0 0 1 “required A cubes” C t2 0 1 1 0 1 1 D (1) new gate A 1 0 1 1 0 0 B Transition t2: each max 1 � 1 subtransition = “required cube” which must be covered

  14. Logic Hazards (cont.) Case 3: 1 � 0 (0 � 1) Transition (cont.) Example: input transition t2 AB 0 0 0 1 1 1 1 0 hazard! complete transition CD (0) F: C 0 0 1 1 1 1 D A B 0 1 1 0 0 1 B (1) D illegal C intersection t2 A (1) 0 1 1 0 1 1 C D D 1 0 1 1 0 0 A B (0) hazard-free C AB 0 0 0 1 1 1 1 0 CD F: D 0 0 1 1 1 1 B D no illegal 0 1 1 0 0 1 A intersection (1) modify B t2 gate C 0 1 1 0 1 1 D A 1 0 1 1 0 0 B Transition t2: avoid “illegal intersections” of 1 � 0 (0 � 1) transitions

  15. Hazard-Free Two-Level Logic Minimization Summary: “Hazard-Free Covering Rules” In Karnaugh map for function F …: – each required cube : must be covered by some product – no illegal intersections: with any 1 � 0 (0 � 1) transition Hazard-Free Minimization Algorithm [Nowick/Dill ICCAD92,TCAD95] – produce a minimum-cost hazard-free AND-OR circuit Existence of a Two-Level Solution: not always!

  16. Example #1: Hazard-Free Two-Level Solution AB AB 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 CD CD F: F: 0 0 0 0 0 0 1 1 0 0 1 1 0 1 0 1 1 0 1 1 1 0 1 1 1 1 1 1 1 0 1 1 0 1 1 0 1 0 0 0 0 0 0 0 (b) (a) A B D A F C A B D

  17. Example #2: No Hazard-Free 2-Level Solution Exists AB AB 0 0 0 1 11 1 0 0 0 0 1 11 1 0 CD CD F: F: 0 0 0 0 1 1 1 1 1 1 1 1 0 1 0 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 1 0 1 0 1 1 0 0 1 1 0 0 (a) (b) [Nowick/Dill, ICCAD-92]

  18. Example #2 (cont.) A A C C A A B B B B C C C C D D D D A A B B C C A A C C C C D D D D B B C C A A C C (a) (b) However, several hazard-free multi-level implementations do exist!

  19. Contribution Problem. Given a Boolean function F and specified set of input transitions T: Does any multi-level hazard-free implementation exist? Assumptions. Consider only networks of simple combinational gates: AND, OR, INV, NAND, NOR General Solution: 2 new algorithms, always find a solution if one exists. 1. Basic Recursive Method 2. Iterative Method Key Contribution: show that, if some hazard-free multi-level implementation exists, then there is always a hazard-free 3-level implementation : – 3-Level NAND – OR-AND-OR

  20. Outline • Background: Background: Hazard-Free 2-Level Logic • • Overview of Multi Overview of Multi- -Level Method Level Method • – Hazard-Free Decomposition – Algorithm + Examples – Standard 3-Level Circuit Structures – Canonicity • Related Work: Related Work: Bredeson Bredeson [ [’ ’74] 74] • • Experimental Results Experimental Results • • Conclusions Conclusions •

  21. Basic Overview of Approach: Use Recursive “Hazard-Free Decomposition” f1 f1 f f f f2 f2 f3 f3 f4 f4 f1 f1 f21 f21 f2 f f f2 f2 f2 f22 f22 f3 f3 f3 f3 f4 f4

  22. First Hazard-Free Decomposition: Disjunction General disjunctive decomposition: AB AB 0 0 0 1 11 1 0 0 0 0 1 11 1 0 CD CD F: F : 1 0 0 0 0 1 1 1 1 1 0 1 0 1 1 1 1 1 “Required cubes” are divided among the new subfunctions 1 1 1 1 0 0 1 0 0 0 1 0 1 0 1 0 0 0 1 0 0 0 1 0 (a) (b) AB 0 0 0 1 11 1 0 F : CD 2 0 0 1 1 0 1 1 1 0 0 0 1 0 0 0 0 (c)

  23. First Hazard-Free Decomposition: Disjunction (cont.) Maximal disjunctive decomposition: a special case AB AB 0 0 0 1 11 1 0 0 0 0 1 11 1 0 CD CD F: F : 1 0 0 0 0 1 1 1 1 1 0 1 0 1 Each new subfunction 1 1 1 1 gets exactly one (distinct) 1 1 1 1 0 0 1 0 0 0 0 “required cube” 1 0 1 0 0 0 1 0 0 0 0 (a) (b) AB 0 0 0 1 11 1 0 CD AB F : 0 0 0 1 11 1 0 3 F : CD 2 0 0 1 0 0 1 1 0 1 1 0 1 1 1 0 0 1 0 1 1 0 0 0 1 0 0 0 1 0 1 0 0 0 0 (d) (c)

  24. Second Hazard-Free Decomposition: Inversion Swap OFF-set and required cubes AB AB 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 CD CD F: F: 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 1 1 0 1 1 1 1 1 0 0 1 1 0 1 0

  25. Basic Summary of Approach: alternate disjunction + inversion hazard-free impltns. (single-product) max disjunctive decomposition f1 f1 f f2 f2 f f f3 NO f3 SOLUTION f4 f4 max disjunctive inversion f1 inversion f1 decomposition f21 f21 f f2 f2 f2 f f2 f22 f22 f3 f3 f3 f3 f4 f4 hazard-free impltns. (single-product)

  26. First Complete Example: Finding a Hazard-Free Multi-Level Implementation AB AB 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 CD CD F: F: 0 0 0 0 0 0 1 0 1 0 0 1 0 1 1 1 1 1 1 1 0 0 1 1 1 1 0 0 1 0 0 1 1 0 1 0 1 1 1 1 Given Boolean Function + Specified Transitions

  27. Level-0: Maximal Disjunctive Decomposition AB AB 0 0 0 1 11 1 0 0 0 0 1 11 1 0 F : CD CD F : 1 2 0 0 0 0 0 0 0 0 0 1 0 1 1 0 0 AB 0 0 0 1 1 1 1 0 CD F: 1 1 1 1 0 0 1 0 0 0 0 0 1 0 1 0 1 0 1 1 0 1 1 1 1 0 1 1 0 0 1 AB AB 0 0 0 1 11 1 0 0 0 0 1 11 1 0 CD CD F : F : 3 4 3 0 0 0 0 0 1 0 0 0 1 0 1 1 0 1 0 1 1 1 1 0 0 1 1 1 1 0 0 0 0 1 0 1 0

  28. Level-0: Maximal Disjunctive Decomposition (cont.) F1 F2 F F3 F4

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend