Add "synth_intel --noiopads"

Signed-off-by: Clifford Wolf <clifford@clifford.at>
This commit is contained in:
Clifford Wolf 2018-04-30 13:02:56 +02:00
parent d9a2b43014
commit b4c1d3084f
1 changed files with 11 additions and 2 deletions

View File

@ -59,6 +59,9 @@ struct SynthIntelPass : public ScriptPass {
log(" from label is synonymous to 'begin', and empty to label is\n"); log(" from label is synonymous to 'begin', and empty to label is\n");
log(" synonymous to the end of the command list.\n"); log(" synonymous to the end of the command list.\n");
log("\n"); log("\n");
log(" -noiopads\n");
log(" do not use altsyncram cells in output netlist\n");
log("\n");
log(" -nobram\n"); log(" -nobram\n");
log(" do not use altsyncram cells in output netlist\n"); log(" do not use altsyncram cells in output netlist\n");
log("\n"); log("\n");
@ -74,7 +77,7 @@ struct SynthIntelPass : public ScriptPass {
} }
string top_opt, family_opt, vout_file, blif_file; string top_opt, family_opt, vout_file, blif_file;
bool retime, flatten, nobram; bool retime, flatten, nobram, noiopads;
virtual void clear_flags() YS_OVERRIDE virtual void clear_flags() YS_OVERRIDE
{ {
@ -85,6 +88,7 @@ struct SynthIntelPass : public ScriptPass {
retime = false; retime = false;
flatten = true; flatten = true;
nobram = false; nobram = false;
noiopads = false;
} }
virtual void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE virtual void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
@ -119,6 +123,10 @@ struct SynthIntelPass : public ScriptPass {
run_to = args[argidx].substr(pos+1); run_to = args[argidx].substr(pos+1);
continue; continue;
} }
if (args[argidx] == "-noiopads") {
noiopads = true;
continue;
}
if (args[argidx] == "-nobram") { if (args[argidx] == "-nobram") {
nobram = true; nobram = true;
continue; continue;
@ -216,7 +224,8 @@ struct SynthIntelPass : public ScriptPass {
if (check_label("map_cells")) if (check_label("map_cells"))
{ {
run("iopadmap -bits -outpad $__outpad I:O -inpad $__inpad O:I"); if (!noiopads)
run("iopadmap -bits -outpad $__outpad I:O -inpad $__inpad O:I", "(unless -noiopads)");
if(family_opt=="max10") if(family_opt=="max10")
run("techmap -map +/intel/max10/cells_map.v"); run("techmap -map +/intel/max10/cells_map.v");
else if(family_opt=="a10gx") else if(family_opt=="a10gx")