aboutsummaryrefslogtreecommitdiffstats
path: root/passes/techmap
diff options
context:
space:
mode:
authorEddie Hung <eddie@fpgeh.com>2019-06-05 11:14:14 -0700
committerEddie Hung <eddie@fpgeh.com>2019-06-05 11:14:14 -0700
commitdfe9d95579ab98d7518d40e427af858243de4eb3 (patch)
tree9caa0810ae63bb439eb9264eaaeb944473ede106 /passes/techmap
parente1e37db86073e545269ff440da77f57135e8b155 (diff)
downloadyosys-dfe9d95579ab98d7518d40e427af858243de4eb3.tar.gz
yosys-dfe9d95579ab98d7518d40e427af858243de4eb3.tar.bz2
yosys-dfe9d95579ab98d7518d40e427af858243de4eb3.zip
Add -tech xilinx_static
Diffstat (limited to 'passes/techmap')
-rw-r--r--passes/techmap/shregmap.cc15
1 files changed, 13 insertions, 2 deletions
diff --git a/passes/techmap/shregmap.cc b/passes/techmap/shregmap.cc
index add4e9e2f..ef285160f 100644
--- a/passes/techmap/shregmap.cc
+++ b/passes/techmap/shregmap.cc
@@ -716,7 +716,7 @@ struct ShregmapPass : public Pass {
opts.zinit = true;
opts.tech = new ShregmapTechGreenpak4;
}
- else if (tech == "xilinx_dynamic") {
+ else if (tech == "xilinx_static" || tech == "xilinx_dynamic") {
opts.init = true;
opts.ffcells["$_DFF_P_"] = make_pair(IdString("\\D"), IdString("\\Q"));
opts.ffcells["$_DFF_N_"] = make_pair(IdString("\\D"), IdString("\\Q"));
@@ -724,7 +724,18 @@ struct ShregmapPass : public Pass {
opts.ffcells["$_DFFE_PN_"] = make_pair(IdString("\\D"), IdString("\\Q"));
opts.ffcells["$_DFFE_NP_"] = make_pair(IdString("\\D"), IdString("\\Q"));
opts.ffcells["$_DFFE_NN_"] = make_pair(IdString("\\D"), IdString("\\Q"));
- opts.tech = new ShregmapTechXilinx7Dynamic(opts);
+ opts.ffcells["FDRE"] = make_pair(IdString("\\D"), IdString("\\Q"));
+ opts.ffcells["FDRE_1"] = make_pair(IdString("\\D"), IdString("\\Q"));
+ opts.ffcells["FDSE"] = make_pair(IdString("\\D"), IdString("\\Q"));
+ opts.ffcells["FDSE_1"] = make_pair(IdString("\\D"), IdString("\\Q"));
+ opts.ffcells["FDCE"] = make_pair(IdString("\\D"), IdString("\\Q"));
+ opts.ffcells["FDCE_1"] = make_pair(IdString("\\D"), IdString("\\Q"));
+ opts.ffcells["FDPE"] = make_pair(IdString("\\D"), IdString("\\Q"));
+ opts.ffcells["FDPE_1"] = make_pair(IdString("\\D"), IdString("\\Q"));
+ if (tech == "xilinx_static")
+ opts.tech = new ShregmapTechXilinx7Dynamic(opts);
+ else if (tech == "xilinx_dynamic")
+ opts.tech = new ShregmapTechXilinx7Dynamic(opts);
} else {
argidx--;
break;