What follows then is a description of the AND and OR planes of the pla with one line per product term. Connections in the AND plane are represented with a `1' for connection to the non-inverted input line and a `0' for connection to the inverted input line. No connection to an input line is indicated with 'x', 'X', or '-' with '-' being preferred. Connections in the OR plane are indicated by a '1' with no connection being indicated with 'x', 'X', '0', or '-' with '-' being preferred. Spaces or tabs may be used freely and are ignored.
The end of the pla description is indicated with:
.e
Programs capable of handling split and folded arrays employ the following format:
AND PLANE
OR PLANEColumn (1) Contact to input (2) No contact to input
(1) (2)
1 - Normal contacts, no splits or folds
! _ Split below
; , Fold to right
: . Split below and fold to right
ADDITIONAL ELEMENTSColumn (1) Contact to output (2) No contact to output
(1) (2)
I ~ Normal contacts, no splits or folds
i = Split below
| ' Fold to right
j " Split below and fold to right
* Input buffer
+ Output buffer
D Depletion load associated with product term
N No depletion load associated with product term
Note that the decoding function of the AND plane is separated from the specification of its connectivity. This makes the AND and OR plane specifications identical.
These programs handle the following more general set of .parameters:
.il
<number of left-AND plane inputs>
.ir <number of right-AND plane inputs>
.ol
<number of left-OR plane inputs>
.or <number of right-OR plane inputs>
.p <number
of product terms>
.ilt <labels left-top-AND plane>
.ilb <labels left-bottom-AND
plane>
.irt <labels right-top-AND plane>
.irb <labels right-bottom-AND plane>
.olb
<labels left-bottom-OR plane>
.olt <labels left-top-OR plane>
.orb <labels right-bottom-Or
plane>
.ort <labels right-top-Or plane>
.pl <labels left product terms>
.pr <labels
right product terms>
The first group of parameters must precede the second group. If there is only one AND or OR plane it is assumed to be the left one and the companion .parameters may be shortened by dropping their (left,right) designation character.
In order to better deal with folded and split PLAs, the following .parameters are proposed:
.ig <input group>
.og <output group>
.ins <inputs excluded from splitting>
.inf <inputs excluded from folding>
.ons <outputs excluded from splitting>
.onf <outputs excluded from folding>
In order to build finite state machines, the following .parameters are proposed:
.iltf <left-top-AND feedback terms>
.ilbf <left-bottom-AND feedback
terms>
.irtf <right-top-AND feedback terms>
.irbf <right-bottom-AND feedback terms>
.oltf <left-top-OR feedback terms>
.olbf <left-bottom-OR feedback terms>
.ortf
<right-top-OR feedback terms>
.orbf <right-bottom-OR feedback terms>
.ilr <left
re-ordered inputs>
.irr <right re-ordered inputs>
.olrf <left re-ordered outputs>
.orrf <right re-ordered outputs>
The .XXXf parameters must occur in pairs, with the .oXXf line first. Input and output terms must occur on the same side (top, bottom) of the PLA. Feedback terms must be given in ascending order. The re-order .parameters simplify feedback routing.