芯片的调试系统、调试方法和调试装置制造方法
【专利摘要】本发明公开了一种芯片的调试系统、调试方法和调试装置。其中,该调试系统包括:芯片,芯片包括第一控制器;第二控制器,第二控制器包括第一接口,第一接口与芯片连接,第二控制器用于将计算机的第一调试命令转换为芯片支持的格式得到第二调试命令,并将第二调试命令发送给芯片,和/或将芯片对于第二调试命令的响应发送给计算机;计算机,计算机通过计算机的串口与第二控制器的第二接口连接,计算机用于发送第一调试命令和/或接收芯片对于第二调试命令的响应。通过本发明,解决了现有技术中具有内部MCU的芯片没有串口的问题,通过第二控制器转发调试命令和对于调试命令的响应,以实现计算机对具有内部MCU的芯片的调试。
【专利说明】芯片的调试系统、调试方法和调试装置
【技术领域】
[0001]本发明涉及芯片控制领域,具体而言,涉及一种芯片的调试系统、调试方法和调试
>J-U ρ?α装直。
【背景技术】
[0002]在一种HDMI (High Definit1n Multimedia Interface,高清晰度多媒体接口 )转DP (DisplayPort,显示接口标准,是一种高清数字显示接口标准)的芯片中,其内部嵌入一个MCU(Micro Control Unit,微控制单元)用来控制该芯片的运行,从而不再需要外部MCU控制该HDMI转DP的芯片。由于嵌入该芯片内部的MCU没有串口,因此为内部MCU中运行的软件的调试带来了较大的困难。
[0003]针对现有技术中具有内部MCU的芯片没有串口的问题,目前尚未提出有效的解决方案。
【发明内容】
[0004]针对相关技术中具有内部MCU的芯片没有串口的问题,目前尚未提出有效的解决方案,为此,本发明的主要目的在于提供一种芯片的调试系统、调试方法和调试装置,以解决上述问题。
[0005]为了实现上述目的,根据本发明的一个方面,提供了一种芯片的调试系统,该调试系统包括:芯片,芯片包括第一控制器;第二控制器,第二控制器包括第一接口,第一接口与芯片连接,第二控制器用于将计算机的第一调试命令转换为芯片支持的格式得到第二调试命令,并将第二调试命令发送给芯片,和/或将芯片对于第二调试命令的响应发送给计算机;计算机,计算机通过计算机的串口与第二控制器的第二接口连接,计算机用于发送第一调试命令和/或接收芯片对于第二调试命令的响应。
[0006]进一步地,调试系统还包括:二选一开关,与第二控制器的第三接口和第二接口连接,二选一开关与第一控制器的数据传输接口连接,二选一开关与计算机的串口连接,二选一开关用于通过第二控制器的第三接口接收计算机的控制命令,其中,控制命令用于将第一控制器或第二控制器与计算机连接。
[0007]进一步地,第二控制器的第二接口包括:接口接收端,接口接收端与计算机的串口的串口发送端连接,用于接收计算机的第一调试命令和/或控制命令;接口发送端,接口发送端与二选一开关连接,用于将芯片对于第二调试命令的响应发送给计算机,其中,第二调试命令用于对芯片执行调试操作。
[0008]进一步地,第一控制器的数据传输接口为输入/输出接口,第一控制器的数据传输接口通过二选一开关与计算机的串口的串口接收端连接,第一控制器的数据传输接口用于发送第一控制器的程序运行状态数据,其中,程序运行状态数据为第一控制器内安装的程序生成的程序运行状态数据。
[0009]进一步地,计算机包括:比较器,与第一控制器和第二控制器连接,比较器用于比较芯片对于第二调试命令的响应和程序运行状态数据,以确定芯片是否发生故障。
[0010]为了实现上述目的,根据本发明的一个方面,提供了一种芯片的调试方法,该调试方法包括:接收来自计算机的第一调试命令,其中,第一调试命令用于对芯片执行调试操作;将第一调试命令转换为芯片支持的格式得到第二调试命令;按照第二调试命令对芯片执行调试操作,并获取芯片对于第二调试命令的响应。
[0011]进一步地,调试方法还包括:接收第一控制器的程序运行状态数据,其中,程序运行状态数据为第一控制器内安装的程序生成的程序运行状态数据;根据程序运行状态数据和芯片对于第二调试命令的响应判断芯片是否发生故障。
[0012]进一步地,根据程序运行状态数据和芯片对于第二调试命令的响应判断芯片是否发生故障包括:判断程序运行状态数据和芯片对于第二调试命令的响应是否一致;在程序运行状态数据和芯片对于第二调试命令的响应一致的情况下,则判断出芯片没有发生故障;在程序运行状态数据和芯片对于第二调试命令的响应不一致的情况下,则判断出芯片发生故障。
[0013]进一步地,在将第一调试命令转换为芯片支持的格式得到第二调试命令之后,调试方法还包括:将返回值发送至计算机,其中,返回值表示第一调试命令已转换完成。
[0014]为了实现上述目的,根据本发明的另一方面,提供了一种芯片的调试装置,该调试装置包括:接收模块,用于接收来自计算机的第一调试命令,其中,第一调试命令用于对芯片执行调试操作;转换模块,用于将第一调试命令转换为芯片支持的格式得到第二调试命令;执行模块,用于按照第二调试命令对芯片执行调试操作,并获取芯片对于第二调试命令的响应。
[0015]采用本发明实施例,通过将计算机的串口与第二控制器的第二接口连接,第二控制器可以接收来自计算机的第一调试命令,并将该第一调试命令转换为芯片支持的格式得到第二调试命令,第二控制器将该第二调试命令发送给芯片,芯片按照上述第二控制命令做出响应,并将该响应反馈至第二控制器,第二控制器接收到该响应之后,将该响应发送至计算机。由于芯片没有串口,无法接收计算机的第一调试命令,通过上述实施例,可以通过第二控制器将计算机的第一调试命令转发至芯片,然后使用该调试命令对芯片进行调试,并通过第二控制器将芯片对于该调试命令的响应发送至计算机。通过实施例,通过第二控制器实现了芯片与计算机的连接,解决了现有技术中具有内部MCU的芯片没有串口的问题,通过第二控制器转发调试命令和对于调试命令的响应,以实现计算机对具有内部MCU的芯片的调试,能够便捷地对具有内部MCU的芯片进行调试。
【专利附图】
【附图说明】
[0016]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0017]图1是根据本发明实施例的芯片的调试系统的示意图;
[0018]图2是根据本发明实施例的一种可选的具有内部MCU芯片的调试系统的示意图;
[0019]图3是根据本发明实施例的芯片的调试方法的流程图;以及
[0020]图4是根据本发明实施例的芯片的调试装置的示意图。
【具体实施方式】
[0021]为了使本【技术领域】的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0022]需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0023]图1是根据本发明实施例的芯片的调试系统的流程图,如图1所示该调试系统可以包括:芯片10、芯片可以包括第一控制器11、第二控制器30以及计算机50。
[0024]其中,第二控制器可以包括第一接口,第一接口与芯片连接,第二控制器用于将计算机的第一调试命令转换为芯片支持的格式得到第二调试命令,并将第二调试命令发送给芯片,和/或将芯片对于第二调试命令的响应发送给计算机;计算机通过计算机的串口与第二控制器的第二接口连接,计算机用于发送第一调试命令和/或接收芯片对于第二调试命令的响应。
[0025]可选地,第一控制器和第二控制器可以为MCU (Micro Control Unit,微控制单元)O
[0026]采用本发明实施例,通过将计算机的串口与第二控制器的第二接口连接,第二控制器可以接收来自计算机的第一调试命令,并将该第一调试命令转换为芯片支持的格式得到第二调试命令,第二控制器将该第二调试命令发送给芯片,芯片按照上述第二控制命令做出响应,并将该响应反馈至第二控制器,第二控制器接收到该响应之后,将该响应发送至计算机。由于芯片没有串口,无法接收计算机的第一调试命令,通过上述实施例,可以通过第二控制器将计算机的第一调试命令转发至芯片,然后使用该调试命令对芯片进行调试,并通过第二控制器将芯片对于该调试命令的响应发送至计算机。通过实施例,通过第二控制器实现了芯片与计算机的连接,解决了现有技术中具有内部MCU的芯片没有串口的问题,通过第二控制器转发调试命令和对于调试命令的响应,以实现计算机对具有内部MCU的芯片的调试,能够便捷地对具有内部MCU的芯片进行调试。
[0027]根据本发明上述实施例,调试系统还可以包括:二选一开关,与第二控制器的第三接口和第二接口连接,二选一开关与第一控制器的数据传输接口连接,二选一开关与计算机的串口连接,二选一开关用于通过第二控制器的第三接口接收计算机的控制命令。
[0028]其中,控制命令用于将第一控制器或第二控制器与计算机连接。
[0029]具体地,计算机通过其串口将控制命令发送至第二控制器的第二接口,第二控制器通过其第二接口接收到该控制命令之后,通过第二控制器的第三接口将该控制命令发送至二选一开关,二选一开关可以根据上述控制命令,选择将第一控制器与计算机连接,或者将第二控制器与计算机连接。
[0030]需要进一步说明的是,第二控制器的第二接口可以包括:接口接收端,接口接收端与计算机的串口的串口发送端连接,用于接收计算机的第一调试命令和/或控制命令;接口发送端,接口发送端与二选一开关连接,用于将芯片对于第二调试命令的响应发送给计算机。
[0031]其中,第二调试命令用于对芯片执行调试操作。该调试操作可以为访问该芯片的操作,如,读/写操作。
[0032]在本发明的上述实施例中,计算机发出控制命令,该控制命令通过计算机的串口的串口发送端发送至第二控制器的第二接口,第二控制器通过其第二接口的接口接收端接收到上述控制命令之后,通过第三接口将该控制命令发送至二选一开关。
[0033]具体地,如果该控制命令用于控制第一控制器与计算机连接,则二选一开关在接收到该控制命令之后,将第一控制器的数据传输接口与计算机的串口连接,此时计算机可以通过其串口接收来自第一控制器的数据(如,程序运行状态数据);如果该控制命令用于控制第二控制器与计算机连接,则二选一开关在接收到该控制命令之后,将第二控制器的第二接口的接口发送端与计算机的串口连接,此时计算机可以通过其串口接收第二控制器接收到的芯片对于第二调试命令的响应。
[0034]通过本发明上述实施例,通过二选一开关控制第一控制器和第二控制器与计算机的连接,具体地,二选一开关根据该计算机发出的控制命令将第一控制器与计算机连接,或者将第二控制器与计算机连接。通过本发明上述实施例,计算机可以根据需要生成选择与第一控制器连接或者与第二控制器连接的控制命令,以获取计算机所需要的数据或者信肩、O
[0035]根据本发明上述实施例,第一控制器的数据传输接口可以为输入/输出接口,第一控制器的数据传输接口通过二选一开关与计算机的串口的串口接收端连接,第一控制器的数据传输接口用于发送第一控制器的程序运行状态数据,其中,程序运行状态数据为第一控制器内安装的程序生成的程序运行状态数据。
[0036]具体地,当计算机发出选择与第一控制器连接的控制命令时,二选一开关将第一控制器的数据传输接口与计算机的串口的串口接收端连接,此时,第一控制器可以通过其数据传输接口将第一控制器内安装的程序生成的程序运行状态数据发送至计算机。
[0037]通过本发明上述实施例,计算机通过第二控制器将控制命令发送至二选一开关,可以控制二选一开关执行该控制命令,实现与第一控制器的连接,以获取第一控制器内安装的程序生成的程序运行状态数据。
[0038]需要进一步说明的是,计算机还可以包括:比较器,与第一控制器和第二控制器连接,比较器用于比较芯片对于第二调试命令的响应和程序运行状态数据,以确定芯片是否发生故障。
[0039]具体地,判断程序运行状态数据和芯片对于第二调试命令的响应是否一致;在程序运行状态数据和芯片对于第二调试命令的响应一致的情况下,则判断出芯片没有发生故障;在程序运行状态数据和芯片对于第二调试命令的响应不一致的情况下,则判断出芯片发生故障。
[0040]在本发明的上述实施例中,在判断出芯片发生故障时,确定芯片的故障类型,并获取与该故障类型对应的更新信息,使用该更新信息更新第一控制器的程序,以修复该故障。
[0041]通过本发明上述实施例,当计算机接收到上述程序运行状态数据和上述芯片对于第二调试命令的响应时,计算机通过比较器可以对接收到上述程序运行状态数据和上述芯片对于第二调试命令的响应进行比较,以确定芯片是否发生故障。
[0042]图2是根据本发明上述实施例的一种可选的具有内部MCU芯片的调试系统的示意图。
[0043]如图2所示,I2C与上述实施例中的芯片和第二控制器的第一接口连接。
[0044]其中,GP1端口为 General Purpose Input Output,通用输入 / 输出端口 ;I2C 为Inter-1ntegrated Circuit,两线式串行总线。
[0045]下面结合附图2详细介绍本发明实施例的调试系统的工作原理。
[0046]首先由计算机50的软件发起串口控制命令(即上述实施例中的控制命令),通过计算机的串口 2(即上述实施例中的计算机的串口)的TX端(即上述实施例中的计算机的串口的串口发送端)将其发送至第二控制器30,第二控制器通过串口 1(即上述实施例中的第二控制器的第二接口)的RX端(即上述实施例中的第二控制器的第二接口的接口接收端)接收到该串口控制命令之后,通过GP102端口(即上述实施例中的第一控制器的数据传输接口)控制二选一开关70选通第二控制器的串口 I的TX端(即上述实施例中的第二控制器的第二接口的接口发送端)与计算机的串口 2的RX端(即上述实施例中的计算机的串口的串口接收端)连接。计算机的软件读取指令脚本文件,并将指令脚本文件中的指令(即上述实施例中的第一调试命令)通过计算机的串口 2的TX端发送到第二控制器。第二控制器通过串口 I的RX端接收到上述指令后,将该指令转换为相应的I2C操作(即上述实施例中的第二调试命令),通过I2C操作实现对芯片10的控制,并读取芯片对于I2C操作的响应。第二控制器通过串口 2的TX端发送返回值到计算机,完成一次操作,其中,该返回值表示上述指令转换已完成;同时第二控制器将读取到的芯片对于I2C操作的响应发送至计算机。
[0047]其中,串口控制命令、指令脚本文件中的指令以及芯片对于相应的I2C操作的响应均可以为字符串格式;指令脚本文件中可以包括一条或多条上述的第一调试命令。
[0048]在本发明的上述实施例中,计算机的软件可以在其界面上显示接收到的芯片对于I2C操作的响应并将该响应保存为日志文件,以备后续使用;计算机的软件还可以将指令脚本文件存储为指令集,指令集中的指令可以为对寄存器执行读写操作的指令(即上述实施例中的第一调试命令),以及控制计算机的串口 2的RX端的输入选择的指令(即上述实施例中的控制命令)。
[0049]需要进一步说明的是,计算机的软件可以按照预定的指令脚本文件自动执行多条指令。具体地,在计算机的软件接收到每条第一调试命令的返回值之后,根据返回值判断指令脚本文件中的指令是否已全部读取,如果指令脚本文件中的指令没有全部读取,则继续读取指令脚本文件中的下一条指令并将其发送到第二控制器进行转换,直到完成指令脚本文件中的所有指令为止。
[0050]为了获取芯片内部的第一控制器的程序运行状态,可以由计算机的软件发起串口控制命令(即上述实施例中的控制命令)并通过计算机的串口 2的TX端发送至第二控制器,第二控制器通过串口 I的RX端接收到该控制命令之后,通过GP102端口控制二选一开关选通PC端的串口 2的RX端与芯片的GP1l端口(即上述实施例中的第二控制器的第三接口)连接。芯片内部的第一控制器将其内部的程序运行状态数据通过GP1l端口传输到计算机的软件,其中,程序运行状态数据为第一控制器内安装的程序生成的程序运行状态数据。
[0051]计算机的软件接收到上述的程序运行状态数据之后,根据第一控制器运行状态对应表将GP1l端口传输的程序运行状态数据转换为程序运行状态信息,并将其显示于计算机显示屏上。计算机的软件通过比较上述程序运行状态信息和芯片对于I2C操作的响应来判断芯片是否发生故障,在上述程序运行状态信息和芯片对于I2C操作的响应一致的情况下,则判断出芯片没有发生故障;在上述程序运行状态信息和芯片对于I2C操作的响应不一致的情况下,则可判断出芯片发生故障。
[0052]其中,第一控制器可以将其内部的程序运行状态数据通过GP1l端口模拟为16进制数据格式的串口波形发送至计算机的软件。
[0053]通过本发明上述实施例,可以利用计算机的软件发起的控制命令和第一调试命令并显示芯片状态,利用第二控制器将计算机发送的调试指令转换为I2C操作以完成对芯片的调试,第一控制器可以利用GP1l端口模拟串口数据发送,以将内部MCU的程序运行状态发送至计算机的串口 2的RX端。采用本发明上述实施例,可以通过第二控制器和二选一开关,解决了具有内部MCU的芯片没有串口的问题,实现了计算机对具有内部MCU的芯片的调试。
[0054]图3是根据本发明实施例的芯片的调试方法的流程图,如图3所示,该方法可以包括如下步骤:
[0055]步骤S302,接收来自计算机的第一调试命令。
[0056]其中,第一调试命令用于对芯片执行调试操作。
[0057]步骤S304,将第一调试命令转换为芯片支持的格式得到第二调试命令。
[0058]步骤S306,按照第二调试命令对芯片执行调试操作,并获取芯片对于第二调试命令的响应。
[0059]采用本发明实施例,通过接收来自计算机的第一调试命令,并将该第一调试命令转换为芯片支持的格式得到第二调试命令,按照第二调试命令对芯片执行调试操作,并获取芯片对于第二调试命令的响应。由于芯片没有串口,无法直接与计算机连接并接收计算机的第一调试命令,通过上述实施例,可以将计算机的第一调试命令转换为芯片支持的格式得到第二调试命令,然后使用第二调试命令对芯片进行调试,并获取芯片对于第二调试命令的响应,通过该实施例,实现了芯片与计算机的连接,解决了现有技术中具有内部MCU(Micro Control Unit,微控制单元)的芯片没有串口的问题,实现了计算机对具有内部MCU的芯片的调试,能够便捷地对具有内部MCU的芯片进行调试。
[0060]本发明的上述实施例中的内部MCU可以为第一控制器,上述的调试方法可以通过第二实施例执行上述步骤来实现。
[0061]其中的第二调试命令用于对芯片执行调试操作。该调试操作可以为访问该芯片的操作,如,读/写操作。
[0062]在本发明的上述实施例中,计算机发出控制命令,该控制命令可以控制第一控制器与计算机建立连接,以接收第一控制器的程序运行状态数据;还可以控制第二控制器与计算机建立连接,以接收第二控制器反馈的芯片对于第二调试命令的响应。
[0063]具体地,如果计算机发出的控制命令用于控制第一控制器与计算机连接,则二选一开关在接收到该控制命令之后,将第一控制器的数据传输接口与计算机的串口连接,此时计算机可以通过其串口接收来自第一控制器的数据(如,程序运行状态数据);如果该控制命令用于控制第二控制器与计算机连接,则二选一开关在接收到该控制命令之后,将第二控制器的第二接口的接口发送端与计算机的串口连接,此时计算机可以通过其串口接收第二控制器接收到的芯片对于第二调试命令的响应。
[0064]根据本发明上述实施例,调试方法还可以包括:接收第一控制器的程序运行状态数据,其中,程序运行状态数据为第一控制器内安装的程序生成的程序运行状态数据;根据程序运行状态数据和芯片对于第二调试命令的响应判断芯片是否发生故障。
[0065]具体地,根据程序运行状态数据和芯片对于第二调试命令的响应判断芯片是否发生故障可以包括:判断程序运行状态数据和芯片对于第二调试命令的响应是否一致;在程序运行状态数据和芯片对于第二调试命令的响应一致的情况下,则判断出芯片没有发生故障;在程序运行状态数据和芯片对于第二调试命令的响应不一致的情况下,则判断出芯片发生故障。
[0066]在本发明的上述实施例中,在判断出芯片发生故障时,确定芯片的故障类型,并获取与该故障类型对应的更新信息,使用该更新信息更新第一控制器的程序,以修复该故障。
[0067]根据本发明上述实施例,在将第一调试命令转换为芯片支持的格式得到第二调试命令之后,调试方法还可以包括:将返回值发送至计算机,其中,返回值表示第一调试命令已转换完成。
[0068]在本发明的上述实施例中,PC端软件可以在其界面上显示接收到的芯片对于相应的I2C操作的响应并将该响应保存为日志文件,以备后续使用;PC端软件还可以将指令脚本文件存储为指令集,指令集中的指令可以为对寄存器执行读写操作的指令(即第一调试命令),以及控制PC串口 RX端的输入选择的指令。
[0069]需要进一步说明的是,PC端软件可以按照预定的指令脚本文件自动执行多条指令。具体地,在PC端软件接收到每条第一调试命令的返回值之后,根据返回值判断指令脚本文件中的指令是否已全部读取,如果指令脚本文件中的指令没有全部读取,则继续读取指令脚本文件中的下一条指令并将其发送到外部MCU进行转换,直到完成指令脚本文件中的所有指令为止。
[0070]通过本发明上述实施例,可以将计算机的第一调试命令转换为芯片支持的格式得到第二调试命令,然后使用第二调试命令对芯片进行调试,并获取芯片对于第二调试命令的响应,同时根据接收到的芯片对于第二调试命令的响应和第一控制器内安装的程序生成的程序运行状态数据,判断芯片是否发生故障。通过本发明上述实施例,可以便捷地对具有内部MCU的芯片进行调试并获取芯片内部MCU的程序运行状态,解决了现有技术中具有内部MCU的芯片没有串口的问题,实现了计算机对具有内部MCU的芯片的调试。
[0071]需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0072]图4是根据本发明实施例的芯片的调试装置的示意图,如图4所示,该调试装置可以包括:接收模块31、转换模块33以及执行模块35。
[0073]其中,接收模块,用于接收来自计算机的第一调试命令,其中,第一调试命令用于对芯片执行调试操作;转换模块,用于将第一调试命令转换为芯片支持的格式得到第二调试命令;执行模块,用于按照第二调试命令对芯片执行调试操作,并获取芯片对于第二调试命令的响应。
[0074]采用本发明实施例,通过接收来自计算机的第一调试命令,并将该第一调试命令转换为芯片支持的格式得到第二调试命令,按照第二调试命令对芯片执行调试操作,并获取芯片对于第二调试命令的响应。由于芯片没有串口,无法直接与计算机连接并接收计算机的第一调试命令,通过上述实施例,可以将计算机的第一调试命令转换为芯片支持的格式得到第二调试命令,然后使用第二调试命令对芯片进行调试,并获取芯片对于第二调试命令的响应,通过该实施例,实现了芯片与计算机的连接,解决了现有技术中具有内部MCU (Micro Control Unit,微控制单元)的芯片没有串口的问题,实现了计算机对具有内部MCU的芯片的调试,能够便捷地对具有内部MCU的芯片进行调试。
[0075]本实施例中所提供的各个模块与方法实施例对应步骤所提供的使用方法相同、应用场景也可以相同。当然,需要注意的是,上述模块涉及的方案可以不限于方法实施例中的内容和场景,且上述模块可以运行在计算机终端或移动终端,可以通过软件或硬件实现。
[0076]从以上的描述中,可以看出,本发明实现了如下技术效果:
[0077]采用本发明实施例,通过将计算机的串口与第二控制器的第二接口连接,第二控制器可以接收来自计算机的第一调试命令,并将该第一调试命令转换为芯片支持的格式得到第二调试命令,第二控制器将该第二调试命令发送给芯片,芯片按照上述第二控制命令做出响应,并将该响应反馈至第二控制器,第二控制器接收到该响应之后,将该响应发送至计算机。由于芯片没有串口,无法接收计算机的第一调试命令,通过上述实施例,可以通过第二控制器将计算机的第一调试命令转发至芯片,然后使用该调试命令对芯片进行调试,并通过第二控制器将芯片对于该调试命令的响应发送至计算机。通过实施例,通过第二控制器实现了芯片与计算机的连接,解决了现有技术中具有内部MCU的芯片没有串口的问题,通过第二控制器转发调试命令和对于调试命令的响应,以实现计算机对具有内部MCU的芯片的调试,能够便捷地对具有内部MCU的芯片进行调试。
[0078]显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
[0079]以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种芯片的调试系统,其特征在于,包括: 芯片,所述芯片包括第一控制器; 第二控制器,所述第二控制器包括第一接口,所述第一接口与所述芯片连接,所述第二控制器用于将计算机的第一调试命令转换为所述芯片支持的格式得到第二调试命令,并将所述第二调试命令发送给所述芯片,和/或将所述芯片对于所述第二调试命令的响应发送给所述计算机; 所述计算机,所述计算机通过所述计算机的串口与所述第二控制器的第二接口连接,所述计算机用于发送所述第一调试命令和/或接收所述芯片对于所述第二调试命令的响应。
2.根据权利要求1所述的调试系统,其特征在于,所述调试系统还包括: 二选一开关,与所述第二控制器的第三接口和所述第二接口连接,所述二选一开关与所述第一控制器的数据传输接口连接,所述二选一开关与所述计算机的所述串口连接,所述二选一开关用于通过所述第二控制器的所述第三接口接收所述计算机的控制命令, 其中,所述控制命令用于将所述第一控制器或所述第二控制器与所述计算机连接。
3.根据权利要求2所述的调试系统,其特征在于,所述第二控制器的所述第二接口包括: 接口接收端,所述接口接收端与所述计算机的所述串口的串口发送端连接,用于接收所述计算机的所述第一调试命令和/或所述控制命令; 接口发送端,所述接口发送端与所述二选一开关连接,用于将所述芯片对于所述第二调试命令的响应发送给所述计算机, 其中,所述第二调试命令用于对所述芯片执行调试操作。
4.根据权利要求2所述的调试系统,其特征在于,所述第一控制器的所述数据传输接口为输入/输出接口,所述第一控制器的所述数据传输接口通过所述二选一开关与所述计算机的所述串口的串口接收端连接,所述第一控制器的所述数据传输接口用于发送所述第一控制器的程序运行状态数据,其中,所述程序运行状态数据为所述第一控制器内安装的程序生成的程序运行状态数据。
5.根据权利要求4所述的调试系统,其特征在于,所述计算机包括: 比较器,与所述第一控制器和所述第二控制器连接,所述比较器用于比较所述芯片对于所述第二调试命令的响应和所述程序运行状态数据,以确定所述芯片是否发生故障。
6.一种芯片的调试方法,应用于权利要求1至5中任一项的所述调试系统中,其特征在于,包括: 接收来自计算机的第一调试命令,其中,所述第一调试命令用于对芯片执行调试操作; 将所述第一调试命令转换为所述芯片支持的格式得到第二调试命令; 按照所述第二调试命令对所述芯片执行所述调试操作,并获取所述芯片对于所述第二调试命令的响应。
7.根据权利要求6所述的调试方法,其特征在于,所述调试方法还包括: 接收所述第一控制器的程序运行状态数据,其中,所述程序运行状态数据为所述第一控制器内安装的程序生成的程序运行状态数据; 根据所述程序运行状态数据和所述芯片对于所述第二调试命令的响应判断所述芯片是否发生故障。
8.根据权利要求7所述的调试方法,其特征在于,根据所述程序运行状态数据和所述芯片对于所述第二调试命令的响应判断所述芯片是否发生故障包括: 判断所述程序运行状态数据和所述芯片对于所述第二调试命令的响应是否一致; 在所述程序运行状态数据和所述芯片对于所述第二调试命令的响应一致的情况下,则判断出所述芯片没有发生故障; 在所述程序运行状态数据和所述芯片对于所述第二调试命令的响应不一致的情况下,则判断出所述芯片发生故障。
9.根据权利要求6所述的调试方法,其特征在于,在将所述第一调试命令转换为所述芯片支持的格式得到第二调试命令之后,所述调试方法还包括: 将返回值发送至所述计算机,其中,所述返回值表示所述第一调试命令已转换完成。
10.一种芯片的调试装置,其特征在于,包括: 接收模块,用于接收来自计算机的第一调试命令,其中,所述第一调试命令用于对芯片执行调试操作; 转换模块,用于将所述第一调试命令转换为所述芯片支持的格式得到第二调试命令; 执行模块,用于按照所述第二调试命令对所述芯片执行所述调试操作,并获取所述芯片对于所述第二调试命令的响应。
【文档编号】G06F11/26GK104239175SQ201410453793
【公开日】2014年12月24日 申请日期:2014年9月5日 优先权日:2014年9月5日
【发明者】肖勇, 王少亮, 赵明洋 申请人:硅谷数模半导体(北京)有限公司, 硅谷数模国际有限公司