利用硬件辅助验证工具加速功能仿真

路科验证 2022-10-13 12:06

来源:无锡亚科鸿禹电子有限公司

作者:市场总监 白建东


近年来,芯片规模,功能复杂度以及集成度的不断增加,验证工作面临着非常大的挑战。软件仿真(Simulation),FPGA原型验证(FPGA Based Prototyping)和硬件仿真加速(Emulation)这三种有效的功能验证的方法,在验证流程中发挥着非常重要的作用。软件仿真有着出色的信号可见性,FPGA原型验证有着极强的实时性和系统开发性,硬件仿真加速则兼具了信号可见性,可调试性,以及仿真加速的能力,这几种验证方法在芯片前端设计的功能性验证阶段发挥着重要的作用。FPGA原型验证和硬件仿真加速作为硬件辅助验证的两种手段,在芯片设计的过程中相辅相成,互为补充,为芯片成功流片保驾护航。硬件仿真加速阶段,一般用于代码还不很成熟的开发的中后期阶段,需要能够提供更大的系统容量,更方便的调试手段和方法,主要用来验证设计的RTL代码,兼顾软硬件协同验证和软件开发。而FPGA原型验证阶段一般应用于代码比较成熟的的偏后阶段,主要是做软件开发和软硬件协同验证。


图一 硬件辅助验证在流程中的位置


几种不同的仿真验证手段的效果对比


(一)基于硬件辅助验证工具的仿真加速方法



一般意义上,我们将FPGA原型验证和硬件仿真加速都归为硬件辅助验证手段,比较有效和最为常见的仿真加速方式分为:软件仿真(Software Simulation),周期精确级的仿真加速(Cycle Based Simulation ),事务级的仿真加速(Transaction Based Simulation),和完全可综合的仿真加速(Synthesizable Simulation)这几种方法。通过不同的仿真加速方法,对验证速度能够有接近千倍的提升。


第一种,软件仿真(Software Simulation),最常见的仿真方法,将Testbench和DUT都在仿真软件中运行。最主流的仿真软件的算法机制大部分都是“基于事件的算法”这种算法更适合处理离散的时间,状态和变量。仿真器首先在编译数据结构的时候会建立一个事件队列,仿真从时间0开始,在时间0的所有事件队列处理完毕以后,才可以进入下一个时间周期。而在同一个时间周期内的事件在“硬件”上都是并行的。


图二 Simulator仿真的结构


图三 基于事件的Simulator算法


第二种:周期精确级的仿真加速(Cycle Based Simulation Acceleration )


我们在针对软硬件联合仿真的方式做说明之前,需要对SCE-MI/MII(标准协同仿真建模接口)做一下说明,该接口是为了标准化软件模型和硬件平台之间的通讯而定义的,属于Accellera标准,目的是使用者将DUT和Testbench做连接,通过事务器模型(Transactor)能够轻松的实现互联。下图是该协议的基本结构说明。


图四 SCE-MII基本结构


周期精确级的仿真加速,是通过专用的硬件来运行用户设计,通过仿真软件运行Testbench,根据专用的软硬件协同工作的协议来进行软件硬件侧的数据转换和交付,从而实现软件仿真加速的一种方法。该方法在软硬件两侧交互的周期中,严格按照时间单位推进每一步的协议转换,并且采用双握手的方式进行通讯确认,这将产生大量的软硬件之间的交互开销,所以在加速的效果上不是十分的理想。这种方式的优点是针对一些非标协议的转换和时钟同步结构的设计有很大的灵活性。


图五:周期精确级的仿真加速结构


图六:双握手协议示意


第三种:事务级的仿真加速(Transaction Based Acceleration)


事务级的仿真加速是将DUT和部分Testbench运行在硬件辅助验证工具之中,通过事务器与仿真器中运行的Testbench进行通讯,可以实现将无时序激励变为有时序功能的交互。这是因为软件侧的一个操作所花费的时间在一般情况下会远大于硬件侧的时钟周期。当发送一个带时序的激励时,软件侧需要花更多的时间进行时序的构建,会在一定程度上影响软硬件协同仿真平台的性能。所以在软硬件验证过程中,事务级仿真加速能够很好的解决这类型的问题。比如对于一个拥有AXI或者AHB接口的DUT,软件侧需要按照AXI或者AHB的时序规则构建激励,而扩展了无时序激励变有时序功能时,仅需要将AXI或者AHB的总线数据按顺序发送至硬件侧,硬件侧可以自动完成时序的构建,这样的功能结构能够大幅度提高仿真的效率。


图七:事务级的仿真加速结构


