You can clone with
Cannot retrieve contributors at this time
SWIFT MODEL SUPPORT FOR Icarus Verilog (PRELIMINARY) Copyright 2003 Stephen Williams NOTE: SWIFT support does not work yet, these are provisional instructions, intended to show what's supposed to happen when I get it working.Icarus Verilog support for SWIFT models is based on the LMTV interfacemodule from Synopsys. This module is normally distributed along withthe SWIFT models proper. This module can be linked with Icarus Verilogvia the cadpli compatibility object. (See cadpli.txt.)* PreliminariesFirst, you need the LMC_HOME environment variable set to point to theinstalled directory for your SWIFT software. This setup is documentedin your SWIFT model documentation.* CompilationWhen compiling your Verilog design to include a SWIFT model, you needto include wrappers for the model you intend to use. You may choose touse ncverilog or verilogxl compatible wrappers, they work thesame. Locate your smartmodel directory, and include it in your commandfile like so: +libdir+.../smartmodel/sol/wrappers/verilogxlThe wrappers directory includes Verilog modules that wrap your SWIFTmodule, and with this +libdir+ statement in your command file, theIcarus Verilog compiler will be able to locate these wrappers. Thewrappers in turn invoke the $lm_model system tasks that are the LMTVsupport for your model. NOTE: This example uses the solaris directory of VerilogXL support files as a source of wrappers. The files of interest, however, are written in Verilog and are identical for all supported platforms, so long as you choose the verilogxl or ncverilog files.* ExecutionAfter your simulation is compiled, run the simulation with the vvpcommand, like this: % vvp -mcadpli a.out -cadpli=$LMC_HOME/lib/x86_linux.lib/swiftpli.so:swift_bootWhat this command line means is: -mcadpli Include the cadpli compatibility module a.out This is your compiled vvp file -cadpli=$LMC_HOME/lib/x86_linux.lib/swiftpli.so:swift_boot This tells the cadpli module to load the swiftpli.so shared object, and boot it. This is code that comes with your SWIFT modules, and provides the generic SWIFT capabilities (lm_* system tasks) needed by the module itself.Once you start the vvp command, the SWIFT infrastructure will beinitialized as part of the simulation setup, and all should worknormally from here.