46
1 Technology Independent Multi-Level Logic Optimization Prof. Kurt Keutzer Prof. Sanjit Seshia EECS University of California, Berkeley, CA Thanks to R. Rudell, S. Malik, R. Rutenbar

Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

1

Tech

no

log

y I

nd

ep

en

den

t M

ult

i-L

evel

Lo

gic

Op

tim

izati

on

Pro

f. K

urt

Ke

utz

er

Pro

f. S

an

jit

Se

sh

ia

EE

CS

Un

ive

rsit

y o

f C

alifo

rnia

, B

erk

ele

y,

CA

Th

an

ks

to

R. R

ud

ell,

S. M

ali

k, R

. R

ute

nb

ar

Page 2: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

2

Lo

gic

Op

tim

izati

on

Perf

orm

a v

ari

ety

of

tran

sfo

rmati

on

s a

nd

o

pti

miz

ati

on

s

Str

uctu

ral

gra

ph

tr

an

sfo

rmati

on

s

Bo

ole

an

tra

nsfo

rmati

on

s

Map

pin

g i

nto

a p

hysic

al

lib

rary

sm

all

er,

faste

rle

ss p

ow

er

log

ico

pti

miz

ati

on

netl

ist

netl

ist

Lib

rary

a b

s

q0 1

d

clk

a b

s

q0 1

d

clk

Page 3: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

3

Wh

at

We’v

e S

een

: E

arl

y “

Syn

the

sis

”F

low

& 2

-Le

vel

Min

imiz

ati

on

FS

MS

yn

thesis

FS

M

log

ic

SO

P l

og

ico

pti

miz

ati

on

PL

A

ph

ysic

al

desig

n

layo

ut

F1 =

B +

D +

A C

+ A

C

I1 I2

O1

O2

Page 4: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

4

Red

uce

to

Co

mb

inati

on

al

Op

tim

iza

tio

n

B

Fli

p-f

lop

s

Co

mb

inati

on

al

Lo

gic

input

arr

ival tim

es

input

drive

outp

ut

requ

ired

tim

es

outp

ut

loa

d

inputs

outp

uts

Page 5: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

5

Co

mb

inati

on

al

Lo

gic

Op

tim

izati

on

Inp

ut:

Initia

l B

oole

an c

ircuit

Tim

ing c

hara

cte

rization for

the m

odule

-in

put arr

ival tim

es a

nd d

rive facto

rs

-outp

ut lo

adin

g facto

rs

Optim

ization g

oals

-outp

ut re

quired tim

es o

utp

ut lo

ad

Targ

et lib

rary

description

Ou

tpu

t:

Min

imum

-are

a n

et-

list of lib

rary

gate

s w

hic

h m

eets

tim

ing

constr

ain

ts

A v

ery

difficult o

ptim

ization p

roble

m !

Page 6: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

6

Mo

dern

Ap

pro

ach

to

Lo

gic

Op

tim

izati

on

Div

ide l

og

ic o

pti

miz

ati

on

in

to t

wo

su

bp

rob

lem

s:

•T

echnolo

gy-independent optim

ization

-dete

rmin

e o

vera

ll lo

gic

str

uctu

re

-estim

ate

costs

(m

ostly)

independent of

technolo

gy

-sim

plif

ied c

ost m

odelin

g

•T

echnolo

gy-d

ependent optim

ization (

technolo

gy

mappin

g)

-bin

din

g o

nto

the g

ate

s in the lib

rary

-deta

iled technolo

gy-s

pecific

cost m

odel

Orc

hestr

ati

on

of

vari

ou

s o

pti

miz

ati

on

/tra

nsfo

rmati

on

te

ch

niq

ues f

or

each

su

bp

rob

lem

Page 7: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

7

Lo

gic

Op

tim

izati

on

log

ico

pti

miz

ati

on

netl

ist

netl

ist

Lib

rary

tech

ind

ep

en

den

t

tech

dep

en

den

t

2-l

evel

Lo

gic

op

t

mu

ltil

