功率签名扰乱的制作方法

文档序号:6364444阅读:115来源:国知局
专利名称:功率签名扰乱的制作方法
技术领域
本发明涉及数据处理装置,设法使该数据处理装置的内部操作相对外部观察者而言被隐藏。具体地,本发明涉及将这样的数据处理装置布置为使得外部观察者通过观察数据处理装置的功耗难以推断出正执行的数据处理操作。
背景技术
已经知道,其中采取措施来使被执行的数据处理操作相对外部观察者而言被隐藏的数据处理装置已被提供。例如,诸如智能卡中的数据处理装置通常按照使得功率分析攻击(SPA或DPA)较少可能成功的方式来配置。这样的功率分析攻击的目的是通过观察数据处理装置的功耗来推断有关数据处理装置正执行的指令和/或数据处理装置正处理的数据值的信息。已经知道,这样的当前的功率分析攻击可能是精明的,这涉及响应于给定激励而重复对数据处理装置的观察并且对结果执行复杂的统计分析来试图推断出有关正被执行的数据处理操作的信息。正被数据处理装置处理的数据值通常是最受关注的信息,因为·这些可能涉及以其他方式被加密的敏感信息,例如,存储在智能卡上的个人或金融信息。防御功率分析攻击的ー种方法是不管正被执行的具体数据处理操作如何都设法确保数据处理装置具有统ー的功耗。然而,在实践中,实现此是非常困难的,因为功耗将依赖于正被执行的指令的类型和正被处理的数据值。防御这样的攻击的一种替代方法是将数据处理装置布置为使得其功耗在每次同样的数据处理操作(即,对于同样的指令和同样的数据值)被执行时都不同。在这样的数据处理装置的实现中已知多种按照此种方式改变功耗的技术,然而,(从构造方面来看)这些技术通常被強迫处于相对较高的水平,例如,被编程作为数据处理装置正执行的算法的部分。这意味着设置这样的设备的技术人员必须意识到实现此数据处理装置所涉及的易受功率分析攻击的每方面。因此,希望提供ー种数据处理装置,其中对功率分析攻击的抵抗是其构造的固有特征,从而使得其对这样的攻击的抵抗更可靠。

