可配置的调试方法和系统技术方案

技术编号:20242131 阅读:24 留言:0更新日期:2019-01-29 23:16
本发明专利技术涉及可配置的调试方法和系统。本发明专利技术提供了一种用于处理器的调试单元,所述调试单元对来自处理系统的多个组件的调试踪迹数据划分优先级。所述调试单元识别所述踪迹的优先级,并且按照优先级顺序处理所述踪迹以生成所述组件的状态信息。通过对来自所述处理系统的所述多个组件中的一个或多个的踪迹的处理划分优先级,所述调试单元可以提供有关所述组件的运行的目标更明确的状态信息。所述调试单元另外可以独立于所述处理系统的其余部分而被供电,并且可以将调试踪迹数据存储在踪迹控制缓冲区处,所述踪迹控制缓冲区是由所述处理系统在正常操作期间采用的存储器资源的一部分。

【技术实现步骤摘要】
可配置的调试方法和系统
技术介绍
为了提高处理性能并检测程序设计错误,许多处理器包括调试组件,所述调试组件在程序执行期间生成状态信息(被称为调试踪迹数据)。调试踪迹数据反映在其生成时处理器的不同组件的状态。调试组件可以是可编程的,使得调试踪迹数据响应于由程序员定义的标准而生成。程序员可以采用调试器来读取和分析所生成的踪迹数据,并且基于分析而调节程序的设计。然而,传统的调试架构不够灵活,并且在正常操作期间可能会不利地影响处理器的性能。附图说明通过参考附图,可以更好地理解本公开,并且其许多特征和优点对于本领域技术人员而言将变得显而易见。在不同附图中使用相同的参考符号表示相似或相同的项目。图1是根据一些实施方案的包括调试单元的处理系统的方框图,所述调试单元识别来自处理系统的多个组件的调试踪迹数据的优先级。图2是根据一些实施方案的图1的调试单元的实例,所述调试单元识别来自处理系统的多个组件的调试踪迹数据的不同优先级。图3是根据一些实施方案的图1的调试单元的实例,所述调试单元从与向处理系统的处理器核心供应电压的功率域分开的功率域接收电压。图4是根据一些实施方案的图1的调试单元的实例,所述调试单元将调试单元的踪迹控制缓冲区的一部分分配作为用于处理系统的组件的存储器。图5是示出根据一些实施方案的用于识别来自处理系统的多个组件的调试踪迹数据的优先级的方法的流程图。具体实施方式图1-5示出了用于处理器的调试架构,所述处理器通过识别踪迹的优先级并按照优先级顺序处理所述踪迹来生成组件的状态信息而对来自处理系统的多个组件的调试踪迹数据(又被称为踪迹)划分优先级。通过对来自处理系统的多个组件中的一个或多个的踪迹的处理划分优先级,调试单元可以提供有关组件的运行的目标更明确的状态信息。此外,在一些实施方案中,调试组件放置在与向处理系统的处理器核心供应电压的功率域分开的专用功率域中,使得可以独立于处理系统的其余部分来对调试系统供电,从而降低处理器的总功耗。此外,在一些实施方案中,调试单元将踪迹存储在踪迹控制缓冲区处,所述踪迹控制缓冲区是由处理系统在正常操作期间采用的存储器资源的一部分。因此,可以在调试操作期间将存储器资源分配作为踪迹缓冲区,并且在处理系统的正常(非调试)操作期间也可以将所述存储器资源采用作为存储器。处理系统因此可以更有效地利用其存储器资源。为了通过实例来说明,程序员可以基于来自处理系统的组件的踪迹而从调试单元收集状态信息,以更好地理解软件对处理器的各种组件的影响。基于状态信息,程序员可以针对特定处理系统的组件优化软件。例如,在处理软件的过程中,处理器核心、预取器、高速缓存控制器和存储器控制器可以生成含有与当前工作负载有关的信息的踪迹并且向调试单元发送所述踪迹。调试单元从各种组件接收踪迹,并且向外部调试器生成组件中的每一个的状态信息,所述外部调试器识别软件代码和所述组件的性能信息的问题。性能信息可以例如指示高速缓存处的高速缓存缺失率高于阈值水平,或软件中的特定例程对存储器控制器造成了压力。程序员可以使用性能信息来考虑处理系统的性能特征,并且调节软件以更有效地利用处理系统的组件。然而,常规调试单元并未对从处理器的其他组件向调试单元提供踪迹的顺序划分优先级或者并未控制所述顺序,并且因此无法有效地从特定组件产生踪迹。为了促进对从处理器的组件中的一个或多个提供踪迹划分优先级,本文描述的调试系统向踪迹中的每一个分派优先级并且按照优先级顺序处理所述踪迹。此外,常规调试单元从电压源接收电压,所述电压源还向处理器的处理器核心供应电压。因此,当处理器核心接收电压时,甚至是在调试单元尚未被激活来执行调试功能的情况下,常规调试单元也处于“始终接通”状态,从而导致不必要的功耗。在一些实施方案中,本文描述的调试系统从与向处理器的处理器核心供应电压的电压源分开的电压源接收电压。通过从单独的电压源接收电压,调试系统可以在调试功能被激活时选择性地向调试单元施加电压,从而使得处理器能够在调试功能未被激活时节省功率。另外,常规调试单元将踪迹存储在专门分配来存储踪迹的踪迹控制缓冲区处。当存储在踪迹控制缓冲区处的踪迹数据的量下降到第一阈值以下时,不会使用踪迹控制缓冲区处的可用存储器,从而导致存储器的使用效率低下。相反,当存储在踪迹控制缓冲区处的踪迹数据的量高于第二阈值时,常规调试单元不会从处理系统的存储器模块分配除了踪迹控制缓冲区之外的存储器。在一些实施方案中,当存储在踪迹控制缓冲区处的踪迹数据的量下降到第一阈值量以下时,调试单元会分配踪迹控制缓冲区的一部分。在一些实施方案中,当存储在踪迹控制缓冲区处的踪迹数据的量超过第二阈值量时,调试单元会分配存储有关处理器的组件的数据的存储器模块的一部分来存储踪迹数据。图1示出了处理系统100,所述处理系统包括处理器110和外部调试器125。处理器110包括调试单元120,所述调试单元对来自处理器110的多个组件130、132、134、136的踪迹划分优先级,并且从独立于向处理器110的处理器核心152供应电压的处理器核心电压155的调试单元电压126接收电压。处理器110通常被配置来执行呈计算机程序的形式组织的指令集,以便于代表电子装置执行任务。因此,处理器110可以用在各种电子装置中的任一种中,诸如台式或膝上型计算机、服务器、智能手机、平板计算机、游戏控制台等等。为了促进对在处理器110处执行的软件的详细故障排除,处理系统100包括外部调试器125。外部调试器125被配置来相对于处理器110的硬件和/或固件特征分析由外部用户调用的软件程序或例程。外部调试器125被配置来响应于外部用户或调试程序在外部调试器125处发起调试会话而激活调试单元120。外部调试器125接收在处理器110的调试单元120处收集和处理的调试数据,并且分析所述调试数据以提供有关处理器110在其执行软件程序或例程的指令时的性能的信息。为了促进指令执行,处理器110包括处理器核心152和存储器150。处理器核心152被配置来连同存储器150和多个组件130、132、134、136一起执行来自执行软件的指令。多个组件130、132、134、136可以包括一个或多个高速缓存控制器、高速缓存、预取器、算术逻辑单元、加载/存储单元、存储器控制器、处理器核心以及存储器。在一些实施方案中,处理器110的模块中的每一个形成在同一个半导体管芯上,并且在一些实施方案中,组件130、132、134、136中的一些形成在同一个半导体管芯上以形成处理器110的至少一部分,并且存储器150形成在不同的半导体管芯上并且经由一根或多根总线或信号线连接至处理器110。在一些实施方案中,存储器150的至少一部分形成在与处理器110的组件相同的半导体管芯上。在一些实施方案中,组件1-N(130、132、134、136)中的一个或多个是被配置成结合存储器150一起工作的高速缓存。在这类实施方案中,高速缓存(组件1130)和存储器150各自都是通常被配置来存储数据的存储器装置,并且因此可以是随机存取存储器(RAM)存储器模块、非易失性存储器装置(例如,快闪存储器)等等。如本文进一步所描述,高速缓存和存储器150形成处理器110的存储器层次。此外,处理器110的存储器层次可以包括本文档来自技高网...

