数字集成电路设计(五、仿真验证与 Testbench 编写)(五)

news2024/11/29 0:42:10
  • 文章目录

    • 9. 编译预处理语句
      • 9.1 仿真时间标度
    • 10. Verilog HDL测试方法简介

9. 编译预处理语句

在这里插入图片描述

  • 这些在C语言中都有涉及,但是在硬件描述语言中相对用的不是特别多,比如说include,在语言用的特别多,但是在硬件描述语言很少include,因为如果要建库,一定会通过use lib在软件中把库建了

9.1 仿真时间标度

  • 因为用的不多,所以只讲`timesclae
  • 很重要的概念,决定了工作效率,用合适的时间仿真合适的电路,这样会好一些
  • `timescale 命令用来说明跟在该命令后的模块的时间单位和时间精度。
    在这里插入图片描述
  • 举例:
    (1)
    在这里插入图片描述
    表示模块中所有的时间值都是 1ns 的整数倍。这是因为在timescale 命令中,定义了时间单位是1ns。因为timescale 命令定义的时间精度为 1ps,所以模块中的延迟时间可表达为带三位小数的实型数(time和realtime)。

(2)
在这里插入图片描述
该例中,模块中的时间值均为 10s 的整数倍。timesacle 命令定义的时间单位是 10s延迟时间的最小分辨度为十分之一微秒(100 s)即延迟时间可表达为带一位小数的实型数

