Rework help_mode for synth_xilinx -widemux

This commit is contained in:
Eddie Hung 2019-06-26 17:41:21 -07:00
parent da870e62d9
commit cae69a3edd
1 changed files with 23 additions and 22 deletions

View File

@ -276,9 +276,11 @@ struct SynthXilinxPass : public ScriptPass
run("memory_map");
run("dffsr2dff");
run("dff2dffe");
if (widemux > 0 || help_mode) {
if (help_mode) {
run("simplemap t:$mux", " ('-widemux' only)");
if (widemux > 0 || help_mode) {
run("muxcover -dmux=0 -mux8=<cost> -mux16=<cost>, ('-widemux' only)");
}
else if (widemux > 0) {
std::string muxcover_args = " -dmux=0";
switch (widemux) {
// NB: Cost of mux2 is 100; mux8 should cost between 3 and 4
@ -297,8 +299,7 @@ struct SynthXilinxPass : public ScriptPass
case 15: muxcover_args += " -mux16=1350"; break;
default: muxcover_args += " -mux16=1450"; break;
}
run("muxcover " + muxcover_args, "('-widemux' only)");
}
run("muxcover " + muxcover_args);
}
run("opt -full");