Add a configurable moving_average implementaion, that has a configurable window size and is enable triggered. Also add a moving_average_wrapper that instantiates 2 moving_average instances (an inner and an outer) to lower the memory resource requirement for large window sizes. Effective window size is OUTER*INNER, whereas the resources are only OUTER+INNER. A trigger signal signals when the average is "valid". Accompanying testebench was also implemented.
46 lines
2.3 KiB
Plaintext
46 lines
2.3 KiB
Plaintext
onerror {resume}
|
|
quietly WaveActivateNextPane {} 0
|
|
add wave -noupdate -divider SYSTEM
|
|
add wave -noupdate /l0_moving_average_wrapper_test1/uut/clk
|
|
add wave -noupdate /l0_moving_average_wrapper_test1/uut/reset
|
|
add wave -noupdate -divider WRAPPER
|
|
add wave -noupdate -radix unsigned /l0_moving_average_wrapper_test1/uut/data_in
|
|
add wave -noupdate -radix unsigned /l0_moving_average_wrapper_test1/uut/average
|
|
add wave -noupdate /l0_moving_average_wrapper_test1/uut/trigger
|
|
add wave -noupdate /l0_moving_average_wrapper_test1/uut/overflow
|
|
add wave -noupdate -divider INNER
|
|
add wave -noupdate /l0_moving_average_wrapper_test1/uut/inner_average_inst/enable
|
|
add wave -noupdate -radix unsigned /l0_moving_average_wrapper_test1/uut/inner_average_inst/data_in
|
|
add wave -noupdate -radix unsigned /l0_moving_average_wrapper_test1/uut/inner_average_inst/average
|
|
add wave -noupdate /l0_moving_average_wrapper_test1/uut/inner_average_inst/overflow
|
|
add wave -noupdate /l0_moving_average_wrapper_test1/uut/inner_average_inst/fifo_full
|
|
add wave -noupdate -divider OUTER
|
|
add wave -noupdate /l0_moving_average_wrapper_test1/uut/outer_average_inst/enable
|
|
add wave -noupdate -radix unsigned /l0_moving_average_wrapper_test1/uut/outer_average_inst/data_in
|
|
add wave -noupdate -radix unsigned /l0_moving_average_wrapper_test1/uut/outer_average_inst/average
|
|
add wave -noupdate /l0_moving_average_wrapper_test1/uut/outer_average_inst/overflow
|
|
add wave -noupdate /l0_moving_average_wrapper_test1/uut/outer_average_inst/fifo_full
|
|
add wave -noupdate -divider MISC
|
|
add wave -noupdate /l0_moving_average_wrapper_test1/uut/inner_cnt
|
|
add wave -noupdate /l0_moving_average_wrapper_test1/uut/outer_cnt
|
|
add wave -noupdate /l0_moving_average_wrapper_test1/uut/inner_trigger
|
|
add wave -noupdate /l0_moving_average_wrapper_test1/uut/outer_trigger
|
|
TreeUpdate [SetDefaultTree]
|
|
WaveRestoreCursors {{Cursor 1} {400000 ps} 0}
|
|
quietly wave cursor active 1
|
|
configure wave -namecolwidth 150
|
|
configure wave -valuecolwidth 100
|
|
configure wave -justifyvalue left
|
|
configure wave -signalnamewidth 1
|
|
configure wave -snapdistance 10
|
|
configure wave -datasetprefix 0
|
|
configure wave -rowmargin 4
|
|
configure wave -childrowmargin 2
|
|
configure wave -gridoffset 0
|
|
configure wave -gridperiod 1
|
|
configure wave -griddelta 40
|
|
configure wave -timeline 0
|
|
configure wave -timelineunits ps
|
|
update
|
|
WaveRestoreZoom {0 ps} {1007104 ps}
|