在电能转换期间的数字信号处理器调试.pdf

上传人:54 文档编号:974226 上传时间:2018-03-22 格式:PDF 页数:28 大小:1.38MB
返回 下载 相关 举报
摘要
申请专利号:

CN200780041118.7

申请日:

2007.11.13

公开号:

CN101681191A

公开日:

2010.03.24

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 1/32申请日:20071113|||公开

IPC分类号:

G06F1/32; G06F11/36

主分类号:

G06F1/32

申请人:

高通股份有限公司

发明人:

卢奇安·科德雷斯库; 威廉·C·安德森; 苏雷什·文库马汉提; 路易斯·阿奇列·詹尼尼; 马洛耶库马尔·皮拉; 陈旭峰

地址:

美国加利福尼亚州

优先权:

2006.11.15 US 11/560,323

专利代理机构:

北京律盟知识产权代理有限责任公司

代理人:

刘国伟

PDF下载: PDF下载
内容摘要

本发明提供包括(但不限于)用于处理通信(例如,CDMA)系统中的传输的数字信号处理器的设计及使用的技术。一种方法及系统与所述数字信号处理器的电能转换序列相关联地控制在调试寄存器与数字信号处理器过程之间传送数据。在数字信号处理器中,调试寄存器与核心处理器过程及调试过程相关联。控制位控制在所述调试寄存器、所述核心处理器过程与所述调试过程之间传送数据。所述控制位在电能转换序列的事件中防止在所述调试寄存器、所述核心处理器过程与所述调试过程之间传送数据。控制位还在所述调试寄存器与所述核心处理器过程或所述调试过程之间传送数据的事件中防止所述数字信号处理器的电能转换序列。

权利要求书

1.  一种用于与数字信号处理器的电能转换序列相关联地在多个调试寄存器与多个数字信号处理器过程之间传送数据的方法,其包含:
使多个调试寄存器与核心处理器过程及调试过程相关联;
将在多个调试寄存器内的至少一个寄存器控制位设置为防止传送值,以用于在所述数字信号处理器内发生电能转换序列时防止在所述多个调试寄存器之间及在所述核心处理器过程与所述调试过程之间传送数据;及
设置与所述多个调试寄存器内相关联的至少一个电源控制位以防止一防止电能转换值,以用于在所述多个调试寄存器与所述核心处理器过程或所述调试过程之间传送数据时防止所述数字信号处理器的电能转换序列。

2.
  根据权利要求1所述的方法,其中当发生通电序列时,防止传送值防止在所述多个调试寄存器、所述核心处理器过程与所述调试过程之间传送数据。

3.
  根据权利要求1所述的方法,其进一步包含:
将所述至少一个寄存器控制位设置为所述防止传送值,以用于在所述数字信号处理器发生断电序列时防止在所述多个调试寄存器与所述核心处理器过程及所述调试过程之间传送数据;及
将所述至少一个电源控制位设置为所述防止电能转换值,以用于在所述多个调试寄存器与所述核心处理器过程或所述调试过程之间传送数据时防止所述数字信号处理器的所述断电序列。

4.
  根据权利要求1所述的方法,其中所述调试寄存器包含多个调试配置寄存器,且进一步包含:
将所述至少一个寄存器控制位设置为所述防止传送值,以用于在所述数字信号处理器发生所述电能转换序列时防止在所述多个调试配置寄存器与所述核心处理器过程及所述调试过程之间传送数据;及
将所述至少一个电源控制位设置为所述防止电能转换值,以用于在所述多个调试配置寄存器与所述核心处理器过程或所述调试过程之间传送数据时防止所述数字信号处理器的所述电能转换序列。

5.
  根据权利要求1所述的方法,其进一步包含确认所述调试过程为可信的调试过程的步骤。

6.
  根据权利要求1所述的方法,其中所述防止传送值包含无效状态值,且进一步包含响应于所述无效状态值而在所述核心处理器的通电序列的事件中使所述调试寄存器与所述核心处理器过程或所述调试过程之间的读取/写入传送无效的步骤。

7.
  根据权利要求1所述的方法,其中所述防止传送值包含无效状态值,且进一步包含响应于所述无效状态值而在所述核心处理器的断电序列的事件中使所述调试寄存器与所述核心处理器过程或所述调试过程之间的读取/写入传送无效的步骤。

8.
  根据权利要求1所述的方法,其中所述防止电能转换值包含中断停用值,且进一步包含响应于所述中断停用值而在所述调试寄存器与所述核心处理器过程或所述调试过程之间的读取/写入传送期间停用电源崩溃的步骤。

9.
  根据权利要求1所述的方法,其进一步包含将所述至少一个寄存器控制位设置为准许传送值,以用于在所述数字信号处理器发生通电序列之后准许在所述多个调试寄存器与所述核心处理器过程及所述调试过程之间传送数据。

10.
  根据权利要求1所述的方法,其进一步包含将所述至少一个电源控制位设置为准许电能转换值以用于在所述多个调试寄存器与所述核心处理器过程或所述调试过程之间传送数据的事件之后准许所述数字信号处理器的电能转换序列的步骤。

11.
  一种数字信号处理器调试系统,其用于在与数字信号处理器的电能转换序列相关联地在多个调试寄存器与多个数字信号处理器过程之间传送数据时与所述数字信号处理器相关联而操作,所述系统包含:
多个调试寄存器,其与核心处理器过程及调试过程相关联;
至少一个寄存器控制位,其建立于所述多个调试寄存器内,以用于控制在所述多个调试寄存器、所述核心处理器过程与所述调试过程之间传送数据;
所述至少一个寄存器控制位能够被设置为防止传送值,以用于在所述数字信号处理器发生电能转换序列的事件中防止在所述多个调试寄存器与所述核心处理器过程及所述调试过程之间传送数据;且
至少一个电源控制位进一步能够被设置以防止一防止电能转换值,以用于在所述多个调试寄存器与所述核心处理器过程或所述调试过程之间传送数据的事件中防止所述数字信号处理器的电能转换序列。

