一种基于外设接口的芯片硬件调试方法和装置制造方法及图纸

技术编号:33291426 阅读:13 留言:0更新日期:2022-05-01 00:11
本发明专利技术提供了一种基于外设接口的芯片硬件调试方法和装置,该方法包括:通过芯片的外设接口接收上位机的调试命令,并对调试命令进行解析,将调试命令传送到系统总线;根据调试命令发起对芯片目标子系统的寄存器的访问,并通过系统总线接收目标子系统的响应数据;通过外设接口将目标子系统的响应数据返回到上位机中。本发明专利技术基于常用的外设接口,在不需要芯片内部的CPU的参与的前提下也能够实现上位机对芯片的远程调试,提高了调试效率,并且实现了调试命令帧的编码可扩展性和芯片模块的可控制性。控制性。控制性。

【技术实现步骤摘要】
一种基于外设接口的芯片硬件调试方法和装置


[0001]本专利技术属于芯片调试领域,特别涉及一种基于外设接口的芯片硬件调试方法和装置。

技术介绍

[0002]随着芯片SoC设计日益复杂,对芯片的硬件调试(Debug)越来越重要。当芯片出现运行异常时,芯片研发人员需要对异常的芯片进行定位分析,并进行后续优化调整。为了在不增加芯片接口的基础上进行芯片的调试工作,通过通用的外设接口来配合芯片调试是目前SOC芯片常用的调试手段。例如,常见的调试系统如图1所示。上位机与芯片连接。如果调试过程需要对片内寄存器进行访问,上位机首先通过外设接口发起对芯片访问的请求命令,由外设接口产生中断通知CPU接收数据。CPU收到中断后,通过总线系统发起对外设寄存器的读操作获取数据,并按照固化的程序处理数据,解析出外设接口需要访问的芯片内部地址和数据。然后CPU需要发起对片上系统总线的请求;系统总线经过译码,将CPU的请求转换为目标地址,并发起对目标地址的子系统的访问。被访问的子系统返回对系统总线的响应,并通过系统总线返回到CPU。CPU再根据接收到的响应信息,通过访问外设接口的寄存器将信息按照预设的格式通过外设接口返回给上位机。
[0003]从以上描述可以看出,现有技术通过外设接口的调试方案严重依赖芯片CPU的协作,CPU在调试过程中占有重要的角色,一旦CPU出现挂死,则上位机接收不到芯片响应,无法进行调试。再者,现有的调试过程需要多次读取外设的寄存器来接收数据,并且需要多次写入外设的寄存器才能将芯片返回给上位机的数据发送出去,外设的寄存器读写过程必然会使得调试效率较低。

技术实现思路

