aboutsummaryrefslogtreecommitdiffstats
path: root/techlibs/greenpak4/cells_map.v
diff options
context:
space:
mode:
authorAndrew Zonenberg <azonenberg@drawersteak.com>2016-12-05 21:22:41 -0800
committerAndrew Zonenberg <azonenberg@drawersteak.com>2016-12-05 21:22:41 -0800
commit981f01430190aeba2c27dd516cefb5730063fcc7 (patch)
tree1092800b3c19fe13c0df92ff149f0bdc84d6ce40 /techlibs/greenpak4/cells_map.v
parente6ab00d419ae12d7d985e2bd671bdfc74167b863 (diff)
downloadyosys-981f01430190aeba2c27dd516cefb5730063fcc7.tar.gz
yosys-981f01430190aeba2c27dd516cefb5730063fcc7.tar.bz2
yosys-981f01430190aeba2c27dd516cefb5730063fcc7.zip
Initial implementation of techlib support for GreenPAK latches. Instantiation only, no behavioral inference yet.
Diffstat (limited to 'techlibs/greenpak4/cells_map.v')
-rw-r--r--techlibs/greenpak4/cells_map.v52
1 files changed, 52 insertions, 0 deletions
diff --git a/techlibs/greenpak4/cells_map.v b/techlibs/greenpak4/cells_map.v
index 111a77a14..f8fb2569a 100644
--- a/techlibs/greenpak4/cells_map.v
+++ b/techlibs/greenpak4/cells_map.v
@@ -50,6 +50,58 @@ module GP_DFFRI(input D, CLK, nRST, output reg nQ);
);
endmodule
+module GP_DLATCHS(input D, nCLK, nSET, output reg Q);
+ parameter [0:0] INIT = 1'bx;
+ GP_DLATCHSR #(
+ .INIT(INIT),
+ .SRMODE(1'b1),
+ ) _TECHMAP_REPLACE_ (
+ .D(D),
+ .nCLK(nCLK),
+ .nSR(nSET),
+ .Q(Q)
+ );
+endmodule
+
+module GP_DLATCHR(input D, nCLK, nRST, output reg Q);
+ parameter [0:0] INIT = 1'bx;
+ GP_DLATCHSR #(
+ .INIT(INIT),
+ .SRMODE(1'b0),
+ ) _TECHMAP_REPLACE_ (
+ .D(D),
+ .nCLK(nCLK),
+ .nSR(nRST),
+ .Q(Q)
+ );
+endmodule
+
+module GP_DLATCHSI(input D, nCLK, nSET, output reg nQ);
+ parameter [0:0] INIT = 1'bx;
+ GP_DLATCHSRI #(
+ .INIT(INIT),
+ .SRMODE(1'b1),
+ ) _TECHMAP_REPLACE_ (
+ .D(D),
+ .nCLK(nCLK),
+ .nSR(nSET),
+ .nQ(nQ)
+ );
+endmodule
+
+module GP_DLATCHRI(input D, nCLK, nRST, output reg nQ);
+ parameter [0:0] INIT = 1'bx;
+ GP_DLATCHSRI #(
+ .INIT(INIT),
+ .SRMODE(1'b0),
+ ) _TECHMAP_REPLACE_ (
+ .D(D),
+ .nCLK(nCLK),
+ .nSR(nRST),
+ .nQ(nQ)
+ );
+endmodule
+
module GP_OBUFT(input IN, input OE, output OUT);
GP_IOBUF _TECHMAP_REPLACE_ (
.IN(IN),