mirror of
https://github.com/YosysHQ/yosys
synced 2025-04-23 00:55:32 +00:00
verific: Fix conditions of SVAs with explicit clocks within procedures
For SVAs that have an explicit clock and are contained in a procedure which conditionally executes the assertion, verific expresses this using a mux with one input connected to constant 1 and the other output connected to an SVA_AT. The existing code only handled the case where the first input is connected to 1. This patch also handles the other case.
This commit is contained in:
parent
11e75bc27c
commit
96f64f4788
4 changed files with 27 additions and 5 deletions
11
tests/sva/nested_clk_else.sv
Normal file
11
tests/sva/nested_clk_else.sv
Normal file
|
@ -0,0 +1,11 @@
|
|||
module top (input clk, a, b);
|
||||
always @(posedge clk) begin
|
||||
if (a);
|
||||
else assume property (@(posedge clk) b);
|
||||
end
|
||||
|
||||
`ifndef FAIL
|
||||
assume property (@(posedge clk) !a);
|
||||
`endif
|
||||
assert property (@(posedge clk) b);
|
||||
endmodule
|
Loading…
Add table
Add a link
Reference in a new issue