转 | cadence验证仿真工具IUS,IES,irun和xrun

以下内容均转自http://www.lujun.org.cn/?p=3714

IUS和IES

cadence,有两大验证仿真工具。一个是IUS,一个是IES。
IUS是cadence以前的仿真工具,功能略弱。代表工具,ncverilog。
官方介绍如下:

IUS(incisive unified simulator) Cadence IUS allows to perform behavioral simulation on Verilog and VHDL code.

IES是cadence现在的仿真工具,功能强大。代表工具,irun
官方介绍:

IES(incisive Enterprise Simulator) cadence IES is considered to be one of the most considered tool to automates testbench generation, design verification and analysis from the system level to the gate level.

不过,现在cadence又开发出了新的仿真工具,叫Xcelium。代表工具,xrun。(注意原博发表于2018年,目前Xcelium的版本已经有20.x,21.x了)

仿真模式

cadence的仿真工具,分为单步仿真模式,和多步仿真模式
单步仿真模式,是指,只要一个命令,即可实现仿真。而多步仿真模式,是指,需要多个命令的组合,才可以实现仿真。
cadence的很多工具,带有nc作为前缀。nc,指native compile,将不同的HDL code转化成一种中间语言(native language),然后统一仿真,为了实现混合语言仿真。

多步仿真模式

使用ncvlog(ncsc,ncvhdl),ncelab,ncsim命令来实现仿真。
ncvlog,编译源代码
ncelab(ncsc,ncvhdl),对编译的结果,进行elaborate,建立snapshot文件
ncsim,对snapshot文件进行仿真
在这里插入图片描述
下图给出了仿真的flow。对于不同的源文件,使用不同的工具进行编译。

  • systemC: 使用ncsc工具编译
  • VHDL: 使用ncvhdl工具编译
  • VERILOG: 使用ncvlog工具编译

编译完成后,使用ncelab工具,对编译结果进行elaborate,得到snapshot文件,最后在使用ncsim工具,对其进行仿真。
在这里插入图片描述
多命令模式的例子:

ncvlog  -f  run.f
ncelab  tb  -access wrc
ncsim tb –gui

第一个命令,run.f是整个RTL代码列表, ncvlog执行以后将生成一个名为INCA_libs的目录和一个名为worklib的目录。
第二个命令,-access选项是确定读取文件的权限,其中的tb是tb文件内的顶层模块名字。ncelba要选择tb文件的顶层module,elaborate之后,会生成snapshot。
第三个命令,选择snapshot进行仿真,-gui启动图形化界面。

单步仿真模式

单步仿真模式,包括ncverilog和irun。
早期的IUS,使用ncverilog,进行单步仿真模式,ncverilog,内部会自动调用ncvlog,ncelab,ncsim工具进行仿真。
从IUS8.1开始,ncverilog命令,被替换成irun命令,使用ncverilog,将直接调用irun命令。而irun工具,内部也会自动调用ncvlog,ncelab,ncsim工具进行仿真。
以下是官方文档中说明的:

because irun supports all features of ncverilog, including its command-line options, Cadence is replacing ncverilog with irun. Beginning with the IUS 8.1 release, using the ncverilog command will invoke irun。

irun工具

irun支持各种源程序文件输入,verilog,systemverilog,VHDL,verilog AMS,VHDL AMS,specman e,和其他语言程序编写的文件如C,C++,并且使用合适的编译器对其进行编译。当输入的文件,都编译完毕后,irun自动启动ncelab,去elaborate,产生snapshot,最后启动ncsim仿真器去仿真snapshot。

  • .v文件,使用ncvlog
  • .sv文件,使用ncvlog
  • .vhd文件,使用ncvhdl
  • .e文件,使用sn_compile.sh脚本

irun启动后,会在生成目录,自动创建INCA_libs文件夹。

irun只是个脚本,能根据源程序的类型(如verilog,VHDL等)自动调用相应的编译程序(ncvlog,ncvhdl等),然后依次是elaborate,simulate。
irun的选项很多,下面列举一些常用选项:

