国产硬件仿真混合验证平台,深度解读仿真器eda大模型

软件仿真(Simulation),原型验证(Prototyping),以及硬件仿真(Emulation),是当前主要的三种有效的验证方法,在芯片前端设计的功能性验证阶段起到了关键的作用。

近年来,由于大数据处理和AI芯片设计规模的扩大,以及市场竞争激烈导致的快速迭代需求,越来越多的芯片设计公司开始选择硬件仿真,以提高芯片验证效率,缩短芯片开发周期。

硬件仿真验证模式

硬件仿真支持的丰富的验证模式,可以满足芯片设计不同阶段的验证需求,常用于架构设计、前期开发、模块开发、IP开发、系统深度调试等芯片开发阶段。

常见的仿真验证模式,主要包括:电路内仿真(In-CircuitEmulation,ICE仿真),事务级的仿真加速(TransactionBasedAcceleration,TBA仿真),以及混合仿真(QEMU)等。在不同的芯片设计阶段,可以选择合适的仿真加速方法,来提升验证效率。

电路内仿真(In-CircuitEmulation,ICE仿真)

电路内仿真是使用在线仿真器(In-CircuitEmulator)进行具有特定调试技术的硬件仿真加速,其中在线仿真器代替实际硬件以便在实际系统环境中运行和测试。此方法允许工程师在实际的系统环境中进行测试和调试,而无需等待硬件原型的生产。这可以大大加速开发过程,并提高最终产品的质量。

事务级的仿真加速(TransactionBasedAcceleration,TBA仿真)

事务级的仿真加速是通过使用总线功能模型BusFunctionalModel(BFM),将运行在软件上的Testbench和运行在硬件仿真系统中的DUT进行事务级层面的软硬联合验证。即在主机上运行的Testbench和在硬件仿真上运行的DUT是通过无时序的事物进行交互。通过这种方法,仿真速度可以大大提高,因为仿真的焦点从每个时钟周期的具体操作转移到了更高级别的事务。这种方法常用于大规模系统的设计验证,可以提高仿真的效率。

混合仿真(HybridEmulation)

混合仿真是将硬件仿真与软件仿真相结合,允许工程师同时观察和调试系统的硬件和软件部分。混合仿真可以提供对整个系统的全面视图,并可以在更高的抽象级别进行仿真,可以进一步提高仿真速度和效率。是IC设计团队在早期架构优化、软硬件协同开发、RTL级仿真验证中的重要验证方法。

这些验证模式都是硬件仿真的一部分或者扩展,它们提供了不同层次和粒度的仿真和验证能力,以适应不同的设计需求和验证目标。在实际的设计和验证过程中,工程师可能会根据需要选择适合的仿真方法。

混合仿真(QEMU)

QEMU

QEMU是纯软件实现的一个开源、跨平台的虚拟化模拟器,几乎可以模拟任何硬件设备。通常是模拟一台能够独立运行操作系统的虚拟机,混合仿真时虚拟机会以为自己和真实硬件进行数据交互,而该“硬件”实际上却是QEMU模拟,QEMU将这些指令转译给真正的硬件。本质上,虚拟出的每个虚拟机对应宿主系统(Host)上的一个QEMU进程,而虚拟机的执行线程(如CPU线程、I/O线程等)对应QEMU进程的一个线程。

图1QEMU架构图

SystemC

图2SystemCSimulation

基于QEMU的混合仿真验证

混合验证是一种方法,它在使用硬件仿真进行DUT仿真的同时,利用虚拟原型建立目标SoC环境,并进行相应软硬件的协同开发调试。混合仿真是IC设计团队在早期架构优化、软硬件协同开发、RTL级仿真验证中的重要工具。

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

QEMU运行在RuntimeServer上,一般通过SystemC实现TLM(TransactionLevelModel)模型,提供虚拟CPU、Linux内核以及用户态程序。QEMU通过标准SCEMI协议和硬件仿真器通信,硬件仿真器上可运行SOC外设等IP,从而实现完整的混合仿真环境。

图3QEMU混合仿真

混合仿真带来的好处

混合仿真带来了诸多好处,主要表现在软件开发和集成测试的工作可以大幅度提前,显著地缩短了项目周期。在应用混合验证之前,软硬件开发和集成测试往往要等待硬件设计完成后才能开始,这将会导致项目周期延长。而在使用混合验证之后,软硬件开发和集成测试可以在硬件设计阶段同时进行,这样将会显著地缩短整个项目周期。

