实现用户程序断点调试的处理器芯片调试系统技术方案

技术编号:33759480 阅读:20 留言:0更新日期:2022-06-12 14:08
本发明专利技术公开了一种实现用户程序断点调试的处理器芯片调试系统,能够实现处理器芯片的用户程序断点调试功能,在用户程序执行到设置了断点的程序代码位置后,无论是否会发生外部复位,调试系统都可以从仿真芯片导出所有芯片状态信息及寄存器数据,同时用户也可以从断点处继续采用单步方式进行调试,而且,用户程序全速执行没有遇到断点时,仍可正常接收和响应外部复位信号,为用户提供了有效的调试手段,极大地方便了处理器芯片的用户调试工作,提高了代码开发和调试的效率。了代码开发和调试的效率。了代码开发和调试的效率。

【技术实现步骤摘要】
实现用户程序断点调试的处理器芯片调试系统


[0001]本专利技术涉及处理器调试技术,特别涉及一种实现用户程序断点调试的处理器芯片调试系统。

技术介绍

[0002]处理器芯片内有用户开发的用户程序,在用户程序的编写和调试中,所使用的工具一般是调试系统。调试系统内使用包含产品处理器芯片各项功能的仿真芯片,用于模拟产品处理器芯片的工作行为,仿真芯片与调试系统其他部件(存放用户程序的程序存储器、存放数据的数据存储器,以及用户电脑上的集成开发环境连接等)配合实现用户程序的仿真运行和各项调试功能。
[0003]由于仿真芯片是最大限度与产品芯片保持功能、性能一致的,所以也保留了产品芯片中的外部复位功能,在仿真芯片上全速执行代码,测试和调试代码功能和性能时,外部复位功能也必须是具备,并且希望与产品芯片一致的。但是,用户程序调试过程中经常会遇到代码执行过程中出现异常或者与外部设备配合异常,引发外部复位信号输入的情况,此时,非常希望能有调试手段准确地寻找到执行哪一段或哪一句代码时,触发了非预期的外部复位,以便进一步分析和调试代码。
[0004]使用现有的处理器芯片调试系统调试上述问题时,即使在怀疑存在问题的代码段设置了断点,代码全速执行遇到断点后停止运行,也会因为已经触发了外部复位,仿真芯片处于复位状态了,调试系统无法从仿真芯片导出所有芯片状态信息、寄存器数据等,同时,由于仿真芯片也处于复位状态,用户也无法继续从断点处继续采用单步方式进行调试,导致代码问题调试非常麻烦、调试效率低下。

技术实现思路

