Verisity公司不久前宣布开发成功一种新的验证方法,它可将系统级芯片(SoC)设计的验证效率提高10倍。Verisity同时还发布了一种针对“e”语言代码的静态分析工具-eAnalyzer。
Verisity公司的方法称为系统验证方法(System Verification Methodology,sVM),是以公司先前发布的eRM(e Reuse Methodology,e复用方法)为基础构建的。这是Verisity建立其称为验证过程自动化解决方案战略的一部分,不仅仅只限于“e”验证语言和Specman测试平台生成环境。
Verisity必须给“e”语言增加足够的价值来保持对系统级语言SystemVerilog 3.1的竞争力,后者包括源自Synopsys公司Vera语言的验证和测试平台生成结构。出于对IEEE的1364-2005 Verilog 标准的考虑,Verisity已经把一部分“e”语言技术贡献给了IEEE。
Verisity公司市场和业务发展部的副总裁Steve Glaser表示,现有验证方法支持事务级验证,而sVM的抽象层更高。“我们正朝着我们称为序列级的方向前进,序列就是事务的集合,”他说,“这是一种系统级事件的组合方法。”
其次,他补充道,sVM增加了一个新的自动化层。特别之处在于,通过运用独立但互相协作的序列,它能跨越多重“通道”或接口来产生验证和运用约束条件。虽然去年“e”语言的语法就已经升级成支持序列了,但直到现在它也仅仅能支持单通道的序列生成,Glaser说。
“想象一个具有很多接口和总线的SoC,”Glaser指出,“它需要能够同时承受来自所有可能接口的实际冲击。当你考虑所有的交互和互相依赖关系,并试图在实际的SoC设计中捕获所有这些边边角角的事件时,那确实是一个非常富有挑战性的难题。”
Specman针对sVM的改进
为了支持新的方法,Verisity已经为Specman增加了新的支持多通道和层次化序列的库。这些库为每一通道嵌入了发生器、检测器和监视器,并允许多通道约束计算、同步和协作。
“计算程序每秒计算几万个约束方程式,它还能查看各种所需条件下约束方程式和序列的完整描述,”Verisity的高级产品经理Steve Brown介绍道。他说,一个1千万门的设计在一个芯片上很容易就能拥有10到20个通道。
多通道方法使用模块级的序列激励,使器件所有可能的通道都能实现同时和协同产生激励。Verisity声称,和直接测试或其他用户自己的方式相比,多通道约束方程计算和生成仅需要十分之一的验证周期数来完成同样的任务。
利用一种新的寄存器包,sVM方法也支持寄存器模型和器件的自动生成。这种封装包生成配置序列、自动检测、寄存器访问和器件状态的覆盖。
“我们提供构建模块的库,这个库的第一个元素就是寄存器模型,人们可以对他们器件中不同类型的寄存器进行实例化和配置,”Brown说。
Specman的第三个改进是对Visualization Toolkit进行扩展来提供可视化和对多通道序列生成的调试的支持。Glaser举例说,如果有一张显示序列层次的图,用户就可以看明白序列是怎么和器件相互起作用的。VSPACE=12 HSPACE=12 ALT="Steve Glaser:vManager实质上是各种验证工具的有机集成">
随着Specman Elite version 4.3完整版的发行,一个包括了多通道生成、寄存器模型包和新的Visualization Toolkit的升级库的包也将投入使用,而这对sVM的性能来说没有任何额外的负担。
与此同时,Verisity的eAnalyzer可以被当成是验证代码的“保护”工具。但它也是一个“方法检测器”,Brown表示,这种增值型验证通过组织来获得“最好的实际结果”。
eAnalyzer提供了一套静态分析和验证方法检测工具,包括对e语言语法、语义、保护和风格的检测。“人们在参与开发软件的同时也同时参与了验证环境的开发,”Brown说。
其他的检测让用户能够对代码进行规则的调整,以达到更好的验证性能,还能运行覆盖率驱动的验证来保证eRM和sVM方法的一致性。
eAnalyzer适用于Linux、Solaris、和 HP-UX操作系统,每年的许可费是22,000美元。
vManager:智能型测试平台
为了开拓测试平台生成工具以外的市场,Verisity公司还在开发一种“智能型测试平台”vManager。该平台计划于2004年第一季度推出。它实质上是各种验证工具的有机集成,设计团队利用它可以创建验证计划以及分配、调度和触发各种验证运行,如功能性模拟、属性检查和仿真等,Steve Glaser表示。
Glaser宣称,设计人员还可以利用vManager管理验证进程及验证覆盖率;定位需要解决的问题,并区分优先次序;记录公司总体验证方法,以用于后序项目的改进。
因此Gartner Dataquest公司首席EDA分析师Gary Smith认为vManager是目前功能最强大的验证管理器,指出它是一种非常智能的测试平台。十多年来Smith一直在呼吁EDA供应商发明一种“智能型测试平台”,以方便验证工程师控制和统一验证流程中各种不同功能的节点工具。Smith将验证视为IC开发过程中最大的一个瓶颈。一些统计数据表明,验证所用时间将占到整个芯片开发时间的70%。
Glaser认为,Verisity公司的vManager能使验证团队更好地组织和管理大型项目。“它特别适合那些需要并行执行成组验证活动的验证工程师使用。”他说,“通常人们需要在模块、芯片和系统级同时开展工作。在这些层次之间存在各种不同的从属关系,验证团队要能够测试到贯穿所有这些层次并分散在各个不同地理位置的各种类型的代码覆盖率、功能性覆盖率和声明覆盖率,即使计算资源位于多个仿真平台和仿真器也能做到。”
通过与Specman及其它Verisity工具的有效结合,vManger能够压缩和管理来自各个验证引擎的所有数据,从而允许用户监视工程进度、故障和覆盖率这三个主要的指标。
Vmanager可以显示按时间顺序排列或层次化的项目验证进度。故障窗口用来确定验证、鉴别时发生的故障,例如仿真毛刺引起的功能性问题。同时该工具还允许用户搜索特殊类型或级别的故障。
vManager还能监视整个项目的代码覆盖率、功能覆盖率和断言覆盖率,因此用户能够方便地确认设计中哪些领域已经得到了充分的测试。
Glaser透露,vManager与所有流行的第三方仿真环境以及0-In设计自动化公司的属性检查工具之间都建立有链接。Verisity公司准备将vManager的一年许可费用定在45,000美元。另外,运行vManager时需要用到该公司的Specman。
作者:葛立伟、尚德斌