mirror of
https://github.com/YosysHQ/yosys
synced 2026-07-24 16:12:33 +00:00
flowmap: remove
This commit is contained in:
parent
f9023e92b4
commit
f0b5225134
8 changed files with 5 additions and 1656 deletions
|
|
@ -13,7 +13,6 @@ yosys_pass(synth
|
|||
check
|
||||
clean
|
||||
flatten
|
||||
flowmap
|
||||
fsm
|
||||
hierarchy
|
||||
memory
|
||||
|
|
|
|||
|
|
@ -92,9 +92,6 @@ struct SynthPass : public ScriptPass {
|
|||
log(" -abc9\n");
|
||||
log(" use new ABC9 flow (EXPERIMENTAL)\n");
|
||||
log("\n");
|
||||
log(" -flowmap\n");
|
||||
log(" use FlowMap LUT techmapping instead of ABC\n");
|
||||
log("\n");
|
||||
log(" -no-rw-check\n");
|
||||
log(" marks all recognized read ports as \"return don't-care value on\n");
|
||||
log(" read/write collision\" (same result as setting the no_rw_check\n");
|
||||
|
|
@ -115,7 +112,7 @@ struct SynthPass : public ScriptPass {
|
|||
}
|
||||
|
||||
string top_module, fsm_opts, memory_opts, abc, latches_opt;
|
||||
bool autotop, flatten, noalumacc, nofsm, noabc, noshare, flowmap, booth, arith_tree, hieropt, relative_share;
|
||||
bool autotop, flatten, noalumacc, nofsm, noabc, noshare, booth, arith_tree, hieropt, relative_share;
|
||||
int lut;
|
||||
std::vector<std::string> techmap_maps;
|
||||
|
||||
|
|
@ -133,7 +130,6 @@ struct SynthPass : public ScriptPass {
|
|||
nofsm = false;
|
||||
noabc = false;
|
||||
noshare = false;
|
||||
flowmap = false;
|
||||
booth = false;
|
||||
arith_tree = false;
|
||||
hieropt = false;
|
||||
|
|
@ -216,10 +212,6 @@ struct SynthPass : public ScriptPass {
|
|||
abc = "abc9";
|
||||
continue;
|
||||
}
|
||||
if (args[argidx] == "-flowmap") {
|
||||
flowmap = true;
|
||||
continue;
|
||||
}
|
||||
if (args[argidx] == "-no-rw-check") {
|
||||
memory_opts += " -no-rw-check";
|
||||
continue;
|
||||
|
|
@ -246,8 +238,6 @@ struct SynthPass : public ScriptPass {
|
|||
|
||||
if (abc == "abc9" && !lut)
|
||||
log_cmd_error("ABC9 flow only supported for FPGA synthesis (using '-lut' option)\n");
|
||||
if (flowmap && !lut)
|
||||
log_cmd_error("FlowMap is only supported for FPGA synthesis (using '-lut' option)\n");
|
||||
|
||||
log_header(design, "Executing SYNTH pass.\n");
|
||||
log_push();
|
||||
|
|
@ -334,16 +324,13 @@ struct SynthPass : public ScriptPass {
|
|||
if (help_mode) {
|
||||
run(techmap_cmd + " -map +/gate2lut.v", "(if -noabc and -lut)");
|
||||
run("clean; opt_lut", " (if -noabc and -lut)");
|
||||
run("flowmap -maxlut K", " (if -flowmap and -lut)");
|
||||
} else if (noabc && lut) {
|
||||
run(stringf("%s -map +/gate2lut.v -D LUT_WIDTH=%d", techmap_cmd, lut));
|
||||
run("clean; opt_lut");
|
||||
} else if (flowmap) {
|
||||
run(stringf("flowmap -maxlut %d", lut));
|
||||
}
|
||||
run("opt -fast" + hieropt_flag);
|
||||
|
||||
if ((!noabc && !flowmap) || help_mode) {
|
||||
if (!noabc || help_mode) {
|
||||
#ifdef YOSYS_ENABLE_ABC
|
||||
if (help_mode) {
|
||||
run(abc, " (unless -noabc, unless -lut)");
|
||||
|
|
|
|||
|
|
@ -38,7 +38,6 @@ yosys_pass(synth_ice40
|
|||
deminout
|
||||
dfflegalize
|
||||
flatten
|
||||
flowmap
|
||||
fsm
|
||||
hierarchy
|
||||
ice40_braminit
|
||||
|
|
|
|||
|
|
@ -109,9 +109,6 @@ struct SynthIce40Pass : public ScriptPass
|
|||
log(" -noabc9\n");
|
||||
log(" disable use of new ABC9 flow\n");
|
||||
log("\n");
|
||||
log(" -flowmap\n");
|
||||
log(" use FlowMap LUT techmapping instead of abc (EXPERIMENTAL)\n");
|
||||
log("\n");
|
||||
log(" -no-rw-check\n");
|
||||
log(" marks all recognized read ports as \"return don't-care value on\n");
|
||||
log(" read/write collision\" (same result as setting the no_rw_check\n");
|
||||
|
|
@ -130,7 +127,7 @@ struct SynthIce40Pass : public ScriptPass
|
|||
}
|
||||
|
||||
string top_opt, blif_file, edif_file, json_file, device_opt, latches;
|
||||
bool nocarry, nodffe, nobram, spram, dsp, flatten, retime, noabc, abc2, vpr, abc9, dff, flowmap, no_rw_check;
|
||||
bool nocarry, nodffe, nobram, spram, dsp, flatten, retime, noabc, abc2, vpr, abc9, dff, no_rw_check;
|
||||
int min_ce_use;
|
||||
|
||||
void clear_flags() override
|
||||
|
|
@ -151,7 +148,6 @@ struct SynthIce40Pass : public ScriptPass
|
|||
abc2 = false;
|
||||
vpr = false;
|
||||
abc9 = true;
|
||||
flowmap = false;
|
||||
device_opt = "hx";
|
||||
no_rw_check = false;
|
||||
latches = "error";
|
||||
|
|
@ -257,10 +253,6 @@ struct SynthIce40Pass : public ScriptPass
|
|||
device_opt = args[++argidx];
|
||||
continue;
|
||||
}
|
||||
if (args[argidx] == "-flowmap") {
|
||||
flowmap = true;
|
||||
continue;
|
||||
}
|
||||
if (args[argidx] == "-no-rw-check") {
|
||||
no_rw_check = true;
|
||||
continue;
|
||||
|
|
@ -284,10 +276,6 @@ struct SynthIce40Pass : public ScriptPass
|
|||
log_cmd_error("-retime option not currently compatible with -abc9!\n");
|
||||
if (abc9 && noabc)
|
||||
log_cmd_error("-abc9 is incompatible with -noabc!\n");
|
||||
if (abc9 && flowmap)
|
||||
log_cmd_error("-abc9 is incompatible with -flowmap!\n");
|
||||
if (flowmap && noabc)
|
||||
log_cmd_error("-flowmap is incompatible with -noabc!\n");
|
||||
|
||||
log_header(design, "Executing SYNTH_ICE40 pass.\n");
|
||||
log_push();
|
||||
|
|
@ -422,12 +410,10 @@ struct SynthIce40Pass : public ScriptPass
|
|||
if (latches == "error" || help_mode)
|
||||
run("check -latchonly -assert", "(only if -latches error, the default)");
|
||||
run("techmap -map +/ice40/latches_map.v");
|
||||
if (noabc || flowmap || help_mode) {
|
||||
run("simplemap", " (if -noabc or -flowmap)");
|
||||
if (noabc || help_mode) {
|
||||
run("simplemap", " (if -noabc)");
|
||||
if (noabc || help_mode)
|
||||
run("techmap -map +/gate2lut.v -D LUT_WIDTH=4", "(only if -noabc)");
|
||||
if (flowmap || help_mode)
|
||||
run("flowmap -maxlut 4", "(only if -flowmap)");
|
||||
}
|
||||
if (!noabc) {
|
||||
if (abc9) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue