3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-04-28 19:35:53 +00:00

Add mux_map.v for wide mux

This commit is contained in:
Eddie Hung 2019-06-04 09:51:47 -07:00
parent 9b9bd4e19f
commit e260150321
4 changed files with 82 additions and 30 deletions

View file

@ -267,15 +267,21 @@ struct SynthXilinxPass : public ScriptPass
run("shregmap -tech xilinx -minlen 3", "(skip if '-nosrl')");
}
if (vpr && !nocarry && !help_mode)
run("techmap -map +/techmap.v -map +/xilinx/arith_map.v -D _EXPLICIT_CARRY");
else if (abc == "abc9" && !nocarry && !help_mode)
run("techmap -map +/techmap.v -map +/xilinx/arith_map.v -D _CLB_CARRY");
else if (!nocarry || help_mode)
run("techmap -map +/techmap.v -map +/xilinx/arith_map.v", "(skip if '-nocarry')");
else
run("techmap -map +/techmap.v");
std::string techmap_files = " -map +/techmap.v";
if (help_mode)
techmap_files += " [-map +/xilinx/mux_map.v]";
else if (!nomux)
techmap_files += " -map +/xilinx/mux_map.v";
if (help_mode)
techmap_files += " [-map +/xilinx/arith_map.v]";
else if (!nocarry) {
techmap_files += " -map +/xilinx/arith_map.v";
if (vpr)
techmap_files += " -D _EXPLICIT_CARRY";
else if (abc == "abc9")
techmap_files += " -D _CLB_CARRY";
}
run("techmap " + techmap_files);
run("opt -fast");
}