【開發環境】 irun(ncverilog)無法dump fsdb波形問題解決方法


一、前言

  本人使用IRUN仿真並通過調用$fsdbDumpfile函數生成波形時,IRUN無法識別$fsdbDumpfile函數。先總結解決方法如下,供大家參考。

 

二、問題

  1. 在TestBeach中,調用以下函數生成fsdb波形文件;

1 //Enable dump fsdb
2 initial
3 begin
4   $fsdbDumpfile("test.fsdb");
5   $fsdbDumpvars(0,TB);
6 end

 

  2. IRUN運行時出現如下錯誤:$fsdbDumpfile和$fsdbDumpvars 函數不能識別;

    Building instance overlay tables: .................... Done
    Generating native compiled code:
        worklib.HANDSHAKE_TB:v <0x45f2bf0a>
            streams:   1, words:   554
    Building instance specific data structures.
    Loading native compiled code:     .................... Done
    Design hierarchy summary:
                           Instances  Unique
        Modules:                   2       2
        Registers:                15      15
        Scalar wires:              7       -
        Always blocks:             7       7
        Initial blocks:            5       5
        Cont. assignments:         0       2
        Simulation timescale:  100ps
    Writing initial simulation snapshot: worklib.HANDSHAKE_TB:v
Loading snapshot worklib.HANDSHAKE_TB:v .................... Done
  $fsdbDumpfile("test.fsdb");
              |
ncsim: *E,MSSYSTF (./tb.v,75|14): User Defined system task or function ($fsdbDumpfile) registered during elaboration and used within the simulation has not been registered during simulation.
  $fsdbDumpvars (0,TB);
              |
ncsim: *E,MSSYSTF (./handshake_tb.v,76|14): User Defined system task or function ($fsdbDumpvars) registered during elaboration and used within the simulation has not been registered during simulation.

 

  原因: irun未能正確加載debpli.so導致;

 

二、方法

  1. 設置LD_LIBRARY_PATH如下:

   其中NOVAS_HOME為VERDI安裝目錄,注意此處CentOS為32位系統,64位系統需要直到的目錄;  

#32bit CentOS
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$NOVAS_HOME/share/PLI/lib/LINUX:$NOVAS_HOME/share/PLI/IUS/LINUX/boot" 
#64bit CentOS

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$NOVAS_HOME/share/PLI/lib/LINUX64:$NOVAS_HOME/share/PLI/IUS/LINUX64/boot" 

 

  2. 設置IRUN運行參數如下:

irun -access +rwc -loadpli1 debpli:novas_pli_boot -f XXXXXXX.f

 

  3.設置完成后可正常運行;

irun: 13.10-p001: (c) Copyright 1995-2013 Cadence Design Systems, Inc.
TOOL:    irun    13.10-p001: Started on Oct 31, 2016 at 10:44:07 EDT
irun
    -loadpli1 debpli:novas_pli_boot
    handshake_tb.v
    handshake_pulse_sync.v
        Caching library 'worklib' ....... Done
    Elaborating the design hierarchy:
    Top level design units:
        HANDSHAKE_TB
    Building instance overlay tables: .................... Done
    Generating native compiled code:
        worklib.HANDSHAKE_TB:v <0x0461d14c>
            streams:   1, words:   554
    Building instance specific data structures.
    Loading native compiled code:     .................... Done
    Design hierarchy summary:
                           Instances  Unique
        Modules:                   2       2
        Registers:                15      15
        Scalar wires:              7       -
        Always blocks:             7       7
        Initial blocks:            5       5
        Cont. assignments:         0       2
        Simulation timescale:  100ps
    Writing initial simulation snapshot: worklib.HANDSHAKE_TB:v
Loading snapshot worklib.HANDSHAKE_TB:v .................... Done
*Verdi3* Loading libsscore_ius131.so
*Verdi3* : Enable Parallel Dumping.
ncsim> source /usr/edatools/cadence/incisive/tools/inca/files/ncsimrc
ncsim> run
FSDB Dumper for IUS, Release Verdi3_I-2014.03, Linux, 02/10/2014
(C) 1996 - 2014 by Synopsys, Inc.
*Verdi3* : Create FSDB file 'test.fsdb'
*Verdi3* : Begin traversing the scope (HANDSHAKE_TB), layer (0).


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM