处理器调试方法和系统与流程

文档序号:15615191发布日期:2018-10-09 21:11阅读:455来源:国知局

本发明涉及电子技术领域,更具体地,涉及一种处理器调试方法和系统。



背景技术:

随着片上系统芯片的复杂度越来越高,芯片验证和调试的难度越来越大。传统的调试技术是调试主机通过设置寄存器的某一位产生调试请求,处理器接收到调试请求后进入调试模式,并置调试应答信号有效。进入调试模式后,处理器停止工作并与系统的其他部分分离。此时cpu的内核不再从只读存储器中取指,而是由调试主机将需要处理器执行的指令通过接口捅入到处理器的指令寄存器。选择适当的指令并控制这些指令的执行,然后根据执行的结果来检测或者修改存储器内容以及处理器寄存器。由于调试过程中使用了处理器的指令寄存器,在进入调试模式后需要保护以及退出调试模式前需要恢复程序正常运行的寄存器信息,导致调试时间长而效率低。



技术实现要素:

本发明的一个方面提供了一种处理器调试方法,该处理器包括可重构计算阵列,可重构计算阵列包括多个处理单元以及与多个处理单元对应的多个寄存器。该方法包括:接收调试指令,通过令牌控制至少一个处理单元在使能状态与非使能状态下切换,以控制可重构计算阵列执行调试指令,产生调试数据并存储于与至少一个处理单元对应的寄存器中,以及导出至少一个处理单元对应的寄存器中的调试数据。

可选地,通过令牌控制至少一个处理单元在使能状态与非使能状态下切换,以控制可重构计算阵列执行调试指令,包括控制至少一个处理单元由非使能状态切换为使能状态,以使可重构计算阵列执行调试指令,以及在一个时钟周期结束后,控制至少一个处理单元由使能状态切换为非使能状态。

可选地,导出寄存器中的调试数据包括获取寄存器的地址,以及导出地址对应的寄存器中的调试数据。

可选地,导出寄存器中的调试数据包括导出可重构计算阵列中全部寄存器中的调试数据。

可选地,处理器还包括缓冲单元。导出至少一个处理单元对应的寄存器中的调试数据包括,将至少一个处理单元对应的寄存器中的调试数据缓冲至缓冲单元中,以及响应于读取指令,导出缓冲单元中的多个调试数据。

可选地,在接收调试指令之前,该方法还包括,复位可重构计算阵列,将处理器切换为调试模式,响应于第一配置指令,配置数据导出模式为单寄存器模式或者多寄存器模式,以及响应于第二配置指令,配置可重构计算阵列的处理逻辑。在导出寄存器中的调试数据之后,该方法还包括,将处理器的调试模式切换为正常工作模式。

可选地,导出寄存器中的调试数据包括,导出至少一个时钟周期下的多个寄存器的调试数据,以使得用于调试处理器的调试主机能够基于调试数据,绘制至少一个波形图。其中,波形图包括以对应于计算阵列的行、列和调试数据构成的三个维度的数据映射于空间直角坐标系的波形图。

本发明的另一个方面提供了一种处理器调试系统,处理器包括可重构计算阵列,可重构计算阵列包括多个处理单元以及与多个处理单元对应的多个寄存器,系统包括接收模块、控制模块和导出模块。接收模块,用于接收调试指令。控制模块,用于通过令牌控制至少一个处理单元在使能状态与非使能状态下切换,以控制可重构计算阵列执行调试指令,产生调试数据并存储于与至少一个处理单元对应的寄存器中。导出模块,用于导出至少一个处理单元对应的寄存器中的调试数据。

可选地,控制模块包括第一控制子模块和第二控制子模块。第一控制子模块,用于控制至少一个处理单元由非使能状态切换为使能状态,以使可重构计算阵列执行调试指令。第二控制子模块,用于在一个时钟周期结束后,控制至少一个处理单元由使能状态切换为非使能状态。

可选地,导出模块包括第一导出子模块或者第二导出子模块中的至少一种。第一导出子模块,用于获取寄存器的地址,以及导出地址对应的寄存器中的调试数据。第二导出子模块,用于导出可重构计算阵列中全部寄存器中的调试数据。

可选地,处理器还包括缓冲单元,导出模块包括缓冲子模块和第三导出子模块。缓冲子模块,用于将至少一个处理单元对应的寄存器中的调试数据缓冲至缓冲单元中。第三导出子模块,用于响应于读取指令,导出缓冲单元中的多个调试数据。

可选地,系统还包括复位模块、第一切换模块、第一配置模块、第二配置模块以及第二切换模块。复位模块,用于复位可重构计算阵列。第一切换模块,用于将处理器切换为调试模式。第一配置模块,用于响应于第一配置指令,配置数据导出模式为单寄存器模式或者多寄存器模式。第二配置模块,用于响应于第二配置指令,配置可重构计算阵列的处理逻辑。第二切换模块,用于将处理器的调试模式切换为正常工作模式。

可选地,导出模块包括第四导出子模块,用于导出至少一个时钟周期下的多个寄存器的调试数据,以使得用于调试处理器的调试主机能够基于调试数据,绘制至少一个波形图。其中,波形图包括以对应于计算阵列的行、列和调试数据构成的三个维度的数据映射于空间直角坐标系的波形图。

本发明的另一方面提供了一种处理器调试系统,包括:一个或多个处理器,存储装置,用于存储一个或多个程序,其中,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现如上的方法。

本发明的另一方面提供了一种计算机可读介质,其上存储有可执行指令,该指令被处理器执行时用于实现如上的方法。

本发明的另一方面提供了一种计算机程序,计算机程序包括计算机可执行指令,指令在被执行时用于实现如上的方法。

根据本发明实施例的技术方案,采用使能控制的方式控制调试过程,避免了保存和恢复数据的辅助操作,提高了可重构处理器的调试效率。

附图说明

为了更完整地理解本发明及其优势,现在将参考结合附图的以下描述,其中:

图1示意性示出了根据本发明实施例的可重构计算阵列的示意图;

图2示意性示出了根据本发明实施例的处理器调试方法的流程图;

图3示意性示出了根据本发明实施例的通过令牌控制至少一个处理单元在使能状态与非使能状态下切换,以控制所述可重构计算阵列执行所述调试指令的流程图;

图4示意性示出了根据本发明另一实施例的处理器调试方法的流程图;

图5示意性示出了根据本发明实施例的导出所述至少一个处理单元对应的寄存器中的调试数据的流程图;

图6示意性示出了根据本发明实施例的处理器调试系统的框图;

图7示意性示出了根据本发明实施例的控制模块的框图;

图8示意性示出了根据本发明实施例的导出模块的框图;

图9示意性示出了根据本发明另一实施例的处理器调试系统的框图;以及

图10示意性示出了根据本发明实施例的可以用于处理器调试方法和系统的电子设备的框图。

具体实施方式

以下,将参照附图来描述本发明的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。

在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本发明。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。

在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。

在使用类似于“a、b和c等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有a、b和c中至少一个的系统”应包括但不限于单独具有a、单独具有b、单独具有c、具有a和b、具有a和c、具有b和c、和/或具有a、b、c的系统等)。在使用类似于“a、b或c等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有a、b或c中至少一个的系统”应包括但不限于单独具有a、单独具有b、单独具有c、具有a和b、具有a和c、具有b和c、和/或具有a、b、c的系统等)。本领域技术人员还应理解,实质上任意表示两个或更多可选项目的转折连词和/或短语,无论是在说明书、权利要求书还是附图中,都应被理解为给出了包括这些项目之一、这些项目任一方、或两个项目的可能性。例如,短语“a或b”应当被理解为包括“a”或“b”、或“a和b”的可能性。

附图中示出了一些方框图和/或流程图。应理解,方框图和/或流程图中的一些方框或其组合可以由计算机程序指令来实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而这些指令在由该处理器执行时可以创建用于实现这些方框图和/或流程图中所说明的功能/操作的装置。因此,本发明的技术可以硬件和/或软件(包括固件、微代码等)的形式来实现。另外,本发明的技术可以采取存储有指令的计算机可读介质上的计算机程序产品的形式,该计算机程序产品可供指令执行系统使用或者结合指令执行系统使用。在本发明的上下文中,计算机可读介质可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,计算机可读介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。计算机可读介质的具体示例包括:磁存储装置,如磁带或硬盘(hdd);光存储装置,如光盘(cd-rom);存储器,如随机存取存储器(ram)或闪存;和/或有线/无线通信链路。

可重构处理系统是一种新生的处理器架构,其通常具有硬件计算阵列的形式,该阵列可以包括多个处理单元(也可以称为算子),处理单元可以配置为实现多种算术逻辑等功能。因此,通过动态地配置这些处理单元(例如,动态地改变处理单元之间的互联关系等),使得可重构处理系统能够灵活地实现各种算法功能,而且利用硬件运算电路也能够极大地提高运算性能。

本发明的实施例提供了一种处理器调试方法,所述处理器包括可重构计算阵列,所述可重构计算阵列包括多个处理单元以及与所述多个处理单元对应的多个寄存器。所述处理器调试方法包括,接收调试指令,通过令牌控制至少一个处理单元在使能状态与非使能状态下切换,以控制所述可重构计算阵列执行所述调试指令,产生调试数据并存储于与所述至少一个处理单元对应的寄存器中,以及导出所述至少一个处理单元对应的寄存器中的调试数据。

在本发明实施例的技术方案中,通过使能控制的方式控制调试过程,避免了保存和恢复数据的辅助操作,从而能够提高可重构处理器的调试效率。

图1示意性示出了根据本发明实施例的可重构计算阵列的示意图。需要注意的是,图1所示仅为可以应用本发明实施例的可重构计算阵列的示例,以帮助本领域技术人员理解本发明的技术内容,但并不意味着本发明实施例不可以用于其他设备、系统、环境或场景。

如图1所示,该可重构计算阵列100包括多个处理单元110,处理单元110可以实现多种算术逻辑功能。通过配置这些处理单元110(例如,动态地改变处理单元之间的互联关系等)可以使得可重构处理系统处理不同的运算任务。例如,可重构计算阵列100可以包括bfu处理单元、sbox处理单元和benes处理单元等。bfu处理单元主要用于实现一些数据运算,比如算术和逻辑运算。sbox处理单元可以实现查表功能。benes处理单元可以实现比特置换运算。当然,可重构计算阵列中还可以包括用于实现其它适当功能的处理单元,本发明实施例对此不作限定。

根据本发明实施例,可重构计算阵列100中的每个处理单元110对应地设置有寄存器(图中未示出),各个处理单元将所涉及的数据存储于寄存器中,随着计算或调试任务的进行,处于工作状态的处理单元110对应的寄存器中的数据发生变化。

应当理解的是,为了便于说明,在图1中示出了一定数量的处理单元,但是在本发明实施例中,可以存在其它数量的处理单元。本发明实施例对此不作限定。

下面结合图1的应用场景,参考图2~图5来描述根据本发明示例性实施方式的处理器调试方法。图2示意性示出了根据本发明实施例的处理器调试方法的流程图。

如图2所示,该方法包括操作s210~s230。

在操作s210,接收调试指令。

在操作s220,通过令牌控制至少一个处理单元在使能状态与非使能状态下切换,以控制所述可重构计算阵列执行所述调试指令,产生调试数据并存储于与所述至少一个处理单元对应的寄存器中。

在操作s230,导出所述至少一个处理单元对应的寄存器中的调试数据。

根据本发明实施例,调试主机通过数据通讯接口与处理器相连,可以在正常工作模式下完成与处理器的数据交互,也可以在调试模式下发送调试指令,并完成相应的数据交互。

根据本发明实施例,处理器中可以包括调试接口模块,在接收到调试指令后,该模块完成调试指令的发送、可重构计算阵列的数据读写、等功能。当调试接口模块将调试指令发送到可重构计算阵列时,可重构计算阵列根据调试指令完成配置。

根据本发明实施例,处理器在调试模式下,并不是通过时钟的开启和关断来控制单个周期或者多个周期的运行,而是通过令牌控制计算阵列中每个处理单元的使能状态,来控制整个可重构计算阵列中的每个处理单元的正常运行状态和暂停状态的切换,进而控制可重构计算阵列完成单个周期或多个周期的运行。可重构计算阵列的每个处理单元都有对应的令牌控制信号。处于使能状态时,处理单元在正常运行状态,处于未使能状态时,处理单元处于暂停状态。

该方法采用使能控制的方式控制调试过程,避免了保存和恢复数据的辅助操作,提高了处理效率。

图3示意性示出了根据本发明实施例的通过令牌控制至少一个处理单元在使能状态与非使能状态下切换,以控制所述可重构计算阵列执行所述调试指令的流程图。

如图3所示,该方法包括操作s310和s320。

在操作s310,控制所述至少一个处理单元由所述非使能状态切换为所述使能状态,以使所述可重构计算阵列执行所述调试指令。

在操作s320,在一个时钟周期结束后,控制所述至少一个处理单元由所述使能状态切换为所述非使能状态。

应当说明的是,在操作s310中所描述的以使所述可重构计算阵列执行所述调试指令,只是执行一个调试指令的一个时钟周期。对于复杂指令而言,通常需要几个时钟周期才能完成执行,而对于简单指令而言,可以在一个时钟周期内执行完成。

根据本发明实施例,在调试模式下,运行单周期调试命令时,令牌会使能一个时钟/机器周期,对应的处理单元完成该周期的计算。因此,处理器的调试粒度可以做到单个时钟周期,进而能够更准确地定位调试位置,提高了调试效率。而传统的硬件模块往往运行时由控制寄存器来控制,每个计算模块并没有相应的使能控制,最小粒度只能做到单指令周期调试,做不到单周期调试。并且,通过使能信号控制处理单元的运行,避免了开启和关闭时钟,降低电路风险,使用于控制处理单元的时钟数据更准确。

图4示意性示出了根据本发明另一实施例的处理器调试方法的流程图。

如图4所示,该方法在前述实施例的基础上,还包括操作s410~s450。

在操作s410,复位所述可重构计算阵列。根据本发明实施例,在调试前,可以首先对其进行复位,包括例如处理单元的处理逻辑、各个寄存器中的数据等,以便于后续调试。本发明实施例的方法还可包括复位处理器上的其他部分,例如缓冲单元中的数据等。

在操作s420,将所述处理器切换为调试模式。根据本发明实施例,处理器至少具有两种处理模式,包括调试模式和正常工作模式。在调试之前,需将处理器的处理模式切换为调试模式。

在操作s430,响应于第一配置指令,配置数据导出模式为单寄存器模式或者多寄存器模式。根据本发明实施例,在调试过程中存在两种导出模式:

(1)单寄存器模式下,获取寄存器的地址,并导出所述地址对应的寄存器中的调试数据。根据本发明实施例,用户在调试过程中可以指定读取某些特定的处理单元对应的寄存器中的数据,该方法定位精确,省去不需要的导出操作,快速准确。

(2)多寄存器模式下,导出所述可重构计算阵列中全部寄存器中的调试数据。根据本发明实施例,在该导出模式下,默认导出全部寄存器中的调试数据,省去用户操作,获得的数据更加全面。

根据本发明实施例,在操作s430,可以接收第一配置指令,配置本次调试所需要使用的导出模式。

由于可重构计算阵列的特性,每个处理单元的功能相对独立,可以配置成多种类型的计算单元,而且每个处理单元都需要对应的寄存器来存储计算结果。本发明实施例利用上述结构特性,不需要特意为调试逻辑增加额外的寄存器,就可以在调试过程中读取所有处理单元的寄存器中的数据。而对于传统的硬件结构,则需要增加每个寄存器的读接口以及相应的寄存器等,成本比较大。下面参考图5,对本发明一些实施例的导出所述至少一个处理单元对应的寄存器中的调试数据进行说明。

图5示意性示出了根据本发明实施例的导出所述至少一个处理单元对应的寄存器中的调试数据的流程图。

如图5所示,所述处理器还包括缓冲单元,导出所述至少一个处理单元对应的寄存器中的调试数据包括操作s510~s520。

在操作s510,将所述至少一个处理单元对应的寄存器中的调试数据缓冲至所述缓冲单元中。

在操作s520,响应于读取指令,导出所述缓冲单元中的多个调试数据。根据本发明实施例,所述多个调试数据可以是多个寄存器中的数据,也可以是同一个寄存器在不同时刻的数据。

调试主机可以直接读取该缓冲单元中的数据,调试主机读取的方式可以为指令读或者硬件读操作。本发明实施例的方式可以避免所有的寄存器都由调试主机通过指令去读,可以通过直接内存存取dma读的方式一次性读取多个处理单元,甚至所有处理单元对应寄存器的数据,极大地提高了调试效率。读取的数据存储在缓冲单元中,可以存储多次调试对应的处理单元的数据,调试主机可以择机进行读取。

返回继续参考图4,在操作s440,响应于第二配置指令,配置所述可重构计算阵列的处理逻辑。根据本发明实施例,在执行调试指令前,需要将可重构计算阵列配置成特定的算法。因此,在操作s410将可重构计算阵列复位之后,还包括操作s440,接收第一配置指令,配置本次调试所需要可重构计算阵列的处理逻辑。

在操作s450,在调试完成后,将所述处理器的调试模式切换为正常工作模式,便于后续使用。

