| library(gates) { |
| cell(NOT) { |
| area: 2; // 7404 hex inverter |
| pin(A) { direction: input; } |
| pin(Y) { direction: output; |
| function: "A'"; } |
| } |
| cell(BUF) { |
| area: 4; // 2x 7404 hex inverter |
| pin(A) { direction: input; } |
| pin(Y) { direction: output; |
| function: "A"; } |
| } |
| cell(NAND) { |
| area: 3; // 7400 quad 2-input NAND gate |
| pin(A) { direction: input; } |
| pin(B) { direction: input; } |
| pin(Y) { direction: output; |
| function: "(A*B)'"; } |
| } |
| cell(NOR) { |
| area: 3; // 7402 quad 2-input NOR gate |
| pin(A) { direction: input; } |
| pin(B) { direction: input; } |
| pin(Y) { direction: output; |
| function: "(A+B)'"; } |
| } |
| cell(DFF) { |
| area: 6; // 7474 dual D positive edge triggered flip-flop |
| ff(IQ, IQN) { clocked_on: C; |
| next_state: D; } |
| pin(C) { direction: input; |
| clock: true; } |
| pin(D) { direction: input; } |
| pin(Q) { direction: output; |
| function: "IQ"; } |
| } |
| } |