abc9_ops: -reintegrate to use derived_type for box_ports
authorEddie Hung <eddie@fpgeh.com>
Wed, 5 Feb 2020 22:46:48 +0000 (14:46 -0800)
committerEddie Hung <eddie@fpgeh.com>
Wed, 5 Feb 2020 22:46:48 +0000 (14:46 -0800)
passes/techmap/abc9_ops.cc
tests/arch/xilinx/dffs.ys

index 2b4a5c8021d83831a84aa56d10dd5f971118c075..7071f0de46f296816abd100faed33d08d0085260 100644 (file)
@@ -797,7 +797,7 @@ void reintegrate(RTLIL::Module *module)
                        }
 
                        int input_count = 0, output_count = 0;
-                       for (const auto &port_name : box_ports.at(cell->type)) {
+                       for (const auto &port_name : box_ports.at(derived_type)) {
                                RTLIL::Wire *w = box_module->wire(port_name);
                                log_assert(w);
 
index dc764b0337f3145b5e46c3559663ac664f39b57a..deaf16bd63d3d5a013a0be4458574075c2651390 100644 (file)
@@ -8,7 +8,6 @@ design -load postopt # load the post-opt design (otherwise equiv_opt loads the p
 cd dff # Constrain all select calls below inside the top module
 select -assert-count 1 t:BUFG
 select -assert-count 1 t:FDRE
-
 select -assert-none t:BUFG t:FDRE %% t:* %D
 
 
@@ -20,6 +19,27 @@ design -load postopt # load the post-opt design (otherwise equiv_opt loads the p
 cd dffe # Constrain all select calls below inside the top module
 select -assert-count 1 t:BUFG
 select -assert-count 1 t:FDRE
+select -assert-none t:BUFG t:FDRE %% t:* %D
+
+
+design -load read
+hierarchy -top dff
+proc
+equiv_opt -assert -map +/xilinx/cells_sim.v synth_xilinx -abc9 -dff -noiopad # equivalency check
+design -load postopt # load the post-opt design (otherwise equiv_opt loads the pre-opt design)
+cd dff # Constrain all select calls below inside the top module
+select -assert-count 1 t:BUFG
+select -assert-count 1 t:FDRE
+select -assert-none t:BUFG t:FDRE %% t:* %D
+
 
+design -load read
+hierarchy -top dffe
+proc
+equiv_opt -assert -map +/xilinx/cells_sim.v synth_xilinx -abc9 -dff -noiopad # equivalency check
+design -load postopt # load the post-opt design (otherwise equiv_opt loads the pre-opt design)
+cd dffe # Constrain all select calls below inside the top module
+select -assert-count 1 t:BUFG
+select -assert-count 1 t:FDRE
 select -assert-none t:BUFG t:FDRE %% t:* %D