CN1684019A - 具有可调整操作频率的处理单元及相关方法 - Google Patents
具有可调整操作频率的处理单元及相关方法 Download PDFInfo
- Publication number
- CN1684019A CN1684019A CN 200410034665 CN200410034665A CN1684019A CN 1684019 A CN1684019 A CN 1684019A CN 200410034665 CN200410034665 CN 200410034665 CN 200410034665 A CN200410034665 A CN 200410034665A CN 1684019 A CN1684019 A CN 1684019A
- Authority
- CN
- China
- Prior art keywords
- clock
- instruction
- reference clock
- module
- processing unit
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 22
- 238000004148 unit process Methods 0.000 claims description 3
- 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
- Executing Machine-Instructions (AREA)
- Advance Control (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 (10)
1.一种处理单元,包含:
一时钟提供模块,用来提供一参考时钟;以及
一处理核心,耦接于该时钟提供模块,依据该参考时钟处理一第一指令;
其中该时钟提供模块可依据该第一指令调整该参考时钟以决定该处理核心处理该第一指令所使用的时间长度。
2.如权利要求1所述的处理单元,其中该时钟提供模块是依据该第一指令,以相位吞噬的方式调整该参考时钟的相位。
3.如权利要求1所述的处理单元,其中该时钟提供模块包含:
一多相位时钟产生器,用来产生具有不同相位的多个原始时钟;以及
一相位选择器,耦接于该多相位时钟产生器以及该处理核心,用来依据该第一指令选取所述原始时钟之一以产生该参考时钟。
4.如权利要求1所述的处理单元,其还包含有:
一判断模块,耦接于该处理核心与该时钟提供模块,用来依据该第一指令的类别控制该时钟提供模块调整该参考时钟,该判断模块包含有:
一储存单元,用来储存一对照表,该对照表包含有至少一字段,用来纪录一类别/控制值对应关系;以及
一比较器,耦接于该储存单元,用来比较该对照表与该第一指令以输出一控制值来控制该时钟提供模块调整该参考时钟的相位。
5.一种使用一处理单元处理一第一指令的方法,包含:
产生一参考时钟;
判断该第一指令的类别;
依据该第一指令的类别选择性地调整该参考时钟;以及
依据该参考时钟执行该第一指令。
6.如权利要求5所述的方法,还包含:
产生具有不同相位的多个原始时钟;
其中,若该第一指令对应一第一类别,则该方法选取一第一原始时钟以产生该参考时钟;若该第一指令对应一第二类别,则该方法选取一第二原始时钟以产生该参考时钟。
7.如权利要求5所述的方法,还包含:
比较该第一指令与一对照窗体以产生一控制信号,依据该控制信号调整该参考时钟。
8.如权利要求5所述的方法,其中在该调整步骤中是依据该第一指令的类别,以相位吞噬的方式调整该参考时钟的相位;该判断步骤中是判断该第一指令所须的执行时间。
9.一种处理单元,包含:
一时钟提供模块,用来依据一时钟控制信号,提供一参考时钟;
一处理核心,耦接于该时钟提供模块,依据该参考时钟处理一第一指令;以及
一判断模块,耦接于该处理核心与该时钟提供模块,依据该第一指令的类别,输出该时钟控制信号;
其中该时钟控制信号与该第一指令相对应。
10.如权利要求9所述的处理单元,其中该时钟提供模块包含:
一多相位时钟产生器,用来产生具有不同相位的多个原始时钟;以及
一相位选择器,用来依据该时钟控制信号选取所述原始时钟之一以产生该参考时钟。
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 true CN1684019A (zh) | 2005-10-19 |
CN1684019B 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) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103677077A (zh) * | 2013-12-18 | 2014-03-26 | 西安智多晶微电子有限公司 | 强化时钟管理的复杂可编程逻辑器件 |
CN105306031A (zh) * | 2014-06-13 | 2016-02-03 | 爱思开海力士有限公司 | 集成电路和包括集成电路的半导体系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1139857C (zh) * | 1995-11-20 | 2004-02-25 | 精工爱普生株式会社 | 高效化电能消耗的数据处理系统 |
CN1074216C (zh) * | 1996-09-17 | 2001-10-31 | 杨智科技股份有限公司 | 同步调控装置及方法 |
US6298448B1 (en) * | 1998-12-21 | 2001-10-02 | Siemens Information And Communication Networks, Inc. | Apparatus and method for automatic CPU speed control based on application-specific criteria |
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
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103677077A (zh) * | 2013-12-18 | 2014-03-26 | 西安智多晶微电子有限公司 | 强化时钟管理的复杂可编程逻辑器件 |
CN105306031A (zh) * | 2014-06-13 | 2016-02-03 | 爱思开海力士有限公司 | 集成电路和包括集成电路的半导体系统 |
CN105306031B (zh) * | 2014-06-13 | 2020-02-28 | 爱思开海力士有限公司 | 集成电路和包括集成电路的半导体系统 |
Also Published As
Publication number | Publication date |
---|---|
CN1684019B (zh) | 2012-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11442728B2 (en) | Sequence alignment method of vector processor | |
US11520371B2 (en) | Compute-adaptive clock management for machine learning accelerators | |
WO2022151783A1 (zh) | 一种处理器参数调节方法、装置、电子设备及存储介质 | |
KR20090092433A (ko) | 복잡성이 감소된 고분광 프로세싱에 기반을 둔 실시간 타겟검출 방법 | |
Niu et al. | 26ms inference time for resnet-50: Towards real-time execution of all dnns on smartphone | |
US20150102846A1 (en) | Distributing multiplexing logic to remove multiplexor latency on the output path for variable clock cycle, delayed signals | |
CN1684019A (zh) | 具有可调整操作频率的处理单元及相关方法 | |
CN1117327C (zh) | 允许使用不同速率处理器的方法、装置及多处理器系统 | |
CN1716228A (zh) | 处理器 | |
US7257729B2 (en) | System and method for processing an instruction according to a clock and adjusting the phase of the clock according to the instruction | |
JP2009104605A (ja) | メモリアクセス動作を改善するための、バンクを用いたヒストグラム生成 | |
Ray et al. | K-degree parallel comparison-free hardware sorter for complete sorting | |
US20030201905A1 (en) | Modular functional block for an electronic control system | |
KR101297085B1 (ko) | 가변 고속 푸리에 변환 장치 및 그 방법 | |
WO1999054831A1 (en) | Method and apparatus for zero overhead sharing for registered digital hardware | |
JP3716923B2 (ja) | クロック数可変プロセッサ | |
CN101539849B (zh) | 一种处理器以及一种寄存器选通方法 | |
JP4941125B2 (ja) | 半導体テスト装置 | |
CN1912644A (zh) | 半导体集成电路 | |
JP2013125288A (ja) | データ処理装置及びデータ処理方法 | |
US8136061B2 (en) | Method of logic circuit synthesis and design using a dynamic circuit library | |
CN1627624A (zh) | 变换器控制装置和变换器控制方法 | |
Tsmots et al. | Vertically-Parallel Method and VLSI-Structures for Sorting of Arrays of Numbers | |
CN1295598C (zh) | 双栈返回地址预测器中返回地址栈的恢复方法 | |
JPH0784966A (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 |