第四种:完全可综合的仿真加速(Synthesizable Testbench Simulation )


图八:完全可综合的仿真加速结构


这种仿真加速方式相较于Transaction的仿真加速,是需要将用户的DUT和测试激励完全综合进仿真加速器,这样可以大大的减少因为软硬件的交互而产生的通讯开销,从而可以极大地提高仿真速度。


不同的软硬件结合的仿真加速方式能够带来不同的加速比,周期精确级的仿真加速因为通讯开销带来的影响,相较于软件仿真基本上可以做到5-100倍的仿真加速;基于事务级的仿真加速则能够为用户带来20-1000倍的加速体验,尤其适用于各种专用的算法实现,比如:视频编解码的处理,交互数据量巨大的通讯芯片验证等。而完全可综合的仿真加速则可以针对全流程的设计验证提供最有效的仿真加速手段。


图九:几种不同的仿真加速的加速比


(二)利用硬件辅助验证工具实现混合仿真



基于硬件辅助验证的混合仿真是指利用硬件仿真加速器和虚拟原型同时运行SoC的不同设计模块,在SoC整体架构硬件实现之前提供嵌入式软件和硬件的协同仿真,从而加速SoC的研发进程。可以实现硅前硬件和嵌入式软件协同混合验证,为系统架构的优化、嵌入式软件以及RTL的早期开发提供准确,即时的仿真验证环境,有力推动产品开发左移。


一般的混合仿真系统由Qemu宿主机和硬件仿真加速系统两部分构成,其中,宿主机的操作系统中会运行基于开源环境的目标嵌入式处理器和基于Qemu Virtual Linux Platform的内核驱动程序以及用户态的驱动程序。通过专有协议实现软件和用户设计的通讯,将运行硬件仿真加速工具的宿主机和硬件平台,通过TLM(Transaction Level Model)的传输模型,将用户设计的IP和实现硬件结构的功能子卡进行联合,从而实现一个完整的混合仿真系统。


图十:混合验证工作流程


(三)集成高效的并行逻辑综合工具提升硬件辅助验证效率



设计验证过程综合时间长,迭代频率高,需要设计工程师和验证工程师花费大量的工作时间和精力。近年来,随着多种图像处理器,人工智能加速算法,大数据采集,多处理器应用等应用方向的芯片设计增加,各种GPU,TPU,XPU等大逻辑量的IP被集成至单颗芯片内,造成设计、仿真和验证的数据量出现了指数级的增长,所以综合和仿真等过程都展现出“过长的编译综合时间”、“编译迭代耗时过长”等情况,工程师大量的时间浪费在了等待综合编译上。


流程节点不同,存在不同的综合策略需求。硬件仿真加速阶段,一般用于代码还不很成熟的开发的中后期阶段,需要能够提供更大的系统容量,更方便的调试手段和方法,主要用来验证设计的RTL代码,兼顾软硬件协同验证和软件开发。而原型验证阶段一般应用于代码比较成熟的的偏后阶段,主要是做软件开发和软硬件协同验证。在以上两个流程阶段,综合加速的需求各有侧重点。硬件仿真加速阶段代码的成熟度不高,迭代频繁,需要更高速的编译速度来提高迭代效率,以及对RTL代码的忠实的一致反映以便于调试;而原型验证阶段代码相对成熟,需要产生出更高效的功能等效系统来提高运行速度。


高效并行综合是将用户的RTL代码按照不同模组分类,分别调用综合工具,同时进行综合,从而实现快速综合的目的,按照不同的阶段,可以设置不同的综合流程,可以实现“Top-down”和“Bottom-up”两种方式;支持多种的逻辑综合器,比如:Xilinx Vivado®, Synposys Synplify®和其他的一些开源的逻辑综合器,支持GUI和Batch模式,用户可以灵活选择功能展现模式;可以支持模组并行化处理,既支持本地多线程并行处理,也可以有效的支持多种作业调度系统;可以设置不同的参数来制定不同的综合策略,从而实现综合效率的最大化,比如:面积优先,速度优先,最大化、小化优先等策略。通过并行逻辑综合方案可以提供出色的自动化流程,大大缩短编译所需时间,提高整体的效率和利用率,极大的提高生产率。


图十一:并行综合处理界面


(四)高效的在线逻辑分析工具提升硬件辅助验证效率



FPGA产品自带的在线逻辑分析仪工具(ILA 或 SignalTap)可以为FPGA提供观测信号的便捷性,但因为其本身的属性问题,存在了诸多的短板,例如:数据波形存储在片上的RAM中,需要均衡用户设计占用的存储资源和用于调试的存储资源;受限于FPGA片上RAM的容量,对待抓取的信号的位宽和深度都有限制;待抓取波形需要从FPGA的RAM资源中通过JTAG导出到工作站中,由于传输速度过慢,当数据量巨大时,传输时间占用更加的明显;芯片逻辑容量增加,原厂的逻辑分析仪无法满足调试需求。

