diff options
author | Eddie Hung <eddie@fpgeh.com> | 2020-01-06 16:51:32 -0800 |
---|---|---|
committer | Eddie Hung <eddie@fpgeh.com> | 2020-01-06 16:51:32 -0800 |
commit | 5c89dead5f481edaccd46ebc0af907544c89654f (patch) | |
tree | c40306fef9c52f8065cf5f19b42f31b668b17526 /techlibs/xilinx/abc9_model.v | |
parent | 01866a79093092bc2f8a8b20376f6cb552f76f00 (diff) | |
parent | ce765aa4def09bd8b0161425ee40ee55f62e33ff (diff) | |
download | yosys-5c89dead5f481edaccd46ebc0af907544c89654f.tar.gz yosys-5c89dead5f481edaccd46ebc0af907544c89654f.tar.bz2 yosys-5c89dead5f481edaccd46ebc0af907544c89654f.zip |
Merge branch 'master' of github.com:YosysHQ/yosys
Diffstat (limited to 'techlibs/xilinx/abc9_model.v')
-rw-r--r-- | techlibs/xilinx/abc9_model.v | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/techlibs/xilinx/abc9_model.v b/techlibs/xilinx/abc9_model.v index 18d59dcd6..204fa883f 100644 --- a/techlibs/xilinx/abc9_model.v +++ b/techlibs/xilinx/abc9_model.v @@ -30,7 +30,22 @@ module \$__XILINX_MUXF78 (output O, input I0, I1, I2, I3, S0, S1); : (S0 ? I1 : I0); endmodule -// Box to emulate comb/seq behaviour of RAMD{32,64} and SRL{16,32} +module \$__ABC9_FF_ (input D, output Q); +endmodule + +// Box to emulate async behaviour of FDC* +(* abc9_box_id = 1000, lib_whitebox *) +module \$__ABC9_ASYNC0 (input A, S, output Y); + assign Y = S ? 1'b0 : A; +endmodule + +// Box to emulate async behaviour of FDP* +(* abc9_box_id = 1001, lib_whitebox *) +module \$__ABC9_ASYNC1 (input A, S, output Y); + assign Y = S ? 1'b0 : A; +endmodule + +// Box to emulate comb/seq behaviour of RAM{32,64} and SRL{16,32} // Necessary since RAMD* and SRL* have both combinatorial (i.e. // same-cycle read operation) and sequential (write operation // is only committed on the next clock edge). @@ -39,7 +54,7 @@ endmodule (* abc9_box_id=2000 *) module \$__ABC9_LUT6 (input A, input [5:0] S, output Y); endmodule -// Box to emulate comb/seq behaviour of RAMD128 +// Box to emulate comb/seq behaviour of RAM128 (* abc9_box_id=2001 *) module \$__ABC9_LUT7 (input A, input [6:0] S, output Y); endmodule |