一种利用片上协计算核心对主计算核心进行调试的方法技术

技术编号:26530806 阅读:15 留言:0更新日期:2020-12-01 14:10
本发明专利技术提出一种利用片上协计算核心对主计算核心进行调试的方法,协计算核心通过单独用于调试的通信接口与调试主机通信,解析调试主机发来的调试命令,并转化为芯片内部总线上的操作序列,控制主计算机核心执行调试动作或访问其他片上资源完成调试命令;调试任务执行完毕后,协计算核心向调试主机汇报该调试命令的执行结果;协计算核心还可以监测主计算核心的状态,当主计算核心的状态发生变化时,主动向调试主机报告该事件。本发明专利技术提供了一种完全不同于现有调试技术的调试方法,其调试通信速率远远高于传统基于JTAG总线的调试通信速率,并且上位机直接通过芯片本身的通信接口进行芯片调试,不再需要额外硬件设备。

【技术实现步骤摘要】
一种利用片上协计算核心对主计算核心进行调试的方法
本专利技术涉及嵌入式系统调试
,尤其是一种利用片上协计算核心对主计算核心进行调试的方法。
技术介绍
在线仿真器通过JTAG总线对嵌入式系统进行调试,是现代调试系统的常见手段。在线仿真器一端通过USB或以太网线连接调试主机(通常是普通PC机),另一端通过JTAG总线连接嵌入式板卡。JTAG是一种国际标准测试协议,主要用于芯片内部测试。目前,市面上大多数处理器均支持JTAG协议。在线仿真器是一个小型嵌入式系统,一般包括小型CPU芯片和FPGA芯片。CPU用于通过USB或以太网线与调试主机通信,CPU上运行的软件解析调试主机通过以太网或USB传递的调试通信协议,转换为针对芯片的底层调试命令。FPGA用于将底层调试命令转换为JTAG总线上的操作。基于在线仿真器的调试系统,存在以下弊端:1、所有调试通信包全部需要转换为JTAG协议发送至芯片,而JTAG协议是串行协议,数据通过TDI、TDO进行串行传输,若要进行大量数据传输的调试操作,例如内存导入/导出,则效率将非常低下;2、在线仿真器为嵌入式系统外部硬件设备,需要额外的成本支出。通常芯片内部至少包括主计算核心和协计算核心这两类计算核心。主计算核心主要负责实现芯片的主要功能,例如,对于DSP芯片来说,主计算核心为DSP核,负责进行数字信号处理;对于CPU芯片来说,主计算核心是为用户提供主要功能的主CPU核。协计算核心完成一些辅助功能,例如对芯片的频率或电压进行动态控制、对主计算核心的数值计算任务进行调度、对板卡上的辅助外设进行控制等等。一般主计算核心可以有多个,构成多核处理器。协计算核心一般只需要一个即可。
技术实现思路
针对上述现有调试技术中存在的问题,本专利技术提出一种利用片上协计算核心对主计算核心进行调试的方法。一种利用片上协计算核心对主计算核心进行调试的方法,协计算核心通过单独用于调试的通信接口与调试主机通信,解析调试主机发来的调试命令,并转化为芯片内部总线上的操作序列,控制主计算机核心执行调试动作或访问其他片上资源完成调试命令;调试命令执行完毕后,协计算核心向调试主机汇报该调试命令的执行结果。进一步的,协计算核心实时监测各个主计算核心的状态,当主计算核心状态发生变化时,协计算核心通过所述单独用于调试的通信接口向调试主机汇报。进一步的,每个主计算核心配置受控于协计算核心的调试控制逻辑单元,所述调试控制逻辑单元至少包括内核运行控制寄存器和内核状态寄存器;所述内核运行控制寄存器用于控制主计算核心的运行和停止,所述内核状态寄存器用于读取主计算核心的状态。进一步的,所述调试控制逻辑单元还包括内核单步数量寄存器、内核断点寄存器、内核观察点寄存器、内核复位控制寄存器中的一种或多种;所述内核单步数量寄存器用于控制内核执行指令行的数量,所述内核断点寄存器用于设置硬件断点,所述内核观察点寄存器用于设置硬件观察点,所述内核复位控制寄存器用于复位主计算核心。本专利技术提供了一种完全不同于现有调试技术的调试思路,其调试通信速率远远高于传统基于JTAG总线的调试通信速率,并且上位机直接通过芯片本身的通信接口进行芯片调试,不再需要额外硬件设备。附图说明图1为协计算核心对内对外通信示意图。具体实施方式下面结合附图和具体实施方式对本专利技术作进一步详细的说明。本专利技术的实施例是为了示例和描述起见而给出的,而并不是无遗漏的或者将本专利技术限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显而易见的。选择和描述实施例是为了更好说明本专利技术的原理和实际应用,并且使本领域的普通技术人员能够理解本专利技术从而设计适于特定用途的带有各种修改的各种实施例。实施例1作为完成一些辅助功能的协计算核心,本身具备控制片上外设资源,控制以太网接口、UART接口或其他通信接口与上位机通信的能力。对内,协计算核心通过内部总线连接各个外设和各个主计算核心;对外,控制与上位机通信的外设,例如以太网接口、UART接口等,如图1所示。本专利技术正是基于协计算核心自身特点,设计了一种利用片上协计算核心对主计算核心进行调试的方法。协计算核心通过单独用于调试的通信接口与调试主机通信,解析调试主机发来的调试命令,并转化为芯片内部总线上的操作序列,控制主计算机核心执行调试动作或访问其他片上资源完成调试命令;调试命令执行完毕后,协计算核心向调试主机汇报该调试命令的执行结果。单独用于调试的通信接口,顾名思义,该通信接口仅用于与调试命令的传输,避免通信混乱的发生。具体操作可以在片上保留一个通信接口用于调试,该通信接口对用户隐藏。这里的通信接口可以是以太网接口、UART接口,以及其他任意可以与调试主机实现通信的介质。若调试通信接口为1Gbps以太网,那么其通信速率可以达到几百Mbps;芯片内部总线的通信速度更高,可以达到几十Gbps。本专利技术提供了一种完全不同于现有调试技术的调试思路,其调试通信速率远远高于传统基于JTAG总线的调试通信速率,并且上位机直接通过芯片本身的通信接口进行芯片调试,不再需要额外硬件设备(例如仿真器)。协计算核心还可以实时监测各个主计算核心的状态,当主计算核心状态发生变化时,协计算核心通过所述单独用于调试的通信接口向调试主机汇报。通常主计算核心的内核通用寄存器不挂在内部总线上,通过内部总线访问不到内核的这些资源。为此,每个主计算核心配置调试控制逻辑单元,所述调试控制逻辑单元至少包括内核运行控制寄存器和内核状态寄存器;所述内核运行控制寄存器用于控制主计算核心的运行和停止,所述内核状态寄存器用于读取主计算核心的状态。调试控制逻辑单元包括的这些寄存器应可以通过芯片内部总线被协计算核心访问。调试逻辑单元存在的意义在于,通过芯片内部总线接收协计算核心访问主计算核心内部资源的请求,通过硬件连线访问到这些内核资源,再通过芯片内部总线返回至协计算核心,从而实现协计算核心对主计算核心内部资源的控制和状态读取。根据不同调试需求,所述调试控制逻辑单元还可以包括内核单步数量寄存器、内核断点寄存器、内核观察点寄存器、内核复位控制寄存器;所述内核单步数量寄存器用于控制内核执行指令行的数量,所述内核断点寄存器用于设置硬件断点,所述内核观察点寄存器用于设置硬件观察点,所述内核复位控制寄存器用于复位主计算核心。显然,所描述的实施例仅仅是本专利技术的一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域及相关领域的普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本专利技术保护的范围。本文档来自技高网
...

