3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-07-29 23:43:16 +00:00

Added "pmuxtree" command

This commit is contained in:
Clifford Wolf 2015-04-07 20:27:10 +02:00
parent 1f33b2a490
commit 724cead61d
3 changed files with 164 additions and 0 deletions

51
tests/various/muxcover.ys Normal file
View file

@ -0,0 +1,51 @@
read_verilog -formal <<EOT
module gate (input [2:0] A, B, C, D, X, output reg [2:0] Y);
always @*
(* parallel_case *)
casez (X)
3'b??1: Y = A;
3'b?1?: Y = B;
3'b1??: Y = C;
3'b000: Y = D;
endcase
endmodule
EOT
## Examle usage for "pmuxtree" and "muxcover"
proc
pmuxtree
techmap
muxcover -mux4
splitnets -ports
clean
# show
## Equivalence checking
read_verilog -formal <<EOT
module gold (input [2:0] A, B, C, D, X, output reg [2:0] Y);
always @*
casez (X)
3'b001: Y = A;
3'b010: Y = B;
3'b100: Y = C;
3'b000: Y = D;
default: Y = 'bx;
endcase
endmodule
EOT
proc
splitnets -ports
techmap -map +/simcells.v t:$_MUX4_
equiv_make gold gate equiv
hierarchy -top equiv
equiv_simple -undef
equiv_status -assert