[0004]本专利技术的目的在于提出一种实现上位机对芯片的直接进行远程调试的方案,而不需要芯片内部的CPU的参与。
[0005]根据本专利技术的第一方面,本专利技术提供了一种基于外设接口的芯片硬件调试方法,包括:
[0006]S101、通过所述芯片的外设接口接收上位机的调试命令,并对所接收的调试命令进行解析,将解析后的调试命令传送到所述芯片的系统总线;
[0007]S102、根据所述调试命令发起对所述芯片的目标子系统的寄存器的访问,并通过所述系统总线接收所述目标子系统的响应数据;
[0008]S103、通过所述外设接口将所述目标子系统的响应数据返回到所述上位机中。
[0009]优选地,所述将解析后的调试命令传送到所述芯片的系统总线,进一步包括:
[0010]对解析得到的调试命令进行处理,根据所述调试命令的类型,确定对所述系统总线的访问请求。
[0011]优选地,所述根据所述调试命令发起对所述芯片的目标子系统的寄存器的访问,
进一步包括:
[0012]根据所述调试命令的目标地址信息,在所述芯片的多个子系统中确定要访问的目标子系统,并发起对所述目标子系统的寄存器的访问请求。
[0013]优选地,所述通过外设接口将所述目标子系统的响应数据返回到所述上位机中,进一步包括:
[0014]根据所述目标子系统的响应数据,生成待发送的命令、地址和数据信息;根据预定义响应帧格式,将所述响应数据发送到所述上位机。
[0015]优选地,在对所接收的调试命令进行解析之前,该方法还包括:
[0016]对所述调试命令进行校验,并所述调试命令是否出现错误。
[0017]优选地,所述上位机的调试命令包括同步探测帧,用于实现所述上位机和所述芯片间的同步,其中,仅当接收到正确的同步探测帧后,继续接收和处理其他调试命令;否则继续等待所述同步探测帧。
[0018]优选地,所述同步探测帧为21个连续的全0字节数据。
[0019]优选地,所述上位机的调试命令包括读寄存器命令帧,所述通过系统总线接收所述目标子系统的响应数据,进一步包括:
[0020]如果所述读寄存器命令帧校验正确,则接收所述目标子系统的第一格式的读命令响应数据,如果所述读寄存器命令帧校验错误,则接收所述目标子系统的第二格式的读命令响应数据。
[0021]优选地,所述上位机的调试命令包括控制信号帧,用于设置芯片内预设模块的控制信号翻转。
[0022]根据本专利技术的第二方面,提供了一种基于外设接口的芯片硬件调试装置,包括:
[0023]命令接收单元,用于通过芯片的外设接口接收上位机的调试命令,对所接收的调试命令进行解析,并通过命令的校验来标记所接收的调试命令是否出现错误;
[0024]命令处理单元,用于对所述命令接收单元解析得到的调试命令进行处理,将解析后的调试命令传送到所述芯片的系统总线;根据所述调试命令发起对所述芯片的目标子系统的寄存器的访问,并获取所述目标子系统的响应数据;
[0025]所述响应发送单元,用于通过所述外设接口将所述目标子系统的响应数据返回到所述上位机中。
[0026]采用本专利技术的技术方案,基于常用的外设接口,在不需要芯片内部的CPU的参与的前提下也能够实现上位机对芯片的远程调试,协议解析命令处理模块和总线接口直接建立通信,实现对芯片全地址空间的访问,提高了调试效率,并且实现了调试命令帧的编码可扩展性和芯片模块的可控制性。
[0027]本专利技术的其它特征和优点将在随后的说明书中阐述,并且部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过在说明书、权利要求书以及附图中所指出的结构来实现和获取。
附图说明
[0028]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单介绍,显而易见地,下面描述中的附图是本专利技术的
某些实施例,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获取其他的附图。
[0029]图1示出了根据现有技术的基于外设接口的芯片硬件调试结构示意图。
[0030]图2示出了根据本专利技术的基于外设接口的芯片硬件调试方法的主要流程图。
[0031]图3示出了根据本专利技术的基于外设接口的芯片硬件调试结构示意图。
[0032]图4示出了根据本专利技术的协议解析命令处理模块结构示意图。
[0033]图5示出了根据本专利技术的同步命令帧结构示意图。
[0034]图6示出了根据本专利技术的同步命令响应帧结构示意图。
[0035]图7示出了根据本专利技术的写寄存器命令帧结构示意图。
[0036]图8示出了根据本专利技术的写寄存器命令响应帧结构示意图。
[0037]图9示出了根据本专利技术的读寄存器命令帧结构示意图。
[0038]图10和图11分别示出了根据本专利技术的在读寄存器命令正确和错误情况下的响应帧结构示意图。
[0039]图12示出了根据本专利技术的控制信号帧结构示意图。
[0040]图13示出了根据本专利技术的控制信号响应帧结构示意图。
[0041]图14示出了根据本专利技术的同步过程处理流程图。
[0042]图15示出了根据本专利技术的调试命令帧接收流程图。...

【技术保护点】

【技术特征摘要】
1.一种基于外设接口的芯片硬件调试方法,其特征在于,包括:S101、通过所述芯片的外设接口接收上位机的调试命令,并对所接收的调试命令进行解析,将解析后的调试命令传送到所述芯片的系统总线;S102、根据所述调试命令发起对所述芯片的目标子系统的寄存器的访问,并通过所述系统总线接收所述目标子系统的响应数据;S103、通过所述外设接口将所述目标子系统的响应数据返回到所述上位机中。2.根据权利要求1所述的基于外设接口的芯片硬件调试方法,其特征在于,所述对所接收的调试命令进行解析,将解析后的调试命令传送到所述芯片的系统总线,进一步包括:对解析得到的调试命令进行处理,根据所述调试命令的类型,确定对所述系统总线的访问请求。3.根据权利要求1所述的基于外设接口的芯片硬件调试方法,其特征在于,所述根据所述调试命令发起对所述芯片的目标子系统的寄存器的访问,进一步包括:根据所述调试命令的目标地址信息,在所述芯片的多个子系统中确定要访问的目标子系统,并发起对所述目标子系统的寄存器的访问请求。4.根据权利要求1所述的基于外设接口的芯片硬件调试方法,其特征在于,所述通过外设接口将所述目标子系统的响应数据返回到所述上位机中,进一步包括:根据所述目标子系统的响应数据,生成待发送的命令、地址和数据信息;根据预定义响应帧格式,将所述响应数据发送到所述上位机。5.根据权利要求1所述的基于外设接口的芯片硬件调试方法,其特征在于,在对所接收的调试命令进行解析之前,该方法还包括:对所述调试命令进行校验,并所述调试命令是否出现错误。6.根...

【专利技术属性】
技术研发人员:刘冰洋黄晓文马乐苏海亮李永耀宁佐林
申请(专利权)人:无锡众星微系统技术有限公司
类型:发明
国别省市:

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

1