IC-工具篇--VCS使用教程-卷二(202004013)
文章目录
- 引言
- 1、基础理论讲义
- Compile and Invoke UCLI Debugger
- 2、实际基本操作dve的技巧-图形界面参考资料
- 2.1 查看波形与调试波形
- 2.2 基本入门
引言
本文在上一讲逐渐熟悉了VCS的开关选项后,下面继续介绍VCS的使用,我始终关注于熟悉工具的使用,在本系列中,对Verilog的语法不作深入研究,这样可以加快前进的步伐。也为了加快从FPGA中转变到IC领域来。在本文中将介绍VCS 调试基础。
1、基础理论讲义
—Afer completing this unit ,you should be able to:
- Describe three methods of debugging Verilog code using VCS
- Invoke UCLI debugger
- Debug Verilog designs using UCLI
–VCS Debugging Suport
4. Trance and locate causes of errors
5. Three general debugging methods:
Verilog SystemVerilog System Task calls
VCS UCLI
VCS DVE(GUI)Four factors to consider:
simulation speed
signal visibility
sgnal tractability
usability
Verilog System Task For Debugging 利用verilog的系统函数
- Debug visibility:
- $ display prints formatted message to console
- $ strobe Like$dispaly except printing is delayed until all events in the current time step have executed
- $ monitor Monitor signals listed and prints formatted message whenever one of the listed signals changes
- $ time returns current simulation time as a 64bits integer
Stopping simulations:
$stop halts simulation lie a breakpoint
$finish halts simulation and terminated the simulation sessionSimulation stimulus and reference:
- readmemhReadsASCIIdatafromadiskfile,eachdigitishexadecimal−readmemh Reads ASCII data from a disk file,each digit is hexadecimal -readmemhReadsASCIIdatafromadiskfile,eachdigitishexadecimal− readmemb
Reads ASCII dataform a disk file ,Each digit is binary
Debugging via UCLI(no-recom)不推荐使用UCLI方式来查看波形
- Simulation speed
Speed depends on the scale of visibility you specify - Signal Vsisibiility
- Signal Traceability
-Usability
Compile and Invoke UCLI Debugger
-Compile and invoke UCLI in one step(一步走,编译并且调用UCLI)
$ vcs source.v -debug|debug_all -R -ucli
-ucli invokes UCLI and stop simulation time at time 0
-Compile and invoke UCLI in two step(分两步走,先编译,后执行可执行文件)
vcs source.v -debug|debug_all|debug_pp(debug_pp只打开部分调试开关,加快编译速度)
invoke UCLI and stop simulation time at time 0
$simv -ucli
UCLI Debugger Command Line Option
-debug
enables command line debugging option. This flag does not enable line stepping.
-debug_all
enables command line debugging option including line stepping
-ucli
forces runtime to go into UCI mode by default
-gui
compile time option invokes the DVE gui when issured at run time
-l log_filename
captures simulation output ,such as user input UCLI commands and responses to UCLI commands.
-i input_filename
reads interactive UCLI commands from a file the switches readding from standard command line input
-k key_filename
writes interactive commands entered to input_filename,which can be used by a latter simv as -i input_filename
由于UCLI的陈旧,这里不再强调。
退出UCLI
quit 即可
Problems in simulation?
if you suspect simlation is having problems
Determine whether or not time is advancing:
halt simulation by hiting ctrl+c 通过ctrl+c来退出仿真
check simulation time
continue simulation by typing in run at UCLI prompt
halt simulation again after a shor period of time
if simulation time has not changed,simulation may be caught in infinite loop or waiting for a phantom triger
-Determine potential location of problem:
Re-compile with -debug_all compile-time option
halt simulation
use UCLI command show to dispaly variables
trace code execution with UCLI command next
官方的文档位置:
DVE(Discovery Visual Environment)
An intuitive and easy to use GUI
Quiickly fine bugs
RTL or Gates
Assertions
Testbench
Supports
Interactive
Post-simulaton analisis
Multiple languages
verilog
VHDL
SV
C++、C
NTB
波性文件vpd
verdi里面的波性文件为fsdb
比较两个信号
2、实际基本操作dve的技巧-图形界面参考资料
2.1 查看波形与调试波形
参考资料 DVE使用手册
以后在实验中逐步训练加强。
程序,我们仍然使用在卷一中讲解的程序。并且用DVE打开。界面如下:
主要分为:菜单、左边的模块、coding、下面的脚本、以及终端输出反馈。
DVE界面也有很多操作,涉及到了很多原理,我们不用一一来学,先上手搞懂基本操作再说,基本操作就是会看波形,把仿真跑起来。
首先是添加波形,我这里不好截图,选中波形后,右键即可,
add to waves->new wave
如图已经打开了波形,现在先运行起来再说。
有个向下箭头,这个就是运行。或者点击快捷键F5,然后波形就出来了,此时肯定不太好看,希望看到一个full。使用按下F即可,或界面按钮。
旁边是放大缩小。
此时我明白你肯定希望像在modelsim中一样,按住ctrl键滚动齿轮,对局部进行拉大。
在DVE中,使用鼠标左键不放拖动,就可以在指定的区域进行放大了。而且非常有趣的是,分为横向拖动和纵向拖动,纵向拖动是看full,还有斜着拖动,斜着拖动是看缩小,横向拖动是放大。
另外,在DVE中按住ctrl键,滚动齿轮,是波形向前向后。
然后可以右键可以add marker
2.2 基本入门
使用dve -v
或者在DVE的命令行输入gui_get_version
或者在help->about帮助菜单选项
可以查看到DVE的版本,DVE和VCS的版本要一致才行
在simulator中的选择setup,然后执行文件选择simv文件即可
该按钮可以用来重启波形
IC-工具篇--VCS使用教程-卷二(202004013)相关推荐
- 数据加密与安全专题《mbedtls工具篇,实用教程1@mbedtls简介和安装教程》
引言 物联网的关键在与可通过网络进行远程数据传输与控制,例如手机APP控制家里的摄像头.微波炉等,安全问题尤为重要,对传输数据进行加密传输成为保障网络安全的必然手段之一,在物联网领域,比较成熟且应用 ...
- 仿真工具-VCS入门教程
VCS入门教程(一):VCS介绍与基本使用 VCS入门教程(二):VCS进行debug的三种方式 VCS入门教程(三):VCS查看verilog代码覆盖率 VCS入门教程(四):VCS门级网表仿真 I ...
- 【工具篇】最好用在线免费caj转PDF教程 caj2pdf在线
众所周知,翟天临那句"知网是个什么东西"是反问句! 前言 由于caj格式只能使用cajviewer以及全球学术快报等专用软件进行查看,很多情况下做笔记(咳咳)需要复制粘贴操作但是容 ...
- 群辉服务器更新系统教程,男人的生产力工具 篇二百四十六:新手玩转群晖NAS:一步一步教你更新群晖DSM系统...
男人的生产力工具 篇二百四十六:新手玩转群晖NAS:一步一步教你更新群晖DSM系统 2020-08-05 10:46:03 18点赞 175收藏 59评论 新手与新知男人的生产力工具 篇二百三十九:新 ...
- iOS Hook相关教程 工具篇
iOS hook相关教程 工具篇 osx 工具集 class-dump 建议安装 class-dump,顾名思义,就是用来dump目标对象的class信息的工具.该工具利用Objective-C语言的 ...
- Revit二次开发入门教程一(工具篇)
对BIM开发感兴趣的读者可以关注我的BIM开发系列教程 什么是BIM开发?这篇文章可以告诉你 Revit二次开发教程提纲 Revit二次开发编程入门一(工具篇) 前言 BIM诞生的背景 Revit在B ...
- 【Unity 实用工具篇】✨| Tutorial Master 2 游戏引导教程 快速上手
前言 [Unity 实用工具篇]✨ | Tutorial Master 2 游戏引导教程 快速上手 一.Tutorial Master 2 介绍 1.1 基本概念 1.2 相关链接 1.3 效果展示 ...
- 【后端教程】深入浅出动态化 SSR 服务(一):开发工具篇
简述 在前端还未系统化之时的刀耕火种时代,已经有非常多的生成页面的工具,其可视化的方式极大的赋能了非技术人员,加快了业务的迭代速度.如今,随着前端技术的发展和复杂化,我们看到越来越多以组件为基础的页面 ...
- PEInfo编程思路讲解01 - 工具篇01|解密系列
PEInfo编程思路讲解01 - 工具篇01 让编程改变世界 Change the world by program 软件安全是信息安全领域的重要内容,本系列视频教程将涉及到软件相关的加密.解密. ...
最新文章
- python【数据结构与算法】深入浅出哈希表
- css 横线_CSS-画一个太极阴阳图
- ASP——Request.Form()方法获取POST提交方式的表单中文乱码解决方案
- 游戏AI——行为树理论及实现
- PyODPS DataFrame 的代码在哪里跑
- 20110126 学习记录:一些关于html中布局的代码 CSS hack速查表
- JAMstack简介:现代Web的体系结构
- python 图像格式转换_如何用六行Python构建图像类型转换器
- Hadoop无法上传文件查找原因
- 83、冗余网关配置实验之VRRP
- 尚硅谷RabbitMQ学习笔记(上)
- 【书影观后感 八】《周期》万事皆周期
- AirDrop是什么?
- jks证书转为pem证书,TrustedCertEntry not supported的解决办法
- 下载各省疫情历史数据
- 最值得珍藏的420个生活小窍门
- 机器人自动化《RPA国内外平台深度对比》
- 64位百度云 catia v6_CATIA V6R2015百度云
- 脑皮质算法篇(1)-- 导读
- 护壁桩嵌入深度_桥梁钻孔灌注桩嵌岩深度规范具体要求深度是多少?