[发明专利]一种多核芯片调试的方法、系统及装置在审
申请号: | 201711029835.X | 申请日: | 2017-10-27 |
公开(公告)号: | CN109726095A | 公开(公告)日: | 2019-05-07 |
发明(设计)人: | 章旭君 | 申请(专利权)人: | 深圳市中兴微电子技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F11/22 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 林桐苒;龙洪 |
地址: | 518055 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 多核芯片 调试 系统及装置 寄存器 多核 层次关系 调试过程 关联信息 函数调用 实时显示 依次读取 运行态 挂起 核对 检查 直观 观察 开发 | ||
一种多核芯片调试的方法,包括:在调试过程中,依次检查所述多核芯片的各个核的状态;当检查到任一核的状态由运行态转为挂起态时,暂停其余的核并依次读取各个核的寄存器的值;将各个核对应的寄存器的值显示在调试界面上。一种多核芯片调试的系统及装置。本方案能够同时实时显示多核的状态信息,以及每个核上的函数调用层次关系,方便开发人员的快速直观的观察多核之间关联信息。
技术领域
本公开实施例涉及但不限于多核对称机(Symmetrical Multi-Processing,简称SMP)软件调试领域,尤其涉及一种多核芯片调试的方法、系统及装置。
背景技术
JTAG(Joint Test Action Group,联合测试行为组织)主要用于芯片内部测试和调试。在嵌入式程序开发过程中,使用基于JTAG调试工具是常用的调试手段。不同于一般应用层程序的调试,JTAG是基于硬件实现的调试方法。通过对CPU的硬件调试功能模块的读写来实现对CPU的调试控制,因此对调试目标上运行的系统没有特定要求,不要求调试目标上运行调试监控功能程序,不会占用被调试目标系统的资源,非常适合底层程序的调试。
随着多核技术SMP的不断发展,因其具备高性能低功耗的特点,多核处理器已逐渐取代传统的单核处理器,成为市场的主流。多核架构不仅需要新的程序设计方法,还需要新的软件调试方法,才能保证应用软件在多核环境中的调试工作顺利进行。目前基于JTAG的多核CPU调试工具比较少,已有的工具也只能同时显示其中一个核的信息,不能同时显示多核信息,当需要查看另外其他核的信息时,必须选择切换。在许多情况下,比如在多核之间存在共享资源访问时,开发人员在调试过程中需要同时关注每个核上程序运行情况以及各自的函数调用关系。但目前现有基于JTAG的多核CPU调试技术各个核信息不同时显示,也不能实时呈现各个核的函数调层次和运行路径。
发明内容
本公开实施例提供一种多核芯片调试的方法、系统及装置,能同时显现各个核的信息。
一种多核芯片调试的方法,包括:
在调试过程中,依次检查所述多核芯片的各个核的状态;
当检查到任一核的状态由运行态转为挂起态时,暂停其余的核并依次读取各个核的寄存器的值;
将各个核对应的寄存器的值显示在调试界面上。
可选地,所述依次检查所述多核芯片的各个核的状态,包括:
设定一个主核,以所述主核作为单步调试操作的对象发送执行、单步或暂停调试指令;
周期性循环依次检查所述多核芯片的各个核的状态。
可选地,所述依次检查所述多核芯片的各个核的状态,是通过以下方式实现的:
通过读取各个核的调试状态和控制寄存器的指定位。
可选地,暂停其余的核并依次读取各个核的寄存器的值,包括:
发送CPU停止信号暂停其余的核;
依次查询获取CPU上的寄存器的值,并按核分类列表显示在调试界面上。
可选地,所述将各个核对应的寄存器的值显示在调试界面上后,还包括:
根据所述寄存器的值查询各个核上栈内容,查询每个核上的函数调用关系,将每个核上的函数调用关系显示在调试界面上。
可选地,所述在调试过程中,还包括:
通过所述调试界面接受调试操作指令;
将所述调试操作指令传送给所述多核芯片,并接收所述多核芯片返回的调试结果信息。
一种多核芯片调试的系统,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市中兴微电子技术有限公司,未经深圳市中兴微电子技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711029835.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:压力测试的方法和装置
- 下一篇:一种测试数据生成方法及装置