vivado联合modelsim测试覆盖率

(1)配置环境

        安装modelsim和vivado。点击vivado菜单栏中的tools,在下拉选项中选择compile simulation libraries。simulator选项选择:modelsim simulator。compile library location表示编译库存放的路径。simulator executable path:表示modelsim安装路径,即modelsim.exe所在的路径。如下所示:

根据计算机配置,编译时间大概在10分钟左右。

(2)配置vivado环境

        这一步将vivado与modelsim联合起来。点击vivado菜单栏中的tools,在下拉菜单中选择setting,target simulator选择modelsim simulator ,compile library location选择刚才编译路的路径。再点击apply,最后点击ok。

(3)在vivado中开始仿真

        在vivado中建立工程后,创建源文件以及tb文件,点击simulation—>run behavior simulation。如下图所示:这一步骤将打开modelsim。

(4)在modelsim中设置覆盖率选项 

        在vivado中点击simulation 后,将自动打开modelsim界面。此时,在modelsim中的library、project、覆盖率coverage界面中都没有内容,这是因为vivado将工程创建在xil_defaultlib默认的库下,在modelsim命令窗口中会看到这条命令:

vsim -voptargs=""+acc"" -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -lib xil_defaultlib xil_defaultlib.tb xil_defaultlib.glbl 

(4.1)在modelsim中设置覆盖率的编译选项

        在modelsim界面中点击compile选项,在下拉菜单中选择compile option,在弹出的界面上点击coverage,在coverage界面中点击需要选择的覆盖率类型,最后点击apply,再点击ok。
        

        将编译选项设置好覆盖率选项后,需要再重新将设计文件编译一次,由于设计文件在vivado工程中,所以在编译的时候需要使用源文件的绝对路径,命令如下:

vlog   F:/modelsim_workspace/coverage_single/QD.v  +cover=bcesxf

vlog编译编译.v或者.sv文件的命令。
F:/modelsim_workspace/coverage_single/QD.v  表示设计文件所在的路径。
+cover=bcesxf 表示选择覆盖率的类型。

(4.2)设置modelsim 中simulation覆盖率选项

        在仿真时,也需要设置仿真覆盖率选项,点击modelsim菜单栏中的simulate选项,点击design optimization选项,点击coverage选项,选择覆盖率类型,点击start immediately选项,最后返回到design界面,手动填写output design name ,可以是任何合法的名字;在design unit中写入vivado编译后tb的名称。

        最后在modelsim命令行窗口中敲入仿真命令:xil_defaultlib.tb表示vivado编译后tb所在库的全名。

vsim -gui xil_defaultlib.tb -coverage -novopt

        在Modelsim菜单栏中点击view—>coverage—>instance coverage ,即可看到各个模块实例的覆盖率情况,点击view—>coverage—>code coverage analysis即可看到每个实例的语句覆盖情况。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端js语音朗读文本

<!DOCTYPE html> <html lang"zh"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>语音朗读</title></head><body>&l…

高通OTA升级非常规分区方法

高通OTA升级非常规分区方法 1. 高通LE OTA背景2. 高通LE OTA升级方案2.1 SDX12 OTA方案2.2 OTA升级TZ/RPM/Aboot OTA是一个通用述语&#xff0c;常见的解释为over the air。通过这一解释&#xff0c;OTA最开始的概念&#xff0c;是空中升级。后来&#xff0c;又衍生出了FOTA&am…

jupyter notebook 不知道密码,怎么登录解决办法

jupyter notebook 不知道密码&#xff0c;怎么登录解决办法 1、 windows下&#xff0c;打开命令行&#xff0c;输入jupyter notebook list &#xff1a; C:\Users\tom>jupyter notebook list Currently running servers: http://localhost:8888/?tokenee8bb2c28a89c8a24d…

企业软件定制开发的优势|app小程序网站搭建

企业软件定制开发的优势|app小程序网站搭建 企业软件定制开发是一种根据企业特定需求开发定制化软件的服务。相比于购买现成的软件产品&#xff0c;企业软件定制开发具有许多优势。 1.企业软件定制开发可以满足企业独特需求。每个企业都有自己独特的业务流程和需求&#xff0c;…

使用docker命令_进入容器_登录mysql服务_并执行sql语句---Docker工作笔记005

今天就用到了,不得不说用docker用到的还是少,记录一下,常用的也就这些吧. 首先执行: docker ps [root@localhost dataease-1.18.9]# docker ps CONTAINER ID IMAGE COMMAND CREATED …

代码随想录算法训练营Day 59 || 503.下一个更大元素II、42. 接雨水

503.下一个更大元素II 力扣题目链接(opens new window) 给定一个循环数组&#xff08;最后一个元素的下一个元素是数组的第一个元素&#xff09;&#xff0c;输出每个元素的下一个更大元素。数字 x 的下一个更大的元素是按数组遍历顺序&#xff0c;这个数字之后的第一个比它更…

华清远见嵌入式学习——网络编程——作业4

作业要求&#xff1a;①使用IO多路复用中的select函数实现TCP并发服务器客户端 ②使用IO多路复用中的poll函数实现TCP并发服务器的服务器端 一、 代码 #include <myhead.h>#define SERPORT 8888 //服务器端口号 #define SERIP "192.168.114.113"…

曲率半径的推导

参考文章 参考文章

ABB机 器 人 操 作 培 训

目 录 1 培训手册介绍 ---------------------------------------------2 2 系统安全与环境保护 ---------------------------------------------3 3 机器人综述 ---------------------------------------------5 4 机器人示教 --------------------------------------------12…

强化学习------贝尔曼方程

目录 前言基础知识马尔可夫决策过程 (Markov decision process, MDP)回报(Return)折扣回报(Discounted Return) State Value&#xff08;状态价值函数&#xff09;贝尔曼方程的推导贝尔曼方程的矩阵形式Action Value&#xff08;动作价值函数&#xff09;贝尔曼最优公式 前言 …

pip安装python包到指定python版本下

python -m pip install 包名1.命令行进入到指定python安装目录。比如我电脑上有python3.8也有python3.9。准备给python3.9安装指定的包

gitee推荐-PHP面试准备的资料

该内容为giee项目。PHP-Interview: 这个项目是自己准备PHP面试整理的资料。包括PHP、MySQL、Linux、计算机网络等资料。方便自己以后查阅&#xff0c;会不定期更新&#xff0c;欢迎提交pr&#xff0c;如果错误&#xff0c;请指出&#xff0c;谢谢 在线预览地址&#xff1a;Intr…