aboutsummaryrefslogtreecommitdiffstats
path: root/techlibs
diff options
context:
space:
mode:
authorEddie Hung <eddie@fpgeh.com>2019-12-09 11:48:28 -0800
committerEddie Hung <eddie@fpgeh.com>2019-12-09 11:48:28 -0800
commite05372778a26e5cbc5166f208eddc6a1b42ed198 (patch)
tree3eb2cbc02e2202554f3ac76f40a3dd5f81a07fb0 /techlibs
parent946d5854c0b2e63a3757a0fbdf41276255967bc8 (diff)
downloadyosys-e05372778a26e5cbc5166f208eddc6a1b42ed198.tar.gz
yosys-e05372778a26e5cbc5166f208eddc6a1b42ed198.tar.bz2
yosys-e05372778a26e5cbc5166f208eddc6a1b42ed198.zip
ice40_wrapcarry to really preserve attributes via -unwrap option
Diffstat (limited to 'techlibs')
-rw-r--r--techlibs/ice40/cells_map.v19
-rw-r--r--techlibs/ice40/synth_ice40.cc1
2 files changed, 1 insertions, 19 deletions
diff --git a/techlibs/ice40/cells_map.v b/techlibs/ice40/cells_map.v
index efd763ef6..759549e30 100644
--- a/techlibs/ice40/cells_map.v
+++ b/techlibs/ice40/cells_map.v
@@ -61,22 +61,3 @@ module \$lut (A, Y);
endgenerate
endmodule
`endif
-
-`ifndef NO_ADDER
-module \$__ICE40_CARRY_WRAPPER (output CO, O, input A, B, CI, I0, I3);
- parameter LUT = 0;
- SB_CARRY _TECHMAP_REPLACE_ (
- .I0(A),
- .I1(B),
- .CI(CI),
- .CO(CO)
- );
- \$lut #(
- .WIDTH(4),
- .LUT(LUT)
- ) lut (
- .A({I0,A,B,I3}),
- .Y(O)
- );
-endmodule
-`endif
diff --git a/techlibs/ice40/synth_ice40.cc b/techlibs/ice40/synth_ice40.cc
index 901194b06..ed7a16c08 100644
--- a/techlibs/ice40/synth_ice40.cc
+++ b/techlibs/ice40/synth_ice40.cc
@@ -363,6 +363,7 @@ struct SynthIce40Pass : public ScriptPass
else
run(abc + " -dress -lut 4", "(skip if -noabc)");
}
+ run("ice40_wrapcarry -unwrap");
run("techmap -D NO_LUT -map +/ice40/cells_map.v");
run("clean");
run("opt_lut -dlogic SB_CARRY:I0=2:I1=1:CI=0");