3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-04-24 01:25:33 +00:00

machxo2: Switch to LUT4 sim model which propagates less undefined/don't care values.

This commit is contained in:
William D. Jones 2021-02-21 09:14:37 -05:00 committed by Marcelina Kościelnicka
parent 353ace5034
commit ae07298a6b
2 changed files with 6 additions and 12 deletions

View file

@ -4,17 +4,11 @@ module LUT4 #(
input A, B, C, D,
output Z
);
wire [3:0] I;
wire [3:0] I_pd;
genvar ii;
generate
for (ii = 0; ii < 4; ii = ii + 1'b1)
assign I_pd[ii] = (I[ii] === 1'bz) ? 1'b0 : I[ii];
endgenerate
assign I = {D, C, B, A};
assign Z = INIT[I_pd];
// This form of LUT propagates as few x's as possible.
wire [7:0] s3 = D ? INIT[15:8] : INIT[7:0];
wire [3:0] s2 = C ? s3[ 7:4] : s3[3:0];
wire [1:0] s1 = B ? s2[ 3:2] : s2[1:0];
assign Z = A ? s1[1] : s1[0];
endmodule
module FACADE_FF #(