选项说明
-64bit使用64bit irun模式
-f指定file list
-vlog_ext修改verilog文件的默认后缀,如 -vlog_ext .vvv,.vv ,修改verilog的默认后缀为.vvv和.vv
-c只生成snapshot,不仿真
-access设置访问权限
-nclibdirpath指定 INCA_libs 目录
-R只仿真,需要有提前生成的snapshot
-sv支持systemverilog语言
-uvm开启uvm,自动编译uvm库
-uvmhome指定uvm库位置,CDNS-1.2 默认IES中的uvm-1.2版本
-uvmnoautocompile不自动编译uvm库
-clean在run执行之前,删除INCA_libs文件夹
-l指定输出log文件
-seed指定随机种子数
-top指定顶层模块
-hdlvar指定 hdl.var文件
-cdslib指定cds.lib文件
-loadpli1指定读取外部读取的库文件
-prep打开prep mode,不仿真,生成多步仿真的脚本文件。生成4个文件:ncvlog_ver.args: ncvlog工具的参数文件、ncelab.args ncelab工具的参数文件、ncsim.args: ncsim工具的参数文件、RUN_NC: 仿真的脚本文件,调用ncvlog,ncelab,ncsim。
-checkargs检查irun的输入参数,是否有误
-helpargs打印每个输入参数的作用
-helpall打印帮助信息
+xxx=yyy向验证环境传递仿真参数xxx,值为yyy

Xcelium

本小节转自CSDN博主「Charlie *」的原创文章https://blog.csdn.net/weixin_40794217/article/details/108135172

Xcelium(xrun)是cadence最新的仿真工具,Incisive(irun)的升级版本。
其常用选项如下:

选项说明
-64bit64bit仿真
-sv识别systemverilog语法
-f <.f .list>识别文件列表
-access +rwc在查看波形时,对代码权限设置
-top <>指定仿真的顶层
-l <.log>指定仿真log信息目录和名字
-history_file <.history>指定仿真记录的目录及名字
-q or -Q不在log中打印仿真总结信息
-noupdate强制comp和elab必须重新执行
-clean先清除当前目录下的Xcelium.d再跑仿真
-seed指定随机数
-licqueue指定当没有license时,等待
-errormax nn个error后强制结束仿真
-coverage all生成覆盖率
-covoverwrite自动覆盖当前覆盖率
-parseinfo include打印出使用`include包含的文件具体信息
-mcl轻量级的多core仿真
-notimingcheck不检查时序
-nospecifyspecify部分不起作用
-sdf_verbose展示反标详细信息
-ntc_verbose负延时信息展示
  • 18
    点赞
  • 191
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
ADS和Cadence是两个在电子设计领域应用广泛的软件工具。ADS (Advanced Design System) 是一款由美国Keysight Technologies公司开发的电路设计软件,主要用于射频、微波、信号完整性和高速数字电路设计。Cadence是一家全球领先的EDA(Electronic Design Automation)软件公司,提供了包括电路设计、芯片设计和系统设计在内的多种设计工具和平台。 联合仿真是指将ADS和Cadence这两个软件进行结合使用,通过互相传递数据和进行联合计算,以实现更加精确和全面的电路设计仿真。ADS和Cadence之间的联合仿真通常包括两个方面:电路仿真和封装仿真。 在电路仿真方面,ADS可以生成电路的原理图,并进行各种电路参数的仿真,如频率响应、增益、相位等。而Cadence则可以对电路进行更加精确和复杂的仿真,如噪声分析、时序分析等。通过将这两个软件结合起来,设计工程师可以获得更准确和全面的电路仿真结果,从而更好地评估电路的性能和稳定性。 在封装仿真方面,ADS主要用于射频和微波电路的封装设计和封装仿真,而Cadence则主要用于芯片级封装和系统级封装的设计和仿真。通过将这两个软件进行联合仿真,设计工程师可以更好地评估不同封装形式对电路性能的影响,以及优化封装设计和布局,提高产品的性能和稳定性。 总之,ADS和Cadence联合仿真的优势在于能够将两个软件的功能和特点相互补充,从而实现更准确和全面的电路设计仿真。这有助于设计工程师更好地评估电路性能,优化设计方案,提高产品的性能和可靠性。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值