blob: b1097ec5e000d6cc56bbd1ca068cd1cb90d0c434 [file] [log] [blame]
Tim Edwards7cbaaba2020-08-05 12:19:18 -04001#-----------------------------------------------------------------------
2# List of standard gate symbols with mapping to liberty file fields
3#
4# Y, X refer to logic output pins
5# C, S, ... refer specifically to adder carry and sum output pins
6# Q, QB refer specifically to flip-flop or latch output pins
7# IQ, IQB refers to function entries for flops. "I" is literal.
8# A, B, C, ... refer to input pins
9# D, R, S, ... refer specifically to flip-flop input pins
10# SD refers to scan data input pin for flip-flops
11# CI refers specifically to full adder carry-in input
12# Z refers to high-impedance state
13# & means AND
14# | means OR
15# ! means NOT
16# ( ) groups
17#
18# Symbol Liberty Liberty
19# primitive file field
20# name field value ...
21#-----------------------------------------------------------------------
22AND2 function Y=A&B
23AND3 function Y=A&B&C
24AND4 function Y=A&B&C&D
25AND5 function Y=A&B&C&D&E
26AND8 function Y=A&B&C&D&E&F&G&H
27
28AND2I function Y=!A&B
29
30AO21 function Y=(A&B)|C
31AO22 function Y=(A&B)|(C&D)
32
33AOI21 function Y=!((A&B)|C)
34AOI22 function Y=!((A&B)|(C&D))
35
36NAND2 function Y=!(A&B)
37NAND3 function Y=!(A&B&C)
38NAND4 function Y=!(A&B&C&D)
39NAND5 function Y=!(A&B&C&D&E)
40NAND8 function Y=!(A&B&C&D&E&F&G&H)
41
42NAND2I function Y=!(!A&B)
43
44OR2 function Y=A|B
45OR3 function Y=A|B|C
46OR4 function Y=A|B|C|D
47OR5 function Y=A|B|C|D|E
48OR8 function Y=A|B|C|D|E|F|G|H
49
50OR2I function Y=!A|B
51
52OA21 function Y=(A|B)&C
53OA22 function Y=(A|B)&(C|D)
54
55OAI21 function Y=!((A|B)&C)
56OAI22 function Y=!((A|B)&(C|D))
57
58NOR2 function Y=!(A|B)
59NOR3 function Y=!(A|B|C)
60NOR4 function Y=!(A|B|C|D)
61NOR5 function Y=!(A|B|C|D|E)
62NOR8 function Y=!(A|B|C|D|E|F|G|H)
63
64NOR2I function Y=!(!A|B)
65
66XOR2 function Y=(A&!B)|(!A&B)
67
68XNOR2 function Y=(A&B)|(!A&!B)
69
70INV function Y=!A
71
72BUF function Y=A
73
74TBUF function Y=A three_state E
75
76TBUFI function Y=A three_state !E
77
78MUX2 function Y=(A&C)|(B&!C)
79
80MUX2I function Y=!((A&!C)|(B&C))
81
82MUX4 function Y=(A&!E&!F)|(B&!E&F)|(C&E&!F)|(D&E&F)
83
84MUX4I function Y=!((A&!E&!F)|(B&!E&F)|(C&E&!F)|(D&E&F))
85
86HA function C=A&B function S=(A&!B)|(!A&B)
87FA function C=(A&B)|(A&CI)|(B&CI) function S=(A&B&CI)|(!A&B&!CI)|(!A&!B&CI)|(A&B&CI)
88
89LATCH function Q=IQ enable E data_in D
90LATCHI function Q=IQ enable !E data_in D
91LATCHR function Q=IQ enable E data_in D clear !R
92LATCHIR function Q=IQ enable !E data_in D clear !R
93LATCHSR function Q=IQ enable E data_in D preset !S clear !R
94LATCHISR function Q=IQ enable E data_in D preset !S clear !R
95
96LATCHQ function Q=IQ QB=IQB enable E data_in D
97LATCHIQ function Q=IQ QB=IQB enable !E data_in D
98LATCHRQ function Q=IQ QB=IQB enable E data_in D clear !R
99LATCHIRQ function Q=IQ QB=IQB enable !E data_in D clear !R
100LATCHSRQ function Q=IQ QB=IQB enable E data_in D preset !S clear !R
Tim Edwards7ac1f032020-08-12 17:40:36 -0400101LATCHISRQ function Q=IQ QB=IQB enable !E data_in D preset !S clear !R
Tim Edwards7cbaaba2020-08-05 12:19:18 -0400102
103DFF function Q=IQ clocked_on C next_state D
104DFFQ function Q=IQ function QB=IQB clocked_on C next_state D
105DFFS function Q=IQ clocked_on C next_state D preset !S
106DFFR function Q=IQ clocked_on C next_state D clear !R
107DFFSR function Q=IQ clocked_on C next_state D preset !S clear !R
108DFFSQ function Q=IQ function QB=IQB clocked_on C next_state D preset !S
109DFFRQ function Q=IQ function QB=IQB clocked_on C next_state D clear !R
110DFFSRQ function Q=IQ function QB=IQB clocked_on C next_state D clear !R preset !S
111DFFI function Q=IQ clocked_on !C next_state D
112DFFIQ function Q=IQ function QB=IQB clocked_on !C next_state D
113DFFIS function Q=IQ clocked_on !C next_state D preset !S
114DFFIR function Q=IQ clocked_on !C next_state D clear !R
115DFFISR function Q=IQ clocked_on !C next_state D preset !S clear !R
116DFFISQ function Q=IQ function QB=IQB clocked_on !C next_state D preset !S
117DFFIRQ function Q=IQ function QB=IQB clocked_on !C next_state D clear !R
118DFFISRQ function Q=IQ function QB=IQB clocked_on !C next_state D clear !R preset !S
119
120EDFF function Q=IQ clocked_on C next_state (D&E)|(IQ&!E)
121EDFFQ function Q=IQ QB=IQB clocked_on C next_state (D&E)|(IQ&!E)
122
123SDFF function Q=IQ clocked_on C next_state (D&!E)|(SD&E)
124SDFFQ function Q=IQ QB=IQB clocked_on C next_state (D&!E)|(SD&E)