硬件辅助验证工具中的专用逻辑分析仪有效的解决了以上的几个问题。


1)波形数据存储在FPGA外部存储,几乎不占用FPGA的片上ram资源;FPGA器件因为其工艺特殊性,一般会集成一些RAM资源在FPGA种,但是该种资源的深度和位宽都非常的小,无法满足超大容量的存储需求,亞科鸿禹新研发的hsTrace,在系统内部集成有专用的外置存储空间,可以完全不占用FPGA的RAM资源。


2)外接存储容量最高可支持16GB的存储空间,极大地提高了波形数据的采样大小;硬件辅助验证工具外置专用的存储空间,可以使数据存储和读取的资源加大,也就意味着可以提供更深的存储空间和更宽的存储位宽,为解决当下验证功能的需求提供了基础。


3)波形数据的传输通过网口(或PCIE)实现,传输速率也得到了极大的提升。FPGA原厂提供在线逻辑分析仪的调试通道是通过JTAG接口完成的,JTAG的最大传输速度只能到12Mhz,我们选用的PCIE的传输带宽能够到5Gbps,这为大数据量吞吐提供了硬件通道。


4)支持多颗FPGA的硬件辅助验证工具,实现多FPGA的系统级debug。


5)每颗FPGA可以设置4K*10组的采样信号量;通过专用的传输接口和存储器,可以针对单颗FPGA的采样信号进行增加,这意味着可以有更多和更深的信号被采样到,也就是可以完成更多数量的观测,适应当前的复杂协议的应用。


(五)硬件辅助验证的发展趋势



硬件辅助验证工具可以有效加速软件仿真速度,用于验证设计的RTL代码、软硬件协同验证和软件开发。近些年,硬件辅助验证出现了一些明显的发展趋势:


1)企业级和桌面化的硬件仿真加速需求快速增长。当前,以GPU,5G,存算一体为代表的超大型的集成电路设计层出不穷,对系统仿真速度和代码快速签核提出了大量的需求。由于数据计算量大,用户测试场景复杂所以需要能够在超大型的硬件仿真加速工具下进行用户设计和验证环境的部署。企业级的硬件仿真加速器可以为用户提供指数级的逻辑验证容量,高效的纠错能力,信号可见和功耗分析的特征。桌面化的硬件仿真加速器可以为用户提供混合验证环境,能够为各类型的CPU用户,提供更早期的环境验证。企业级硬件仿真加速器侧重在多用户,多区域访问的特性,桌面化能够提供更加便利的调试手段,所以两种不同的应用方向各自发展。


2)硬件仿真加速器的专用化越来越明显。加密算法,WIFI应用等各种测试数据量巨大,而算法相对单一的用户,对仿真需求增大。而传统的仿真加速器并不能非常有效的解决这类用户的问题。所以,针对各类型应用而专用的仿真加速器产品非常适合这种类型的应用。集中固定的硬件扩展卡或者专用的降速桥都可以为某些类型的应用提供完整的加速环境。


3)全流程验证需要在硬件仿真加速工具中完成。早期的硬件仿真加速器出现在代码设计的后端,用于确认代码功能的正确性。现在随着设计的时间需求进坡度增加,越来越多的流程会被集成至硬件仿真加速工具中来实现。早期的功耗分析,系统环境搭建,逻辑调试等功能都逐渐的被集成至硬件仿真加速工具中。


4)仿真和验证环境有统一性的趋势。仿真代码和用户芯片设计代码是分开处理的,涉及到一些无法综合的代码可以分别在仿真和验证场景中实现,但是用户期望的是设计代码和测试代码保持一致。所以硬件仿真加速工具会增加大量的功能属性用于统一仿真代码和设计代码,从而减少因为设计不一致而造成的功能风险。


5)需要支持多种的软件仿真工具。因为硬件仿真加速器的历史原因,各家的工具分别只能支持自己家的软件仿真工具,而对于不同的用户来说,有一些诉求是能够支持不同家的仿真工具的。


6)待验设计的运行频率逐渐升高。硬件仿真加速器的运行频率,因为软硬件交互的原因,会产生大量的通讯开销,会对待验设计的运行速率有很大的影响,绝大多数情况下只能运行在几百K-几兆Hz,随着各种专用算法的出现,验证的实时性也相当的重要。所以对于硬件仿真加速器来说,能够提供比较实时的运行频率,是非常关键的。


