0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

三大验证关键挑战 AI多方位助力芯片验证

半导体产业纵横 来源:半导体产业纵横 作者:半导体产业纵横 2022-11-18 10:40 次阅读

半导体各领域的发展难度与日俱增,验证可能是整个发展过程中最具挑战性的阶段。多年来,研究显示在验证上投入的时间和资源所占的百分比会随着新时代芯片的出现而增加。因此整体上,验证的快速成长超过芯片开发和芯片制造中的其他阶段。电子设计自动化(EDA)产业将人工智能AI)的力量应用到验证过程的各个步骤,以应对这样的情况。

三大验证关键挑战

芯片验证工具、过程或方法,常常和快速找到更多程序错误画上等号。然而,实际验证上所考虑的因素其实更加广泛。验证工程师主要关心下列三个层面:结果的质量(QOR)、达成结果所需的时间(TTR),以及达成结果所需的成本(COR)。

QOR不难理解,验证团队会希望能找到所有的程序错误。找出的程序错误数量十分重要,但程序错误的类型和复杂度也同样关键。如果因为一些没发现的程序错误而造成系统宕机或芯片故障,那么即使找到99.9%的程序错误也只是徒劳。目前没有方法能准确知道什么时候能找到所有程序错误,不过,已有一些方法能帮助验证团队决定何时能宣告成功并将芯片投片量产。在模拟方面,功能性和结构性的覆盖方法(Coverage Metrics)最为常见。达到高度覆盖能在设计的正确性上建立信心,而未能覆盖的部分则能作为良好准则,告诉团队还需要进行的额外测试。在静态和形式(Formal)分析方面,检查和验证的电路特性百分比是主要的数据,而未能百分之百验证的特性则可当作分析深度的有界验证(Bounded Proof)信息

基于许多原因,TTR也极具重要性。每个芯片计划都有一个目标出货日期,而这日期取决于市场机会和竞争压力。相关人员将依照该日期规划时程,但是如果接近收敛的时间来得比预期还慢,投片量产以及接下来的产品出货时间都会因此产生延迟。这不仅会造成利润损失,在最坏的情况下,还会让芯片在出货前就失去竞争力。因此,验证工具需要能够快速进行测试和分析,并具备平稳的收敛过程及迅速的除错功能,才有办法赶上紧迫的时程。若时程落后,一般的应对措施是扩编验证团队。然而,在一个工程计划中增加更多人员并不一定会减少完工所需的时间。

资源也包含在COR的三个层面内。增加更多工程师不仅会增加计划成本并减少终端产品的潜在利润,取得更多运算服务器或是租借云端服务器也都会增加成本。此外,每次启动额外的模拟或是形式验证都会产生更多需要分析的结果。如果这些额外的验证测试相较于既有测试是多余的话,这些增加的非必要调试时间可能反而降低验证效率。最后,每次芯片re-spin都会在预算中增加一笔可观的COR并造成TTR延迟,所以高QOR非常关键(图1)。

cab35eba-666d-11ed-8abf-dac502259ad0.png

图1 QOR、TTR、COR三层面重点

AI技术多数皆以机器学习(ML)为基础,可以大幅度改善芯片验证的三个层面。图2显示典型验证流程。在设计者将RTL编程写入之前,架构团队就会建立一个芯片的虚拟模型并分析系统效能。

当关键决定下达时,设计团队就会开发RTL模型; 这些过程最好能通过整合开发环境(IDE)完成,并搭配强大的代码检测工具(Language Linting)以捕获其他会消耗时间和资源的编码错误,并在计划后期修复。标记的错误修复后,通常会由设计者来执行验证的第一步,也就是启动静态验证工具来侦测设计中的结构错误。形式验证(Formal Verification)工具则能提供更深入的分析,尝试证明关于RTL设计的关键性质。

这些工具也可能由设计者启动,尽管熟悉formal的专家也可能参与其中。同时,验证团队开发出能执行一系列测试的测试平台(Testbench)和模型来达成验证计划的目标,这通常会运用到现有的验证IP(VIP)。

