xcelium
xcelium(IP_LIB **kwargs)
Create a target for invoking Xcelium (compilation, elaboration, and simulation) on IP_LIB.
It will create a target run_<IP_LIB>_xcelium that will compile, elaborate, and simulate the IP_LIB design.
Parameters
| Name | Type | Description |
|---|---|---|
IP_LIB | string | The target IP library, it needs to have SOURCES property set with a list of SystemVerilog or VHDL files. |
Keyword Arguments
| Name | Type | Description |
|---|---|---|
NO_RUN_TARGET | bool | Do not create a run target. |
GUI | bool | Run simulation in GUI mode. |
32BIT | bool | Use 32 bit compilation and simulation. |
OUTDIR | string | Output directory for the Xcelium compilation and simulation. |
RUN_TARGET_NAME | string | Replace the default name of the run target. |
TOP_MODULE | string | Top module name to be used for elaboration and simulation. |
LIBRARY | string | replace the default library name (worklib) to be used for elaboration and simulation. |
COMPILE_ARGS | string | Extra arguments to be passed to the compilation step (C, C++). |
XRUN_COMPILE_ARGS | string | Extra arguments to be passed to the xrun -compile command |
SV_COMPILE_ARGS | string | Extra arguments to be passed to the SystemVerilog / Verilog compilation step. |
VHDL_COMPILE_ARGS | string | Extra arguments to be passed to the VHDL compilation step. |
ELABORATE_ARGS | string | Extra arguments to be passed to the elaboration step. |
RUN_ARGS | string | Extra arguments to be passed to the simulation step. |
FILE_SETS | list[string] | Specify list of File sets to retrieve the sources from |
xcelium_gen_sc_wrapper(IP_LIB **kwargs)
This function create a target to generate a SystemC wrapper for the IP library, with Xcelium xmshell, if SystemVerilog or Verilog files are in the IP library.
Parameters
| Name | Type | Description |
|---|---|---|
IP_LIB | string | The target IP library, it needs to have SOURCES property set with a list of SystemVerilog or Verilog files. |
Keyword Arguments
| Name | Type | Description |
|---|---|---|
32BIT | bool | Use 32 bit compilation and simulation. |
QUIET | bool | Disable output for informative messages |
OUTDIR | string | Output directory for the Xcelium compilation and simulation. |
LIBRARY | string | replace the default library name (worklib) to be used for elaboration and simulation. |
TOP_MODULE | string | Top module name to be used for elaboration and simulation. |
SV_COMPILE_ARGS | string | Extra arguments to be passed to the SystemVerilog / Verilog compilation step. |
VHDL_COMPILE_ARGS | string | Extra arguments to be passed to the VHDL compilation step. |
FILE_SETS | list[string] | Specify list of File sets to retrieve the sources from |
xcelium_gen_hdl_wrapper(SC_LIB **kwargs)
This function create a target to generate a Verilog wrapper file from a SystemC library with Xcelium xmshell.
Parameters
| Name | Type | Description |
|---|---|---|
SC_LIB | target | Name of an existing CMake target representing the SystemC library. |
Keyword Arguments
| Name | Type | Description |
|---|---|---|
32BIT | bool | Use 32-bit Xcelium tools instead of the default 64-bit mode. |
OUTDIR | string | Output directory for the Xcelium compilation and simulation. |
LIBRARY | string | Replace the default library name (worklib) to be used for elaboration and simulation. |
TOP_MODULE | string | Top module name to be used for elaboration and simulation. |
xcelium_configure_cxx(**kwargs)
.. note:: This is a macro, and so does not introduce a new scope.
This macro is used to configure the C and CXX compiler to the one used by the tool.
It can also be used to add some libraries, such as SystemC and DPI-C in this case, for example if you want to use dpi, you should use this macro like this :
xcelium_configure_cxx(LIBRARIES DPI-C)
Keyword Arguments
| Name | Type | Description |
|---|---|---|
LIBRARIES | list[string] | Libraries that needs to be added. |
xcelium_add_cxx_libs(**kwargs)
This function is called by the xcelium_configure_cxx macro, you shouldn't use it directly.
It will add the needed information to IP_LIB and add some flags for the compilation and linking.
Keyword Arguments
| Name | Type | Description |
|---|---|---|
32BIT | bool | Use 32 bitness. |
LIBRARIES | list[string] | libraries that needs to be added, possible choice is SystemC or DPI-C |