Skip to content

parzival3/chisel-uvm

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

chisel-uvm

This repo is for the project to explore the combination and interaction of Chisel and UVM.

UVM Examples

In the sv directory, a number of UVM examples are located.

  • The first example uses a bare-bones testbench and an empty DUT to showcase the basic parts of a UVM testbench (the test and environment). The testbench is heavily commented to explain usage.
  • The second example shows how to use a driver and interface to drive values onto the DUT.
  • The third example shows how to use sequences and sequencers to drive randomized transactions onto the DUT.
  • The fourth example uses a monitor and a uvm_subscriber to create a coverage report, alongside a scoreboard that checks the output
  • The fifth example replicates the functionality of #4, but each class has been put into its own file.
  • The sixth example includes more sequences and tests that leverage these sequences. Each sequence derives from the basic sequence.

Vivado UVM Examples

These examples assume that a copy of Xilinx Vivado is installed and present in the PATH. The examples are currently tested only on Linux.

In the directory leros, the ALU desribed in src/main/scala/leros/AluAccu.scala is tested using UVM, to showcase that Chisel and UVM can work together.

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • SystemVerilog 85.4%
  • Verilog 2.9%
  • Scala 2.5%
  • Makefile 2.4%
  • Tcl 2.4%
  • Stata 2.4%
  • Other 2.0%