Two Level Logic Minimization in VLSI and Advanced Digital Design - Prof. Vincent Mooney, Study notes of Electrical and Electronics Engineering

A lecture note for ece 3060, which discusses modern techniques for manipulating and minimizing boolean functions in two level logic minimization. It covers exact methods, heuristic methods, representation of boolean expressions, manipulation of realistic multilevel networks, and definitions such as binary space, operations or(+), and(.), not, single output, multiple output, implicant, minterm, and product or cube. It also explains tabular representations, cube representation, prime definitions, and logic minimization using exact methods and heuristic methods.

Typology: Study notes

Pre 2010

Uploaded on 08/05/2009

koofers-user-qyn
koofers-user-qyn 🇺🇸

5

(1)

10 documents

1 / 30

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
ECE 3060
VLSI and Advanced Digital Design
Lecture 10
Two Level Logic Minimization
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e

Partial preview of the text

Download Two Level Logic Minimization in VLSI and Advanced Digital Design - Prof. Vincent Mooney and more Study notes Electrical and Electronics Engineering in PDF only on Docsity!

ECE 3060

VLSI and Advanced Digital Design

Lecture 10

Two Level Logic Minimization

ECE 3060

Lecture 10–

Motivation

•^

We will study modern techniques for manipulating andminimizing boolean functions

-^

Issue: Tractibility of minimization problem for largenumber of variables

-^

Exact methods

-^

Heuristic methods

•^

Issue: Representation of boolean expressions in aform conducive to boolean operations

-^

Implicant tables

-^

Binary decision diagrams

•^

Issue: Manipulation of realistic multilevel networks

-^

Graph representations

-^

multilevel minimization

-^

Technology mapping

ECE 3060

Lecture 10–

Cube Representation

•^

can be represented by a binary n-cube, i.e. an n- dimensional binary hypercube

-^

As usual, literals may be replaced with binary values,i.e.

-^

B Adjacent minterms (vertices) differ in only one vari-able similar to K-map

n a a

b b

b b

a a

a a

bac bac

b

b

a

a c

b c

b

a

a c

c

bac bac

a

b c

abc

ECE 3060

Lecture 10–

Definitions

•^

Boolean

variable:

•^

Boolean

literal:

or

•^

Product or

cube: product of literals

•^

Implicant: product term implying a value of a function(usually TRUE)

-^

binary hypercube in the boolean space

•^

Minterm: product using all input variables implying avalue of a function (usually TRUE)

-^

vertex in the boolean space

a^

B

a^

a

ECE 3060

Lecture 10–

Cube Representation

• •^

c

a b

F

abc

abc

abc

abc

abc

+^

+^

+^

F

ab

bc

ac

ab

ECE 3060

Lecture 10–

Prime Definitions

•^

Prime implicant

-^

implicant not contained by any other implicant

•^

Prime cover

-^

cover of prime implicants

•^

Essential Prime Implicant (EPI):

-^

there is at least one minterm covered by EPI and not covered by anyother prime implicant

ECE 3060

Lecture 10–

Minimal or Irredundant Cover

•^

Cover of the function that is not a proper superset ofanother cover

-^

no implicant can be dropped

-^

local optimum

c

a b

ECE 3060

Lecture 10–

Minimal Cover with respect tosingle-implicant containment

-^

no implicant is contained by any other implicant

-^

weak local optimum

c

a b

ECE 3060

Lecture 10–

Exact Logic Minimization

•^

Quine’s theorem:

-^

There is a minimum cover that is prime

-^

Consequently, the search for minimum cover can be restricted toprime implicants

•^

Quine-McCluskey method:

compute prime implicants

determine minimum cover via branching

•^

Petrick’s method

compute prime implicants

determine minimum cover via covering clause

ECE 3060

Lecture 10–

Computing Prime Implicants

•^

The

Hamming weight of a minterm is the number of

ones in that minterm.

-^

Start with list of minterms sorted by Hamming weight.

Combine all possible implicants (minterms) using

. Note that this

algebraic reduction specifies two implicants with Hamming weights that differby one.

Group resulting implicants by Hamming weight.

Repeat 1. and 2. on the resulting implicants until no further factoring is possible(i.e. all implicants are prime)

•^

Example:

α y

α y +^

α

f^

abcd

abcd

abcd

abcd

abcd

abcd

abcd

abcd

abcd

abcd

+^

+^

+^

+^

ECE 3060

Lecture 10–

Example

•^

Function:

-^

Choose cover by selecting a set of implicants whichcover all minterms.

f^

abc

abc

abc

abc

abc

•^

Primes:

•^

Implicant Table:

Label

PIs 00011111

α β γ δ

Minterms

Primes 1

0

0

0

1

1

0

0

0

1

1

0

0

0

1

1

0

0

0

1

α^

β^

γ^

δ

abc abc abcabc abc

ECE 3060

Lecture 10–

Cube Representation

c

a b

(a) prime implicants

(b) minimum cover

ECE 3060

Lecture 10–

Exact Two-level Logic Minimization

•^

Matrix representation

-^

Covering problem

-^

Reduction strategies

-^

Branch and bound covering algorithm

ECE 3060

Lecture 10–

Matrix representation

•^

View implicant table of some function

as Boolean

matrix:

-^

the ith minterm is covered by the jth prime

implicant

•^

The (Boolean) selection vector

selects which prime

implicants will be in the cover.

-^

To cover

, find an

which satisfies

-^

i.e. select enough columns to cover all rows

•^

To find a minimum cover, minimize cardinality of

, i.e.

the number of nonzero entries of

f

A

a^ ij

(^

x

f^

x

y^ i

i ∀ ≥^

Ax

y

x

x