+ All Categories
Home > Documents > Boolean Unification

Boolean Unification

Date post: 31-Dec-2015
Category:
Upload: bell-webb
View: 67 times
Download: 1 times
Share this document with a friend
Description:
Boolean Unification. EE219B Presented by: Jason Shamberger March 1, 2000. Outline. What is Boolean unification? Boolean unification algorithms Boole’s method L ö wenheim’s method Applications. Boolean Unification. - PowerPoint PPT Presentation
Popular Tags:
30
Boolean Unification EE219B Presented by: Jason Shamberger March 1, 2000
Transcript
Page 1: Boolean Unification

Boolean Unification

EE219BPresented by: Jason

ShambergerMarch 1, 2000

Page 2: Boolean Unification

Outline What is Boolean unification? Boolean unification algorithms

Boole’s method Löwenheim’s method

Applications

Page 3: Boolean Unification

Boolean Unification Boolean unification is a procedure

to obtain a general solution of a Boolean equation

Use parametric variables to represent don’t cares

Page 4: Boolean Unification

Boolean Unification Given a Boolean equation of the form

0),...,,,...,( 11 mn qqxxf

Where xi’s are inputs and qi’s are constants

We want to find the most general substitution for xi’s, that satisfies the above equation

Page 5: Boolean Unification

Boolean Unification

),...,,,...,(

),...,,,...,(

11

1111

mnnn

mn

qqppgx

qqppgx

Where pi’s can be any variable or function

Page 6: Boolean Unification

Boolean Unification: Example Consider the following example:

0),,( 213132321 xxxaxaxxxxxf

)( 2133

212

11

pppax

ppax

pax

The solutions for x1, x2, x3 are:

Page 7: Boolean Unification

Algorithms for Boolean Unification There are two main algorithms for

Boolean unification Boole’s method Löwenheim’s method

Both algorithms can be implemented using BDD operations

Page 8: Boolean Unification

Boole’s Method Based on successive elimination of variables Define conjunctive eliminant (ECON) as:

)),((),(

}){,(

),(

SRfECONECONSRfECON

ffxfECON

ffECON

ii xxi

Page 9: Boolean Unification

Boole’s Method If X, G, and P represent the vectors of inputs,

parameters, and parametric functions, then the parametric general solution of the equation:

0)( Xf

)(

0 0

PGX

g

APGtsBPXfECONAf

BPXfECONPGf

XfECONg

k

k

)(..),()(

),,())((

),(0

Is a system:

Such that the following conditions are satisfied:

Page 10: Boolean Unification

Theorem It can be shown that for a Boolean

function f, for which a solution to f(x)=0 exists:

Bpxfpfxf ,)1()0(0)(

Where:

BBf :

Page 11: Boolean Unification

Proof: A sketch of the proof:

}|)1()0({

}0)(|{

BpfpfP

xfxS

To show S=P:

0}){,(

)()()(

:

10

11001010

xfECONff

ffpfffpffpff

SP

Page 12: Boolean Unification

Proof::PS

Show for all a in B, there is a p in B:

afpfaf 100)( Use the property that:

0

0)(0)(

gf

XgXf

Simplifies to:

0][10 apff Which is satisfied for all p=a

Page 13: Boolean Unification

Boole’s Method Using this result, we can generate parametric

equations for each of the functions gi

Consider a 3 variable function:

0),,( 321 xxxf

0}),,{,(}){,(

0}),{,(}){,()(

0}){,(}){,(),(

0),(),,(

123110

232211

333212

3213

xxxfECONxfECONf

xxfECONxfECONxf

xfECONxfECONxxf

ffECONxxxf We first calculate the eliminants:

Page 14: Boolean Unification

Boole’s Method We can now generate functions for each

input x:

)1),(),(()0),(),((),,(

)1),(()0),((),(

)1()0()(

2211332211332133

11221122122

111111

pgpgfppgpgfpppgx

pgfppgfppgx

fpfpgx

And the parametric general solution is:

),,(

),(

)(

0

32133

2122

111

0

pppgx

ppgx

pgx

g

Page 15: Boolean Unification

Boole’s Method: Example As an example, consider the RST flip-

flop, which is defined by the equations:

STRTRS

TyTRySY

0 y is the present state, Y is the next state,

R,S,T are the reset, set, and toggle inputs. The first equation describes how the next

state is determined, and the second equation is the constraint that only one input may be a 1 at any time

Page 16: Boolean Unification

Boole’s Method: Example We first need to solve the system for R,S, and

T which we consider variables, in terms of y and Y which we regard as elements of B.

0),,( TSRf

STRTRSTSyYSyYRTSYyTRYyTYySYf

Where f is defined by:

Page 17: Boolean Unification

Boole’s Method: Example

The eliminants are:

0}){,(

0}){,()(

0}){,(),(

0),(),,(

10

21

32

3

RfECONf

YRSfECONRf

SYYRTfECONSRf

ffECONTSRf

0 STRTRSTSyYSyYRTSYyTRYyTYySYf

Page 18: Boolean Unification

Boole’s Method: Example We can now derive the parametric

expressions for the general solution:

YypYyppppgT

YpppgS

YppgR

213213

2212

111

),,(

0),(

0)(

00

Any values can be chosen for pi’s.

For example, let p1=1, p2=y :

YyT

yYS

YR

Page 19: Boolean Unification

Boole’s Method: The method of successive

elimination demonstrates that we need at most n parameters, but possibly less as in the previous example.

Most unification algorithms are implementations of Boole’s method

Page 20: Boolean Unification

Löwenheim’s Method: Allows us to form a parametric

general solution from any particular solution

Useful when it is trivial to find a particular solution, and constructing a general solution is inconvenient

Page 21: Boolean Unification

Löwenheim’s Method: Theorem: Let U be a particular solution of a

consistent Boolean equation f(x)=0, and let P be an n-tuple of arbitrary parameters. Then a parametric general solution is given by:

)(ˆ

0 0

PGX

g

)()()(ˆ PfPPUfPG

Provided that:

Page 22: Boolean Unification

Löwenheim’s Method: Proof:

Using the previous definition, the following conditions must be satisfied:

APGtsBPXfECONAf

BPXfECONPGf

XfECONg

k

k

)(ˆ..),()(

),,())(ˆ(

),(0

Page 23: Boolean Unification

Löwenheim’s Method: Example

Consider the RST flip-flop example from before. An easily obtained particular solution of the RST equation is:

0

T

YS

YR

STRTRS

TyTRySY

0

Page 24: Boolean Unification

Löwenheim’s Method: Example There are three inputs, thus there are

three parameters, we will call them p,q,r. Using the previous theorem, the general

solution is given by:

),,(),,(

0)(ˆ

)(ˆ

)(ˆ

3

2

1

rqpf

r

q

p

rqpfY

Y

Pg

Pg

Pg

Page 25: Boolean Unification

Löwenheim’s Method: Example After some calculations we arrive at:

)(

)(

)(

00

YyYyrqpT

YryyrqpS

YyryrqpR

Notice that we generate n new parameters for an n variable equation.

Page 26: Boolean Unification

Applications Applications include:

Design rectification Boolean matching Minimizing Boolean relations

Page 27: Boolean Unification

Application: Design Rectification Problem:

A circuit has already been laid out, but small modifications are desired (design errors, change in specs)

Can only add extra circuitry before input pins, or after output pins

f f C1 z i z i x

f’

Page 28: Boolean Unification

Application: Design Rectification To guarantee that the rectification is

correct, the following must hold:

)(~

),( ifxif

This is equivalent to computing:

0)(~

),( ifxif

Which is in the necessary form for Boolean unification

Page 29: Boolean Unification

Conclusion Boolean unification allows us to

solve a Boolean equation of the form f(X)=0

Generate parametric equations for each of the inputs xi

Is feasible to implement using BDD representations

Page 30: Boolean Unification

References Boolean Reasoning: The Logic of

Boolean Equations. Brown, Frank Markham

Application of Boolean Unification to Logic Synthesis. Poncino, Massimo

Application of Boolean Unification to Combinational Logic Synthesis. Fujita, Masahiro etal.


Recommended