图4使用混合验证前

图5使用混合验证后

基于OmniArk和QEMU的混合仿真

思尔芯自主研发的OmniArk芯神鼎硬件仿真系统,采用超大规模可扩展阵列架构设计,设计容量最大10亿门。支持TBA、ICE、混合仿真等多种仿真验证模式,可以满足不同验证场景需求。

图6OmniArk芯神鼎硬件仿真系统

思尔芯提供的混合验证解决方案,通过连接开源虚拟机QEMU工具和OmniArk芯神鼎硬件仿真系统,实现了虚拟原型硬件和嵌入式软件协同混合验证,为早期的设计架构的验证优化、嵌入式软件的协同开发、RTL级的仿真加速提供更准确、更及时的仿真验证环境。

以混合仿真一个SoC芯片设计为例。SoC整体系统架构如下图所示,主要由ARMv8CPU、AMBABUS、NVDLA和DRAM等模块组成。为了实现QEMU虚拟平台与OmniArk芯神鼎硬件仿真系统的混合仿真,我们将NVDLA和DRAM移植到OmniArk芯神鼎硬件仿真系统中进行仿真,同时使用QEMU实现ARMv8的软件模型。

图7SoC系统框图

在设计移植到OmniArk芯神鼎硬件仿真系统后,RuntimeServer端采用QEMU模拟运行ARMv8,并通过TLMWrapper将其挂载到AMBA总线上。OmniArk芯神鼎硬件仿真系统仿真运行NVDLA,通过AXITransactor(简称Xtor)、GPIOTransactor挂载到AMBA总线上。RuntimeServer和OmniArk芯神鼎硬件仿真系统之间通过SCE-MI协议进行软硬件协同仿真。

图8QEMU混合仿真系统框图

TLMWrapper,建立一套基于TLM模型的通信机制,将QEMU包装成TLM模型,使QEMU模拟的设备能够与SystemC开发的模块进行通信。

AMBARouter,以软件形式模拟AMBA总线,实现了标准的AMBA路由机制和仲裁机制,可将多个TLM模型连接并进行数据通信。

AXITLM,是一个基于AXI总线的TLM模型,负责将AXI接口设备适配到AMBARouter总线上。

IRQTLM,则是中断TLM模型,负责将设备的中断信号经TLM2C发送给QEMU模拟的CPU,由CPU作出响应处理。

总结

同时,硬件仿真系统的专用化趋势日益显著。对于那些需要处理大量数据,但算法相对单一的应用领域,例如加密算法和WIFI应用等,他们对仿真的需求正在逐步增大。在芯片设计过程中,根据设计的复杂性和特性,可能需要采用不同的仿真验证模式。在芯片设计中,我们可能需要不同的仿真验证模式以适应不同的设计复杂性和特性。因此,专用的硬件仿真技术提供了强大的支持,使硬件仿真具有更高的灵活性和适应性,满足各种不同场景和需求的验证任务。

思尔芯自主研发的OmniArk芯神鼎硬件仿真系统,正是这种具有更高灵活性和适应性的硬件仿真系统,目前已在多个芯片设计企业成功使用。产品除了支持TBA、ICE、混合仿真等多种仿真验证模式外,还支持用户设计的快速导入和全自动快速编译、可以支持高速的仿真运行速度,同时具备强大的调试能力和对海量的数据处理能力,可以快速寻找和修复源代码中潜在的深度错误和性能瓶颈。利用这个平台,用户可以更高效地进行芯片设计和优化,极大地提高了芯片设计的质量和效率。

欢迎下载白皮书《基于OmniArk芯神鼎硬件仿真系统和QEMU的混合验证平台》。

关于思尔芯S2C

思尔芯(S2C)自2004年设立上海总部以来始终专注于集成电路EDA领域。作为业内知名的EDA解决方案专家,公司业务已覆盖架构设计、软件仿真、硬件仿真、原型验证、验证云服务等工具。已与超过600家国内外企业建立了良好的合作关系,服务于人工智能、高性能计算、图像处理、数据存储、信号处理等数字电路设计功能的实现,广泛应用于物联网、云计算、5G通信、智慧医疗、汽车电子等终端领域。

公司总部位于上海,并建立了全球化的技术研发与市场服务网络,在北京、深圳、西安、香港、东京、首尔及圣何塞等地均设有分支机构或办事处。