这些测试主要通过模拟来完成,不过近几年硬件仿真平台的使用也越来越普遍。如前述,覆盖方法是判断验证进度的主要方法,而覆盖收敛(Coverage Closure)则是高度迭代的过程,通常是验证时程中耗时最久的一部分。

cb0896fa-666d-11ed-8abf-dac502259ad0.png

图2 验证流程概略

AI技术在静态验证的应用

随着静态验证可提供的检查类型增加,在芯片验证中的重要性也越来越高。当代的静态解决方案包含针对跨时脉域(Clock Domain Crossing, CDC)、跨重置域(Reset Domain Crossing, RDC)以及低功率设计结构的精密检查。透过这样丰富的分析阵列,以一个典型计划中能发现的所有程序错误而言,其中大约10%会在这个阶段就被侦测到并修复。静态工具的主要问题在于它们通常会回报好几千个潜在的违规,很容易造成干扰。其中有些可藉由微调输入设定来解决,如选取哪种违规回报为错误、哪种违规仅是警告。发生干扰的主要原因是单一底层设计(Underlying Design)的缺失所导致的相关违规。例如,频率逻辑中的程序错误可能会导致使用该时钟的任一正反器(Flip-flop)产生违规回报。就除错效率而言,设计者必须专注在特殊的问题上,一旦这些问题获得解决,便能消除多数违规。

根本原因分析(Root-cause Analysis, RCA)就是一款能达到上述要求的AI赋能技术。如图3所示,各个击破过程中的第一步就是使用机器学习方法并根据共同特征进行违规丛集。在刚刚提到的范例中,所有与时脉逻辑程序错误相关的违规都会整合成单一丛集,其目的为让设计者将每个丛集视为一种违规并进行修复,如此便可修正丛集中的所有违规。数以千计的违规通常会减少至几十个丛集,这样能节省设计者大量的时间和精力。丛集法使用的是非监督式的机器学习算法,因此可以在没有用户引导下自行运作。它能识别违规的因果关系、随着计划进度学习,并执行RCA,进而减少计划团队的负担。此外,其具有的图像显示和现成可用的Tcl指令文件能引导设计者找到每一个丛集中违规的根本原因。

cb58e6dc-666d-11ed-8abf-dac502259ad0.png

图3 静态分析中的违规丛集

新思科技的静态验证解决方案VC SpyGlass平台,以及其全面性静态低功率的验证解决方案VC LP,能提供包括前述甚至更多的功能。SmartGroup技术能执行先进的丛集法来大幅减少待检验的违规数量,而RCA可加速每个丛集的除错速度。针对违规提出的建议修正可能是对RTL的设计进行改变,不过通常是细微的区别或添加设计限制文件(Constraints File)。基于机器学习的群集法和RCA的组合能在一般典型芯片计划中提供10倍的调试效率并改善静态验证。

AI技术在形式验证的应用

虽然以测试平台为基础的模拟为人熟知并且广泛应用在验证技术上,但还是有其限制。除非模拟刺激(Simulation Stimulus)触发程序错误并以可观察到的方式改变预期结果,设计上的程序错误便无法被侦测到并进一步修复。因此,总是有某些程序错误会被遗漏。形式验证提供针对一组属性的设计综合分析,不需要stimulus; 该分析会考虑每一个可能的合法输入序列,可以侦测到在模拟中难以被激发的深层程序错误,这通常占所有程序错误中的20%。形式验证还可以证明在给定的电路特性(Property)不存在更多的错误,为模拟或仿真提供很高的可信度。

形式验证工具通常在幕后有好几十个解算装置(Solver)或引擎来处理好几百或好几千个在设计上需要验证的电路特性。它能处理的形式验证工具效能和设计尺寸皆取决于引擎效能和引擎的编排。在过去20年里,formal的技术已经进步许多。最近,AI和机器学习技术的采用大大改善收敛性和效能。

