Release notes¶
For installation instructions read this.
3.0.3 - 2018-04-22 (latest)¶
- Add
check_equal
for real withmax_diff
- Improve
com
library performance - Added support for message forwarding
- Improve axi stream verification components
- Add wishbone verification component
- Protect against unexpected mutation of compile and sim options
3.0.2 - 2018-02-22¶
- Added is_empty on queues
- Documented queue_t and integer_array_t
- Fixed memory leak
3.0.0 - 2018-02-12¶
- beta version of a verification component library.
- AXI read/write slaves
- Memory model
- AXI master
- AXI stream
- UART RX/TX
- (B)RAM master
- Hiearchical and color logging support.
- Communication library usability improvements.
- Push/pop message creation and debugging tools.
2.4.3 - 2018-01-24¶
- SystemVerilog: Fix dependency scanning with instance directly after block label #305.
2.4.0 - 2018-01-12¶
- Ignore test cases in SystemVerilog comments.
- Make integer_array_t metadata get-functions public.
- dictionary: add default value option to get function.
- Improve get_implementation_subset #286.
2.3.0 - 2017-12-19¶
- Fix commas in Modelsim generics #284.
- Fix problem with vsim_extra_args between entity and architecture in riviera and activehdl.
- Update Verilog preprocessor to read using latin-1 encoding. #285.
- Improve compile printouts #283.
- Add -q/–quiet flag. #283.
- Add printout of output file location. #283.
- Dropped support and testing of Python 3.3 (might still work anyway).
- Fix of Modelsim –coverage argument #288.
2.2.0 - 2017-09-29¶
- Add support for tokenizing verilog multi line strings. #278
- Added support for restarting window in check_stable
- Added support for num_cks=0 in check_next.
- Error on adding duplicate source files. #274
- Update Vivado example.
- Add support for non-system-verilog verilog files. #268
- Add dependency scanning of the use of an instantiated package. #233
- Add human readable test output paths. #211
2.1.1 - 2017-07-19¶
2.1.0 - 2017-07-19¶
- Add
{rivierapro, modelsim}_init_files.after_load
sim_options. They allow setting a list of DO/TCL files to be executed duringvunit_load
after the top level has been loaded using thevsim
command. - Add input validation to sim and compile options
2.0.0 - 2017-02-21¶
Public interface changes¶
Some run.py
scripts can be broken by this. Both set_generic
and add_config
works differently internally.
set_generic
and set_sim_option
now only affects files added
before the call so reordering within the run.py
can be needed.
add_config
on the test case level will no longer discard
configurations added on the test bench level. This affects users
mixing adding configurations on both test and test case level for the
same test bench. Adding a configuration on the test bench level is now
seen as a shorthand for adding the configuration to all test cases
within the test bench. Configurations are only held at the test case
level now. Before there could be configurations on multiple levels
where the most specific level ignored all others. I now recommend
writing a for loop over test_bench.get_tests() adding configurations
to each test individually, see the updated generate_tests example.
We have also forbidden to have configurations without name (“”), this
is since the default configuration of all test cases has no name. The
post_check
and pre_config
can now be set using
set_pre_config
also without using add_config
removing the need
to add a single unnamed configuration and instead setting these in the
default configuration.
This internal restructuring has been made to allow a sane data model of configurations where they are attached to test cases. This allows us to expose configurations objects on the public API in the future allowing users more control and visibility. The current behavior of configurations is also better documented than it ever was.
I suggest reading the section on configurations in the docs.
- Replace
disable_ieee_warnings
andset_pli
with corresponding simulation options. - Adds
--version
flag - Added
--gui
flag for GHDL to open gtkwave. Also allows saving waveform without opening gui with--gtkwave-fmt
flag.
1.4.0 - 2017-02-05¶
- Removed bug when compiling Verilog with Active-HDL
- Updated array package
- Added support for simulation init script
- Added support for setting VHDL asserts stop level from run script
1.3.0 - 2017-01-06¶
- Added support for pass acknowledge messages for check subprograms.
- Made design unit duplication a warning instead of runtime error again.
1.1.1 - 2016-12-08¶
- Adds vunit_restart and vunit_compile TCL commands for both ModelSim and RivieraPro
- Also support persistent simulator to save startup overhead for RivieraPro.
- Changes –new-vsim into -u/–unique-sim which also works for riviera
1.0.0 - 2016-11-22¶
- Adds ActiveHDL custom simulation flags support
- Made library simulator flag argument deterministic and same as the order added to VUnit
- Added check_equal between std_logic_vector and natural for unsigned comparison
- Can now set vhdl_standard on an external library
- Added no_parse argument to add_source_files(s) to inhibit any dependency or test scanning
- Renamed public method depends_on to add_dependency_on
0.70.0 - 2016-10-13¶
- Hashing test output_path to protect against special characters and long paths on Windows.
- Added
.vo
as recognized Verilog file ending. - Enable setting vhdl_standard per file.
0.67.0 - 2016-08-08¶
- A number of minor enhancements and bug fixes
- Added vunit_restart TCL procedure to ModelSim
- Print out remaining number of tests when pressing ctrl-c
- Updated OSVVM and made it a git submodule. Run
git submodule update --init --recursive
after updating an existing Git repository or
git clone --recursive https://github.com/VUnit/vunit.git
when creating a new clone to get the OSVVM subdirectory of VUnit populated. Doesn’t affect installations made from PyPi
0.65.0 - 2016-03-13¶
- Added sim and compile options to set rivierapro/activehdl flags. #143.
- Removed builtin
-dbg
flag to vcom for aldec tools. Use set_compile_option instead to set it yourself. - Fixed a bug with custom relative output_path.
- Documentation fixes & improvements.
- Update rivierapro and activehdl toolchain discovery. #148.
- Added possibility to set
VUNIT_<SIMULATOR_NAME>_PATH
environment variable to specify simulation executable path. #148. - Added
-k/--keep-compiling
flag. #140. - Added optional
output_path
argument topre_config
. #146.
0.64.0 - 2016-03-03¶
- Added python version check. Closes #141.
- Not adding .all suffix when there are named configurations
0.61.0 - 2016-02-23¶
- Adds
.all
suffix to test benches with no test to better align with XUnit architecture. - Enables better hierarchical JUnit XML report view in Jenkins. - Fixes #129.
0.60.0 - 2016-02-15¶
0.59.0 - 2016-02-13¶
- Covered a miss in circular dependency detection.
- Added detection of circular includes and macro expansions in verilog preprocessing.
- Added caching of verilog parse results for significant speed when running run.py more than once.
0.57.0 - 2016-02-08¶
- Adds
include_dirs
argument also toLibrary
add_source_file(s) - Ignores more builtin Verilog preprocessor directives.
0.54.0 - 2016-02-06¶
- Adds support for Verilog preprocessor ifdef/ifndef/elsif/else/endif
- Fixes regression in modelsim persistent mode. Makes many short tests faster.
0.53.0 - 2016-02-06¶
add_source_files
accepts a list of files- Added
-f/--files
command line flag to list all files in compile order - Verilog parser improvements in robustness and error messages.