一种基于UVM的高层次化1394链路层验证方法
2021-09-28魏美荣王宣明
魏美荣,田 泽,王宣明,郭 蒙
(1.航空工业西安航空计算技术研究所,陕西 西安 710068;2.集成电路与微系统设计航空科技重点实验室,陕西 西安 710068;3.西安翔腾微电子科技有限公司,陕西 西安 710068)
0 引 言
1394总线是一种高性能串行总线,链路层在串行总线节点系统中位于事务层、应用层和物理层之间。链路层为事务层提供异步数据的接收、发送和确认服务,为应用层提供固定时间间隔的等时数据广播传输服务。同时链路层提供寻址、数据检查、发送数据组包和接收数据解包服务。
随着集成电路技术的不断发展,芯片的规模和集成度在快速提升,这对验证提出了更高的要求。据统计表明,发现bug的时间与修复成本成指数关系,越早发现弥补的成本也会越低,因此,验证已经成为芯片设计的发展瓶颈。针对传统RTL代码验证平台重用性差、覆盖率低和自动化程度低等问题,在吸取了OVM,VMM和ERM等验证方法优点的基础上,三大EDA公司(Mentor、Candence和Synopsys)联合业内其他公司推出UVM(universal verification methodology)验证方法学。UVM是基于系统级硬件描述语言SystemVerilog,具备面向对象编程的思想和功能[1-3],实现了验证的重用性和清晰的层次结构。由于其开源的特质,使得它相比于其他的验证方法学,具备更好的兼容性。UVM平台的架构主要是由通用的验证组件(universal verification component,UVC)构成的,而且每个UVC都是已经封装好、功能完善且可配置的验证环境,可重用的验证组件,约束随机激励产生、自动化的验证平台等特点,大大缩短了验证时间[4-6]。
另外,相比于传统的验证平台,断言机制提供了简洁的行为级代码描述,能对设计的属性进行实时性的检测,仿真过程一旦报错可迅速定位[7]。……