新思科技VC Formal是业界第一款形式验证工具,并将机器学习应用在引擎编排、回归和除错程序。引擎编排的目的是在实际运算资源和时间的限制下,指派正确的引擎到正确的电路特性上,以达到最短的运作时间和最佳的收敛演算。VC Formal在处理每一个电路特性时,都会使用实时加强学习,从有效和无效的方法中学习,并在下一组动作中指导编排,这称为智能策略选择(Smart Strategy Selection)。除此之外,针对每一个电路特性下达的决定都会在执行结束时储存在数据库中,后续的执行可以运用前次执行的学习成果,找出更好的结果,这称为回归模式加速器(Regression Mode Accelerator, RMA)。当RTL设计或形式测试平台在设计和验证的过程中需要修正时,形式验证通常会在每晚或是每周的回归过程中执行,以确保这些改变在设计上不会产生新的程序错误。

如图4所示,每次接续的VC Formal执行都会读取前一次执行的设计内容和学习数据库来决定可安全维持的电路特性状态,并决定哪些电路特性因为这些改变而需要重新执行、哪些不能判定的电路特性应该需要更多时间和编排资源。即使是那些需要重新验证的电路特性,前次执行中的学习也会指导编排过程并使第二次执行更快速。比较基准(Benchmark)的数据显示这些机器学习技术可以提升10倍以上的验证速度和额外的收敛能力,并减少TTR和COR,同时还能改善QOR。图5以一项真实设计作为范例来说明这些好处。

cb8eef52-666d-11ed-8abf-dac502259ad0.png

图4 VC Formal中的回归模式加速

cbb0d9c8-666d-11ed-8abf-dac502259ad0.png

图5 RMA加速电路特性收敛

AI技术在模拟的应用

运作时间性能对模拟回归也至关重要,这可能包含数以千计的测试并通过执行来验证所有在RTL设计和测试平台上的编程改变。模拟会保留在芯片验证的核心部位,约占所有已发现程序错误的65%。有时候为了修复程序错误而在设计上做的改变不仅无法正常运作,甚至还会引发新问题。因此,频繁进行回归程序来快速侦测问题是确保计划按部就班进行的关键。影响模拟和回归效能的因素中,至少有两项与AI相关的改善有关。

第一项因素为模拟和回归执行的设定。当代模拟器具有许多选项和开关,对效能有着重大影响,验证工程师需要时间和专业知识来为特殊的设计和测试平台进行模拟器的设定优化。随着程序演化,可能会需要对设定做一些调整来维持最佳效能。使用机器学习技术来学习和维持模拟器选项和开关的自动化过程,可以改善回归效能和效率。新思科技VCS模拟器中的动态性能优化(Dynamic Performance Optimization, DPO)技术是AI在模拟性能上的一种应用。它利用机器学习和以规则为基础的AI技术,从前几次的回归执行中学习并自动调整VCS设定来优化效能,如图6所示。该过程是自动的,所以不需要用户输入。不过,若验证工程师有相关需要,还是可以控制该流程的某些面向。例如,他们可以只在某几天打开学习模式,并在期间内使用相同设定执行回归。相较于采用模拟器设定的手动验证,DPO大致上可提供快上1.3~2倍的模拟执行。

cbf0fb7a-666d-11ed-8abf-dac502259ad0.png

图6 VCS中的动态效能优化

在整体回归效能中受影响最大的部分是收敛所需的时间。以往验证工程师会检查模拟报告来判定未达到的覆盖部分,接着变更测试或编写新的测试来尝试覆盖设计上错失的部分。藉由随机限制(Constrained-random)的测试平台,他们更有可能修改测试平台的限制,将产生的自动stimulus聚焦在遗漏的覆盖范围上,但是这还是需要相当大的人力,并将浪费相当多的时间复制已覆盖的范围。改善这种状况是验证过程中另一种AI与机器学习的应用,而VCS也提供了一套解决方案。智能覆盖优化(Intelligent Coverage Optimization, ICO)能优化随机限制stimulus的统计质量并对影响覆盖范围的测试问题提出见解(图7)。在最近的芯片计划中,ICO已经证明能以2~3倍的速度加速收敛覆盖范围。验证团队可以在更短的时间内达到更大的整体覆盖范围,缩短时程并节省资源。

cc2ee958-666d-11ed-8abf-dac502259ad0.png

图7 VCS中的智慧覆盖优化

