数字IC验证工具DVT使用教程

● 简化维护旧有代码和可复用性,通过项目的管理方式维护代码。
● 加快语言和方法学的学习:环境中的快速链接可以直接跳转到目标类定义,方法定义,实现应用层和框架层之间的跳转。
● 提高为代码编辑文档的体验:自带的文档生成工具可以帮助提取文本的注释,从而生成可读性更好的 HTML 文档。
●缩短项目进程:由于DVT本身可以同 Clearcase SVN Git 等版本控制插件以及同缺陷跟踪
系统例如 Bugzilla 集成,所以对于项目而言它是一个中心化的项目实施平台。。
●直接调试代码,设置断点,查看变量,表达式窗口:用户可以自定义表达式,并且观察表达式的值变化。输出窗口:观察仿真输出,允许用户敲入命令与仿真器互动。
● 语义检查,通过静态分析发现不合适的语句,代码风格、无用语向、性能问题。
● Win 版的 DVT 相比于 Linux 版本有一些高级特性的缺失,在Linux 版本下的 DVT 更加全面。
DVT 日常用法:
1.编译检查 compilation check
语法、语义、非标准检查、修改 warning/errors
自动编译及检查一些 error 和 warning,更改代码后最好 rebuild project
2.内容辅助  可以通过 Alt+/来触发内容辅助。
按一次 Alt+/可以在范围内访问的内容(信号、变量、方法等,取决于包含的范国)
再按一次 Alt+/用于代码模板,符号圆圈是关键词的补全,符号表格是模板的补全;在
code template 也是模板双击或拖到源代码处即可插入模板,再按一次 Alt+/是其他东西,例如模块实例 M;在type 库的work 编译的软硬的盒子,可以直接拖到源代码中。
特定场景也会自动触发内容辅助,在访问句柄或结构体中的成员时,在敲入”.”后,或在表达式中对一些变量赋值或者比较时。菱形:成员变量,齿轮:成员方法,table 键可用于切换。在内容辅助列表中可以通过键盘上下键或者光标进行选择,然后敲击 Enter 选择,也可以敲击 EsC 退出。
3快速修正 quick fixs
为模块添加参数或者端口,添加敏感列表,为 interface 句柄添加 virtual 关键词,对注释或者宇符串中的单词进行拼写修改,创建被include 的文件,声明方法和变量,模糊语义 Did you mean,类型引用检查(被使用的域在当前域中不可见),实现以及更新外部方法(右键->refactor->join extern and implementation 进行合并,split 进行分开,在外部声明),移除 local 或者 protected 描述符,移除末使用的信号,更新模块实例,更新虚方法声明。
在项目编译时,会在problem 窗口出现多处提示 warning/error。在选择某处提示后可以快速链接到源代码处,在代码编辑左侧可以根据”感叹号”或者”叉号”提示符,选择对应代码,右键->source ->quik fix或者 ctrl+1。 鼠标放在变量上面即可查看并选择进行修正。
4.代码模板 code template
模板的样式可以在全局代码模板中更新:window->preferences->DVT->code templatest
5.项目模板 project templater
项目模版是参数化的目录树。与 TODO 标记结合使用(task 窗口),可以将项目模板用作
自定义向导。该约定允许你像使用 DVT 的其他任何项日一样,使用快捷手段(自动完成,超链接等)编辑模板。工作区中右键->new->DVT project from template->predefined project template >定义name。
6.代码格式化 code formatting
美化代码,使得代码外观可以标准化,非常方便的代码清扫功能。格式化选项可以通过window-> spreferences->DVT->SV->Editor->Formatting 来修改。在工作区的文件上右键
format source files 或在文件中右键 source->format source
7.方法覆盖method overriding:
覆盖提示符可指示该方法时覆盖了父类的方法,不同颜色有不同的含义,
1.绿色三角表示被覆盖的方法,。
2.黄色的三角表示覆盖的是父类未声明为 virtual 的方法,
3. 白色三角表示是预定义的方法。按住 ctrl 并点击代码进行跳转等功能。
选择对应的方法,右键->show->layers,可出现被覆盖方法的整个层次。
除了在子类中敲击对应方法名利用 Alt+/自动补全外,还可以在某个类中,右键-
>source->override Method 来弹出对话框,选择覆盖的多个方法,更便于操作。也可以在类型窗口中使能所有己继承的成员即 Type view->show All interited Members,选择其集成的某个方法,在右键选择 override
8.使用追踪 usage tracee
对于一个类、模块、接口、方法、变量在哪些地方被调用,也是我们经常关心的,我们可以通过右键(在对应的类、接口等名字上),show->Usages 在 DVT 下方商口中显示该目标被使用的地方。
8.约束显示 consistraint show.
在一些 sequence 和 test 中,经常会对 transaction 或者 configuration 中的随机变量约束进行修改,我们需要跟踪某些变量的所有约束,继而判断约束是否合理,并且专虑如何
管理这些跨层次的约束,可对某些变量石键->show->constraints。
><表示约束块
><螃蟹 表示外部约束(内嵌约束 randomize() with{})
齿轮s表示约束开关(rand mode, constraint mode)
9.语义查询 semantics search
“ctrl+H”或者”探照灯”即可弹出搜索窗口,一个搜索窗口即可在整个工作区搜索任何类型,且可以通过正则表达式完成模糊搜索。

10.硬件跟踪 connection/driver/load trace
在 design Hierarchy 窗口中,可选择某个设计,在其某个端口上,可右键 “Trace Driver
and Load"
11.重构 refactoring
选中源文件中的任何一个目标(类型或者变量),右键->rename
也是一个版本管理 右键->Compare->Local History, get content 还原之前的版本。
添加端口 add port
12.UML图 UMLdiagram
1类UML 图 (type window->diagram)
types 窗口 类型上右键->show Diagram,选定其中某一个右键->members/select type->可以选定成员方法或方法。

2.验证结构 UML 图(Architecture UML Diagram)
UVM 窗口 test/env 类型上右键->show Verfication Hilerarchy, show diagram 。
3.Sequence 图
UVM 窗口 sequence 类型上右键->show UVM sequence tree
4.设计图 版图schematic/数据流图 flow/模块图 block(type-sdiagram) 状态机图
设计模块右键 show diagram
5.组件图 (Verification Hierachy View->diagram)
13.生成 HTML 文档 export HTML documents
generate HTML Documention
14.UVM 支持 UVM support
绿色对勾、UVM 菜单栏 自动化域中右键->source UVM field eiter
15.项目配置 project configurationw
16.外部仿真器集成 external simulator integration
default.build 加 上+dvt init+qusta.vlog 让DVT 能够识別外部的 questa 命令
-o0
-novopt 不做优化
-UVM
17.外部调试器集成 extenal debugger integration

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值