News
Verilator 3.800 Released
Verilator 3.800 2010/02/07
This is a major release including many SystemVerilog enhancements.
Application visible changes:
- SystemPerl is no longer required for tracing. Applications must use VerilatedVcdC class in place of SpTraceVcdC.
- SystemVerilog 1800-2009 is now the default language. Thus "global" etc are now keywords. See the --language option.
New features:
- Support SystemVerilog types "byte", "chandle", "int", "longint", "shortint", "time", "var" and "void" in variables and functions.
- Support "program", "package", "import" and $unit.
- Support typedef and enum. [by Donal Casey]
- Support direct programming interface (DPI) "import" and "export". Includes an extension to map user $system PLI calls to the DPI.
- Support assignments of multidimensional slices, bug170. [by Byron Bradley]
- Support multidimensional inputs/outputs, bug171. [by Byron Bradley]
- Support "reg [1:0][1:0][1:0]" and "reg x [3][2]", bug176. [Byron Bradley]
- Support declarations in loop initializers, bug172. [by Byron Bradley]
- Support $test$plusargs and $value$plusargs, but see the docs!
- Support $sformat and $swrite.
- Support 1800-2009 define defaults and `undefineall.
- Add -CFLAGS, -LDFLAGS, <file>.a, <file>.o, and <file>.so options.
- Speed compiles by avoiding including the STL iostream header. Application programs may need to include it themselves to avoid errors.
- Add experimental clock domain crossing checks.
- Add experimental --pipe-filter to filter all Verilog input.
- Add experimental config files to filter warnings outside of the source.
- Add VARHIDDEN warning when signal name hides module name.
- Support optional cell parenthesis, bug179. [by Byron Bradley]
- Support for loop i++, ++i, i--, --i, bug175. [by Byron Bradley]
- Support 1800-2009 /*comments*/ in define values.
- Add Makefile VM_GLOBAL_FAST, listing objects needed to link executables.
- Add --bbox-unsup option to black-box unsupported UDP tables.
- Add -Wno-MODDUP option to allow duplicate modules.
Bug fixes:
- Fix 'for' variable typing, bug205. [by Byron Bradley]
- Fix tracing with --pins-bv 1, bug195. [Michael S]
- Fix MSVC++ 2008 compile issues, bug209. [Amir Gonnen]
- Fix Cygwin 1.7.x compiler error with uint32_t, bug204. [Ivan Djordjevic]
- Fix `define argument mis-replacing system task of same name, bug191.
- Fix Verilator core dump on wide integer divides, bug178. [Byron Bradley]
- Fix lint_off/lint_on meta comments on same line as warning.
Verilator 3.720 Released
Verilator 3.720 2009/10/26
- Support little endian bit vectors ("reg [0:2] x;").
- Support division and modulus of > 64 bit vectors. [Gary Thomas]
- Fix writing to out-of-bounds arrays writing element 0.
- Fix core dump with SystemVerilog var declarations under unnamed begins.
- Fix VCD files showing internal flattened hierarchy, broke in 3.714.
- Fix cell port connection to unsized integer causing false width warning.
- Fix erroring on strings with backslashed newlines, bug168. [Pete Nixon]
Verilator 3.714 Released
Verilator 3.714 2009/09/18
- Add --bbox-sys option to blackbox $system calls.
- Support generate for var++, var--, ++var, --var.
- Improved warning when "do" used as identifier.
- Don't require SYSTEMPERL_INCLUDE if SYSTEMPERL/src exists. [Gary Thomas]
- Fix deep defines causing flex scanner overflows. [Brad Dobbie]
- Fix preprocessing commas in deep parameterized macros. [Brad Dobbie]
- Fix tracing escaped dotted identifiers, bug107.
- Fix $display with uppercase %M.
- Fix --error-limit option being ignored.
Verilator 3.713 Released
Verilator 3.713 2009/08/04
- Support constant function calls for parameters. [many!]
- Support SystemVerilog "logic", bug101. [by Alex Duller]
- Name SYMRSVDWORD error, and allow disabling it, bug103. [Gary Thomas]
- Fix escaped preprocessor identifiers, bug106. [Nimrod Gileadi]
Verilator 3.712 Released
Verilator 3.712 2009/07/14
- Patching SystemC is no longer required to trace sc_bvs.
- Support zero-width constants in concatenations. [Jeff Winston]
- Add verilator --pins-uint8 option to use sc_in<uint8_t/uint16_t>.
- Add verilator -V option, to show verbose version.
- On WIDTH warnings, show variable name causing error. [Jeff Winston]
- Add BLKLOOPINIT error code, and describe --unroll-count. [Jeff Winston]
Verilator 3.711 Released
Verilator 3.711 2009/06/23
- Support decimal constants of arbitrary widths. [Mark Marshall]
- Fix error on case statement with all duplicate items, bug99. [Gary Thomas]
- Fix segfault on unrolling for's with bad inits, bug90. [Andreas Olofsson]
- Fix tristates causing "Assigned pin is neither...". [by Lane Brooks]
- Fix compiler errors under Fedora release candidate 11. [Chitlesh Goorah]
Verilator 3.710 Released
Verilator 3.710 2009/05/19
- Verilator is now licensed under LGPL v3 and/or Artistic v2.0.
- `__FILE__ now expands to a string, per draft SystemVerilog 2010(ish).
- The front end parser has been re-factored to enable more SV parsing. Code should parse the same, but minor parsing bugs may pop up.
- Verilator_includer is no longer installed twice, bug48. [Lane Brooks]
- Fix escaped identifiers with '.' causing conflicts, bug83. [J Baxter]
- Fix define formal arguments that contain newlines, bug84. [David A]
Verilator 3.703 Released
Verilator 3.703 2009/05/02
- Fix $clog2 calculation error with powers-of-2, bug81. [Patricio Kaplan]
- Fix error with tasks that have output first, bug78. [Andrea Foletto]
- Fix "cloning" error with
y/-top-module, bug76. [Dimitris Nalbantis]
- Fix segfault with error on bad --top-module, bug79. [Dimitris Nalbantis]
- Fix "redefining I" error with complex includes. [Duraid Madina]
- Fix GCC 4.3.2 compile warnings.
Verilator 3.702 Released
Verilator 3.702 2009/03/28
- Add --pins-bv option to use sc_bv for all ports. [Brian Small]
- Add SYSTEMPERL_INCLUDE envvar to assist RPM builds. [Chitlesh Goorah]
- Report errors when duplicate labels are used, bug72. [Vasu Kandadi]
- Fix the SC_MODULE name() to not include PVT. [Bob Fredieu]
Verilator 3.701 Released
Verilator 3.701 2009/02/26
- Support repeat and forever statements. [Jeremy Bennett]
- Add --debugi-<srcfile> option, for internal debugging. [Dennis Muhlestein]
- Fix compile issues with GCC 4.3, bug47. [Lane Brooks]
- Fix VL_RANDom to better randomize bits. [Art Stamness]
- Fix error messages to consistently go to stderr. [Jeremy Bennett]
- Fix left associativity for ?: operators.
Also available in: Atom
![[logo]](/img/veripool_small.png)