12.
  根据权利要求11所述的数字信号处理器调试系统,其进一步包含电路及指令,所述电路及指令用于将所述至少一个寄存器控制位设置为防止传送值,以用于在所述数字信号处理器发生通电序列的事件中防止在所述多个调试寄存器与所述核心处理器过程及所述调试过程之间传送数据。

13.
  根据权利要求11所述的数字信号处理器调试系统,其进一步包含:
至少一个寄存器控制位,其用于被设置为防止传送值,以用于在所述数字信号处理器发生断电序列的事件中防止在所述多个调试寄存器与所述核心处理器过程及所述调试过程之间传送数据;及
至少一个电源控制位,其用于被设置为防止电能转换值,以用于在所述多个调试寄存器与所述核心处理器过程或所述调试过程之间传送数据的事件中防止所述数字信号处理器的断电序列。

14.
  根据权利要求11所述的数字信号处理器调试系统,其中所述调试寄存器包含多个调试配置寄存器,且进一步包含:
至少一个寄存器控制位,其用于被设置为防止传送值,以用于在所述数字信号处理器发生电能转换序列的事件中防止在所述多个调试配置寄存器与所述核心处理器过程及所述调试过程之间传送数据;及
至少一个电源控制位,其用于被设置为防止电能转换值,以用于在所述多个调试配置寄存器与所述核心处理器过程或所述调试过程之间传送数据的事件中防止所述数字信号处理器的电能转换序列。

15.
  根据权利要求11所述的数字信号处理器调试系统,其进一步包含可信的调试过程寄存器,所述调试过程寄存器用于在确认所述调试过程为可信的调试过程时提供至少一个可信的调试控制位。

16.
  根据权利要求11所述的数字信号处理器调试系统,其中所述防止传送值包含无效状态值且进一步包含电路及指令,所述电路及指令用于响应于所述无效状态值而在所述核心处理器的通电序列的事件中使所述调试寄存器、所述核心处理器过程与所述调试过程之间的读取/写入传送无效。

17.
  根据权利要求11所述的数字信号处理器调试系统,其中所述防止传送值包含无效状态值且进一步包含电路及指令,所述电路及指令用于响应于所述无效状态值而在所述核心处理器的断电序列的事件中使所述调试寄存器与所述核心处理器过程或所述调试过程之间的读取/写入传送无效。

18.
  根据权利要求11所述的数字信号处理器调试系统,其中所述防止电能转换值包含中断停用值且进一步包含电路及指令,所述电路及指令用于响应于所述中断停用值而在所述调试寄存器、所述核心处理器过程与所述调试过程之间的读取/写入传送期间停用电源崩溃。

19.
  根据权利要求11所述的数字信号处理器调试系统,将所述至少一个寄存器控制位设置为准许传送值,以用于在所述数字信号处理器发生通电序列之后准许在所述多个调试寄存器与所述核心处理器过程及所述调试过程之间传送数据。

20.
  根据权利要求11所述的数字信号处理器调试系统,其进一步包含指令及电路,所述指令及电路用于将所述至少一个电源控制位设置为准许电能转换值,以用于在所述多个调试寄存器与所述核心处理器过程或所述调试过程之间传送数据的事件之后准许所述数字信号处理器的电能转换序列。

21.
  一种用于支持个人电子装置而操作的数字信号处理器,所述数字信号处理器包含用于与所述数字信号处理器的电能转换序列相关联地在多个调试寄存器与多个数字信号处理器过程之间传送数据的装置,所述数字信号处理器包含:
用于在所述多个调试寄存器内建立至少一个寄存器控制位以用于控制在所述多个调试寄存器与核心处理器过程及调试过程之间传送数据的装置;
用于将所述至少一个寄存器控制位设置为防止传送值以用于在所述数字信号处理器发生电能转换序列的事件中防止在所述多个调试寄存器与所述核心处理器过程及所述调试过程之间传送数据的装置;及
用于设置至少一个电源控制位以防止一防止电能转换值以用于在所述多个调试寄存器与所述核心处理器过程或所述调试过程之间传送数据的事件中防止所述数字信号处理器的电能转换序列的装置。

22.
  根据权利要求21所述的数字信号处理器系统,其进一步包含用于将所述至少一个寄存器控制位设置为防止传送值以用于在所述数字信号处理器发生通电序列的事件中防止在所述多个调试寄存器与所述核心处理器过程及所述调试过程之间传送数据的装置。

23.
  根据权利要求21所述的数字信号处理器系统,其进一步包含:
用于将所述至少一个寄存器控制位设置为防止传送值以用于在所述数字信号处理器发生断电序列的事件中防止在所述多个调试寄存器与所述核心处理器过程及所述调试过程之间传送数据的装置;及
用于将所述至少一个电源控制位设置为防止电能转换值以用于在所述多个调试寄存器与所述核心处理器过程或所述调试过程之间传送数据的事件中防止所述数字信号处理器的断电序列的装置。

24.
  根据权利要求21所述的数字信号处理器系统,其中所述调试寄存器包含多个调试配置寄存器,且进一步包含:
用于将所述至少一个寄存器控制位设置为防止传送值以用于在所述数字信号处理器发生电能转换序列的事件中防止在所述多个调试配置寄存器与所述核心处理器过程及所述调试过程之间传送数据的装置;及
用于设置所述至少一个电源控制位以防止一防止电能转换值以用于在所述多个调试配置寄存器与所述核心处理器过程或所述调试过程之间传送数据的事件中防止所述数字信号处理器的电能转换序列的装置。

25.
  根据权利要求21所述的数字信号处理器系统,其进一步包含用于确认所述调试过程为可信的调试过程的装置。

26.
  根据权利要求21所述的数字信号处理器系统,其中所述防止传送值包含无效状态值,且进一步包含用于响应于所述无效状态值而在所述核心处理器的通电序列的事件中使所述调试寄存器与所述核心处理器过程或所述调试过程之间的读取/写入传送无效的装置。

27.
  根据权利要求21所述的数字信号处理器系统,其中所述防止传送值包含无效状态值,且进一步包含用于响应于所述无效状态值而在所述核心处理器的断电序列的事件中使所述调试寄存器与所述核心处理器过程或所述调试过程之间的读取/写入传送无效的装置。

