My UVM Coaching Approach is based on the automatic generation of a UVM framework.
This way has a few essential benefits:
This framework can be simualated immediately after its generation. The data structure is shown in the following figure.
It consists of 2 main directories:
tb consisting of the UVM testbench itself and
sim intended as simulation directory.
The sim-directory contains a script for use with Mentor's Questasim.
The UVM toplevel testbench contains 3 blocklevel testbences: uvc1, uvc2 and uvc3. test_project is the top environment, test_project_tb has the toplevel module inside and test_project_test is the container for all the tests. test_project_common can be used to define parameters, data types etc. common to the whole testbench.
The example zip-file can be downloaded from here: