DMA设备的实时调试支持及其方法技术

技术编号:2845740 阅读:185 留言:0更新日期:2012-04-11 18:40
一种数据处理系统(10),具有调试模块(26),该调试模块选择性地生成专用于系统中直接存储器访问(DMA)控制器设备(16)的一个或多个调试消息。提供启动哪个DMA调试消息的控制寄存器(70)。提供DMA传输活动的起始和终止,包括次循环迭代何时开始和完成。在调试消息中还可包括延迟信息,该延迟信息表示每一DMA传输的通道请求和实际的请求发起间的系统延迟。调试消息之一在控制寄存器(80)的控制之下提供预定DMA通道的周期性状态。至少一个调试消息实现观察点功能,例如指示传输何时开始或终止。调试模块可集中于系统中或者分布于每一预定系统单元中。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及数据处理系统,并且更具体地,涉及数据处理系统中的测试与调试特征。
技术介绍
数据处理系统具有当作系统通信高速通道的一个或多个总线。该一个或多个总线在由时钟周期定义的时间段期间用于传输地址、数据和/或控制信息。在文献中记录了应用各种技术检测数据处理系统中电路的功能和校验与验证执行软件的功能,称为软件程序调试。测试方法的关键部分是获得数据处理系统各部分的外部可视性,例如寄存器的内容和系统操作的结果。数据处理系统外部的测试与调试设备用于监视由系统的一个或多个总线传送的地址值、数据和控制信息。典型的数据处理系统使用称为直接存储器访问(DMA)的技术。利用直接存储器访问,可以最少地使用中央处理器(CPU)在输入/输出设备和存储器之间直接传送信息。从而,DMA控制器可用于在数据处理系统中从源向目标传送信息流。片上系统(SOC)设计通常包括多个设备和总线,这些设备和总线能够利用实时技术产生调试消息。例如,称为IEEE ISTO 5001或者Nexus调试标准的IEEE标准是已经建立的实时调试标准,它利用多个片上设备支持实时调试消息产生。Nexus调试标准规定了一种机制,为外部记录重建工具标识系统中预定的操作条件。然而,此调试信息通常限于监视从系统存储器读取的或向系统存储器写入的信息和记录执行的软件执行流的变化,软件执行流例如为最后采用的分支以来执行的大量顺序指令。当前调试处理器功能提供非常有限数量的有关DMA活动的信息。附图说明本专利技术通过示例说明并且不限于附图,其中相同的引用标记表示相同的元件,其中图1以框图形式表示根据本专利技术一个实施例的数据处理系统;图2以框图形式表示根据本专利技术的替换数据处理系统;图3以时序图形式表示作为时间的函数的通道信息传送;图4以示意图形式表示第一传送消息的格式;图5以示意图形式表示第二传送消息的格式;图6以示意图形式表示第三传送消息的格式;图7以示意图形式表示第四传送消息的格式;图8以示意图形式表示第五传送消息的格式;图9以布局图形式表示用于DMA消息传递的控制寄存器;以及图10以布局图形式表示用于周期性状态消息传递的控制寄存器。技术人员明白,图中的各元件仅出于简明的目的说明,并不一定依比例绘制。例如,图中一些元件的尺度可能相对于其它元件夸大,以有助于提高对于本专利技术实施例的理解。具体实施例方式此处使用的术语“总线”指多个信号或导体,可用于传送一种或者多种类型的信息,例如数据、地址、控制或状态。当涉及使信号、比特或者类似装置呈现其逻辑真或者逻辑假状态时,分别使用“有效”(assert)和“否定”。如果逻辑真状态是逻辑水平一,则逻辑假状态是逻辑水平零。进一步地,此处说明的存储器可为任何类型的存储器,例如只读存储器(ROM)、随机存取存储器(RAM)、静态随机存取存储器(SRAM)、非易失性存储器(例如,闪存)以及MRAM等等。图1以框图形式表示提供实时DMA专用调试功能的数据处理系统10。数据处理系统10允许专用于DMA总线主控器的一类实时调制消息类型,这些消息表明关键的状态参数。数据处理系统10因此经由DMA单元的实时消息提供改进的调试信息源。在一种形式中,提供多导体系统总线12在所有系统设备间进行通信。处理器14双向连接至系统总线12。尽管通过斜线将此处说明的双向总线表示为多个导体总线,但是应当容易地理解,还可实现单个导体总线和/或多个单向总线。同样双向连接至系统总线12的是DMA控制器设备16、存储器18、存储器20、外围设备22、外围设备24、调试模块26和总线仲裁器28。调试模块26在其输出端提供用于提供调试信息的调试端口。DMA控制设备16和处理器14的每一个具有输出端,用于向调试模块26提供多比特状态信号。处理器14和DMA控制器设备16的每一个分别具有耦合至总线仲裁器28的多比特双向总线。外围设备22的输出端连接至DMA控制器设备16,以提供标记为DMA_REQ的DMA请求信号。类似地,外围设备24的输出端连接至DMA控制器设备16,以提供标记为DMA_REQ的DMA请求信号。尽管在图1中将此处说明的系统单元表示为直接连接至系统总线12,但是应当理解,诸如驱动器、缓冲器等的耦合电路(未示出)可位于系统总线12和说明的系统单元之间。在操作中,数据处理系统10利用处理器14执行预定的指令集。信息存储在存储器18或存储器20之一中。应当理解,可以仅实现一个存储器或者其它数量的存储器,并且连接至系统总线12。DMA控制器设备16用于控制从数据处理系统10中的源向数据处理系统10中的目标传送信息流。数据处理系统10中的信息在通道中传送,该信息是在源与目标间关联的流。数据处理系统10中的外围设备,例如外围设备22或者外围设备24,可为任何种类的电路设备,但是通常通过不向总线仲裁器28请求系统总线12的控制而充当系统总线12的从设备。不管外围设备为何种设备,这些外围设备形成系统存储器映射的一部分。总线仲裁器28用于在数据处理系统10中请求控制系统总线12的任何设备间仲裁系统总线12的控制。大量常规仲裁算法中的任一种可用于实现数据处理系统10。调试模块26用于提供与DMA控制器设备16关联的一个或多个实时调试消息,如下所述。换言之,调试模块26通过从DMA控制器设备16和处理器14接收状态信号监视DMA控制器设备16,并且生成下述的实时调试消息以输出至调试端口。图2所示的是图1的数据处理系统10配置的替换实施例。系统总线30双向连接至DMA控制器44和预定数量的其它系统单元,例如系统单元40和系统单元42。系统单元40和系统单元42可为任何类型的总线主控器或总线从设备。系统单元40、DMA控制器44和系统单元42的每一个分别双向连接至调试模块32、调试模块34和调试模块36。每一调试模块32、调试模块34和调试模块36的输出端连接至调试端口逻辑38。调试端口逻辑38提供用于提供实时调试消息的调试端口。如图2中的点线所示,任意数量的调试模块和系统单元可耦合在系统总线30和调试端口逻辑38之间。在替换形式中,按照某种方式划分调试模块的功能,以针对耦合至系统总线30的每一系统单元分配调试模块,包括DMA控制器44。调试端口逻辑38从每一调试模块32、调试模块34和调试模块36接收消息,并且在调试端口逻辑处提供这些消息。在一种形式中,将调试端口逻辑38的逻辑配置为在时间顺序的基础上提供调试消息,其中按照从各种调试模块接收消息的顺序输出这些消息。然而,可使用其它逻辑配置实现调试输出的其它顺序。图3中所示的是表明图1或图2的系统实施例中通道上传输活动的时序图,通道由X表示。假设通道X是与源和目标关联的任一系统实施例中的预定说明性数据流。DMA控制器设备16和DMA控制器44的每一个被配置为支持多个通道,以从源向目标传送信息流。当从任一源或目标设备接收到DMA请求消息时,例如DMA_REQ,产生通道中的传输。例如,在图3中示出了三个分别的请求。每一请求具有与其关联的延迟,例如延迟50与第一请求关联,延迟52与第二请求关联,延迟54与第三请求关联。每一延迟的长度不同,这是由于多种系统因素造成的,例如由总线仲裁器28确定的DMA控制器设备16的当前优先级和由DMA控制器设备16的本文档来自技高网...

【技术保护点】
一种系统,包括:通信总线;耦合至所述通信总线的直接存储器访问(DMA)设备,所述直接存储器访问设备控制信息通道,所述信息通道的每一通道经由通道传输在所述系统中从源向目标传输信息;以及耦合至所述直接存储器访问设备的调试 控制电路,所述调试控制电路提供调试消息,该调试消息标识至少一个预定通道的DMA通道传输边界的存在。

【技术特征摘要】
【国外来华专利技术】US 2004-1-23 10/764,1101.一种系统,包括通信总线;耦合至所述通信总线的直接存储器访问(DMA)设备,所述直接存储器访问设备控制信息通道,所述信息通道的每一通道经由通道传输在所述系统中从源向目标传输信息;以及耦合至所述直接存储器访问设备的调试控制电路,所述调试控制电路提供调试消息,该调试消息标识至少一个预定通道的DMA通道传输边界的存在。2.权利要求1所述的系统,其中所述调试控制电路进一步包括可编程控制装置,用于选择将由所述调试消息标识通道传输边界存在的、所述直接存储器访问设备控制的那个信息通道。3.权利要求1所述的系统,其中由所述调试控制电路提供的所述调试消息之一表示所述至少一个预定通道的通道传输已经开始。4.权利要求3所述的系统,所述调试消息之一进一步表示所述至少一个预定通道的状态参数。5.权利要求4所述的系统,其中所述状态参数包括以下之一所述至少一个预定通道的通道优先级,所述至少一个预定通道的利用因子,以及对于所述至少一个预定通道、之前是否发生传输错误。6.权利要求3所述的系统,其中所述调试消息之一进一步表示与所述通道传输关联的时间延迟,该时间延迟表示所述直接存储器访问设备接收到开始传输信息的请求和实际传输所述信息之间的系统延迟。7.权利要求1所述的系统,其中由所述调试控制电路提供的所述调试消息之一表明所述至少一个预定通道的通道传输已经终止。8.权利要求1所述的系统,其中由所述调试控制电路提供的所述调试消息之一表示所述至少一个预定通道的多个次循环迭代中的每一个已经开始。9.权利要求1所述的系统,其中由所述调试控制电路提供的所述调试消息之一表示所述至少一个预定通道的多个次循环迭代中的每一个已经结束。10.权利要求1所述的系统,其中由所述调试控制电路提供的所述调试消息之一表示所述至少一个预定通道的周期性状态。11.权利要求1所述的系统,进一步包括多个系统单元,所述多个系统单元的每一个耦合至所述通信总线;其中所述调试控制电路进一步包括用于提供所述调试消息的多个调试模块,所述多个调试模块的每一个耦合至所述多个系统单元中预定的一个;以及耦合至所述多个调试模块的调试端口逻辑,用于向调试端口提供所述调试消息。12.一种系统,包括通信总线;耦合至所述通信总线的直接存储器访问(DMA)设备,所述直接存储器访问设备控制信息通道,信息通道的每一通道经由通道传输在所述系统中从源向目标传输信息;以及耦合至所述直接存储器访问设备的调试控制电路,所述调试控制电路提供调试消息,调试消息周期性地提供至少一个预定通道的至少一个状态参数。13.权利要求12所述的系统,其中所述至少一个状态参数进一步包括以下之一所述至少一个预定通道的通道优先级,所述至少一个预定通道的利用因子,以及对于所述至少一个预定通道、之前是否发生传输错误。14.权利要求12所述的系统,其中所述调试控制电路另外提供调试消息,每一调试消息表示通道传输已经开始。15.权利要求12所述的系统,其中所述调试控制电路另外提供调试消息,每一调试消息表示通道传输已经终止。16.权利要求12所述的系统,其中所述调试控制电路是可编程的,为每一信息通道启动所述调试消息的选择性生成。17.权利要求12所述的系统,其中所述调试控制电路进一步生成观察点指示符,该观察点指示符是所述至少一个预定通道的预定观察点条件,所述预定观察点条件是基于所述直接存储器访问设备的活动的观察点条件。18.权利要求17所述的系统,其中所述调试控制电路进一步生成多个观察点指示符,每个观察点指示符分别指示不同的一个信息通道的观察点条件。19.权利要求12所述的系统,进一步包括用于存储控制信号的控制寄存器,该控制信号启动和禁止提供调试消息,该调试消息周期性地提供所述至少一个预定通道的至少一个状态参数。20.权利要求12所述的系统,其中所述直接存储器访问设备在相同通道中实现嵌套的信息传输,包括形成主循环迭代的多个次循环迭代。21.权利要求12所述的系统,其中所述每个调试消息包括具有预定比特字段的多比特消息,这些预定比特字段包括消息类型字段、通道标识字段以及状态信息字段。22.一种系统,包括通信总线;耦合至所述通信总线的直接存储器访问(DMA)设备,所述直接存储器访问设备控制多个信息通道,信息通道的每一通道经由通道传输在所述系统中从源向目标传输信息;以及耦合至所述直接存储器访问设备的调试控制电路,所述调试控制电路通过在每通道基础上的编程而选择性地提供与所述直接存储器访问设备的操作参数相关的调试消息。23.权利要求22所述的系统,其中所述直接存储器访问设备的操作参数包括关于以下中至少一个的信息是否出现传输边界以及周期性状态信息。24.权利要求22所述的系统,其中所述调试控制电路进一步提供至少一个调试消息,该调试消息包括与所述直接存储器访问设备的系统延迟相关的延迟信息,在所述直接存储器访问设备接收到通道传输请求后开始通道传...

【专利技术属性】
技术研发人员:威廉C莫耶
申请(专利权)人:飞思卡尔半导体公司
类型:发明
国别省市:US[美国]

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

1