evel

Lo

gic

op

t

Real

Lib

rary

Gen

eri

cL

ibra

ry

Page 8: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

8

Ou

tlin

e

•M

oti

vati

on

fo

r M

ult

ilevel

Ckts

•O

verv

iew

of

Mu

ltil

evel O

pti

miz

ati

on

•D

eta

ils o

n M

ult

ilevel O

pti

miz

ati

on

Tech

niq

ues

Page 9: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

9

Wh

y M

ult

ile

ve

l C

om

bin

ati

on

al

Cir

cu

its?

•T

here

are

man

y f

un

cti

on

s t

hat

are

to

o

“exp

en

siv

e”

to i

mp

lem

en

t in

tw

o-l

evel fo

rm

–T

ry 1

6-b

it a

dd

er

⇒ ⇒⇒⇒

32 in

pu

t lin

es a

nd

216

pro

du

ct

term

s!

•D

ela

y v

s.

Are

a t

rad

eo

ff

–2-l

evel ckt:

tin

y d

ela

y, la

rge a

rea (

man

y g

ate

s &

lite

rals

)

–m

ult

i-le

vel:

big

ger

dela

y, le

ss a

rea

Page 10: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

11

Ou

tlin

e

•M

oti

vati

on

fo

r M

ult

ilevel

Ckts

•O

verv

iew

of

Mu

ltil

evel O

pti

miz

ati

on

•D

eta

ils o

n M

ult

ilevel O

pti

miz

ati

on

Tech

niq

ues

Page 11: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

12

Rep

res

en

tati

on

: B

oo

lean

Ne

two

rk

a b c

x y

a b c

x y

ab

c +

x

Page 12: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

13

Bo

ole

an

Netw

ork

, E

xp

lain

ed

It’s

a g

rap

h:

•P

rim

ary

in

pu

ts (

vari

ab

les)

•P

rim

ary

ou

tpu

ts

•In

term

ed

iate

no

des (

in S

OP

fo

rm in

term

s o

f it

s

inp

uts

)

Gen

eri

c lib

rary

–te

ch

no

log

y i

nd

ep

en

den

t

•H

as s

tan

dard

fu

ncti

on

s –

ND

2, N

D4,

AO

I22

•Q

uality

of

netw

ork

: are

a,

dela

y,

–m

easu

red

in

term

s o

f #

(lit

era

ls),

dep

th, …

Page 13: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

14

Tech

.-In

dep

en

den

t M

ult

i-L

evel

Op

tim

izati

on

: O

pera

tio

ns

Invo

lves p

erf

orm

ing

th

e f

ollo

win

g o

pera

tio

ns

“it

era

tively

”u

nti

l “g

oo

d e

no

ug

h”

resu

lt is o

bta

ined

:

1.

Sim

plifi

cati

on

•M

inim

izin

g t

wo

-level lo

gic

fu

ncti

on

(S

OP

fo

r a s

ing

le n

od

e)

2.

Eli

min

ati

on

•S

ub

sti

tuti

ng

on

e e

xp

ressio

n in

to a

no

ther.

3.

De

co

mp

os

itio

n

•E

xp

ressin

g a

sin

gle

SO

P w

ith

2 o

r m

ore

sim

ple

r fo

rms

4.

Extr

acti

on

•F

ind

ing

& p

ullin

g o

ut

su

bexp

ressio

ns

co

mm

on

to

man

y

no

des

5.

Su

bsti

tuti

on

•L

ike e

xtr

acti

on

, b

ut

no

des in

th

e n

etw

ork

are

re-u

sed

Page 14: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

15

Exam

ple

(du

e t

o G

. D

e M

ich

eli)

a b c d e

v =

a’d

+ b

d+

c’d

+ a

e’

p =

ce

+ d

er

= p

+ a

’s =

r +

b’

t =

ac +

ad

+ b

c+

bd

+ e

q =

a +

bu

= q

’c+

qc’

+ q

c

w x y z

#li

tera

ls =

33,

dep

th =

3

