mirror of
https://github.com/YosysHQ/yosys
synced 2025-04-15 21:38:45 +00:00
Replace the contents of all blackboxes in the design with a formal cut point. Includes test script.
34 lines
629 B
Plaintext
34 lines
629 B
Plaintext
read_verilog -specify << EOT
|
|
module top(input a, b, output o);
|
|
wire c, d;
|
|
bb bb1 (.a (a), .b (b), .o (c));
|
|
wb wb1 (.a (a), .b (b), .o (d));
|
|
some_mod some_inst (.a (c), .b (d), .o (o));
|
|
endmodule
|
|
|
|
(* blackbox *)
|
|
module bb(input a, b, output o);
|
|
assign o = a | b;
|
|
specify
|
|
(a => o) = 1;
|
|
endspecify
|
|
endmodule
|
|
|
|
(* whitebox *)
|
|
module wb(input a, b, output o);
|
|
assign o = a ^ b;
|
|
endmodule
|
|
|
|
module some_mod(input a, b, output o);
|
|
assign o = a & b;
|
|
endmodule
|
|
EOT
|
|
|
|
select top
|
|
|
|
select -assert-count 0 t:$anyseq
|
|
select -assert-count 2 =t:?b
|
|
cutpoint -blackbox =*
|
|
select -assert-count 2 t:$anyseq
|
|
select -assert-count 2 t:?b
|