3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-07-18 02:16:41 +00:00

verific: Improve logic generated for SVA value change expressions

The previously generated logic assumed an unconstrained past value in
the initial state and did not handle 'x values. While the current formal
verification flow uses 2-valued logic, SVA value change expressions
require a past value of 'x during the initial state to behave in the
expected way (i.e. to consider both an initial 0 and an initial 1 as
$changed and an initial 1 as $rose and an initial 0 as $fell).

This patch now generates logic that at the same time

	a) provides the expected behavior in a 2-valued logic setting, not
	   depending on any dont-care optimizations, and

	b) properly handles 'x values in yosys simulation
This commit is contained in:
Jannis Harder 2022-05-09 15:04:01 +02:00
parent 58b23954e8
commit a855d62b42
8 changed files with 121 additions and 11 deletions

View file

@ -0,0 +1,3 @@
read -sv sva_value_change_sim.sv
hierarchy -top top
sim -clock clk -fst sva_value_change_sim.fst