基于流水线轮动的低峰值功耗嵌入式处理器的制造方法

文档序号:6631743阅读:115来源:国知局
基于流水线轮动的低峰值功耗嵌入式处理器的制造方法
【专利摘要】一种基于流水线轮动的低峰值功耗嵌入式处理器,包括:N级流水线,指令从前级流水线流向后级流水线,完成指令的完整功能;流水线分类单元,将各级流水线分为M类,N≥M>1,为每一类设置对应的功耗权重,并将流水线分类信息以及功耗权重信息输出;流水线监测单元,实时监测各级流水线的工作状态,将各级流水线是否正在工作中的状态信息输出;流水线轮动控制单元,对各级流水线是否需要关闭进行仲裁,进而对需要关闭运行的流水线进行有优先级的阻塞,使得同时运行的流水线数量控制在设定范围内以满足峰值功耗要求。本发明在现有流水线架构下通过监测流水线工作状态有效将峰值功耗控制在较低范围内、适用于对峰值功耗敏感领域。
【专利说明】基于流水线轮动的低峰值功耗嵌入式处理器

【技术领域】
[0001]本发明涉及嵌入式处理器领域,尤其是一种基于流水线轮动从而降低处理器运行时峰值功耗的嵌入式处理器。

【背景技术】
[0002]嵌入式处理器的应用领域中,功耗是设计的最重要指标之一。特别是移动终端应用,由于近几年电池技术没有突破性发展,因此该领域对处理器功耗的要求更加苛刻。嵌入式处理器的低功耗设计主要针对平均功耗和峰值功耗两类。
[0003]平均功耗指处理器在单位时间内的工作功耗,可以通过处理器完成特定工作对应产生的总功耗除以工作时间获得。平均功耗主要影响设备电池的使用时间,通常只会对产品使用体验产生影响。
[0004]峰值功耗指处理器工作时能达到的最大功耗,即处理器在完成特定工作的整个过程中功耗最大的点。非接触式智能卡应用上,过大的峰值功耗会导致原有电子发射级别不够进而导致卡片操作错误。因此对峰值功耗的控制成为嵌入式处理器必须解决的问题。
[0005]另一方面,随着用户对性能要求的不断提高,嵌入式处理器的流水线深度不断加深,流水线上以及各级流水线之间的逻辑资源也不断增加,当处理器各级流水线同时工作时,容易产生功耗尖峰,即出现峰值功耗过大的情况。


【发明内容】

