URL
https://opencores.org/ocsvn/vhdl_wb_tb/vhdl_wb_tb/trunk
Subversion Repositories vhdl_wb_tb
Compare Revisions
- This comparison shows the changes necessary to convert path
/vhdl_wb_tb/trunk
- from Rev 18 to Rev 19
- ↔ Reverse comparison
Rev 18 → Rev 19
/bench/vhdl/tc_xxxx.vhd
70,6 → 70,7
begin |
---------------------------------------------------------------------- |
tc_xxxx_proc : process |
variable result_v : std_logic_vector(wishbone_data_width_c-1 downto 0); |
begin |
---------------------------------------------------------------------- |
-- standard signal initialization |
87,12 → 88,12
report "-----------------------------------------------------------------"; |
report "-- tc_xxxx: ADD_DESCRIPTION_HERE --"; |
report "-----------------------------------------------------------------"; |
-- |
report "--configure stimulator"; |
report "-----------------------------------------------------------------"; |
|
wb_write(stimulator_register0_c , 0, wb_i, wb_o); |
|
report "-----------------------------------------------------------------"; |
report "--configure verifier"; |
report "-----------------------------------------------------------------"; |
|
100,45 → 101,61
wb_write(verifier_register1_c , 16#2b#, wb_i, wb_o); |
report "--configuration done"; |
report "-----------------------------------------------------------------"; |
|
report "--starting stimulator"; |
report "-----------------------------------------------------------------"; |
|
report "-----------------------------------------------------------------"; |
report "-- stimulation run"; |
report "-----------------------------------------------------------------"; |
wb_write(stimulator_register0_c , 3, wb_i, wb_o); -- shift '1' in |
wb_write(stimulator_register0_c , 1, wb_i, wb_o); |
wb_write(stimulator_register0_c , 2, wb_i, wb_o); -- shift '0' in |
wb_write(stimulator_register0_c , 0, wb_i, wb_o); |
|
-- read current value in verifier for wb_read illustration |
wb_read (verifier_register2_c , 2, wb_i, wb_o); |
wb_read (verifier_register2_c , 2, wb_i, wb_o,2); -- print all info |
wb_read (verifier_register2_c , 2, wb_i, wb_o,2, " <TEXT>"); -- add text |
|
for I in 0 to 10 loop -- read current value 10 times for illustration of wb_read |
wb_read (verifier_register2_c , result_v, wb_i, wb_o); -- read value to variable |
report " Read value from verifier_register2_c register : " & to_string(result_v) & " = " & to_string(to_integer(result_v)); |
end loop; |
|
-- further shifts |
wb_write(stimulator_register0_c , 3, wb_i, wb_o); -- shift '1' in |
wb_write(stimulator_register0_c , 1, wb_i, wb_o); |
|
|
--------------------------------------------------------------------------- |
--------------------------------------------------------------------------- |
--------------------------------------------------------------------------- |
report "-----------------------------------------------------------------"; |
report "--check results"; |
report "-----------------------------------------------------------------"; |
-- wait for 6 us; |
-- wait until rising_edge(wb_i.clk); |
wb_read (verifier_register2_c , 5, wb_i, wb_o); -- reads correct |
wb_read (verifier_register2_c , 5, wb_i, wb_o,0, " <TEXT>"); -- reads correct |
wb_read (verifier_register2_c , 5, wb_i, wb_o,1, " <TEXT>"); -- reads correct |
wb_read (verifier_register2_c , 5, wb_i, wb_o,2, " <TEXT>"); -- reads correct |
wb_read (verifier_register2_c , 5, wb_i, wb_o,3, " <TEXT>"); -- reads correct |
wb_read (verifier_register2_c , 5, wb_i, wb_o,4, " <TEXT>"); -- reads correct |
report "-----------------------------------------------------------------"; |
report "-----------------------------------------------------------------"; |
report "-- All fine till here. Now we provoke error messages for illustration."; |
report "-- Till here there should be no errors. Now we provoke error messages for illustration."; |
wb_read (verifier_register2_c , 6, wb_i, wb_o); -- provoke error (read value is 5) |
wb_read (verifier_register2_c , 6, wb_i, wb_o,0); -- provoke error (read value is 5) |
wb_read (verifier_register2_c , 6, wb_i, wb_o,1); -- provoke error (read value is 5) |
wb_read (verifier_register2_c , 6, wb_i, wb_o,2); -- provoke error (read value is 5) |
wb_read (verifier_register2_c , 6, wb_i, wb_o,2,"<TEXT>"); -- provoke error (read value is 5) |
wb_read (verifier_register2_c , 6, wb_i, wb_o,2," <TEXT>"); -- provoke error (read value is 5) |
wb_read (verifier_register2_c , 6, wb_i, wb_o,3,"",7); -- provoke error (read value is 5) |
wb_read (verifier_register2_c , 6, wb_i, wb_o,4); -- provoke error (read value is 5) |
|
--------------------------------------------------------------------------- |
--------------------------------------------------------------------------- |
--------------------------------------------------------------------------- |
report "-----------------------------------------------------------------"; |
report "--check results"; |
report "-----------------------------------------------------------------"; |
wait for 6 us; |
wait until rising_edge(wb_i.clk); |
wb_read (verifier_register2_c, 16#0000_0005#, wb_i, wb_o); |
wait for 1 us; |
-- wait for 1 us; |
---------------------------------------------------------------------- |
report "-- tc_xxxx finished"; |
---------------------------------------------------------------------- |
-- |
report "test case tc_xxxx completed successfully"; --severity failure; |
report "test case tc_xxxx completed successfully"; |
report "-----------------------------------------------------------------"; |
report "-----------------------------------------------------------------"; |
wait for 100 ns; |