Download presentation
Presentation is loading. Please wait.
1
1 Exact Two-Level Minimization of Hazard-Free Logic with Multiple Input Changes Montek Singh Tue, Oct 16, 2007
2
2Definitions Let P={0,1} and B={0,1,*}. Boolean function: f: P n B minterm: an element in the domain P n of function ON-set: set of minterms for which f=1 ON-set: set of minterms for which f=1 OFF-set: set of minterms for which f=0 OFF-set: set of minterms for which f=0 DC (don’t-care)-set: set of minterms for which f=* DC (don’t-care)-set: set of minterms for which f=* literal: each variable, x i, has three corresponding literals: x i, x i and x i *. literal x i =1 iff variable x i = 1 literal x i =1 iff variable x i = 1 literal x i =1 iff variable x i = 0 literal x i =1 iff variable x i = 0 literal x i * =1 iff variable x i = * literal x i * =1 iff variable x i = * product: Boolean product (AND) of literals cube: set of minterms representable by a product sum-of-products: Boolean sum (OR) of products it contains a minterm if some product contains the minterm it contains a minterm if some product contains the minterm
3
3 Definitions (contd.) product Y contains product X (X Y) if the cube for X is a subset of the cube for Y intersection of products X and Y is the set of minterms contained in the intersection of the corresponding cubes intersection of products X and Y is the set of minterms contained in the intersection of the corresponding cubes an implicant of a function: product term that contains no OFF-set minterm prime implicant (PI): implicant contained in no other implicant prime implicant (PI): implicant contained in no other implicant essential prime implicant: PI containing an ON-set minterm contained in no other PI essential prime implicant: PI containing an ON-set minterm contained in no other PI cover of f : a sum-of-products which contains: all of the ON-set minterms all of the ON-set minterms none of the OFF-set minterms none of the OFF-set minterms may include some DC-set minterms may include some DC-set minterms cost function for a cover: each implicant has the same cost cost function for a cover: each implicant has the same cost sometimes literal-count can be used as a secondary cost 2-level logic minimization problem: find a minimum-cost cover of a function
4
4Background: Circuit and Delay Model arbitrary fine gate and wire delays arbitrary fine gate and wire delays each wire = connection + attached delay element each wire = connection + attached delay element each gate = instantaneous Boolean operator + delay element attached to its output wire each gate = instantaneous Boolean operator + delay element attached to its output wire “unbounded wire delay model” (all delays attached to wires) Delays are “pure” delays propagation of waveform, but does not alter it delays propagation of waveform, but does not alter it conservative: does not filter out glitches conservative: does not filter out glitches Delay Assignment assign fixed, finite delay values to every gate and wire assign fixed, finite delay values to every gate and wire
5
5 Background: Multiple-Input Changes transition cube: cube with start point and end point transition cube [A,B], has start point A and end point B transition cube [A,B], has start point A and end point B contains all minterms that can be reached during transition from A to B contains all minterms that can be reached during transition from A to B i -th literal for the product of [A,B] is A i +B i i -th literal for the product of [A,B] is A i +B i x + x = x* open transition cube [A,B): [A,B] – B multiple-input change or input transition: [A,B] inputs change concurrently, in any order and at any time inputs change concurrently, in any order and at any time inputs change monotonically inputs change monotonically fundamental mode: once inputs change, no further input changes may occur until the circuit has stabilized fundamental mode: once inputs change, no further input changes may occur until the circuit has stabilized transition interval: t I ≤ t ≤ t F transition is… static: if f(A) = f(B) static: if f(A) = f(B) dynamic: if f(A) ≠ f(B) dynamic: if f(A) ≠ f(B)
6
6Hazards communication must be hazard-free! communication must be hazard-free! special design challenge = “hazard-free synthesis” special design challenge = “hazard-free synthesis” Hazards: potential “glitches” on wire clean signals hazardous signals clock tick no problem for clocked systems
7
7 Function Hazards A function f has a function hazard iff there exists an input transition for which f does not change monotonically there exists an input transition for which f does not change monotonically f contains a static function hazard for input transition from A to C iff: f(A) = f(C), and f(A) = f(C), and there exists some input state B [A,C] such that f(A) ≠ f(B). there exists some input state B [A,C] such that f(A) ≠ f(B). f contains a dynamic function hazard for input transition from A to D iff: f(A) ≠ f(D) f(A) ≠ f(D) there exists a pair of input states B and C (A ≠ B, C ≠ D) such that there exists a pair of input states B and C (A ≠ B, C ≠ D) such that B [A,D] and C [B,D], and f(B) = f(D) and f(A) = f(C) if a transition has a function hazard, no implementation of the function is guaranteed to avoid glitches during transition, assuming arbitrary gate and wire delays
8
8 Logic Hazards If f is free of function hazards, yet, for an input transition [A,B], has a non-monotonic change at the output, for some delay assignment static logic hazard in [A,B]: if f(A) = f(B) static logic hazard in [A,B]: if f(A) = f(B) dynamic logic hazard [A,B]: if f(A) ≠ f(B) dynamic logic hazard [A,B]: if f(A) ≠ f(B)
9
9 2-Level Hazard-Free Logic Minimization Given: A Boolean function f, and a set, T, of specified function- hazard-free (static and dynamic) input transitions of f A Boolean function f, and a set, T, of specified function- hazard-free (static and dynamic) input transitions of fFind: A minimum-cost cover of f whose AND-OR implementation is free of logic hazards for every input transition t T A minimum-cost cover of f whose AND-OR implementation is free of logic hazards for every input transition t T
10
10 Conditions for a Hazard-Free Transition 0 0: implementation is free of logic hazards 1 1: implementation is free of logic hazards iff … [A,B] is contained in some cube of cover C [A,B] is contained in some cube of cover C [A,B] is called a required cube [A,B] is called a required cube 1 0: implementation is free of logic hazards iff … every cube c C intersecting [A,B] also contains A every cube c C intersecting [A,B] also contains A [A,B] is called a privileged cube [A,B] is called a privileged cube 0 1: symmetric conditions as 1 0 above
11
11 Hazard-Free Covers: Existence Hazard-Free Covering Theorem: A sum-of-products C is a hazard-free cover of f iff: no cube of C intersects the OFF-set of f no cube of C intersects the OFF-set of f each required cube of f is contained in some cube of cover C each required cube of f is contained in some cube of cover C no cube of C intersects any privileged cube illegally no cube of C intersects any privileged cube illegally
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.