File tree Expand file tree Collapse file tree 3 files changed +13
-1
lines changed
regression/ebmc/smv-word-level Expand file tree Collapse file tree 3 files changed +13
-1
lines changed Original file line number Diff line number Diff line change 11CORE
2- verilog1.v
2+ verilog1.sv
33--smv-word-level
44^MODULE main$
55^VAR x : unsigned word\[32\];$
66^INIT main\.x = 0ud32_0$
77^INVAR Verilog::main\.x_aux0 = main\.x \+ 0ud32_1$
88^TRANS next\(main\.x\) = Verilog::main\.x_aux0$
9+ ^LTLSPEC F main\.x = 0sd32_10$
910^EXIT=0$
1011^SIGNAL=0$
1112--
Original file line number Diff line number Diff line change @@ -7,4 +7,6 @@ module main(input clk);
77 always @ (posedge clk)
88 x = x + 1 ;
99
10+ initial assert property (s_eventually x == 10 );
11+
1012endmodule
Original file line number Diff line number Diff line change @@ -186,6 +186,15 @@ static void smv_properties(
186186 {
187187 out << " LTLSPEC " << expr2smv (property.normalized_expr , ns);
188188 }
189+ else if (is_SVA (property.normalized_expr ))
190+ {
191+ // we can turn some SVA properties into LTL
192+ auto ltl_opt = SVA_to_LTL (property.normalized_expr );
193+ if (ltl_opt.has_value ())
194+ out << " LTLSPEC " << expr2smv (ltl_opt.value (), ns);
195+ else
196+ out << " -- " << property.identifier << " : SVA not converted\n " ;
197+ }
189198 else
190199 out << " -- " << property.identifier << " : not converted\n " ;
191200
You can’t perform that action at this time.
0 commit comments