VCS4 debug with DVE

1、重点讲解:

在verilog源代码中嵌入VCD+ 系统函数,重点如testbench文件中。VCD文件是VCS产生的仿真波形文件,未经压缩,占用空间较大。VCD+是压缩后的波形文件。

编译、仿真以生成VCD+文件。

在后处理模式中使用激活DVE+log对产生的errors进行修改优化。

将VCD+文件读进debugger memory中。

最后,Debug。

2、DVE后处理模式

1)仿真速度:

2)信号可视性:用户定义

3)信号可追踪性:可通过源码、原理图或者波形追踪信号,以便后期通过log记录的信息消除errors。

4)适用性:友好的图形界面以及可以应用于所有级别复杂度的电路仿真。

什么情况下使用后处理模式?

后处理debug的步骤:

 重点是画线句:要在源代码中嵌入系统函数$vcdpluson,便于在仿真过程中将波形、log等等信息全部记录下来,以便后期使用。

 系统函数:

 level_number:0表示记录全部层级产生的信息;1表示记录当前层产生的信息;n表示记录n层产生的信息。

module_instance:开始记录产生的信息的开始层级,类似起点层。

net_or_reg:记录哪根线或者哪个寄存器产生的信息。

 $vcdplusautoflushon:无论何时出现一个断点(例如$stop系统函数、命令行停止命令或者DVE的停止按钮等等),VCS将把仿真结果等信息从仿真内存写入到VCD+文件中。

$vcdplusautoflushoff:关闭在断点时自动写入数据功能。

$vcdplusautoflush:手动通过VCS写入数据到VCD+文件。

 $vcdplusdeltacycleon:

$vcdplusdeltacycleoff:

$vcdplusglitchon:

$vcdplusglitchoff:

 

 $vcdpluson:出现在哪个模块中,该模块以及其子模块的波形都会记录下来。

$readmemb:表示数组中存放的数据为二进制数据,如果结尾为-h则存放的是十六进制数据。

 编译:

条件编译:通过判断是否定义宏,然后是否执行$vcdpluson()函数;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/10313.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

NodeJS Cluster模块基础教程

Cluster简介 默认情况下,Node.js不会利用所有的CPU,即使机器有多个CPU。一旦这个进程崩掉,那么整个 web 服务就崩掉了。 应用部署到多核服务器时,为了充分利用多核 CPU 资源一般启动多个 NodeJS 进程提供服务,这时就…

当ChatGPT续写《红楼梦》,能替代原著吗?

来源: 清华大学出版社 近段时间,人工智能聊天机器人ChatGPT火爆网络,“AI写作是否会让文字工作者被替代?”成为人们关注并持续讨论的话题。 闲聊、问答、解题、写代码、写诗、创作小说, 连续回答,不断纠错&#xff0c…

拥抱自动化测试,快速升职加薪丄Selenium+Pytest自动化测试框架教你如何做到

目录:导读 引言 SeleniumPytest自动化测试框架是目前最流行的自动化测试工具之一,其强大的功能和易用性援助许多开发人员和测试人员。 selenium自动化 pytest测试框架禅道实战 选用的测试网址为我电脑本地搭建的禅道 conftest.py更改 config.ini更…

MyBatis配置文件 —— 相关标签详解

目录 一、Mybatis配置文件 — properties标签 二、Mybatis配置文件 — settings标签 三、Mybatis配置文件 — plugins标签 四、Mybatis配置文件 — typeAliases标签 五、Mybatis配置文件 — environments标签 六、Mybatis配置文件 — mappers标签 一、Mybatis配置文件 —…

2023年第十四届蓝桥杯 C++ B组参赛经验总结

没错,今年本菜狗又来啦~~ hhh , 文章当时比赛完就写完了, 发的有点晚 比赛成绩 (等出来我就写这里) 感觉最多省二 估计没省一了555 赛前准备 赛前把蓝桥杯课基本都刷了 , 但是还是感觉有点慌 刷题经验 …

【网络原理】网络通信与协议

✨个人主页:bit me👇 ✨当前专栏:Java EE初阶👇 目 录一. 网络发展史二. 网络通信基础1. IP地址2. 端口号3. 认识协议(核心概念)4. 五元组5. 协议分层6. 封装和分用一. 网络发展史 独立模式:计…

springboot从2.1.3升级到2.3.5后控制台自动输出http请求日志RequestResponseBodyMethodProcessor

