aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEddie Hung <eddie@fpgeh.com>2019-09-20 08:41:40 -0700
committerEddie Hung <eddie@fpgeh.com>2019-09-20 08:41:40 -0700
commite4f4f6a9d5cf8bb23870fc483f16f66c80ceebab (patch)
treefb93cc40f629273d90995fc99506e4b2cf455f54
parenta0d3ecf8c6cf4710a53fa67a4f60ef7140ee0c3a (diff)
downloadyosys-e4f4f6a9d5cf8bb23870fc483f16f66c80ceebab.tar.gz
yosys-e4f4f6a9d5cf8bb23870fc483f16f66c80ceebab.tar.bz2
yosys-e4f4f6a9d5cf8bb23870fc483f16f66c80ceebab.zip
Move mul2dsp before wreduce
-rw-r--r--techlibs/ice40/synth_ice40.cc9
1 files changed, 4 insertions, 5 deletions
diff --git a/techlibs/ice40/synth_ice40.cc b/techlibs/ice40/synth_ice40.cc
index 284bc90d0..225603475 100644
--- a/techlibs/ice40/synth_ice40.cc
+++ b/techlibs/ice40/synth_ice40.cc
@@ -265,6 +265,10 @@ struct SynthIce40Pass : public ScriptPass
run("opt_clean");
run("check");
run("opt");
+ if (help_mode || dsp)
+ run("techmap -map +/mul2dsp.v -map +/ice40/dsp_map.v -D DSP_A_MAXWIDTH=16 -D DSP_B_MAXWIDTH=16 "
+ "-D DSP_A_MINWIDTH=2 -D DSP_Y_MINWIDTH=11 "
+ "-D DSP_NAME=$__MUL16X16", "(if -dsp)");
run("wreduce");
run("peepopt");
run("opt_clean");
@@ -273,11 +277,6 @@ struct SynthIce40Pass : public ScriptPass
run("opt_expr");
run("opt_clean");
if (help_mode || dsp) {
- run("techmap -map +/mul2dsp.v -map +/ice40/dsp_map.v -D DSP_A_MAXWIDTH=16 -D DSP_B_MAXWIDTH=16 "
- "-D DSP_A_MINWIDTH=2 -D DSP_Y_MINWIDTH=11 "
- "-D DSP_NAME=$__MUL16X16", "(if -dsp)");
- run("opt_expr -fine", " (if -dsp)");
- run("wreduce", " (if -dsp)");
run("ice40_dsp", " (if -dsp)");
run("chtype -set $mul t:$__soft_mul","(if -dsp)");
}