clkpart -unpart into 'finalize'
authorEddie Hung <eddie@fpgeh.com>
Thu, 28 Nov 2019 20:59:43 +0000 (12:59 -0800)
committerEddie Hung <eddie@fpgeh.com>
Thu, 28 Nov 2019 20:59:43 +0000 (12:59 -0800)
techlibs/xilinx/synth_xilinx.cc

index 5bc55387ba629f69b10f0df9a494ef75ff5ad59e..554c42d689a26d1b39f36a70f213480da2b86bcc 100644 (file)
@@ -538,16 +538,14 @@ struct SynthXilinxPass : public ScriptPass
                                else
                                        abc9_opts += " -lut +/xilinx/abc9_xc7.lut";
                                run("abc9" + abc9_opts);
-                               run("clean");
-                               run("clkpart -unpart clkpart");
                        }
                        else {
                                if (nowidelut)
                                        run("abc -luts 2:2,3,6:5" + string(retime ? " -dff" : ""));
                                else
                                        run("abc -luts 2:2,3,6:5,10,20" + string(retime ? " -dff" : ""));
-                               run("clean");
                        }
+                       run("clean");
 
                        // This shregmap call infers fixed length shift registers after abc
                        //   has performed any necessary retiming
@@ -564,6 +562,9 @@ struct SynthXilinxPass : public ScriptPass
                }
 
                if (check_label("finalize")) {
+                       if (help_mode || abc9)
+                               run("clkpart -unpart clkpart", "(only if 'abc9')");
+
                        bool do_iopad = iopad || (ise && !noiopad);
                        if (help_mode || !noclkbuf) {
                                if (help_mode || do_iopad)