【技术保护点】
1.一种方法,所述方法包括:识别来自处理器的多个组件的调试踪迹数据的优先级;基于所述优先级而向所述处理器的调试单元提供所述调试踪迹数据;以及在所述调试单元处按照接收所述调试踪迹数据的顺序来处理所述调试踪迹数据,以生成与所述处理器的所述多个组件相关的状态信息。

【技术特征摘要】
1.一种方法,所述方法包括:识别来自处理器的多个组件的调试踪迹数据的优先级;基于所述优先级而向所述处理器的调试单元提供所述调试踪迹数据;以及在所述调试单元处按照接收所述调试踪迹数据的顺序来处理所述调试踪迹数据,以生成与所述处理器的所述多个组件相关的状态信息。2.如权利要求1所述的方法,其还包括:在与向所述处理器的处理器核心施加电压的功率域分开的功率域处向所述调试单元施加电压。3.如权利要求2所述的方法,其还包括响应于激活调试功能而激活所述调试单元。4.如权利要求1所述的方法,其还包括:将所述调试踪迹数据存储在踪迹控制缓冲区处;以及将踪迹控制缓冲区的至少一部分分配作为用于所述处理器的组件的存储器。5.如权利要求1所述的方法,其还包括:响应于所述调试单元的踪迹控制缓冲区存储超过阈值量的调试踪迹数据,分配所述处理器的高速缓存的一部分来存储调试踪迹数据。6.如权利要求1所述的方法,其中所述优先级指示循环顺序。7.如权利要求1所述的方法,其中所述优先级是基于从所述多个组件中的一个或多个接收的调试踪迹数据的量或特征。8.如权利要求7所述的方法,其中所述优先级是基于所述调试踪迹数据超过阈值的吞吐量。9.一种方法,所述方法包括:向调试单元提供来自处理器的第一组件的第一调试踪迹数据;向所述调试单元提供来自所述处理器的第二组件的第二调试踪迹数据;基于仲裁协议而在所述调试单元处按照顺序接收所述第一调试踪迹数据和所述第二调试踪迹数据;以及在所述调试单元处按照接收所述第一调试踪迹数据和所述第二调试踪迹数据的所述顺序来处理所述第一调试踪迹数据和所述第二调试踪迹数据,以生成与所述第一组件和所述第二组件相关的状态信息。10.如权利要求9所述的方法,其还包括:从与向所述处理器的处理器核心供应电压的功率域分开的功率域向所述调试单元供应电压。11.如权...

【专利技术属性】
技术研发人员:毛晟
申请(专利权)人:超威半导体上海有限公司
类型:发明
国别省市:上海,31

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

1