寄存器传输级(RTL)验证在数字硬件设计中仍是瓶颈。行业调研显示,功能验证占整个设计工作的70%。但即使把重点放在验证上面,仍有超过60%的设计出带需要返工。其主要原因是在功能验证过程中暴露出来的逻辑或功能瑕疵和缺陷等。显然,需要进一步改进验证技术。
设计团队一般采用系统模型进行验证。就验证来说,系统模型比RTL更具优势,比如系统模型易于开发且具有优异的运行时性能。挑战性在于如何在系统级验证和生成功能正确的RTL间建立起桥梁。一种称为时序逻辑等效性检查的方法具有桥接两者的能力,它是基于C/C++或SystemC编写的规范来对RTL实现进行形式验证。
本文将讨论商用图形处理芯片所采用的从系统级到RTL的设计和验证流程。在该流程中,先要开发出系统模型,然后用它来确认视频指令的算术运算,然后再采用时序逻辑等效性检查方法验证RTL实现。
系统级流程
随着设计复杂性的增加,为了仿真整个系统,系统级建模变得不可避免。伴随功能划分、模块接口和硬件/软件协同设计而来的设计复杂性呈指数形式增长,使得系统验证势在必行。目前常采用C/C++或SystemC进行系统级设计和验证。
本例采用了C/C++来建模视频处理算法模块。一旦系统模型完成了调整和验证,RTL设计师就可以编写Verilog代码。高层综合工具可以从系统代码生成RTL。但工程师更常见的做法是用RTL代码手工重新编写设计。它是设计的解释而非转换。即便已用多种验证测试平台对RTL实现进行了验证,采用基于仿真的方法也无法测试全部可能的状态。
在设计流程中有许多验证工具和方法可以采用,它们包括:基于断言的验证,随机激励生成和以覆盖率驱动的验证等。上述方法在功能上也许是值得依赖的,但它们都没有借助系统模型。时序逻辑等效性检查方法可以将系统模型的这种信心直接转换为RTL实现。
图形处理器市场受成像质量、再现性能和用户购买时机的影响很大。对负责研制最新图形处理器芯片的项目团队来说,上述因素要求他们迅速开发出新算法、拿出新设计。为了满足这种要求,可以采用系统模型来弥合初始规范和出带间的差距。当项目开始时,受控随机RTL仿真已运行好几天了,但验证工程师仍担心会有“遗漏”的缺陷。被测RTL设计可以实现视频和非视频指令,并用在建项目的算术模块来创建下一代视频处理芯片。
顶一下 0
踩一下
用户评论
已有0位网友发表了看法



发表评论