Page 15: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

16

Exam

ple

: E

lim

inati

on

a b c d e

v =

a’d

+ b

d+

c’d

+ a

e’

p =

ce

+ d

er

= p

+ a

’s =

r +

b’

t =

ac +

ad

+ b

c+

bd

+ e

q =

a +

bu

= q

’c+

qc’

+ q

c

w x y z

#li

tera

ls =

33,

dep

th =

3

Page 16: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

17

Exam

ple

: E

lim

inate

no

de r

a b c d e

v =

a’d

+ b

d+

c’d

+ a

e’

p =

ce

+ d

es =

p +

a’+

b’

t =

ac +

ad

+ b

c+

bd

+ e

q =

a +

bu

= q

’c+

qc’

+ q

c

w x y z

#li

tera

ls =

32,

dep

th =

2

Page 17: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

18

Exam

ple

: S

imp

lifi

ca

tio

n

a b c d e

v =

a’d

+ b

d+

c’d

+ a

e’

p =

ce

+ d

es =

p +

a’+

b’

t =

ac +

ad

+ b

c+

bd

+ e

q =

a +

bu

= q

’c+

qc’

+ q

c

w x y z

#li

tera

ls =

32,

dep

th =

2

Page 18: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

19

Exam

ple

: S

imp

lify

ing

no

de u

a b c d e

v =

a’d

+ b

d+

c’d

+ a

e’

p =

ce

+ d

es =

p +

a’+

b’

t =

ac +

ad

+ b

c+

bd

+ e

q =

a +

bu

= q

+ c

w x y z

#li

tera

ls =

28,

dep

th =

2

Page 19: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

20

Exam

ple

: D

eco

mp

osit

ion

a b c d e

v =

a’d

+ b

d+

c’d

+ a

e’

p =

ce

+ d

es =

p +

a’+

b’

t =

ac +

ad

+ b

c+

bd

+ e

q =

a +

bu

= q

+ c

w x y z

#li

tera

ls =

28,

dep

th =

2

Page 20: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

21

Exam

ple

: D

eco

mp

osin

g n

od

e v

a b c d e

v =

jd

+ a

e’

p =

ce

+ d

es =

p +

a’+

b’

t =

ac +

ad

+ b

c+

bd

+ e

q =

a +

bu

= q

+ c

w x y z

#li

tera

ls =

27,

dep

th =

2

j =

a’+

b +

c’

Page 21: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

22

Exam

ple

: E

xtr

acti

on

a b c d e

v =

jd

+ a

e’

p =

ce

+ d

es =

p +

a’+

b’

t =

ac +

ad

+ b

c+

bd

+ e

q =

a +

bu

= q

+ c

w x y z

#li

tera

ls =

27,

dep

th =

2

j =

a’+

b +

c’

Page 22: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

23

Exam

ple

: E

xtr

acti

ng

fro

m p

an

d t

a b c d e

v =

jd

+ a

e’

p =

ke

s =

p +

a’+

b’

t =

ka +

kb

+ e

q =

a +

bu

= q

+ c

w x y z

#li

tera

ls =

23,

dep

th =

3

j =

a’+

b +

c’

k =

c +

d

Page 23: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

24

Exam

ple

: W

ha

t n

ex

t?

a b c d e

v =

jd

+ a

e’

p =

ke

s =

p +

a’+

b’

t =

ka +

kb

+ e

q =

a +

bu

= q

+ c

w x y z

#li

tera

ls =

23,

dep

th =

3

j =

a’+

b +

c’

k =

c +

d

Page 24: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

25

Wh

ich

Op

era

tio

ns D

o W

e K

no

w H

ow

to

Do

?

Invo

lves p

erf

orm

ing

th

e f

ollo

win

g o

pera

tio

ns

“it

era

tively

”u

nti

l “g

oo

d e

no

ug

h”

resu

lt is o

bta

ined

:

1.

Sim

plifi

cati

on

•M

inim

izin

g t

wo

-level lo

gic

fu

ncti

on

