[发明专利]一种基于ARM SWD调试协议的单线调试系统及方法在审
申请号: | 202011443379.5 | 申请日: | 2020-12-08 |
公开(公告)号: | CN114625580A | 公开(公告)日: | 2022-06-14 |
发明(设计)人: | 杨围 | 申请(专利权)人: | 华大半导体有限公司 |
主分类号: | G06F11/22 | 分类号: | G06F11/22 |
代理公司: | 上海光华专利事务所(普通合伙) 31219 | 代理人: | 徐秋平 |
地址: | 201203 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 arm swd 调试 协议 单线 系统 方法 | ||
1.一种基于ARM SWD调试协议的单线调试系统,其特征在于:包括调试器和调试目标;所述调试器和所述调试目标的发送帧均依次包括1位开始位、2位控制位、N位数据位和1位停止位;其中N为自然数;
在所述调试器进行写操作时,所述调试器将2位表示数据包请求的控制位和SWD写数据的N位数据包请求编为第一帧发送至所述调试目标;所述调试目标将2位表示为ACK的控制位、a位ACK和b位0编为第二帧返回至所述调试器,其中N=a+b,a和b为自然数;所述调试器判断ACK后,将2位表示为写数据的控制位、SWD写数据的N位数据编为一帧以将SWD写数据的4N位数据依次编为四帧,再将2位表示为写数据的控制位、SWD写数据的c位校验位和d位0编为一帧,共五帧发送至所述调试目标,其中N=c+d,c和d为自然数。
2.根据权利要求1所述的基于ARM SWD调试协议的单线调试系统,其特征在于:在所述调试器进行读操作时,所述调试器将2位表示为数据包请求的控制位和SWD读数据的N位数据包请求编为第一帧发送至所述调试目标;所述调试目标接收读请求后,将2位表示为ACK的控制位、a位ACK和b位0编为第二帧返回至所述调试器;所述调试器判断ACK后,继续接收所述调试目标的数据;所述调试目标将2位表示为读数据的控制位、SWD读数据的N位数据编为一帧以将SWD读数据的4N位数据依次编为四帧;将2位表示为读数据的控制位、SWD写数据的c位校验位和d位0编为一帧,共五帧发送至所述调试器。
3.根据权利要求1所述的基于ARM SWD调试协议的单线调试系统,其特征在于:所述调试器的发送帧中,控制位为00表示N位数据位为写数据,控制位为11表示N位数据位为数据包请求;所述调试目标的发送帧中,控制位为01表示N位数据位的前三位为ACK,控制位为10表示N位数据位为读数据。
4.根据权利要求1所述的基于ARM SWD调试协议的单线调试系统,其特征在于:所述调试器还用于在每次写操作和读操作之前,发送同步帧进行同步。
5.根据权利要求1所述的基于ARM SWD调试协议的单线调试系统,其特征在于:所述调试目标包括调试内核和调试控制模块;所述调试内核基于ARM SWD协议进行数据读写;
当所述调试控制模块接收到的数据帧的控制位表示JTAG到SWD切换时,所述调试控制模块发送JTAG切换SWD的时序至所述调试内核;
当所述调试控制模块接收到的数据帧的控制位表示复位时,所述调试控制模块发送复位时序至所述调试内核;
当所述调试控制模块接收到的数据帧的控制位表示数据包请求时,所述调试控制模块提取所述数据帧的N个数据位并发送至所述调试内核,再将所述调试内核的ACK打包成帧发送至所述调试器;
当所述调试控制模块接收完毕所述数据包请求时,根据所述数据包请求判断进行写操作或读操作;当判断进行写操作时,接收后续的五帧数据,并转换为SWD写数据的4N位数据和c位校验位发送至所述调试内核;当判断进行读操作时,将所述调试内核发送的SWD读数据的4N位数据和c位校验位转换为五帧数据发送至所述调试器。
6.根据权利要求5所述的基于ARM SWD调试协议的单线调试系统,其特征在于:所述调试目标为MCU,所述调试控制模块集成在所述MCU内。
7.根据权利要求1所述的基于ARM SWD调试协议的单线调试系统,其特征在于:还包括上位机,与所述调试器相连,用于发送调试命令至所述调试器;所述调试器根据所述调试命令与所述调试目标进行数据读写。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华大半导体有限公司,未经华大半导体有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011443379.5/1.html,转载请声明来源钻瓜专利网。