diff options
author | diego <diego@symbioticeda.com> | 2020-04-16 13:31:05 -0500 |
---|---|---|
committer | diego <diego@symbioticeda.com> | 2020-04-16 13:31:05 -0500 |
commit | 87910732f15c900cbd752158258a8af12720d277 (patch) | |
tree | b4e9eec2b14a1f93315e9869b5413c2832eacd6c /tests/arch/xilinx/dynamic_part_select.ys | |
parent | e86ba3b94d7285ded20b4280ad52821cbca504fc (diff) | |
download | yosys-87910732f15c900cbd752158258a8af12720d277.tar.gz yosys-87910732f15c900cbd752158258a8af12720d277.tar.bz2 yosys-87910732f15c900cbd752158258a8af12720d277.zip |
Adding tests for dynamic part select optimisation
Diffstat (limited to 'tests/arch/xilinx/dynamic_part_select.ys')
-rw-r--r-- | tests/arch/xilinx/dynamic_part_select.ys | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/tests/arch/xilinx/dynamic_part_select.ys b/tests/arch/xilinx/dynamic_part_select.ys new file mode 100644 index 000000000..597229cc9 --- /dev/null +++ b/tests/arch/xilinx/dynamic_part_select.ys @@ -0,0 +1,59 @@ +#### Original testcase ### +read_verilog ../common/dynamic_part_select/original.v +hierarchy -top original +prep -flatten -top original +design -save gold + +equiv_opt -run :prove -map +/xilinx/cells_sim.v synth_xilinx -noiopad +miter -equiv -make_assert -flatten gold gate miter +sat -verify -prove-asserts -show-public -seq 10 -prove-skip 1 miter + +### Multiple blocking assingments ### +read_verilog ../common/dynamic_part_select/multiple_blocking.v +hierarchy -top multiple_blocking +prep -flatten -top multiple_blocking +design -save gold + +equiv_opt -run :prove -map +/xilinx/cells_sim.v synth_xilinx -noiopad +miter -equiv -make_assert -flatten gold gate miter +sat -verify -prove-asserts -show-public -seq 10 -prove-skip 1 miter + +### Non-blocking to the same output register ### +read_verilog ../common/dynamic_part_select/nonblocking.v +hierarchy -top nonblocking +prep -flatten -top nonblocking +design -save gold + +equiv_opt -run :prove -map +/xilinx/cells_sim.v synth_xilinx -noiopad +miter -equiv -make_assert -flatten gold gate miter +sat -verify -prove-asserts -show-public -seq 10 -prove-skip 1 miter + +### For-loop select, one dynamic input +read_verilog ../common/dynamic_part_select/forloop_select.v +hierarchy -top forloop_select +prep -flatten -top forloop_select +design -save gold + +equiv_opt -run :prove -map +/xilinx/cells_sim.v synth_xilinx -noiopad +miter -equiv -make_assert -flatten gold gate miter +sat -verify -prove-asserts -show-public -seq 5 -prove-skip 1 miter + +### Double loop (part-select, reset) ### +read_verilog ../common/dynamic_part_select/reset_test.v +hierarchy -top reset_test +prep -flatten -top reset_test +design -save gold + +equiv_opt -run :prove -map +/xilinx/cells_sim.v synth_xilinx -noiopad +miter -equiv -make_assert -flatten gold gate miter +sat -verify -prove-asserts -show-public -seq 10 -prove-skip 1 miter + +### Reversed part-select case ### +read_verilog ../common/dynamic_part_select/reversed.v +hierarchy -top reversed +prep -flatten -top reversed +design -save gold + +equiv_opt -run :prove -map +/xilinx/cells_sim.v synth_xilinx -noiopad +miter -equiv -make_assert -flatten gold gate miter +sat -verify -prove-asserts -show-public -seq 20 -prove-skip 1 miter |