mirror of
https://github.com/YosysHQ/yosys
synced 2025-09-01 15:50:42 +00:00
Adding latch tests for shift&mask AST dynamic part-select enhancements
This commit is contained in:
parent
5c426d2bff
commit
3c2a1171ff
18 changed files with 326 additions and 69 deletions
|
@ -3,18 +3,18 @@ read_verilog ./dynamic_part_select/original.v
|
|||
proc
|
||||
rename -top gold
|
||||
design -stash gold
|
||||
|
||||
|
||||
read_verilog ./dynamic_part_select/original_gate.v
|
||||
proc
|
||||
rename -top gate
|
||||
design -stash gate
|
||||
|
||||
|
||||
design -copy-from gold -as gold gold
|
||||
design -copy-from gate -as gate gate
|
||||
|
||||
|
||||
miter -equiv -make_assert -make_outcmp -flatten gold gate equiv
|
||||
sat -prove-asserts -seq 10 -show-public -verify -set-init-zero equiv
|
||||
|
||||
|
||||
### Multiple blocking assingments ###
|
||||
design -reset
|
||||
read_verilog ./dynamic_part_select/multiple_blocking.v
|
||||
|
@ -29,7 +29,7 @@ design -stash gate
|
|||
|
||||
design -copy-from gold -as gold gold
|
||||
design -copy-from gate -as gate gate
|
||||
|
||||
|
||||
miter -equiv -make_assert -make_outcmp -flatten gold gate equiv
|
||||
sat -prove-asserts -seq 10 -show-public -verify -set-init-zero equiv
|
||||
|
||||
|
@ -39,7 +39,7 @@ read_verilog ./dynamic_part_select/nonblocking.v
|
|||
proc
|
||||
rename -top gold
|
||||
design -stash gold
|
||||
|
||||
|
||||
read_verilog ./dynamic_part_select/nonblocking_gate.v
|
||||
proc
|
||||
rename -top gate
|
||||
|
@ -47,7 +47,7 @@ design -stash gate
|
|||
|
||||
design -copy-from gold -as gold gold
|
||||
design -copy-from gate -as gate gate
|
||||
|
||||
|
||||
miter -equiv -make_assert -make_outcmp -flatten gold gate equiv
|
||||
sat -prove-asserts -seq 10 -show-public -verify -set-init-zero equiv
|
||||
|
||||
|
@ -57,7 +57,7 @@ read_verilog ./dynamic_part_select/forloop_select.v
|
|||
proc
|
||||
rename -top gold
|
||||
design -stash gold
|
||||
|
||||
|
||||
read_verilog ./dynamic_part_select/forloop_select_gate.v
|
||||
proc
|
||||
rename -top gate
|
||||
|
@ -65,7 +65,7 @@ design -stash gate
|
|||
|
||||
design -copy-from gold -as gold gold
|
||||
design -copy-from gate -as gate gate
|
||||
|
||||
|
||||
miter -equiv -make_assert -make_outcmp -flatten gold gate equiv
|
||||
sat -prove-asserts -seq 10 -show-public -verify -set-init-zero equiv
|
||||
|
||||
|
@ -75,12 +75,12 @@ read_verilog ./dynamic_part_select/reset_test.v
|
|||
proc
|
||||
rename -top gold
|
||||
design -stash gold
|
||||
|
||||
|
||||
read_verilog ./dynamic_part_select/reset_test_gate.v
|
||||
proc
|
||||
rename -top gate
|
||||
design -stash gate
|
||||
|
||||
|
||||
design -copy-from gold -as gold gold
|
||||
design -copy-from gate -as gate gate
|
||||
|
||||
|
@ -93,14 +93,70 @@ read_verilog ./dynamic_part_select/reversed.v
|
|||
proc
|
||||
rename -top gold
|
||||
design -stash gold
|
||||
|
||||
|
||||
read_verilog ./dynamic_part_select/reversed_gate.v
|
||||
proc
|
||||
rename -top gate
|
||||
design -stash gate
|
||||
|
||||
design -copy-from gold -as gold gold
|
||||
design -copy-from gate -as gate gate
|
||||
|
||||
miter -equiv -make_assert -make_outcmp -flatten gold gate equiv
|
||||
sat -prove-asserts -seq 10 -show-public -verify -set-init-zero equiv
|
||||
|
||||
### Latches
|
||||
## Issue 1990
|
||||
design -reset
|
||||
read_verilog ./dynamic_part_select/latch_1990.v
|
||||
hierarchy -top latch_1990; prep; async2sync
|
||||
rename -top gold
|
||||
design -stash gold
|
||||
|
||||
read_verilog ./dynamic_part_select/latch_1990_gate.v
|
||||
hierarchy -top latch_1990_gate; prep
|
||||
rename -top gate
|
||||
design -stash gate
|
||||
|
||||
design -copy-from gold -as gold gold
|
||||
design -copy-from gate -as gate gate
|
||||
|
||||
miter -equiv -make_assert -make_outcmp -flatten gold gate equiv
|
||||
sat -prove-asserts -seq 10 -show-public -verify -set-init-zero equiv
|
||||
miter -equiv -make_assert -make_outcmp -flatten gold gate equiv
|
||||
sat -prove-asserts -show-public -verify -set-init-zero equiv
|
||||
|
||||
###
|
||||
## Part select with obvious latch, expected to fail due comparison with old shift&mask AST transformation
|
||||
design -reset
|
||||
read_verilog ./dynamic_part_select/latch_002.v
|
||||
hierarchy -top latch_002; prep; async2sync
|
||||
rename -top gold
|
||||
design -stash gold
|
||||
|
||||
read_verilog ./dynamic_part_select/latch_002_gate.v
|
||||
hierarchy -top latch_002_gate; prep; async2sync
|
||||
rename -top gate
|
||||
design -stash gate
|
||||
|
||||
design -copy-from gold -as gold gold
|
||||
design -copy-from gate -as gate gate
|
||||
|
||||
miter -equiv -make_assert -make_outcmp -flatten gold gate equiv
|
||||
sat -prove-asserts -seq 10 -show-public -falsify -set-init-zero equiv
|
||||
|
||||
## Part select + latch, with no shift&mask
|
||||
design -reset
|
||||
read_verilog ./dynamic_part_select/latch_002.v
|
||||
hierarchy -top latch_002; prep; async2sync
|
||||
rename -top gold
|
||||
design -stash gold
|
||||
|
||||
read_verilog ./dynamic_part_select/latch_002_gate_good.v
|
||||
hierarchy -top latch_002_gate; prep; async2sync
|
||||
rename -top gate
|
||||
design -stash gate
|
||||
|
||||
design -copy-from gold -as gold gold
|
||||
design -copy-from gate -as gate gate
|
||||
|
||||
miter -equiv -make_assert -make_outcmp -flatten gold gate equiv
|
||||
sat -prove-asserts -seq 10 -show-public -verify -set-init-zero equiv
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue