Activity
-
Jake replied to the topic OSVVM Questa Visualizer Support in the forum OSVVM 11 months, 1 week ago
Any word from your Siemens contact on this? I’ve reached out to my Siemens FAE as well. By chance does the new release of OSVVM (2024.05) include visualizer support at all?
Thanks in advance,
-Jake -
Hassan replied to the topic Check functions in OSVVM in the forum OSVVM 11 months, 1 week ago
The scoreboards can contain tags for “out of order” transactions and can also drop transactions. This makes them more sophisticated then mere FIFOs. But what more features could they be given when you say “There is a long term plan to give users more direct control of the output of scoreboards.”
-
Brad Adam replied to the topic Riviera / MATLAB Cosim with OSVVM Scripting in the forum OSVVM 11 months, 1 week ago
Okay, that was helpful and after comparing the logs I’m reasonably confident that I am supplying the needed switches to the SetExtendedSimulateOptions.
At this point the remaining failure when using RunTest seems to be in the load libraries steps, specifically the libraries from Aldec. In the below console output, systf.dll and…[Read more]
-
Jim Lewis replied to the topic Dissecting the OSVVM AXI Master BFM in the forum OSVVM 11 months, 1 week ago
The DelayCoverage models divide a transfer into segments that are BurstLength in length. For beats (transfers within that burst length) there is BeatDelay between each item transferred on the interface. After BurstLength there is BurstDelay before the next item is transferred. Each of BurstLength, BeatDelay, and BurstLength is randomized using…[Read more]
-
Hassan replied to the topic Dissecting the OSVVM AXI Master BFM in the forum OSVVM 11 months, 1 week ago
This code confused me and is found in the AXI4 manager source:
— Initialize DelayCoverage Models
AddBins (WriteAddressDelayCov.BurstLengthCov, GenBin(2,10,1)) ;
AddBins (WriteAddressDelayCov.BeatDelayCov, GenBin(0)) ;
AddBins (WriteAddressDelayCov.BurstDelayCov, GenBin(2,5,1)) ;…
— Valid Delay between…[Read more]
-
Hassan replied to the topic Log, Alert and Affirm in OSVVM in the forum OSVVM 11 months, 1 week ago
That means normally we would not need to use Alert, but only the Affirm functions?
By the way, I did attend your course on OSVVM many years ago, before COVID. I was quite unwell in that week when I attended and could not absord the finer points. I had one more colleague with me. That colleague left a few wekks later and a redundancy drive a few…[Read more]
-
Jim Lewis replied to the topic Log, Alert and Affirm in OSVVM in the forum OSVVM 11 months, 1 week ago
> Q2. Why does one need “Alert” functions when “Affirm” functions also exists?
Alert is for parameter checks – like is max >= min. These are properties that if violated, the design (or test case) is broken.Affirm is for self checking. Each check is counted. A test quality is a function of the number of checks and we report that.
-
Jim Lewis replied to the topic Check functions in OSVVM in the forum OSVVM 11 months, 1 week ago
What you find in the documentation is what is what is officially supported.
The scoreboard package was released to our classes in 2006. The AlertLog capability was added in 2015. So there is some history there. Certainly doing
Get(TRec, Data) ;
expectedData := pop(SbID) ;
AffirmIfEqual(TbID, Data, expectedData) ;Is very similar…[Read more]
-
Jim Lewis replied to the topic Dissecting the OSVVM AXI Master BFM in the forum OSVVM 11 months, 1 week ago
The Axi4Manager has a TransactionDispatcher, which receives transactions from the Test Sequencer (TestCtrl) and dispatches these out to interface handlers (such as WriteAddressHandler). The interface handlers connect to the DUT and represent independently running pieces of the VC. The communication between the TransactionDispatcher and…[Read more]
-
Hassan started the topic Check functions in OSVVM in the forum OSVVM 11 months, 1 week ago
When looking at the VC documentation and related code, I came across Check functions of OSVVM. Here are a few examples:
E:My_DesignsFPGAOsvvmLibrariesCommonsrcAddressBusTransactionArrayPkg.vhd (14 hits)
Line 303: procedure ReadCheck (
Line 504: procedure ReadCheckBurstVector (
Line 514: procedure ReadCheckBurstIncrement (
Line…[Read more] -
Hassan started the topic Log, Alert and Affirm in OSVVM in the forum OSVVM 11 months, 1 week ago
The AlertLogPkg contains three type of functions:
Log; this has following levels: ALWAYS, DEBUG, FINAL, INFO, PASSED
Alert; this has following variants: Alert, AlertIf, AlertIfNot, AlertIfEqual, AlertIfNotEqual, AlertIfDiff. THe alert has following levels: FAILURE, ERROR, WARNING.
Affirm; this has following variants: AffirmIf, AffirmIfNot,…[Read more]
-
Hassan replied to the topic Running AXI4 Simulation from OSVVM Libraries repository in the forum OSVVM 11 months, 1 week ago
I understand that all of these are basically FIFOs. The term “scoreboard” need not confuse oneself.
-
Hassan replied to the topic Dissecting the OSVVM AXI Master BFM in the forum OSVVM 11 months, 1 week ago
The AXI4Manager source code contains these lines in the architecture declaration part:
signal WriteAddressFifo : osvvm.ScoreboardPkg_slv.ScoreboardIDType ;
signal WriteDataFifo : osvvm.ScoreboardPkg_slv.ScoreboardIDType ;signal ReadAddressFifo : osvvm.ScoreboardPkg_slv.ScoreboardIDType ;
signal…[Read more] -
Hassan replied to the topic Dissecting the OSVVM AXI Master BFM in the forum OSVVM 11 months, 1 week ago
It seems that so many IDs are needed to create a hierarchical output for difference aspects of the BFM in the test result report.
-
Jim Lewis replied to the topic Riviera / MATLAB Cosim with OSVVM Scripting in the forum OSVVM 11 months, 1 week ago
Hi Brad,
Short answer: yes you must run either simulate or RunTest to get the coverage reportsBehind the scenes when simulate finishes it saves the code coverage data base. When a test suite finishes, the code coverage from each test case is merged together. When the build finishes, it merges together the coverage from each test suite and…[Read more]
-
Brad Adam replied to the topic Riviera / MATLAB Cosim with OSVVM Scripting in the forum OSVVM 11 months, 1 week ago
Hey, I appreciate the insight and I actually worked my way to this action after noticing that the simulate command called vsim. I guess one more question to make sure I’m understanding these scripts correctly.
Currently, I know the following script will allow my to run my test and see the results:
SetCoverageSimulateEnable true
analyze…[Read more]
-
Jim Lewis replied to the topic Dissecting the OSVVM AXI Master BFM in the forum OSVVM 11 months, 1 week ago
Hi Hassan
OSVVM VC creates an AlertLogID for different classes of checkers. It is helps tracking the sources of errors – hence accelerates debug. In your own VC, you can get by with just a ModelID.Params is another singleton data structure that holds settings for the VC. It is setup like a generalized union of values.
Best Regards,
Jim -
Jim Lewis replied to the topic Riviera / MATLAB Cosim with OSVVM Scripting in the forum OSVVM 11 months, 1 week ago
Hi Brad,
First thing to determine is what switches you need set to vcom and vsim.If you look at the log or html log, you can determine what OSVVM is currently doing – or you can read the OsvvmProjectScripts.tcl (older releases) or OsvvmScriptsCore.tcl (renamed in 2024.05 to support future refactoring).
You can use SetExtendedAnalyzeOptions…[Read more]
-
Hassan replied to the topic How to improve VHDL in the forum VHDL 11 months, 1 week ago
What is the primary benefit of this thread since the synthesis tool vendors will take maybe a decador or more to add simple new features for the language.
We need an effort to upgrade the flow that is used with VHDL. We need something like LLVM for VHDL. The netlist fitter can be handled by the tools. But tool for synthesis and compilation for…[Read more]
-
Hassan started the topic Dissecting the OSVVM AXI Master BFM in the forum OSVVM 11 months, 1 week ago
This thread has been created to ask questions about the Axi4Manager found in the OSVVM AXI4 portion. This is the full AXI4 Master BFM. There is a separate BFM for the AXI4-Lite. There are two primary variants of the Axi4Manager. These are one variant without VTI (Axi4Manager) and one with VTI (Axi4ManagerVti). These only differ in how the…[Read more]
- Load More