当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]SOC设计验证方法的探索

一、引言

  在片上系统的设计与实现中,验证这一环节日益重要,整个过程中花在验证的时间比重越来越大,主要原因在于随着SoC 芯片复杂度的提高,验证的规模也成指数级的增加。系统芯片的时代已经到来,在RTL级硬件设计的抽象层次上已经无法应付数以百万和千万门系统的设计和验证。据统计,两年来,一次投片成功率已经由50%降低到39%。不能一次成功的设计必须再投入几个月的设计验证时间和数十万美元的费用。这种风险已经变得不可接受了。因此设计验证出现了所谓的“验证危机”[2]。功能验证已经成为集成电路设计和开发的瓶颈,这就使得验证的方法逐渐受到业界人士的高度重视。工程师们在设计时不可能考虑到万无一失,所以很多系统行为是不能紧紧通过测试文件就能保证系统功能的正确性。

  二、SOC验证的特点

  片上系统(SoC)是一种建构技术,主要由处理器(MCU)以及一些外围设备如UART,MAC,控制器等构成,系统结构图如图1。SoC的验证和ASIC的验证工作有很多相同地方:首先都要进行模拟,检查设计是否符合规则,使用各种方法对芯片进行测试。但是,SOC的验证又比较特殊,存在一些特殊挑战。

  1.整合:验证SoC的首要重点就是检查各种元件之间的整合程度,这里隐含的基本假设就是每一部件都已经完成自我检查。

  2.软硬件协同验证:处理器中运行的软件必须和硬件部分产生关联才能进行验证。或者我们应该把软硬件当作一个完整的测试中元件(Device Under Test),对涉及软硬件结合状态的方案进行测试。所以我们要找到一种方法来检验我们编写的测试,以及在涵盖的测试范围中,软硬件之间的关联性。

  3.IP核复用:对于可重用的IP核要建立可重用的验证元件。建立可重用的验证元件,会遇到重大挑战,但同时也会因此而获得更大利益。

  SoC代表的是一类极其复杂的系统。一个典型的SoC需要一个或多个微处理器,还需要一些其他部件,如DSP、Memory等。为验证SoC,首先需要验证每个部件的正确性,然后要验证部件间连接和通信的正确性。SoC验证问题实际上就是:如何针对具体的验证任务,选择适当的验证工具并加以整合。

  三、当前常用的验证方法

  关于验证的方法有很多,但是到现在为止还没有任何一种方法可以非常有效地对系统芯片进行功能验证。概括来看,迄今的验证方法可分为模拟、仿真和形式验证三种[3]。

  1、模拟验证

  模拟验证是将激励信号施加于设计,进行计算并观察输出结果,并判断该结果是否与预期一致。

  优点:模拟验证是传统的验证方法,而且目前仍然是主流的验证方法。

  缺点:非完备性,即只能证明有错而不能证明无错。因此,模拟一般适用于在验证初期发现大量和明显的设计错误,而难以胜任复杂和微妙的错误。模拟验证还严重依赖于测试向量的选取,而合理而充分地选取测试向量,达到高覆盖率是一个十分艰巨的课题。由于设计者不能预测所有错误的可能模式,所以尚未发现某个最好的覆盖率度量。即使选定了某个覆盖率度量,验证时间也是一个瓶颈。

  2、仿真验证

  从电路的描述抽象出模型,然后将外部激励信号或数据施加到此模式中,通过观察该模型在外部激励信号作用下的反应来判断该电子系统是否达到了设计目标。仿真的方法是目前进行设计时常用的方法,根据不同的仿真层次,有不同的仿真工具。

  优点:仿真比模拟的验证速度快得多,

  缺点:代价昂贵,灵活性差。

  3、形式验证

  形式化验证是不同于仿真方法的对逻辑设计结果进行的另一种验证方法[4]。在 自上而下的设计过程中,在设计的各个阶段和级别,每一级设计都是以上一级的设计作为设计目标,得到本级的设计结果的结构描述,这是设计和综合的过程。

  优点:完备性,能够完全断定设计的正确性。

  缺点:首先要对原始设计进行模型抽取,这对使用者有数学技能和经验上的要求。而且,有的工具需要人工引导(如定理证明),有的工具存在状态空间爆炸 问题(如模型检验)。

  类型:

  (1)等价性检验[5]

  它是用数学方法验证参考设计与修改设计之间的等价性。(如图2)利用等价性验证工具可对这两种设计方案进行彻底的检验以保证它们在所有可能的条件下都有一样的性能。还可利用等价性验证来验证不同的RTL或门级实施方案的等价性。

  从整个数字系统的设计流程看,等价性问题几乎存在于每个上下相邻的设计层次中,见图2。

  (2)定理证明技术。

  运用公理和已经证明的定理证明电路的描述是正确的。

  这两种方法各有特点,其中定理证明虽然能够给出设计是否正确的一个确切的回答,但由于涉及很多数学推理方面的知识,这就要求用户有很强的数学功底,这也是这种方法不能推广的一个原因。而等价性验证是验证不同阶段的设计是否相互等价的一个很好的方法。一个SOC设计是分为多个阶段进行的,那么下一个阶段的与上一个阶段的等价是设计的正确的一个保证。

  四、新型的验证方法

  针对SOC验证出现的各种问题现在还没有一种完全行之有效的方法出现,解决办法之一是基于断言的验证(ABV)[6],它是把形式化方法集成到传统模拟流程中的一种有效的方法。设计团队在RTL设计中插入设计意图(断言)并且进行模拟,然后用形式化技术检查断言,限制条件,也就是合法接口行为的断言,和其他断言同时一同参加模拟。断言检查的结果改进模拟的有效性。即使利用传统的模拟验证,断言也可以大大提高模拟的效率。基于断言的验证要由用户写出断言,断言表示要验证的性质,因此需要性质描述语言。例如逻辑和时序方面的性质。这就需要尽快找到一种能实现上述功能的语言。SystemVerilog正是在这种情况下产生的,正逐渐被业界人士接受。

  五.结论

  形式化方法最近几年取得了长足进展,特别是等价性检验已经集成到标准验证流程中。设计和验证方法的进步应当是渐进的,不可能发生革命性的改变。因此在可以预见的几年内,混合验证方法应当成为主流的验证方法。

  基于断言的验证是结合形式化验证和传统的模拟验证可行的途径。支持这种途径的统一的设计和验证语言是SystemVerilog。该语言已经得到很多EDA厂商和用户的支持,预计将会流行起来。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