Merge remote-tracking branch 'origin/master' into xc7dsp
authorEddie Hung <eddie@fpgeh.com>
Fri, 19 Jul 2019 03:36:48 +0000 (20:36 -0700)
committerEddie Hung <eddie@fpgeh.com>
Fri, 19 Jul 2019 03:36:48 +0000 (20:36 -0700)
1  2 
techlibs/ecp5/Makefile.inc
techlibs/ecp5/synth_ecp5.cc

Simple merge
index 8e243f7a66dd70e8015bc03018ab007fce3eb897,143d1f95c0c48828d133e77a12c183c9a077357a..3129ba929f5159779e2a1d8e6722ecd7899805ed
@@@ -99,7 -96,7 +99,7 @@@ struct SynthEcp5Pass : public ScriptPas
        }
  
        string top_opt, blif_file, edif_file, json_file;
-       bool noccu2, nodffe, nobram, nodram, nowidelut, flatten, retime, abc2, abc9, dsp, vpr;
 -      bool noccu2, nodffe, nobram, nolutram, nowidelut, flatten, retime, abc2, abc9, vpr;
++      bool noccu2, nodffe, nobram, nolutram, nowidelut, flatten, retime, abc2, abc9, dsp, vpr;
  
        void clear_flags() YS_OVERRIDE
        {
  
                if (check_label("coarse"))
                {
 -                      run("synth -run coarse");
 +                      run("opt_expr");
 +                      run("opt_clean");
 +                      run("check");
 +                      run("opt");
 +                      run("wreduce");
 +                      run("peepopt");
 +                      run("opt_clean");
 +                      run("share");
 +                      run("techmap -map +/cmp2lut.v -D LUT_WIDTH=4");
 +                      run("opt_expr");
 +                      run("opt_clean");
 +                      if (dsp) {
 +                              run("techmap -map +/mul2dsp.v -D DSP_A_MAXWIDTH=18 -D DSP_B_MAXWIDTH=18 -D DSP_NAME=$__MUL18X18");
 +                              run("clean");
 +                              run("techmap -map +/ecp5/dsp_map.v");
 +                      }
 +                      run("alumacc");
 +                      run("opt");
 +                      run("fsm");
 +                      run("opt -fast");
 +                      run("memory -nomap");
 +                      run("opt_clean");
                }
  
-               if (!nobram && check_label("bram", "(skip if -nobram)"))
+               if (!nobram && check_label("map_bram", "(skip if -nobram)"))
                {
                        run("memory_bram -rules +/ecp5/bram.txt");
                        run("techmap -map +/ecp5/brams_map.v");