Tune abc9.script.flow
authorEddie Hung <eddie@fpgeh.com>
Fri, 10 Jan 2020 02:16:58 +0000 (18:16 -0800)
committerEddie Hung <eddie@fpgeh.com>
Fri, 10 Jan 2020 02:16:58 +0000 (18:16 -0800)
passes/techmap/abc9.cc

index aed662fc5e2360414f5611af0c3b32528cb0c144..b828404bcc228e42f3cc5b33d65e834cff061120 100644 (file)
@@ -737,21 +737,29 @@ struct Abc9Pass : public Pass {
                RTLIL::constpad["abc9.script.default.fast"] = "+&if {C} {W} {D} {R} -v";
                // Based on ABC's &flow
                RTLIL::constpad["abc9.script.flow"] = "+&scorr; &sweep;" \
+                       "&dch -C 500;" \
                        /* Round 1 */ \
-                       "&unmap; &if {C} {W} {D} {R}; &mfs;" \
+                       /* Map 1 */ "&unmap; &if {C} {W} {D} {R} -v; &save; &load; &mfs;" \
                        "&st; &dsdb;" \
-                       "&unmap; &if {C} {W} {D} {R}; &mfs;" \
+                       /* Map 2 */ "&unmap; &if {C} {W} {D} {R} -v; &save; &load; &mfs;" \
                        "&st; &syn2 -m -R 10; &dsdb;" \
                        "&blut -a -K 6;" \
-                       "&unmap; &if {C} {W} {D} {R}; &mfs;" \
+                       /* Map 3 */ "&unmap; &if {C} {W} {D} {R} -v; &save; &load; &mfs;" \
                        /* Round 2 */ \
                        "&st; &sopb;" \
-                       "&unmap; &if {C} {W} {D} {R}; &mfs;" \
+                       /* Map 1 */ "&unmap; &if {C} {W} {D} {R} -v; &save; &load; &mfs;" \
                        "&st; &dsdb;" \
-                       "&unmap; &if {C} {W} {D} {R}; &mfs;" \
+                       /* Map 2 */ "&unmap; &if {C} {W} {D} {R} -v; &save; &load; &mfs;" \
                        "&st; &syn2 -m -R 10; &dsdb;" \
                        "&blut -a -K 6;" \
-                       "&unmap; &if {C} {W} {D} {R} -v; &mfs";
+                       /* Map 3 */ "&unmap; &if {C} {W} {D} {R} -v; &save; &load; &mfs;" \
+                       /* Round 3 */ \
+                       /* Map 1 */ "&unmap; &if {C} {W} {D} {R} -v; &save; &load; &mfs;" \
+                       "&st; &dsdb;" \
+                       /* Map 2 */ "&unmap; &if {C} {W} {D} {R} -v; &save; &load; &mfs;" \
+                       "&st; &syn2 -m -R 10; &dsdb;" \
+                       "&blut -a -K 6;" \
+                       /* Map 3 */ "&unmap; &if {C} {W} {D} {R} -v; &save; &load; &mfs;";
                // Based on ABC's &flow2
                RTLIL::constpad["abc9.script.flow2"] = "+&scorr; &sweep;" \
                        /* Comm1 */ "&synch2 -K 6 -C 500; &if -m {C} {W} {D} {R} -v; &mfs "/*"-W 4 -M 500 -C 7000"*/"; &save;"\