| #----------------------------------------------------------------------- |
| # List of standard gate symbols with mapping to liberty file fields |
| # |
| # Y, X refer to logic output pins |
| # C, S, ... refer specifically to adder carry and sum output pins |
| # Q, QB refer specifically to flip-flop or latch output pins |
| # IQ, IQB refers to function entries for flops. "I" is literal. |
| # A, B, C, ... refer to input pins |
| # D, R, S, ... refer specifically to flip-flop input pins |
| # SD refers to scan data input pin for flip-flops |
| # CI refers specifically to full adder carry-in input |
| # Z refers to high-impedance state |
| # & means AND |
| # | means OR |
| # ! means NOT |
| # ( ) groups |
| # |
| # Symbol Liberty Liberty |
| # primitive file field |
| # name field value ... |
| #----------------------------------------------------------------------- |
| AND2 function Y=A&B |
| AND3 function Y=A&B&C |
| AND4 function Y=A&B&C&D |
| AND5 function Y=A&B&C&D&E |
| AND8 function Y=A&B&C&D&E&F&G&H |
| |
| AND2I function Y=!A&B |
| |
| AO21 function Y=(A&B)|C |
| AO22 function Y=(A&B)|(C&D) |
| |
| AOI21 function Y=!((A&B)|C) |
| AOI22 function Y=!((A&B)|(C&D)) |
| |
| NAND2 function Y=!(A&B) |
| NAND3 function Y=!(A&B&C) |
| NAND4 function Y=!(A&B&C&D) |
| NAND5 function Y=!(A&B&C&D&E) |
| NAND8 function Y=!(A&B&C&D&E&F&G&H) |
| |
| NAND2I function Y=!(!A&B) |
| |
| OR2 function Y=A|B |
| OR3 function Y=A|B|C |
| OR4 function Y=A|B|C|D |
| OR5 function Y=A|B|C|D|E |
| OR8 function Y=A|B|C|D|E|F|G|H |
| |
| OR2I function Y=!A|B |
| |
| OA21 function Y=(A|B)&C |
| OA22 function Y=(A|B)&(C|D) |
| |
| OAI21 function Y=!((A|B)&C) |
| OAI22 function Y=!((A|B)&(C|D)) |
| |
| NOR2 function Y=!(A|B) |
| NOR3 function Y=!(A|B|C) |
| NOR4 function Y=!(A|B|C|D) |
| NOR5 function Y=!(A|B|C|D|E) |
| NOR8 function Y=!(A|B|C|D|E|F|G|H) |
| |
| NOR2I function Y=!(!A|B) |
| |
| XOR2 function Y=(A&!B)|(!A&B) |
| |
| XNOR2 function Y=(A&B)|(!A&!B) |
| |
| INV function Y=!A |
| |
| BUF function Y=A |
| |
| TBUF function Y=A three_state E |
| |
| TBUFI function Y=A three_state !E |
| |
| MUX2 function Y=(A&C)|(B&!C) |
| |
| MUX2I function Y=!((A&!C)|(B&C)) |
| |
| MUX4 function Y=(A&!E&!F)|(B&!E&F)|(C&E&!F)|(D&E&F) |
| |
| MUX4I function Y=!((A&!E&!F)|(B&!E&F)|(C&E&!F)|(D&E&F)) |
| |
| HA function C=A&B function S=(A&!B)|(!A&B) |
| FA function C=(A&B)|(A&CI)|(B&CI) function S=(A&B&CI)|(!A&B&!CI)|(!A&!B&CI)|(A&B&CI) |
| |
| LATCH function Q=IQ enable E data_in D |
| LATCHI function Q=IQ enable !E data_in D |
| LATCHR function Q=IQ enable E data_in D clear !R |
| LATCHIR function Q=IQ enable !E data_in D clear !R |
| LATCHSR function Q=IQ enable E data_in D preset !S clear !R |
| LATCHISR function Q=IQ enable E data_in D preset !S clear !R |
| |
| LATCHQ function Q=IQ QB=IQB enable E data_in D |
| LATCHIQ function Q=IQ QB=IQB enable !E data_in D |
| LATCHRQ function Q=IQ QB=IQB enable E data_in D clear !R |
| LATCHIRQ function Q=IQ QB=IQB enable !E data_in D clear !R |
| LATCHSRQ function Q=IQ QB=IQB enable E data_in D preset !S clear !R |
| LATCHISRQ function Q=IQ QB=IQB enable !E data_in D preset !S clear !R |
| |
| DFF function Q=IQ clocked_on C next_state D |
| DFFQ function Q=IQ function QB=IQB clocked_on C next_state D |
| DFFS function Q=IQ clocked_on C next_state D preset !S |
| DFFR function Q=IQ clocked_on C next_state D clear !R |
| DFFSR function Q=IQ clocked_on C next_state D preset !S clear !R |
| DFFSQ function Q=IQ function QB=IQB clocked_on C next_state D preset !S |
| DFFRQ function Q=IQ function QB=IQB clocked_on C next_state D clear !R |
| DFFSRQ function Q=IQ function QB=IQB clocked_on C next_state D clear !R preset !S |
| DFFI function Q=IQ clocked_on !C next_state D |
| DFFIQ function Q=IQ function QB=IQB clocked_on !C next_state D |
| DFFIS function Q=IQ clocked_on !C next_state D preset !S |
| DFFIR function Q=IQ clocked_on !C next_state D clear !R |
| DFFISR function Q=IQ clocked_on !C next_state D preset !S clear !R |
| DFFISQ function Q=IQ function QB=IQB clocked_on !C next_state D preset !S |
| DFFIRQ function Q=IQ function QB=IQB clocked_on !C next_state D clear !R |
| DFFISRQ function Q=IQ function QB=IQB clocked_on !C next_state D clear !R preset !S |
| |
| EDFF function Q=IQ clocked_on C next_state (D&E)|(IQ&!E) |
| EDFFQ function Q=IQ QB=IQB clocked_on C next_state (D&E)|(IQ&!E) |
| |
| SDFF function Q=IQ clocked_on C next_state (D&!E)|(SD&E) |
| SDFFQ function Q=IQ QB=IQB clocked_on C next_state (D&!E)|(SD&E) |