E> 9.3 PLA Tools

9.3  PLA Tools

We shall use the Berkeley PLA tools to illustrate logic minimization using an example to minimize the logic required to implement the following three logic functions:

F1 = A|B|!C; F2 = !B&C; F3 = A&B|C;

These equations are in eqntott input format. The eqntott (for “equation to truth table”) program converts the input equations into a tabular format. Table 9.8 shows the truth table and eqntott output for functions F1 , F2 , and F3 that use the six minterms: A , B , !C , !B&C , A&B , C .

TABLE 9.8  A PLA tools example.

Input (6 minterms): F1 = A|B|!C; F2 = !B&C; F3 = A&B|C;

A

B

C

F1

F2

F3

eqntott output

espresso output

0

0

0

1

0

0

 

.i 3

.o 3

.p 6

--0 100

--1 001

-01 010

-1- 100

1-- 100

11- 001

.e

 

.i 3

.o 3

.p 6

1-- 100

11- 001

--0 100

-01 011

-11 101

.e

 

0

0

1

0

1

1

 

 

0

1

0

1

0

0

 

 

0

1

1

1

0

1

 

 

1

0

0

1

0

0

 

 

1

0

1

1

1

1

 

 

1

1

0

1

0

1

 

 

1

1

1

1

0

1

 

 

Output (5 minterms): F1 = A|!C|(B&C); F2 = !B&C; F3 = A&B|(!B&C)|(B&C);

This eqntott output is not really a truth table since each line corresponds to a minterm. The output forms the input to the espresso logic-minimization program. Table 9.9 shows the format for espresso input and output files. Table 9.10 explains the format of the input and output planes of the espresso input and output files. The espresso output in Table 9.8 corresponds to the eqntott logic equations on the next page.

TABLE 9.9  The format of the input and output files used by the PLA design tool espresso.

Expression

Explanation

# comment

# must be first character on a line.

[d]

Decimal number

[s]

Character string

.i [d]

Number of input variables

.o [d]

Number of output variables

.p [d]

Number of product terms

.ilb [s1] [s2]... [sn]

Names of the binary-valued variables must be after .i and .o .

.ob [s1] [s2]... [sn]

Names of the output functions must be after .i and .o .

.type f

Following table describes the ON set; DC set is empty.

.type fd

Following table describes the ON set and DC set.

.type fr

Following table describes the ON set and OFF set.

.type fdr

Following table describes the ON set, OFF set, and DC set.

.e

Optional, marks the end of the PLA description.

TABLE 9.10  The format of the plane part of the input and output files for espresso.

Plane

Character

Explanation

I

1

The input literal appears in the product term.

I

0

The input literal appears complemented in the product term.

I

-

The input literal does not appear in the product term.

O

1 or 4

This product term appears in the ON set.

O

0

This product term appears in the OFF set.

O

2 or -

This product term appears in the don’t care set.

O

3 or ~

No meaning for the value of this function.

F1 = A|!C|(B&C); F2 = !B&C; F3 = A&B|(!B&C)|(B&C);

We see that espresso reduced the original six minterms to these five: A , A&B , !C , !B&C , B&C .

The Berkeley PLA tools were widely used in the 1980s. They were important stepping stones to modern logic synthesis tools. There are so many testbenches, examples, and old designs that used these tools that we occasionally need to convert files in the Berkeley PLA format to formats used in new tools.


Chapter start ] [ Previous page ] [ Next page ]




© 2024 Internet Business Systems, Inc.
670 Aberdeen Way, Milpitas, CA 95035
+1 (408) 882-6554 — Contact Us, or visit our other sites:
AECCafe - Architectural Design and Engineering EDACafe - Electronic Design Automation GISCafe - Geographical Information Services TechJobsCafe - Technical Jobs and Resumes ShareCG - Share Computer Graphic (CG) Animation, 3D Art and 3D Models
  Privacy PolicyAdvertise