Reply To: Running AXI4 Simulation from OSVVM Libraries repository

Why OSVVM™? Forums OSVVM Running AXI4 Simulation from OSVVM Libraries repository Reply To: Running AXI4 Simulation from OSVVM Libraries repository

#2411
Hassan
Member

First lets look at RunDemoTests.pro

TestSuite Axi4Full
library osvvm_TbAxi4

if {$::osvvm::ToolNameVersion ne "XSIM-2023.2"}  {
  include ./testbench

  # Make TestCases the frame of reference
  set ::osvvm::CurrentWorkingDirectory [file join $::osvvm::CurrentWorkingDirectory TestCases]
  RunTest  TbAxi4_DemoMemoryReadWrite1.vhd
  RunTest TbAxi4_ManagerRandomTiming1.vhd 
  RunTest TbAxi4_ManagerMemoryRandomTiming1.vhd 
  RunTest  TbAxi4_MemoryBurstPattern1.vhd
} else {
  SkipTest Axi4VC "AXI4 VC not working in XSIM"
}

Now lets look at RunAllTests.pro

TestSuite Axi4Full
library osvvm_TbAxi4

if {$::osvvm::ToolNameVersion ne "XSIM-2023.2"}  {
  include ./testbench
  include ./TestCases
  include ./testbench_MultipleMemory
  # include ./testbench_interrupt  ; # moved to OsvvmLibraries/Common/TbInterrupt
} else {
  SkipTest Axi4VC "AXI4 VC not working in XSIM"
}

This second script makes no mention of the RunTest TCL command. How it is actually calling TCL scripts inside the testbench, TestCases and testbench_MultipleMemory folders that contain TCL scripts and these contain the RunTest commands.

These TCL commands TestSuite, RunTest and SkipTest appear to be defined in the OsvvmProjectScripts.tcl. There are other commands like build, analyze, include for which I have found no description anywhere. Is there a detailed exposition of the TCL API anywhere or it is considered not important for the end user?

Also, I see that two libraries are created: osvvm_tbaxi4, osvvm_tbaxi4_multiplememory. How come testbench test case/sequence libraries are being created for the AXI4 but not for Ethernet, UART and DPRAM? These other ones have RTL library but not one for the testbench files. The AXI testbench libraries have the largest size among all the libraries created by QuestaSim after compilation.