CN1684019B - 具有可调整操作频率的处理单元及相关方法 - Google Patents
具有可调整操作频率的处理单元及相关方法 Download PDFInfo
- Publication number
- CN1684019B CN1684019B CN 200410034665 CN200410034665A CN1684019B CN 1684019 B CN1684019 B CN 1684019B CN 200410034665 CN200410034665 CN 200410034665 CN 200410034665 A CN200410034665 A CN 200410034665A CN 1684019 B CN1684019 B CN 1684019B
- Authority
- CN
- China
- Prior art keywords
- clock
- instruction
- original
- phase
- reference clock
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims abstract description 22
- 238000004148 unit process Methods 0.000 claims description 3
- 230000001419 dependent effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 6
- 230000005055 memory storage Effects 0.000 description 2
- 230000004907 flux Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
Images
Landscapes
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Abstract
具有一可调整操作频率的处理单元及相关方法,该处理单元包含:时钟提供模块,提供一参考时钟;以及处理核心,依据时钟提供模块提供的参考时钟处理一第一指令;时钟提供模块包含:多相位时钟产生器,产生具有不同相位的多个原始时钟;判断模块,接收来自处理核心的第一指令;以及相位选择器,产生输出到处理核心的参考时钟,其中判断模块依据与所需执行时间小于或大于一原始时钟有关的第一指令的类别,向相位选择器输出与第一指令所需执行时间对应的用于控制相位选择器调整参考时钟的控制信号,相位选择器依据判断模块输出的控制信号从多相位时钟产生器输出的具有不同相位的多个原始时钟中选取所述原始时钟之一以产生输出到处理核心的参考时钟。
Description
技术领域
本发明涉及处理器,特别是涉及一种可调整操作频率的处理单元及相关方法。
背景技术
处理器(processor)是计算机系统中一个非常重要的组成组件,其可自系统内存中提取(fetch)程序指令与数据、对提取的数据执行程序指令所相关的逻辑运算或数学运算,并将运算得出的结果存回系统内存中。一般而言,量测一处理器处理一特定工作(或程序)所需的时间即可代表一处理器的执行效率(performance),而处理器处理一程序所需的时间可以表示为:(程序中所包含的指令数目)×(每一指令所需的时钟周期)×(一时钟周期的长度)。故处理器的执行效率会受到设计时所产生的各种参数决定。
而「管线式架构」(pipelined structure)是一种可用来加快处理器的处理通量(throughput)的系统架构。在管线式架构下,指令的处理工作被分成一系列的步骤,每一个步骤均可称为一「管线阶段」(pipeline stage)。
举例来说,大多数的处理器会将对指令处理的程序至少区分成指令提取(instruction fetch)阶段、译码(decode)阶段、执行(execution)阶段、以及写回(write back)阶段,而通常执行阶段会需要最多的处理时间,因此,在设计处理器时,一般都会将系统时钟的时钟周期设计成可供执行阶段处理较为复杂的指令(因为这通常就是处理器的速度瓶颈)的时间长度,若是使用的时钟周期太短,则当处理器处理到需要较长执行时间的指令时,就会有执行错误或是执行失败(fail)的情形发生。
发明内容
本发明的一个目的是提供一种可动态调整操作频率的处理器以及相关方法。
依据本发明的实施例,披露了一种处理单元,其包含有一时钟提供模块,用来提供一参考时钟;以及一处理核心,耦接于该时钟提供模块,依据该时钟提供模块提供的参考时钟处理一第一指令;其中该时钟提供模块包含:一多相位时钟产生器,用来产生具有不同相位的多个原始时钟;一判断模块,耦接于该处理核心,接收来自该处理核心的第一指令;以及一相位选择器,耦接于该判断模块、多相位时钟产生器以及该处理核心,用来产生输出到处理核心的参考时钟,其中该判断模块依据与所需执行时间小于或大于一原始时钟有关的该第一指令的类别,向该相位选择器输出与该第一指令所需执行时间对应的用于控制该相位选择器调整该参考时钟的控制信号,该相位选择器依据该判断模块输出的控制信号从多相位时钟产生器输出的具有不同相位的多个原始时钟中选取所述原始时钟之一以产生输出到该处理核心的该参考时钟。
依据本发明的实施例,还披露了一种使用一处理单元处理一第一指令的方法,该方法包含有以下步骤:产生一参考时钟;产生具有不同相位的多个原始时钟,判断该第一指令的类别,其中,该第一指令的类别与该第一指令所需的执行时间小于或大于原始时钟有关;依据该第一指令的类别选择性地调整该参考时钟,若该第一指令对应于第一指令所需的执行时间小于一原始时钟,则选取该第一原始时钟以产生该参考时钟,若该第一指令对应于第一指令所需的执行时间大于一原始时钟,则选取一相位落后于第一原始时钟的第二原始时钟以产生该参考时钟;以及依据该参考时钟执行该第一指令。
附图说明
图1为本发明处理器的一实施例示意图。
图2为图1中的相位选择器切换于不同的原始时钟的间以提供参考时钟CKR的示意图。
图3为本发明所提出的方法的一实施例流程图。
附图符号说明
100处理单元
110处理核心
115指令提取阶段
120解码阶段
130执行阶段
135写回阶段
150时钟提供模块
155多相位时钟产生器
160相位选择器
165判断模块
具体实施方式
请参阅图1,图1为本发明处理器的一实施例示意图。图1中的处理器100在功能上包含有一处理核心110以及一时钟提供模块150。处理核心110包含有一指令提取阶段115、一译码阶段120、一执行阶段130、以及一写回阶段135,为实现上述的处理核心110所需要的处理器硬件架构及操作原理为本领域的技术人员所广泛悉知,故无须在此重复说明,而本领域的技术人员亦应可理解,上述的各个阶段仅为处理核心的实施例,其它符合本发明精神及范围亦属于本发明的保护标的。时钟提供模块150用来提供处理核心110所需的参考时钟CKR,其包含有一多相位时钟产生器155、一相位选择器160、以及一判断模块165。为了说明的方便,本实施例中以可产生四个时钟讯号CK1、CK2、CK3、CK4的多相位时钟产生器155来举例说明,然而本发明并不受时钟讯号的数目所限制。
假设处理器100所需处理的指令在执行阶段130大多需要7μs的执行时间,只有少数的指令需要8μs的执行时间。在使用单一操作频率的情形下,若为了迁就少数成为瓶颈的指令(即8μs的指令),则处理器所能使用的最高的操作频率只能是125MHz,因为若是使用大于125MHz的频率来执行所有的指令,则遇到需要8μs执行时间的指令时,系统就很容易发生执行错误甚至是执行失败的情形。
然而,若使用本实施例所提出的作法,由多相位时钟产生器所产生的四个原始时钟CK1、CK2、CK3、CK4的频率可以是133MHz,而四个时钟的相位依序相差90°。每当译码阶段120译码出一第一指令时,其会将该第一指令传送至判断模块165,判断模块中可包含有一存储装置与一比较装置(未显示),该存储装置中可储存一对照表,该对照表中则包含有各个指令以及其所相对应的控制值;该比较装置将译码阶段120所送来的该第一指令与该对照表相比较,依据其所对应的控制值产生控制讯号CTRL。当判断模块165判断出第一指令所需的执行时间不大于7μs时,其可藉由控制讯号CTRL控制相位选择器160,以选择提供固定的原始时钟(例如CK1)来作为参考时钟CKR,此即代表处理器100在这个时候是以133MHz的操作频率来执行第一指令。
至于当第一指令所需的执行时间大于7μs时(举例来说,8μs),判断模块中的该比较装置会得出不同于上述的控制值,此时的控制讯号CTRL会控制相位选择器160从使用中的原始时钟(例如CK1)切换至另一相位落后的原始时钟(例如CK2),以供执行阶段130以更长的时间(亦即大于7μs的执行时间)来执行第一指令。此种从一时钟切换至另一个具有不同相位的时钟的操作亦可以称之为「相位吞噬」(phase swallow)技术。
请参阅图2,图2为相位选择器160切换于不同的原始时钟的间以提供参考时钟CKR的示意图。在处理所需执行时间不大于7μs的指令时,处理器固定提供一原始时钟(例如CK1)作为参考时钟CKR,至于在判断模块165判断出该第一指令所需执行时间大于7μs时,其即藉由控制讯号CTRL控制相位选择器160,从原先使用的原始时钟(CK1)切换至相位落后的原始时钟(例如CK2,当然,亦可以切换至原始时钟CK3或CK4以产生不同时间长度的相位吞噬效果),所产生的参考时钟CKR就会如图2所示,此时处理核心110中的执行阶段130即可以使用从时间点T1到T2的时段来执行此第一指令。此时可以视为处理核心110以小于133MHz的操作频率来执行第一指令,而使得第一指令能够正常执行。若是在第一指令之后的指令所需的执行时间不大于7μs,则相位选择器即可固定提供原始时钟CK2作为参考时钟CKR,故之后处理核心110又恢复回133MHz的操作频率。
在一实施例中,多时钟相位产生器155可以是一个延迟锁定回路(delaylocked loop),相位选择器160则可以是一多任务器。多时钟相位产生器155所提供具有不同相位的原始时钟越多,相位选择器160所能使用的切换方式也就越多。当然,在前述的作法里,相位选择器所做的切换操作都是切换至相位更落后的时钟,而实际上,切换至相位超前的时钟亦是可行的作法。而其它各种为本领域技术人员所广泛悉知的电路组成架构,能够达到多时钟相位产生器155所提供的功能者,均属于本发明所欲保护的标的。
请参阅图3,图3为本发明所提出的方法的一实施例流程图,用来使用一处理单元处理一第一指令,以下将详述图3中的各个步骤:
步骤310:产生具有不同相位的多个原始时钟。
步骤320:判断该第一指令的类别。
步骤330:依据该第一指令的类别,对所述原始时钟进行选取操作以产生一参考时钟。本实施例的步骤330可区分为两种情形,第一种情形是一固定的第一原始时钟即可提供该处理单元足够的时间来执行该第一指令,此时本方法会固定以该第一原始时钟作为该参考时钟,供该处理单元依据该参考时钟执行该第一指令;另一种情形则是该第一原始时钟无法提供该处理单元足够的时间来执行该第一指令,此时本实施例会从该第一原始时钟切换至一第二原始时钟(一般而言,该第二原始时钟的相位落后于该第一原始时钟),以产生该参考时钟,供该处理单元依据该参考时钟执行该第一指令。
步骤340:依据该参考时钟执行该第一指令。
在上述的实施例中,由于第二原始时钟的相位可以是落后于第一原始时钟的相位,故在遇到需要较长执行时间的第一指令时,通过前述相位切换的方式(亦即向后吞噬该参考时钟的相位),本发明的实施例中的方法可以选择性地提供处理器以具有不同操作频率的时钟讯号来执行不同的指令。
由于本发明的实施例中所披露的作法可以让处理器具有可变的操作频率,因此能够提升系统的效能,也因此能够提高处理器芯片在制造上的优良率。
以上所述仅为本发明的较佳实施例,凡依本发明的权利要求所做的均等变化与修饰,皆应属本发明专利的涵盖范围。
Claims (6)
1.一种处理单元,包含:
一时钟提供模块,用来提供一参考时钟;以及
一处理核心,耦接于该时钟提供模块,依据该时钟提供模块提供的参考时钟处理一第一指令;
其中该时钟提供模块包含:
一多相位时钟产生器,用来产生具有不同相位的多个原始时钟;
一判断模块,耦接于该处理核心,接收来自该处理核心的第一指令;以及
一相位选择器,耦接于该判断模块、多相位时钟产生器以及该处理核心,用来产生输出到处理核心的参考时钟,
其中该判断模块依据与所需执行时间小于或大于一原始时钟有关的该第一指令的类别,向该相位选择器输出与该第一指令所需执行时间对应的用于控制该相位选择器调整该参考时钟的控制信号,该相位选择器依据该判断模块输出的控制信号从多相位时钟产生器输出的具有不同相位的多个原始时钟中选取所述原始时钟之一以产生输出到该处理核心的该参考时钟。
2.如权利要求1所述的处理单元,其中该时钟提供模块是依据该第一指令,以相位吞噬的方式调整该参考时钟的相位。
3.如权利要求1所述的处理单元,其中该判断模块包含有:
一储存单元,用来储存一对照表,该对照表包含有至少一字段,用来记录各指令及对应的控制值;以及
一比较器,耦接于该储存单元,用来将该第一指令与该对照表进行比较以根据该第一指令所对应的控制值产生一控制信号来控制该相位选择器选取所述原始时钟之一。
4.一种使用一处理单元处理一第一指令的方法,包含:
产生一参考时钟;
产生具有不同相位的多个原始时钟;
判断该第一指令的类别,其中,该第一指令的类别与该第一指令所需的执行时间小于或大于一第一原始时钟有关;
依据该第一指令的类别选择性地调整该参考时钟,若该第一指令对应于第一指令所需的执行时间小于该第一原始时钟,则选取该第一原始时钟以产生该参考时钟,若该第一指令对应于第一指令所需的执行时间大于该第一原始时钟,则选取一相位落后于该第一原始时钟的第二原始时钟以产生该参考时钟;以及
依据该参考时钟执行该第一指令。
5.如权利要求4所述的方法,还包含:
比较该第一指令与一对照表以产生一控制信号,依据该控制信号调整该参考时钟。
6.如权利要求4所述的方法,其中在该调整步骤中是依据该第一指令的类别,以相位吞噬的方式调整该参考时钟的相位;该判断步骤中是判断该第一指令所需的执行时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200410034665 CN1684019B (zh) | 2004-04-16 | 2004-04-16 | 具有可调整操作频率的处理单元及相关方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200410034665 CN1684019B (zh) | 2004-04-16 | 2004-04-16 | 具有可调整操作频率的处理单元及相关方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1684019A CN1684019A (zh) | 2005-10-19 |
CN1684019B true CN1684019B (zh) | 2012-11-07 |
Family
ID=35263383
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200410034665 Expired - Lifetime CN1684019B (zh) | 2004-04-16 | 2004-04-16 | 具有可调整操作频率的处理单元及相关方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1684019B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103677077A (zh) * | 2013-12-18 | 2014-03-26 | 西安智多晶微电子有限公司 | 强化时钟管理的复杂可编程逻辑器件 |
KR20150143900A (ko) * | 2014-06-13 | 2015-12-24 | 에스케이하이닉스 주식회사 | 집적회로 및 반도체 시스템 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1150663A (zh) * | 1995-11-20 | 1997-05-28 | 精工爱普生株式会社 | 高效化电能消耗的数据处理系统 |
CN1177248A (zh) * | 1996-09-17 | 1998-03-25 | 杨智科技股份有限公司 | 同步调控装置及方法 |
CN1338067A (zh) * | 1998-12-21 | 2002-02-27 | 西门子信息及通讯网络公司 | 用于自动cpu速度控制的装置和方法 |
US6608528B2 (en) * | 2001-10-22 | 2003-08-19 | Intel Corporation | Adaptive variable frequency clock system for high performance low power microprocessors |
-
2004
- 2004-04-16 CN CN 200410034665 patent/CN1684019B/zh not_active Expired - Lifetime
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1150663A (zh) * | 1995-11-20 | 1997-05-28 | 精工爱普生株式会社 | 高效化电能消耗的数据处理系统 |
CN1177248A (zh) * | 1996-09-17 | 1998-03-25 | 杨智科技股份有限公司 | 同步调控装置及方法 |
CN1338067A (zh) * | 1998-12-21 | 2002-02-27 | 西门子信息及通讯网络公司 | 用于自动cpu速度控制的装置和方法 |
US6608528B2 (en) * | 2001-10-22 | 2003-08-19 | Intel Corporation | Adaptive variable frequency clock system for high performance low power microprocessors |
Also Published As
Publication number | Publication date |
---|---|
CN1684019A (zh) | 2005-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1794580B (zh) | 用于半导体存储器装置中的延迟锁定回路及其方法 | |
US8207764B2 (en) | Enhancement of power management using dynamic voltage and frequency scaling and digital phase lock loop high speed bypass mode | |
US6262611B1 (en) | High-speed data receiving circuit and method | |
JP2002100967A (ja) | 電源電圧制御装置、半導体装置およびその駆動方法 | |
KR102340679B1 (ko) | 전압 드룹을 위한 클록 조정 | |
US8179177B2 (en) | Wideband delay-locked loop (DLL) circuit | |
CN1767055A (zh) | 延迟锁定回路及其锁定方法 | |
KR101046274B1 (ko) | 클럭지연회로 | |
CN101222227A (zh) | 延时锁定环电路以及从其产生倍频时钟的方法 | |
US7453970B2 (en) | Clock signal selecting apparatus and method that guarantee continuity of output clock signal | |
US20140062552A1 (en) | Dll circuit and delay-locked method using the same | |
JPH07261870A (ja) | データ処理装置および方法 | |
US7737744B2 (en) | Register controlled delay locked loop circuit | |
JP2000322403A (ja) | 電力削減のための複数の等価機能ユニットの制御 | |
CN101527564B (zh) | 非整数分频器及其方法 | |
CN1684019B (zh) | 具有可调整操作频率的处理单元及相关方法 | |
JP2003150657A (ja) | 高位合成方法および高位合成装置 | |
US20080116951A1 (en) | Frequency multiplying delay-locked loop | |
US7257729B2 (en) | System and method for processing an instruction according to a clock and adjusting the phase of the clock according to the instruction | |
JP2007065756A (ja) | クロック制御回路、クロック制御方法、半導体集積回路装置、及び電子機器 | |
US7495486B2 (en) | Semiconductor memory device | |
US7493508B2 (en) | Information processing device, method, and program | |
US8136061B2 (en) | Method of logic circuit synthesis and design using a dynamic circuit library | |
US8035432B2 (en) | DLL circuit and control method thereof | |
JP2002041356A (ja) | 半導体装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CX01 | Expiry of patent term | ||
CX01 | Expiry of patent term |
Granted publication date: 20121107 |