发明内容
从第一方面来看,本发明提供了ー种数据处理装置,该数据处理装置被配置为响应于数据处理指令来对至少ー个数据值执行数据处理操作,该数据处理装置包括延迟单元,所述延迟単元位于所述数据处理装置内的一路径上,所述延迟単元被配置为对所述路径上的信号的传送施加延迟,其中,所述路径上的所述信号的传送形成所述数据处理操作的部分,其中,所述数据处理装置被配置为在预定时间点确定所述数据处理操作的结果,所述预定时间点比所述数据处理操作的开始落后预定时间间隔,并且其中,所述延迟単元被配置为使得用于所述数据处理操作被执行的时间加上所述延迟小于所述预定时间间隔,并且其中,所述延迟単元被配置为使得所述延迟针对响应于所述数据处理指令对所述至少ー个数据值的所述数据处理操作的后续执行而被改变。
根据本发明的技木,数据处理装置内的一路径被设有延迟单元,延迟单元被配置用来延迟沿着该路径传送的信号,此信号沿着该路径的传送形成响应于数据处理指令对数据值的数据处理操作的部分。应当理解,这里的数据处理指令可被理解为形成(例如,以汇编语言所写的)程序指令序列的一部分的指令,但是也可等同地,例如表示(例如,硬连线加密引擎中的)状态机提供的控制值集合。该数据处理装置被配置为在预定时间点 (例如,在下降时钟沿处)确定数据处理操作的结果,所述预定时间点落后于数据处理操作的开始达预定时间间隔(例如,数据处理操作通过上升时钟沿开始并且时间间隔是上升时钟沿和接着的下降时钟沿之间的时间段)。延迟单元被配置为对所述路径施加延迟以使得用于数据处理操作被执行的时间加上所述延迟小于此预定时间间隔。例如,在数据处理操作是两个数据值的相加并且数据处理装置内的加法器被配置为在上升时钟沿后开始加法操作的情况中,数据处理装置被配置为将结果值确定为在随后的下降时钟沿时在加法器输出处呈现的值。在此示例的情形中,延迟单元被配置为对所述路径施加延迟,使得执行加法操作所需的时间和强迫的延迟的组合不超过时钟沿之间的间隔,并且因此,加法器的输出不受延迟的引入的影响。延迟单元还被配置为使得当同样的数据处理操作再次被执行(即通过同样的数据处理指令发起并且对同样的数据值进行操作)时,延迟被改变。在当数据处理装置执行数据处理操作时的预定时间间隔期间,数据处理装置的功耗通常将会受到被执行的具体数据处理操作和被执行该操作的(ー个或多个)数据值二者的影响。功率分析攻击依赖于此事实并且可以通过收集基于重复观察的统计数据来推断出有关操作和/或数据值的信息。然而,根据本发明的技术,对数据处理操作中使用的路径之一施加延迟将使得与数据处理操作相关联的功耗发生改变。这是因为数据处理操作是通过数据处理装置内用于指定要被执行的操作和要经受该数据处理操作的(ー个或多个)数据值的特定信号集来配置的。如果承载这些信号之一的路径被施加延迟,则当延迟过去并且被延迟的信号到达其目的地时,数据处理装置的内部状态将发生改变。数据处理装置的内部状态的改变将通过其功耗的改变来反映,并且因此,延迟的引入将影响功耗的时间变化特性(time profile)。此外,根据本发明的数据处理装置被配置为使得延迟单元针对随后的同样数据处理操作的执行施加不同延迟,因此数据处理操作的初次执行的功耗特性将不同于该数据处理操作的后续执行的功耗。因此,即使对系统的输入激励保持相同,数据处理装置的内部配置使得数据处理操作的每一次执行的功耗将不同,从而使得功率分析攻击更加困难。因此,根据本发明的技木,针对给定数据处理操作的各次执行而不同的延迟被施加到数据处理装置的特定路径上,对此延迟的长度的约束为数据处理操作花费的时间和此延迟的和应小于预定时间间隔,从而使得当数据处理操作的结果被确定时,该结果不受施加到路径上的延迟的影响。预定时间点和预定时间间隔的特性可依赖于数据处理装置的类型而不同。在一个实施例中,所述数据处理装置被配置为同步地操作并且所述预定时间间隔为时钟间隔。因此,在这样的同步设备中,在时钟沿形成了每个时钟周期的同步点的情况下,数据处理装置例如可被配置为跟着一个时钟沿来开始数据处理操作并且在接着的时钟沿发生时确定数据处理操作的結果。一般地,一种类型的时钟沿(例如,上升沿)被选择使用。在此情形中,施加到路径上的延迟(其中,信号在该路径上的传送形成数据处理操作的部分)被约束为使得用于数据处理操作被执行的时间加上此延迟小于所选时钟沿之间的间隔,从而尽管在此时钟间隔期间引入了延迟,在下降时钟沿确定的结果值仍不会受到延迟引入的影响。替代地,在另ー实施例中,数据处理装置被配置为异步地操作并且所述预定时间间隔为握手事件之间的间隔。在本示例中应用了同样的一般原理,即,路径上延迟的引入引起数据处理装置内的另外的状态改变(或者至少状态改变发生时间的变化),从而改变与数据处理操作的执行相关联的功耗时间变化特性。尽管异步地操作,这样的数据处理装置仍必需很好地定义握手事件,在握手事件处,装置的异步部件重新调整自身并且结果值可被可靠确定。根据本发明的技术,強制的延迟被约束为使得尽管在握手事件之间的间隔期间引入了额外延迟,但是在随后的握手事件处确定的结果值不受影响。除了上面描述的对延迟的长度的约束以外,可以多种方式来确定施加到任何给定迭代的具体延迟。在一个实施例中,所述延迟的长度參考随机控制源来确定。因此,延迟的长度可被随机化,这有助于进ー步扰乱与特定数据处理操作相关联的功耗。随机控制源当然可以提供在数据处理装置内,或者等同地,此随机信息源可处于数据处理装置的外部。 在另ー实施例中,所述延迟的长度通过确定性算法来确定。例如,可提供这样ー种算法,该算法按照复杂但仍是确定性的方式使得延迟逐迭代地改变,虽然如此,这足以进ー步扰乱与数据处理操作相关联的功耗。虽然可以仅在数据处理装置内的一个路径上设有ー个延迟単元,但是在一些实施例中,所述数据处理装置包括至少ー个另外的延迟单元,这些至少ー个另外的延迟单元位于所述数据处理装置内的至少ー个另外的路径上,这些至少ー个另外的延迟单元被配置为向所述至少ー个另外的路径上的另外的信号的传送施加另外的延迟,其中,所述至少ー个另外的路径上的所述另外的信号的传送形成所述数据处理操作的部分,并且其中,所述至少ー个另外的延迟单元被配置为使得所述数据处理操作被执行的所述时间加上所述另外的延迟小于所述预定时间间隔,并且其中,所述至少ー个另外的延迟单元被配置为使得所述另外的延迟针对随后所述数据处理操作的执行而改变。因此,数据处理装置内的另外的路径可设有延迟单元,每个延迟单元被配置为按照上面描述的方式操作。这些另外的延迟单元的提供意味着在所述预定时间间隔内在数据处理装置内可发生另外的状态改变,从而进ー步扰乱数据处理装置的与数据处理操作的执行相关联的基于时间的功耗变化特性。将会认识到,越多的这样的延迟单元被提供,则数据处理操作的功耗特性将改变越多。此外,在每个这样的延迟单元被配置为使得延迟针对随后的数据处理操作的执行改变的情况下,将变得越难基于功耗签名(power signature)来识别特定数据处理操作。此外,虽然这样的实施例的多个延迟单元可被配置为在每次迭代时施加同样的延迟,但是在一个实施例中,所述延迟単元和所述至少ー个另外的延迟单元被配置为使得所述延迟和所述另外的延迟彼此不同。因此,这些延迟单元中的ー些或者甚至全部可具有不同的延迟,这进一步针对数据处理操作的毎次迭代增添了功率签名的改变。所述路径可采取多种形式。在一个实施例中,所述路径是数据路径,并且所述信号表示所述至少一个数据值的至少ー个数据比持。因此,如果所述至少ー个数据值的所述至少ー个数据比特改变(例如,当新的输入数据被读入执行单元时),此数据路径上的延迟引入将使得该输入值改变两次,并且数据处理装置的功耗也相关联地被改变。将会认识到,延迟可以施加到若干数据比特,在一个实施例中,所述至少一个数据值包括多个数据比特并且所述信号表示所述多个数据比特。替代地,延迟可以施加到仅仅一个数据比特,在一个实施例中,所述至少一个数据值包括多个数据比特并且所述信号表示所述多个数据比特中的一个数据比特。在其他实施例中,所述路径是控制路径,并且所述信号表示被布置用来将所述数据处理装置配置为对所述至少一个数据值执行所述数据处理操作的控制值。因此,对这样的控制路径施加延迟将在所述预定时间间隔期间引起数据处理装置的配置信号的改变,从而引起对功耗的改变。通过控制值来配置数据处理装置可以多种方式实现,但在一个实施例中,所述控制值将执行单元配置为执行所述数据处理操作,例如,执行单元可被配置为执行大量已知的数据处理操作(加法、乘法、移位,等等),特定操作通过一个或多个这样的控制值来确 定。替代地,控制值可确定用于数据处理操作的数据值,并且在一个实施例中,所述至少一个数据值是根据所述控制值而从数据存储库提取出的。例如,控制值可形成在数据存储库中寻址的部分。在一个实施例中,此数据存储库为寄存器组。在另一替代中,所述路径是时钟路径,并且所述信号表示时钟信号,其中,所述数据处理装置被配置为参考所述时钟信号来执行所述数据处理操作。将会认识到,数据处理装置的子部件的配合将依赖于时钟信号,并且因此,通过向这些子部件之一中的路径施加延迟,装置的内部协调将会被影响,此外还改变其功耗签名。在一些实施例中,系统寄存器可被提供以允许对延迟的可编程配置,并且在一个实施例中,所述延迟是参考系统寄存器中所存储的值来确定的。在一个实施例中,系统寄存器中所存储的所述值由另外的数据处理指令来设定。从第二方面来看,本发明提供了一种数据处理装置,该数据处理装置被配置为响应于数据处理指令来对至少一个数据值执行数据处理操作,该数据处理装置包括延迟装置,所述延迟装置位于所述数据处理装置内的一路径上,所述延迟装置用于对所述路径上的信号的传送施加延迟,其中,所述路径上的所述信号的传送形成所述数据处理操作的部分,其中,所述数据处理装置被配置为在预定时间点确定所述数据处理操作的结果,所述预定时间点比所述数据处理操作的开始落后预定时间间隔,并且其中,所述延迟装置被配置为使得用于所述数据处理操作被执行的时间加上所述延迟小于所述预定时间间隔,并且其中,所述延迟装置被配置为使得所述延迟针对响应于所述数据处理指令对所述至少一个数据值的所述数据处理操作的后续执行而改变。从第三方面来看,本发明提供了一种数据处理的方法,包括在数据处理装置中响应于数据处理指令对至少一个数据值执行数据处理操作;对所述数据处理装置内的一路径上的信号的传送施加延迟,其中,所述路径上的所述信号的传送形成所述数据处理操作的部分;在预定时间点确定所述数据处理操作的结果,所述预定时间点比所述数据处理操作的开始落后预定时间间隔,并且其中,施加延迟的步骤被执行以使得用于所述数据处理操作被执行的时间加上所述延迟小于所述预定时间间隔;以及针对响应于所述数据处理指令对所述至少一个数据值的所述数据处理操作的后续执行而改变所述延迟。