28.
  根据权利要求21所述的数字信号处理器系统,其中所述防止电能转换值包含中断停用值,且进一步包含用于响应于所述中断停用值而在所述调试寄存器与所述核心处理器过程或所述调试过程之间的读取/写入传送期间停用电源崩溃的装置。

29.
  根据权利要求21所述的数字信号处理器系统,其进一步包含用于将所述至少一个寄存器控制位设置为准许传送值以用于在所述数字信号处理器发生通电序列之后准许在所述多个调试寄存器、所述核心处理器过程与所述调试过程之间传送数据的装置。

30.
  根据权利要求21所述的数字信号处理器系统,其进一步包含用于将所述至少一个寄存器控制位设置为准许电能转换值以用于在所述多个调试寄存器与所述核心处理器过程或所述调试过程之间传送数据的事件之后准许所述数字信号处理器的电能转换序列的装置。

31.
  一种计算机可用媒体,所述计算机可用媒体中包含有用于在数字信号处理器上处理用于调试多线程数字信号处理器的指令的计算机可读程序码装置,所述计算机可用媒体包含:
用于使多个调试寄存器与核心处理器过程及调试过程相关联的计算机可读程序码装置;
用于在所述多个调试寄存器内建立至少一个寄存器控制位以用于控制在所述多个调试寄存器与所述核心处理器过程及所述调试过程之间传送数据的计算机可读程序码装置;
用于将所述至少一个寄存器控制位设置为防止传送值以用于在所述数字信号处理器发生电能转换序列的事件中防止在所述多个调试寄存器与所述核心处理器过程及所述调试过程之间传送数据的计算机可读程序码装置;及
用于设置至少一个电源控制位以防止一防止电能转换值以用于在所述多个调试寄存器与所述核心处理器过程或所述调试过程之间传送数据的事件中防止所述数字信号处理器的电能转换序列的计算机可读程序码装置。

32.
  根据权利要求28所述的计算机可用媒体,其进一步包含:
用于将所述至少一个寄存器控制位设置为防止传送值以用于在所述数字信号处理器发生断电序列的事件中防止在所述多个调试寄存器与所述核心处理器过程及所述调试过程之间传送数据的计算机可读程序码装置;及
用于将所述至少一个电源控制位设置为防止电能转换值以用于在所述多个调试寄存器与所述核心处理器过程或所述调试过程之间传送数据的事件中防止所述数字信号处理器的断电序列的计算机可读程序码装置。

说明书