(3)
在这里插入图片描述
该例中,`timescale命令定义了模块 delay_tb 的时间单位为 10ns、时间精度为1ns因此在此测试模块中,所有的时间值应为 10s 的整数倍,且以 1ns 为时间精度。这样经过取整操作,存在参数d中的延迟时间实际是 16ns(即1.6x10ns),这意味着在仿真时间为 16n时寄存器set 被赋值0,在仿真时间为32ns 时存器set 被赋值1。
!!对于仿真的时序要求非常高,代表了计算能力的有效使用

10. Verilog HDL测试方法简介

  • 如何衡量一个测试是不是好的,完备的,有效的?实际上有不同的测试方法
  1. 完全测试法
    对于复杂的设计来说,常常通过检查代码的覆盖率来检查验证工作是否完成。代码覆盖率可以指示 Verilog HDL代码描述的功能有多少在仿真过程中被验证过。通常代码覆盖率包括以下内容:
    (1)语覆盖率
    (2)路径覆盖率
    (3)状态机覆盖率
    (4)触发覆盖率
    (5)表达式覆盖率
    !!!!在对覆盖率检查的时候,希望越高越好,但是不可能达到100%,因为有一些条件表达式,比如case有一个分支,虽然程序状态都满了,但是分支必须要加进去,因为综合工具没有这个语句可能报一个错误或者warning。因为做硬件描述语言首先希望编译和综合之后的warning尽量少,在编译尽可能少的情况下,对所有的warning必须要有合理的解释,比如端口连接没有连;第二个就是仿真,就会考虑到你是不是充分, 这 时 候 就 会 有 覆 盖 率 的 检 查 这时候就会有覆盖率的检查 ,覆盖率检查不可能100%,但是通常都是99.几%,要尽可能提高覆盖率
  2. 随机测试法
    (1)在 Verilog HDL中提供了多个用于随机测试的系统命令,通常使用随机测试的系统函数来仿真真实应用的情况,如在通信领域中常用的帧同步搜索电路需要从接收的数据流中检测发送端固定插入的某个特殊的码型,而数据本身也有可能包括该码型,在这种情况下进行随机化测试就更接近于真实应用的情况。其中最常用的系统命令是随机数产生系统任务Srandom。
    (2)!!在现在的超大规模的集成电路中,主要用的都是随机测试法,通过样本空间的样本序列产生足够多的样本来产生覆盖
    (3)!!随机测试的概念是非常重要的,比如说手机芯片的测试,这是测不出来的。因为每个人打电话的语句都不一样,产生的东西都不一样;浏览网页,访问的网页也不一样,等等。在这这些不一样的情况下,要求不一样的测试是不可能的,所以一定是随机测试。但是基本结构是一样的,比如4G,5G要求10ms或者20ms的帧的形式。
  3. 自动测试法
    在集成电路测试领域,全面准确地测试才能保证大规模集成电路的正常工作,而确保一个设计能够得到全面测试的唯一途径就是实现任务的自动化。通常通过创建一个检验表使用相应个数的采样值来完成自动测试。当修改过源代码后,所有的测试程序都自动被再次执行。但需要注意的是,使用自动测试可能会存在截断误差。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【每天学习一点新知识】OWSAP TOP10

OWASP OWASP开放式Web应用程序安全项目(open web application security project)每年会通过确定企业面临的最严重的10类威胁,以此提高人们对Web应用程序安全的关注度。 2021年 A01 失效的访问控制 未对通过身份验证的用户实施恰当的访问控…

裸辞4个月,面试了30家公司,终于找到理想工作了

上半年裁员,下半年裸辞,有不少人高呼裸辞后躺平真的好快乐!但也有很多人,裸辞后的生活五味杂陈。 面试30次终于找到心仪工作 因为工作压力大、领导PUA等各种原因,今年2月下旬我从一家互联网小厂裸辞,没想…

APS高级排产在冶金行业的应用

冶金工业是指对金属矿物的勘探、开采、精选、冶炼、以及轧制成材的工业部门。包括黑色冶金工业(即钢铁工业)和有色冶金工业两大类。随着业务量的不断扩大,仅具有传统的ERP系统和人工生产调度已逐渐不能满足精益生产改进的要求。建立高效的精益生产计划模型及其对应的…

Nginx模块开发之http handler实现流量统计(入门篇)

Nginx模块开发之http handler实现流量统计一、Nginx模块之http handler简介二、Nginx handler模块开发2.1、示例代码2.2、编写config文件2.3、编译模块到Nginx源码中2.4、修改conf文件2.5、执行效果三、Nginx的热更新总结后言一、Nginx模块之http handler简介 当nginx解析conf…

计算机毕业设计之java+ssm手机综合类门户网站

项目介绍 手机综合类门户网站采用ssm框架和eclipse编辑器、MySQL数据库设计并实现的,主要包括系统手机评测管理模块、文章管理模块、手机新闻管理、所有评论管理、登录模块、和退出模块等多个模块。 管理员的登录模块:管理员登录系统对本系统其他管理模块进行管理。…

2016-2021年各省高考分数线

2016-2021年各省高考分数线 包含各省市不同招生类别的高考分数线,包括普通本科、特殊类型招生、艺术类本科、体育类本科、普通专科的分数线。 普通高等学校招生全国统一考试(Nationwide Unified Examination for Admissions to General Universities a…

网络防火墙入门

防火墙的作用? 防止从外向内的网络入侵行为的策略。后来,防火墙不但用于防范外网,例如:对企业内网的 DoS 攻击或非法访问等,也开始防范从内部网络向互联网泄露信息、把内部网络作为攻击跳板等行为。 什么是代理服务器…

Hash表(哈希表、散列表)

哈希表 概念 为什么需要哈希表 静态查找表与动态查找表中,为了查找某关键字值等于某个值的记录,都要经过一系列的关键字进行比较,以确定待查记录的储存位置或查找失败,查找的时间总是与比较次数有关 什么是哈希表 哈希表&…

[附源码]java毕业设计校园征兵及退役复原管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

视听杂志视听杂志社视听编辑部2022年第11期目录

专题:对外传播 共塑与去精英化:国家形象建构的实践创新——基于纪录片《柴米油盐之上》的多模态分析 董星雨;程欣;刘苏情; 3-7《视听》投稿:cnqikantg126.com 网络赋权下抖音国际版TikTok的海外传播策略探析 吴梦玲; 7-10 以画对话&#xff…

m3u8 文件格式详解

简介 M3U8 是 Unicode 版本的 M3U,用 UTF-8 编码。"M3U" 和 "M3U8" 文件都是苹果公司使用的 HTTP Live Streaming(HLS) 协议格式的基础,这种协议格式可以在 iPhone 和 Macbook 等设备播放。上述文字定义来自于…

一文玩转Java 泛型知识

✅作者简介:热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏:前端开发者…

青岛品质水稻共养 国稻种芯·中国水稻节:山东西海岸收获季

青岛品质水稻共养 国稻种芯中国水稻节:山东西海岸收获季 半岛全媒体记者 孟达 新闻中国采编网 中国新闻采编网 谋定研究中国智库网 中国农民丰收节国际贸易促进会 国稻种芯中国水稻节 中国三农智库网-功能性农业农业大健康大会报道:山东青岛西海岸新区王…

发了3000个短视频作品才总结出的9点快速破播放的技巧

大家好,我是我赢助手,专注于自媒体短视频去水印、去重和文案提取运营。 今天给大家分享下发了3000个短视频作品才总结出的9点快速破播放的技巧: 1、前期养号: 新号创建前7天不要急着发作品,刷兴趣标签养号,能让账号…

【机器学习】数据驱动方法在电网稳定分析应用浅谈

目录 一、数据驱动概述 二、数据驱动特点 三、数据驱动与其他方法对比 四、总结 五、参考文献 一、数据驱动概述 数据驱动在电力系统稳定分析中的应用,主要目标是从电网运行数据角度建立电力系统稳定分析模型,以数据之间的关联性分析视角挖掘电力系…

MySQL数据库期末考试试题及参考答案(08)

版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl 一、 填空题 MySQL用户变量由符号____和变量名组成。MySQL中____循环语句会无条件执行一次语句列表。DELIMITER语句可以设置MySQL的____。MySQL中打开游标使用____关键字。…

基于PaddleOCR的集装箱箱号检测识别

基于PaddleOCR的集装箱箱号检测识别 项目背景 国际航运咨询分析机构 Alphaliner 在今年 3 月公布的一组数据,2021 年集装箱吞吐量排名前 30 的榜单中,上海港以 4702.5 万标箱的「成绩单」雄踞鳌头。 较上一年同期,上海港集装箱吞吐量增长 8…

在host上窥探kvm虚拟机内存

1. kvm内存虚拟化 kvm虚拟机的内存虚拟化,使用了内存转换技术,过程如下:GVA -> GPA -> HVA -> HPA 通过qemu启动了一个8G内存的虚拟机,查看内存smaps,可以发现有个内存就是8G,这个就是guest所使用…

Pioneer | X METAVERSE PRO Explores the New Value of “Mining + Finance“

“The mining boom driven by Bitcoin has created many wealth myths: miners can earn 50 BTC every 10 minutes at that time. If you successfully get a Bitcoin block and hold it since 2009, you will have BTC worth $827,930 in your wallet by 2022. “ Cryptocurr…

AE插件:Composite Brush Mac(画面颜色选取替换修改)

Composite Brush for Mac是一款由AEscripts出品的AE画面颜色选取替换修改插件,可以直接在视频画面上选取颜色,然后对选择部分修改替换成自己需要的颜色,有了Composite Brush插件用户可以直接在视频画面上选取自己想要的颜色。 单击并拖动&am…