Another muxpack test
authorEddie Hung <eddie@fpgeh.com>
Fri, 7 Jun 2019 15:34:58 +0000 (08:34 -0700)
committerEddie Hung <eddie@fpgeh.com>
Fri, 7 Jun 2019 15:34:58 +0000 (08:34 -0700)
tests/various/muxpack.v
tests/various/muxpack.ys

index f1bd5ea8e25d6521d85fe940ad1adbcc9bd19396..41dfed3960cb2cec5c8996555414f456a74c2713 100644 (file)
@@ -136,3 +136,20 @@ always @*
       else
        o <= i[7*W+:W];
 endmodule
+
+module mux_if_bal_5_1 #(parameter N=5, parameter W=1) (input [N*W-1:0] i, input [$clog2(N)-1:0] s, output reg [W-1:0] o);
+always @*
+    if (s[0] == 1'b0)
+     if (s[1] == 1'b0)
+      if (s[2] == 1'b0)
+       o <= i[0*W+:W];
+      else
+       o <= i[1*W+:W];
+     else
+      if (s[2] == 1'b0)
+       o <= i[2*W+:W];
+      else
+       o <= i[3*W+:W];
+    else
+     o <= i[4*W+:W];
+endmodule
index 9ea743b9ffba7006784e2ac56298524af410c148..dd3c143d8348448c50cfa5eba5f2eea069e7c0c5 100644 (file)
@@ -148,3 +148,18 @@ design -import gold -as gold
 design -import gate -as gate
 miter -equiv -flatten -make_assert -make_outputs gold gate miter
 sat -verify -prove-asserts -show-ports miter
+
+design -load read
+hierarchy -top mux_if_bal_5_1
+prep
+design -save gold
+muxpack
+opt
+stat
+select -assert-count 2 t:$mux
+select -assert-count 1 t:$pmux
+design -stash gate
+design -import gold -as gold
+design -import gate -as gate
+miter -equiv -flatten -make_assert -make_outputs gold gate miter
+sat -verify -prove-asserts -show-ports miter