200 likes | 427 Views
Logic Synthesis. Multi-Valued Logic. Multi-Valued Logic. Up to now… two-valued synthesis Binary variables take only values {0, 1} Multi-Valued logic Multi-valued variable X i can take on values P i = {0,…,|P i |-1} (integers - but no ordering implied)
E N D
Logic Synthesis Multi-Valued Logic
Multi-Valued Logic Up to now…two-valued synthesis • Binary variables take only values {0, 1} Multi-Valued logic • Multi-valued variable Xi can take on values Pi = {0,…,|Pi|-1} (integers - but no ordering implied) • Symbolic variables take values from symbolic set, e.g. state: {s0,s1,…,sn} or X: {a,b,c}. • Enumeration types from RTL • Set of values for each dimension is finite!!!!
Multi-Valued Logic • Formally: (sometimes called anmv-function ). • Problem: find the minimum SOP form for an incompletely-specified function of this kind • Big News:Nothing really changes because solution space is still finite!!
Example “Truth Table” • P1={0,1,2}, P2={0,1} • Here “2” means the value 2 and not {0,1} f(0,0) = 1 f(2,1) = 1 f(1,0) = 0 f(2,0) = *unspecified (don’t cares)
MV Function on off Don’t care
Terminology • Vertex: • Cube: • Containment: • Implicant:
Terminology • Onset minterm: • Prime Implicant: • Cover of F : • Prime Cover of F:
Notation-MV Literals Definition: A multi-valued literalis a binary logic function of the form where Definition: A cube can be written as the product of MV-literals:
Notation-MV Literals • If ci=Pi we may omit from the expression (since =1) • Note analogy to two-valued case: • Actually, multi-valued notation is superior to binary notation.
Example Rows marked as a (b) form single mv-cube implicant The following are cube covers of F. F2 is a prime cover
Positional Notation Example: Cube1 P1={A,B,C,D}, P2={R,S} (Symbolic) A B C D R SCube1: 1 1 0 0 1 0 Cube2: 1 1 1 1 0 1 • A cube does not depend on variable Xi if it has all 1’s in the set of columns associated with Xi (Cube2 does nor depend on X1). • Each of the columns of a variable is called a part of that variable. There is one part for each value a variable can take.
Positional Notation Extension of Espresso notation (value=0) (value=1)0 1 1 1 0 0 1 1 2 Example: X1 X2 X3 C1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 C2 0 1 1 0 0 0 0 0 1 1 0 1 0 1 0 C3 0 1 0 1 0 0 0 1 0 0 1 1 1 1 1 C4 0 0 1 1 0 0 1 0 0 1 1 1 0 1 0 C5 0 0 0 0 1 1 1 1 1 1 1 0 1 1 0
Positional Notation X1 X2 X3 C1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 C2 0 1 1 0 0 0 0 0 1 1 0 1 0 1 0 C3 0 1 0 1 0 0 0 1 0 0 1 1 1 1 1 C4 0 0 1 1 0 0 1 0 0 1 1 1 0 1 0 C5 0 0 0 0 1 1 1 1 1 1 1 0 1 1 0
Minimization for Multi-Valued Logic Given: Cover F of and a cover D of the don’t-care set d, Find: A minimum sum-of-products form for Same problem as for two-valued • Generate primes of (f+d) • Generate covering table • Solve the covering table (unate covering problem)
Applications of Multi-Valued Logic Theorem: minimizing a two-valued (n input) (m output) logic function gis equivalent to minimizing a single binary-output MV-logic function: f : {0,1} {0,1} ... {0,…,m-1} {0,1} Proof( sketch):Let g = {f0,…,fm-1} be the multiple output function. Consider the characteristic function f of the multiple output function, (defined on (n+1) variables with the last one, y, being multi-valued on {0,1,…,m-1} ):
Applications of Multi-Valued Logic Note: An implicant of g (the multi-output function) is a cube c in the x-space where each output is turned on only if fi(c)=1. Any output not turned on means no information (not offset), since the each output is the OR of all of its input cubes. Xf1 f2 f3 f4 f5 f6 g x-cube 0 1 0 1 1 0
Other Applications: Encoding • Input Encoding problem • bit-grouped PLA structure (decoded PLA) • Output encoding problem • output phase optimization • State encoding problem • Minimize symbolically to get constraints on a possible binary encoding • solve constraints to derive binary code • Re-minimize binary problem • Implement in binary
Example - after minimization Prime and irredundant SOP of f: (five cubes 1+2+3+4+5) Equivalent to:
Example - after minimization f0 f1 f2 Note: is not a prime of f0, but is a prime of f. Similarly for .