What is new @ Fintronic ?

redball.gif (326 bytes)About Fintronic

redball.gif (326 bytes)What's new at Fintronic

redball.gif (326 bytes)What our customers are saying...

redball.gif (326 bytes)Support for Verilog 2001

redball.gif (326 bytes)Third party tools integrated with FinSim

home.htmlProductsSupportEvaluateContact



Super-FinSim allows the user to call functions written in the C language directly from within the Verilog code. The user only has to provide one or more C header files with the prototypes of the C functions.

The arguments of these C functions can be characters (8 bits), short integers (16 bits) integers (32 bits), long long integers (64 bits) and pointers to them. Super-FinSim assumes that all pointers in the interface correspond to outputs that are going to be written inside the C functions. All other arguments are assumed to be inputs tothe C functions. The semantics for calling C user functions and tasks are similar to the semantics for calling Verilog or PLI functions andtasks.

The header files providing the prototypes of the C functions are passedto finvc with the -ch <name of header file> option. This option can be specified any number of times if more than one header file is required.  Note that the header files must be self sufficient (as all well written header files ought to be), i.e. if a header file uses things defined in another header file then the 2nd header file should be included in the 1st header file. If any of the header files is in a different directory, the user can specify the include directory by using the +incdir option the same way as for verilog header files.

The object files containing the user C functions can be specified
either in the file finpli.mak in the variable FINUSERCOBJ:

FINUSERCOBJ = example.o

or via the environment variable with the same name:

setenv FINUSERCOBJ example.o

More than one object files can be specified. If used, the file finpli.mak has to be in the local directory where finbuild is called.

If the specified object file does not exist, finbuild will attempt to compile it using a default compilation rule that calls the C compiler
on the corresponding .c file.