SoC验证环境搭建方法研究.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SoC验证环境搭建方法研究

SoC验证环境搭建方法研究   摘要:本文从SoC (System on a Chip)验证环境外在的框架结构、内在的验证数据的组织与管理和体现其工作原理的系统脚本的设计思想三方面出发,讨论SoC验证环境的搭建方法,并使搭建的验证环境具有灵活、可重用、可配置性的特点。最后利用Bourne Shell脚本给出了一个具体实现。目前该验证系统已应用于工程实践和教学研究中。   关键词:验证环境;重用性;配置性;Makefile   中图分类号:TN407 文献标志码:A      1、引言       在SoC的设计过程中,验证是影响项目开发进度的关键因素。主要原因在于随着SoC芯片复杂度的提高,验证的规模也成指数级的增加。工业实践表明,在目前的设计流程中,验证所需时间已经占到整个设计周期的70%,甚至高达85%以上[1]。功能验证已经成为集成电路设计和开发的瓶颈[2]。   为了缩短芯片的设计周期,加快产品的面市时间(time-to-market),设计一个具有灵活性、可配置性及具有一定重用性的验证环境成为必要。所谓验证环境是指对设计进行验证时为了便于使用、管理和协同工作而设计的一个环境。在该环境下,能启动验证所需要的一系列工具,并可以对设计的仿真结果进行分析和整理,利用系统脚本,还可实现整个验证流程的自动化。目前已有多家公司开发了各自的验证平台,但都各具特色,且其体系结构和实现方法通常并不公开。本文从工程实践角度出发,从平台架构|、验证数据和脚本三方面阐述验证环境的搭建方法,以期对SoC的设计方完成其芯片的验证,进而开发自己的验证平台能有一定的借鉴作用。      2、验证模式与平台架构      从设计角度讲,知识产权IP模块的集成与重用技术极大地提高了系统芯片SoC的设计效率。从验证角度看,为进行单个IP的验证所设计的具有一定重用性的验证模型称之为验证IP(VIP:Verification IP),而进行SoC的系统级验证所搭建的验证环境本文称之为SOV(System of Verification),其相互关系如图1所示。    从重用IP可以加速SoC的设计得到启发,在搭建系统1级验证环境时,可以重用以前的VIP。这也是对IP重用概念的拓展,即IP 模块的重用不仅包括原代码和网表的重用,还包括其验证环境的重用。但SoC的验证其复杂度远远大于I P模块的验证,在使用的验证策略和方法上也大不相同。我们需要谨记在SoC中实际上有两个待验证设计(DUT:Design Under Test):硬件是第一个DUT,而软件和硬件构成的整体是第二个DUT[3]。为了将问题局部化,从而更容易定位错误,实际对SoC的验证中,通常遵循自底向上(bottom-up)、分而治之(divide-and-conquer) 、层次化的验证策略,具体的步骤为[4]:    ●验证SoC中节点(IP模块)作为独立功能单元的正确性;    ●验证IP间接口的正确性,先后从事务级和数据内容上进行验证;    ●在全芯片级别上运行一组复杂度逐渐提高的应用程序;    ●建立芯片原型,运行全套的应用程序作为最后的验证。   基于上面讨论的四个步骤,对SoC的验证分别设计了四种验证模式,分别是:从验证模式(slave)、主验证模式(master)、全芯片模式(full chip)、硬仿真模式(emulation)。一般来讲,一个完整的SoC验证流程应该包括上述四种模式,否则在流片前只能看做是未完成验证的设计。由于SoC一般是由统一的总线结构连接起来的IP核的聚集,基于总线结构的验证模型是目前SoC中比较成熟的技术[5]。因此这里各种验证模式架构的设计也基于层次化片上总线的SoC典型结构。下面分别对这四种验证模式进行介绍:    (1) 从验证模式:主要用于单个IP的验证,在SoC结构模型中主要对应于外设总线(Peripheral bus)上的IP。在该模式下,处理器总线由外部总线驱动器(bus driver)直接控制[6]。需要使用总线功能模型(BFM:Bus Functional Model)来产生足够数量的仿真周期,用总线监视器(Monitor)来检查总线上的事务变化。激励一般用硬件描述语言构成。    (2) 主验证模式:主要用于验证模块间的互连和简单的处理器程序。由于加入了处理器核,因此主模式应能支持软硬件的协同验证。同时验证环境中使用了外部存储器的模型。测试向量使用C和硬件描述语言来描述:C文件包含处理器要执行的软件程序,而Verilog文件则包括了复位、监视运行时信号变化、和控制外部存储器的代码。对于编译后的C代码,用Verilog中的系统函数$readmemh下载到外部存储器中,由芯核取指执行。    (3)

您可能关注的文档

文档评论(0)

130****9768 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档