本文内容仅代表作者观点,不代表平台观点。

如有任何异议,欢迎联系我们。

如有侵权,请联系删除。


路科验证 专注于数字芯片验证的系统思想和前沿工程领域。路桑是Intel资深验证专家,主持验证架构规划和方法学研究,担任过亿门级通信芯片的验证经理角色。在工程领域之外,他在西安电子科技大学和西安交通大学客座讲授芯片验证课程。著有书籍《芯片验证漫游指南》。
评论
  • 艾迈斯欧司朗全新“样片申请”小程序,逾160种LED、传感器、多芯片组合等产品样片一触即达。轻松3步完成申请,境内免费包邮到家!本期热荐性能显著提升的OSLON® Optimal,GF CSSRML.24ams OSRAM 基于最新芯片技术推出全新LED产品OSLON® Optimal系列,实现了显著的性能升级。该系列提供五种不同颜色的光源选项,包括Hyper Red(660 nm,PDN)、Red(640 nm)、Deep Blue(450 nm,PDN)、Far Red(730 nm)及Ho
    艾迈斯欧司朗 2024-11-29 16:55 160浏览
  • RDDI-DAP错误通常与调试接口相关,特别是在使用CMSIS-DAP协议进行嵌入式系统开发时。以下是一些可能的原因和解决方法: 1. 硬件连接问题:     检查调试器(如ST-Link)与目标板之间的连接是否牢固。     确保所有必要的引脚都已正确连接,没有松动或短路。 2. 电源问题:     确保目标板和调试器都有足够的电源供应。     检查电源电压是否符合目标板的规格要求。 3. 固件问题: &n
    丙丁先生 2024-12-01 17:37 57浏览
  • 国产光耦合器因其在电子系统中的重要作用而受到认可,可提供可靠的电气隔离并保护敏感电路免受高压干扰。然而,随着行业向5G和高频数据传输等高速应用迈进,对其性能和寿命的担忧已成为焦点。本文深入探讨了国产光耦合器在高频环境中面临的挑战,并探索了克服这些限制的创新方法。高频性能:一个持续关注的问题信号传输中的挑战国产光耦合器传统上利用LED和光电晶体管进行信号隔离。虽然这些组件对于标准应用有效,但在高频下面临挑战。随着工作频率的增加,信号延迟和数据保真度降低很常见,限制了它们在电信和高速计算等领域的有效
    腾恩科技-彭工 2024-11-29 16:11 106浏览
  • 学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&
    youyeye 2024-11-29 14:30 118浏览
  • 《高速PCB设计经验规则应用实践》+PCB绘制学习与验证读书首先看目录,我感兴趣的是这一节;作者在书中列举了一条经典规则,然后进行详细分析,通过公式推导图表列举说明了传统的这一规则是受到电容加工特点影响的,在使用了MLCC陶瓷电容后这一条规则已经不再实用了。图书还列举了高速PCB设计需要的专业工具和仿真软件,当然由于篇幅所限,只是介绍了一点点设计步骤;我最感兴趣的部分还是元件布局的经验规则,在这里列举如下:在这里,演示一下,我根据书本知识进行电机驱动的布局:这也算知行合一吧。对于布局书中有一句:
    wuyu2009 2024-11-30 20:30 91浏览
  • 光伏逆变器是一种高效的能量转换设备,它能够将光伏太阳能板(PV)产生的不稳定的直流电压转换成与市电频率同步的交流电。这种转换后的电能不仅可以回馈至商用输电网络,还能供独立电网系统使用。光伏逆变器在商业光伏储能电站和家庭独立储能系统等应用领域中得到了广泛的应用。光耦合器,以其高速信号传输、出色的共模抑制比以及单向信号传输和光电隔离的特性,在光伏逆变器中扮演着至关重要的角色。它确保了系统的安全隔离、干扰的有效隔离以及通信信号的精准传输。光耦合器的使用不仅提高了系统的稳定性和安全性,而且由于其低功耗的
    晶台光耦 2024-12-02 10:40 66浏览
  • 国产光耦合器正以其创新性和多样性引领行业发展。凭借强大的研发能力,国内制造商推出了适应汽车、电信等领域独特需求的专业化光耦合器,为各行业的技术进步提供了重要支持。本文将重点探讨国产光耦合器的技术创新与产品多样性,以及它们在推动产业升级中的重要作用。国产光耦合器创新的作用满足现代需求的创新模式新设计正在满足不断变化的市场需求。例如,高速光耦合器满足了电信和数据处理系统中快速信号传输的需求。同时,栅极驱动光耦合器支持电动汽车(EV)和工业电机驱动器等大功率应用中的精确高效控制。先进材料和设计将碳化硅
    克里雅半导体科技 2024-11-29 16:18 163浏览
  • 光耦合器作为关键技术组件,在确保安全性、可靠性和效率方面发挥着不可或缺的作用。无论是混合动力和电动汽车(HEV),还是军事和航空航天系统,它们都以卓越的性能支持高要求的应用环境,成为现代复杂系统中的隐形功臣。在迈向更环保技术和先进系统的过程中,光耦合器的重要性愈加凸显。1.混合动力和电动汽车中的光耦合器电池管理:保护动力源在电动汽车中,电池管理系统(BMS)是最佳充电、放电和性能监控背后的大脑。光耦合器在这里充当守门人,将高压电池组与敏感的低压电路隔离开来。这不仅可以防止潜在的损坏,还可以提高乘
    腾恩科技-彭工 2024-11-29 16:12 119浏览
  • 在现代科技浪潮中,精准定位技术已成为推动众多关键领域前进的核心力量。虹科PCAN-GPS FD 作为一款多功能可编程传感器模块,专为精确捕捉位置和方向而设计。该模块集成了先进的卫星接收器、磁场传感器、加速计和陀螺仪,能够通过 CAN/CAN FD 总线实时传输采样数据,并具备内部存储卡记录功能。本篇文章带你深入虹科PCAN-GPS FD的技术亮点、多场景应用实例,并展示其如何与PCAN-Explorer6软件结合,实现数据解析与可视化。虹科PCAN-GPS FD虹科PCAN-GPS FD的数据处
    虹科汽车智能互联 2024-11-29 14:35 151浏览
  • 戴上XR眼镜去“追龙”是种什么体验?2024年11月30日,由上海自然博物馆(上海科技馆分馆)与三湘印象联合出品、三湘印象旗下观印象艺术发展有限公司(下简称“观印象”)承制的《又见恐龙》XR嘉年华在上海自然博物馆重磅开幕。该体验项目将于12月1日正式对公众开放,持续至2025年3月30日。双向奔赴,恐龙IP撞上元宇宙不久前,上海市经济和信息化委员会等部门联合印发了《上海市超高清视听产业发展行动方案》,特别提到“支持博物馆、主题乐园等场所推动超高清视听技术应用,丰富线下文旅消费体验”。作为上海自然
    电子与消费 2024-11-30 22:03 76浏览
  • 最近几年,新能源汽车愈发受到消费者的青睐,其销量也是一路走高。据中汽协公布的数据显示,2024年10月,新能源汽车产销分别完成146.3万辆和143万辆,同比分别增长48%和49.6%。而结合各家新能源车企所公布的销量数据来看,比亚迪再度夺得了销冠宝座,其10月新能源汽车销量达到了502657辆,同比增长66.53%。众所周知,比亚迪是新能源汽车领域的重要参与者,其一举一动向来为外界所关注。日前,比亚迪汽车旗下品牌方程豹汽车推出了新车方程豹豹8,该款车型一上市就迅速吸引了消费者的目光,成为SUV
    刘旷 2024-12-02 09:32 65浏览
  • By Toradex胡珊逢简介嵌入式领域的部分应用对安全、可靠、实时性有切实的需求,在诸多实现该需求的方案中,QNX 是经行业验证的选择。在 QNX SDP 8.0 上 BlackBerry 推出了 QNX Everywhere 项目,个人用户可以出于非商业目的免费使用 QNX 操作系统。得益于 Toradex 和 QNX 的良好合作伙伴关系,用户能够在 Apalis iMX8QM 和 Verdin iMX8MP 模块上轻松测试和评估 QNX 8 系统。下面将基于 Apalis iMX8QM 介
    hai.qin_651820742 2024-11-29 15:29 151浏览
  • 学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&
    youyeye 2024-11-30 14:30 65浏览
  • 在电子技术快速发展的今天,KLV15002光耦固态继电器以高性能和强可靠性完美解决行业需求。该光继电器旨在提供无与伦比的电气隔离和无缝切换,是现代系统的终极选择。无论是在电信、工业自动化还是测试环境中,KLV15002光耦合器固态继电器都完美融合了效率和耐用性,可满足当今苛刻的应用需求。为什么选择KLV15002光耦合器固态继电器?不妥协的电压隔离从本质上讲,KLV15002优先考虑安全性。输入到输出隔离达到3750Vrms(后缀为V的型号为5000Vrms),确保即使在高压情况下,敏感的低功耗
    克里雅半导体科技 2024-11-29 16:15 119浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