AI技术在调试的应用

如前所述,模拟回归会在计划中执行无数次。每次回归失败,验证团队都必须检查报告并找出失败的原因。当程序错误被修复或是新增功能需要再次进行测试时,RTL和测试平台程序都会不断地改变,回归失败是家常便饭。手动处理日常的回归失败对验证工程资源是巨大的负担。幸运的是,AI与机器学习再一次提供解药。即使模拟测试失败的原因通常比静态违规的原因更复杂,但依旧适用相同的自动RCA原则。

新思科技Verdi自动调试系统中的回归除错自动化(Regression Debug Automation, RDA)功能会自动丢弃、探查和发现回归失败的根本原因(图8)。RDA会利用AI分类和分析原始的回归失败并辨别在设计和测试台上失败的根本原因。RDA能减少RCA的所需时间,并能提升整体调试效能2倍左右。

cc6c6e9a-666d-11ed-8abf-dac502259ad0.png

图8 Verdi中的回归调试自动化

AI多方位助力芯片验证

AI和机器学习技术每天都在芯片设计和验证流程上寻找更多的应用。特别是在验证领域,AI和机器学习可以在静态验证加速失败分析、改善形式验证的效能、让模拟更有效率、加速收敛并让模拟调试更迅速、更简单。图9总结优化这些程序后对验证团队和整体芯片计划的好处。

ccae7894-666d-11ed-8abf-dac502259ad0.png

图9 AI/ML为验证流程带来的好处

AI与机器学习能提供更好的QOR、更短的TTR和更低的COR来解决关键挑战,可应用于芯片设计诸多面向。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • eda
    eda
    +关注

    关注

    71

    文章

    2679

    浏览量

    172694
  • AI
    AI
    +关注

    关注

    87

    文章

    29665

    浏览量

    268004
  • 人工智能
    +关注

    关注

    1789

    文章

    46576

    浏览量

    236899

原文标题:借力EDA,AI芯片全速优化验证过程

