[发明专利]基于指令的类型和内容的处理器功率管理有效
| 申请号: | 201180045688.X | 申请日: | 2011-09-23 |
| 公开(公告)号: | CN103154846A | 公开(公告)日: | 2013-06-12 |
| 发明(设计)人: | V·R·马杜里;J·Y·童;H·张 | 申请(专利权)人: | 英特尔公司 |
| 主分类号: | G06F1/04 | 分类号: | G06F1/04;G06F9/30;G06F15/76;G06F1/32 |
| 代理公司: | 永新专利商标代理有限公司 72002 | 代理人: | 刘瑜;王英 |
| 地址: | 美国加*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 指令 类型 内容 处理器 功率 管理 | ||
技术领域
本发明涉及通过对给定的指令类型或者指令中的特定内容不使用处理器的各部分进行时钟门控,来管理处理器的功耗。
背景技术
在中央处理单元(CPU)中存在着在指令管道的某些级中操作的多个不同功能单元。根据指令的类型或者指令中的内容,通常不是在同一时间使用所有这些功能单元。因此,不存在同时地开启CPU中的所有功能单元的内在原因。相反,在任何给定时刻,一些单元可能不具有要进行操作的数据。当功能单元没有数据要操作时,其事实上空闲。但是,仍然馈送活动时钟的这种空闲单元将由于所接收的时钟信号,使得通过锁存器的不断切换(即,翻转)而贯穿该单元承受功耗。
x86指令包括一些字段。最基本字段中的三个字段是指令操作码字段(例如,move、shift等等)、立即操作数字段和位移字节字段。虽然指令管道中的很多功能单元具有处理这些字段的电路,但在管道中移动的一些指令并不包含任何位移字节信息或者立即操作数信息。在这些情况下,填补这些字段的数据并不被使用,其通常包括随机数据比特。随着该指令在管道中移动,虽然并不使用这些字段,但功能单元仍然观测到输入该信息时它们锁存器的切换。这种切换进一步增加了CPU的这些功能单元中的功耗。
附图说明
本发明通过示例来说明并且不受附图的限制,在附图中,相同的附图标记指示类似的元件,其中:
图1描绘了一种计算机系统的实施例,其中该计算机系统能够基于在该系统中的至少一个处理器中执行的指令的类型和内容,对处理器功耗进行管理。
图2描绘了给定的核心中的具体有关单元和功能逻辑块,其使该核心能够通过指令类型确定和指令内容确定来对核心功耗进行管理。
图3描述了用于跟踪流经指令管道的浮点微操作的状态机的实施例。
图4是用于对译码器中的一个或多个可编程逻辑阵列进行时钟门控的处理的实施例的流程图,其中该译码器配置为对进入该译码器的当前指令进行译码。
图5是用于当在管道中不对分支指令进行译码时,对分支单元进行时钟门控的处理的实施例的流程图。
图6是用于当在指令管道中不存在浮点指令时,对浮点单元进行时钟门控的处理的实施例的流程图。
图7是用于当指令不使用指令的立即和位移字节字段时,将这些字段清零的处理的实施例的流程图。
具体实施方式
公开了基于指令管道中的指令的类型和内容,对处理器功率进行管理的处理器和方法的实施例。
图1描绘了一种计算机系统的实施例,其中该计算机系统能够基于在该系统中的至少一个处理器中执行的指令的类型和内容,对处理器功耗进行管理。
示出了计算机系统100。该计算机系统可以是台式计算机、服务器、工作站、膝上型计算机、手持装置、电视机顶盒、媒体中心、游戏控制台、集成系统(例如在汽车中)或者其它类型的计算机系统。在一些实施例中,计算机系统100包括还称为“处理器”的一个或多个中央处理单元(CPU)。虽然在很多实施例中,可以存在多个CPU,但在图1所示的实施例中,为了简单起见,只示出了CPU102。CPU102可以是公司CPU或者另一个品牌的CPU。在不同的实施例中,CPU102包括一个或多个核心。CPU102示出为包括四个核心(核心104、106、108和110)。
在很多实施例中,每一个核心包括一些内部功能模块/单元/逻辑组件,例如,在核心104的放大视图中所示出的那些。例如,核心104至少包括指令/数据(即,层1、L1)高速缓存112、预取缓冲器114、预译码高速缓存116、指令译码器118、分支地址计算单元120、指令队列122、浮点执行单元124、分配/引退单元126和时钟管理/生成逻辑128。下面参照图2来更详细地讨论这些单元和逻辑组件中的一些。通常,与核心104中所示的这些单元相比,在每一个核心中存在更多的单元、寄存器和其它电路,其包括所示出的每一个单元的潜在几个复制(例如,一个或多个整数/地址执行单元、3个浮点单元等等),但为了维持图1的重要构成元素的清楚性,没有示出其它的单元。
在单线程核心中,每一个核心可以称为一个硬件线程。当核心是多线程或者超线程时,则在每一个核心内运行的每一个线程也可以称为一个硬件线程。因此,在计算机系统100中运行的任何单个线程的执行都可以称为一个硬件线程。例如,在图1中,如果每一个核心是单线程的,则在该系统中存在四个硬件线程(四个核心)。另一方面,如果每一个核心是多线程的,具有同时维持两个线程的状态的能力,则在该系统中存在八个硬件线程(四个核心,每一个核心两个线程)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201180045688.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:制造用于机动车辆的控制接口的方法
- 下一篇:锻造装出料机大车车架分体结构
- 内容再现系统、内容提供方法、内容再现装置、内容提供装置、内容再现程序和内容提供程序
- 内容记录系统、内容记录方法、内容记录设备和内容接收设备
- 内容服务系统、内容服务器、内容终端及内容服务方法
- 内容分发系统、内容分发装置、内容再生终端及内容分发方法
- 内容发布、内容获取的方法、内容发布装置及内容传播系统
- 内容提供装置、内容提供方法、内容再现装置、内容再现方法
- 内容传输设备、内容传输方法、内容再现设备、内容再现方法、程序及内容分发系统
- 内容发送设备、内容发送方法、内容再现设备、内容再现方法、程序及内容分发系统
- 内容再现装置、内容再现方法、内容再现程序及内容提供系统
- 内容记录装置、内容编辑装置、内容再生装置、内容记录方法、内容编辑方法、以及内容再生方法





