home *** CD-ROM | disk | FTP | other *** search
- MODULE V8GATES_ABEL;
- TITLE 'ABEL FILE (MODIFIED FROM V8GATES.APL) WHICH CAN BE USED BY ABEL OR APEEL.
- DESIGNER: Robin Jigour DATE: 8/16/87';
-
- VP10GATE Device 'P22VP10';
-
- "Please compare this file with V8GATES.APL. The differences are
- " (1) ABEL files require {MODULE modulename} and {END modulename}.
- " (2) ABEL files require semi-colons, quotes, brackets, and commas.
- " (3) ABEL files require ASSIGNMENT statements (specifically for test vectors).
- " (4) ABEL files require {:=} for registered and {=} for combinatorial
- " equations.
- " (5) ABEL files require {jedec-filename DEVICE 'device'}. APEEL will default
- " the JEDEC filename to {apeel-filename.JED}.
- " (6) APEEL files accepts SUM-OF-PRODUCT equations only.
-
-
- "DESCRIPTION"
-
- " PEEL18CV8
-
- " Basic Logic Gates
- " ____ ____
- " | \/ |
- " A { 1 20 } Vcc
- " B { 2 19 }- NOT
- " C { 3 18 }- AND
- " D { 4 17 }- NAND
- " { 5 16 }- OR ( - = output )
- " { 6 15 }- NOR
- " { 7 14 }- AOI
- " { 8 13 }- XOR
- " /OE { 9 12 }- HZ_BUF
- " Gnd {10 11 }
- " |__________|
-
-
- " This PEEL18CV8 application example implements several basic
- " logic gates. The logic gates include an inverter, four
- " input AND, OR, NAND, and NOR gates, a four input AND-OR-
- " INVERT gate, a two input XOR gate and a high-impedence
- " buffer. Each gate uses one or more of the (A,B,C and D)
- " inputs. Additionally the high-impedence buffer uses the
- " /HZ input for inpedence control. The truth table for
- " these gates can be examined in the test vectors. Note, the
- " remaining unused input pins can be used as additional inputs
- " into the gates.
-
-
- "Inputs"
-
- A pin 1; "A,B,C, and D are gate inputs
- B pin 2;
- C pin 3;
- D pin 4;
- !OE pin 9; "active low output enable for HZ_BUF
-
-
- "Outputs and macro cell specification"
-
- HZ_BUF pin 12 = 'pos,com,feed_pin'; "High Impedence Buffer"
- XOR pin 13 = 'pos,com,feed_pin'; "Exclusive OR"
- AOI pin 14 = 'neg,com,feed_pin'; "AND-OR-Invert"
- NOR pin 15 = 'neg,com,feed_pin';
- OR pin 16 = 'pos,com,feed_pin';
- NAND pin 17 = 'neg,com,feed_pin';
- AND pin 18 = 'pos,com,feed_pin';
- NOT pin 19 = 'pos,com,feed_pin'; "Inverter"
-
-
- "Assignment for ABEL compatibility in the TEST_VECTORS section"
- H,L,X,Z = 1,0,.X.,.Z.;
-
-
- EQUATIONS
-
- NOT = !A; "Note macro cell polarity for each output"
-
- AND = A & B & C & D;
-
- NAND = !(A & B & C & D);
-
- OR = A # B # C # D;
-
- NOR = !(A # B # C # D);
-
- AOI = !(A & B # C & D);
-
- XOR = A & !B # !A & B;
-
- HZ_BUF = A;
- Enable HZ_BUF = OE; "OE controls output enable"
-
-
- TEST_VECTORS
-
- ([ D, C, B, A, OE ] -> [ NOT, AND, NAND, OR, NOR, AOI, XOR, HZ_BUF ]);
- [ 0, 0, 0, 0, 1 ] -> [ H , L , H , L , H , H , L , L ];
- [ 0, 0, 0, 1, 1 ] -> [ L , L , H , H , L , H , H , H ];
- [ 0, 0, 1, 0, 0 ] -> [ H , L , H , H , L , H , H , Z ];
- [ 0, 0, 1, 1, 0 ] -> [ L , L , H , H , L , L , L , Z ];
- [ 0, 1, 0, 0, X ] -> [ X , L , H , H , L , H , X , X ];
- [ 0, 1, 0, 1, X ] -> [ X , L , H , H , L , H , X , X ];
- [ 0, 1, 1, 0, X ] -> [ X , L , H , H , L , H , X , X ];
- [ 0, 1, 1, 1, X ] -> [ X , L , H , H , L , L , X , X ];
- [ 1, 0, 0, 0, X ] -> [ X , L , H , H , L , H , X , X ];
- [ 1, 0, 0, 1, X ] -> [ X , L , H , H , L , H , X , X ];
- [ 1, 0, 1, 0, X ] -> [ X , L , H , H , L , H , X , X ];
- [ 1, 0, 1, 1, X ] -> [ X , L , H , H , L , L , X , X ];
- [ 1, 1, 0, 0, X ] -> [ X , L , H , H , L , L , X , X ];
- [ 1, 1, 0, 1, X ] -> [ X , L , H , H , L , L , X , X ];
- [ 1, 1, 1, 0, X ] -> [ X , L , H , H , L , L , X , X ];
- [ 1, 1, 1, 1, X ] -> [ X , H , L , H , L , L , X , X ];
-
- END V8GATES_ABEL;
-