白化功能单元和方法

文档序号:6611898阅读:412来源:国知局
专利名称:白化功能单元和方法
白化功能单湖施
背景技术
本发明的一个实施例涉及集成电路设计领域,特别地,涉及在微处理
器和/或其它复杂的确定状态机中,用于控制混饨行为(chaotic behavioiO、 提高与确定性行为相关联的安全性、提高可靠性和/或减少性能偏移的方 法。
计算t几系统的复杂度不断增加。如所有复杂的物理设备的情况一样, 在这些 ^辑系统结构中发生的物理和逻辑事件的时间选择会破坏性地 和建设性地相互干扰,产生基本上不可预测的临时行为。这种观测同样适 用于复杂的逻辑电路系统,而不论该复,辑电路系统是否完全在单个芯 片(例如,现代的微处理器)上实现,还是作为相互关联的复杂逻辑电路 芯片的集合实现。例如,已经提出,微处理器现在开始呈现出某种形式的
"蝴蝶^/s",产生紧密^#、于先前的逻辑电路定时^§:行为的不可预见的性能。
不可预见的性能由于多种原因可能是有问题的,其中关键原因是系统 用户依赖于在执行代码和控制其它系统功能中可靠的微处理器行为的事 实。


本发明 示例 行描述,并且本发明不局限于附图,在附图中, 相同的附图^HB表示相同的元件,其中
图1是实现根据本发明一个g多个实施例的白化功能单元的示例性
微处理器的方框图2是实现根据本发明一个棘多个实施例的白化功能单元的示例性 多核微处理器的方框图3是实现根据本发明一个^多个实施例的白化功能单元的另一个 示例性多核微处理器的OT图4是一个示例系统的方框图,其中可以有利地实现一个或者多个实 施例的白化功能单元;
图5是另外一个示例系统的方框图,其中可以有禾她实现一个或者多 个实施例的白化功能单元;
图6题示用于控制混饨行为的一个实施例的方法的流程图。
具体实施例方式
描述了一种在微处理器和/或其它魏的逻辑电路中,用于控制混纯行 为、提高安全性和/或可靠性和/或降低性能偏移的方法和装置。在下面的 描述中,为了说明的目的,描述了许多特定的细节,诸如集成电路设备、 逻辑电路、系统、电路等的特定类型和设置。然而,我们将意识到其它实 施例可以应用至,如驗鹏设备、逻辑电路、系鄉口电路的其它类型和/ 或设置中。
关于"一个实施例"、"实施例"、"示例性实施例"、"各种鄉例",等 等,都表明本发明所描述的实施例可以包蹄定的特征、结构或者特性, 但是不是每个实施例都必然包括特定的特征、结构或者特性。此外,重复 使用的短语"在一个实施例中"虽然可以指f^目同的实施例,但不一定指
代相同的实施例。
如上所述,在微处理器或者其它复杂的逻辑电路装置中不可预见的行 为和/或性能偏移誠问题的。例如,对t个实施例,例如微处理器的逻 辑电路,集成电路设备的其它类型、系统或者系统组,包括白化功能单元
(WFU)。提供白化功能单元用于"白化"、将"噪声"注入,^#换句话说,
干扰一个或者多个功能单元的操作,并且會辦以至少部分非-确定性的、随
机方式执行,i式图控制微处理器、集成电路设备、系统或者系统组的不可
预见的性能偏移,如在下面戶辦细描述的那样。舰处描述的术语"功能
单元"可以指代,例如,从集成电路设备中的电路模i央或者逻辑电路,到
系统和/或系统组中的单个系统的单个集成电路设备的范围的功能单元的
ffi可类型。然而,Sk处使用的"白化功能单元",可以与下面进一步的描
述和所附的权利要求中的描述具有不同的定义。此外,涉及非确定性或者 基本上非确定性行为或者动作或者以基本上非确定性方式的干扰操作包括
基本上不可预见的行为、动作或者干扰操作,除去在所有统计方面的可能 性。
图1是结合根据本发明一个实施例的白化功能单元160的示例性微处 理器100的方框图。示例性微处理器100包括繊高速缓存层级105、足贩宗 高速缓存IIO、存储微行单元(MEU) 115,执行单元(EUs) 120,调度程 序125,总纖130,解码器135,微代码(ucode)只餘储器(ROM) 140, 前端总线(FSB) 150以及其他的逻辑顿各/电路155,其中 高速缓存层 级105包繊别2(L2)、级别1(L1)和级别O(LO)高速缓存,执行单元(EUs) 120可以包括例如 [与浮点执行单元,微代码(ucode)只i雜储器(ROM) 140可以包括补码(patch code)部分145。
虽然图1中是出了特定的示例性微处理器结构,可以理解的是,以不 同方式排列和/或包括了不同单元的微处理器和/或其他类型的处理器或者 ,电m^可以有利地实现一个或者多个实施例的白化功能单元。
可以设置白化功能单元160以 中和/或归纳用于控制微处理器100 动,性以减少不期望的混纯行为的本地方法。由白化功能单元控制和/或 初始化的至少某些行为基本上是非确定性的和/或实际上是随机的。一个或 者多个实施例的白化功能单元可以通过以一种或者多种方式插入来减少混 饨行为,其中的一种或者多种方式可以M处理器的微体系结构(或者另 一设有一个或者多个实施例的白化功能单元的集成电路、系统或者系统组 的特征)来实现。通常&fe将这些用于干扰的各种方法中的每一个可以称 为"白化"、"干扰操作"或者"插入噪声"到与各个处理器、集成电路或 者系统相关的操作M处理中。
例如,将图l中的白化功售巨单元160耦合到針微代码R0M 140, MEU 115,执行单元120,调度禾歸125, i 腺高速缓存n0,总线簇130以及前 端总线150,并且将白化功能单元160进一频行f給以便获取参数(例如, 计数器的值)和/鄉他与控制相关联的如可以舰的混鹏制的特定方法 所需的特征(例如,Ott"Grebogi-Yorke或OGY方法,粉红噪声等)。
機作中,白化功能单元160可以至少部分鹏制一个赫多个与其 耦合的单元的操作方面,或者可以以其他方式,以例如M^不期望的混饨 行为、从丽以斷氐性能偏移为目标产錄响。下面^f这个和/鄉他实 施例的白化功能单元的其他操作和目的^t行描述。
对于图1的示例性处理器100,将白化功能单元160耦合到微代码ROM (uCode ROM) 140。微代码ROM140可以存储一个或者多个微代码流,其中 定义这鷀代码流以便将气泡(bubble)(例如,空操作赫鹏作)插入 到执行路径,棘不同地,干扰处理器100的微代石驅制部分的操作。微
代码流的设计可以取决于多种因素,包括期每干iW作的特定单元以及被
认为有助于M^不期望的混漸于为的干扰的禾號。对于一些实施例,这些 流甚至可以是动态定义的,鹏是在构,微代码补空间(韦隅)145之后定 义的。
对于该例子,为了干扰处理器100上的一个或者多个单元的操作,白 化功能单元160响应刊合定事件、计数器值、伪随机信息和/鄉他标己, 和/^m据临时模式,例如伪随机临附莫式,可以调用一个或者多个所描述 的微代码流。对于某些实施例,白化功能单元160可以响应于不同的计数 器值、伪随机值、事件等,以便同时地或者在不同时间、对与各种单元相
关联的對,者不同的动作进行初始化和/或控制。如上戶; ^于这种实施
例,可以耦合白化功能单元160以接iBd^制、繊、计数器、定时和/或其 他信息,其中这些信息用于确定何时和何处插入气泡或者以其他方式干扰 操作。
例如,白化功能单元160可以M3^制逻辑163赫白化功能单元状 态机165与电路161耦合。例如,对^^个实施例,电路161可以是伪随 机数生成器,基于反向偏置的二极管,以及产生粉红噪声的相关联的放大 器,噪声的另一来源,或伪随机翻,或计数器。响应于达到预定计数的 电路161 (其中电路161是计数器),離根据伪随机信息(其中电路161 ,随 ^ ^伪随机信息的其^*源),白化功能单元160可以调 用一个或者多个预定义的或#^态定义的存储在微代码ROM 140中的微代 码流,以便将噪声aA—个或者多个功能性单元。虽然电路161被示出为 处于白化功能单元160夕卜部,对于其它实施例,可以将^^到白化功能 单元中^#^成到处理器100上救卜的白化功能单元160可以访问的另一 錢上。
可选^i喊者另外地,白化功能单元160可以响应于与^A噪声的单
元直接关联的事件或标准。例如,白化功能单元可以响应于与性能相关的 信息,例如高分支觀预测计数。响应于所探观倒的可以测量的性倉踱量
的斷氐,例如,与一个预定的阈值相比,白化功能单元160可以实现各种 实施例的一个或者多个白化方法,以便干扰操作并M^混、滩行为。对于一 些实施例,可以持续执行白化行为直到与性能相关的信息指示出性能超过 了相同的或者不同的阈值。对于其它的实施例,可以以不同的方式来控制 白化行为。
特别地,根据可以实现的一些白化行为,如图1所示的例子,例如, 白化功能单元160可以il5i调用码直接或者间接iffi制MEU 115以改变与 负载和存储(例如,通过插入气泡到存條崖冲器中)相关联的高速缓存等 待时间,控制总线簇以将气泡加入主存储器的负载和存储,通过控制具有 ,(pipeline)的执行单元120 (例如,浮点操作),控制白化执《亍流以 将气泡插入管道中,将空处理(null transaction)放置在前端总线上, 在随后的某时间随WM新己将要从高速缓存弹出的高速缓存线,和/,常 根据某标准(例如,临时的)来控制调度禾歸125分配空的離作(也称
为微-指令^微指令)。
可以衝l白化功能单元状态机165、控制逻辑电路163和/#它的响
应于事件、控制、定时或者计数信息、或其它指示或者行为的与白化功能 单元160相关联的其它逻辑顿各,来调用和/離制以上駄的齡操作, 以便干扰图1戶^的各个处理器单元的操作。对于由白化功能单元(FU) 160直接i舰行初始tt^控制的操作,白化功能单元160可以包括用于一 个或者多个代码序列的本地存储器(例如,繊存储168),和/或可以允许 干扰一个或者和多个单元的操作的逻辑顿各。
继,考图1,除了将气泡加入执疗流和/m信路径,M控制单元 或者代码以将气泡加入执疔流和/^l信路,泣外,白化功能单元160也可 以4顿其它的方^^M^混饨行为。例如,响应于招跟宗高速缓存110中 检测到一个赫多个循环,期顿WFU 160或舰处理器100上的其它逻 辑电路,WFU 160可以51il加入空的,作(mit处也可以称为空操作M 气泡)到这些J 腺中,以便推测振荡并随机的P且止它。对于某些实施例来 说,用于i照赈荡和卩腿的更鋭的算法可能是有用的。
另夕卜i1k^可^i稱也,某些实施例的白化功能单元160可以调用设计 用来将噪声加入主机系统中的轻量级的线程170。虽然图1中所示的轻M 线程170被存储在白化功能单元160上的本地 存储器168中,可以理 解的是,可以将轻戯的线程170存储在另外一个存储器中,或^M31白 化功能单元160以其它方式获取。
对于一个实施例,可以设计以执行轻M的线程170,以便其可以干扰 或者处理一个或者多个功能性单元的常规操作*) 作进行干扰。例如, 轻M的线程170可以产生功率事件、使资源^ffl随机化和/或主要以不可 预料的^#伪随机的方式争取存储器或者其它的资源。
对于一些实施例,可以存在多于一个的轻量级的线程,,量级的线 程具有设计用于干扰第一单元或者单元集合操作的第一线程,以及设计用 于干扰一个或者多个其它单元操作的一个或者多个其它线程。或者,可以 以不同的方式将多个线程设计用于干扰一个或者多个单元的操作。甚至可 以将一个M多个轻ima^呈170设计用于在SA噪声以M^不期望的混 饨行为之外,执行有用的工作。
类似于,的其它白化方法,白化功能单元160可以响应于事件、基 ^i十数器的或者伪随机的标准、临时信息,和/驢于其它因素,来调用和 /或中断轻量级的线程170。
可使用一个或者多个已知的方法来设计所有或者部分的轻量级线程 170,用于产 日寸伪随机的指令足跟 。例如,对于一个实施例,可以从伪 随机数^l中产生"循环计数"。在轻M线程程序中,可以实现使用了 所产生的循环计数的循环,接着退出以获取另外一个。用于产生这样一个
线程的其^r,括在各种^例的范围中。
对于调用轻量级线程的产生事件的伪随机序列的实施例,执行在线程 中指令的弓腿时间上的频率分析和所获取的功率谱在相对较宽的频谱上, 具有基本上线型的功率的对数频率特性。
例如,给定事件的时间序列(例如,指令的弓腿时间),例如事件频率 的频谱t (1) , t (2), t (3),…t (n) , t (n+l)…可以Mil餅列上鹏一种形式 的傅立叶变换,并将振幅平方以确定在^可能的频率上的"功率"来建 立。这个"功率"与瓦特没有关联,但是其是所需的正弦波的每个频率量的度量,使得当加在一起的时候,可以合成初始的时序。这个频谱对于"白" 噪声来说是"平坦的"(基本上处于所有频率的"功率"都相同),并,
于粉红(pink)噪声是,于线性的(即随着对数分度上的频率的升高而 斷氐)。
继续参考图l,对于其它实施例,可另夕卜i喊者可选掛似顿例如重复 的和/或随机的攻击(或中断执行流的其它类型的命令)和/或局部重置, ^MB寸钟系统中的各种响应等待时间,在管道中引入S^循环和/或弓l入 时钟偏差(例如,从一个时钟边缘到下一个任意地改变时钟周期)等的其 它技术,以^A噪声。白化功能单元160可以{顿控制逻辑喊163、状态 机165、一个或者多个存储在 存储器170中的例程,和/或位于白化功 能单元内部或者外部的其它逻辑电路或者指令,初始i域者控制一个或者 多个这些方法。作为干扰或者改^^作以控制不期望的混饨行为的其它操 作或者动作在各种实施例的范围中。
对于一个实施例,舰一个或者多个管脚、端口 (例如测试端口)微
操作,或者其它的硬件和/或刺權制机制,白化功能单元160对于硬件和
/或软4權制来说赵卜舰访问的。此外,如上戶诚,对于某些实施例,由
白化功能单元控制的一个或者多个噪声注入操作可以处于白化功能单元状
态机165的算^SMt下,其中可以313^卜部或者内部控制机制初始化和/
或中断该白化功能单元状态机165。
对—些实施例,虽然白化功能单元160在图i中《顿易于描述的单
个模块来表示,白化功能单元不必是物理邻接的和/或以不同的方式设置 的。例如,WFU 160的各种方耐以是分械相互作用的誠鹏(或者系 统)的^F面布置图上。各种实施例的白化功能单元的分配和/赫置可 以取决于多个因素,例如舰由白化功能单元的部分控制的逻辑电路,空 间约束,性能考虑等。
继乡緣考图1,对于某些实施例,除了注入噪声以减少不期望的混纯行 为外,鹏实施例的白化功能单元160在提高执行的线程的娃性方面也 是非常有用的。驗,随着可信任计算的重要性的增加,已经关注到辦 可以发现处理器的行为中的信息,这些信息可能导 其它可信任程序的 干扰。游见察与处理激亍为的本地确定论相关联。
il31以某种方式干扰处理器的操作而为处理器的行为增力n非确定性, 白化功會巨单元160可以^M示的规则性(revealing regularity)模糊, 并由 高了执行的线程的#性。
虽然此处描述用于确定何时干扰一个或者多个功能性单元的操作的一 些示例方、法,本领域普通技术人员将理解的是可以使用用于其它实施例的 各种其^t去。关于决定如何以及何时初始tt^些动作可以取决于设计者, 并可以臓于各种各样的因素。例如,由白化功能单^it行初始化和/或控 制以M^不期望的混漸亍为的动作,可以针对期望的性能目标来加以平衡。 其它的因素,例如用于额》啦制逻辑电路、代码存储等的空间考虑在设计 白化功能单元160以及将舰的白化方法时也要考虑。
此外,可以将一个或者多个实施例的白化功能单元设计成可任意地, 或者响应于给定的标准和/或斜牛来打开和/或关闭(M启用和/或禁用)。 例如,可以有一^Zffl程序,这^ffi辦被很好地理解、优化,和/或免 除安全需要(即应当基于高信任级别关闭白化功能单元)地考虑,使得处 理器(例如,或者其它电路或者系统)不拘泥于低性能模式,并且已经将 它们设计JOT于高性能。
上述的示例性实施例是参考单核处理器的,应当明白,对双核或者多 核处理器,可以实现类似的用于减少不期望的混漸亍为的方法。实际上, 上面提及的所不期望的混纯行为和/或安全考虑对于多核处理器来说可能 更是问题。
参考图2,其描述了双核处理器,对于这种实施例,可以实现作为用于 多核的共享资源的白化功能单元260。
,如图3所示,可以在核301中 的一个上实现白化功能单元360,并^于将噪声^A到一个或者多个其它 核302的操作中。虽然在图2和图3中仅仅显示了一个白化功能单元,可 以明白,可以为多核处理器提供多个白化功能单元,并且在单核或者多核 的内部赫外部来实现白化功能单元。齢卜,对于图1戶标的白化功能单 元160,用于多核处理器的白化功能单元可以不必物理地邻接,其可以具有 基于各种因素例如空间性能考虑等的结构和/或布置。
对于包括多核处理器的实施例,白化功能单元260或者360,可同时或
者在不同的时间,实现类似于用于多个核中的一个或多个的如上戶;M的白
化方法。白化功能单元260或者360,还可能能够同时赫在不同的时间, 实现用于多核的多个、不同的白化方法。
已说明了关于处理器的,例子。然而,也可以OT—个或者多个实 施例的白化方法,来控制在 电路、系统、平台和/或系乡M平台组的其 它鄉中的不期望的混纯行为。图4是实例性系统400的高级别方框图, 其中,可以方便地实现一个或者多个实施例的白化方法。
对于图4中所示的 例,例如,可以在芯片组中实现白化功能单元 460,并且响应于如上所述的各种标准,白化功能单元460可以用于控制其 它,^^M位于系统400中的部分集成电路的白化。
或者,如图5所示,可以存在分布^t系统500上的多个白化功能 单元560。所述多个白化功能单元560可以或者可以不鄉匕相互通信,和/ 或白化功能单元560可以包括位于单,成电路中的多W单元,其中白
化功能多4^单元在单个集成电路中实现。
图4和图5的白化功能单元460和/或560可以实现如上戶;M的一个或 者多个白化方法。Jtl外,白化功能单元460和/或560可以实5见额外的白化 方法,将该嫩卜的白化方法设计成^>系统、平台或者系统或平台组中不 期望的混纯行为,其中在系统、平台或者系统或平台组中实5见白化功能单 元460和/或560。
给跳处描述的用于实施例的白化处理,不应改变计算的结果,而仅 仅改顿时,4顿白化处理的同一禾骄的两條行,可以具有不同的定时, 因此可以通过不同的路径。这样可以允许某种程度的有用的M,以及在 多^行之间的交叉检査(在不同的核中是同步的,或者在单核中,续 的)。^E可以是有用的,因为很多麟是与计时相关的,并且一个或者多 个实施例的白化功能单元可以导致在总计时上的抖动。
可以理解,以不同方式配置且包括不同元素的系统也可以方便地实现 一个或者多个实施例的白化方法。财卜,虽然系统400和500的特定元素 被描述为包括白化功能单元,可以明白,对于其它的实施例,可以在不同 的元素中实现白化功能单元。
对是否在多核、系统、平台或者多系统或者多平台设计中i柳一个或 者多个白化功能单元确定,錢于权衡的设计决定,即对例如功率、空间、
复杂度等的权衡。ltt外,可以明白,可以在从单个的集成电路到大规模的
linnx月艮务器等不同级别实1^据各种实施例的白化处理。
图6是示出用于控制混漸亍为的一个实施例的方法的流程图。在方框 605,指示符,例如是给定事件、计数器的值和/或其它的指示符,临时模 式,例如伪随机临时模式,临时信息等。在方框610,初始化白化操作。例 如,白f娥作可以包括,执行轻難线程,将气泡插入执行路径,重复和/ 或随机攻击或者部分重置,在M时钟系统中的各种响应等待时间,在管 道中引入m^循环,和/或弓l入时钟抖动(例如,舰将B寸钟周期从一个时 钟職任意改^iU下一个),和/或其它动作。
可以理解,各种实施例的方法可以包括额外的动作,或者不包括参考 图6戶满的操作。例如,对于某些实施例,白化操作可以发生,而不是响 应于J标符。在此描述的其它行为在一个或者多个实施例的范围内。
使用一个或者多个实施例的白化方法,可以监控性能偏移,以及以类 似于热量传导的方式进行抑制,其中热量传导通常允许监控和感知热量偏 差。对于那些对他们的工作量需要可预测性能的客户来说,这可能是所期 望的特征。并且, 一个或者多个实施例的白化方法可以M^、灾难性系统锁 定的先验可能性,例如由于无法预料的定时交互、资源不足、活锁或者死 锁等。这种可能性的M^是抑制上面舰的性能偏移的自然结果。形卜, 由于防止了大范围的性能偏移,总的"平均"性能实际上是提高了,其中
的性能偏移是f顿一个或者多个实施例的白化方法而产生的。
对于一些实施例,在设计中存在的白化功能单元,可以允许设计者/架
构师对仿真进行白化,以M^不规贝啲性能娜,该不规则的数据可能消 耗仿真循环,而提供少量信息或不提側言息。ltW卜, 一个或者多个实施例 的白化方法可以提高执4谱程例如BIOS净隅和它们的分支的^性。
因此,描述了用于控制在微处理器或者其它复杂逻辑排列中的混 沌行为的各种实施例和方法。在前面的说明书中,参考其特定的示例 性实施例,已经对本发明进行了描述。然而,可以理解,在不背离本 发明的在所附的权利要求中提出的较宽的精神和范围的情况下,可以 进行各种修改和变化。因此,可以将说明书和附图理解为描述性的、 而不是限制性的。
权利要求
1、一种装置,包括耦合到第一功能单元的白化功能单元,该白化功能单元以基本上非确定性的方式来干扰该第一功能单元的操作。
2、 如权利要求l戶欣的體,其中戶腿白化功能单元用于Mii弓l起如下的至少一种动作来干扰操作插入一个或者多个空操作,执行轻量级线程,改变等待时间,弓l入时钟抖动,执行魏循环,基本上随TO^t高速 缓存线进行^^i己,以及执行中断执斤流的指令。
3、 如权利要求2所述的装置,其中所述白化功能单元和戶,第一功能 单元是^S微处理器中的。
4、 如权利要求3戶脱的縫,其中将戶脱白化功能单元耦合至微代码 只读存储器(ROM)中,并M于4顿存储在R0M中的微代码鹏作进行干 扰。
5、 如权利要求4戶腿的錢,其中戶腿微处理器包括至少两个核。
6、 如权利要求2戶脱的驢,其中将戶诚白化功能单元誠至孫统中 的第一誠电路中,并且戶脱第一功能单元位于该系统中的第二集成电路 上。
7、 如权利要求2自的装置,其中将戶脱白化功能单元,到第一系 统中,并JJMm—功能单元錢二系统。
8、 如权利要求2戶,的装置,其中将戶,白化功能单^ii一步耦合到 第二功能单元,并朋万述白化功能单元还用于以基本上非确定性的方式干 扰織二功能单元的操作。
9、 如权利要求1戶M的^S,其中戶皿白化功能单元响应于粉红噪声 源、白噪声源、伪随机数生繊和计数器中的一个,来开始鹏作的干扰。
10、 —种微处理器,包括 微代码只读存储器; 第一功能单元;以及白化功能单元,其用于以基本上非确定性的方式来干扰该第一功能单 元的操作。
11、 如权利要求10戶脱的微处理器,其中戶/M第一功能单元是存储器 执行单元、前端总线接口单元、高速缓存以及执行单元中的一个。
12、 如权禾腰求ll所述的微处理器,其中所述白化功能单元还用于以 基本上非确定性的方式軒 旌少第二功能单元繊作。
13、 如权利要求12所述的微处理器,其中所述白化功能单元响应于计 数器、伪随机数生皿和噪声源中的一个,来干扰所述第一和第二功能单 元中的至少一个的操作。
14、 如权利要求io所述的微处理器,其中所述白化功能单元用于m弓胞如下的至少一种动作干鹏作插入一个或者多个空操作,执行轻量级线程,改变等待时间,弓i入时钟抖动,执行m^循环,基本上随mw高速缓沖旨储器线进行^i己,以及执行中断执fr流的指令。
15、 如权利要求10所述的微M器,其中所述白化功能单元响应于事 件和控制言息中的一^M^Ft^脱第一功能单元的操作。
16、 如权利要求10臓的微鹏器,其至少包括第一处理器核和第二 处理器核。
17、 如权利要求16所述的微处理器,其中将戶;M第一功能单元集成到 戶;M第一处理器核中,并将自白化功能单元集成妾iJ戶;M第二处理器核中。
18、 一种方法,包括接收指示符;以及响应于该指示符,以基本上非确定性的方式来干扰至少第一功能单元 的操作。
19、 如权利要求18所述的方法,其中接收指示f抱括接收伪随机信息、计数器的值、控制信息、事件发生的指示和来自噪声源的信号中的一个。
20、 如权利要求18戶,的方法,其中干矛 作包括如下的至^~种操 作.-插入一个或者多个空操作,执行轻量级线程,改变等待时间,引入时 牵衬斗动,执行重放循环,基本上随机i顿高速缓存线进行iH己,以及执行 中断执t亍流的指令。
21、 一种系统,包括 处理器;耦合到该处理器以便传送信息的总线;耦合到该总线以便与网络连接的网络连接器;以及白化功能单元,其用于以基本上非确定性的方式来干扰该处理器的操作。
22、 如权利要求21戶腿的系统,还包括耦合到戶腿总线和戶腿处理器 的芯片组,其中将戶,白化功能单元集成到该芯片组和所述处理器中的一 个上。
23、 如权利要求21戶腿的系统,其中戶脱白化功能单^ilM弓胞如下 的至少一种动作奸J^f述处理器的操作插入一个或者多个空操作,执行轻量级线程,改变等待时间,弓l入时钟抖动,执行s^文循环,基本上随miW高速缓存,行^i己,以及执行中断执fr流的指令。
全文摘要
本发明涉及在集成电路、系统或者和系统组中,用于减少不期望的混沌行为,提高安全性和/或可靠性和/或降低性能偏移的方法。根据一个方面,将白化功能单元耦合到第一功能单元,白化功能单元用于以基本上非确定性的方式来干扰第一功能单元的操作。对于某些方面,白化功能单元可以响应于事件、控制信息、临时信息、一个或者多个计数器和/或其它的指示来干扰第一功能单元的操作。
文档编号G06F11/00GK101174229SQ200710146409
公开日2008年5月7日 申请日期2007年6月8日 优先权日2006年6月9日
发明者J·马特斯 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1