systemverilog课件.ppt_第1页
systemverilog课件.ppt_第2页
systemverilog课件.ppt_第3页
systemverilog课件.ppt_第4页
systemverilog课件.ppt_第5页
免费预览已结束,剩余11页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Systemverilog入门 目录 Systemverilog简介验证方法学为什么要学习SV 相关知识的了解主要应用SV与verilog的区别重点语法简单介绍 2020 3 25 HUST 2 16 Systemverilog简介 SystemVerilog简称为SV语言 是一种相当新的语言 它建立在Verilog语言的基础上发展出来的 SystemVerilog结合了来自Verilog C C 的概念 还有验证平台语言和断言语言 也就是说 它将硬件描述语言 HDL 与现代的高层级验证语言 HVL 结合了起来 使其对于进行当今高度复杂的设计验证的验证工程师具有相当大的吸引力 2020 3 25 3 16 HUST Systemverilog除了作为一种高层次 能进行抽象建模的语言被应用外 它的另一个显著特点是能够和芯片验证方法学结合在一起 即作为实现方法学的一种语言工具 使用验证方法学可以大大增强模块复用性 提高芯片开发效率 缩短开发周期 芯片验证方法学中比较著名的有 VMM OVM AVM和UVM等 2020 3 25 4 16 HUST 验证方法学 为什么要学SV 有如下优点 同时支持设计和验证的标准语言 支持约束随机的产生 支持覆盖率统计分析 支持断言验证 面向对象的编程结构 有助于采用事务级的验证和提高验证的重用性 6 有多种验证方法学的支持 2020 3 25 HUST 5 16 SV的使用群体 2020 3 25 HUST 6 16 SV语法部分关键字扩展 新增接口 interface 类似C语言中的数据类型 如int用户自定义类型 typedef 枚举类型 结构体和联合体类型转换 cast 强制类型转换 package 等类C赋值操作通过引用 ref 传送到任务 函数和模块 2020 3 25 HUST 7 16 SV应用 设计 SystemVerilog与Verilog语言相比 新增了的许多用于FPGA设计功能 具有比verilog更清晰 准确 简洁的硬件描述能力 FPGA供应商和EDA工具供应商的综合工具使SystemVerilog的设计拥有比在Verilog更容易理解的风格和较高的抽象层次的描述 加快了编码进程和可重用性 参考文档 UsingSystemVerilogforFPGADesign 中文 docx 2020 3 25 HUST 8 16 SV应用验证 1 编写受控随机的 分层的 可重用的测试平台的能力 Test Verilog编写测试平台的能力就相当于采用最基本的C语言结构编程 而采用SystemVerilog编写测试平台则相当于采用C 按照面向对象的思想编程 2 在设计描述和测试平台中添加断言的能力 Assertion 断言这个工具 在软件开发中早就广泛应用了 在单元测试 集成测试和功能覆盖率评估中 断言都是一个很强大的工具 3 更高抽象层次的系统描述能力 Architecturalmodeling OOP DynamicThreads InterprocessCommunication 行为级和事物级的描述能力 从名称上看来确实高级 2020 3 25 HUST 9 16 SV语法 数据类型除了 已提供的硬件设计所需要的网线和变量等数据类型外 增加了很多新的数据类型来帮助描述更抽象的硬件行为 如图所示 这些新增加的数据类型主要是与 语言的数据类型类似 这里介绍验证中主要使用到的部分 新增的主要数据类型主要有下面几种 两态 数据类型枚举类型和用户自定义类型动态数组 关联数组和队列联合体和结构体字符串类 2020 3 25 HUST 10 16 什么是SV的断言 SystemVerilog断言 简称SVA 是verilog引入的新的验证方法中的一种 它是对设计属性 行为 的描述 它是用描述性语言来描述设计的属性 在仿真过程中 如果一个被描述的属性不是我们期望的那样 那么断言就会失败 或者在仿真过程中 如果出现了一个不应该出现的属性 那么断言也会失败 SVA是一种描述性语言 可以完美地描述和控制时序相关的问题 而且语言本身简洁易读 容易维护 SVA还提供了许多内嵌的函数用于测试特定的时序关系和自动收集功能覆盖率数据 并且当断言失败时 仿真系统会根据失败断言的严重程度来决定是打印一条错误提示信息还是退出仿真过程 便于定位出错的位置 2020 3 25 HUST 11 16 SVA使用的地方及优点 SVA可以在以下地方监视信号间的各种时序关系 1 设计模块的内部 2 模块与模块间的连接信号 好处 1 和RTL代码放在一起进行综合 用于调试 2 进行设计的功能覆盖 2020 3 25 HUST 12 16 什么是SV接口 SystemVerilog在Verilog语言基础上扩展了 接口 interface 结构 接口给模型提供了一种新的方式 通过使用接口可以简化大型复杂设计的建模和验证 接口反映的是模块与模块之间的互连 对Verilog来说 主要通过模块的端口表现 2020 3 25 HUST 13 16 SV接口Vsverilog端口 Verilog模块的端口提供了一种描述设计中模块之间连接关系的方式 这种方式直观明了 但在大型复杂设计中 有很多缺点 在多个模块中必须重复声明端口在不同模块中有声明不匹配的风险设计规范中的一个改动需要修改多个模块在多个模块中通信协议也必须重复例如有三个模块对一个共享存储器进行读写操作 那么在这三个模块中 读写操作的控制逻辑必须重复描述5 限制了抽象的自顶向下的设计用模块端口连接时 设计的具体互连必须在设计周期的早期确定 而不能在一个不需要考虑设计细节的抽象层面上描述 2020 3 25 HUST 14 16 SystemVerilog增加了新的端口类型 接口 接口允许许多信号合成一组由一个端口表示 只需在一个地方对组成接口的信号进行声明 使用这些信号的模块只需一个接口类型的端口 接口的进一步认识 2020 3 25 HUST 1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论