CN108415839B - 多核SoC芯片的开发架构及多核SoC芯片的开发方法 - Google Patents

多核SoC芯片的开发架构及多核SoC芯片的开发方法 Download PDF

Info

Publication number
CN108415839B
CN108415839B CN201810200819.0A CN201810200819A CN108415839B CN 108415839 B CN108415839 B CN 108415839B CN 201810200819 A CN201810200819 A CN 201810200819A CN 108415839 B CN108415839 B CN 108415839B
Authority
CN
China
Prior art keywords
slave
master
core
kernel
module
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.)
Active
Application number
CN201810200819.0A
Other languages
English (en)
Other versions
CN108415839A (zh
Inventor
赵树森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Yihua Computer Co Ltd
Shenzhen Yihua Time Technology Co Ltd
Shenzhen Yihua Financial Intelligent Research Institute
Original Assignee
Shenzhen Yihua Computer Co Ltd
Shenzhen Yihua Time Technology Co Ltd
Shenzhen Yihua Financial Intelligent Research Institute
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Yihua Computer Co Ltd, Shenzhen Yihua Time Technology Co Ltd, Shenzhen Yihua Financial Intelligent Research Institute filed Critical Shenzhen Yihua Computer Co Ltd
Priority to CN201810200819.0A priority Critical patent/CN108415839B/zh
Publication of CN108415839A publication Critical patent/CN108415839A/zh
Application granted granted Critical
Publication of CN108415839B publication Critical patent/CN108415839B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • G06F11/3656Software debugging using additional hardware using a specific debug interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3644Software debugging by instrumenting at runtime

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种多核SOC芯片的开发架构,包括:SoC芯片,包括主内核和N个从内核,N为正整数;宿主机,包括主运行模块和N个从运行模块,第i个从运行模块与第i个从内核对应且功能相同,所述主运行模块与所述主内核的功能相同,1≤i≤N且i为整数。本发明还公开了一种多核SoC芯片的开发方法。本发明通过在宿主机上设置与SoC芯片的主内核相对应的主运行模块、与从内核相对应的从运行模块,待调试的从应用程序在宿主机的从运行模块上运行并通过第二虚拟通信接口与SoC芯片上的主内核和从内核进行指令传送,以此模拟SoC芯片的内核与内核之间的通信,降低SoC芯片的开发难度,且调试过程可操作性强、便于开发,且有效缩短开发周期,降低研发成本。

Description

多核SoC芯片的开发架构及多核SoC芯片的开发方法
技术领域
本发明芯片开发技术领域,具体地,设计一种应用于多核SoC芯片的开发架构及开发方法。
背景技术
系统级芯片SoC的多核处理器的软件开发,一般是使用通用的嵌入式设备软、硬件开发环境,没有成熟便捷的Windows或Linux通用开发环境与之兼容,致使开发、调试困难,软件开发周期长,研发成本大。
现有技术中,系统级芯片SoC的多核处理器的软件开发通用的方法是在线调试,通过使用JTAG等连接调试端口,对位于不同核的程序逐一调试。内核在SoC芯片上调试,无法有效地跟踪数据的传送情况,也无法方便地对待测试的程序进行修改。且多核中的主核和其他从核的开发有相关性,一般采用迭代式累进开发。但是该方法调试困难,尤其在初期程序不完善时更加复杂。
发明内容
为解决上述现有技术存在的问题,本发明提供了一种利用具有成熟开发环境对SoC芯片进行调试开发的多核SOC芯片的开发架构及多核SoC芯片的开发方法。
为了达到上述发明目的,本发明采用了如下的技术方案:
根据本发明的一方面,提供了一种多核SoC芯片的开发架构,包括:
SoC芯片,包括主内核和N个从内核,N为正整数;
宿主机,包括主运行模块和N个从运行模块,第i个从运行模块与第i个从内核对应且功能相同,所述主运行模块与所述主内核对应且功能相同,1≤i≤N且i为整数;
当对所述SoC芯片进行开发时,所述主运行模块对将加载到所述主内核的主应用程序进行运行调试,将调试完成后的主应用程序加载到所述主内核中,加载了调试完成后的主应用程序的所述主内核运行;第i个从运行模块对将加载到第i个从内核的从应用程序进行运行,所述第i个从运行模块运行过程中产生的激励指令传给加载了调试完成后的主应用程序的所述主内核,加载了调试完成后的主应用程序的所述主内核接收所述激励指令,并且加载了调试完成后的主应用程序的所述主内核将所述激励指令发送到目的从内核,加载了调试完成后的主应用程序的所述主内核和/或所述目的从内核根据所述激励指令生成响应指令,并且加载了调试完成后的主应用程序的所述主内核将所述响应指令回传给目的从运行模块,所述第i个从运行模块通过所述激励指令和所述响应指令的反复交互实现对所述第i个从内核的从应用程序的调试,所述第i个从内核的从应用程序调试完成后加载到相应的所述第i个从内核中。
具体地,当对所述SoC芯片进行开发时,所述主运行模块以及配合于所述主运行模块的从运行模块同时运行,以使所述主运行模块完成对所述主应用程序的运行调试。
具体地,当对所述SoC芯片进行开发时,加载了调试完成后的主应用程序的所述主内核进行运行,第i个从运行模块以及配合于第i个从运行模块的其他所述从运行模块和/或所述主运行模块同时运行,以使第i个从运行模块完成对将加载到第i个从内核的从应用程序的运行。
具体地,当对所述SoC芯片进行开发时,加载了调试完成后的主应用程序的所述主内核进行运行,第i个从运行模块以及配合于第i个从运行模块的其他所述从运行模块和/或所述主运行模块和/或已加载了调试完成后的从应用程序的从内核同时运行,以使第i个从运行模块完成对将加载到第i个从内核的从应用程序的运行,所述其他从运行模块包括除与已加载了调试完成后的从应用程序的从内核对应的从运行模块之外的配合于第i个从运行模块的从运行模块。
具体地,所述主内核和所述从内核均具有第一虚拟通信接口,所述主运行模块和所述从运行模块均具有第二虚拟通信接口;
所述主内核通过其第一虚拟通信接口和所述主运行模块的第二虚拟通信接口与所述主运行模块进行指令的传送,或者所述主内核通过其第一虚拟通信接口和所述从运行模块的第二虚拟通信接口与所述从运行模块进行指令的传送;
所述从内核通过其第一虚拟通信接口和所述主内核的第一虚拟通信接口与所述主内核进行指令的传送。
根据本发明的另一方面,还提供了一种多核SoC芯片的开发方法,包括步骤:
S101、宿主机的主运行模块对将加载到所述主内核的主应用程序进行运行调试;
S102、将调试完成后的主应用程序加载到所述主内核中;
S103、加载了调试完成后的主应用程序的所述主内核运行;
S104、宿主机的N个从运行模块中的第i个从运行模块对将加载到SoC芯片的N个从内核中的第i个从内核的从应用程序进行运行,所述第i个从运行模块运行过程中产生激励指令传送给加载了调试完成后的主应用程序的所述主内核,加载了调试完成后的主应用程序的所述主内核接收所述激励指令,并且加载了调试完成后的主应用程序的所述主内核将所述激励指令发送到目的从内核,加载了调试完成后的主应用程序的所述主内核和/或所述目的从内核根据所述激励指令生成响应指令,并且加载了调试完成后的主应用程序的所述主内核将所述响应指令回传给目的从运行模块,所述第i个从运行模块通过所述激励指令和所述响应指令的反复交互对所述第i个从内核的从应用程序进行调试,其中1≤i≤N,i和N为正整数;
S105、将调试完成后的第i个从应用程序加载到相应的所述第i个从内核中。
具体地,所述步骤S101进一步包括:所述主运行模块以及配合于所述主运行模块的所述从运行模块同时运行,以使所述主运行模块完成对所述主应用程序的运行调试。
具体地,所述步骤S104进一步包括:加载了调试完成后的主应用程序的所述主内核进行运行,第i个从运行模块以及配合于第i个从运行模块的其他所述从运行模块和/或所述主运行模块同时运行,以使第i个从运行模块完成对将加载到第i个从内核的从应用程序的运行。
具体地,所述步骤S104进一步包括:加载了调试完成后的主应用程序的所述主内核进行运行,第i个从运行模块以及配合于第i个从运行模块的其他所述从运行模块和/或所述主运行模块和/或已加载了调试完成后的从应用程序的从内核同时运行,以使第i个从运行模块完成对将加载到第i个从内核的从应用程序的运行,所述其他从运行模块包括除与已加载了调试完成后的从应用程序的从内核对应的从运行模块之外的配合于第i个从运行模块的从运行模块。
具体地,所述主内核和所述从内核均具有第一虚拟通信接口,所述主运行模块和所述从运行模块均具有第二虚拟通信接口;
所述主内核通过其第一虚拟通信接口和所述主运行模块的第二虚拟通信接口与所述主运行模块进行指令的传送,或者所述主内核通过其第一虚拟通信接口和所述从运行模块的第二虚拟通信接口与所述从运行模块进行指令的传送;
所述从内核通过其第一虚拟通信接口和所述主内核的第一虚拟通信接口与所述主内核进行指令的传送。
本发明的有益效果:本发明通过在宿主机上设置与SoC芯片的主内核相对应的主运行模块、与从内核相对应的从运行模块,待调试的从应用程序在宿主机的从运行模块上运行并通过第二虚拟通信接口与SoC芯片上的主内核和从内核进行指令传送,以此模拟SoC芯片的内核与内核之间的通信,降低SoC芯片的开发难度,且调试过程可操作性强、便于开发,且有效缩短开发周期,降低研发成本。
附图说明
通过结合附图进行的以下描述,本发明的实施例的上述和其它方面、特点和优点将变得更加清楚,附图中:
图1是根据本发明的实施例的多核SoC芯片的开发架构的结构示意图;
图2是根据本发明的实施例的多核SoC芯片的开发方法的流程图。
具体实施方式
以下,将参照附图来详细描述本发明的实施例。然而,可以以许多不同的形式来实施本发明,并且本发明不应该被解释为限制于这里阐述的具体实施例。相反,提供这些实施例是为了解释本发明的原理及其实际应用,从而使本领域的其他技术人员能够理解本发明的各种实施例和适合于特定预期应用的各种修改。在附图中,为了清楚起见,可以夸大元件的形状和尺寸,并且相同的标号将始终被用于表示相同或相似的元件。
将理解的是,尽管在这里可使用术语“第一”、“第二”等来描述各种元件,但是这些元件不应受这些术语的限制。这些术语仅用于将一个元件与另一个元件区分开来。
图1是根据本发明的实施例的多核SoC芯片的开发架构的结构示意图。
参照图1,根据本发明的实施例的多核SoC芯片的开发架构,包括:SoC芯片10及宿主机20。可以理解的是,本发明并不限制于此,根据本发明的实施例的多核SoC芯片的开发架构还可以包括其它必要的结构。
具体地,SoC芯片10包括主内核11和N个从内核12,其中N为正整数。主内核11主要运行SoC芯片10与宿主机20之间的通信功能和SoC芯片10内部的系统资源的驱动。从内核12接收主内核11的调配,由主内核11统一接收宿主机20传过来的激励指令,并通过主内核11的运行和/或调配从内核12的运行生成响应指令对宿主机20进行回应。
宿主机20包括主运行模块21和N个从运行模块22,第i个从运行模块22与第i个从内核12对应且功能相同。主运行模块21与主内核11对应且功能相同,其中,1≤i≤N且i为整数。宿主机20采用Windows或Linux通用开发环境,待调试的程序在宿主机20上运行,基于Windows或Linux成熟的开发环境对待调试的程序进行开发、调试,使调试过程简单、容易操作,方便开发人员跟踪调试过程中的数据传送。
当对SoC芯片10进行开发时,主运行模块21对将加载到主内核11的主应用程序进行运行,对主应用程序进行调试。将调试完成后的主应用程序加载到主内核11中。加载了主应用程序的主内核11运行。第i个从运行模块22对将加载到第i个从内核12的从应用程序进行运行。第i个从运行模块运行过程中产生的激励指令传送给加载了调试完成后的主应用程序的主内核11,加载了调试完成后的主应用程序的主内核11接收激励指令,并且加载了调试完成后的主应用程序的主内核11将激励指令发送到目的从内核。主内核11和/或目的从内核根据激励指令生成响应指令。第i个从运行模块通过激励指令与响应指令的反复交互模拟SoC芯片中内核与内核之间的通信来对第i个从应用程序进行调试。由于第i个从应用程序是在宿主机20上进行调试,调试过程中可以对从应用程序进行修改、设置断点,还可以跟踪数据的传送,极大地方便了开发者进行开发。
优选地,主内核11和从内核12均具有第一虚拟通信接口(图未示)。主运行模块21和从运行模块22均具有第二虚拟通信接口(图未示)。
优选地,主内核11通过其第一虚拟通信接口和主运行模块21的第二虚拟通信接口与主运行模块21进行指令的传送。或者主内核11通过其第一虚拟通信接口和从运行模块22的第二虚拟通信接口与从运行模块22进行指令的传送。
优选地,从内核12通过其第一虚拟通信接口和主内核11的第一虚拟通信接口与所述主内核11进行指令的传送。
作为本发明的多核SoC芯片的开发架构的一种实施方式,第一虚拟通信接口、第二虚拟通信接口采用通用的Socket通信协议接口。第二虚拟通信接口为基于Socket的TCP协议的Server端通信接口。第一虚拟通信接口为与宿主机20对等的基于嵌入式的TCP协议的Client端通信接口。可以理解的是,第一虚拟通信接口与第二虚拟通信接口通过建立通信层和相应的通信协议进行指令间的交互。但本发明并不限制于此,宿主机20与SoC芯片10之间的通讯介质和协议还可以采用串口通信技术、USB通信技术、CAN通信技术等通信技术来实现。
作为本发明的多核SoC芯片的开发架构的一种实施方式,当对SoC芯片10进行开发时,主运行模块21以及配合于主运行模块21的从运行模块22同时运行,以使主运行模块21完成对主应用程序的运行调试。主应用程序需与其它应用程序配合的,调试过程中,主运行模块21与其它从运行模块22同时运行,模拟SoC芯片10的内核与内核之间的通信对主应用程序进行调试。
作为本发明的多核SoC芯片的开发架构的一种实施方式,当对SoC芯片10进行开发时,加载了调试完成后的主应用程序的主内核11进行运行。第i个从运行模块22以及配合于第i个从运行模块22的其它从运行模块22和/或主运行模块21同时进行,以使第i个从运行模块21完成对将加载到第i个从内核12的从应用程序的运行。第i个从运行程序需与其它应用程序配合的,调试过程中,主内核11和配合于第i个从运行模块22的其它从运行模块22和/或主运行模块21同时进行,模拟SoC芯片10的内核与内核之间的通信对从应用程序进行调试。
作为本发明的多核SoC芯片的开发架构的一种实施方式,当对SoC芯片进行开发时,加载了调试完成后的主应用程序的主内核11运行,第i个从运行模块22以及配合于第i个从运行模块22的其他所述从运行模块22和/或主运行模块21和/或已加载了调试完成后的从应用程序的从内核12同时进行,以使第i个从运行模块22完成对将加载到第i个从内核12的从应用程序的运行。其中其他从运行模块22包括除已加载了调试完成后的从应用程序的从内核12对应的从运行模块22之外的配合于第i个从运行模块22的从运行模块22。多核SoC芯片包括多个从内核12,当其中一从内核12的从应用程序调试完成后,该从应用程序便加载到SoC芯片10的相应的从内核12中。接下来其它从应用程序的调试过程中,需要与该已调试完成加载到SoC芯片的从内核进行配合时,可直接通过从应用模块22发送激励指令给主内核11,由主内核11驱动该从内核12运行以与待调试的从应用程序进行配合,完成调试过程。
图2是根据本发明的实施例的多核SoC芯片的开发方法。
参照图2,根据本发明的实施例的多核SoC芯片的开发方法,主要包括如下步骤:
S101、宿主机20的主运行模块对将加载到主内核11的主应用程序进行运行调试;
S102、将调试完成后的主应用程序加载到主内核11中;
S103、加载了调试完成后的主应用程序的主内核11运行;
S104、宿主机20的N个从运行模块22中的第i个从运行模块22对将加载到SoC芯片10的N个从内核12中的第i个从内核12的从应用程序进行运行,第i个从运行模块22运行过程中产生激励指令传送给加载了调试完成后的主应用程序的主内核11,加载了调试完成后的主应用程序的主内核11接收激励指令,并且加载了调试完成后的主应用程序的主内核12将激励指令发送到目的从内核12,加载了调试完成后的主应用程序的主内核11和/或目的从内核12根据激励指令生成响应指令,并且加载了调试完成后的主应用程序的主内核11将响应指令回传给目的从运行模块22。第i个从运行模块22通过对所述激励指令和响应指令的反复交互对第i个从内核12的从应用程序进行调试,其中1≤i≤N,i和N为正整数;
S105、将调试完成后的第i个从应用程序加载到相应的第i个从内核12中。
优选地,主内核11和从内核12均具有第一虚拟通信接口。主运行模块21和从运行模块22均具有第二虚拟通信接口。
优选地,主内核11通过其第一虚拟通信接口和主运行模块21的第二虚拟通信接口与主运行模块21进行指令的传送。或者主内核11通过其第一虚拟通信接口和从运行模块21的第二虚拟通信接口与从运行模块22进行指令的传送。
优选地,从内核12通过其第一虚拟通信接口和主内核11的第一虚拟通信接口与所述主内核11进行指令的传送。
作为本发明的多核SoC芯片的开发方法的一种实施方式,第一虚拟通信接口、第二虚拟通信接口采用通用的Socket通信协议接口。第二虚拟通信接口为基于Socket的TCP协议的Server端通信接口。第一虚拟通信接口为与宿主机20对等的基于嵌入式的TCP协议的Client端通信接口。可以理解的是,第一虚拟通信接口与第二虚拟通信接口通过建立通信层和相应的通信协议进行指令间的交互。但本发明并不限制于此,宿主机20与SoC芯片10之间的通讯介质和协议还可以采用串口通信技术、USB通信技术、CAN通信技术等通信技术来实现。
作为本发明的多核SoC芯片的开发方法的一种实施方式,步骤S101进一步包括:主运行模块21以及配合于主运行模块21的从运行模块22同时运行,以使主运行模块21完成对主应用程序的运行调试。主应用程序需与其它应用程序配合的,调试过程中,主运行模块21与其它从运行模块22同时运行,模拟SoC芯片10的内核与内核之间的通信对主应用程序进行调试。
作为本发明的多核SoC芯片的开发方法的一种实施方式,步骤S104进一步包括:加载了调试完成后的主应用程序的所述主内核11进行运行,第i个从运行模块22以及配合于第i个从运行模块22的其他从运行模块22和/或所述主运行模块21同时运行,以使第i个从运行模块22完成对将加载到第i个从内核12的从应用程序的运行。主应用程序需与其它应用程序配合的,调试过程中,主运行模块21与其它从运行模块22同时运行,模拟SoC芯片的内核与内核之间的通信对主应用程序进行调试。
作为本发明的多核SoC芯片的开发方法的一种实施方式,步骤S104进一步包括:加载了调试完成后的主应用程序的主内核11进行运行,第i个从运行模块22以及配合于第i个从运行模块22的其他从运行模块和/或主运行模块21和/或已加载了调试完成后的从应用程序的从内核12同时运行,以使第i个从运行模块完成对将加载到第i个从内核的从应用程序的运行。其中,其他从运行模块22包括除与已加载了调试完成后的从应用程序的从内核12对应的从运行模块之外的配合于第i个从运行模块22的从运行模块。
本发明通过在宿主机上设置与SoC芯片的主内核相对应的主运行模块、与从内核相对应的从运行模块,待调试的从应用程序在宿主机的从运行模块上运行并通过第二虚拟通信接口与SoC芯片上的主内核和从内核进行指令传送,以此模拟SoC芯片的内核与内核之间的通信,降低SoC芯片的开发难度,且调试过程可操作性强、便于开发,且有效缩短开发周期,降低研发成本。
虽然已经参照特定实施例示出并描述了本发明,但是本领域的技术人员将理解:在不脱离由权利要求及其等同物限定的本发明的精神和范围的情况下,可在此进行形式和细节上的各种变化。

Claims (10)

1.一种多核SoC芯片的开发架构,其特征在于,包括:
SoC芯片,包括主内核和N个从内核,N为正整数;
宿主机,包括主运行模块和N个从运行模块,第i个从运行模块与第i个从内核对应且功能相同,所述主运行模块与所述主内核对应且功能相同,1≤i≤N且i为整数;
所述主内核主要运行SoC芯片与宿主机之间的通信功能和SoC芯片内部的系统资源的驱动,所述从内核接收主内核的调配,由主内核统一接收宿主机传过来的激励指令,并通过主内核的运行和/或调配从内核的运行生成响应指令对宿主机进行回应;
当对所述SoC芯片进行开发时,所述主运行模块对将加载到所述主内核的主应用程序进行运行调试,将调试完成后的主应用程序加载到所述主内核中,加载了调试完成后的主应用程序的所述主内核运行;第i个从运行模块对将加载到第i个从内核的从应用程序进行运行,所述第i个从运行模块运行过程中产生的激励指令传给加载了调试完成后的主应用程序的所述主内核,加载了调试完成后的主应用程序的所述主内核接收所述激励指令,并且加载了调试完成后的主应用程序的所述主内核将所述激励指令发送到目的从内核,加载了调试完成后的主应用程序的所述主内核和/或所述目的从内核根据所述激励指令生成响应指令,并且加载了调试完成后的主应用程序的所述主内核将所述响应指令回传给目的从运行模块,所述第i个从运行模块通过所述激励指令和所述响应指令的反复交互实现对所述第i个从内核的从应用程序的调试,所述第i个从内核的从应用程序调试完成后加载到相应的所述第i个从内核中。
2.根据权利要求1所述的多核SoC芯片的开发架构,其特征在于,当对所述SoC芯片进行开发时,所述主运行模块以及配合于所述主运行模块的从运行模块同时运行,以使所述主运行模块完成对所述主应用程序的运行调试。
3.根据权利要求2所述的多核SoC芯片的开发架构,其特征在于,当对所述SoC芯片进行开发时,加载了调试完成后的主应用程序的所述主内核进行运行,第i个从运行模块以及配合于第i个从运行模块的其他所述从运行模块和/或所述主运行模块同时运行,以使第i个从运行模块完成对将加载到第i个从内核的从应用程序的运行。
4.根据权利要求2所述的多核SoC芯片的开发架构,其特征在于,当对所述SoC芯片进行开发时,加载了调试完成后的主应用程序的所述主内核进行运行,第i个从运行模块以及配合于第i个从运行模块的其他所述从运行模块和/或所述主运行模块和/或已加载了调试完成后的从应用程序的从内核同时运行,以使第i个从运行模块完成对将加载到第i个从内核的从应用程序的运行,所述其他从运行模块包括除与已加载了调试完成后的从应用程序的从内核对应的从运行模块之外的配合于第i个从运行模块的从运行模块。
5.根据权利要求1至4任一项所述的多核SoC芯片的开发架构,其特征在于,所述主内核和所述从内核均具有第一虚拟通信接口,所述主运行模块和所述从运行模块均具有第二虚拟通信接口;
所述主内核通过其第一虚拟通信接口和所述主运行模块的第二虚拟通信接口与所述主运行模块进行指令的传送,或者所述主内核通过其第一虚拟通信接口和所述从运行模块的第二虚拟通信接口与所述从运行模块进行指令的传送;
所述从内核通过其第一虚拟通信接口和所述主内核的第一虚拟通信接口与所述主内核进行指令的传送。
6.一种多核SoC芯片的开发方法,其特征在于,包括步骤:
S101、宿主机的主运行模块对将加载到主内核的主应用程序进行运行调试;
S102、将调试完成后的主应用程序加载到所述主内核中;
S103、加载了调试完成后的主应用程序的所述主内核运行;
S104、宿主机的N个从运行模块中的第i个从运行模块对将加载到SoC芯片的N个从内核中的第i个从内核的从应用程序进行运行,所述第i个从运行模块运行过程中产生激励指令传送给加载了调试完成后的主应用程序的所述主内核,加载了调试完成后的主应用程序的所述主内核接收所述激励指令,并且加载了调试完成后的主应用程序的所述主内核将所述激励指令发送到目的从内核,加载了调试完成后的主应用程序的所述主内核和/或所述目的从内核根据所述激励指令生成响应指令,并且加载了调试完成后的主应用程序的所述主内核将所述响应指令回传给目的从运行模块,所述第i个从运行模块通过所述激励指令和所述响应指令的反复交互对所述第i个从内核的从应用程序进行调试,其中1≤i≤N,i和N为正整数;所述主内核主要运行SoC芯片与宿主机之间的通信功能和SoC芯片内部的系统资源的驱动,所述从内核接收主内核的调配,由主内核统一接收宿主机传过来的激励指令,并通过主内核的运行和/或调配从内核的运行生成响应指令对宿主机进行回应;
S105、将调试完成后的第i个从应用程序加载到相应的所述第i个从内核中。
7.根据权利要求6所述的多核SoC芯片的开发方法,其特征在于,所述步骤S101进一步包括:所述主运行模块以及配合于所述主运行模块的所述从运行模块同时运行,以使所述主运行模块完成对所述主应用程序的运行调试。
8.根据权利要求7所述的多核SoC芯片的开发方法,其特征在于,所述步骤S104进一步包括:加载了调试完成后的主应用程序的所述主内核进行运行,第i个从运行模块以及配合于第i个从运行模块的其他所述从运行模块和/或所述主运行模块同时运行,以使第i个从运行模块完成对将加载到第i个从内核的从应用程序的运行。
9.根据权利要求7所述的多核SoC芯片的开发方法,其特征在于,所述步骤S104进一步包括:加载了调试完成后的主应用程序的所述主内核进行运行,第i个从运行模块以及配合于第i个从运行模块的其他所述从运行模块和/或所述主运行模块和/或已加载了调试完成后的从应用程序的从内核同时运行,以使第i个从运行模块完成对将加载到第i个从内核的从应用程序的运行,所述其他从运行模块包括除与已加载了调试完成后的从应用程序的从内核对应的从运行模块之外的配合于第i个从运行模块的从运行模块。
10.根据权利要求6至9任一项所述的多核SoC芯片的开发方法,其特征在于,所述主内核和所述从内核均具有第一虚拟通信接口,所述主运行模块和所述从运行模块均具有第二虚拟通信接口;
所述主内核通过其第一虚拟通信接口和所述主运行模块的第二虚拟通信接口与所述主运行模块进行指令的传送,或者所述主内核通过其第一虚拟通信接口和所述从运行模块的第二虚拟通信接口与所述从运行模块进行指令的传送;
所述从内核通过其第一虚拟通信接口和所述主内核的第一虚拟通信接口与所述主内核进行指令的传送。
CN201810200819.0A 2018-03-12 2018-03-12 多核SoC芯片的开发架构及多核SoC芯片的开发方法 Active CN108415839B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810200819.0A CN108415839B (zh) 2018-03-12 2018-03-12 多核SoC芯片的开发架构及多核SoC芯片的开发方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810200819.0A CN108415839B (zh) 2018-03-12 2018-03-12 多核SoC芯片的开发架构及多核SoC芯片的开发方法

Publications (2)

Publication Number Publication Date
CN108415839A CN108415839A (zh) 2018-08-17
CN108415839B true CN108415839B (zh) 2021-08-13

Family

ID=63131052

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810200819.0A Active CN108415839B (zh) 2018-03-12 2018-03-12 多核SoC芯片的开发架构及多核SoC芯片的开发方法

Country Status (1)

Country Link
CN (1) CN108415839B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110515849B (zh) * 2019-08-29 2020-06-12 上海燧原智能科技有限公司 一种断点调试方法、装置、系统、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013177295A2 (en) * 2012-05-24 2013-11-28 Sonics, Inc. Scalable cache coherence for a network on a chip

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013177295A2 (en) * 2012-05-24 2013-11-28 Sonics, Inc. Scalable cache coherence for a network on a chip

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
SoC 仿真验证中多核技术的研究与应用;刘瑞;《现代电子技术》;20150315;第1-4页 *
使用先进技术来加速SoC验证;李响;《CNKI》;20131231;第1-5页 *
李响.使用先进技术来加速SoC验证.《CNKI》.2013,第1-5页. *

Also Published As

Publication number Publication date
CN108415839A (zh) 2018-08-17

Similar Documents

Publication Publication Date Title
CN102508753B (zh) Ip核验证系统
CN112580295B (zh) 多核SoC芯片的自动化验证方法、系统及装置
CN110865971B (zh) Soc芯片的验证系统及其方法
EP3287901A1 (en) Simulation including multiple simulators
US20100153924A1 (en) Method and System for Performing Software Verification
CN113961453B (zh) 航空机载软件全数字仿真测试系统
CN104077204B (zh) 可重构的8位rsic单片机仿真器
CN105740139B (zh) 一种基于虚拟环境的嵌入式软件调试方法
CN104750603A (zh) 一种多核dsp软件仿真器及其物理层软件测试方法
CN102508752B (zh) 一种单片机硬件仿真器和仿真方法
CN105446933A (zh) 多核心处理器的调试系统与调试方法
CN108427640A (zh) 一种在用户态下调试驱动程序的方法
US9117018B2 (en) Method of debugging software and corresponding computer program product
CN108415839B (zh) 多核SoC芯片的开发架构及多核SoC芯片的开发方法
CN112764981B (zh) 一种协同测试系统及方法
EP2672388B1 (en) Multi-processor parallel simulation method, system and scheduler
CN114579256A (zh) 一种基于fpga的nvme ssd固件开发仿真平台
CN109144849B (zh) 一种嵌入式软件调测方法
CN106970787A (zh) 一种汽车控制器快速原型实现方法
Engblom et al. Testing Embedded Software using Simulated Hardware
KR102371701B1 (ko) 인공지능 장치의 소프트웨어 디버깅 방법 및 장치
Putrya Method of free C++ code migration between SoC level tests and standalone IP-Core UVM environments
Weinstock et al. AMVP-a high performance virtual platform using parallel SystemC for multicore ARM architectures: work-in-progress
US8914274B1 (en) Method and system for instruction set simulation with concurrent attachment of multiple debuggers
JPS6349851A (ja) シミユレ−シヨンシステム

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
GR01 Patent grant
GR01 Patent grant