simvision1 database和invoke
VCD是一种ASCII码的文件,可以直接用gvim来打开。有两种格式:1)Four-state, 2) Extended,
相比较而言,Extended VCD会多一些strength的信息。
VCD文件的产生,在initial的task中调用$dumpfile(file_name); $dumpvars(level, hierarchy1,hierarchy2);
$dumpoff; $dumpon; $dumpall在VCD文件中创建checkpoint;
$dumplimit(filesize); $dumpflush;
如果需要产生Extended VCD文件,需要在testcase中调用,$dumpports(scope_list, file_pathname)
$dumpportsoff/$dumpportson
VCD文件的格式:

VCD文件中可以调用的task有:

需要产生 fsdb文件的方法,fsdbDumpfile(file_name); fsdbDumpvars(level, hierarchy1, hierarchy2);
fsdbDumpvarsByFile(file_name);
fsdbDumpon; fsdbDumpoff; fsdbSwitchDumpFile; 将Dump切换到另一个FSDB文件。
其中verdi也提供,fsdb2vcd/fsdb2saif的转换脚本。
如果需要在post-process mode下使用simvision,必须有simvision的database,主要是基于SST2 format.
SST2 format database主要由三部分组成:
1) Design file,包含design hierarchy以及connectivity,扩展文件名.dsn
2) Transition file,主要信息是signal values以及他们的change time,扩展文件名.trn
3) Statement Trace file,主要信息是在source code中trace signal transition,扩展文件名.stc
以上三个文件存放在一个扩展名为.shm的文件夹中。
在仿真中,可以以每个component为单位来保存simulation database
SST2 database的create:
1) 当用户设置一个probe或者send design object到Waveform window时,自动创建database,但是其中并不会有
stc文件,也就是不能在source code中进行trace。
2) 使用incisive显式的进行create,注意使能Record all events以及Record statement trace information
simvision也可以将IUS的database转为自己的SST2 format,支持的格式有:
1) VCD 2) HISPICE 3) Qsim 4) Epic
也可以使用simvision提供的脚本,simvisdbutil来进行转换。
simvisdbutil waves.shm -output waves.vcd/waves.trn 将shm的database转为SST2或者VCD
simvision可以export的database有SST2/VCD/CSV
使用simvision调用VCD的database时,有一个选项是translate sequence time information,使能可以进行delta cycle的
debug,否则只能看到simulation time
编译uvm的case时,不能设置uvmnoautocompile的option,否则一些uvm的debug viewer会无法使用。
不能设置uvmnocdnsextra的option,否则cadence自己的cdns_uvm_pkg不能被编译,simvision不能debug一些uvm的feature
在irun中加入uvm的dir和sv,那么case中应该避免加入import/include uvm_pkg,否则编译会报错,cdns/uvm_pkg编译出错。
此时也可以通过加上边的两个option来避免这个问题,但是debug feature减少
Simvision的打开有三种方法:
1) invoke the simulator with SimVision,可以实时控制和debug,通过加-gui或者tcl命令中加simvision来打开。
2) 单独invoke simvision,并且connect到running simulation。
3) invoke simvision post-processing mode。不能进行simulation ctrl
需要注意的option,加入-linedebug 否则不能进行breakpoint调试
-access rwc r表示内部信号对simulator可见,w表示可以通过force/deposit控制simulation
c表示使能connection access
也可以针对某个特定的instance来进行设置,需要一个 -aflie来制定。
直接在ncsim中指定,simvision的参数,-simvisargs ""
也可以在tcl中指定,simvision -input cmd.tcl
关于Simvision和simulator之间的connection的切换,Disconnect----simulation仍然会进行。
Terminate and disconnect---simulation会停掉。
打开的simvision有两个window,Design Browser和Console window(分为两个tab,simvision支持simvision命令,simulator支持tcl命令)
simvision1 database和invoke的更多相关文章
- 转 : 如何用sys as sysdba权限连接数据库进行EXP/IMP
使用sys as sysdba权限进行EXP/IMP与其它用户稍有不同,详细内容如下(摘自metalink) Applies to: Oracle Server - Enterprise Editio ...
- Professional C# 6 and .NET Core 1.0 - 37 ADO.NET
本文内容为转载,重新排版以供学习研究.如有侵权,请联系作者删除. 转载请注明本文出处:Professional C# 6 and .NET Core 1.0 - 37 ADO.NET -------- ...
- Professional C# 6 and .NET Core 1.0 - Chapter 37 ADO.NET
本文内容为转载,供学习研究.如有侵权,请联系作者删除. 转载请注明本文出处:Professional C# 6 and .NET Core 1.0 - 37 ADO.NET 译文:C# 6 与 .NE ...
- 使用RMAN DUPLICATE...FROM ACTIVE DATABASE创建物理standby database
Applies to: Oracle Server - Enterprise Edition - Version 11.1.0.6 to 11.2.0.4 [Release 11.1 to 11.2] ...
- 【JDBC 报错】Connections could not be acquired from the underlying database!
项目启动报错: [2016-07-13 10:04:15,074] ERROR org.apache.ibatis.executor.BaseExecutor Could not get a data ...
- Error querying database. Cause: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for …
编译通过并且运行web成功后,访问的页面不需要连接数据库,不牵扯到反射调用实体类就不会报错, 报错内容如下: [WARNING] org.springframework.web.util.Nested ...
- android- FileProvider崩溃 - NPE试图调用一个空字符串XmlResourceParser(FileProvider crash - npe attempting to invoke XmlResourceParser on a null String)
问题: This is a part of my manifest: <?xml version="1.0" encoding="utf-8"?> ...
- android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error(Sqlite code 14): Could not open database,(OS error - 13:Permission denied)
07-24 15:03:14.490 6291-6291/com.tongyan.nanjing.subway E/SQLiteDatabase: Failed to open database '/ ...
- Error querying database. Cause: java.sql.SQLException: ORA-01745: 无效的主机/绑定变量名
今天调试程序是遇到了,下面的一个问题.我将对应的SQL语句拿到Toad下也能正常的执行,感觉有点莫名其妙,根据异常信息的提示查看对应的映射结果集也没发现错误,然后百度了一下,也有许多朋友也遇到过这样的 ...
随机推荐
- 【转】 Camera模仿3D效果的小例子(图片无限旋转)
import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactor ...
- c++利用循环数组建立FIFO模板队列
可直接编译运行,其中status()方法效果如图: #include <iostream> using std::cout; template<typename T> clas ...
- java并发控制:lock
一.synchronized的缺陷 synchronized是java中的一个关键字,也就是说是Java语言内置的特性.那么为什么会出现Lock呢? 在上面一篇文章中,我们了解到如果一个代码块被syn ...
- [react-router] hashHistory 和 browserHistory 的区别
react-router提供了三种方式来实现路由,并没有默认的路由,需要在声明路由的时候,显式指定所使用的路由. //v1.x <Router/> //v2.0.0 // hash his ...
- Thinking in Java——笔记(14)
Type Information The need for RTTI Because it is a dynamically bound method, the proper behavior wil ...
- HJ-第二周,真机调试
报错: Showing Recent Issues Huiju_app requires a provisioning profile. Select a provisioning profi ...
- 使用 JDBC 和 JavaTemplate 查询SQL语句返回 List<Map<String,Object>>
使用JDBC执行sql语句返回List 类型: public class JdbcUtil { private static Log log = LogFactory.getLog(JdbcUtil. ...
- Stack的c实现
用c语言实现stack的初始化,push,pop和Clear操作 #include<stdio.h> #include<stdlib.h> #include<assert ...
- h5的离线缓存机制
什么是Manifest: 其实Manifest是一个简单的 文本文件,它的扩展名是任意的,定义需要缓存的文件.资源,当第一次打开时,浏览器会自动缓存相应的资源. Manifest 的特点: 离线浏览: ...
- JAVASE02-Unit05: 集合操作 —— 查找表
Unit05: 集合操作 -- 查找表 使用该类测试自定义元素的集合排序 package day05; /** * 使用该类测试自定义元素的集合排序 * @author adminitartor * ...