应当注意的是,上述操作s410~s450中的一个或多个可以省略,本发明实施例所示意的s410~s450之间的顺序也仅仅是一种实现方式,除操作s450在调试之后执行,以及操作s440在操作s410之后执行以外,本发明并不限定上述操作s410~s450之间的执行顺序。

根据本发明实施例,所述导出寄存器中的调试数据可以包括,导出至少一个时钟周期下的多个所述寄存器的调试数据,以使得用于调试所述处理器的调试主机能够基于所述调试数据,绘制至少一个波形图。其中,所述波形图包括以对应于所述计算阵列的行、列和所述调试数据构成的三个维度的数据映射于空间直角坐标系的波形图。由于可重构计算阵列的调试支持单周期调试,且所有的处理单元的寄存器的数据都可以获得,因此调试主机可以根据以上数据完成波形的绘制,实现硬件仿真。

根据本发明实施例,可以配置数据导出模式为多寄存器模式。可重构计算阵列接收配置数据,并据此将可重构计算阵列配置为实现对应的算法。在完成配置后,启动调试。在多寄存器模式下,处理器会将多个目标处理单元的寄存器读取到缓冲单元中,待缓冲完成后,可以连续读取缓冲单元中的数据,直至完成所有数据的读取。调试主机可以将读取的数据绘制成该时钟周期内各个处理单元的寄存器对应的波形,接着可以再启动下一周期的调试,并读取下一周期中缓冲单元中的数据,绘制下一个周期的波形。当退出调试模式时,调试主机停止波形绘制,处理器也进入正常工作模式。

图6示意性示出了根据本发明实施例的处理器调试系统600的框图。

本发明实施例的处理器包括可重构计算阵列,所述可重构计算阵列包括多个处理单元以及与所述多个处理单元对应的多个寄存器,例如参考图1所示的内容。

如图6所示,该处理器调试系统600包括接收模块610、控制模块620和导出模块630。

接收模块610,例如执行上文参考图2所描述的操作s210,用于接收调试指令。

控制模块620,例如执行上文参考图2所描述的操作s220,用于通过令牌控制至少一个处理单元在使能状态与非使能状态下切换,以控制所述可重构计算阵列执行所述调试指令,产生调试数据并存储于与所述至少一个处理单元对应的寄存器中。

导出模块630,例如执行上文参考图2所描述的操作s230,用于导出所述至少一个处理单元对应的寄存器中的调试数据。

图7示意性示出了根据本发明实施例的控制模块620的框图。

如图7所示,该控制模块620包括第一控制子模块710和第二控制子模块720。

第一控制子模块710,例如执行上文参考图3所描述的操作s310,用于控制至少一个处理单元由所述非使能状态切换为所述使能状态,以使所述可重构计算阵列执行所述调试指令。

第二控制子模块720,例如执行上文参考图3所描述的操作s320,用于在一个时钟周期结束后,控制所述至少一个处理单元由所述使能状态切换为所述非使能状态。

根据本发明实施例,所述导出模块630可以包括第一导出子模块或者第二导出子模块中的至少一种。

第一导出子模块,用于获取寄存器的地址,以及导出所述地址对应的寄存器中的调试数据。

第二导出子模块,用于导出所述可重构计算阵列中全部寄存器中的调试数据。

图8示意性示出了根据本发明实施例的导出模块630的框图。

根据本发明实施例,所述处理器还包括缓冲单元。如图8所示,该导出模块630包括缓冲子模块810和第三导出子模块820。

缓冲子模块810,例如执行上文参考图5所描述的操作s510,用于将所述至少一个处理单元对应的寄存器中的调试数据缓冲至所述缓冲单元中。

第三导出子模块820,例如执行上文参考图5所描述的操作s520,用于响应于读取指令,导出所述缓冲单元中的多个调试数据。

图9示意性示出了根据本发明另一实施例的处理器调试系统900的框图。

如图9所示,该系统900在前述实施例的基础上,还包括复位模块910、第一切换模块920、第一配置模块930、第二配置模块940以及第二切换模块950。

复位模块910,例如执行上文参考图4所描述的操作s410,用于复位所述可重构计算阵列。

第一切换模块920,例如执行上文参考图4所描述的操作s420,用于将所述处理器切换为调试模式。

第一配置模块930,例如执行上文参考图4所描述的操作s430,用于响应于第一配置指令,配置数据导出模式为单寄存器模式或者多寄存器模式。

