Languages

CommunityCategory: XMODELSetting the version of the FSDB reader library used by XWAVE or replay_xreal/xbit primitives

XMODEL

Setting the version of the FSDB reader library used by XWAVE or replay_xreal/xbit primitives

SA Support Team Staff 2019-05-24

I am getting a message regarding a FSDB version mismatch when I try to read an FSDB-format waveform file using XWAVE or replay_xreal/replay_xbit primitives during XMODEL simulation. Is there a way for me to change the version of the FSDB reader that XWAVE and XMODEL use?

2 Answers
Best Answer
SA Support Team Staff 2020-08-31

Updates:
As of XMODEL 2020.08 Release, XMODEL and XWAVE can support the version 5.8 of the Synopsys VERDI’s FSDB reader library in addition to the previous versions 5.4, 5.5, 5.6, and 5.7.
It has been identified that some versions of Cadence XCelium simulator (e.g. 18.09.004) are linked with the FSDB reader library of version 5.4 and prevent the use of the later versions of the FSDB reader libraries. We are currently looking for a work-around, but it appears for now that with Cadence XCelium, the replay_xreal and replay_xbit primitives can only read FSDB files with version 5.4 format and the environment variables $VERDI_HOME, $NOVAS_HOME, and $XMODEL_FSDBRD_PATH may have no effects.

SA Support Team Staff 2019-05-24

Yes, there is. For your information, the XMODEL installation package does not contain a specific version of FSDB reader library. The FSDB reader library is part of the Synopsys VERDI package, and the users who want to read FSDB-format waveform files using XWAVE or replay_xreal/replay_xbit primitives during XMODEL simulation must have the VERDI package installed and the related licenses required. For some reasons we don’t know, there exist some incompatibility issues between the different versions of the FSDB format. Because of that, it is sometimes necessary to change the version of the FSDB reader library used by XWAVE or XMODEL depending on the version of the FSDB-format waveform file to be read. As of 2019.04, XMODEL can work with the versions 5.4, 5.5, 5.6, and 5.7 of the Synopsys VERDI’s FSDB reader library.
The basic way of setting the version of the FSDB reader library used by XMODEL is to define the environment variable $VERDI_HOME or $NOVAS_HOME with the installation path of the desired VERDI package. For instance, you can define $VERDI_HOME using the following syntax in a csh-like shell:

setenv  VERDI_HOME  /cad/synopsys/Verdi/Verdi_O-2018.09

And using the following syntax in a bash-like shell:

export  VERDI_HOME=/cad/synopsys/Verdi/Verdi_O-2018.09

While defining the $NOVAS_HOME environment variable has the same effects, please note that the defined value of $VERDI_HOME takes the higher priority.
If you can’t modify the definition of $VERDI_HOME for some reasons, you may define the $XMODEL_FSDBRD_PATH environment variable to set the path to the FSDB reader library directly (named libnffr.so). For instance:

setenv  XMODEL_FSDBRD_PATH  /cad/synopsys/Verdi/Verdi_O-2018.09/share/FsdbReader/LINUX64

in csh-like shells and

export  XMODEL_FSDBRD_PATH=/cad/synopsys/Verdi/Verdi_O-2018.09/share/FsdbReader/LINUX64

in bash-like shells. Please note that the path to the FSDB reader library may depend on the operating system architecture. And the value of $XMODEL_FSDBRD_PATH takes precedence over the values of $VERDI_HOME and $NOVAS_HOME.
If you launch the XMODEL simulations by directly executing the SystemVerilog simulator command instead of using the 'xmodel' launcher script, you will need to add the path to the FSDB reader library to the $LD_LIBRARY_PATH environment variable directly. In fact, the 'xwave' or 'xmodel' executables modify this $LD_LIBRARY_PATH environment variable based on the definitions of the $VERDI_HOME, $NOVAS_HOME, or $XMODEL_FSDBRD_PATH variables prior to the main execution.
For instance, if you have defined the $XMODEL_FSDBRD_PATH environment variable with the path to the desired FSDB reader library, you can add its definition to the $LD_LIBRARY_PATH environment variable using:

setenv  LD_LIBRARY_PATH  $LD_LIBRARY_PATH:$XMODEL_FSDBRD_PATH

in csh-like shells, and

export  LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$XMODEL_FSDBRD_PATH

in bash-like shells.