synth_ice40 to decompose into 16x16
authorEddie Hung <eddie@fpgeh.com>
Thu, 18 Jul 2019 22:38:09 +0000 (15:38 -0700)
committerEddie Hung <eddie@fpgeh.com>
Thu, 18 Jul 2019 22:38:09 +0000 (15:38 -0700)
techlibs/ice40/synth_ice40.cc

index 0474e76e9273128c895157a686bcc1916df5d990..66446deb7e5cc875e098273a234f31c96041d194 100644 (file)
@@ -265,8 +265,10 @@ struct SynthIce40Pass : public ScriptPass
                        run("techmap -map +/cmp2lut.v -D LUT_WIDTH=4");
                        run("opt_expr");
                        run("opt_clean");
-                       if (help_mode || dsp)
+                       if (help_mode || dsp) {
+                               run("techmap -map +/mul2dsp.v -D DSP_A_MAXWIDTH=16 -D DSP_B_MAXWIDTH=16 -D DSP_NAME=$__MUL16X16");
                                run("ice40_dsp", "(if -dsp)");
+                       }
                        run("alumacc");
                        run("opt");
                        run("fsm");