(S

OP

fo

r a s

ing

le n

od

e)

2.

Eli

min

ati

on

•S

ub

sti

tuti

ng

on

e e

xp

ressio

n in

to a

no

ther.

3.

De

co

mp

os

itio

n

•E

xp

ressin

g a

sin

gle

SO

P w

ith

2 o

r m

ore

sim

ple

r fo

rms

4.

Extr

acti

on

•F

ind

ing

& p

ullin

g o

ut

su

bexp

ressio

ns

co

mm

on

to

man

y

no

des

5.

Su

bsti

tuti

on

•L

ike e

xtr

acti

on

, b

ut

no

des in

th

e n

etw

ork

are

re-u

sed

Page 25: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

26

Ou

tlin

e

•M

oti

vati

on

fo

r M

ult

ilevel

Ckts

•O

verv

iew

of

Mu

ltil

evel O

pti

miz

ati

on

•D

eta

ils o

n M

ult

ilevel O

pti

miz

ati

on

Tech

niq

ues

Page 26: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

27

Need

fo

r F

ac

tori

ng

/Div

isio

n

Facto

red

vers

us D

isju

ncti

ve f

orm

s

su

m-o

f-p

rod

ucts

or

dis

jun

cti

ve f

orm

facto

red

fo

rm

mu

lti-

level o

r co

mp

lex g

ate

Wh

at

we n

eed

is a

wa

y t

o d

o “

div

isio

n”

f=

ac

+a

d+

bc

+b

d+

ae

f=

a+

b(

)c

+d

()

+a

e

Page 27: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

28

Div

iso

rs a

nd

Deco

mp

osit

ion

Giv

en

Bo

ole

an

fu

nc

tio

n F

, w

e w

an

t to

wri

te i

t a

s

F

=

D .

Q

+

R

wh

ere

D –

Div

iso

r, Q

–Q

uo

tie

nt,

R –

Re

ma

ind

er

De

co

mp

os

itio

n:

Se

arc

hin

g f

or

div

iso

rs w

hic

h a

re

co

mm

on

to

ma

ny f

un

cti

on

s i

n t

he

ne

two

rk

–id

en

tify

div

iso

rs w

hic

h a

re c

om

mo

n t

o s

evera

l fu

ncti

on

s

–in

tro

du

ce c

om

mo

n d

ivis

or

as a

new

no

de

–re

-exp

ress e

xis

tin

g n

od

es u

sin

g t

he n

ew

div

iso

r

Page 28: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

29

Bo

ole

an

Div

isio

n

Giv

en

Bo

ole

an

fu

nc

tio

n F

, w

e w

an

t to

wri

te it

as

F =

D

. Q

+

R

•D

is a

facto

r o

f F

iff

F . D

’=

0

–O

N-S

ET

(D)

co

nta

ins O

N-S

ET

(F)

•If

F. D

!=

0, t

hen

D i

s a

div

iso

r o

f F

•H

ow

man

y p

ossib

le f

acto

rs D

can

th

ere

be f

or

a

giv

en

F?

Page 29: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

30

Alg

eb

raic

Mo

del

Real N

um

bers

a.b

= b

.a

a+

b=

b+

a

a.(

b.c

) =

(a.b

).c

a+

(b+

c)

= (

a+

b)+

c

a.(

b+

c)

= a

.b+

a.c

a.1

= a

a

.0 =

0 a+

0 =

a

Bo

ole

an

Alg

eb

ra

a.b

= b

.a

a+

b=

b+

a

a.(

b.c

) =

(a.b

).c

a+

(b+

c)

= (

a+

b)+

c

a.(

b+

c)

= a

.b+

a.c

a.1

= a

a

.0 =

0 a+

0 =

a

a+

(b.c

) =

(a+

b).

(a+

c)

a+

a’=

1 a.a

’=

0 a.a

= a

a

+a=

a

a+

1 =

1 a

+ab

= a

a.(

a+

b)

= a

Idea:

Perf

orm

div

isio

n u

sin

g o

nly

th

