本文主要是介绍V0 第4节 SV及UVM概述,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1. SystemVerilog发展历史
- SV 是IEEE 1364-2005 Verilog标准的扩展
- 此扩展包含了用来实现可综合设计的设计语言特性,也包含了用来对大型设计做验证的验证语言特性
- SV是用来建议一种新的硬件描述和验证语言(HDVL,Hardware Description and Verification Language)
- SV通过一种统一的语言来帮助工程师对大型复杂硬件系统进行建模,并且对其功能进行验证
2. SV标准的诞生
- SV标准由Accellera标准组织牵头发民
- Accellera是一家非盈利性的指在于支持EDA语言发展的组织
- SV 3.0 于2002年6月由Accellera发布,该版本目的在于扩展Verilog的可综合语言特性,以及如何在更高层次上构建硬件模型
- SV 3.0 的版本是在Verilog-1995和Verilog-2001基础上的第三个版本
- SV 3.1 版本扩展了若干有关验证的特性,并且于2003年5月发布
- 2004年5月,SV 3.1a的版本作为IEEE标准的基础版本,并且在2005年由IEEE正式纳入标准,即IEEE 1800-2005,最新的标准目前是IEEE 1800-2017
3. SV的语言继承历史
- SUPERLOG的扩展综合语言子集(Co-Design Automation 公司)
- OpenVERA验证语言(Synopsys公司)
- PSL断言(IBM公司)
- OpenVERA断言(OVA,Synopsys公司)
- DirectC和覆盖率应用编程接口(API,Synopsys公司)
- 独立编译和$readme扩展(Mentor公司)
- 高层次语言特性(BlueSpec公司)
- SV语言对于Verilog语言是完全向后兼容的
4. SV语言的核心特性
- 接口 interface
- 面向对象特性 class & package
- 约束随机 constrained random
- 线程控制和通信 process control and communication
- 功能覆盖率 function coverage
- 外部语言编程接口 Direct Programming Interface
- 断言 assertion
5. UVM简介
- SV经历了十多年的更新和完善,已经全面雄起为IC验证领域的霸主
- 除了底层语言的统一以外,上层的高级验证方法学也在2011年2月份得到了融合,即UVM(Universal Verification Methodology) 1.0发布
5. UVM的优势
所有的验证方法学服务目的都在于提供一些可以重用的类,来减轻在项目之间水平复用和垂直复用的工作量,而同时对于验证新人又能提供一套可靠的框架,帮助他们摆脱搭建房子构思图纸的苦恼
6. UVM的应用
UVM的框架构建类和测试类能够帮助验证工程师减轻环境构建的负担,进而将更多的精力集中在如何制定验证计划和创建测试场景
7. UVM学习路线
- 认识UVM世界的版图(类库)和核心机制
- 学习核心的UVM组件和层次构建方式
- 了解常见的UVM组件间的通信方式
- 深入UVM测试场景的构成
- UVM的寄存器模型应用
8. UVM类库地图
- 核心基类
- 工厂factory类
- 事务transaction和序列sequence类
- 结构创建structure creation类
- 环境组件environment component类
- 通信管道channel类
- 信息报告message report类
- 寄存器模型 register model 类
- 线程同步 thread synchronization类
- 事务接口 transaction interface类
这篇关于V0 第4节 SV及UVM概述的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!