Happy New Year from SynthWorks and OSVVM
While everything else was quite dark, OSVVM had a great 2020. Normally I travel for work around 75K air miles. 2020 none. This saved a lot of time. All of that time (and more) went into enhancing OSVVM.
OSVVM had 6 updates in 2020. This includes the 2020.12 revision which was released late on December 31. More on 2020.12 in a future post. Here are some milestones that I am excited we achieved.
AXI4 Full Verification Components
- 2020.07: Axi4Master (with byte-based bursting), Axi4Memory, Axi4Responder.
- 2020.12: Added Full Signaling to all.
- 2020.12: Added word-based bursting to Axi4Master.
- 2020.12: Added Virtual Transaction Interface Verification Components, Axi4MasterVti, Axi4MemoryVti, and Axi4ResponderVti.
AxiStream
- 2020.07: Updated AxiStreamTransmitter and AxiStreamReceiver to use Stream Model Independent Transactions
- 2020.10: Added Bursting with Byte, Word, and Word+User bursting.
- 2020.10: Added documentation for AxiStream Verification components
- 2020.12: Added Virtual Transaction Interface Verification Components, AxiStreamTransmitterVti and AxiStreamReceiverVti
UART
- 2020.07: Updated UartTransmitter and UartReceiver to use Stream Model Independent Transactions
OSVVM Utility Library
- This is the original “OSVVM” library
- 2020.05: Count of Log PASSED messages is printed in ReportAlerts
- 2020.08: Specification Tracking added as a part of the AlertLogPkg Affirmation capability
Scripting
- Simulator Independent Scripting. One script to run them all.
- 2020.07: Refactored tool execution for simplified vendor customizations
Model Independent Transactions (OSVVM Common)
- Establishes a pattern of transactions for Address Bus and Streaming Interfaces.
- 2020.02: Created initial Address Bus Interface by refactoring from Axi4Lite.
- 2020.07: Refactored tool execution for simplified vendor customizations
- 2020.07: Created Byte based bursting for Address Bus Interfaces
- 2020.10: Create Byte, Word, and Word+Parameter bursting for streaming interfaces
- 2020.12: Added Word bursting for Address Bus Interfaces
Documentation
- This is a good place to start as all of the OSVVM documentation is here.
- 201X.XX: User guides and/or quick reference cards for all packages in the OSVVM Utility library (aka OSVVM library).
- 2020.07: User guide for Address Bus Model Independent Transactions (Used by Axi4 full and Axi4Lite).
- 2020.07: User guide for Stream Model Independent Transactions (used by AxiStream and UART).
- 2020.10: User guide for AxiStream
- 2020.12: User Guide for Axi4 Full and Axi4 Full VPI verification components
Getting OSVVM
The OsvvmLibraries repository contains all other OSVVM repositories as a submodule. Hence, when you get OsvvmLibraries, you get everything you need. You can get OsvvmLibraries by calling git clone with the “–recursive” option:
$ git clone --recursive https://github.com/osvvm/OsvvmLibraries
A zip file is available at osvvm.org/downloads.
Getting Started with OSVVM
The fastest way to get started with OSVVM is SynthWorks’ Advanced VHDL Testbenches and Verification which is available world wide either on-line or on-site (once we can travel again). Here is our current class schedule.
Funding OSVVM
OSVVM is free, open source software. With this changing world, we are looking for funding sources for OSVVM. If you know of any organizations who can support our work, please reach out to me.