CN111914410A - SoC软硬件协同仿真加速系统及方法 - Google Patents
SoC软硬件协同仿真加速系统及方法 Download PDFInfo
- Publication number
- CN111914410A CN111914410A CN202010687798.7A CN202010687798A CN111914410A CN 111914410 A CN111914410 A CN 111914410A CN 202010687798 A CN202010687798 A CN 202010687798A CN 111914410 A CN111914410 A CN 111914410A
- Authority
- CN
- China
- Prior art keywords
- simulation
- cpu
- specific data
- execution result
- soc
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 157
- 230000001133 acceleration Effects 0.000 title claims abstract description 96
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000012544 monitoring process Methods 0.000 claims abstract description 28
- 238000012545 processing Methods 0.000 claims abstract description 19
- 230000008569 process Effects 0.000 claims description 12
- 238000013500 data storage Methods 0.000 claims description 4
- 238000011161 development Methods 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明揭示了一种SoC软硬件协同仿真加速系统及方法,仿真加速系统用以向仿真工具传递原本需要运行在SoC中CPU上特定指令所需的特定数据;仿真工具接收仿真加速系统发送的特定数据,根据获取的特定数据使用仿真工具所运行的计算机系统执行特定指令进行运算处理,得到执行结果,并将执行结果发送至SoC系统的对应CPU。所述仿真加速系统包括SoC系统和仿真加速模块,SoC系统包括系统总线、若干CPU及若干总线从设备;所述总线分别连接各CPU及各总线从设备;各总线从设备包括存储子系统;仿真加速模块包括若干总线监测器及监测信息采集器,所述监测信息采集器连接各总线监测器。本发明提出的SoC软硬件协同仿真加速系统及方法,可提高仿真效率,缩短SoC开发周期。
Description
技术领域
本发明属于芯片开发技术领域,涉及一种SoC仿真系统,尤其涉及一种SoC软硬件协同仿真加速系统及方法。
背景技术
SoC仿真是SoC开发过程中必要的步骤,仿真过程中将CPU需要执行的软件代码编译后的指令置入SoC存储子系统中,让SoC系统中的CPU读取并执行软件代码编译后生成的指令,进行软硬件联合仿真是SoC仿真、测试设计功能是否正确的有效方法。
软件代码在SoC进行软硬件联合仿真的过程中如果使用仿真工具依靠SoC系统中的CPU运行软件代码编译后生成的指令,本质上是仿真工具对硬件电路的功能模拟,会耗费不少仿真时间才能模拟出真实的电路行为并得到软件代码的执行结果。有些软件代码(譬如调用C语言标准库中的库函数)在SoC仿真过程中已经经过反复验证不存在缺陷,无需进行修改,这部分软件代码有时需要在一次仿真过程中被执行多次,有时在修改设计、更新仿真环境后重新进行软硬件联合仿真的过程往往和之前的过程相比SoC系统中CPU需要运行的这部分软件代码的功能并没有发生变化。现有方式需要重复耗费大量的仿真时间,而且多次的软硬件联合仿真过程需要重复这一过程,重复耗费大量的仿真时间,导致仿真效率低下,不利于快速得到仿真结果。
有鉴于此,如今迫切需要设计一种新的仿真方式,以便克服现有仿真方式存在的上述至少部分缺陷。
发明内容
本发明提供一种SoC软硬件协同仿真加速系统及方法,可提高仿真效率,缩短SoC开发周期。
为解决上述技术问题,根据本发明的一个方面,采用如下技术方案:
一种SoC软硬件协同仿真加速系统,仿真加速系统能在仿真过程中在SoC系统和仿真工具之间相互传递数据;
所述仿真加速系统包括SoC系统和仿真加速模块;
SoC系统包括:系统总线、若干CPU、若干总线从设备;
仿真加速模块包括:若干总线监测器及监测信息采集器;
所述系统总线分别连接各CPU及各总线从设备,各总线从设备包括存储子系统;所述监测信息采集器连接各总线监测器;各总线监测器分别连接CPU与系统总线的连接端口;
所述存储子系统用以保存经编译后的CPU所运行的软件指令,同时用以传递特定数据及保存软件指令执行结果;
各总线监测器用以监测CPU对系统总线的操作,每个总线监测器均连接一个CPU与系统总线的连接端口;
所述总线监测器用以对CPU发出的总线操作进行动态监测,并把监测结果传递给监测信息采集器。
作为本发明的一种实施方式,如果监测到指令执行标记则获取CPU所传递的特定数据并使用仿真工具所运行的计算机系统执行特定指令进行运算处理,得到执行结果,运算结束后发出指令执行结束标记并将执行结果传递给CPU。
作为本发明的一种实施方式,所述存储子系统存储的第一个特定数据所处位置位于存储子系统中的特定位置,保证CPU和仿真加速模块都能修改和获取该特定位置的内容;
所述仿真加速模块根据第一个特定数据所处位置获取第一个特定数据长度、第一个特定数据内容、下一个特定数据所处位置,直到获取特定数据结束标记后获取CPU所传递的所有特定数据。
作为本发明的一种实施方式,所述仿真加速模块向存储子系统中保存执行结果,第一个执行结果保存位置位于存储子系统中的特定位置,保证CPU和仿真加速模块都能获取和修改该特定位置的内容,CPU根据第一个执行结果所处位置获取第一个执行结果长度、第一个执行结果内容、下一个执行结果所处位置,直到获取执行结果结束标记后获取所有仿真加速模块所保存的执行结果。
根据本发明的另一个方面,采用如下技术方案:
一种SoC软硬件协同仿真加速方法,包括:
SoC系统向仿真加速模块传递原本需要在CPU上运行的特定软件指令所需的特定数据;以及
仿真加速模块接收所述SoC系统发送的特定数据,根据获取的特定数据使用仿真工具所运行的计算机系统执行特定指令进行运算处理,得到执行结果,并将执行结果发送至SoC系统。
作为本发明的一种实施方式,CPU获取指令并判断指令是否需要使用仿真工具所运行的计算机系统执行特定指令进行运算处理以获取执行结果,若需要,则将特定数据传递给仿真加速模块后通过总线发出指令执行标记,然后等待指令执行结束标记并获取执行结果,仿真加速模块获取特定数据后使用仿真工具所运行的计算机系统执行特定指令进行运算处理,得到执行结果,运算结束后发出指令执行结束标记并将执行结果传递给CPU。
作为本发明的一种实施方式,所述仿真加速系统的各总线监测器监测SoC系统CPU对系统总线的操作,每个总线监测器均连接一个CPU与系统总线的连接端口;所述仿真加速系统的总线监测器对SoC系统CPU发出的总线操作进行动态监测,并把监测结果传递给监测信息采集器。
作为本发明的一种实施方式,所述存储子系统存储的第一个特定数据保存位置位于存储子系统中的特定位置,保证CPU和仿真加速模块都能修改和获取该特定位置的内容;
所述仿真加速模块根据第一个特定数据所处位置获取第一个特定数据长度、第一个特定数据内容、下一个特定数据所处位置,直到获取特定数据结束标记后获取CPU所传递的所有特定数据;
CPU和仿真加速模块使用共享存储子系统特定区域的方法传递特定数据,CPU在存储子系统中使用特定的数据结构将需要传递的特定数据保存在存储子系统的特定区域,仿真加速模块根据该数据结构获取CPU所传递的所有特定数据。
作为本发明的一种实施方式,所述仿真加速模块向存储子系统中保存执行结果,第一个执行结果保存位置位于存储子系统中的某个特定位置,保证CPU和仿真加速模块都能获取和修改特定位置的内容,CPU根据第一个执行结果所处位置以获取第一个执行结果长度、第一个执行结果内容、下一个执行结果所处位置,直到获取执行结果结束标记后获取所有仿真加速模块所保存的执行结果;
CPU和仿真加速模块使用共享存储子系统特定区域的方法传递执行结果,仿真加速模块在存储子系统中使用特定的数据结构将需要传递的执行结果保存在存储子系统的特定区域,CPU根据该数据结构获取所有仿真加速模块所保存的执行结果。
本发明的有益效果在于:本发明提出的SoC软硬件协同仿真加速系统及方法,将部分需要耗费大量仿真时间,使用仿真工具模拟SoC系统中CPU硬件行为才能获取执行结果的指令,通过特定数据传递、指令执行标记同步、执行结果保存的方法使用仿真工具所运行的计算机系统获取执行结果并传递执行结果给SoC系统,克服了仿真工具模拟SoC系统中CPU硬件行为所耗费大量仿真时间的缺点。本发明可提高仿真效率,缩短SoC开发周期。
附图说明
图1为本发明一实施例中SoC软硬件协同仿真加速系统的组成示意图。
图2为本发明一实施例中CPU代码执行流程图。
图3为本发明一实施例中监测信息采集器行为流程图。
图4为本发明一实施例中CPU写入特定数据格式示意图。
图5为本发明一实施例中仿真加速模块保存执行结果格式示意图。
具体实施方式
下面结合附图详细说明本发明的优选实施例。
为了进一步理解本发明,下面结合实施例对本发明优选实施方案进行描述,但是应当理解,这些描述只是为进一步说明本发明的特征和优点,而不是对本发明权利要求的限制。
该部分的描述只针对几个典型的实施例,本发明并不仅局限于实施例描述的范围。相同或相近的现有技术手段与实施例中的一些技术特征进行相互替换也在本发明描述和保护的范围内。
说明书中的“连接”既包含直接连接,也包含间接连接。
本发明揭示了一种SoC软硬件协同仿真加速系统,仿真加速系统能在仿真过程中在SoC系统和仿真工具之间相互传递数据;所述仿真加速系统包括SoC系统和仿真加速模块。
图1为本发明一实施例中SoC软硬件协同仿真加速系统的组成示意图;请参阅图1,在本发明的一实施例中,所述SoC系统包括系统总线1、若干CPU 2及若干总线从设备3;所述系统总线1分别连接各CPU 2及各总线从设备3;各总线从设备3包括存储子系统。所述存储子系统用以保存经编译后的CPU所运行的软件指令,同时用以传递特定数据及保存软件指令执行结果。
在一实施例中,CPU用以获取指令并判断对应指令是否需要使用仿真工具所运行的计算机系统获取执行结果,若需要,则将特定数据传递给仿真加速模块后通过总线发出指令执行标记,然后等待指令执行结束标记并获取执行结果,仿真加速模块获取特定数据后使用仿真工具所运行的计算机系统执行特定指令进行运算处理,得到执行结果,运算结束后发出指令执行结束标记并将执行结果传递给SoC系统。
请继续参阅图1,在本发明的一实施例中,所述仿真加速模块包括若干总线监测器4及监测信息采集器5,所述监测信息采集器5连接各总线监测器4。各总线监测器4用以监测SoC系统CPU对系统总线的操作,各总线监测器分别连接CPU与系统总线的连接端口;所述总线监测器4用以对CPU发出的总线操作进行动态监测,并把监测结果传递给监测信息采集器5。
在一实施例中,如果监测到指令执行标记则获取CPU所传递的特定数据并使用仿真工具所运行的计算机系统执行特定指令进行运算处理,得到执行结果,运算结束后发出指令执行结束标记并将执行结果传递给CPU。
SoC系统中CPU执行指令的流程如图2所示,在本发明的一实施例中,CPU判断需要执行的指令是否需要使用仿真工具所运行的计算机系统执行指令进行运算以获取执行结果,若需要,则将特定数据传递给仿真加速模块后通过总线发出指令执行标记,然后等待指令执行结束标记并获取执行结果,仿真加速模块获取特定数据后使用仿真工具所运行的计算机系统执行特定指令进行运算处理,得到执行结果,运算结束后发出指令执行结束标记并将执行结果传递给SoC系统。否则使用CPU执行指令。
图3为本发明一实施例中监测信息采集器行为流程图;请参阅图3,在本发明的一实施例中,如果监测到CPU发出的指令执行标记,则去获取特定数据并使用仿真工具所运行的计算机系统执行指令并获取执行结果。指令执行标记可以有多种,不同的指令执行标记分别对应对特定数据的不同处理行为以及处理后得到的结果,仿真加速模块可以使用仿真工具所支持的仿真语言编写仿真程序使用所获取的特定数据得到执行结果,并保证和CPU使用相同的特定数据所得到的执行结果是一致的,仿真加速模块得到执行结果后把执行结果保存在存储子系统中并发出指令执行结束标记。如果没有监测到CPU发出执行指令标记则继续监测来自监测器的总线操作信号。
图4为本发明一实施例中CPU写入特定数据格式示意图;请参阅图4,在本发明的一实施例中,所述存储子系统存储的第一个特定数据所处位置位于存储子系统中的某个特定位置,保证CPU和仿真加速模块都能修改和获取该特定位置的内容。仿真加速模块根据第一个特定数据所处位置获取第一个特定数据长度、第一个特定数据内容、下一个特定所处位置,直到获取特定数据结束标记后可以获取CPU所传递的所有特定数据。特别的,第一个特定数据保存位置的内容为特定数据结束标记表示不需要传递特定数据。
图5为本发明一实施例中仿真工具保存执行结果格式示意图;请参阅图5,在本发明的一实施例中,所述仿真加速模块向存储子系统中保存执行结果,第一个执行结果所处位置位于存储子系统中的某个特定位置,保证CPU和仿真加速模块都能获取和修改该特定位置的内容,CPU根据第一个执行结果所处位置获取第一个执行结果长度、第一个执行结果内容、下一个执行结果所处位置,直到获取执行结果结束标记后获取所有仿真加速模块所保存的执行结果。
本发明还揭示一种SoC软硬件协同仿真加速方法,包括如下步骤:
SoC系统向仿真加速模块传递原本需要在CPU上执行特定指令所需的特定数据;以及
仿真加速模块接收所述SoC系统发送的特定数据,根据获取的特定数据使用仿真工具所运行的计算机系统执行特定指令进行运算处理,得到执行结果,并将执行结果发送至SoC系统。
在本发明的一实施例中,CPU获取指令并判断指令是否需要使用仿真工具所运行的计算机系统执行特定指令进行运算处理以获取执行结果,若需要,则将特定数据传递给仿真加速模块后通过总线发出指令执行标记,然后等待指令执行结束标记并获取执行结果,仿真加速模块获取特定数据后使用仿真工具所运行的计算机系统执行特定指令进行运算处理,得到执行结果,运算结束后发出指令执行结束标记并将执行结果发送给CPU。
在本发明的一实施例中,所述仿真加速系统的各总线监测器监测CPU对系统总线的操作,每个总线监测器均连接一个CPU与系统总线的连接端口;所述仿真加速系统的总线监测器对CPU发出的总线操作进行动态监测,并把监测结果传递给监测信息采集器。
在本发明的一实施例中,所述存储子系统存储的第一个特定数据保存位置位于存储子系统中的特定位置,保证CPU和仿真加速模块都能修改和获取该特定位置的内容。所述仿真加速模块根据第一个特定数据所处位置获取第一个特定数据长度、第一个特定数据内容、下一个特定数据所处位置,直到获取特定数据结束标记后获取CPU所传递的所有特定数据。CPU和仿真加速模块使用共享存储子系统特定区域的方法传递特定数据,CPU在存储子系统中使用特定的数据结构将需要传递的特定数据保存在存储子系统的特定区域,仿真加速模块根据该数据结构获取CPU所传递的所有特定数据。
在本发明的一实施例中,所述仿真加速模块向存储子系统中保存执行结果,第一个执行结果保存位置位于存储子系统中的某个特定位置,保证CPU和仿真加速模块都能获取和修改特定位置的内容,CPU根据第一个执行结果所处位置以获取第一个执行结果长度、第一个执行结果内容、下一个执行结果所处位置,直到获取执行结果结束标记后获取所有仿真加速模块所保存的执行结果。CPU和仿真加速模块使用共享存储子系统特定区域的方法传递执行结果,仿真加速模块在存储子系统中使用特定的数据结构将需要传递的执行结果保存在存储子系统的特定区域,CPU根据该数据结构获取所有仿真加速模块所保存的执行结果。
综上所述,本发明提出的SoC软硬件协同仿真加速系统及方法,将部分需要耗费大量仿真时间,使用仿真工具模拟SoC系统中CPU硬件行为才能获取执行结果的指令,通过特定数据传递、指令执行标记同步、执行结果保存的方法使用仿真工具所运行的计算机系统获取执行结果并传递执行结果给SoC系统,克服了仿真工具模拟SoC系统中CPU硬件行为所耗费大量仿真时间的缺点。本发明可提高仿真效率,缩短SoC开发周期。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
这里本发明的描述和应用是说明性的,并非想将本发明的范围限制在上述实施例中。实施例中所涉及的效果或优点可因多种因素干扰而可能不能在实施例中体现,对于效果或优点的描述不用于对实施例进行限制。这里所披露的实施例的变形和改变是可能的,对于那些本领域的普通技术人员来说实施例的替换和等效的各种部件是公知的。本领域技术人员应该清楚的是,在不脱离本发明的精神或本质特征的情况下,本发明可以以其它形式、结构、布置、比例,以及用其它组件、材料和部件来实现。在不脱离本发明范围和精神的情况下,可以对这里所披露的实施例进行其它变形和改变。
Claims (9)
1.一种SoC软硬件协同仿真加速系统,其特征在于:仿真加速系统能在仿真过程中在SoC系统和仿真工具之间相互传递数据;
所述仿真加速系统包括SoC系统和仿真加速模块;
SoC系统包括:系统总线、若干CPU、若干总线从设备;
仿真加速模块包括:若干总线监测器及监测信息采集器;
所述系统总线分别连接各CPU及各总线从设备,各总线从设备包括存储子系统;所述监测信息采集器连接各总线监测器;各总线监测器分别连接CPU与系统总线的连接端口;
所述存储子系统用以保存经编译后的CPU所运行的软件指令,同时用以传递特定数据及保存软件指令执行结果;
各总线监测器用以监测CPU对系统总线的操作,每个总线监测器均连接一个CPU与系统总线的连接端口;
所述总线监测器用以对CPU发出的总线操作进行动态监测,并把监测结果传递给监测信息采集器。
2.根据权利要求1所述的SoC软硬件协同仿真加速系统,其特征在于:
如果监测到指令执行标记则获取CPU所传递的特定数据并使用仿真工具所运行的计算机系统执行特定指令进行运算处理,得到执行结果,运算结束后发出指令执行结束标记并将执行结果传递给CPU。
3.根据权利要求1所述的SoC软硬件协同仿真加速系统,其特征在于:
所述存储子系统存储的第一个特定数据所处位置位于存储子系统中的特定位置,保证CPU和仿真加速模块都能修改和获取该特定位置的内容;
所述仿真加速模块根据第一个特定数据所处位置获取第一个特定数据长度、第一个特定数据内容、下一个特定数据所处位置,直到获取特定数据结束标记后获取CPU所传递的所有特定数据。
4.根据权利要求1所述的SoC软硬件协同仿真加速系统,其特征在于:
所述仿真加速模块向存储子系统中保存执行结果,第一个执行结果保存位置位于存储子系统中的特定位置,保证CPU和仿真加速模块都能获取和修改该特定位置的内容,CPU根据第一个执行结果所处位置获取第一个执行结果长度、第一个执行结果内容、下一个执行结果所处位置,直到获取执行结果结束标记后获取所有仿真加速模块所保存的执行结果。
5.一种SoC软硬件协同仿真加速方法,其特征在于,包括:
SoC系统向仿真加速模块传递原本需要在CPU上运行的特定软件指令所需的特定数据;以及
仿真加速模块接收所述SoC系统发送的特定数据,根据获取的特定数据使用仿真工具所运行的计算机系统执行特定指令进行运算处理,得到执行结果,并将执行结果发送至SoC系统。
6.根据权利要求5所述的SoC软硬件协同仿真加速方法,其特征在于:
CPU获取指令并判断指令是否需要使用仿真工具所运行的计算机系统执行特定指令进行运算处理以获取执行结果,若需要,则将特定数据传递给仿真加速模块后通过总线发出指令执行标记,然后等待指令执行结束标记并获取执行结果,仿真加速模块获取特定数据后使用仿真工具所运行的计算机系统执行特定指令进行运算处理,得到执行结果,运算结束后发出指令执行结束标记并将执行结果传递给CPU。
7.根据权利要求6所述的SoC软硬件协同仿真加速方法,其特征在于:
所述仿真加速系统的各总线监测器监测SoC系统CPU对系统总线的操作,每个总线监测器均连接一个CPU与系统总线的连接端口;所述仿真加速系统的总线监测器对SoC系统CPU发出的总线操作进行动态监测,并把监测结果传递给监测信息采集器。
8.根据权利要求5所述的SoC软硬件协同仿真加速方法,其特征在于:
所述存储子系统存储的第一个特定数据保存位置位于存储子系统中的特定位置,保证CPU和仿真加速模块都能修改和获取该特定位置的内容;
所述仿真加速模块根据第一个特定数据所处位置获取第一个特定数据长度、第一个特定数据内容、下一个特定数据所处位置,直到获取特定数据结束标记后获取CPU所传递的所有特定数据;
CPU和仿真加速模块使用共享存储子系统特定区域的方法传递特定数据,CPU在存储子系统中使用特定的数据结构将需要传递的特定数据保存在存储子系统的特定区域,仿真加速模块根据该数据结构获取CPU所传递的所有特定数据。
9.根据权利要求5所述的SoC软硬件协同仿真加速方法,其特征在于:
所述仿真加速模块向存储子系统中保存执行结果,第一个执行结果保存位置位于存储子系统中的某个特定位置,保证CPU和仿真加速模块都能获取和修改特定位置的内容,CPU根据第一个执行结果所处位置以获取第一个执行结果长度、第一个执行结果内容、下一个执行结果所处位置,直到获取执行结果结束标记后获取所有仿真加速模块所保存的执行结果;
CPU和仿真加速模块使用共享存储子系统特定区域的方法传递执行结果,仿真加速模块在存储子系统中使用特定的数据结构将需要传递的执行结果保存在存储子系统的特定区域,CPU根据该数据结构获取所有仿真加速模块所保存的执行结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010687798.7A CN111914410A (zh) | 2020-07-16 | 2020-07-16 | SoC软硬件协同仿真加速系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010687798.7A CN111914410A (zh) | 2020-07-16 | 2020-07-16 | SoC软硬件协同仿真加速系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111914410A true CN111914410A (zh) | 2020-11-10 |
Family
ID=73281585
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010687798.7A Pending CN111914410A (zh) | 2020-07-16 | 2020-07-16 | SoC软硬件协同仿真加速系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111914410A (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5742794A (en) * | 1995-10-13 | 1998-04-21 | Dell Usa, L.P. | Emulation techniques for computer systems having mixed processor/software configurations |
US20050273542A1 (en) * | 2004-06-08 | 2005-12-08 | Poseidon Design Systems, Inc. | Configurable communication template for designing and implementing an accelerator |
CN1928877A (zh) * | 2006-08-17 | 2007-03-14 | 电子科技大学 | Soc软硬件一体化设计验证方法 |
JP2007249293A (ja) * | 2006-03-13 | 2007-09-27 | Fujitsu Ltd | ハードウェア/ソフトウェア協調検証装置 |
US7444571B1 (en) * | 2003-02-27 | 2008-10-28 | Marvell International Ltd. | Apparatus and method for testing and debugging an integrated circuit |
US20080306721A1 (en) * | 2004-03-09 | 2008-12-11 | Sei Yang Yang | Dynamic-Verification-Based Verification Apparatus Achieving High Verification Performance and Verification Efficiency and the Verification Methodology Using the Same |
CN102521444A (zh) * | 2011-12-08 | 2012-06-27 | 青岛海信信芯科技有限公司 | 软硬件协同仿真/验证方法及装置 |
CN103678126A (zh) * | 2012-12-25 | 2014-03-26 | 卡巴斯基实验室封闭式股份公司 | 用于提高应用仿真加速的效率的系统和方法 |
CN103744684A (zh) * | 2014-01-24 | 2014-04-23 | 中国科学院自动化研究所 | 一种异构软硬件协同开发的方法及系统 |
CN105205249A (zh) * | 2015-09-17 | 2015-12-30 | 深圳国微技术有限公司 | 一种soc调试验证系统及其软硬件协同方法 |
CN106528363A (zh) * | 2015-09-14 | 2017-03-22 | 深圳市博巨兴实业发展有限公司 | 一种软硬件协同设计的验证方法和装置 |
CN106599343A (zh) * | 2016-11-01 | 2017-04-26 | 深圳国微技术有限公司 | 一种提高仿真效率的soc系统验证方法和装置 |
CN107563079A (zh) * | 2017-09-11 | 2018-01-09 | 杨宇翔 | 一种基于fpga的协同仿真加速器及仿真系统和方法 |
US20180336080A1 (en) * | 2017-05-18 | 2018-11-22 | Nxp Usa, Inc. | Hardware and software debug using data dependency tracing |
CN111124789A (zh) * | 2019-11-19 | 2020-05-08 | 博流智能科技(南京)有限公司 | 一种芯片仿真调试系统及调试方法 |
-
2020
- 2020-07-16 CN CN202010687798.7A patent/CN111914410A/zh active Pending
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5742794A (en) * | 1995-10-13 | 1998-04-21 | Dell Usa, L.P. | Emulation techniques for computer systems having mixed processor/software configurations |
US7444571B1 (en) * | 2003-02-27 | 2008-10-28 | Marvell International Ltd. | Apparatus and method for testing and debugging an integrated circuit |
US20080306721A1 (en) * | 2004-03-09 | 2008-12-11 | Sei Yang Yang | Dynamic-Verification-Based Verification Apparatus Achieving High Verification Performance and Verification Efficiency and the Verification Methodology Using the Same |
US20050273542A1 (en) * | 2004-06-08 | 2005-12-08 | Poseidon Design Systems, Inc. | Configurable communication template for designing and implementing an accelerator |
JP2007249293A (ja) * | 2006-03-13 | 2007-09-27 | Fujitsu Ltd | ハードウェア/ソフトウェア協調検証装置 |
CN1928877A (zh) * | 2006-08-17 | 2007-03-14 | 电子科技大学 | Soc软硬件一体化设计验证方法 |
CN102521444A (zh) * | 2011-12-08 | 2012-06-27 | 青岛海信信芯科技有限公司 | 软硬件协同仿真/验证方法及装置 |
CN103678126A (zh) * | 2012-12-25 | 2014-03-26 | 卡巴斯基实验室封闭式股份公司 | 用于提高应用仿真加速的效率的系统和方法 |
CN103744684A (zh) * | 2014-01-24 | 2014-04-23 | 中国科学院自动化研究所 | 一种异构软硬件协同开发的方法及系统 |
CN106528363A (zh) * | 2015-09-14 | 2017-03-22 | 深圳市博巨兴实业发展有限公司 | 一种软硬件协同设计的验证方法和装置 |
CN105205249A (zh) * | 2015-09-17 | 2015-12-30 | 深圳国微技术有限公司 | 一种soc调试验证系统及其软硬件协同方法 |
CN106599343A (zh) * | 2016-11-01 | 2017-04-26 | 深圳国微技术有限公司 | 一种提高仿真效率的soc系统验证方法和装置 |
US20180336080A1 (en) * | 2017-05-18 | 2018-11-22 | Nxp Usa, Inc. | Hardware and software debug using data dependency tracing |
CN107563079A (zh) * | 2017-09-11 | 2018-01-09 | 杨宇翔 | 一种基于fpga的协同仿真加速器及仿真系统和方法 |
CN111124789A (zh) * | 2019-11-19 | 2020-05-08 | 博流智能科技(南京)有限公司 | 一种芯片仿真调试系统及调试方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9507688B2 (en) | Execution history tracing method | |
CN109032879B (zh) | 多核处理器访存数据检测验证系统及方法 | |
CN100565472C (zh) | 一种适用于多处理器核系统芯片的调试方法 | |
US20190034318A1 (en) | Hardware-Software Co-Verification for Debugging Firmware on a Hardware Simulator | |
CN103235756A (zh) | 一种面向嵌入式系统分区应用程序软件的仿真测试方法 | |
EP3382536A1 (en) | Emulation of hardware components | |
CN102231079B (zh) | 基于实车行驶状态动态实时回放的车辆电控系统测试方法 | |
KR101280287B1 (ko) | 임베디드 소프트웨어 검증장치 및 그 운용방법 | |
JP2006313521A (ja) | プログラマブルデバイスのモデリング方法および装置 | |
CN115657553A (zh) | Pcie拓扑和pcie设备模拟方法、装置、设备及介质 | |
CN102184290B (zh) | 嵌入式微处理器的周期精确和位精确系统级模型构建方法 | |
EP2672388B1 (en) | Multi-processor parallel simulation method, system and scheduler | |
US6751752B1 (en) | Checking events generated by a device | |
JP2003015906A (ja) | リモートデバッグ方法および装置 | |
CN116225308B (zh) | 数据读写方法、装置、存储介质与芯片 | |
CN111914410A (zh) | SoC软硬件协同仿真加速系统及方法 | |
CN113792522A (zh) | 仿真验证方法、装置及计算设备 | |
CN114217927A (zh) | 一种线程调用方法、装置、计算机设备及存储介质 | |
US20120191444A1 (en) | Simulation device, simulation method, and computer program therefor | |
CN113609052A (zh) | 基于fpga和微处理器的芯片模拟系统及实现方法 | |
Ko et al. | Hardware-in-the-loop simulation for CPU/GPU heterogeneous platforms | |
CN112559336A (zh) | 自适应调试异构计算芯片的方法、装置、系统及主板芯片 | |
CN111695314A (zh) | 一种多核芯片仿真测试方法及装置 | |
CN111464383A (zh) | 基于生产环境的系统容量测试方法及装置 | |
US20060070042A1 (en) | Automatic clocking in shared-memory co-simulation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |