Quantcast
Channel: Active questions tagged python - Stack Overflow
Viewing all articles
Browse latest Browse all 13981

How to generate a .dat file for verilator_coverage?

$
0
0

I've started to familiarize myself with cocotb and I'm having trouble.

I wrote a simple test like this:

@cocotb.test()async def add_test(dut):    dut._log.info("Running add test!")    c = Clock(dut.clk, 10, 'ns')    await cocotb.start(c.start())    a = 1    b = 2    for cycle in range(10):       a += 1       b += 1       await RisingEdge(dut.clk)       dut.exu2ialu_main_op1_i <= a       dut.exu2ialu_main_op2_i <= b       dut.exu2ialu_cmd_i <= 4        await RisingEdge(dut.clk)       assert dut.ialu2exu_main_res_o == (a+b)

and threw together a simple makefile:

VERILOG_INCLUDE_DIRS = $(PWD)/includeVERILOG_SOURCES = $(PWD)/myalu.sv TOPLEVEL=scr1_pipe_ialu  # the module name in your Verilog or VHDL fileMODULE=test # the name of the Python test fileinclude $(shell cocotb-config --makefiles)/Makefile.sim

The first problem is that the first run of make SIM=verilator crashes and judging by the log is due to a large number of warnings(11). On subsequent runs everything is fine, I attribute this to the fact that sim_build is being built, but I would like to understand if the crash can be avoided.

The second problem is that I was recommended to analyze the test coverage with the verilator_coverage utility, which should accept a .dat file, but it is not generated. I tried to fix this with the command make SIM=verilator COVERAGE=1 , but that did not work.


Viewing all articles
Browse latest Browse all 13981

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>