第二配置模块940,例如执行上文参考图4所描述的操作s440,用于响应于第二配置指令,配置所述可重构计算阵列的处理逻辑。

第二切换模块950,例如执行上文参考图4所描述的操作s450,用于将所述处理器的调试模式切换为正常工作模式。

根据本发明实施例,所述导出模块630包括第四导出子模块,用于导出至少一个时钟周期下的多个所述寄存器的调试数据,以使得用于调试所述处理器的调试主机能够基于所述调试数据,绘制至少一个波形图,其中,所述波形图包括以对应于所述计算阵列的行、列和所述调试数据构成的三个维度的数据映射于空间直角坐标系的波形图。

可以理解的是,接收模块610、控制模块620、导出模块630、第一控制子模块710、第二控制子模块720、第一导出子模块、第二导出子模块、缓冲子模块810、第三导出子模块820、复位模块910、第一切换模块920、第一配置模块930、第二配置模块940、第二切换模块950以及第四导出子模块可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本发明的实施例,接收模块610、控制模块620、导出模块630、第一控制子模块710、第二控制子模块720、第一导出子模块、第二导出子模块、缓冲子模块810、第三导出子模块820、复位模块910、第一切换模块920、第一配置模块930、第二配置模块940、第二切换模块950以及第四导出子模块中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(fpga)、可编程逻辑阵列(pla)、片上系统、基板上的系统、封装上的系统、专用集成电路(asic),或可以以对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式的适当组合来实现。或者,接收模块610、控制模块620、导出模块630、第一控制子模块710、第二控制子模块720、第一导出子模块、第二导出子模块、缓冲子模块810、第三导出子模块820、复位模块910、第一切换模块920、第一配置模块930、第二配置模块940、第二切换模块950以及第四导出子模块中的至少一个可以至少被部分地实现为计算机程序模块,当该程序被计算机运行时,可以执行相应模块的功能。

图10示意性示出了根据本发明实施例的可以用于处理器调试方法和系统的电子设备1000的框图。

如图10所示,用于处理器调试方法和系统的电子设备1000包括处理器1010、以及计算机可读存储介质1020。该电子设备1000可以执行上面参考图2~图5描述的方法,以实现处理器的调试。

具体地,处理器1010例如可以包括通用微处理器、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(asic)),等等。处理器1010还可以包括用于缓存用途的板载存储器。处理器1010可以是用于执行参考图2~图5描述的根据本发明实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。

计算机可读存储介质1020,例如可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,可读存储介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。可读存储介质的具体示例包括:磁存储装置,如磁带或硬盘(hdd);光存储装置,如光盘(cd-rom);存储器,如随机存取存储器(ram)或闪存;和/或有线/无线通信链路。

计算机可读存储介质1020可以包括计算机程序1021,该计算机程序1021可以包括代码/计算机可执行指令,其在由处理器1010执行时使得处理器1010执行例如上面结合图2~图5所描述的方法流程及其任何变形。

计算机程序1021可被配置为具有例如包括计算机程序模块的计算机程序代码。例如,在示例实施例中,计算机程序1021中的代码可以包括一个或多个程序模块,例如包括1021a、模块1021b、……。应当注意,模块的划分方式和个数并不是固定的,本领域技术人员可以根据实际情况使用合适的程序模块或程序模块组合,当这些程序模块组合被处理器1010执行时,使得处理器1010可以执行例如上面结合图2~图5所描述的方法流程及其任何变形。

根据本发明的实施例,上述模块中的至少一个可以实现为参考图10描述的计算机程序模块,其在被处理器1010执行时,可以实现上面描述的相应操作。

根据本发明的实施例,接收模块610、控制模块620、导出模块630、第一控制子模块710、第二控制子模块720、第一导出子模块、第二导出子模块、缓冲子模块810、第三导出子模块820、复位模块910、第一切换模块920、第一配置模块930、第二配置模块940、第二切换模块950以及第四导出子模块中的至少一个可以实现为参考图10描述的计算机程序模块,其在被处理器1010执行时,可以实现上面描述的相应操作。

本领域技术人员可以理解,本发明的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本发明中。特别地,在不脱离本发明精神和教导的情况下,本发明的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本发明的范围。

尽管已经参照本发明的特定示例性实施例示出并描述了本发明,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本发明的精神和范围的情况下,可以对本发明进行形式和细节上的多种改变。因此,本发明的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1