[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gEDA: Icarus Verilog snapshot 20030216
I've worked out most issues with real value dumps in VCD/LXT, so
real variable support is awaiting bug reports.
Moving on, I've started working on SWIFT support, and towards that
end I've added the new cadpli library module. This adds binary support
for precompiled PLI1 modules that otherwise work with Verilog XL and
NC-Verilog. See the cadpli/cadpli.txt file for details. This new trick
should open up a new universe of third-party add-on support, although
adding more PLI1 symbols will take some time. My goal, as I said, is
to get SWIFT models as distributed by Synopsis to work, although there
are many other third-party applications that may benefit.
Here are the snapshot files:
<ftp://icarus.com/pub/eda/verilog/snapshots/verilog-20030216.tar.gz>
<ftp://icarus.com/pub/eda/verilog/snapshots/verilog-20030216.txt>
Release Notes for Icarus Verilog Snapshot 20030216
Full support for VCD/LXT dumping of real values has been added. Now
you can watch your real variables in VCD dumps. (Note that there are
some broken/obsolete commercial viewers that cannot read real values
from VCD dumps. These tools are broken.) In the process, I've also
added $monitor support for real variables, and the requisite VPI
callbacks. Real variables and $dumpoff have also been worked
out. Icarus Verilog dumps NaN values during the blanking phase, and
the ieee1364-notes.txt file explains the reasoning for this.
Compilation problems for the previous snapshots has been fixed. The
ivl.def file was not exporting all the new symbols related to real
variables.
The LXT dumper, and VVP in general, have been slightly modified to use
less memory for signal names. This saves on the memory footprint of a
simulation, and for large simulation, can make a measureable
performance difference.
The $readmem system tasks failed to skip /* */ style comments in hex
dump files, although it did support // style comments. This has been
fixed, you can now comment your hex files.
The vvp run time now supports (under Linux, at least) loadable library
modules. These are VPI modules that are loaded with the -m flag, as
normal, but add their symbols to the symbol table of the vvp
process. The vvp program notices the .vpl extension versus the .vpi
extension, as a flag to export the global symbols of the vpl
module. This is intended to help support compatibility modules that
need to export special symbols to other modules, but developers may
also use this support to create new libraries.
The big news is the new cadpli module. This adds compatibility with
object code that is normally loaded to Cadence tools via the +loadpli1
switch. The cadpli.vpl module provides binary compatibility for
third party PLI modules, and is intended to be the precursor to
support for SWIFT models. The cadpli.txt file describes how to use
this new module.
--
Steve Williams "The woods are lovely, dark and deep.
steve at icarus.com But I have promises to keep,
steve at picturel.com and lines to code before I sleep,
http://www.picturel.com And lines to code before I sleep."