springboot从2.1.3升级到2.3.5后控制台自动输出http请求日志RequestResponseBodyMethodProcessor和RequestMappingHandlerMapping推荐使用第二个方案简单 明了 方便 快捷方案一第一步定义TurboFilter第二步配置logback方案二 直接配置logback的配置XML推荐使用第二个方案简单 明…

【三十天精通 Vue 3】 第四天 Vue 3的模板语法详解

✅创作者:陈书予 🎉个人主页:陈书予的个人主页 🍁陈书予的个人社区,欢迎你的加入: 陈书予的社区 🌟专栏地址: 三十天精通 Vue 3 文章目录引言一、Vue 3 模板语法概述1. Vue 3 模板语法的简介2. Vue 3 模板…

Openlayers(五)点位聚合Cluster

Openlayers(五)点位聚合Cluster 1.业务问题 由于点位在地图上显示过多,会造成页面卡顿、点位标注信息相互叠加导致看不清 优化后效果 不断放大层级 2.聚合类Cluster OpenLayers 中聚合是通过 ol.source.Cluster 实现,聚合的原…

Flink的窗口机制

窗口机制 tumble(滚动窗口) hop(滑动窗口) session(会话窗口) cumulate(渐进式窗口) Over(聚合窗口) 滚动窗口(tumble) 概念 滚…

系统复杂度之【高性能】

系统复杂度之【高性能】 今天我们来谈一谈系统复杂度的根源之【高性能】 对性能的不懈追求一直是人类科技持续发展的核心动力。例如计算机,从电子管计算机到晶体管计算机,再到集成电路计算机,运算性能从每秒几次提高到每秒几亿次。然而&#…

VUE_学习笔记

一、 xx 二、模板语法 1.模板语法之差值语法 :{{ }} 主要研究:{{ 这里可以写什么}} 在data中声明的变量、函数等都可以。常量只要是合法的javascript表达式,都可以。模板表达式都被放在沙盒中,只能访问全局变量的一个白名单&a…

【微服务笔记14】微服务组件之Config配置中心高可用环境搭建

这篇文章,主要介绍微服务组件之Config配置中心高可用环境搭建。 目录 一、高可用Config配置中心 1.1、高可用配置中心介绍 1.2、搭建Eureka注册中心 1.3、搭建ConfigServer服务端 (1)引入依赖 (2)添加配置文件 …

Jetson nano部署剪枝YOLOv8

目录前言一、YOLOv8模型剪枝训练1. Pretrain[option]1.1 项目的克隆1.2 数据集1.3 训练2. Constraint training3. Prune4. finetune二、YOLOv8模型剪枝部署1. 源码下载2. 环境配置2.1 trtexec环境变量设置3. ONNX导出3.1 Transpose节点的添加3.2 Resize节点解析的问题4. 运行4.…

FIFO的工作原理及其设计

1.简介 FIFO( First Input First Output)简单说就是指先进先出。FIFO存储器是一个先入先出的双口缓冲器,即第一个进入其内的数据第一个被移出,其中一个口是存储器的输入口,另一个口是存储器的输出口。 对于单片FIFO来说,主要有两种…

SHELL函数可课后作业

一、题目 1、编写函数,实现打印绿色OK和红色FAILED 判断是否有参数,存在为Ok,不存在为FAILED 2、编写函数,实现判断是否无位置参数,如无参数,提示错误 3、编写函数实现两个数字做为参数,返回最…

多线程 之 CAS与synchronized的优化过程

前言 本篇介绍什么是CAS与synchronized的优化过程,如有错误,请在评论区指正,让我们一起交流,共同进步! 文章目录前言1. 什么是CAS?2. CAS实现的操作2.1 实现原子类2.2 实现自旋锁3. CAS的aba问题4. synchr…

【无人机】基于灰狼优化算法的无人机路径规划问题研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

链式二叉树及相关操作(前,中,后,层序遍历)

欢迎来到 Claffic 的博客 💞💞💞 “春来无事,只为花忙。” 前言: 上一期给大家介绍了二叉树的一种顺序结构:堆,这一期承接上一期,给大家继续介绍二叉树的另一种结构:链式结构。 目录…

golang指针相关

指针相关的部分实在是没有搞太明白,抽时间来总结下。 1.指针相关基础知识 比如现在有一句话:『谜底666』,这句话在程序中一启动,就要加载到内存中,假如内存地址0x123456,然后我们可以将这句话复制给变量A&…