在电能转换期间的数字信号处理器调试
技术领域
本发明所揭示的标的物涉及(例如)可在数据通信及类似应用中得以使用的数据处理系统及过程。更确切地说,本发明涉及一种在数字信号处理器电能转换期间用于控制调试操作的新颖且改进的方法及系统。
背景技术
电信及其它类型的电子设备以及支持视频、复杂音频、视频会议及其它增强式软件应用日益涉及信号处理。信号处理需要复杂但重复算法中的快速数学计算及数据产生。许多应用需要实时计算,即,信号为时间的连续函数,所述信号必须被取样及转换为数字信号以用于数值处理。处理器必须在样本到达时执行对样本执行离散计算的算法。
数字信号处理器(DSP)的结构经最佳化以处置此些算法。良好信号处理引擎的特性包括快速灵活的算术计算单元、去往计算单元及来自计算单元的无约束数据流、计算单元中的经扩展的精度及动态范围、双地址产生器、有效程序定序及编程简易性。
DSP技术的一种有前途的应用包括例如码分多址(CDMA)系统的通信系统,所述码分多址(CDMA)系统支持用户之间经由卫星或地面链路进行的语音及数据通信以及文本消息传输及其它应用。CDMA技术在多址通信系统中的使用揭示于标题为“使用卫星或地面转发器的扩频多址通信系统”(″SPREAD SPECTRUM MULTIPLE ACCESSCOMMUNICATION SYSTEM USING SATELLITE OR TERRESTRIAL REPEATERS″)的第4,901,307号美国专利及标题为“CDMA蜂窝电信手机系统中用于产生波形的系统和方法”(″SYSTEM AND METHOD FOR GENERATING WAVEFORMS IN A CDMACELLULAR TELEHANDSET SYSTEM″)的第5,103,459号美国专利中,所述两个专利均被让渡给所主张的标的物的受让人。
CDMA系统通常经设计以符合一种或一种以上标准。此第一代中的一种标准为“用于双模式宽带扩频蜂窝系统的TIA/EIA/IS-95终端-基站兼容性标准”,在下文中被称为IS-95标准。IS-95CDMA系统能够传输语音数据及包数据。可更高效地传输包数据的较新一代标准是由名为“第三代合作伙伴计划”(3GPP)的协会提供且实施于包括3G TS25.211号、3G TS 25.212号、3G TS 25.213号及3G TS 25.214号档案的档案集合中,公众可容易地得到所述档案。在下文中将3GPP标准称为W-CDMA标准。
使用W-DCMA标准的复杂DSP操作软件(例如)需要稳固的开发工具。此些开发工具可包括用于码产生、整合、测试、调试及评估应用性能的工具。在开发及操作软件或例如高级电信应用的复杂DSP应用中,需要高级的但非侵入性的调试软件。亦即,调试软件应用不仅必须为足够稳固的以监视、测试及支持软件缺陷及操作问题的校正,而且其可在调试操作期间操作而不干扰核心处理器软件。否则,在此调试软件的使用期间,可能不会检测到或正确地检测到核心处理软件中的任何问题。
此些调试操作的一个方面涉及其动态地发生的能力。然而,此能力必须考虑到例如使用DSP执行调试操作的无线手机的装置必须省电。为了省电,DSP可频繁自动地关闭或变换成闲置操作模式。此外,当在关闭或闲置状态之后发生处理器的启动时,可能会发生DSP中的其它操作变化。确切地说,含有关于调试操作的数据的寄存器在调试操作期间可能动态地改变。在发生电能转换的情况下,可能会不利地影响数据寄存器读取及/或写入操作。
因此,需要以下一种方法及系统:其适应例如无线手机或便携电子装置DSP的DSP中的非侵入性DSP调试与省电的复杂且有时冲突的需求。
进一步需要以下一种方法及系统:其可在用于单个及选择性多线程调试操作的非侵入性调试过程的多线程DSP中操作,同时也在电源崩溃或其它电能转换期间用于保存调试配置寄存器数据。
发明内容
本发明揭示用于在包括多线程数字信号处理器的数字信号处理器中的数字信号处理器电能转换期间控制调试操作的技术,所述技术既改进数字信号处理器的操作又改进用于日益稳固的软件应用(包括在个人计算机、个人数字助理、无线手机及类似电子装置中操作的应用)的数字信号处理器指令的高效使用,而且增加相关联的数字处理器速度及服务质量。
根据所揭示的标的物的一个方面,一种方法及系统与数字信号处理器的电能转换序列相关联地控制在调试寄存器与数字信号处理器过程之间传送数据。在操作核心处理器内的核心处理器过程及调试机构内的调试过程的数字信号处理器中,本发明使调试寄存器与核心处理器过程及调试过程相关联。通过建立用于控制在调试寄存器、核心处理器过程与调试过程之间传送数据的至少一个寄存器控制位,所述方法及系统将控制位设置为在电能转换序列的事件中防止在调试寄存器、核心处理器过程与调试过程之间传送数据的防止传送值。通过设置所述一个控制位以防止-防止电能转换值,本发明在调试寄存器与核心处理器过程或调试过程之间传送数据的事件中防止数字信号处理器的电能转换序列。
通过本文中所提供的描述将明显看出所揭示的标的物的这些及其它优点,以及额外新颖特征。本发明内容的意图并非是对所主张的标的物的全面描述,而是提供对标的物的某些功能性的简短综述。在检查以下各图及详细描述后,此处所提供的其它系统、方法、特征及优点对于所属领域的技术人员而言将即为显而易见的。所有此些额外系统、方法、特征及优点意图包括于此描述内,在随附权利要求书的范围内。
附图说明
通过结合附图阅读下文阐述的详细描述,所揭示的标的物的特征、性质和优点可变得更加明显,图中相同参考符号在全文中对应地进行标识,且其中:
图1为可实施本实施例的通信系统的简化方框图;
图2说明用于实行本实施例的教示的DSP结构;
图3提供数字信号处理器的一个实施例的结构方框图,所述结构方框图提供所揭示的标的物的技术优点;
图4展示所揭示的标的物的调试机构与核心处理器之间的接口;
图5为可适用于数字信号处理器的操作模式(包括调试操作模式)的过程流程图;
图6描绘可适用于本发明的一个实施例的断点处理方案;
图7展示所揭示的标的物在通电转换期间的操作;及
图8说明所揭示的标的物在断电转换情形下的操作。
具体实施方式
用于在多线程数字信号处理器中的数字信号处理器电能转换期间控制调试操作的所揭示的标的物可应用于任何类型的可受益于此处所呈现的益处的多线程处理。一种此应用出现在电信中,且尤其在使用一个或一个以上数字信号处理电路的无线手机中。为了解释可如何使用此无线手机,图1提供通信系统10的简化方框图,通信系统10可实施所揭示的中断处理方法及系统的所呈现实施例。在发射器单元12处,通常成区块地将数据从数据源14发送至传输(TX)数据处理器16,传输数据处理器16格式化、编码及处理所述数据以产生一个或一个以上模拟信号。接着将模拟信号提供至发射器(TMTR)18,发射器18调制、滤波、放大及上变频转换基带信号以产生经调制信号。接着经由天线20将经调制信号传输至一个或一个以上接收器单元。
在接收器单元22处,由天线24接收所传输信号且将其提供至接收器(RCVR)26。在接收器26内,将所接收信号放大、滤波、下变频转换、解调及数字化以产生同相(I)及(Q)样本。接着由接收(RX)数据处理器28解码及处理样本以恢复所传输数据。以与发射器单元12处所执行的编码及处理互补的方式来执行接收器单元22处的解码及处理。接着将所恢复数据提供至数据汇30。
上文所描述的信号处理支持一个方向上的语音、视频、包数据、消息传输及其它类型的通信的传输。双向通信系统支持双向数据传输。然而,为了简单起见,图1中未展示用于另一方向的信号处理。通信系统10可为支持用户之间经由地面链路进行的语音及数据通信的码分多址(CDMA)系统、时分多址(TDMA)通信系统(例如,GSM系统)、频分多址(FDMA)通信系统或其它多址通信系统。在一特定实施例中,通信系统10为符合W-CDMA标准的CDMA系统。
图2说明可充当图1的传输数据处理器16及接收数据处理器28的DSP 40结构。我们强调,DSP 40仅表示可有效地使用此处所呈现的教示及概念的大量可能的数字信号处理器实施例中的一个实施例。因此,在DSP 40中,线程T0:T5(参考数字42至52)含有来自不同线程的指令集。电路54表示指令存取机构且用于获取线程T0:T5的指令。将用于电路54的指令排队到指令队列56中。指令队列56中的指令准备就绪以被发出到处理器管线66中(参见下文)。发出逻辑电路58可从指令队列56中选择单个线程(例如,线程T0)。读取所选线程的寄存器文件60,且将所读取数据发送至用于槽0:槽3的执行数据路径62。在此实例中,槽0:槽3提供本实施例中所使用的包分组组合。
来自执行数据路径62的输出去往寄存器文件写入电路64(也经配置以调节各个线程T0:T5),以用于返回来自DSP 40的操作的结果。因此,从电路54及其之前到寄存器文件写入电路64的数据路径形成处理管线66。本实施例可使用一使用具有高达六个线程T0:T5的单个处理器的异质元件处理器(HEP)系统的混合物。处理器管线66具有六个级,从而与为从电路54向寄存器60及64获取数据项所必需的最小数目的处理器循环匹配。DSP 40在处理器管线66内同时执行不同线程T0:T5的指令。亦即,DSP 40提供六个独立程序计数器、一用以在处理器管线66内区分线程T0:T5的指令的内部标号机构及一触发线程切换的机构。线程切换额外开销从零到仅几个循环而变动。
因此,DSP 40提供一种经设计而对各种各样的信号、图像及视频处理应用均能实现高性能及低电力的通用数字信号处理器。图3提供DSP 40结构的简要综述,包括所揭示的标的物的一种表现形式的相关联指令集结构的某些方面。DSP 40结构的实施方案支持交错式多线程(IMT)。在此执行模型中,硬件通过在管线中交错来自不同线程的指令来支持多个硬件线程T0:T5的同时执行。此特征允许DSP 40包括主动时钟频率(aggressive clock frequency),同时仍维持高核心及存储器利用率。IMT提供高处理量而无需昂贵的补偿机构,例如,无序执行、广泛转发网络,等等。此外,DSP 40可包括IMT的变化,例如,M·艾哈迈德(M.Ahmed)等人的且标题为“可变交错多线程处理器方法和系统”(″Variable Interleaved Multithreaded Processor Method and System″)及“用于多线程处理器中的可变线程分配和切换的系统和方法”(″Method and System for VariableThread Allocation and Switching in a Multithreaded Processor″)的共同让渡的美国专利申请案中所揭示的那些变化及新颖方法。
确切地说,图3提供如应用于单个线程的DSP 40的核心处理结构70方框图,所述DSP 40可使用所揭示的标的物的教示。方框图70描绘经由总线接口(I/F)73从AXI总线74接收指令的共享指令高速缓存72,所述指令包括混合的16位指令与32位指令。这些指令到达定序器76、用户控制寄存器78及线程T0:T5的管理控制寄存器80。所揭示的标的物的核心级系统结构也包括经由JTAG接口84而与核心处理器70介接的硅中调试系统(in-silicon debugging system,ISDB)82,其两者在下文中均更详细地描述。
定序器76将混合双向超标量指令与四向VLIW指令提供至S管单元86、M管单元88、LD[加载]管90及LD/ST[存储]管单元92,所述单元全部与通用寄存器94通信。AXI总线74也经由与共享数据高速缓存96的总线I/F 73将LD/ST指令传送至线程T0:T5。任选的L2高速缓存/TCM 98信号包括LD/ST指令与共享数据TCM 100,所述LD/ST指令进一步流动到线程通用寄存器94。从AHB外围总线102,MSM特定控制器104用T0:T5传送中断,包括中断控制器指令、调试指令及时序指令。全局控制寄存器106与线程T0:T5传送控制寄存器指令。
因此,DSP 40包括六个虚拟DSP核心,每一虚拟DSP核心含有全局控制寄存器106及私用管理控制寄存器80。在所有线程之间共享全局控制寄存器106。每一线程共享一共用数据高速缓存及一共用指令高速缓存。由共用总线接口来服务于加载、存储及获取操作。高性能AXI总线74及较低性能AHB总线102用以将数据及指令业务连接至脱离核心(off-core)存储器及外围装置。集成的第二级存储器(高速缓存及/或TCM)输入98是任选的。外围存取可能是通过存储器映射的加载及存储。AHB与AXI之间的物理地址分区可在MSM级处配置。
显然,DSP 40的所呈现结构可随着时间而演进及改变。举例来说,DSP 40可使用的指令高速缓存的数目可从六个到一个而改变,或可为其它数目的高速缓存。超标量调度、TCM 100处的L1数据及其它结构方面可改变。然而,本标的物在各种各样的配置中且针对DSP 40的大量修改可具有连续相关性。
ISDB 82通过JTAG接口84向DSP 40提供硬件调试器。ISDB 82通过在所有线程之间共享在每线程基础上被划分为管理控制寄存器80的系统或仅管理器的寄存器及全局控制寄存器106而经由JTAG接口84来提供软件调试特征。系统控制寄存器用于每线程中断及异常控制以及每线程存储器管理活动。全局寄存器允许与ISDB 82交互以用于调试操作。
ISDB 82使软件开发者能够在DSP 40操作时对其软件进行调试。ISDB 82硬件结合在ISDB 82中操作的软件调试器程序可用以对操作系统软件的DSP 40进行调试。ISDB82个别地支持调试硬件线程。用户可暂停线程执行、查看及变更线程寄存器、查看及变更指令及数据存储器、单步执行线程、将指令填充至线程,且再继续线程执行。可信的用户能够存取所有ISDB 82特征,而不可信的用户能够存取特征子集。
ISDB 82可与调试器接口卡介接以与驻留于程序计数器上的ISDB 82调试软件通信,但所述通信全部是通过JTAG接口84进行。主机调试器软件可通过读取及写入ISDB控制寄存器而与ISDB 82交互。通信(例如)可能是通过识别ISDB寄存器(将对其发生读取/写入)的40位包,以及32位数据有效负载。支持此操作的包格式可为高达64个控制寄存器,其可各自为32位宽。
ISDB 82包括用于在调试操作期间控制安全性的可信的寄存器。如果设置了所信赖的ISDB 82,则所有ISDB 82寄存器对于调试器软件均为可见的,且所有ISDB命令均可供使用。在清除所信赖的ISDB的情况下,ISDB 82仅准许受限制的操作集合。
可使得特定ISDB 82寄存器对于核心软件为可见的。这些ISDB 82寄存器可经由管理模式控制寄存器传送指令而存取。核心指令包括断点指令。当设置所信赖的ISDB时,此指令使执行线程进入调试操作模式。此转换使线程控制转移至ISDB 82。除了执行断点的线程以外,其它线程可任选地根据ISDB 82编程而进入调试模式150。如果ISDB 82不被信赖或未被启用,则此指令被处理为NOP。优选的是断点指令为包中的唯一指令。
图4展示所揭示的标的物的调试机构与核心处理器之间的接口110,此可适用于启用本标的物以用于在数字信号处理器电能转换期间控制调试操作。与DSP 40核心结构70相关联,ISDB 82经由路径JTAG接口路径110从ISDB JTAG电路114与JTAG 84通信。ISDB JTAG电路114处理JTAG 84与ISDB 83之间的数据流。ISDB JTAG电路114进一步与ISDB JTAG同步电路116介接。ISDB JTAG同步电路116进一步与ISDB控制器118、IU 150及CU 122通信。确切地说,ISDB JTAG同步电路116与IU 150的IU ISDB逻辑电路及CU 122的CU ISDB控制器126介接。CU ISDB控制器126与CUISDB逻辑电路128以及ISDB控制器118通信。来自ISDB控制器118的控制输出包括ISDB数据输出130、ISDB复位信号132及ISDB中断134。到ISDB控制器118的其它接口包括MCD接口136及ETM间断触发138。
在已列出ISDB 82的各种组件后,以下为操作描述以及对用于与DSP 40的操作相关联地执行非侵入性调试操作的控制或逻辑电路的组成部分的简要介绍。确切地说,且虽然未详细地展示,但CU 122包括三个主要电路。这些主要电路包括能够处置以下任务的电路及指令:(a)处理断点且产生对每一线程的间断触发;(b)产生微间断及微再继续命令;(c)维持ISDB 82状态及信箱寄存器;及(d)实施特定ISDB 82寄存器。CU 122包括三个子区块:一如出现于以下图6中的断点处理逻辑(BPL)区块、一信箱及状态逻辑及一微命令产生器。BPL区块处理所有断点,且产生对CU ISDB控制器126的微命令产生器的宏间断请求。微命令产生器处理宏间断请求连同指令填充命令、指令步进及再继续命令,且向CU 122发出微间断及再继续命令以用于管线控制。
CU ISDB控制器128基于所接收回的间断及再继续确认信号来维持ISDB 82的状态。CU ISDB控制器126的信箱功能维持用于主机调试软件与DSP 40核心处理器之间的通信的信箱寄存器。这些信箱功能也含有ISDB 82状态寄存器。
图6详细展示在DSP 40的调试操作期间可能会发生的所揭示的标的物的各种断点触发。然而,在建立对特定调试操作断点的评价之前,对各种模式(当前所揭示的非侵入性调试操作与所述模式合作)的理解为相关的。因此,图5呈现DSP 40的各种模式控制方面的处理模式图140,包括ISDB 82在调试过程期间的操作。
在图5中,DSP 40支持对于所有线程为全局且对于个别线程为局域的处理模式。每一DSP 40硬件线程个别地支持两个执行模式(用户模式142及管理模式144)及三个非处理模式(等待模式146、关闭模式148及调试模式150),所有模式皆可出现于图5中。一线程的模式独立于其它线程,例如,一个线程可处于等待模式146,而另一线程处于用户模式142等等。
由各种指令或事件支持图5的每线程模式状态图。这些指令或事件包括“异常”(“Except”)或内部异常事件、“中断”(“Int”)或外部中断事件、来自异常模式的“返回”(“RTE”)或软件返回指令、及“SSR”或对SSR寄存器指令的更新、可从任何模式进入的“停止”或软件停止指令、也可从任何模式进入的“开始”或软件开始指令、“俘获”或软件俘获指令、“等待”或软件等待指令、“再继续”或软件再继续指令、“DE”或调试事件及“DR”或调试指令。虽然所主张的标的物的不同实施方案中的功能可能稍微不同于此处所呈现的功能,但“开始”、“等待”、“再继续”、“DE”及/或“DR”的含义可被给予其与所主张的标的物的范围一致的最广泛解释。
在用户模式142及管理模式144两者下,寄存器均在DSP 40中可用。用户模式寄存器被划分为通用寄存器集合及控制寄存器集合。通用寄存器用于包括地址产生、标量及向量算术的所有通用计算。控制寄存器支持例如硬件回路、谓词等等专用功能性。通用寄存器为32位宽且可作为单个寄存器或作为经对准的一对两个寄存器而被存取。通用寄存器文件提供用于指令的所有操作数,包括用于加载/存储的地址、用于数字指令的数据操作数及用于向量指令的向量操作数。
调试模式150提供线程正在等待来自ISDB 82的命令的特殊状态。只要发生ISDB调试事件(例如,通过软件断点指令的执行、来自ISDB 82的间断命令,或硬件断点的发生),所指示的线程便可进入调试模式150。当处于调试模式150时,核心是由ISDB 82经由来自JTAG接口84的命令而加以控制。当ISDB 82因再继续命令的执行而释放线程时,线程可根据其当前模式设置来再继续操作。当线程处于调试模式150时,其被ISDB82控制且不能被其它线程控制。可忽略来自以处于调试模式150的线程为目标的执行线程的等待、再继续、开始或停止指令。类似地,处于调试模式150的线程可忽略非可屏蔽中断(NMI)。
硬件复位模式(未图示)及调试模式150对于所有线程为全局的。只要断言硬件复位引脚,DSP 40便可进入硬件复位模式而不管任何线程的处理状态如何。在复位模式中,所有寄存器被设置为其复位值。在解除断言硬件复位引脚之前可能不发生处理。当断言复位引脚时,处理器可转换成复位模式且所有寄存器可被复位为其复位值。在解除断言复位引脚之后,线程T0可被给予软复位中断。此可使线程T0进入管理模式144且在复位向量位置处开始执行。所有其它线程可保持关闭。在此点上,软件自由地个别地控制每一线程的模式转换。
现在参看图6,可看出,BPL 160包括来自六个不同源的间断触发,所述六个不同源包括硬件断点0/1(HWBKPT0 162及HWBKPT1 164)、软件断点(SWBKPT 166)、JTAG 84断点(JTAGBKPT 168)、ETM(嵌入式迹线宏)断点(ETMBKPT 170)及外部断点(EXTBKPT 172)。间断触发162至172及调试模式状态输入174去往编码间断编码器176以致使DSP 40在调试模式150中操作。来自编码器176的输出包括三个(3个)断点信息位178及一断点有效位180。断点信息数据178进入断点信息电路182以导致断点信息JTAG接口命令184。断点位180也产生OR门输入186及复位电路188输入。复位电路188接收UCG再继续线程编号或复位输入192以产生进入OR门196中的复位控制输出194。有效位186或复位输出194可致使OR门196产生BPL 160断点输出198。
对BPL电路160中的间断触发连同对应的TNUM屏蔽一起处理以产生对每一线程的宏间断触发。维持宏间断触发198(bpl_breakTnum_ANY[5:0]),直到再继续对应线程为止。通过硬件断点来驱动可用于BPL 160的所述若干个管线级,所述硬件断点是精确断点,亦即,不得执行触发硬件断点匹配的指令。线程在执行程序之后切换成调试模式,直到所述指令为止。所揭示的实施例在间断触发到达之后一个循环提供宏间断触发。由于此原因,将间断有效输入176与其锁存版本输入192进行逻辑或以产生bpl_breakTnum_ANY输出198。
通过使用断点,DSP 40的六个线程可个别地进入及退出调试模式150。断点触发可来自对应于ISDB 82中所支持的五种不同类型的断点的五个源。在命中断点后,线程即从其当前模式(例如,等待/执行)转换成调试模式150。在调试模式150中,线程等待来自ISDB 82的命令。处于关闭模式148的线程被断电且可能不接受来自ISDB 82的任何命令。进入调试模式150的延迟是由实施方案界定的,例如,在本揭示内容中被界定为是关于电源崩溃的事件。举例来说,实施方案可选择在进入调试模式150之前完成给定操作,例如,完成未处理的加载请求。在一个实施例中,线程识别符寄存器含有8位读取/写入字段且用于保持软件线程识别符。此字段由硬件调试器用来匹配断点。
存在用以进入断点过程的许多不同方式。举例来说,存在两个硬件断点。如果寄存器等于预定值,则当程序计数器(PC)与预定值匹配时,则过程进入调试模式150。ASID(地址空间识别符)为类似于过程中的过程ID或多线程过程中的特定线程的标记。因此,物理地址、虚拟地址、ASID、PC或其它限定符可用以任选地获得在一空间中可能发生断点的点的程序位置的定位。
此处所参考的断点的使用更特定地揭示于L·可德莱司克(L.Codrescu)等人的且标题为“用于多线程数字信号处理器的非侵入性线程选择性调试方法和系统”(″NON-INTRUSIVE,THREAD-SELECTIVE,DEBUGGING METHOD AND SYSTEMFOR A MULTI-THREADED DIGITAL SIGNAL PROCESSOR″)的共同让渡的美国专利申请案中。因此,所揭示的标的物提供用于在导致进入调试模式150的断点的事件中移动至调试模式150中的路径。所揭示的标的物控制多线程处理器中的哪一线程或线程集合进入调试模式150。通过使用断点及相关联的调试算法,可能发生DSP 40的非侵入性调试操作。甚至可能在可使用DSP 40编程的各种电源管理方案期间发生此些操作。
因此,所揭示的标的物的另一方面包括在DSP 40中在电源崩溃期间执行调试操作。ISDB配置寄存器可由调试器软件(经由JTAG接口84)及管理器核心软件(经由控制寄存器传送指令)两者读取及写入。内核软件可使用此特征以在电源崩溃期间保存及恢复ISDB 82配置。因为在此情形中存在写入这些共享寄存器的多个主设备,所以重要的是仅以一致且互斥的方式来写入到此些调试寄存器。
所揭示的标的物规定:DSP 40核心处理器可处于断电或通电的过程中,在所述过程期间,JTAG接口84可能不读取/写入到调试配置寄存器。类似地,当JTAG接口84处于修改调试寄存器的过程中时,不允许DSP 40核心处理器断电。此策略通过硬件与软件的组合而实施。可仅由核心管理器软件写入ISDB核心准备就绪寄存器位。此位在DSP40的硬件复位时被清除。当位被清除时,所有JTAG接口84读取及写入包可返回无效状态。通过使用此位,核心可向主机软件指示其何时已完成通电序列且准备就绪以与ISDB交谈。此给予核心在热启动通电(恢复)序列中恢复任何所保存的ISDB 82配置的机会。
在电源崩溃期间调试的一个实例可存在于蜂窝电话中,其中存在对电源意识的需要。DSP 40可关闭或闲置,同时仍存在执行调试的需要。因此,所揭示的标的物提供设置可仅在电源崩溃情形中出现的断点的能力。此提供调试的能力,即使当核心甚至未操作或“开启”时也是如此。
在所揭示的实施例中,在电源崩溃期间的调试包括设置用于与降低电源的DSP 40相关联的配置的断点集合。在DSP 40降低电源之前,在调试配置寄存器中保存现有调试配置。这些特定寄存器及配置允许“挂起到RAM”(suspend-to-RAM)过程。如此,当DSP 40返回到电源时,调试配置允许执行下一调试操作。
为了说明这些特征的一个实施例,图7展示所揭示的标的物的过程的热启动通电序列200。确切地说,图1全部对照时间线204描述在主机调试器202及DSP 40处发生的操作。开始时DSP 40在初始时间208在步骤206处可处于断电状态。在时间208,可能发生外部硬件复位事件。作为响应,受JTAG 84控制的ISDB 82寄存器读取返回无效状态,借此防止寄存器内容的改变。因此,此将“防止传送”值呈现给核心处理器。也在步骤208之后,停用电源崩溃中断。一旦ISDB 82准备就绪以用于调试操作,则在步骤210处,ISDB_TRUSTED寄存器采用“1”值,ISDB_CORE_READY寄存器也采用“1”值。因此,这两个寄存器中的“1”指示可能发生调试操作。在步骤212处,启用电源崩溃中断,且可继续启用电源崩溃中断,直到在步骤214处JTAG ISDB读取返回有效状态为止。
在步骤214处,核心处理器可废除电源崩溃中断。此反映以具有1值的写入寄存器ISDB_PREVENT_POWERDOWN来重新配置ISDB的状态。此值告知主机调试器系统DSP处于调试配置且调试会话正在进行中。在此阶段期间,ISDB对ISDB 82寄存器进行编程。当调试过程不再改变ISDB寄存器时,ISDB_PREVENT_POWERDOWN寄存器获得0值,其指示调试配置是稳定的。因此,在步骤116处,启用电源崩溃中断。
图8展示由所揭示的实施例提供的热启动断电序列220。热启动断电序列220可开始于点222,在点222处启用电源崩溃中断(箭头224)。在此周期期间,JTAG ISDB寄存器可返回读取返回有效状态(箭头226)。在点228处,可能会发生电源崩溃中断,从而致使内核关机处置程序操作。作为响应,停用电源崩溃中断(箭头230)。在点232处,ISDB_CORE_READY寄存器读取0且JTAG读取/写入返回无效状态。在箭头234所覆盖的周期期间,核心处理器检查以查看ISDB配置改变是否正在进行中,如由具有1值的ISDB_PREVENT_POWERDOWN寄存器所指示。此指示改变正在进行中,从而导致断电序列的取消。如果配置并非正在进行中,则断电序列220将ISDB配置寄存器内容保存到存储器。设置热启动旗标标记,且进行后续热启动的准备。接着,断电序列200停止所有线程,且DSP 40被断电。
因此,所揭示的标的物提供一种用于在包括电源崩溃的数字信号处理器电能转换期间执行调试操作的方法及系统。DSP 40的ISDB配置可由调试器软件及由管理器核心软件两者读取及写入。内核软件可在电源崩溃期间使用调试操作的执行来保存及恢复电源崩溃时存在的配置。此调试方面提供用以捕获ISDB配置的可靠且一致的方式,借此不仅准许在电源崩溃期间使用配置,而且准许在后续通电序列中恢复配置。
总之,所揭示的标的物提供一种用于与数字信号处理器的电能转换序列相关联地在调试寄存器与数字信号处理器过程之间传送数据的方法及系统。在操作核心处理器内的核心处理器过程及调试机构内的调试过程的数字信号处理器中,本发明使调试寄存器与核心处理器过程及调试过程相关联。通过建立用于控制在调试寄存器、核心处理器过程与调试过程之间传送数据的至少一个寄存器控制位,所述方法及系统将控制位设置为在电能转换序列的事件中防止在调试寄存器、核心处理器过程与调试过程之间传送数据的防止传送值。通过设置所述一个控制位以防止一防止电能转换值,本发明在调试寄存器与核心处理器过程或调试过程之间传送数据的事件中防止数字信号处理器的电能转换序列。
本发明的其它方面包括将至少一个寄存器控制位设置为一防止传送值,以用于在数字信号处理器发生通电序列的事件中防止在调试寄存器与核心处理器过程及调试过程之间传送数据。此外,本发明允许将至少一个寄存器控制位设置为一防止传送值,以用于在数字信号处理器发生断电序列的事件中防止在调试寄存器与核心处理器过程及调试过程之间传送数据;且此外,将至少一个电源控制位设置为防止电能转换值,以用于在调试寄存器与核心处理器过程或调试过程之间传送数据的事件中防止数字信号处理器的断电序列。
调试寄存器可包含调试配置寄存器,其中本发明提供:将至少一个寄存器控制位设置为一防止传送值,以用于在数字信号处理器发生电能转换序列的事件中,防止在调试配置寄存器与核心处理器过程及调试过程之间传送数据;及将至少一个电源控制位设置为一防止电能转换值,以用于在调试配置寄存器与核心处理器过程或调试过程之间传送数据的事件中防止数字信号处理器的电能转换序列。调试过程可为可信的或不可信的调试过程。
在操作中,防止传送值可为无效状态值,且进一步包含响应于无效状态值而在核心处理器的通电序列的事件中使调试寄存器与核心处理器过程或调试过程之间的读取/写入传送无效的步骤。防止传送值也可为无效状态值,且进一步包含响应于无效状态值而在核心处理器的断电序列的事件中使调试寄存器与核心处理器过程或调试过程之间的读取/写入传送无效的步骤。此外,防止电能转换值包含中断停用值,且进一步包含响应于中断停用值而在调试寄存器与核心处理器过程或调试过程之间的读取/写入传送期间停用电源崩溃的步骤。
此外,本发明用于将至少一个寄存器控制位设置为一准许传送值,以用于在数字信号处理器发生通电序列之后准许在调试寄存器与核心处理器过程及调试过程之间传送数据。此外,本发明用于将至少一个电源控制位设置为一准许电能转换值,以用于在调试寄存器与核心处理器过程或调试过程之间传送数据的事件之后准许数字信号处理器的电能转换序列。
可以各种方式来实施本文中针对多线程数字信号处理器中的非侵入性线程选择性调试所描述的处理特征及功能。举例来说,不仅DSP 40可执行上述操作,而且本实施例可被实施于专用集成电路(ASIC)、微控制器、数字信号处理器或经设计以执行本文中所描述的功能的其它电子电路中。此外,此处所描述的过程及特征可存储于磁性记录媒体、光学记录媒体或其它记录媒体中,以用于由此些各种信号及指令处理系统读取及执行。因此,提供优选实施例的前述描述以使所属领域的技术人员能够制造或使用所主张标的物。对这些实施例的各种修改对于所属领域的技术人员而言将显而易见,且本文中所界定的一般原理可不使用创新技能而应用于其它实施例。因此,所主张的标的物并非意图限于本文中所示的实施例,而是符合与本文中所揭示的原理及新颖特征一致的最广泛范围。

在电能转换期间的数字信号处理器调试.pdf_第1页
第1页 / 共28页
在电能转换期间的数字信号处理器调试.pdf_第2页
第2页 / 共28页
在电能转换期间的数字信号处理器调试.pdf_第3页
第3页 / 共28页
点击查看更多>>
资源描述

《在电能转换期间的数字信号处理器调试.pdf》由会员分享,可在线阅读,更多相关《在电能转换期间的数字信号处理器调试.pdf(28页珍藏版)》请在专利查询网上搜索。

本发明提供包括(但不限于)用于处理通信(例如,CDMA)系统中的传输的数字信号处理器的设计及使用的技术。一种方法及系统与所述数字信号处理器的电能转换序列相关联地控制在调试寄存器与数字信号处理器过程之间传送数据。在数字信号处理器中,调试寄存器与核心处理器过程及调试过程相关联。控制位控制在所述调试寄存器、所述核心处理器过程与所述调试过程之间传送数据。所述控制位在电能转换序列的事件中防止在所述调试寄存器。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1