mirror of
https://github.com/YosysHQ/yosys
synced 2025-06-09 15:43:25 +00:00
51 lines
1.7 KiB
Text
51 lines
1.7 KiB
Text
read_verilog dff.v
|
|
prep
|
|
|
|
# create fst with 20 clock cycles (41 samples, 202ns)
|
|
sim -clock clk -fst sim_cycles.fst -n 20
|
|
|
|
logger -expect-no-warnings
|
|
|
|
# final step is 41
|
|
logger -expect log "Co-simulating cycle 41" 2
|
|
logger -warn "Co-simulating cycle 42"
|
|
sim -clock clk -r sim_cycles.fst -scope dff -n 21 -sim-cmp
|
|
sim -clock clk -r sim_cycles.fst -scope dff -stop 202 -sim-cmp
|
|
logger -check-expected
|
|
|
|
# over limit stops at final step
|
|
logger -expect log "Co-simulating cycle 41" 2
|
|
sim -clock clk -r sim_cycles.fst -scope dff -n 30 -sim-cmp
|
|
# -stop warns for over limit
|
|
logger -nowarn "Stop time is after simulation file end time"
|
|
sim -clock clk -r sim_cycles.fst -scope dff -stop 300 -sim-cmp
|
|
logger -check-expected
|
|
|
|
# don't auto step last
|
|
logger -expect log "Co-simulating cycle 40" 2
|
|
logger -warn "Co-simulating cycle 41"
|
|
sim -clock clk -r sim_cycles.fst -scope dff -n 20 -sim-cmp
|
|
sim -clock clk -r sim_cycles.fst -scope dff -stop 200 -sim-cmp
|
|
logger -check-expected
|
|
|
|
# -n 10 == -stop 100
|
|
# should simulate up to 20 and not more
|
|
logger -expect log "Co-simulating cycle 20" 2
|
|
logger -warn "Co-simulating cycle 21"
|
|
sim -clock clk -r sim_cycles.fst -scope dff -n 10 -sim-cmp
|
|
sim -clock clk -r sim_cycles.fst -scope dff -stop 100 -sim-cmp
|
|
logger -check-expected
|
|
|
|
# -n 1 == -stop 10
|
|
logger -expect log "Co-simulating cycle 2" 2
|
|
logger -warn "Co-simulating cycle 3"
|
|
sim -clock clk -r sim_cycles.fst -scope dff -n 1 -sim-cmp
|
|
sim -clock clk -r sim_cycles.fst -scope dff -stop 10 -sim-cmp
|
|
logger -check-expected
|
|
|
|
# -n 0 == -stop 0
|
|
logger -expect log "Co-simulating cycle 0" 2
|
|
logger -warn "Co-simulating cycle 1"
|
|
sim -clock clk -r sim_cycles.fst -scope dff -n 0 -sim-cmp
|
|
sim -clock clk -r sim_cycles.fst -scope dff -stop 0 -sim-cmp
|
|
logger -check-expected
|