unmap $__ICE40_CARRY_WRAPPER in test
authorEddie Hung <eddie@fpgeh.com>
Mon, 9 Dec 2019 22:20:35 +0000 (14:20 -0800)
committerEddie Hung <eddie@fpgeh.com>
Mon, 9 Dec 2019 22:20:35 +0000 (14:20 -0800)
tests/arch/ice40/ice40_opt.ys

index 860e2e211604207c5c657138e728a1ea2b7afacb..5186d48006ec8336791b8bbb4bb30a3bd81bf2e8 100644 (file)
@@ -1,3 +1,23 @@
+read_verilog -icells -formal <<EOT
+module \$__ICE40_CARRY_WRAPPER (output CO, O, input A, B, CI, I0, I3);
+  parameter LUT = 0;
+  SB_CARRY carry (
+    .I0(A),
+    .I1(B),
+    .CI(CI),
+    .CO(CO)
+  );
+  \$lut #(
+    .WIDTH(4),
+    .LUT(LUT)
+  ) lut (
+    .A({I0,A,B,I3}),
+    .Y(O)
+  );
+endmodule
+EOT
+design -stash unmap
+
 read_verilog -icells -formal <<EOT
 module top(input CI, I0, output [1:0] CO, output O);
     wire A = 1'b0, B = 1'b0;
@@ -20,7 +40,7 @@ module top(input CI, I0, output [1:0] CO, output O);
 endmodule
 EOT
 
-equiv_opt -assert -map +/ice40/cells_map.v -map +/ice40/cells_sim.v ice40_opt
+equiv_opt -assert -map %unmap -map +/ice40/cells_sim.v ice40_opt
 design -load postopt
 select -assert-count 1 t:*
 select -assert-count 1 t:$lut