思尔芯在EDA领域的技术实力受到了业界的广泛认可,通过多年耕耘,已在数字前端EDA领域构筑了技术与市场的双优势地位。并参与了我国EDA团体标准的制定,承担了多项国家及地方重大科研项目,获评为国家级专精特新“小巨人”企业。

THE END
1.CPU指令仿真模拟器设计cpu模拟器CPU指令仿真模拟器设计 模拟器软件可被细分为多个关键模块,包括但不限于:程序指令序列执行器模块,内存模拟模块,寄存器模拟模块,反汇编模块,以及一套详尽的调试模块(包含单步执行、连续运行、暂停以及断点设置)。此外,它还配备了覆盖率记录模块、执行时间记录模块、看门狗模块、通用接口模块、实时时钟模块和控制陷阱逻辑等https://blog.csdn.net/qq_39372255/article/details/140489799
2.西门子1200plc1211C模拟器产品关键词:西门子1200仿真很卡;plc这样就能诊断和优化用户程序和运动应用。 在TIA Portal中进行组态通过TIA Portal (TIA Portal),可以访问整个数字化的自动化系统:从数字化规划到集成工程组态直至透明运行。 新版本 TIA Portal 通过各种措施来缩短产品上市时间(包括使用模拟工具),通过附加诊断及能源管理功能提高工厂的生产力,并通过连接到管理层来提高https://b2b.baidu.com/land?id=94b3f1a980f7d37f02a5b0244465992010
3.谈谈初学者学习和使用商业仿真软件仿真秀 技术邻 网站里面一搜就有了。也有APP和公众号,时不时的还会有讲座、技术帖子等等。 以下是笔者用过的一些书,都是直接和商业软件使用和开发相关的,大家可以参考: 推荐理由:庄茁老师团队出的书。主要是讲解各个子程序(Fortran90语言)。包含了很多的使用经验,也有C++https://mp.weixin.qq.com/s?__biz=MzA4NzI1NjE0Nw==&mid=2649804578&idx=1&sn=adbe2bd8aca0d4dd19f841b5eefdd920&chksm=89a00e9ca055b0dd384d5c9962753644aa0fdec9221797cc0e19010472432e4922ff70072969&scene=27
4.常用的模拟仿真方式有几种?模拟仿真计算流体力学仿真: 基于数学模型和计算方法的仿真技术。 适用于模拟和评估流体力学系统的行为,如空气动力学、水动力学等。 通常使用软件工具如ANSYS Fluent、OpenFOAM等实现。 编程软件IDE仿真(如CODESYS): 对于小型项目或基于逻辑和数学运算的程序,可以直接使用CODESYS等编程软件IDE进行模拟仿真。 https://m.eccn.com/consultation/design/2024070909482183.html
5.虚拟仿真软件架构图mob64ca12e2ba6f的技术博客虚拟仿真软件架构图:代码示例与解析 虚拟仿真软件是一种模拟现实世界中各种现象和过程的计算机程序。它们广泛应用于教育、科研、工程设计等领域。本文将通过一个简单的虚拟仿真软件架构图,介绍其主要组成部分,并提供代码示例,帮助读者更好地理解虚拟仿真软件的工作原理。 https://blog.51cto.com/u_16213374/11552016
6.CIMCOEDITV6数控编辑仿真模拟数控程序传输软件数控【商品名称】CIMCO EDIT V6 数控编辑仿真模拟数控程序传 【商品编号】1328 【商品单位】3058 【商品价格】30.00 市场价30.00 团购价量大更优惠 会员价 名慧模具网http://www.ug888.com QQ 89106757 手机13915067177 邮件89106757@qq.com CIMCO EDIT V6 程序编辑与仿真系统中文版 http://www.ug888.com/list.asp?ProdId=1328
7.模拟仿真软件范文12篇(全文)首先,数控加工仿真系统只是加工过程的模拟并非真实加工过程,它无法代替学生在真实切削加工的实际感受,尤其是切削用量的选择,它无法进行控制,只能对切削深度过大时加以限制。因此,学生在应用数控加工仿真系统进行编程与操作训练时,往往容易忽视切削用量的选择、数控刀具的选用、零件的装夹方法,而这些程序一旦应用在实际中便https://www.99xueshu.com/w/ikey12dr9ofn.html
8.PlantSimulation2302破解版离散事件模拟工具Sieme作为模拟专家,您绝不能忽视这些问题: ?您希望通过模拟研究完成什么? ?你在检查什么? ?您从模拟研究的结果中得出了哪些结论? ?您如何将模拟研究的结果传递给真实世界的工厂? 二、面向时间的仿真和事件控制仿真 工厂模拟是一个离散的,事件控制的模拟程序,即它只检查那些事件发生在模拟模型中的时间点http://www.sd173.com/soft/8189.html
9.基于全数字仿真平台的自动化测试工具CRESTS/CodeCASTAETCodeCAST提供模拟外部设备产生外部激励信号的机制(全数字仿真),即用脚本语言编写端口事件、中断事件以及其它外部事件的逻辑流程。 总之,全数字仿真运行平台CRESTS/CodeCAST能够满足软件仿真运行与测试的要求,方便灵活地仿真外部硬件行为,监控程序运行的内部状态,支持软件的覆盖测试和功能测试的需求。 http://m.chinaaet.com/article/18675
10.LMD18200直流电机专用驱动器设计(DXP工程文件+模拟仿真+程序)直流电机控制器模拟仿真程序.zip 下载 描述:模拟仿真+程序 LMD18200 .pdf 下载 描述:LMD18200 中文数据手册 [相关器件] SLG47115 GreenPAK Programmable Mixed-Signal Matrix with High Voltage Features 立即购买 器件型号数量器件厂商器件描述数据手册ECAD模型风险等级参考价格更多信息 https://www.cirmall.com/circuit/6031
11.WinMODPLC虚拟调试软件让你提前发现程序中的问题下图是导入WinMoD的逻辑工艺图,在二维图中可以观察一些信号仿真结果 下图是信号发生的前后逻辑关系记录,电气自动化工程师应该更注重于信号结果,用此功能可以有助于观察PLC程序前前后后到底发生了什么,PLC程序在CPU里运行情况,通过信号记录器可以记录程序一切的前前后后的逻辑关系。 https://www.meipian.cn/28pj3ac9
12.2024年7款最佳iOS模拟器/虚拟机推荐(免费/付费)虽然Simulators也模拟操作系统环境,但它们不会像Emulators那样尝试创建硬件副本。由于这个限制,Simulators可能无法运行某些应用程序。 大多数用户更喜欢 iOS Emulators而不是Simulators。其实,大多数开发人员使用Emulators来开发和测试应用程序。 注意: 市面中的 iOS 仿真软件主要面向希望在向公众发布应用程序之前对其进行测试的https://www.extrabux.cn/chs/guide/7272439
13.MATLABSIMULINK建模与仿真实例精讲含模拟程序中文PDF完整版电子书☉ 如果遇到什么问题,请评论留言,我们定会解决问题,谢谢大家支持! ☉ 本站提供的一些商业软件是供学习研究之用,如用于商业用途,请购买正版。 ☉ 本站提供的MATLAB SIMULINK建模与仿真实例精讲 含模拟程序 中文PDF完整版资源来源互联网,版权归该下载资源的合法拥有者所有。https://www.jb51.net/books/903857.html
14.基于工业4.0智能制造系统FactoryIO与CODESYSModbusTCP通信FactoryIO基于Windows平台,支持多方厂家的PLC,如在全球拥有领先工业技术的德国西门子,世界500强企业的法国施耐德等;支持多种通信协议和方式,如FactoryIO使用驱动程序可进行OPC DA通信,Modbus TCP/IP通信,还可以与PLC仿真模拟器进行交互等。 2.3 CODESYS简介 CODESYS 是德国3S-Smart Software Solutions GmbH公司开发的一款https://jxx.gdsdxy.edu.cn/2021_05/20_11/content-27805.html
15.Siemens数控仿真系统模拟版斯沃数控仿真软件7.2版数控加工中心车床铣床编程仿真模拟教程斯沃系统手册西门子802SC数控铣床操作编程手册提取方式是百度网盘分享地址 上传者:codedadi时间:2024-09-01 宇龙数控加工仿真系统宇龙V3.8破解版入门者首选 数控仿真软件,内有发那科、西门子以及华中数控。可通过相应学习、了解数控加工程序的工作过程及。 https://www.iteye.com/resource/oucegen-1460242
16.虚拟仿真多媒体互动互动娱乐情景模拟武汉百变互动科技合伙企业(有限合伙)(https://baibianhudong.gys.cn)主营产品包括虚拟仿真、多媒体互动、互动娱乐、情景模拟等,武汉百变互动科技合伙企业(有限合伙)负责人张女士,武汉百变互动科技合伙企业(有限合伙)希望能与您成为合作伙伴http://baibianhudong.cn.china.cn/