将通过借助于示例进一步参考在附图中所图示的本发明的实施例来描述本发明,在附图中图IA示意性地图示根据一个实施例的数据处理装置的概要;图IB图示图IA中所示的装置中的某些信号的相对定时,并且图IC示出关联的示例功耗签名;图2A示意性地图示根据另一实施例的数据处理装置;图2B和图2C示出与图2A中所示的装置相关联的信号定时和功耗图;、
图3A和图3B示出延迟被施加到控制信号的示例实施例;图4A示意性地图示根据延迟被施加到时钟信号的实施例的数据处理装置;图4B示意性地图示延迟单元根据系统寄存器的内容被控制的配置;图5示意性地图示在一个实施例中数据处理装置所采取的一系列步骤;以及图6示意性地图示异步实施例中的定时。
具体实施例方式图IA示意性地图示寄存器组10连接到执行单元20。寄存器组10和执行单元20形成数据处理装置的一部分,为了清楚阐释,另外的细节被省略。执行单元20可以是可配置为执行多种不同数据处理操作的多用途设备,或者可以是专用数据处理设备(算术逻辑单元(ALU)、乘法器、移位器,等)。执行单元20被配置为接收从寄存器组10提取的数据值并且对那些数据值执行数据处理操作以产生结果值。在所图示的示例中,数据A和数据B从寄存器组10传递到执行单元20所沿的路径分别设有由延迟控制(未图示)控制的延迟单元。这些延迟单元30、40被配置为根据他们从延迟控制接收到的信号来对他们各自的路径施加延迟。这些延迟单元的作用在图IB中所示的定时图中更详细地被图示出。图IB示意性地图示诸如图IA中所图示那样的数据处理装置中各种信号的相对定时,此时,执行单元20被配置作为用于把数据值A和数据值B加在一起的加法器。在图IB中可以看出,首先,被提供给执行单元的A数据为0x0000,而被提供给执行单元20的B数据为0x0001。此时,加法器输出是0x0001。在上升时钟沿后,寄存器组10被配置为传递新的A值和B值给执行单元20,S卩,分别为OxFFFF和0x0000。然而,图IB示意性地图示出B路径被延迟单元40施加延迟的情形。在图IB所图示的示例中,A路径没有被施加延迟。因此,在上升时钟沿后,执行单元20接收的A数据立即改变到OxFFFF,而在B路径上在执行单元接收到新的B数据0x0000之前存在延迟。结果是加法器输出首先从0x0001转变为0x0000,并且稍后,一旦延迟的B数据改变就转变为OxFFFF。加法器输出中三个序列中两个序列的对头衔接转变表示一种短暂时段,在该短暂时段中,在信号通过加法器时加法器输出(结果值)为不确定的。加法器输出的这些改变可通过相关联的功耗改变来辨认(参见图 1C)。为了清楚阐释,在图IB和图IC所给出的示例中,只有一个延迟被全局地施加到B值,并且A值是未被触及的。在图2A-图2C中示意性地图示出向多个数据路径施加延迟的稍微更复杂的示例。此外,注意,在图IB的示例图示中,相关的时钟间隔(从数据处理操作开始起到确定了数据处理操作的结果为止)被示为从上升时钟沿到跟着的下降时钟沿。然而,另一典型的实现方式使用同样的时钟沿(例如,上升时钟沿)来定义此间隔的开始和结束。图2A示意性地图示与图IA中所示类似的布置。这里,寄存器组50向算术逻辑单元(ALU) 60提供数据值,算术逻辑单元60依据此来生成结果值。如所图示的,数据值A和数据值B从寄存器组50传递到算术逻辑单元60。数据值A是4比特值,每个比特在单独的数据路径上提供。延迟单元70跨越这些数据路径并包括四个单独的延迟缓冲器,这些延迟缓冲器可被控制以向各个路径施加单独的延迟。延迟单元70被延迟控制80控制,延迟控制80参考随机定时源90生成针对各个延迟缓冲器的延迟。图2A中所示的布置的效果在图2B的定时图中被图示出。这里,可以 看出,在上升时钟沿后,进入算术逻辑单元60的A数据的四个比特分别在不同时刻到达。这是由于延迟单元70内的各个延迟缓冲器被施加的随机延迟引起的。总的来说,此布置对于加法器输出处的结果值的效果在于从A数据的第一比特改变(A’
)的时刻起,加法器输出在直到A数据的最后一比特(A’ [3])转变之后才安定于确定状态。这里,如在图2C中所图示,存在与算术逻辑单元60对数据值A和数据值B执行的数据操作相关联的进行中的复杂功耗签名。此外,如果图2A中所图示的数据处理装置被设置为执行同样的数据处理操作(即,数据处理指令使得算术逻辑单元60配置为对同样的输入数据值执行同样的操作),则,观察到的此数据处理操作的功耗将不一样,因为施加到延迟单元70中的延迟缓冲器的随机延迟将发生改变,从而改变功耗签名。图3A示意性地图示延迟是如何被施加到不同的路径上的。这里,再次,寄存器组100提供将要经历执行单元110执行的数据处理操作的输入数据值。被选择从寄存器组100输出的数据值由寄存器控制105控制。执行单元110可执行各种数据处理操作,任何时间所执行的特定操作由执行控制115来控制。如图3A中所图示的,一组延迟单元120位于将执行控制单元115连接到执行单元110的路径上。延迟单元120被配置为向从执行控制单元115向执行单元110传递的控制信号施加由延迟控制125配置的延迟。因此,由延迟单元对用于配置执行单元110的操作的控制信号施加的一个或多个延迟将使得执行单元110在被设置在控制单元115所指示的配置状态之前将过渡经过至少一个中间配置状态。因此,即使输入执行单元110的为恒定数据值(虽然数据值路径也可被配置为参考图1A-1C和图2A-2C所论述那样),执行单元110的配置改变将使得数据处理装置的功耗签名改变,从而扰乱执行单元110正执行的真实数据操作。此外,即使执行单元110重复同样的数据处理操作(同样的指令,同样的输入值),延迟单元120施加的新的延迟也将会改变相关联的功耗签名。图3B示意性地图示数据处理装置中延迟单元可被施加到承载控制信号的路径的另一种方式。这里,从寄存器组100传递给执行单元110的数据值由寄存器控制单元105使用传递给寄存器组100的寄存器选择信号来确定。如图3B中所图示的,由延迟控制135所控制的一组延迟单元130位于寄存器控制105和寄存器组100之间的多比特寄存器选择信号路径上。这些延迟单元的效果是临时变更由寄存器组100接收的寄存器选择信号。其效果在于执行单元110接收的输入值改变,从而使得功耗信号发生改变。图4A示意性地图示延迟单元可被施加到数据处理装置内的路径的另一方式(其可以或者可以不与上述其他类型的路径延迟相结合)。这里,被施加延迟的路径承载时钟信号。延迟时钟信号的第一方面在图4A的左侧被图示出,其中,向量140被传递到寄存器组150。向量140是四比特值,每比特临时地由触发器(flip-flop) 142、144、146、148缓冲,进而被路由到寄存器组150。触发器142-148通常可共享一公共的时钟信号,但是这里一组延迟单兀155生成四个时钟信号CLKch3,每个时钟信号针对相应的一个触发器。向时钟信号施加延迟的第二方面在图4A的右手部分被图示出,其中,执行单元160被配置为根据时钟信号CLK
进行操作。这些时钟信号由延迟单元165从单个原始时钟信号CLK生成。在这两个示例中,向系统的不同子组件提供不同时钟信号将再一次引起如上所述的功耗签名的变化。此外,每当同样的数据处理操作被执行时,这些时钟信号的变化将改变,从而使得功率分析攻击更加相当困难。上述实施例中的延迟单元的配置可由延迟控制单元执行,在一些实施例中,延迟控制单元可被配置作为系统寄存器,以使得系统程序员可对延迟单元如何操作进行配置。图4B示意性地图示根据系统寄存器来控制延迟单元对八比特A数据信号的控制。替代地, 延迟控制单元可被编程有确定性算法以便逐次迭代地改变延迟。图5示意性地图示根据一个实施例的在数据处理装置中所采取的步骤序列。流程开始于步骤200,在步骤200,新的数据处理指令被接收到。在步骤205,数据处理装置根据数据处理指令被配置,以便执行跟着发生的数据处理操作。在步骤210形成数据处理装置的一部分的路径上的延迟单元被配置随机延迟,之后,在步骤215处信号经由数据处理装置的该部分传送。将会认识到,依赖于被施加延迟的路径的具体类型,步骤205和步骤210可被视为同时发生,或者甚至步骤210先于步骤205。数据处理操作在步骤220结束并且流程返回到步骤200。即使下一数据处理指令是同样的数据处理指令并且对同样的数据值进行操作,(在步骤210)施加到路径的随机延迟意味着此数据处理操作所引起的功耗也将不同。图6示意性地图示在数据处理装置是异步设备的实施例中的相对定时。因此,系统的子部件可在他们之间无时间限制地自由执行他们的操作的各个方面,其中,在必要时对子部件进行周期性重新调整。这些周期性重新调整发生的点被认为是握手事件。因此,本发明的概念还可应用于这样的异步设备,其中,数据处理操作在第一握手事件后开始,并且数据处理操作的结果仅对随后的握手事件有意义。在此期间,按照在各种同步实施例的上下文中所述的相同的方式,一个或多个延迟可被施加到设备中的一个或多个路径,以使设备的功率签名变形,只要这些延迟的施加不会使得有效的数据处理时段延长超过下一握手事件即可。虽然在此已经描述了具体实施例,但是将会认识到本发明不限于此,而是,在本发明的范围内可作出多种修改和添加。例如,在不脱离本发明的范围的情况下,独立权利要求的特征可与之后的从属权利要求的特征进行各种组合。
权利要求
1.一种数据处理装置,该数据处理装置被配置为响应于数据处理指令来对至少一个数据值执行数据处理操作,所述数据处理装置包括 延迟单元,所述延迟单元位于所述数据处理装置内的路径上,所述延迟单元被配置为对所述路径上的信号的传送施加延迟,其中,所述路径上的所述信号的传送形成所述数据处理操作的部分,其中,所述数据处理装置被配置为在预定时间点确定所述数据处理操作的结果,所述预定时间点比所述数据处理操作的开始落后预定时间间隔,并且其中,所述延迟单元被配置为使得用于所述数据处理操作被执行的时间加上所述延迟小于所述预定时间间隔,并且其中,所述延迟单元被配置为使得针对响应于所述数据处理指令对所述至少一个数据值的所述数据处理操作的后续执行而改变所述延迟。
2.根据权利要求I所述的数据处理装置,其中,所述数据处理装置被配置为同步地操作并且所述预定时间间隔为时钟间隔。
3.根据权利要求I所述的数据处理装置,其中,所述数据处理装置被配置为异步地操作并且所述预定时间间隔为握手事件之间的间隔。
4.根据权利要求I所述的数据处理装置,其中,所述延迟的长度参考随机控制源来确定。
5.根据权利要求I所述的数据处理装置,其中,所述延迟的长度通过确定性算法来确定。
6.根据权利要求I所述的数据处理装置,其中,所述数据处理装置包括至少一个另外的延迟单元,这些至少一个另外的延迟单元位于所述数据处理装置内的至少一个另外的路径上,所述至少一个另外的延迟单元被配置为向所述至少一个另外的路径上的另外的信号的传送施加另外的延迟,其中,所述至少一个另外的路径上的所述另外的信号的传送形成所述数据处理操作的部分, 并且其中,所述至少一个另外的延迟单元被配置为使得所述数据处理操作被执行的所述时间加上所述另外的延迟小于所述预定时间间隔,并且 其中,所述至少一个另外的延迟单元被配置为使得所述另外的延迟针对所述数据处理操作的后续执行而被改变。
7.根据权利要求6所述的数据处理装置,其中,所述延迟单元和所述至少一个另外的延迟单元被配置为使得所述延迟和所述另外的延迟彼此不同。
8.根据权利要求I所述的数据处理装置,其中,所述路径是数据路径,并且所述信号表示所述至少一个数据值的至少一个数据比特。
9.根据权利要求8所述的数据处理装置,其中,所述至少一个数据值包括多个数据比特并且所述信号表示所述多个数据比特。
10.根据权利要求8所述的数据处理装置,其中,所述至少一个数据值包括多个数据比特并且所述信号表示所述多个数据比特中的一个数据比特。
11.根据权利要求I所述的数据处理装置,其中,所述路径是控制路径,并且所述信号表示被布置用来将所述数据处理装置配置为对所述至少一个数据值执行所述数据处理操作的控制值。
12.根据权利要求11所述的数据处理装置,其中,所述控制值将执行单元配置为执行所述数据处理操作。
13.根据权利要求11所述的数据处理装置,其中,所述至少一个数据值是根据所述控制值而从数据存储库提取出的。
14.根据权利要求13所述的数据处理装置,其中,所述数据存储库是寄存器组。
15.根据权利要求I所述的数据处理装置,其中,所述路径是时钟路径,并且所述信号表示时钟信号,其中,所述数据处理装置被配置为参考所述时钟信号来执行所述数据处理操作。
16.根据权利要求I所述的数据处理装置,其中,所述延迟是参考系统寄存器中所存储的值来确定的。
17.根据权利要求16所述的数据处理装置,其中,所述系统寄存器中所存储的所述值由另外的数据处理指令设定。
18.一种数据处理装置,该数据处理装置被配置为响应于数据处理指令来对至少一个数据值执行数据处理操作,所述数据处理装置包括 延迟装置,所述延迟装置位于所述数据处理装置内的一路径上,所述延迟装置用于对所述路径上的信号的传送施加延迟,其中,所述路径上的所述信号的传送形成所述数据处理操作的部分, 其中,所述数据处理装置被配置为在预定时间点确定所述数据处理操作的结果,所述预定时间点比所述数据处理操作的开始落后预定时间间隔,并且其中,所述延迟装置被配置为使得用于所述数据处理操作被执行的时间加上所述延迟小于所述预定时间间隔,并且 其中,所述延迟装置被配置为使得所述延迟针对响应于所述数据处理指令对所述至少一个数据值的所述数据处理操作的后续执行而被改变。
19.一种数据处理的方法,包括 在数据处理装置中响应于数据处理指令对至少一个数据值执行数据处理操作; 对所述数据处理装置内的路径上的信号的传送施加延迟,其中,所述路径上的所述信号的传送形成所述数据处理操作的部分; 在预定时间点确定所述数据处理操作的结果,所述预定时间点比所述数据处理操作的开始落后预定时间间隔,并且其中,施加延迟的步骤被执行以使得用于所述数据处理操作被执行的时间加上所述延迟小于所述预定时间间隔;以及 针对响应于所述数据处理指令对所述至少一个数据值的所述数据处理操作的后续执行而改变所述延迟。
全文摘要
本发明涉及功率签名扰乱。一种数据处理装置被配置为响应于数据处理指令来对至少一个数据值执行数据处理操作。该数据处理装置包括延迟单元,延迟单元位于该数据处理装置内的一路径上,其中,延迟单元被配置为对该路径上的信号的传送施加延迟,并且所述信号的传送形成数据处理操作的部分。该数据处理装置被配置为在预定时间点确定数据处理操作的结果,其中,所述预定时间点比所述数据处理操作的开始落后预定时间间隔。延迟单元被配置为使得所述数据处理操作被执行的时间加上所述延迟小于所述预定时间间隔。此外,延迟单元被配置为使得所述延迟针对响应于所述数据处理指令对所述至少一个数据值的所述数据处理操作的后续执行而被改变。
文档编号G06F21/00GK102708311SQ201210028189
公开日2012年10月3日 申请日期2012年2月3日 优先权日2011年2月3日
发明者吉恩-博迪斯特·布雷罗特, 斯蒂芬·宗札, 柯德克·丹尼斯·罗伯特·艾罗 申请人:Arm有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1