i am an experienced FPGA designer, having used Verilog for long time.
For a mixed analog-digital project involving an ASIC and (maybe) an FPGA, i need to get ready for extensive verification and test-vector generation.
The mainstream tools seem to be SystemVerilog and UVM, which seem to have a difficult learning curve and also difficult maintenance.
But somebody suggested me to consider using Verilog and Python, having the advantage that they complement each other very nicely, and that Python is easy to learn.
Can anybody share experiences from real projects ?
I have used cocotb to verify some modules recently. Fairly straightforward
to get going and to write stimulators and checkers. There are some things I
didn't like (eg it deletes the work library and recompiles on every run) b
ut it it uses make files to set up and run the sim so I found it easy to ha
ck it to make it behave how I wanted.
I like to use python for algorithm development and modelling so it could no
t be easier to reuse the model code in the python test bench.
My modules were in vhdl but it works with verilog.