RTL Studio Open IDE

4.7 · UVM CLASS

Pipelined driver: separate get() and put() (AXI prep)

Refactor the driver to use separate get() and put() in parallel threads for AXI-style pipelining.

Video coming soon. This lesson page stays at the same URL when the lecture publishes.

What you practice

Pipelined driver: separate get() and put() (AXI prep) (4.7). Refactor the driver to use separate get() and put() in parallel threads for AXI-style pipelining. It is in Pipelined driver — Part 4 · Advanced UVM of the UVM Masterclass. Factory, config objects, virtual sequences, and pipelined drivers for large SoC verification.

The UVM bench compiles in that same browser SystemVerilog simulator. You edit the test in the IDE, run Verilator, and read the log beside the waveform.

Run it in the Verilog IDE

  1. Open the UVM workspace in the IDE. The DUT and the testbench compile together in the browser.
  2. Run the SystemVerilog simulation with Verilator and read the phase and scoreboard lines in the log.
  3. When the check is on pins rather than a print, open the VCD next to that log.
  4. Edit the sequence, driver, or scoreboard in the IDE and rerun. You stay in the same simulator.

The lesson is done when the simulation matches Pipelined driver: separate get() and put() (AXI prep). Change the source, run the Verilog simulator again, and read the waveform without leaving the IDE. Simulation guide · Yosys guide.