文章出处:【微信号:ICViews,微信公众号:半导体产业纵横】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    盘古22K开发板

    ,一板多用,满足多方位的开发需求。 盘古22K开发板(MES22GP)是基于紫光同创40nm工艺的Logos系列PGL22G芯片的一套全新的国产FPGA开发套件。开发板电源采用圣邦微SGM61032
    发表于 10-28 17:47

    解决验证“最后一公里”的挑战:芯神觉Claryti如何助力提升调试效率

    在高度集成化的芯片设计领域,验证是确保设计可靠性和正确性的关键环节。然而,电路的实现过程中难免会出现各种缺陷和不符合预期的行为,这时调试就显得尤为重要。调试不仅是发现问题后的排查和修复步骤,更是
    的头像 发表于 10-26 08:03 170次阅读
    解决<b class='flag-5'>验证</b>“最后一公里”的<b class='flag-5'>挑战</b>:芯神觉Claryti如何<b class='flag-5'>助力</b>提升调试效率

    解锁SoC “调试”挑战,开启高效原型验证之路

    引言由于芯片设计复杂度的提升、集成规模的扩大,以及产品上市时间要求的缩短,使得设计验证变得更加困难。特别是在多FPGA环境中,设计调试和验证的复杂性进一步增加,传统的调试手段难以满足对高性能、高效率
    的头像 发表于 10-09 08:04 429次阅读
    解锁SoC “调试”<b class='flag-5'>挑战</b>,开启高效原型<b class='flag-5'>验证</b>之路

    快速部署原型验证:从子卡到调试的全方位优化

    够顺利移植到最终芯片上,并完成"bring-up"(即系统启动并正常运行),成为了开发团队面临的一个重要挑战。为了实现这一目标,虽然原型验证具备高性能,能够快速模拟真
    的头像 发表于 09-30 08:04 492次阅读
    快速部署原型<b class='flag-5'>验证</b>:从子卡到调试的全<b class='flag-5'>方位</b>优化

    Lint静态验证工具如何助力IC设计

    的静态验证方法实现了将原本在仿真、综合、布局布线阶段出现的问题移动到RTL阶段进行检测和分析,帮助IC设计者在早期发现和诊断设计缺陷,缩短芯片整体开发周期,降低成本。
    的头像 发表于 09-03 10:15 461次阅读
    Lint静态<b class='flag-5'>验证</b>工具如何<b class='flag-5'>助力</b>IC设计

    形式验证如何加速超大规模芯片设计?

    引言随着集成电路规模的不断扩大,从设计到流片(Tape-out)的全流程中,验证环节的核心地位日益凸显。有效的验证不仅是设计完美的基石,更是确保电路在实际应用中稳定运行的保障。尤为关键的是,逻辑或
    的头像 发表于 08-30 12:45 480次阅读
    形式<b class='flag-5'>验证</b>如何加速超大规模<b class='flag-5'>芯片</b>设计?

    芯片设计流片、验证、成本的那些事

    前言我们聊聊芯片设计、流片、验证、制造、成本的那些事;流片对于芯片设计来说就是参加一次大考。流片的重要性就在于能够检验芯片设计是否成功,是芯片
    的头像 发表于 08-09 08:11 1697次阅读
    <b class='flag-5'>芯片</b>设计流片、<b class='flag-5'>验证</b>、成本的那些事

    ALVA Systems 创新 AI/AR 技术实现检修设备作业流程高效验证

        由于核工业生产环境的特殊性和风险性,采取预先验证措施是确保企业生产安全的关键步骤。     聚焦检维修环节,本期案例走进某核工业院所,探讨如何用前沿的 AI/AR 技术提升预先验证
    的头像 发表于 07-13 16:52 1973次阅读

    大规模 SoC 原型验证面临哪些技术挑战

    引言随着电子设计自动化(EDA)验证工具的重要性日益增加,开发者们开始寻求减少流片成本和缩短开发周期的方法。其中,使用可编程逻辑芯片(FPGA)来构建有效的验证流程成为一种流行的解决方案,这种
    的头像 发表于 06-06 08:23 1075次阅读
    大规模 SoC 原型<b class='flag-5'>验证</b>面临哪些技术<b class='flag-5'>挑战</b>?

    紫光同创PGL22G开发板|盘古22K开发板,国产FPGA开发板,接口丰富,高性价比

    ,一板多用,满足多方位的开发需求。 盘古22K开发板详情盘古22K开发板(MES22GP)是基于紫光同创40nm工艺的Logos系列PGL22G芯片的一套全新的国产FPGA开发套件。开发板电源采用
    发表于 05-23 10:04

    芯片测试和芯片验证的区别

    这是芯片在设计过程中的一个环节,主要通过EDA(电子设计自动化)工具进行仿真检验。它的主要目的是在芯片生产之前,验证芯片设计是否符合预定的需求规格,是否已经消除了所有的风险,发现并更正
    的头像 发表于 05-08 16:52 1711次阅读

    fpga原型验证流程

    FPGA原型验证流程是确保FPGA(现场可编程门阵列)设计正确性和功能性的关键步骤。它涵盖了从设计实现到功能验证的整个过程,是FPGA开发流程中不可或缺的一环。
    的头像 发表于 03-15 15:05 1401次阅读

    fpga验证和uvm验证的区别

    FPGA验证和UVM验证芯片设计和验证过程中都扮演着重要的角色,但它们之间存在明显的区别。
    的头像 发表于 03-15 15:00 1390次阅读

    面向系统级芯片验证的硬件平台介绍

    当设计的规模动辄几十亿门,系统验证时间不断的增加,硬件验证系统几乎是验证工程师不可或缺的利器,因此对高性能硬件验证系统提出了更多的需求。
    的头像 发表于 01-05 10:06 746次阅读

    【重磅新品】2024紫光同创盘古家族产品将全面更新,满足多方位需求

    2024紫光同创盘古家族产品将全面更新,推出多款新品,涵盖紫光同创Logos/Logos2/Titan2/Compa全系列,满足多方位需求,同时,针对高校教学,推出盘古EU22K(PGL22G)(教学版/合并下载器)、盘古PGX(PGL50H)(电赛定制),产品丰富
    发表于 01-02 15:07