老古开发网首页
导航:老古开发网首页文章索引文章分类EDA/IC设计→[(转)抛砖引玉,发实际项目用的一个仿真脚本(VCS+VERA)]
| -文章搜索 - 最新文章 - |

(转)抛砖引玉,发实际项目用的一个仿真脚本(VCS+VERA)

发布时间:2006年7月29日 点击次数:1499
来源:   作者:
 
抛砖引玉,发实际项目用的一个仿真脚本(VCS+VERA)

#!/bin/csh -f

time

if (!(-e filelist.vrl)) cp -f ../code/sim/scr/filelist.vrl .
if (!(-e picture.dat)) cp -f ../code/sim/scr/picture.dat .
if (!(-d pic)) mkdir pic
if (!(-d log)) mkdir log
##############################################################

# for system simulation
set current=$argv[1]

# include search path for modules
set INC_DIRS="+incdir+../code/rtl"

# library search path for modules
set LIB_DIRS="-y ../code/sim/vmodel/verilog/sdh_sram \
              -y ../code/asic/lib/charlib/2000.3/cb35/v2.6/verilog/cb35os142/zero"

# top rtl verilog file
set RTL_TOP_FILE="../code/asic/lib/charlib/2000.3/cb35/v2.6/verilog/cb35os142/zero/mtb_verilog.v \
                  ../code/rtl/top/sdh_digital.v"

set SEG_CTRL_FILE="../code/rtl/disp/sdh_seg_ctrl.v"

# test top verilog file
set TEST_TOP_FILE="../code/sim/vmodel/verilog/sdh_digital.test_top/sdh_digital.test_top.v"

# vera main program file
set VERA_MAIN_FILE="../code/sim/vmodel/vera/sdh_digital.vr"
set VERA_PATTERN_FILE="../code/sim/tb/sys/$current/pattern.vr"

# define vcs compile flags
set os_uname = `/bin/uname`
switch ( ${os_uname} )
case SunOS:

  set VCS_FLAGS="\
                 -Mupdate -PP \
                 -timescale=1ns/10ps \
                 +libext+.v \
                 -P /opt/tools/novas/deb5.2v14/share/PLI/vcs/SOLARIS2/debussy.tab \
                 /opt/tools/novas/deb5.2v14/share/PLI/vcs/SOLARIS2/pli.a \
                 +nospecify \
                 +notimingcheck \
                 +vpdfile+vera.vpd \
                 +define+FSDB \
                 -f ../code/sim/scr/lib.vcs.c\
                 sdh_digital.vshell -vera"
breaksw

case Linux:
  set VCS_FLAGS="\
                 -Mupdate -PP \
                 -timescale=1ns/10ps \
                 +libext+.v \
                 -P /opt/tools/novas/deb5.2v24/share/PLI/vcs/LINUX/debussy.tab \
                 /opt/tools/novas/deb5.2v24/share/PLI/vcs/LINUX/pli.a \
                 +nospecify \
                 +notimingcheck \
                 +vpdfile+vera.vpd \
                 +define+FSDB \
                 -f ../code/sim/scr/lib.vcs.c\
                 sdh_digital.vshell -vera"
breaksw

  default:
      echo "Unsupported platform ''''${os_uname}''''"
      exit ( 1 )
  breaksw
endsw


#define code coverage metrics
set CM_COMPILE_FLAGS="\
-cm line+cond+fsm+tgl"

set CM_SIM_FLAGS="\
        -cm line+tgl+fsm+cond                \
        -cm_name $argv[1]"

# compile this file for debugging (includes symbol table)
vera -cmp -g $VERA_MAIN_FILE
if ($status) then
  exit 1
endif

vera -cmp -g $VERA_PATTERN_FILE
if ($status) then
  exit 1
endif

# check the status of the compile and continue if successful

if ($status == 0) then

# compile using the HDL simulator to produce an executable
vcs $VCS_FLAGS $INC_DIRS $LIB_DIRS $CM_COMPILE_FLAGS $RTL_TOP_FILE $TEST_TOP_FILE

# printf systime before running
time

#./simv +vera_mload=filelist.vrl +vera_profile_start +vera_profile_limit=1000 +vera_profile_object \
#                               +vera_profile_object_verbose tee simlog.log

./simv $CM_SIM_FLAGS +vera_mload=filelist.vrl tee simlog.log

# printf systime after pattern over
time

endif

转自edacn



欢迎进入老古论坛进行讨论
[EDA/IC设计] 相关文章:
IP核调试之SDRAM篇(1) 转载
简介:
首先说明资源使用: 1.硬件: 基于HY57V561620CT-H的128M PC133内存条; &nb......

FPGA 门数计算方法(转)
Xilinx FPGA全局时钟和第二全局时钟资源的使用方法
用HDLScore做覆盖率分析VHDL实例
用VHDL/VerilogHD语言开发PLD/FPGA的完整流程VHDL实例
格雷码计数器的设计思路VHDL实例
介绍状态机的一种书写方式VHDL实例
代码规范-状态机编码选择依据VHDL实例
8*8位的fifo数据缓冲器的vhdl源程序VHDL实例
半整数分频的VHDL程序VHDL实例
 
下一个:[EDA/IC设计]IP核调试之SDRAM篇(2) 转载
简介:
但是作为初学者,我还是愿意勇 敢的说出自己的心得体会,希望对如我一样的初学者有所帮助。今天我将继续介 绍我的调试SDRAM之路。 时序仿真完成后,硬件调试相对轻松多了。我用到的核心设备就是一台 60MHZ带宽的Tektronix示波器。在100MHZ的工作频率下边,......
 

上一个:[EDA/IC设计](转)脚本来统计verilog代码的行数

老古开发网版权所有 2006年9月 asp.Net V2.0 设计:老古
页面缓存:10分钟 执行时间:219毫秒