功能检验于是以沦为IP检验的瓶颈,并影响到整个设计团队。设计工程师想方设法提升检验效率,以构建整个芯片设计的最佳利益。在这里,我们获取10个非常简单技巧,明显提高您的IP检验效率。
1.参予检验计划审查 较好的开端是顺利的一半!在检验计划上的投放是十分最重要的。很多时候,没具体的微架构文档的检验计划(从白盒检验的观点)是不原始的。
前期的投放可以增加很多继续执行中的障碍。你必须根据设计开发计划确认优先顺序。
您还必须对检验计划的完整性有所投放。此外,如果您的检验团队于是以计划订购第三方检验的IP,请求保证它合乎DUT的类似自定义市场需求。 2.以文档的形式记录模块信号、寄存器和数据流 文档是一种奢侈品!许多设计工程师宿老代码就是文档的理念。
这是可以解读的,因为你在与时间登陆作战。然而,有关测试器件与测试平台之间的模块的基础文档和基础数据流信息对提升检验效率大有益处。在整个调试过程中这些文档需要当作参照从而防止误解。
3.在系统统合前就已完成DUT的顶层编译器 为了不来把RTL交付给检验团队,工程师经常跳过DUT的RTL顶层编译器。你可千万别忽视这一步。每个新的写出的测试平台都会有自己的问题。
而提到未成熟的DUT只不会将问题变得复杂。因此,最差能给检验团队获取一个没错误的DUT顶层的RTL编码作为参照。 4.防止DUT顶层经常出现dangle信号 dangle信号是内部模块之间的相连信号。然而,由于缺乏相连,这些dangle信号最后不会被放在顶层的端口上。
这毁坏了测试平台顶层编译器从而造成恐慌。你必须在内部把它们连接起来,然后按照规格拒绝,参考预计义的端口列表交付给DUT顶层。 5.为关键性的假设和模块信号加到适当的断言 随着断言的日益普及,如果你可以多花上些精力,加到适当的断言,认同是有百利而无一害的。
这可以是非常简单的内部FIFO机剩断言,也可以基于任何输出鼓舞或任何有可能经常出现的出现异常的假设的简单的断言。针对DUT上的模块信号的断言可以获取及时的信息,以辨别检验工程师否准确统合DUT。
这些早期的断言可以为后期的调试节省大量的时间。 6.跨过冗长的初始化序列 许多接口协议规范都列出了很长的初始化序列,以获取配备的灵活性。
一些可行性的测试过后,检验的焦点不会移往到其他环节。大多数的测试是为了检验初始化序列以外的特性,所以你应当获取方法跨过这些长年的初始化序列。 7.设置星型的计时器时长 设计一般来说都会用于定时器以尽量避免悬挂的情况。
这些定时器要么符合标准的规范要么由内部定义。一般来说,这些计时器都原作有十分宽的值以避免超时。
不过,要测试那些很长的值必须消耗大量的建模时间。一些值甚至是建模测试无法构建的。所以,你必须让计时器具备可伸缩性,以保证定时器可以毫不费力地展开图形。
同时,你也应当调整其他涉及的配备,总之一定要让计时器顺利进行建模。 8.一致性检验 这一步是锦上添花!随着形式检验工具的日益普及,设计师可以做到一些一致性检验而需要在测试平台上大量投放。对设计(或设计的主要模块)展开一些十分基本的测试,将大大节省时间,从而加快启动全面检验。
9.在DUT顶层用于SystemVerilog模块 设计师钟爱Verilog,但是当今世界大多数的检验都是通过SystemVerilog构建的。你应当渐渐考古SystemVerilog的设计友好关系型的特点。为DUT顶层获取SystemVerilog模块,而不是Verilog的端口列表。
这不会是一个较好的开端,它可以增加构建时间,也可为模块断言获取适合的场所。此外,这将有助改变设计思维过程,从全然的Verilog到SystemVerilog从长远看,这毫无疑问是有益之荐。 10.参予功能覆盖率发散 你可以说道,我早已处置了代码覆盖率发散。
功能覆盖率发散不关我的事。到底。然而,从将来来看,延后的检验发散必然让你花费更好的希望。
在时序关键设计领域的后期修缮的bug不会造成时序发散的返工(十分伤痛的过程)。因此,你最差能全程参予和指导功能覆盖面积发散,特别是在是关键或薄弱环节。
本文来源:皇冠游戏中心官网-www.sriingenieria.com
Copyright © 2003-2023 www.sriingenieria.com. 皇冠游戏中心官网科技 版权所有 ICP备16604452号-7 XML地图 网站模板