[发明专利]一种适用于专用处理器的多调试模式电路及其监测仿真方法有效
申请号: | 201910244565.7 | 申请日: | 2019-03-28 |
公开(公告)号: | CN110032085B | 公开(公告)日: | 2020-10-27 |
发明(设计)人: | 程军;于鹤杰;徐祗聪;梅魁志;李倩;李亚飞;常蕃;张向楠 | 申请(专利权)人: | 西安交通大学 |
主分类号: | G05B17/02 | 分类号: | G05B17/02;G06F15/78 |
代理公司: | 西安通大专利代理有限责任公司 61200 | 代理人: | 徐文权 |
地址: | 710049 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 适用于 专用 处理器 调试 模式 电路 及其 监测 仿真 方法 | ||
1.一种适用于专用处理器的多调试模式电路,其特征在于,所述多调试模式电路由嵌套功能状态机实现,嵌套功能状态机包括用于命令包解析的主状态机电路以及程序执行子状态机电路和数据反馈子状态机电路;所述程序执行子状态机电路将单步执行、断点执行、完全执行和寄存器值监测四种调试功能集成在一起,用于控制处理器执行程序,包括用于控制多调试模式程序执行的地址判断电路、用于记录存储器起止地址的地址监测电路以及用于检测寄存器值的状态机指令产生电路;所述数据反馈子状态机电路用于选择返回方式,并反馈程序执行结果及监测数据;
多调试模式电路工作时,下位机连接处理器,上位机为PC端集成开发环境,上位机通过USB通信电路发送命令包至主状态机电路,主状态机电路完成解析后,启动程序执行子状态机电路控制处理器执行程序,最后通过数据反馈子状态机电路将程序执行结果及监测数据反馈至上位机;
所述命令包通过数据再编码实现,每个命令包由四个字节组成:第一个字节为控制字节即包头,主要控制功能实现,包括程序调试模式和数据反馈方式;中间两个字节为数据字节,为三种不同调试模式下指定的指令运行结束地址;最后一个字节为校验字节即包尾,进行奇偶校验和状态指示。
2.一种适用于专用处理器的多调试模式监测仿真方法,采用权利要求1所述的一种适用于专用处理器的多调试模式电路,其特征在于,包括以下步骤:
步骤1、上位机发送单步执行、断点执行、完全执行的调试模式命令包,主状态机电路接收命令包后进行解析,跳转进入程序执行子状态机电路;所述命令包通过数据再编码实现,每个命令包由四个字节组成:第一个字节为控制字节即包头,主要控制功能实现,包括程序调试模式和数据反馈方式;中间两个字节为数据字节,为三种不同调试模式下指定的指令运行结束地址;最后一个字节为校验字节即包尾,进行奇偶校验和状态指示;
步骤2、程序执行子状态机电路在识别命令包中关键地址后,将不区分调试模式,利用地址判断电路实时检测存储器片选信号和地址总线信号,进行指令运行地址和终止地址的比较,进而控制处理器运行调试指令程序;同时地址监测电路实时比较并记录下存储器的起止地址,确定处理器运行过程中数据变化的地址段;调试程序指令执行完成后,状态机指令产生电路启动,生成附加的通用汇编指令机器码,将寄存器值存储在指定地址中,所述通用汇编指令机器码包括数据传送指令机器码和交换指令机器码;
步骤3、数据反馈子状态机电路识别命令包中控制字节,选择全数据返回或分段数据返回的方式,根据地址监测电路记录下的存储器起止地址,将寄存器值和程序执行结果反馈回上位机。
3.根据权利要求2所述的一种适用于专用处理器的多调试模式监测仿真方法,其特征在于,所述状态机指令产生电路基于处理器常用的汇编指令实现,用来监测处理器主辅寄存器的值,具体步骤为:
1)在地址判断电路检测到调试指令结束地址后,FLASH使能无效,开始监测寄存器的值;
2)状态机指令产生电路产生数据传送指令机器码,将主寄存器R0值存储在指定地址;
3)产生交换指令机器码,交换主寄存器R0和辅助寄存器R1的值;
4)重复产生数据传送指令机器码,将辅助寄存器R1值存储在指定地址;
5)最后产生交换指令机器码,将主寄存器R0值和辅助寄存器R1值恢复。
4.根据权利要求2所述的一种适用于专用处理器的多调试模式监测仿真方法,其特征在于,所述的存储器起止地址包括四个地址:当前断点和上一断点的FLASH读指令地址BP_addr_now以及BP_addr_pre、程序运行过程中的SRAM写数据地址的最大值SRAM_addr_max和最小值SRAM_addr_min。
5.根据权利要求4所述的一种适用于专用处理器的多调试模式监测仿真方法,其特征在于,所述的全数据返回或分段数据返回的方式具体为:
全数据返回:每次固定返回全部数据,由SRAM数据容量决定,反馈顺序为主寄存器R0值和辅寄存器R1值、SRAM全地址的数据、初始地址0、全返回结束标志数据包;
分段数据返回:每次只返回发生变化地址段范围内的数据,反馈顺序为主寄存器R0值和辅寄存器R1值、SRAM变化地址的数据、SRAM_addr_min、分段返回结束标志数据包。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安交通大学,未经西安交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910244565.7/1.html,转载请声明来源钻瓜专利网。