[0006]为了克服现有嵌入式处理器在运行时容易产生峰值功耗过大、不能适用于对峰值功耗敏感领域的不足,本发明提供一种在现有流水线架构下通过监测流水线工作状态有效将峰值功耗控制在较低范围内、适用于对峰值功耗敏感领域的基于流水线轮动的低峰值功耗嵌入式处理器。
[0007]本发明解决其技术问题所采用的技术方案是:
[0008]一种基于流水线轮动的低峰值功耗嵌入式处理器,所述处理器包括:
[0009]N级流水线,N为自然数,N>1,指令从前级流水线流向后级流水线,完成指令的完整功能;
[0010]流水线分类单元,将各级流水线分为M类,M为自然数,N>M>1,为每一类设置对应的功耗权重,不同类之间功耗权重互不相同,并将流水线分类信息以及功耗权重信息输出到流水线轮动控制单元;
[0011]流水线监测单元,实时监测各级流水线的工作状态,将各级流水线是否正在工作中的状态信息输出到流水线轮动控制单元;
[0012]流水线轮动控制单元,连接于流水线分组单元以及流水线监测单元的输出端,根据输入的流水线分类信息、功耗权重信息以及流水线工作状态信息,对各级流水线是否需要关闭进行仲裁,进而对需要关闭运行的流水线进行有优先级的阻塞,使得同时运行的流水线数量控制在设定范围内以满足峰值功耗要求。
[0013]进一步,所述流水线轮动控制单元中,用户通过流水线轮动控制单元设置处理器工作时允许的最大功耗权重,该权重定义为峰值功耗权重;实时统计处于工作状态的各级流水线功耗权重之和,该权重之和定义为实时功耗权重;
[0014]依照从后向前的顺序,依次将处于工作状态的流水线的功耗权重累加到实时功耗权重中,若在判定第f级流水线时发现实时功耗权重大于峰值功耗权重,f为自然数且I<f ^N)则停止判定工作,无条件阻塞f级流水线以及f级之前的所有流水线;若在判定第f级流水线时发现实时功耗权重小于或等于峰值功耗权重,则继续判定第f-ι级流水线;第f-ι级流水线的判定方式与第f级相同。
[0015]更进一步,所述流水线分类单元中,使用固定的分类方式将所有流水线分成M类,并为各类分配固定的功耗权重。
[0016]或者是:所述流水线分类单元中,通过用户配置的方式,在处理器运行过程中动态修改流水线的分类信息以及功耗权重信息。
[0017]各级流水线中,若j > k,j和k均为自然数,I < j彡M,I < k彡M,则第j类流水线的功耗权重大于第k类流水线的功耗权重。
[0018]所述流水线监测单元中,监测各级流水线是否处于工作状态,对于第I级流水线,在某个时钟周期中,若处理器发起取指请求,则该级流水线判定为工作中;对于第i级流水线,i为自然数,且2 < i ( N,在某个时钟周期中,若第1-Ι级流水线中存在有效指令,且该有效指令可以被发送到第i级流水线,则该第i级流水线判定为工作中。
[0019]所述峰值功耗权重需大于任何一类流水线的功耗权重。
[0020]所述流水线轮动控制单元中,当实时功耗权重大于峰值功耗权重时,阻塞仲裁后需要关闭的流水线以保证实时功耗小于峰值功耗权重。
[0021]所述流水线轮动控制单元中,对第I级流水线的阻塞通过阻止处理器发送取指请求完成;流水线轮动控制单元对第e级流水线的阻通阻塞过阻止第e-Ι级流水线向第e级流水线发送指令完成,e为自然数且2 < e < N-1 ;最后一级,即第N级流水线永远不会被阻塞。
[0022]所述流水线轮动控制单元中,在判定是否需要阻塞流水线时,从最后一级流水线开始判定,按照最后一级到第一级的方式依次进行判定,所有的判定工作均在一个始终周期内完成。
[0023]本发明的有益效果主要表现在:1、在不明显增加硬件资源的情况下,通过各级流水线之间的配合轮动,将处理器在运行过程中的动态峰值功耗始终控制在较低的范围内,使得处理器可以应用于对峰值功耗敏感的领域;2、在不改变处理器原有流水线结构的情况下,通过引入流水线轮动控制单元等模块,对流水线运转机制进行改造,可以方便地应用于各类处理器中,具有较好的灵活性。

【专利附图】

【附图说明】
[0024]图1为本发明一种具体实施方案的总体框架结构图。
[0025]图2为本发明一种具体实施方案中流水线分类单元的工作机制的示意图。
[0026]图3为本发明一种具体实施方案中处理器运动过程中对各级流水线的实现阻塞的工作机制的示意图,其中,(A)表示在取指延迟为一个周期的情况下,处理器在清空流水线开始取指之后第一个周期内处理器的运行情况;(B)表示第二个周期内处理器的运行情况;;(C)表示第三个周期内处理器的运行情况;⑶表示第四个周期内处理器的运行情况。

【具体实施方式】
[0027]下面结合附图对本发明作进一步描述。
[0028]参照图1?图3,一种基于流水线轮动的低峰值功耗嵌入式处理器,包括:
[0029]N级流水线,N为自然数,N>1,各级流水线负责不同功能,指令从前级流水线流向后级流水线,完成指令的完整功能;
[0030]流水线分类单元22,将各级流水线分为M类,M为自然数,N ^ M>1,并将流水线分类信息输出到流水线轮动控制单元26 ;
[0031]流水线监测单元24,实时监测各级流水线的工作状态,并将各级流水线是否正在工作中的状态信息输出到流水线轮动控制单元26 ;
[0032]流水线轮动控制单元26,连接于流水线分组单元以及流水线监测单元24的输出端,根据输入的流水线分类信息以及流水线工作状态信息,对每级流水线是否需要关闭进行仲裁,对需要关闭运行的流水线进行有优先级的阻塞,以便将同时运行的流水线数量控制在设定范围内以满足峰值功耗要求。
[0033]参照图1所示,为本发明一种具体实施方案的结构示图。该实施方案中的处理器为四级流水线,从前到后依次分别为:取指、译码、执行、回写。处理器向指令总线发起取指请求,从指令总线返回的指令依次流经各级流水线,在不同的流水线完成不同的功能。第一级取指流水线中,流水线功能由取指逻辑10完成,当该级流水线中存在有效指令时,发送控制逻辑一 18决定是否将该指令发送到下级流水线。第二级译码流水线中,流水线功能由译码逻辑12完成,当该级流水线中存在有效指令时,发送控制逻辑二 20决定是否将该指令发送到下级流水线。第三级执行流水线中,流水线功能由执行逻辑14完成,当该机流水线中存在有效指令时,该指令将直接发送到下级流水线。第四级回写流水线中,流水线功能由回写逻辑16完成,当该级流水线中存在有效指令时,该指令将直接进行回写操作。流水线分类单元22通过用户配置,将各级流水线分成不同类别,并为各个类别分配互不相同的功耗权重,类别号越大,对应的功耗权重也越大。在程序的运行过程中,用户可以根据实际情况动态调整各级流水线的分类设置以及各类别的功耗权重数值,该流水线分类单元22实时地将各级流水线类别信息以及功耗权重信息输入到流水线轮动控制单元26。流水线监测单元24实时监测各级流水线是否处于工作状态,对于第一级流水线,若在某个周期中处理器发出了取指请求,则认为该级取指流水线处于工作状态;对于第二级流水线,若某个周期中第一级取指流水线中存在有效指令,且该有效指令可以被发送到第二级流水线,则认为该级译码流水线处于工作状态;对于第三级流水线,若某个周期中第二级流水线中存在有效指令,且该有效指令可以被发送到第三级流水线,则认为该执行流水线处于工作状态;对于第四级流水线,若某个周期中第三级流水线中存在有效指令,且该有效指令可以被发送到第四级流水线,则认为该级回写流水线处于工作状态;流水线监测单元24实时地将各级流水线工作状态信息输出到流水线轮动控制单元26。流水线轮动控制单元26连接于流水线分类单元22以及流水线监测单元24的输出端,对输入的流水线分类信息、功耗权重信息以及流水线工作状态信息进行整合,将处于工作状态的流水线的功耗权重累加到实时功耗权重中,并结合用户配置的峰值功耗权重,根据流水线阻塞算法28决定是否需要将原本处于工作状态的流水线进行阻塞,该流水线阻塞算法28从最后一级流水线开始判定,并依此反向进行:对于第四级流水线,因为峰值功耗权重大于任何一类流水线的功耗权重,所以在判断该级流水线时,实时功耗权重肯定小于峰值功耗权重,即该级流水线在任何周期内均无需进行阻塞;对于第三级流水线,若在判断该级流水线时,实时功耗权重经过累加之后大于峰值功耗权重,则流水线轮动控制单元26通过操作发送控制逻辑二 20阻止第二级流水线向下发送指令,以阻塞第三级流水线;对于第二级流水线,若在判断该级流水线时,实时功耗权重经过累加之后大于峰值功耗权重,则流水线轮动控制单元26通过操作发送控制逻辑一 18阻止第一级流水线向下发送指令,以阻塞第二级流水线;对于第一级流水线,若在判断该级流水线时,实时功耗权重经过累加之后大于峰值功耗权重,则流水线轮动控制单元26通过屏蔽处理器取指请求来阻塞第一级流水线。
[0034]参照图2所示,为本发明一种具体实施方案中流水线分类单元22的工作机制。该实施方案中流水线分类单元22将处理器的四级流水线分为两类:第一类流水线集合30以及第二类流水线集合32。其中,第一级取指流水线、第二级译码流水线、第四级回写流水线属于第一类流水线集合30,该类流水线的功耗权重为I ;第三级执行流水线属于第二类流水线集合32,该类流水线的功耗权重为2。该分类方式以及功耗权重设置可以采用固定的方式;亦可以采用可配置的方式,在处理器运行过程中通过用户具体配置来进行更改。流水线分类单元22将该分类信息以及功耗权重信息输出到流水线轮动控制单元26。
[0035]参照图3所示,为本发明一种具体实施方案在处理器运行过程中对各级流水线实现阻塞的工作机制。该实施方案中,流水线的分类方式以及各类流水线的功耗权重如图2中所示,并设置峰值功耗权重为2。图3(A)到图3(D)说明了在取指延迟为一个周期的情况下,处理器在清空流水线开始取指之后四个周期内处理器的运行情况。图3(A)表示第一个周期中,处理器发出指令I的取指请求,因此第一级处于工作状态。流水线轮动控制单元26从第四级流水线开始判定,因为三级流水线中不存在有效指令,因此第四级流水线处于不工作状态。同理,第三级、第二级流水线也处于不工作状态。当判定到第一级流水线时,发现第一级处于工作状态,而第一级流水线属于第一类流水线集合30,其功耗权重为1,将该功耗权重累加到实时功耗权重中,得到实时功耗权重为1,小于峰值功耗权重,因此不需要对第一级流水线进行阻塞。即在图3(A)所示的周期中,处理器正常工作。图3(B)表示第二个周期中,指令I从指令总线返回到第一级流水线,处理器发起指令2的取指请求,因此第一级、第二级流水线处于工作状态,第三级、第四级流水线处于不工作状态。流水线轮动控制单元26从第四级开始判定,当判定到第二级流水线时,发现第二级处于工作状态,将其功耗权重I累加到实时功耗权重中,此时实时功耗权重为1,小于峰值功耗权重,因此不需要对第二级流水线进行阻塞。当判定到第一级流水线时,发现第一级处于工作状态,将其功耗权重I累加到实时功耗权重中,此时实时功耗权重为2,等于峰值功耗权重,即此时流水线达到允许范围内的最大峰值功耗状态,因为实时功耗权重没有大于峰值功耗权重,所以不需要对第一级流水线进行阻塞。即在图3(B)所示的周期中,处理器正常工作。图3(C)表示第三个周期中,指令I到达第二级流水线,指令2从指令总线返回到第一级流水线,处理器发起指令3的取指请求,因此第一级、第二级、第三级流水线处于工作状态,第四级流水线处于不工作状态。流水线轮动控制单元26从第四级开始判定,当判定到第三级流水线时,发现第三级处于工作状态,将其功耗权重2累加到实时功耗权重中,此时实时功耗权重为2,等于峰值功耗权重,因此不需要对第三级流水线进行阻塞。当判定到第二级流水线时,发现第二级处于工作状态,将其功耗权重I累加到实时功耗权重中,此时实时功耗权重为3,大于峰值功耗权重,因此流水线轮动控制单元26通过阻止第一级流水线中有效指令发送到第二级方式,对第二级流水线进行阻塞。同时,流水线轮动控制单元26通过屏蔽处理器取指请求的方式,对第一级流水线进行阻塞。即在图3(C)所示的周期中,原本可以工作的第一级、第二级流水线被阻塞,只有第三级流水线正常工作,以保证处理器的峰值功耗维持在允许范围内。图3(D)表示第四个周期中,指令I到达第三级流水线,指令2仍处于第一级流水线(因为上以周期中第二级流水线被阻塞),处理器继续发起指令3的取指请求(因为上以周期中第一级流水线被阻塞),因此第一级、第二级、第四级处于工作状态,第三级处于不工作状态。流水线轮动控制单元26从第四级开始判定,发现第四级处于工作状态,将其功耗权重累加到实时功耗权重中,此时实时功耗权重为I,小于峰值功耗权重,因此不需要对第四级流水线进行阻塞。当判定到第三级流水线时,发现第三级处于不工作状态,因此不进行任何操作。当判定到第二级流水线时,发现第二级处于工作状态,将其功耗权重累加到实时功耗权重中,此时实时功耗权重为2,等于峰值功耗权重,因此不需要对第二级流水线进行阻塞。当判定到第一级流水线时,发现第一级处于工作状态,将其功耗权重累加到实时功耗权重中,此时实时功耗权重为3,大于峰值功耗权重,因此通过屏蔽处理器取指请求的方式,对第一级流水线进行阻塞。即在图3(D)所示周期中,原本可以工作的第一级流水线被阻塞,只有第二级、第四级流水线正常工作,以保证处理器的峰值功耗维持在允许范围内。
【权利要求】
1.一种基于流水线轮动的低峰值功耗嵌入式处理器,其特征在于:所述处理器包括: N级流水线,N为自然数,N>1,指令从前级流水线流向后级流水线,完成指令的完整功倉泛; 流水线分类单元,将各级流水线分为M类,M为自然数,N>M>1,为每一类设置对应的功耗权重,不同类之间功耗权重互不相同,并将流水线分类信息以及功耗权重信息输出到流水线轮动控制单元; 流水线监测单元,实时监测各级流水线的工作状态,将各级流水线是否正在工作中的状态信息输出到流水线轮动控制单元; 流水线轮动控制单元,连接于流水线分组单元以及流水线监测单元的输出端,根据输入的流水线分类信息、功耗权重信息以及流水线工作状态信息,对各级流水线是否需要关闭进行仲裁,进而对需要关闭运行的流水线进行有优先级的阻塞,使得同时运行的流水线数量控制在设定范围内以满足峰值功耗要求。
2.如权利要求1所述的基于流水线轮动的低峰值功耗嵌入式处理器,其特征在于:所述流水线轮动控制单元中,用户通过流水线轮动控制单元设置处理器工作时允许的最大功耗权重,该权重定义为峰值功耗权重;实时统计处于工作状态的各级流水线功耗权重之和,该权重之和定义为实时功耗权重; 依照从后向前的顺序,依次将处于工作状态的流水线的功耗权重累加到实时功耗权重中,若在判定第f级流水线时发现实时功耗权重大于峰值功耗权重,f为自然数,且I< f ( N,则停止判定工作,无条件阻塞f级流水线以及f级之前的所有流水线;若在判定第f级流水线时发现实时功耗权重小于或等于峰值功耗权重,则继续判定第f-ι级流水线;第f-ι级流水线的判定方式与第f级相同。
3.如权利要求1或2所述的基于流水线轮动的低峰值功耗嵌入式处理器,其特征在于:所述流水线分类单元中,使用固定的分类方式将所有流水线分成M类,并为各类分配固定的功耗权重。
4.如权利要求1或2所述的基于流水线轮动的低峰值功耗嵌入式处理器,其特征在于:所述流水线分类单元中,通过用户配置的方式,在处理器运行过程中动态修改流水线的分类信息以及功耗权重信息。
5.如权利要求1或2所述的基于流水线轮动的低峰值功耗嵌入式处理器,其特征在于:各级流水线中,若j > k,j和k均为自然数,I < j < M,I < k < M,则第j类流水线的功耗权重大于第k类流水线的功耗权重。
6.如权利要求1或2所述的基于流水线轮动的低峰值功耗嵌入式处理器,其特征在于:所述流水线监测单元中,监测各级流水线是否处于工作状态,对于第I级流水线,在某个时钟周期中,若处理器发起取指请求,则该级流水线判定为工作中;对于第i级流水线,i为自然数,且2 ( i ( N,在某个时钟周期中,若第1-Ι级流水线中存在有效指令,且该有效指令可以被发送到第i级流水线,则该第i级流水线判定为工作中。
7.如权利要求2所述的基于流水线轮动的低峰值功耗嵌入式处理器,其特征在于:所述峰值功耗权重大于任何一类流水线的功耗权重。
8.如权利要求2所述的基于流水线轮动的低峰值功耗嵌入式处理器,其特征在于:所述流水线轮动控制单元中,当实时功耗权重大于峰值功耗权重时,阻塞仲裁后需要关闭的流水线以保证实时功耗小于峰值功耗权重。
9.如权利要求1或2所述的基于流水线轮动的低峰值功耗嵌入式处理器,其特征在于:所述流水线轮动控制单元中,对第I级流水线的阻塞通过阻止处理器发送取指请求完成;流水线轮动控制单元对第e级流水线的阻通阻塞过阻止第e-Ι级流水线向第e级流水线发送指令完成,e为自然数,且2彡e彡N-1 ;最后一级,即第N级流水线永远不会被阻塞。
10.如权利要求2所述的基于流水线轮动的低峰值功耗嵌入式处理器,其特征在于:所述流水线轮动控制单元中,在判定是否需要阻塞流水线时,从最后一级流水线开始判定,按照最后一级到第一级的方式依次进行判定,所有的判定工作均在一个始终周期内完成。
【文档编号】G06F9/38GK104317557SQ201410581600
【公开日】2015年1月28日 申请日期:2014年10月27日 优先权日:2014年10月27日
【发明者】严明宇, 王洁, 刘继让 申请人:杭州中天微系统有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1