alexforencich/cocotbext-axi

AxiStreamMonitor: Monitor AXIS in a hierarchy deeper than top dut

Closed this issue · 1 comments

Hello @alexforencich ,

The bus I want to monitor in RTL hierarchy is dut.inst_mod1.s_axis*. But I can't figure out how to pass this in
self.mon = AxiStreamMonitor(AxiStreamBus.from_prefix(dut, "s_axis"), dut.s_clk, dut.s_rst)

I tried self.mon = AxiStreamMonitor(AxiStreamBus.from_prefix(dut.inst_mod1, "s_axis"), dut.s_clk, dut.s_rst) but that returned the following error:

INFO     cocotb:simulator.py:302      0.00ns ERROR    cocotb.scheduler                   Failing test at simulator request before test run completion: Simulator shut down prematurely
ERROR    cocotb:simulator.py:302 sys:1: RuntimeWarning: coroutine 'AxiStreamMonitor._run_tvalid_monitor' was never awaited
ERROR    cocotb:simulator.py:302 sys:1: RuntimeWarning: coroutine 'Reset._run_reset' was never awaited
ERROR    cocotb:simulator.py:302 sys:1: RuntimeWarning: coroutine 'StreamMonitor._run_ready_monitor' was never awaited
ERROR    cocotb:simulator.py:302 sys:1: RuntimeWarning: coroutine 'StreamMonitor._run_valid_monitor' was never awaited
ERROR    cocotb:simulator.py:302 sys:1: RuntimeWarning: coroutine 'Clock.start' was never awaited
INFO     cocotb:simulator.py:302 FST info: dumpfile rtp_complete.fst opened for output.

Versions:
cocotb==1.8.0
cocotb-bus==0.2.1
cocotb-test==0.2.4
cocotbext-axi==0.1.24

Please let me know how to probe this signals for monitor.

self.mon = AxiStreamMonitor(AxiStreamBus.from_prefix(dut.inst_mod1, "s_axis"), dut.s_clk, dut.s_rst) works. I had a different error unrelated to this. Sorry for confusion.