[0005]本专利技术要解决的技术问题是提供一种实现用户程序断点调试的处理器芯片调试系统,在用户程序执行到设置了断点的程序代码位置后,无论是否会发生外部复位,调试系统都可以从仿真芯片导出所有芯片状态信息及寄存器数据,同时用户也可以从断点处继续采用单步方式进行调试,而且,用户程序全速执行没有遇到断点时,仍可正常接收和响应外部复位信号,为用户提供了有效的调试手段,极大地方便了处理器芯片的用户调试工作,提高了代码开发和调试的效率。
[0006]为解决上述技术问题,本专利技术提供的一种实现用户程序断点调试的处理器芯片调试系统,其包括仿真芯片2、调试模块3和断点地址寄存器4;
[0007]所述调试模块3,通过标准数据/地址总线8与仿真芯片2地址引脚连接,通过输出外部复位信号线7与仿真芯片2复位引脚连接,通过输入外部复位信号线6与所述调试系统1外的外部设备5连接;
[0008]所述断点地址寄存器4,用于存储用户程序代码断点地址;
[0009]所述调试模块3通过所述标准数据/地址总线8获取用户程序执行的实时程序地
址,并与所述调试模块3中断点地址寄存器4内存放的用户程序代码断点地址进行比较;
[0010]如果用户程序执行的实时程序地址与断点地址寄存器4存放的用户程序代码断点地址不一致,所述调试模块3将所述输入外部复位信号线6上的外部复位信号直接通过所述输出外部复位信号线7输出到仿真芯片2复位引脚;
[0011]如果用户程序执行的实时程序地址与断点地址寄存器4存放的用户程序代码断点地址相同,所述调试模块3直接通过所述输出外部复位信号线7输出无效状态外部复位信号到仿真芯片2复位引脚。
[0012]较佳的,所述断点地址寄存器4集成在所述调试模块3中。
[0013]较佳的,所述仿真芯片2使用FPGA实现。
[0014]较佳的,所述断点地址寄存器4使用FPGA实现。
[0015]较佳的,所述调试模块3使用FPGA实现。
[0016]本专利技术的实现用户程序断点调试的处理器芯片调试系统,能够实现处理器芯片的用户程序断点调试功能,在用户程序执行到设置了断点的程序代码位置后,无论是否会发生外部复位,调试系统都可以从仿真芯片2导出所有芯片状态信息及寄存器数据,同时用户也可以从断点处继续采用单步方式进行调试,而且,用户程序全速执行没有遇到断点时,仍可正常接收和响应外部复位信号。本专利技术的中断点实现处理器芯片调试系统,为用户提供了有效的调试手段,极大地方便了处理器芯片的用户调试工作,提高了代码开发和调试的效率。
附图说明
[0017]为了更清楚地说明本专利技术的技术方案,下面对本专利技术所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0018]图1是本专利技术的实现用户程序断点调试的处理器芯片调试系统一实施例结构示意图。
[0019]附图标记说明
[0020]1调试系统;2仿真芯片;3调试模块;4断点地址寄存器;5外部设备;6输入外部复位信号线;7输出外部复位信号线;8标准数据/地址总线。
具体实施方式
[0021]下面将结合附图,对本专利技术中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本专利技术的一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其它实施例,都属于本专利技术保护的范围。
[0022]实施例一
[0023]如图1所示,实现用户程序断点调试的处理器芯片调试系统包括仿真芯片2、调试模块3和断点地址寄存器4;
[0024]所述调试模块3,通过标准数据/地址总线8与仿真芯片2地址引脚连接,通过输出外部复位信号线7与仿真芯片2复位引脚连接,通过输入外部复位信号线6与所述调试系统1
外的外部设备5连接;
[0025]所述断点地址寄存器4,用于存储用户程序代码断点地址;
[0026]所述调试模块3通过所述标准数据/地址总线8获取用户程序执行的实时程序地址,并与所述调试模块3中断点地址寄存器4内存放的用户程序代码断点地址进行比较;
[0027]如果用户程序执行的实时程序地址与断点地址寄存器4存放的用户程序代码断点地址不一致,所述调试模块3将所述输入外部复位信号线6上的外部复位信号直接通过所述输出外部复位信号线7输出到仿真芯片2复位引脚;
[0028]如果用户程序执行的实时程序地址与断点地址寄存器4存放的用户程序代码断点地址相同,所述调试模块3直接通过所述输出外部复位信号线7输出无效状态外部复位信号到仿真芯片2复位引脚。
[0029]较佳的,所述断点地址寄存器4集成在所述调试模块3中。
[0030]实施例一的实现用户程序断点调试的处理器芯片调试系统,用户设置用户程序断点后,将用户程序代码断点地址存放在所述断点地址寄存器4中。仿真芯片2在运行用户程序过程中,如果用户程序执行的实时程序地址与断点地址寄存器4内存放的用户程序代码断点地址不一致,说明用户程序处于全速执行状态,调试模块3接收从输入外部复位信号线6上输入的外部复位信号并直接通过输出外部复位信号线7向仿真芯片2输出,这样,保证了用户程序全速执行没有遇到断点时,仍可正常接收和响应来自外部设备5的外部复位信号,在功能和性能上保持了仿真芯片2与本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种实现用户程序断点调试的处理器芯片调试系统,其特征在于,其包括仿真芯片(2)、调试模块(3)和断点地址寄存器(4);所述调试模块(3),通过标准数据/地址总线(8)与仿真芯片(2)地址引脚连接,通过输出外部复位信号线(7)与仿真芯片(2)复位引脚连接,通过输入外部复位信号线(6)与调试系统外的外部设备(5)连接;所述断点地址寄存器(4),用于存储用户程序代码断点地址;所述调试模块(3)通过所述标准数据/地址总线(8)获取用户程序执行的实时程序地址,并与所述调试模块(3)中断点地址寄存器(4)内存放的用户程序代码断点地址进行比较;如果用户程序执行的实时程序地址与断点地址寄存器(4)存放的用户程序代码断点地址不一致,所述调试模块(3)将所述输入外部复位信号线(6)上的外部复位信号直接通过所述输出外部复位信号...

【专利技术属性】
技术研发人员:许国泰周伟程德怿陈兵余景原金豪王子玮
申请(专利权)人:上海市信息网络有限公司
类型:发明
国别省市:

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

1