【技术保护点】
1.一种利用片上协计算核心对主计算核心进行调试的方法,其特征在于,协计算核心通过单独用于调试的通信接口与调试主机通信,解析调试主机发来的调试命令,并转化为芯片内部总线上的操作序列,控制主计算机核心执行调试动作或访问其他片上资源完成调试命令;调试命令执行完毕后,协计算核心向调试主机汇报该调试命令的执行结果。/n

【技术特征摘要】
1.一种利用片上协计算核心对主计算核心进行调试的方法,其特征在于,协计算核心通过单独用于调试的通信接口与调试主机通信,解析调试主机发来的调试命令,并转化为芯片内部总线上的操作序列,控制主计算机核心执行调试动作或访问其他片上资源完成调试命令;调试命令执行完毕后,协计算核心向调试主机汇报该调试命令的执行结果。


2.根据权利要求1所述的利用片上协计算核心对主计算核心进行调试的方法,其特征在于,协计算核心实时监测各个主计算核心的状态,当主计算核心状态发生变化时,协计算核心通过所述单独用于调试的通信接口向调试主机汇报。


3.根据权利要求1或2所述的利用片上协计算核心对主计算核心进行调试...

【专利技术属性】
技术研发人员:林广栋周乐陈金忠耿锐赵纪堂刘谷洪一
申请(专利权)人:安徽芯纪元科技有限公司
类型:发明
国别省市:安徽;34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1