e r

ule

s (

axio

ms)

of

real

nu

mb

ers

, n

ot

all o

f B

oo

lean

alg

eb

ra

Page 30: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

31

Alg

eb

raic

Div

isio

n

•A

lit

era

l an

d its

co

mp

lem

en

t are

tre

ate

d a

s

un

rela

ted

–E

ach

lit

era

l as a

fre

sh

vari

ab

le

–E

.g. f =

ab

+ a

’x+

b’y

as f

= a

b+

dx

+ e

y

•T

reat

SO

P e

xp

ressio

n a

s a

po

lyn

om

ial

–D

ivis

ion

/facto

rin

g t

hen

beco

mes p

oly

no

mia

l d

ivis

ion

/facto

rin

g

•B

oo

lean

id

en

titi

es a

re i

gn

ore

d

–E

xcep

t in

pre

-pro

cessin

g

–S

imp

le lo

cal sim

plifi

cati

on

s lik

e a

+ a

b� ���

a p

erf

orm

ed

Page 31: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

32

Alg

eb

raic

facto

rizati

on

pro

du

ces

Bo

ole

an

facto

rizati

on

pro

du

ces

Alg

eb

raic

vs

. B

oo

lea

n f

ac

tori

zati

on

f=

ab

+a

c+

ba

+b

c+

ca

+c

b

f=

ab

+c

()

+a

b+

c(

)+

bc

+c

b

f=

a+

b+

c(

)a

+b

+c

()

Page 32: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

33

Alg

eb

raic

Div

isio

n E

xam

ple

F =

ac +

ad

+ b

c+

bd

+ e

Wan

t to

get

Q, R

, w

here

F

= D

Q +

R fo

r

1.

D =

a +

b

2.

D =

a

Page 33: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

34

Alg

eb

raic

Div

isio

n A

lgo

rith

m

•W

hat

we w

an

t:

–G

iven

F, D

, fi

nd

Q, R

–F

, D

exp

ressed

as s

ets

of

cu

bes (

sam

e f

or

Q, R

)

•A

pp

roach

:

–F

or

each

cu

be C

in

D {

let

B =

{cu

bes in

F c

on

tain

ed

in

C}

if (

B is e

mp

ty)

retu

rn Q

= {

}, R

= F

let

B =

{cu

bes in

B w

ith

vari

ab

les in

C r

em

oved

}

if (

C is t

he f

irst

cu

be in

D w

e’r

e lo

okin

g a

t)

let

Q =

B;

els

e Q

= Q

∩ ∩∩∩B

;

} R =

F \

(Q x

D);

Co

mp

lexit

y?

Page 34: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

35

Takin

g S

tock

•W

hat

we k

no

w:

–H

ow

to

perf

orm

Alg

eb

raic

div

isio

n g

iven

a d

ivis

or

D

•W

hat

we d

on

’t

–H

ow

to

pic

k D

?

•R

ecall

wh

at

we w

an

ted

to

do

:

–G

iven

2 f

un

cti

on

s F

an

d G

, fi

nd

a c

om

mo

n d

ivis

or

D a

nd

fa

cto

rize t

hem

as

F =

D Q

1 +

R1

G =

D

Q2 +

R2

Page 35: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

36

New

Te

rmin

olo

gy:

Kern

els

•A

kern

el

of

a B

oo

lean

exp

ressio

n F

is a

cu

be-f

ree e

xp

ressio

nth

at

resu

lts w

hen

yo

u

div

ide F

by a

sin

gle

cu

be

–T

hat

“sin

gle

cu

be”

is c

alled

a c

o-k

ern

el

•C

ub

e-f

ree e

xp

ressio

n:

Can

no

t fa

cto

r o

ut

a

sin

gle

cu

be t

hat

leaves b

eh

ind

no

re

main

der

•E

xam

ple

s:

Wh

ich

are

cu

be-f

ree?

–F

= a

–F

= a

+ b

–F

= a

bc

+ a

bd

Page 36: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

37

Kern

els

: E

xa

mp

les

F =

ae

+ b

e +

cd

e+

ab

K(f

)

Kern

el C

o-k

ern

el

{a,b

,cd

} e

{e,b

} ?

? b

{ae,b

e,c

de,a

b}

?

Page 37: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

38

Wh

y a

re K

ern

els

Us

efu

l?

Go

al o

f m

ult

i-le

vel lo

gic

op

tim

izer

is t

o f

ind

co

mm

on

d

ivis

ors

of

two

(o

r m

ore

) fu

ncti

on

s f

an

d

g

Th

eo

rem

: [B

rayto

n&

McM

ullen

]

fan

d

gh

ave a

no

n-t

rivia

l (m

ult

iple

-cu

be)

co

mm

on

d

ivis

or

dif

an

d o

nly

if

there

exis

t kern

els

kf

∈ ∈∈∈K

( f

),

kg

∈ ∈∈∈K

( g )

su

ch

th

at

kf

∩ ∩∩∩k

gis

no

n-t

rivia

l, i.

e., n

ot

a c

ub

e

∴ ∴∴∴can

use k

ern

els

of

fan

d

gto

lo

cate

co

mm

on

d

ivis

ors

Page 38: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

39

Th

eo

rem

, P

ut

An

oth

er

Way

•F

= D

1 . K

1 +

R1

•G

= D

2 . K

2 +

R2

•K

1 =

(X

+ Y

+ …

) +

stu

ff1

•K

2 =

(X

+ Y

+ …

) +

stu

ff2

•T

hen

,

–F

= (

X +

Y +

…)

D1

+ s

tuff

3

–G

= (

X +

Y +

…)

D2

+ s

tuff

4

•S

o, if

we f

ind

kern

els

an

d in

ters

ect

them

, th

e

inte

rsecti

on

giv

es u

s o

ur

co

mm

on

div

iso

r

Page 39: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

40

Kern

el

Inte

rse

cti

on

: E

xam

ple

F =

ae

+ b

e +

cd

e+

ab

K(f

)

Kern

el C

o-k

ern

el

{a,b

,cd

} e

{e,b

} a

{e,a

} b

{ae,b

e,c

de,a

b}

1

G =

ad

+ a

e+

bd

+ b

e +

bc

K(g

)

Kern

el C

o-k

ern

el

{a,b

} d

or

e

{d,e

} a

or

b

{d,e

,c}

b

{ad

,ae,b

d,b

e,b

c}

1

Page 40: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

41

Ho

w d

o w

e f

ind

Kern

els

?

Overv

iew

: G

iven

a f

un

cti

on

F

1.

Pic

k a

vari

ab

le x

ap

peari

ng

in

F, an

d u

se it

as a

d

ivis

or

2.

Fin

d t

he c

orr

esp

on

din

g k

ern

el K

if

on

e e

xis

ts (a

t le

ast

2 c

ub

es i

n F

co

nta

in x

)

•If

no

t, g

o b

ack t

o (

1)

an

d p

ick a

no

ther

vari

ab

le

3.

Us

e K

in

pla

ce o

f F

an

d r

ecu

rse

to f

ind

kern

els

of

K •F

= x

K +

R an

d K

= y

M +

S � ���

F =

xy

M +

•A

dd

kern

els

of

K t

o t

ho

se o

f F

4.

Go

back t

o (

1)

an

d p

ick a

no

ther

vari

ab

le t

o k

eep

fi

nd

ing

kern

els

Page 41: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

42

Fin

din

g K

ern

els

: E

xa

mp

le

F =

ab

c+

ab

d+

bcd

bc

+ b

dac +

ad

+ c

dab

+ b

dab

+ b

c

Can

we d

o b

ett

er?

Page 42: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

43

Fin

din

g K

ern

els

: E

xa

mp

le

F =

ab

c+

ab

d+

bcd

bc

+ b

dab

c+

ad

+ c

dab

c&

bcd

bo

th

co

nta

in c

.In

ters

ecti

on

is

bc.

Re

cu

rse

on

F

/bc

= a

+d

ab

+ b

c

Take i

nte

rsecti

on

of

all c

ub

es c

on

tain

ing

a v

ari

ab

le

Page 43: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

44

Kern

el

Fin

din

g A

lgo

rith

m

Fin

dK

ern

els

(F)

{

K =

{ }

;

for

(each

vari

ab

le x

in

F)

{

if (

F h

as a

t le

ast

2 c

ub

es c

on

tain

ing

x)

{

let

S =

{cu

bes in

f c

on

tain

ing

x};

let

c =

cu

be r

esu

ltin

g f

rom

in

ters

ecti

on

of

all c

ub

es in

S

K =

K ∪ ∪∪∪

Fin

dK

ern

els

(F/c

); //re

cu

rsio

n

}

} K =

K ∪ ∪∪∪

F ;

retu

rn K

;

}

Page 44: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

45

Giv

en

a f

un

cti

on

f

to b

e s

tro

ng

div

ided

by

g

Ad

d a

n e

xtr

a i

np

ut

to

fco

rresp

on

din

g t

o

g,

nam

ely

G

an

d o

bta

in f

un

cti

on

h

as f

ollo

ws

Min

imiz

e

hu

sin

g t

wo

-level

min

imiz

er

Str

on

g (

or

Bo

ole

an

) D

ivis

ion

hO

N=

f ON

− −−−h

DC

hO

FF

= ===f O

N+ +++

hD

C

hD

C=

Gg

+G

gIn

pu

ts t

o f

th

at

can

no

t o

ccu

r

Get:

h

= Q

G +

R

Page 45: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

46

Ad

dit

ion

al

Rea

din

g

1.

Re

ad

Ch

ap

ter

7 u

pto

Sec.

7.6

2.

R.

Ru

dell, ‘L

og

ic S

yn

thesis

fo

r V

LS

I D

esig

n’,

Ph

D T

hesis

, U

C B

erk

ele

y,

198

9.

3.

R.

Bra

yto

n, G

. H

ach

tel, A

. S

an

gio

van

ni-

Vin

cen

telli, ‘M

ult

ileve

l L

og

ic S

yn

thesis

’,

Pro

ce

ed

ing

s o

f th

e IE

EE

, F

eb

’90.

OP

TIO

NA

L

Page 46: Technology Independent Multi-Level Logic Optimization Prof ...keutzer/classes/244fa2005/lecture… · K. Keutzer & S. Seshia 14 Tech.-Independent Multi-Level Optimization: Operations

K.

Keutz

er

& S

. S

eshia

47

Lo

gic

op

tim

iza

tio

n -

su

mm

ary

Cu

rren

t fo

rmu

lati

on

of

log

ic s

yn

thesis

an

d o

pti

miz

ati

on

is t

he

mo

st

co

mm

on

tech

niq

ues f

or

desig

nin

g in

teg

rate

d c

ircu

its

tod

ay

Has b

een

th

e m

ost

su

ccessfu

l d

esig

n p

ara

dig

m 1

989 -

pre

sen

t

Alm

ost

all d

igit

al cir

cu

its a

re t

ou

ch

ed

by lo

gic

syn

thesis

•M

icro

pro

cesso

rs (

co

ntr

ol p

ort

ion

s/r

an

do

m g

lue lo

gic

~ 2

0%

)

•A

pp

licati

on

sp

ecif

ic s

tan

dard

part

s (A

SS

Ps)-

20 -

90

%

•A

pp

licati

on

sp

ecif

ic in

teg

rate

d c

ircu

its (

AS

ICs)

-40 -

100

%

Real lo

gic

op

tim

izati

on

syste

ms o

rch

estr

ate

op

tim

izati

on

s

•T

ech

no

log

y in

dep

en

den

t

•T

ech

no

log

y d

ep

en

den

t

NE

XT

LE

CT

UR

E

•A

pp

licati

on

sp

ecif

ic (

e.g

. d

ata

path

ori

en

ted

)