JP2001202155A - Low power consumption processor - Google Patents

Low power consumption processor

Info

Publication number
JP2001202155A
JP2001202155A JP2000009303A JP2000009303A JP2001202155A JP 2001202155 A JP2001202155 A JP 2001202155A JP 2000009303 A JP2000009303 A JP 2000009303A JP 2000009303 A JP2000009303 A JP 2000009303A JP 2001202155 A JP2001202155 A JP 2001202155A
Authority
JP
Japan
Prior art keywords
clock
switching
processing device
cpu
power consumption
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.)
Pending
Application number
JP2000009303A
Other languages
Japanese (ja)
Inventor
Masatsugu Kametani
雅嗣 亀谷
Kazuhiro Umekita
和弘 梅北
Kenjiro Yamamoto
健次郎 山本
Masahiro Koyama
昌宏 小山
Yasuyuki Momoi
康行 桃井
Terunobu Funatsu
輝宣 船津
Katsuhisa Ike
勝久 池
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2000009303A priority Critical patent/JP2001202155A/en
Publication of JP2001202155A publication Critical patent/JP2001202155A/en
Pending legal-status Critical Current

Links

Landscapes

  • Power Sources (AREA)

Abstract

PROBLEM TO BE SOLVED: To finely control power consumption of a processor by enabling high speed, smooth and dynamic switching of multiple clocks and further enabling high speed and dynamic switching of multiple CPUs. SOLUTION: High speed and smooth switching of clocks is realized by generating a switching signal 15 the clock levels of which before and after switching are the same and which is synchronized with a standard clock CL by a clock switching control circuit 13, taking out a clock from a PLL clock driver 12 by selecting it by a multiplexer 14 by the switching signal 15. The switching is dynamically executed by outputting select signals SELA, SELB by execution of an instruction of the CPU. In the switching between CPUs 20, 30, when the CPU under operation executes a switching instruction of the CPUs, supply of clocks to other CPUs is started, the present CPU enters a stopped state and the CPUs to which the clocks are supplied stop the clocks of other CPUs and starts operation of the present CPU.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、省電力化を目指す
CPU内蔵の処理装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a processing device with a built-in CPU aiming at power saving.

【0002】[0002]

【従来の技術】近年、マイコン/パソコンやラップトッ
プパソコン等のパーソナル計算機システムを中心とした
コンピュータシステムの機能及び性能が向上するのと共
に、これらの処理装置が消費する電力が急速に高まって
来ており、様々な面で問題となって来ている。一般の工
業用やOA用、科学技術計算用、組込み用といった計算
処理装置や制御処理装置も、自然環境へ与える悪影響へ
の問題や、電力コスト、設環境コスト、電力供給事情等
の問題から、今後省電力への要求が高まって来ると予想
できる。特にラップトップパソコン等のハンドヘルド
(持ち運び可能)処理装置は、電力供給が電池であるこ
とが使用環境上多く、使用可能時間に直結する省電力化
は必須である。
2. Description of the Related Art In recent years, the functions and performances of computer systems, mainly personal computer systems such as microcomputers / PCs and laptop PCs, have been improved, and the power consumed by these processors has been rapidly increasing. And it is becoming a problem in various aspects. General industrial, OA, scientific and technological calculation, embedded processing and control processing devices also suffer from problems such as adverse effects on the natural environment, power costs, environmental costs, power supply conditions, etc. It can be expected that demand for power saving will increase in the future. Particularly in a handheld (portable) processing device such as a laptop personal computer, the power supply is often provided by a battery in the usage environment, and it is essential to save power, which is directly connected to the available time.

【0003】従来、省電力化を目指すパーソナルコンピ
ュータ(PC)では、下記の2つの方法が最も省電力化
に有効な手法として提案されて来た。その1つは、特開
平8−241145号に開示されているように、低速ク
ロックと高速クロックを用意し、アイドル状態(PCが
有効な処理を実行していない状態)やバッククラウド処
理(優先順位の低い処理)では、低速クロックをCPU
に供給する様に切り換えることで動作電力を低減するも
のであり、他の1つは、特開平11−7344号に開示
されているように、低速CPUチップ(一般に消費電力
が少ない)と高速チップ(一般に消費電力が大きい)を
用意し、2つのCPUからのバスを共通に接続し、低速
処理でも問題の無い処理を実行する際には低速CPUチ
ップ側に切り換えることで動作電力を低減するものであ
る。またクロック速度を切り換える方法で、スムーズな
クロック切換を行えるようにした技術が特開平10−9
1272号等に開示されている。
Conventionally, in a personal computer (PC) aiming at power saving, the following two methods have been proposed as the most effective methods for power saving. One of them is to prepare a low-speed clock and a high-speed clock, as disclosed in Japanese Patent Application Laid-Open No. 8-241145, and to provide an idle state (a state in which the PC is not executing valid processing) and a back cloud processing (priority order). Low-speed processing)
The other is to reduce the operating power by switching the power supply to a low-speed CPU chip (generally having low power consumption) and a high-speed chip as disclosed in Japanese Patent Application Laid-Open No. 11-7344. (Generally consumes large power), the bus from the two CPUs is connected in common, and when processing that does not cause any problem even at low speed processing is switched to the low speed CPU chip side, the operating power is reduced. It is. Japanese Patent Laid-Open No. 10-9 discloses a technique that enables smooth clock switching by switching the clock speed.
No. 1272 and the like.

【0004】[0004]

【発明が解決しようとする課題】従来技術では以下の点
で問題があり、その解決が課題となっている。 (a)近年のCPUは内部動作周波数が非常に高くなっ
てきており(300〜600MHz)、CPUの外部(基
板上等)でスムーズにクロックを切り換えることは実質
不可能である。この点について、従来技術は何の解決策
も開示していない。 (b)きめ細かな電力制御による低消費電力化が求めら
れているが、従来技術はクロック切換やCPU切換のオ
ーバーヘッドが大きく、その要求に応えることができな
い。 (c)CPUを切換える従来技術においては、一般のC
PUチップを用いることが前提となっており、CPU間
の内部情報の一致化処理のオーバーヘッドが大きくきめ
細かな切換処理操作が困難である。 (d)高速CPUにはキャッシュメモリや高速バスシス
テム等の高速化技術が用いられるが、低消費電力CPU
を構築するに際して、その高速化技術の扱いや新たに必
要となるアーキテクチャについて従来技術は何も開示し
ていない。
The prior art has the following problems, and the solution is a problem. (A) In recent years, the internal operating frequency of CPUs has become extremely high (300 to 600 MHz), and it is substantially impossible to smoothly switch clocks outside the CPU (on a board or the like). In this regard, the prior art does not disclose any solution. (B) It is required to reduce power consumption by fine power control. However, the conventional technology has a large overhead of clock switching and CPU switching, and cannot meet the demand. (C) In the prior art for switching the CPU, a general C
It is premised that a PU chip is used, and the overhead of matching processing of internal information between CPUs is large, and it is difficult to perform a detailed switching processing operation. (D) A high-speed CPU uses a high-speed technology such as a cache memory or a high-speed bus system.
Does not disclose any conventional technology regarding the handling of the high-speed technology and the newly required architecture.

【0005】本発明の目的は、クロック及びCPU切り
換えをスムーズにかつ少ないオーバーヘッドできめ細か
く行え、キャッシュメモリやバス切り換えも短時間で行
えるようにして大幅な消費電力低減を可能とした処理装
置を提供することにある。
SUMMARY OF THE INVENTION An object of the present invention is to provide a processing device capable of switching clocks and CPUs in a smooth and small manner with a small overhead and finely, and also capable of switching a cache memory and a bus in a short time to greatly reduce power consumption. It is in.

【0006】[0006]

【課題を解決するための手段】本発明は、与えられた基
準クロックに同期しかつ互いに異なる周波数を持つ複数
のクロックを生成するPLLクロックドライバと、この
PLLクロックドライバにより生成されたクロックの内
の1つを入力された切換信号に応じて選択し、切換後ク
ロックとして出力するクロック切換マルチプレクサと、
このクロック切換マルチプレクサにより切り換えの前に
選択されていた切換前クロックと前記切換後クロックが
同じ信号レベルにありかつ前記基準クロックに同期した
タイミングで与えられたクロック切換用セレクタ信号に
応じた信号を生成し、この信号を前記クロック切換マル
チプレクサへの前記切換信号として出力するクロック切
換手段と、前記クロック切換マルチプレクサより出力さ
れるクロック出力に応答して動作するCPUと、を備え
たことを特徴とする低消費電力処理装置を開示する。
According to the present invention, there is provided a PLL clock driver for generating a plurality of clocks having different frequencies in synchronization with a given reference clock, and a clock generated by the PLL clock driver. A clock switching multiplexer for selecting one according to the input switching signal and outputting the selected clock after the switching;
The clock switching multiplexer generates a signal corresponding to a clock switching selector signal provided at a timing synchronized with the reference clock, wherein the pre-switching clock selected before switching and the post-switching clock are at the same signal level. A clock switching unit that outputs the signal as the switching signal to the clock switching multiplexer; and a CPU that operates in response to a clock output output from the clock switching multiplexer. A power consumption processing device is disclosed.

【0007】更に本発明は、上記の低消費電力処理装置
において、前記クロック切換手段は、基準クロックに同
期したクロックによって前記セレクタ信号を同期化する
同期用フリップフロップと、このフリップフロップによ
って同期化されたセレクタ信号がアクティブになってお
りかつ前記切換前クロックと切換後クロックが同じレベ
ルに変化したタイミングでその状態がセットされ、前記
セレクタ信号が非アクティブになっており、かつ前記切
換前クロックと切換後クロックが同レベルに変化したタ
イミングでその状態がリセットされる選択用フリップフ
ロップとを備え、この選択用フリップフロップの出力を
前記切換信号として送出することを特徴とする低消費電
力処理装置を開示する。
Further, according to the present invention, in the above low power consumption processing device, the clock switching means is synchronized with a synchronizing flip-flop for synchronizing the selector signal with a clock synchronized with a reference clock, and is synchronized with the flip-flop. The selector signal is active, and the state is set at the timing when the pre-switching clock and the post-switching clock have changed to the same level, the selector signal is inactive, and the switching is performed with the pre-switching clock. A low-power consumption processing device, comprising: a flip-flop for selection, the state of which is reset at the timing when the subsequent clock changes to the same level, and transmitting the output of the flip-flop for selection as the switching signal. I do.

【0008】更に本発明は、低消費電力処理装置を第1
処理装置として備えるとともに、前記第1処理装置に含
まれるCPUよりも低消費電力のCPUを含む第2処理
装置と、第1の処理装置及び第2の処理装置内の各CP
Uのレジスタファイル間の情報を同一に保つためのCP
U間インターフェース手段と、第1処理装置のCPUに
接続する第1キャッシュメモリシステムと、この第1キ
ャッシュメモリシステムを制御する第1キャッシュメモ
リ制御手段と、第1処理装置のCPUと第1キャッシュ
メモリシステムを介して入出力されるバス制御手段を含
む第1バス手段と、第2処理装置のCPUからのバス制
御手段を含む第2バス手段と、第1バス手段と第2バス
手段を第1処理装置及び第2処理装置からの前記バス制
御手段に応答して切り換え、外部のリソースに適合した
タイミングで外部バス及び外部制御信号を入出力するバ
ススイッチインターフェース手段と、第1処理装置の動
作と第2処理装置のいずれか一方を選択して動作させ、
選択されなかった処理装置内のCPUを停止させるか又
はアイドル状態に保つモード切換手段と、を具備したこ
とを特徴とする低消費電力処理装置を開示する。
Further, according to the present invention, a low power consumption processing device is provided as a first device.
A second processing device that includes a processing device and includes a CPU that consumes lower power than a CPU included in the first processing device; and each CP in the first processing device and the second processing device.
CP for keeping information between U register files the same
U interface means, a first cache memory system connected to the CPU of the first processing device, first cache memory control means for controlling the first cache memory system, CPU of the first processing device, and first cache memory A first bus means including a bus control means input / output via the system; a second bus means including a bus control means from a CPU of the second processing device; and a first bus means and a second bus means. Bus switch interface means for switching in response to the bus control means from the processing device and the second processing device to input and output an external bus and an external control signal at a timing suitable for an external resource; Selecting and operating one of the second processing devices,
There is disclosed a low power consumption processing device including: a mode switching unit that stops a CPU in a processing device that is not selected or keeps the CPU in an idle state.

【0009】更に本発明は、上記の低消費電力処理装置
において、前記モード切換手段は、前記第1及び第2処
理装置に組み込まれており、第1又は第2処理装置の動
作中の一方の処理装置から他方の処理装置へ動作を移行
するときは、動作中の処理装置のモード切換手段は他方
の処理装置の停止又はアイドル状態を解除して当該処理
装置はアイドル状態に移行するように制御し、これによ
って起動した前記他方の処理装置のモード切換手段はそ
れまで動作中であった処理装置へのクロック供給を停止
するように制御して当該他方の処理装置はそれまで動作
中であった処理装置の状態を引き継いで動作するように
制御することを特徴とする低消費電力処理装置を開示す
る。
Further, according to the present invention, in the above low power consumption processing device, the mode switching means is incorporated in the first and second processing devices, and one of the first and second processing devices during operation is provided. When the operation is shifted from the processing device to the other processing device, the mode switching means of the operating processing device controls the other processing device to stop or to release the idle state and to control the processing device to shift to the idle state. Then, the mode switching means of the other processing device activated by this controls the clock supply to the processing device that was operating so far, and the other processing device was operating so far. Disclosed is a low-power consumption processing device that is controlled to operate while taking over the state of the processing device.

【0010】更に本発明は、上記の低消費電力処理装置
において、動作中の処理装置が自身のレジスタファイル
を書き換えた時、その書き換え結果と一致するように停
止中の処理装置のレジスタファイルも前記CPU間イン
ターフェースを介して書き換えておくようにしたことを
特徴する低消費電力処理装置を開示する。
Further, according to the present invention, in the above low power consumption processing device, when the operating processing device rewrites its own register file, the register file of the stopped processing device is also matched to the rewriting result. Disclosed is a low power consumption processing device characterized by rewriting via an interface between CPUs.

【0011】更に本発明は、上記の低消費電力処理装置
において、前記CPUは、前記クロック切換用セレクタ
信号を発行してクロック周波数をダイナミックに切換え
るクロック切換命令と、前記モード切換手段により処理
装置をダイナミックに切換えるCPU切換命令の少なく
とも一方を具備したことを特徴とする低消費電力処理装
置を開示する。
Further, in the low power consumption processing apparatus according to the present invention, the CPU may issue a clock switching selector signal to dynamically switch a clock frequency, and the CPU may control the processing apparatus by the mode switching means. Disclosed is a low power consumption processing device provided with at least one of CPU switching instructions for dynamically switching.

【0012】[0012]

【発明の実施の形態】以下、本発明の実施の形態を詳細
に説明する。まず、計算機の消費電力を考察すると、消
費電力は主としてCPUの処理能力に比例している。す
なわち下記の様な事情から計算機システムのCPUの消
費電力は上昇してきており、今後も上昇していくものと
考えられる。
Embodiments of the present invention will be described below in detail. First, considering the power consumption of a computer, the power consumption is mainly proportional to the processing capacity of the CPU. In other words, the power consumption of the CPU of the computer system has been increasing under the following circumstances, and it is considered that it will continue to increase in the future.

【0013】(1)年々大きくなりつつあるOS等の大
規模な機能プログラムをストレスなく実行する処理能力
がCPUに要求されており、そのための機能ハードウェ
アやCPU処理スピードを直接的に高めるためのハード
ウェア(パイプラインやキャッシュメモリ及びそれらの
制御ハードウェア等)の量がそれに伴って大きくなって
きている。これは単位時間当りのトランジスタのスイッ
チング量が増加することを意味しており、特にCMOS
プロセス主体の近年のCPUはトランジスタのスイッチ
ング量に消費電力が比例することから、消費電力の増大
を招いている。
(1) The CPU is required to have a processing capability of executing a large-scale functional program such as an OS, which is increasing year by year, without stress, and the functional hardware for that purpose and the CPU for directly increasing the CPU processing speed are required. The amount of hardware (such as pipelines, cache memories and their control hardware) has been increasing accordingly. This means that the switching amount of the transistor per unit time is increased.
Since the power consumption of a recent process-based CPU is proportional to the switching amount of the transistor, the power consumption is increased.

【0014】(2)CPUを高速化するための主力技術
として、CMOSプロセスを微細化(近年では0.1〜
0.2μmプロセスが用いられつつある)して、高集積
化とトランジスタのスイッチング速度向上を実現し、そ
のプロセスの性能向上を利用して、CPU(又はCPU
コア)へ供給するクロックの周波数を向上させていく手
法が待たれている。近年では、CPUチップの内部では
500MHz級のクロックが用いられることも珍しくな
い。プロセスの高集積化特性は、ハードウェアの並列化
等に用いられ、スイッチング速度向上との相乗効果によ
りパイプライン等のレイテンシ短縮、すなわちクロック
周波数の向上に寄与することになる。しかし、(1)で
述べたトランジスタのスイッチング量はその分相乗的に
増加することとなり、大幅な消費電力上昇につながって
いる。
(2) As a main technology for speeding up a CPU, a CMOS process is miniaturized (in recent years, 0.1 to
A 0.2 μm process is being used) to achieve high integration and an improvement in the switching speed of a transistor.
A technique for improving the frequency of the clock supplied to the core) is awaited. In recent years, it is not uncommon for a 500 MHz class clock to be used inside a CPU chip. The high integration characteristic of the process is used for parallelization of hardware and the like, and contributes to a reduction in latency of a pipeline or the like, that is, an improvement in a clock frequency due to a synergistic effect with an improvement in switching speed. However, the switching amount of the transistor described in (1) increases synergistically, leading to a significant increase in power consumption.

【0015】(3)CPUを設計する際の低消費電力化
の手法としては、CPUが動作する必要のない時のクロ
ック停止等によって電力を制御する低消費電力モードの
具備、低電圧動作化(3.3V、2.2V等)が現状用いられて
いる。しかし、前者は、通常運転時には低消費電力化さ
れていない為、有効な処理時間に対する省電力化ではな
い。また、後者は、近年低消費電力化に大きく寄与して
きた手法であるが、あまり大きく電圧を下げすぎるとト
ランジスタのスイッチング速度又は駆動能力自体を低下
させCPUの動作スピード等の性能を悪化させ兼ねない
し、信号のノイズマージンの点でも好ましくないと考え
られる。
(3) As a method of reducing power consumption when designing a CPU, a low power consumption mode for controlling power by stopping a clock when the CPU does not need to operate is provided, and a low voltage operation ( 3.3V, 2.2V, etc.) are currently used. However, the former is not power saving for an effective processing time because power consumption is not reduced during normal operation. In addition, the latter is a technique that has greatly contributed to the reduction of power consumption in recent years.However, if the voltage is excessively reduced too much, the switching speed of the transistor or the driving capability itself may be reduced and the performance such as the operating speed of the CPU may be deteriorated. It is also considered undesirable in terms of signal noise margin.

【0016】上記(1)〜(3)のCPU設計上の低消
費電力化、省電力化に関する考慮から、(3)のCPU
の低電圧動作を除けば、CPUが有効な処理を実行して
いる時に、いかに単位時間内のCPU内の有効スイッチ
ングゲート数(又はトランジスタ数)を減らせるかが、
CMOSプロセス高性能CPUの低消費電力化のポイン
トになることがわかる。これには、回路論理規模の小型
化によって有効動作トランジスタ数そのものを減少させ
る手法と、クロック周波数を低下させる手法とをうまく
組み合わせていくしかない事も(1)、(2)より明ら
かである。しかし、(1)(2)でも述べた様にこれら
の手法は、CPUの高性能化と完全に逆行するものであ
り、その矛盾を回避するために、あまり高速処理が要求
されていない処理や、実質アイドル処理と見なせる処理
に対して効果的にこれらの手法を適用可能な、CPUの
アーキテクチャや省電力の為の命令セットを提供してい
く必要がある。すなわち、動作中にいつでもどんなタス
クや処理ステップに対しても、自在にかつ、高応答にて
必要な様々な電力消費モードに移行でき、その電力制御
動作をプログラム中の命令や、外部からの指令で実行で
きるきめ細かな低消費電力化制御が自在にかつ動的に可
能なCPUを提供する必要がある。例えば、高消費電力
だが高速化に最適化されたCPUと、低速だが低消費電
力化に最適化されたCPUとを1チップにまとめ、自在
に切り換えて動作させる様にし、かつ、各CPUに与え
る基本クロック周波数も自在に切り換えることを可能に
する電力制御用命令セットを有し、プログラム中に必要
な動作スピードに応じて細かく電力制御用命令を配置す
る様にすれば良い。
In consideration of low power consumption and power saving in the CPU design of (1) to (3), the CPU of (3)
Except for the low voltage operation, how the number of effective switching gates (or the number of transistors) in the CPU per unit time can be reduced when the CPU is executing the effective processing,
It can be seen that this is a point of reducing the power consumption of the CMOS process high performance CPU. It is clear from (1) and (2) that the only way to achieve this is to combine the technique of reducing the number of effective operation transistors themselves by reducing the circuit logic scale with the technique of reducing the clock frequency. However, as described in (1) and (2), these methods are completely opposite to the performance enhancement of the CPU, and in order to avoid the inconsistency, processing that does not require much high-speed processing or It is necessary to provide a CPU architecture and an instruction set for power saving, which can effectively apply these methods to processing that can be regarded as substantial idle processing. In other words, any task or processing step can be freely and quickly responded to any of the various power consumption modes required during operation, and the power control operation can be controlled by a command in a program or an external command. It is necessary to provide a CPU that can freely and dynamically perform fine power reduction control that can be executed by the CPU. For example, a high power consumption CPU optimized for high speed operation and a low speed CPU optimized for low power consumption are integrated into one chip, which can be freely switched and operated, and given to each CPU. A power control instruction set that allows the basic clock frequency to be freely switched may be provided, and power control instructions may be finely arranged in a program according to a required operation speed.

【0017】図1は、上記の方針に基づいて構成した、
本発明の低消費電力処理装置の構成例を示すブロック図
で、高消費電力だが高速に動作する高速CPUコア20
と、それほど高速ではないが低消費電力の低速CPUコ
ア30と、両CPUコアに対してそれぞれ周波数可変の
CPUクロック11、81を供給するクロック周波数切
換回路10、70とが設けられている。但し低速CPU
コアに対するクロック81は周波数一定でもよく、その
ときはクロック周波数の切換回路70は不要である。C
PUコア20と30の間は各コア内のCPU間インター
フェース回路21、31を介して接続され、2つのCP
Uコア内のレジスタファイル22、32間のコヒーレン
シ制御(内容を同一に保つ制御)や、CPUコア間のス
テータス情報のやりとりに用いられる。各CPUコアに
は、キャッシュメモリ40、50がそれぞれ装備されて
いることもある。特に高速CPUコア20には処理効率
を向上させるために外部I/Oやメモリシステム等の外
部リソース90上の情報をCPU内部に蓄えておくため
の高速アクセス可能なキャッシュメモリシステム40が
必須であるケースが多い。外部リソース90(メモリ、
I/O、システムバス等)へのアクセスを実行するため
に、各CPUコアからのバス手段B1、B2がそれぞれ
存在するが、2つのCPUコアのうちアクティブな方の
みを外部リソースに接続するためにバススイッチインタ
ーフェース60を具備している。バス手段B1、B2は
キャッシュメモリシステム40、50が存在する場合に
は一度CPUコアからのキャッシュメモリ制御信号C
1、C2と共にキャッシュメモリシステム40、50に
それぞれ接続され、キャッシュメモリ上に情報が存在し
ない場合のみバススイッチインターフェース60を介し
て外部リソース90から情報を入出力する。なお、両C
PUコアがキャッシュメモリを持つ時は、キャッシュメ
モリ間のコヒーレンシ制御を行うためのキャッシュ間イ
ンターフェース41、51を設ける。
FIG. 1 is based on the above policy.
FIG. 2 is a block diagram illustrating a configuration example of a low power consumption processing device according to the present invention.
And a low-speed CPU core 30 which is not so fast but consumes low power, and clock frequency switching circuits 10 and 70 which supply frequency-variable CPU clocks 11 and 81 to both CPU cores. However, low speed CPU
The clock 81 for the core may have a constant frequency, in which case the clock frequency switching circuit 70 is unnecessary. C
The PU cores 20 and 30 are connected via inter-CPU interface circuits 21 and 31 in each core, and are connected to two CPs.
It is used for coherency control between the register files 22 and 32 in the U core (control for maintaining the same contents) and for exchange of status information between CPU cores. Each CPU core may be provided with cache memories 40 and 50, respectively. In particular, for the high-speed CPU core 20, a cache memory system 40 capable of high-speed access for storing information on external resources 90 such as an external I / O and a memory system in order to improve processing efficiency is essential. There are many cases. External resources 90 (memory,
Bus means B1 and B2 from each CPU core exist to execute access to I / O, system bus, etc., but only the active one of the two CPU cores is connected to an external resource. Is provided with a bus switch interface 60. When the cache memory systems 40 and 50 are present, the bus means B1 and B2 once transmit the cache memory control signal C from the CPU core.
1 and C2 are connected to the cache memory systems 40 and 50, respectively, and input / output information from / to the external resource 90 via the bus switch interface 60 only when there is no information in the cache memory. In addition, both C
When the PU core has a cache memory, inter-cache interfaces 41 and 51 for performing coherency control between the cache memories are provided.

【0018】以上に示した図1の構成で、クロック周波
数切換回路10、70を各CPUコア20、30に対し
て設けているが、これらは、各CPUコアへのクロック
周波数をその時の状況(処理内容や環境等)に応じて自
在に切り換え、最適な処理速度や消費電力となるように
各CPUコアの動作を制御するための手段を提供する。
これと、高速CPUコア20、低速CPUコア30の切
り換えによって、全体としてより最適な処理速度及び消
費電力となるようにに処理装置全体を動的に制御する事
で、従来より効率的な電力管理/動作速度管理を動作中
にダイナミックに実施することが可能となり、結果的に
システム全体の総合的な消費電力を減少させることがで
きる。
In the configuration shown in FIG. 1 described above, the clock frequency switching circuits 10 and 70 are provided for each of the CPU cores 20 and 30, and these change the clock frequency to each CPU core at the time ( A means for controlling the operation of each CPU core so as to optimally switch the processing speed and power consumption according to processing contents and environment) is provided.
By switching between the high-speed CPU core 20 and the low-speed CPU core 30 and dynamically controlling the entire processing apparatus so that the overall processing speed and power consumption become more optimum, the power management is more efficient than in the past. / Operation speed management can be performed dynamically during operation, and as a result, overall power consumption of the entire system can be reduced.

【0019】クロック周波数切換回路10は、動作の基
準となる基本クロックCLから複数の互いに厳密に同期
したクロックを生成するPLL(フェイズ・ロックド・
ループ)クロックドライバ12と、そこからの複数のク
ロック17から1つを選択するためのクロック切換マル
チプレクサ14と、PLLクロックドライバからの切換
制御同期クロック16(クロック17のうちのどれかを
使用しても良い)に同期してセレクタ信号SELAに対
応した切り換え信号15を生成してマルチプレクサ14
へ送出するクロック切換制御回路13とから成る。マル
チプレクサ14は、切り換え信号15によって選択され
たクロック11をCPUコア20に与え、CPUコア2
0はこの動作用クロック11に基づいて動作する。クロ
ック周波数切換回路70も同様な構成であるが、出力す
るクロック81の周波数は異なっている。
The clock frequency switching circuit 10 is a phase locked loop (PLL) for generating a plurality of clocks strictly synchronized with each other from a basic clock CL as a reference for operation.
A loop) clock driver 12, a clock switching multiplexer 14 for selecting one of a plurality of clocks 17 therefrom, and a switching control synchronous clock 16 (using any one of clocks 17) from a PLL clock driver. The switching signal 15 corresponding to the selector signal SELA is generated in synchronization with the
And a clock switching control circuit 13 for sending out the clock switching control signal. The multiplexer 14 supplies the clock 11 selected by the switching signal 15 to the CPU core 20,
0 operates based on the operation clock 11. The clock frequency switching circuit 70 has the same configuration, but the frequency of the output clock 81 is different.

【0020】上記のクロック周波数切換回路10の構成
において、PLLを内蔵したクロックドライバ12を用
いている。これは、従来の様に単なる分周期回路によっ
て複数のクロックを生成する場合には、a)外部入力に
最も高速なクロックを用意する必要がある、b)生成で
きる周波数の自由度が低い(1、1/2、1/4、1/
8…倍となる)、c)基本クロックに対し出力クロック
の遅延が発生してしまう等の問題があるが、PLLを使
用すればこれらすべての問題を解決できるからである。
すなわち、基本クロックCLは低周波数のものであって
も、内部のVCOで非常に高い周波数のクロックを生成
し、これを分周して基本クロックとの位相比較を行うよ
うにすればよく、かつVCOからの内部クロックを使用
して複数種のクロックを生成するように構成すること
で、生成できる周波数の自由度も大きくできる。またV
COを複数種持つこともでき、生成できる周波数の自由
度はさらに大きくなる。さらに、マルチプレクサ等の遅
延量に相当するディレイ要素を介してPLLに基準とな
るフィードバッククロックを戻すことにより、目的とす
るクロック出力の遅延を基本入力クロックに対する出力
クロックの遅延を除去したり、調整したりするのが容易
になる。
In the configuration of the above clock frequency switching circuit 10, a clock driver 12 incorporating a PLL is used. This is because, when a plurality of clocks are generated by a simple dividing circuit as in the prior art, a) it is necessary to prepare the fastest clock for the external input, and b) the degree of freedom of the frequency that can be generated is low (1 , 1/2, 1/4, 1 /
8) times, and c) there is a problem that the output clock is delayed with respect to the basic clock. However, all these problems can be solved by using the PLL.
That is, even if the basic clock CL has a low frequency, a very high frequency clock is generated by the internal VCO, the frequency is divided, and the phase comparison with the basic clock may be performed. By configuring to generate a plurality of types of clocks using the internal clock from the VCO, the degree of freedom of the frequency that can be generated can be increased. Also V
A plurality of types of CO can be provided, and the degree of freedom of the frequency to be generated is further increased. Further, by returning a reference feedback clock to the PLL via a delay element corresponding to the delay amount of a multiplexer or the like, the delay of the target clock output can be removed or adjusted by removing the delay of the output clock with respect to the basic input clock. Or easier.

【0021】図2は、クロック切換制御回路13の構成
例を示すもので、この回路ではPLLクロックドライバ
12からのクロック17が2つのクロック(高速クロッ
クと低速クロック)の場合である。クロック選択信号S
CINは、図1のセレクタ信号SELA又はSELB自
体か、あるいはそれに応答して生成した信号であり、そ
れをフリップフロップ(FF)107、106にて同期
用クロック16に同期した信号、即ち、PLLクロック
ドライバ12からの複数のクロック17と厳密に同期化
した信号とする。この信号はフリップフロップ106の
Q出力及びQN出力の互いに反転した2つの出力として
とり出され、3入力NANDゲート102、101へ入
力される。NANDゲート102、101ではこれらと
高速及び低速クロックとのNAND論理がとられ、それ
らNANDゲート出力は、ゲート104、103で構成
されたラッチ用RSフリップフロップ113のセット端
子S及びリセット端子Rにそれぞれ入力される。このR
Sフリップフロップ113のセット側の出力であるゲー
ト104の出力がクロック切り換え信号15としてクロ
ック切換マルチプレクサ14へ出力される。
FIG. 2 shows an example of the configuration of the clock switching control circuit 13. In this circuit, the clock 17 from the PLL clock driver 12 is two clocks (a high-speed clock and a low-speed clock). Clock selection signal S
CIN is the selector signal SELA or SELB itself shown in FIG. 1 or a signal generated in response thereto, and is a signal synchronized with the synchronization clock 16 by flip-flops (FF) 107 and 106, that is, a PLL clock. The signals are strictly synchronized with the plurality of clocks 17 from the driver 12. This signal is taken out as two inverted outputs of the Q output and the QN output of the flip-flop 106 and input to the three-input NAND gates 102 and 101. The NAND gates 102 and 101 perform NAND logic of the high-speed clock and the low-speed clock, and the outputs of the NAND gates are sent to the set terminal S and the reset terminal R of the latch RS flip-flop 113 composed of the gates 104 and 103, respectively. Is entered. This R
The output of the gate 104, which is the output on the set side of the S flip-flop 113, is output to the clock switching multiplexer 14 as the clock switching signal 15.

【0022】図3は、図2に示したクロック切換制御回
路13の動作を示すタイミングチャートを示すもので、
高速クロックは低速クロックの2倍の周波数としてい
る。これら高速及び低速クロックと同期用クロック16
はすべてPLLクロックドライバ12から同期して出力
されている。クロック選択信号SCINがハイレベルに
遷移し(時刻t0)、それをフリップフロップ107、
106により同期化して得られたフリップフロップ10
6のQ出力がハイレベルに変化した後、最初に高速クロ
ックと低速クロックがともにハイレベルに遷移するタイ
ミング(時刻t1)を使ってクロック切換信号15がロ
ーレベルからハイレベルに切り換わり、クロック出力1
1も高速クロックから低速クロックに切り換えられる。
逆に、クロック選択信号SCINがハイレベルからロー
レベルに遷移し(時刻t2)、それをフリップフロップ
107、106により同期化して得られたフリップフロ
ップ106のQN出力がハイレベルに変化した後、最初
に高速クロックと低速クロックがともにハイレベルに遷
移するタイミング(時刻t3)を使って、クロック切換
信号15がハイレベルからローレベルに切り換えられ
る。それに応じてクロック出力11も低速クロックから
高速クロックへ切り換えられる。ただし、時刻t3では
すでに高速、低速クロック共ハイレベルの状態になって
いるので、クロック切換信号15の変化タイミングで直
ちに切り換えが行われる。ここで切り換えタイミングt
1、t3は、同期用クロック16や高速、低速クロック
との間にゲート通過時間等から成る適当なディレイtc
sd1、tcsd2を有しており、確実にその変化点は
高速、低速クロックレベルが共に安定してハイレベルに
ある時に存在する設計となっている。これによって、切
り換え時のハザード等の発生が防止される。
FIG. 3 is a timing chart showing the operation of the clock switching control circuit 13 shown in FIG.
The high-speed clock has twice the frequency of the low-speed clock. These high-speed and low-speed clocks and the synchronization clock 16
Are all output synchronously from the PLL clock driver 12. The clock selection signal SCIN transits to the high level (time t0), and the clock selection signal SCIN is switched to the flip-flop 107,
Flip-flop 10 obtained by synchronization by 106
6, the clock switching signal 15 switches from the low level to the high level using the timing (time t1) when both the high-speed clock and the low-speed clock transition to the high level, and the clock output 1
1 is also switched from the high-speed clock to the low-speed clock.
Conversely, the clock selection signal SCIN transitions from the high level to the low level (time t2), and the QN output of the flip-flop 106 obtained by synchronizing the clock selection signal SCIN with the flip-flops 107 and 106 changes to the high level. The clock switching signal 15 is switched from the high level to the low level using the timing (time t3) at which both the high-speed clock and the low-speed clock transition to the high level. The clock output 11 is accordingly switched from the low-speed clock to the high-speed clock. However, since both the high-speed and low-speed clocks are already at the high level at time t3, the switching is performed immediately at the timing of the change of the clock switching signal 15. Here, switching timing t
1, t3 is an appropriate delay tc including a gate transit time between the synchronization clock 16 and the high-speed and low-speed clocks.
sd1 and tcsd2, and the change point is surely present when both the high-speed and low-speed clock levels are stably at the high level. As a result, occurrence of a hazard or the like at the time of switching is prevented.

【0023】なお、図2に示したように、同期用クロッ
ク16の反転クロック108又はクロック16をディレ
イゲート109で遅延させたもの、あるいは、タイミン
グさえ満たせば(マルチプレクサ14のA1,A2入力
の状態が安定しているタイミングで信号15が変化する
のであれば)、同期用クロック16そのものを用いてラ
ッチ用RSフリップフロップ出力をフリップフロップ1
05でシフトして、上記のタイミングを満足するように
調整したものをクロック切換信号15として用いても、
同様にハザード等を防止できる。
As shown in FIG. 2, if the inverted clock 108 of the synchronization clock 16 or the clock 16 is delayed by the delay gate 109, or the timing is satisfied (the state of the A1 and A2 inputs of the multiplexer 14). If the signal 15 changes at a timing when the clock signal is stable), the output of the latch RS flip-flop is output using the synchronization clock 16 itself.
05 and adjusted so as to satisfy the above timing, the clock switching signal 15 may be used.
Similarly, a hazard or the like can be prevented.

【0024】図4は、図2に示したクロック切換制御回
路の変形例で、高速クロックと低速クロックの排他的論
理和を(EXOR)ゲート114でとり、その反転出力
を2入力のNANDゲート101’、102’に供給す
るようにしたもので、他は図2と同じである。この構成
によると、高速クロック、低速クロックが共にローレベ
ルの時でもハイレベルの時でも、単に同一レベルでさえ
あればクロック選択信号の変化点を基準に切り換え動作
を実行する回路を実現することが出来る。なお、EXO
Rゲート114からのハザードを除去したい場合は、ゲ
ート114の出力を同期用クロックの正転又は反転、又
は適当にクロックをディレイさせたクロックで駆動され
るフリップフロップ115を介してNANDゲート10
1’、102’に供給すれば良い。なお、EXORゲー
ト114からのハザードにより、クロック切換信号15
にハザードが乗ったとしても、マルチプレクサ14がト
ランスファーゲートスイッチを用いて構成されているの
で、後述するCMOSトランスファーゲートの特性によ
って、入力(A1、A2)の状態が同一レベルに安定し
ているタイミングで切換信号が変化する限り(ハザード
も含む)、マルチプレクサ14の出力にハザードが発生
することはないと考えてよい。従って、フリップフロッ
プ115は存在した方がよいが、必須の要素ではないと
考えられる。
FIG. 4 shows a modification of the clock switching control circuit shown in FIG. 2, in which an exclusive OR of a high-speed clock and a low-speed clock is taken by an (EXOR) gate 114, and its inverted output is a two-input NAND gate 101. 'And 102', and the other components are the same as those in FIG. According to this configuration, even when both the high-speed clock and the low-speed clock are at the low level or the high level, it is possible to realize a circuit that executes the switching operation based on the change point of the clock selection signal as long as it is at the same level. I can do it. EXO
If it is desired to remove the hazard from the R gate 114, the output of the gate 114 is inverted or inverted of the synchronizing clock, or the NAND gate 10 is output via a flip-flop 115 driven by a clock whose clock is appropriately delayed.
It may be supplied to 1 'and 102'. Note that, due to the hazard from the EXOR gate 114, the clock switching signal 15
Even if a hazard occurs, since the multiplexer 14 is configured using a transfer gate switch, the state of the inputs (A1, A2) is stabilized at the same level due to the characteristics of the CMOS transfer gate described later. As long as the switching signal changes (including the hazard), it can be considered that no hazard is generated at the output of the multiplexer 14. Therefore, the flip-flop 115 should be present, but is not considered an essential element.

【0025】図5は、図2の高速・低速の2クロックを
切り換えるマルチプレクサ14の構成例を示しており、
CMOSプロセスで構成したトランスファーゲートスイ
ッチである。トランジスタ110P、111PはPタイ
プトランジスタと呼ばれ、そのゲート(S入力が接続そ
れた端子)に負電位が印加されていて、A1(高速クロ
ック)入力にこれに対して高い電位が印加されると導通
し、A1入力の電位をバッファ112Bへ伝える。一
方、トランジスタ110N、111NはNタイプトラン
ジスタと呼ばれ、ゲートに正電位が印加されているとき
A2入力にこれより低い電位が印加されると導通し、A
2(低速クロック)入力の電位をバッファ112Bへ伝
える。従ってS入力の電位によってA1、A2入力の一
方をバッファ112Bを介して端子Zへ出力でき、1〜
2段のトランジスタでパスが構成されているから高速ス
イッチが可能である。そして、上記の条件以外の状態で
は各トランジスタの出力側はハイインピーダンスとなる
が、バッファ112Bの入力インピーダンスもCMOS
回路故にハイインピーダンスであるので、トランジスタ
出力とバッファ入力との間の接続部には電荷が蓄積さ
れ、しばらくの間はその状態になる直前の状態が維持さ
れ、これは出力端Zにも反映される。従って、クロック
切換信号15(S入力)の切換時に、インバータ112
Gの遅延によって2つのトランジスタゲート入力がとも
に低レベルとなる瞬間があっても、A1入力、A2入力
に印加される電位がそのとき安定していれば、バッファ
112Bからハザードが発生することはなく、スムーズ
なクロック切り換えが行われる。
FIG. 5 shows an example of the configuration of the multiplexer 14 for switching between the high-speed and low-speed two clocks in FIG.
This is a transfer gate switch formed by a CMOS process. The transistors 110P and 111P are called P-type transistors. A negative potential is applied to the gates (terminals to which the S input is connected) of the transistors 110P and 111P. When a higher potential is applied to the A1 (high-speed clock) input. It becomes conductive and transmits the potential of the A1 input to the buffer 112B. On the other hand, the transistors 110N and 111N are called N-type transistors. When a positive potential is applied to the gate and a lower potential is applied to the A2 input, the transistors 110N and 111N become conductive.
The 2 (low-speed clock) input potential is transmitted to the buffer 112B. Therefore, one of the A1 and A2 inputs can be output to the terminal Z via the buffer 112B depending on the potential of the S input.
Since the path is composed of two stages of transistors, a high-speed switch is possible. Under the conditions other than the above conditions, the output side of each transistor becomes high impedance, but the input impedance of the buffer 112B is also CMOS.
Since the circuit is high impedance, charge is accumulated at the connection between the transistor output and the buffer input, and the state immediately before the state is maintained for a while, and this state is also reflected on the output terminal Z. You. Therefore, when the clock switching signal 15 (S input) is switched, the inverter 112
Even if there is a moment when both transistor gate inputs become low due to the delay of G, if the potential applied to the A1 input and the A2 input is stable at that time, no hazard is generated from the buffer 112B. , Smooth clock switching is performed.

【0026】図6は、2つのクロックを切り換えるマル
チプレクサの別の構成例で、クロック切換制御回路の一
部機能も有したものである。この回路の基本スイッチ6
00は、図5と同様にCMOSプロセスで構成したトラ
ンスファーゲートスイッチであるが、CPUからのセレ
クト信号及びスイッチ600の切換信号15の形式が異
なっている。即ち、基本スイッチ600は、切換信号S
A1が“0”のときA1入力を、切換信号SA2が
“0”のときA2入力を出力する。入力されるセレクト
信号SelA1、SelA2はそれぞれそれが“1”の
ときクロックのA1入力、A2入力を選択するためのC
PUからの信号で、EXORゲート602とNANDゲ
ート603、604によって、SelA1=“1”、S
elA2=“0”のとき信号SA1=“0”、SA2=
“1”となって入力A1が出力され、SelA1=
“0”、SelA2=“1”のとき信号SA1=
“1”、SA2=“0”となって入力A2が出力され
る。さらにこれらゲートの働きで、SelA1、Sel
A2がともに“0”かともに“1”のときは信号SA1
=SA2=“1”となり、基本スイッチ600が完全に
オフし、A1、A2両入力が出力されるのを防いでい
る。
FIG. 6 shows another configuration example of a multiplexer for switching between two clocks, which also has a part of the function of a clock switching control circuit. Basic switch 6 of this circuit
Reference numeral 00 denotes a transfer gate switch formed by a CMOS process as in FIG. 5, but the format of the select signal from the CPU and the switching signal 15 of the switch 600 are different. That is, the basic switch 600 outputs the switching signal S
When A1 is "0", the A1 input is output, and when the switching signal SA2 is "0", the A2 input is output. The input select signals SelA1 and SelA2 are C for selecting the A1 input and A2 input of the clock when they are "1", respectively.
SelA1 = "1", S by the EXOR gate 602 and the NAND gates 603 and 604 from the PU.
When elA2 = "0", signals SA1 = "0" and SA2 =
It becomes “1” and the input A1 is output, and SelA1 =
When "0" and SelA2 = "1", the signal SA1 =
"1", SA2 = "0", and the input A2 is output. Further, by the operation of these gates, SelA1, SelA1,
When A2 is both "0" or "1", the signal SA1
= SA2 = “1”, the basic switch 600 is completely turned off, and both the A1 and A2 inputs are prevented from being output.

【0027】また、レジスタ601を用いてラッチクロ
ックLCLによりいったんセレクタ信号をラッチして基
本スイッチ600へ送っているが、これは切換タイミン
グをクロックと同期化するのと、ラッチして同時に切換
信号SA1、SA2を出力することで、切り換えのタイ
ミング誤差を極小化し、基本スイッチ600の2入力が
ショートしないようにする機能を持つ。ここで前者の同
期化であるが、このためにはラッチクロックLCLを基
本クロックCLに厳密に同期化させておく必要がある。
この方法としては、CPUからの切換指令を基本クロッ
クCLに同期させて出力するのが一般的である。
The selector signal is temporarily latched by the latch clock LCL using the register 601 and sent to the basic switch 600. This is because the switching timing is synchronized with the clock and the switching signal is latched and simultaneously switched. , SA2 to minimize the switching timing error and prevent the two inputs of the basic switch 600 from being short-circuited. Here, the former is the synchronization. For this purpose, the latch clock LCL must be strictly synchronized with the basic clock CL.
As this method, it is common to output a switching command from the CPU in synchronization with the basic clock CL.

【0028】図8は、図6の回路を多段結合して4入力
クロックCL1〜CL4を切り換えるようにした回路例
で、図6の基本スイッチ600を多段結合し、それら
を、セレクト信号CL1〜CL4から図6と同様にレジ
スタ804にラッチクロックLCLでラッチして生成し
た切換信号で切り換えるようにしたものである。なお、
各基本スイッチ600出力端Zに接続されるバッファ
(図6の112B)は各スイッチには不要で、多段結合
最後の出力端にバッファ803を設けるだけでよく、こ
れによってクロックドライバとする。
FIG. 8 shows an example of a circuit in which the circuits of FIG. 6 are connected in multiple stages to switch the four-input clocks CL1 to CL4. The basic switches 600 of FIG. 6 are connected in multiple stages, and these are connected to select signals CL1 to CL4. 6 is switched by a switching signal generated by latching the register 804 with the latch clock LCL in the same manner as in FIG. In addition,
A buffer (112B in FIG. 6) connected to the output terminal Z of each basic switch 600 is not required for each switch, and only a buffer 803 needs to be provided at the last output terminal of the multi-stage connection, thereby forming a clock driver.

【0029】以上では高速・低速の2クロックを切り換
えるためのクロック切換制御回路及びマルチプレクサの
構成例と動作を図2〜図6を用いて説明したが、より多
くのクロックを切り換えるための各回路例を次に述べ
る。図7(a)は、4つのクロックCL1〜CL4の1
つを選択してとり出す回路の例で、図1のクロック切換
制御回路13とマルチプレクサ14に相当する回路であ
る。マルチプレクサ701〜703は図5に示した2入
力切換用のものであり、これらの多段結合でスイッチ部
分が構成されている。切換信号はレジスタ704の出力
で与えられ、その切換タイミングは、図6で説明したの
と同様の、基本クロックに同期したラッチクロックLC
Lで与えられる。レジスタ704へ入力される選択信号
SelE1、SelE2は、CPUからのセレクト信号
SelCL1〜SelCL4を図7(b)のようにエン
コードして得られた信号である。これら選択信号Sel
E1、SelE2、レジスタ704、ラッチクロックが
クロック切換制御回路の機能を実現していると考えられ
るが、選択信号とラッチクロックを生成する部分は図7
では省略されている。なお、ここでは4クロックの例を
示したが、さらに多数の切り換えも同様に構成できる。
In the above, the configuration examples and operations of the clock switching control circuit and the multiplexer for switching between the high-speed and low-speed two clocks have been described with reference to FIGS. 2 to 6, but each circuit example for switching more clocks will be described. Is described next. FIG. 7A shows one of four clocks CL1 to CL4.
This is an example of a circuit for selecting and taking out one, and is a circuit corresponding to the clock switching control circuit 13 and the multiplexer 14 in FIG. The multiplexers 701 to 703 are for two-input switching shown in FIG. 5, and a switch portion is composed of these multistage couplings. The switching signal is given by the output of the register 704, and the switching timing is the same as that described with reference to FIG.
L. The selection signals SelE1 and SelE2 input to the register 704 are signals obtained by encoding the selection signals SelCL1 to SelCL4 from the CPU as shown in FIG. 7B. These selection signals Sel
It is considered that E1, SelE2, the register 704, and the latch clock realize the function of the clock switching control circuit, but the part for generating the selection signal and the latch clock is shown in FIG.
Is omitted. Although an example of four clocks has been described here, a larger number of switchings can be similarly configured.

【0030】図7は、図5のマルチプレクサを多段結合
した構成例であるが、図2または図4で説明したクロッ
ク切換制御回路13とマルチプレクサ14を組み合わせ
た回路を1つの単位回路として、これらを多段結合して
も多数のクロック切り換えが行われる。この場合、切り
換える前と切り換えた後のそれぞれのクロックのみに依
存して、それらのクロックが同レベルの論理にある時に
切り換えるタイミングをセットする方法によって同様に
スムーズな切り換え制御を実現する事ができる。すなわ
ち、初段の回路において関係の無いクロック入力をマス
クした後、AND論理をとってNANDゲート101、
102に入力すれか、あるいはEXOR+反転論理(E
XNOR)をとってNANDゲート101、102に入
力すれば良い。例えば一方のクロック入力を“1”に固
定すれば(マスク)、AND論理をとった場合でもEX
OR+反転論理をとった場合でも、他方のクロックを通
過させる単なるバッファとなり、そのクロックが次に切
り換わるべきクロックの場合にのみそのクロックと同期
化されたクロック選択信号とで切り換え動作が行われる
事になる。また、両方のクロック共関係なければ、その
回路ではクロック選択信号自体が変化しないはずであ
り、マルチプレクサ14の出力も“1”に固定されるは
ずである。この2つの条件から、最終的に生きているク
ロックパス、すなわち、現在選択されているクロックパ
スと、次に選択されるべきクロックのパスとを切り換え
ているマルチプレクサ及びその切り換え制御回路1組の
みがこれまで説明してきた基本となる2入力クロック切
換制御回路として動作しているとみなせる為、同様のス
ムーズな切り換え動作が可能となる訳である。なお、新
しく切り換わるべきクロックパス選択はCPUがフェッ
チした切換命令をデコードして対応する各マルチプレク
サへのセレクタ信号を特定し、それらを必要な論理に設
定すれば良い。
FIG. 7 shows an example of a configuration in which the multiplexers of FIG. 5 are connected in multiple stages. A circuit combining the clock switching control circuit 13 and the multiplexer 14 described in FIG. 2 or FIG. Numerous clock switchings are performed even in a multi-stage connection. In this case, smooth switching control can be similarly realized by a method of setting the timing of switching when the clocks have the same level of logic, depending only on the respective clocks before and after the switching. That is, after masking an unrelated clock input in the first-stage circuit, an AND logic is taken and the NAND gate 101,
102, or EXOR + inverted logic (E
XNOR) and input to the NAND gates 101 and 102. For example, if one clock input is fixed to “1” (mask), EX is used even when AND logic is used.
Even if OR + inverted logic is used, it becomes a mere buffer for passing the other clock, and only when that clock is the clock to be switched next, the switching operation is performed with the clock selection signal synchronized with that clock. become. If both clocks are not related, the clock selection signal itself should not change in the circuit, and the output of the multiplexer 14 should be fixed to "1". From these two conditions, only the finally living clock path, that is, the multiplexer that switches between the currently selected clock path and the clock path to be selected next, and one set of the switching control circuit are provided. Since it can be regarded as operating as the basic two-input clock switching control circuit described above, the same smooth switching operation is possible. The clock path to be newly switched may be determined by decoding the switching instruction fetched by the CPU, specifying the selector signal to each of the corresponding multiplexers, and setting them to necessary logic.

【0031】図9は、多段入力時のクロック周波数切換
回路の例とその中でのPLLクロックドライバの使用例
を示す。切換回路911〜917の各々は、例えば図5
に示したマルチプレクサに図7のようにレジスタをつけ
加え、このレジスタに周波数fのクロックを用いてセレ
クト信号をラッチして同期化させるようにしたもので、
これは図7の構成と同様である。このように、PLLか
らの最高周波数のクロックで同期化すれば、厳密な基本
クロックへの同期化が可能になる。あるいは図6の回路
をこれら切換回路としてもよい。
FIG. 9 shows an example of a clock frequency switching circuit at the time of multi-stage input and an example of use of a PLL clock driver in the circuit. Each of the switching circuits 911 to 917 is, for example, as shown in FIG.
A register is added to the multiplexer shown in FIG. 7 as shown in FIG. 7, and a select signal is latched and synchronized with this register by using a clock of frequency f.
This is the same as the configuration in FIG. As described above, if synchronization is performed with the clock having the highest frequency from the PLL, strict synchronization with the basic clock can be achieved. Alternatively, the circuit in FIG. 6 may be used as these switching circuits.

【0032】図9では、フィードバックすべきクロック
周波数をfとして、それを基準にf/32の周波数の基
本クロックを外部から入力し、f/2、f/3、f/
4、f/6、f/10、f/16、f/22、f/32
及びfの9種の周波数を生成可能なPLLクロックドラ
イバを想定した。なお、周波数fのクロックは、同期用
クロックとしても使用している最も高速なクロックであ
る。PLLクロックドライバ901は、基準クロックC
L(f/32)をリファレンスクロック(REFCL
K)として受け、フィードバッククロックCLBを内部
で1/32倍した信号の位相とリファレンスクロックの
位相とをほぼ一致させる様にして上記各9種のクロック
位相を調整している。すなわち生成される各クロック
は、最も高速な周波数fのクロックに厳密に同期して生
成されるため、フィードバッククロックCLBの遅延量
に応じてその分だけ早い位相にてPLLクロックドライ
バから出力されていることになる。従って、切換回路9
11〜914の列、同915、916の列、及び同91
7の列の各遅延量に相当する遅延補正回路921〜92
3を図示した様に同期クロック(f)へ挿入して各段へ
の同期用クロックを構成すると共に、遅延補正回路92
3出力をフィードバッククロックCLBとしてPLLク
ロックドライバに戻せば、CPUへ出力する最終段のク
ロック出力CLoutの位相を結果的に基本クロック位
相とほぼ一致させる厳密な同期化が可能となる。なお、
PLLクロックドライバから生成されるクロック出力の
位相は、ループフィルタ(抵抗、コンデンサで補正)を
外付け可能なPLLを用いれば微調整が可能である。
In FIG. 9, a clock frequency to be fed back is assumed to be f, and a basic clock having a frequency of f / 32 is input from the outside based on the clock frequency, and f / 2, f / 3, f /
4, f / 6, f / 10, f / 16, f / 22, f / 32
And a PLL clock driver capable of generating nine kinds of frequencies of f. The clock with the frequency f is the highest-speed clock that is also used as a synchronization clock. The PLL clock driver 901 receives the reference clock C
L (f / 32) to the reference clock (REFCL)
K), and the above nine clock phases are adjusted so that the phase of the signal obtained by internally multiplying the feedback clock CLB by 1/32 and the phase of the reference clock substantially match. That is, since each generated clock is generated strictly in synchronization with the clock having the highest frequency f, it is output from the PLL clock driver at a phase earlier by that amount in accordance with the delay amount of the feedback clock CLB. Will be. Therefore, the switching circuit 9
Rows 11 to 914, rows 915 and 916, and row 91
Delay correction circuits 921 to 92 corresponding to the respective delay amounts in the 7th column
3 is inserted into the synchronous clock (f) as shown to form a synchronous clock for each stage, and the delay correction circuit 92
If the three outputs are returned to the PLL clock driver as the feedback clock CLB, strict synchronization can be achieved in which the phase of the clock output CLout of the final stage output to the CPU substantially coincides with the basic clock phase. In addition,
The phase of the clock output generated from the PLL clock driver can be finely adjusted by using a PLL to which a loop filter (corrected by a resistor and a capacitor) can be externally attached.

【0033】クロック周波数切換のためのPLLの使用
は、今後CPUが高速化されるに従ってCPUチップ内
に内蔵されることが必須となってくると考えられる。す
なわち、現状でもLSIの内部クロックで500MHz
級のCPUが存在し、外部のシステム(電子ボード上)
で直接扱える周波数ではない。従って、外部の基本クロ
ックとしては100MHz以下程度に抑え、LSIチッ
プ内部で高速周波数動作をさせる構成が必須となってく
る。さらに図1の様なCPUシステムは、1チップLS
Iとしてまとめないと成立しなくなってくる事を意味し
ているとも言える。すなわち、500MHzを越えるク
ロックを厳密に同期化させて切り換え制御を行うために
は、PLLクロックドライバを含むクロック周波数切換
回路10、70とCPUコア20、30は少なくとも一
体化して1チップ化する必要性が生じ、理想的には1チ
ップCPUとして図1のシステム全体をを集積していく
ことが自然な流れである。現状はこの様な思想の低消費
電力1チップLSIは存在しないが、1チップCPUに
集積していくことを考慮した場合の構成上の特徴、新た
に実現できる機能及び効果等について図1をベースに以
下に検討を加える。
It is considered that the use of the PLL for switching the clock frequency will be indispensable to be built in the CPU chip as the CPU becomes faster in the future. That is, even at present, the internal clock of the LSI is 500 MHz.
Class CPU and external system (on electronic board)
It is not a frequency that can be handled directly. Therefore, it is necessary to have a configuration in which the external basic clock is suppressed to about 100 MHz or less and a high-speed operation is performed inside the LSI chip. Further, the CPU system as shown in FIG.
It can be said that it means that it will not be established unless summarized as I. That is, in order to perform switching control by strictly synchronizing clocks exceeding 500 MHz, it is necessary to integrate at least the clock frequency switching circuits 10 and 70 including the PLL clock driver and the CPU cores 20 and 30 into one chip. It is a natural flow to integrate the entire system of FIG. 1 ideally as a one-chip CPU. At present, there is no low-power single-chip LSI with such a concept, but based on FIG. 1, the structural features, functions and effects that can be newly realized in consideration of integration into a one-chip CPU, are based on FIG. Consider the following.

【0034】クロック周波数切換回路とCPUコアとを
集積化する利点及び必要性は上述したとおりである。従
って2つのCPUコア20、30を1チップLSIに集
積化することによる機能及び効果をまず検討する。第1
に2つのCPUコアを1チップ化することにより、CP
U間I.F.回路による通信レイテンシの短縮、スループ
ットの飛躍的な向上が図れる。例えばレジスタファイル
22、32間のコヒーレンシ制御をリアルタイムで実現
できる。動作中のCPUが自身のレジスタファイルを変
更した時、書き込み対象レジスタ情報と変更データ情報
及びライトコマンドを並行して他方のCPU内のレジス
タファイルに送り、対応するレジスタ内容を実時間で変
更しておくことが可能となる。これにより、CPU間の
切り換えが発生しても改めてコンテキストのコピーを実
施する必要はなく、余分なオーバーヘッド無しに直ちに
処理を開始できるという効果が得られる。
The advantages and necessity of integrating the clock frequency switching circuit and the CPU core are as described above. Therefore, the functions and effects of integrating the two CPU cores 20 and 30 into a one-chip LSI will first be examined. First
By integrating two CPU cores into one chip, the CP
The communication latency by the U-to-U IF circuit can be reduced, and the throughput can be dramatically improved. For example, coherency control between the register files 22 and 32 can be realized in real time. When the operating CPU changes its own register file, it sends the register information to be written, the changed data information and the write command in parallel to the register file in the other CPU, and changes the corresponding register contents in real time. Can be stored. As a result, even if switching between CPUs occurs, it is not necessary to copy the context again, and an effect is obtained that processing can be started immediately without extra overhead.

【0035】第2に、クロック周波数切換回路10、7
0への切り換え信号や前述した入力クロックのマスク信
号等から成るセレクタ信号SELA、SELB及びCP
U間の切り換え制御信号/情報等を低レイテンシで高速
生成できる様になる。従来では、これらの信号を生成す
る手段は、CPUの外部にステータスレジスタ等として
用意し、CPUのMOV命令やロード/ストア命令等を
用いて値をセット、リセットする方法を採らざるを得な
かったが、1チップ化することによりCPUの命令とし
て、組み込みプログラム中に適切に配置することによっ
て、それをCPUがフェッチした時、直ちに実行できる
様に構成することができる。CPUコア内では結果的に
クロック周波数切換回路10、70内の非同期の同期化
処理用FF107、106を除去できるか、又はFF1
06のみで同期化可能とできる場合もあり、またCPU
内部動作周波数は外部に対してはるかに高速であるとい
う利点もある為、切り換えにかかるレイテンシを大幅に
短縮することができる。CPU間の切り換え用制御信号
の結線例やその切り換えプロトコル例は後述するが、こ
れらのCPU間情報伝達がすばやく行え、それに対応す
る動作や処理も高応答ですばやく実行できるという利点
が生まれる。結果的に、プログラム中できめ細かな電力
制御を記述でき、さらなる低消費電力化を図ることがで
きる効果が得られる。
Second, clock frequency switching circuits 10 and 7
0 and selector signals SELA, SELB and CP composed of the input clock mask signal described above.
Switching control signals / information between U and the like can be generated at high speed with low latency. Conventionally, a means for generating these signals has to be prepared as a status register or the like outside the CPU, and a method of setting and resetting a value by using a MOV instruction or a load / store instruction of the CPU has to be adopted. However, by integrating them into one chip and appropriately arranging them as instructions of the CPU in the embedded program, it can be configured to be executed immediately when fetched by the CPU. As a result, in the CPU core, the asynchronous synchronization processing FFs 107 and 106 in the clock frequency switching circuits 10 and 70 can be removed, or the FF 1
In some cases, it is possible to make synchronization possible only with
Since the internal operating frequency has the advantage of being much faster than the external, the latency involved in switching can be greatly reduced. An example of connection of a control signal for switching between CPUs and an example of a switching protocol thereof will be described later. However, there is an advantage that information transmission between the CPUs can be quickly performed, and operations and processes corresponding to the information can be quickly performed with high response. As a result, fine power control can be described in the program and an effect of further reducing power consumption can be obtained.

【0036】次にキャッシュメモリ部(キャッシュメモ
リシステム40、50)の1チップLSI内蔵化を考え
てみる。まず第1に、レジスタファイルのコヒーレンシ
制御と同様に、1チップ化によってマシンサイクルに同
期した高速なキャッシュ間インターフェースが構成でき
るため、リアルタイムでキャッシュメモリの内容を同一
に保つことが可能となる。具体的には、動作中のCPU
のキャッシュメモリが書き換わった時、並列して他方の
CPUのキャッシュメモリの同じアドレス部分を書き換
える処理を行う。動作中のCPU側から送る情報は、目
的とするキャッシュメモリアドレス及びキャッシュデー
タと書き込みコマンド信号であり、書き込みコマンドが
アクティブになったら対応するキャッシュメモリのアド
レスの内容を目的とするキャッシュデータにリアルタイ
ムで書き換えていく。従来では、CPUチップが別々で
あることから、CPUが動作を再開した時には一度前の
キャッシュ情報をフラッシュ(無効にする)する必要が
あったが、本方法によりCPU切り換え時のキャッシュ
メモリに関するオーバーヘッドを極少化することができ
る。なお、キャッシュメモリシステムを各CPUコアそ
れぞれに用意する場合は、メモリシステムの構造を高速
対応タイプと低消費電力対応タイプに分けてそれぞれ設
計、前者を高速CPUコアに、後者を低速CPUコアに
割り付けると、最も消費電力、動作速度の点で総合的に
最適な構造を提供できる。また、キャッシュメモリ部の
みを1チップ化して、別に1チップ化されたCPU部と
バス手段B1、B2、キャッシュメモリ制御信号C1、
C2等の信号群を外部で結合する方法も考えられるが、
すべてを1チップ化する場合に比べて、明らかにCPU
とリソース間のアクセスレイテンシは増大し、CPUシ
ステムの性能にはマイナスであると言える。
Next, consider the one-chip LSI built in the cache memory units (cache memory systems 40 and 50). First, similarly to the coherency control of the register file, a high-speed cache-to-cache interface synchronized with a machine cycle can be configured by one chip, so that the contents of the cache memories can be kept the same in real time. Specifically, the operating CPU
When the cache memory of the other CPU is rewritten, the same address portion of the cache memory of the other CPU is rewritten in parallel. The information sent from the operating CPU is a target cache memory address, cache data, and a write command signal. When the write command becomes active, the contents of the corresponding cache memory address are converted to the target cache data in real time. Rewrite. In the past, since the CPU chips were separate, it was necessary to flush (invalidate) the previous cache information once when the CPU resumed operation. However, this method increases the overhead related to the cache memory when switching the CPU. It can be minimized. When a cache memory system is prepared for each CPU core, the structure of the memory system is divided into a high-speed type and a low power type, and the former is assigned to a high-speed CPU core and the latter is assigned to a low-speed CPU core. Thus, it is possible to provide a structure that is optimal overall in terms of power consumption and operation speed. Further, only the cache memory unit is made into one chip, and the CPU unit and bus means B1, B2, cache memory control signal C1,
A method of externally combining a signal group such as C2 is also conceivable,
Clearly CPU compared to the case where everything is integrated into one chip
It can be said that the access latency between the resource and the resource increases and the performance of the CPU system is negative.

【0037】第2に、1チップ化により、2組のキャッ
シュメモリを1組にする事も可能である。具体的には、
1つのキャッシュメモリを2つのCPUコアが共有し、
より有効にキャッシュメモリを利用する為に、高速CP
U側が動作中はクロック同期型のアクセス制御等で高速
アクセスを実行し、低速CPU側が動作中は、リード/
ライトコマンドによるスタティックなアクセス制御(C
MOSプロセスの場合、コマンドによりアクセスしてい
る時以外は消費電力がほぼゼロ)により低消費電力化を
目指した方式を採れば良い。これによれば、キャッシュ
メモリ間のコヒーレンシ管理/制御が必要なくなるだけ
でなく、多量のトランジスタを必要とするメモリ部を1
組分除去できることで、他の1組のキャッシュメモリ容
量を増やしたり、チップのサイズを小さくすることがで
きたり等、さらなる高速化又は低消費電力化を目指すこ
とができる。この場合も必然的に上述した様なコヒーレ
ンシ制御や共有キャッシュメモリを実現するために、キ
ャッシュメモリの制御アルゴリズム及び、キャッシュメ
モリシステムの構造は両CPU共通であるという前提
で、CPU側のキャッシュアクセス制御回路が設計され
ていなければならない。この場合、バススイッチインタ
ーフェース60は、2つのCPUからのバスを切換える
方式のものでは無く、一体化されたキャッシュメモリシ
ステムへのアクセスが失敗した時に、直ちに外部へのア
クセス動作が発生する様に制御される入出力用のバスス
イッチバッファとして構成しても良い。
Second, it is also possible to make two sets of cache memories into one set by forming one chip. In particular,
One cache memory is shared by two CPU cores,
High-speed CP to use cache memory more effectively
While the U side is operating, high-speed access is executed by clock synchronous access control or the like.
Static access control by write command (C
In the case of the MOS process, the power consumption may be substantially zero except when the access is made by a command. This not only eliminates the need for coherency management / control between cache memories, but also eliminates the need for one memory unit that requires a large number of transistors.
By removing one set, it is possible to increase the capacity of another set of cache memory, reduce the size of the chip, and achieve higher speed or lower power consumption. In this case as well, in order to realize the coherency control and the shared cache memory as described above, the cache access control on the CPU side is performed on the assumption that the control algorithm of the cache memory and the structure of the cache memory system are common to both CPUs. The circuit must be designed. In this case, the bus switch interface 60 is not of the type that switches the buses from the two CPUs, and is controlled so that an external access operation occurs immediately when access to the integrated cache memory system fails. It may be configured as an input / output bus switch buffer.

【0038】バススイッチインターフェースユニット6
0は、別のLSIにまとめ、リソース90の近くに配置
する方式も有効である。特にキャッシュメモリシステム
を1つにまとめて2つのCPUで共有化する場合、バス
手段B1、B2はキャッシュメモリで結合され、キャッ
シュメモリからはそのキャッシュメモリへのアクセスに
失敗した時(キャッシュメモリ上に必要とするデータが
存在しない時)に、外部リソースへのアクセスに向かう
場合に必要となるバス手段が1つあれば良いことにな
る。この内部バス手段をCPUシステムのLSIチップ
の外部アクセスバスとして定義すれば、バススイッチイ
ンターフェースユニット60は、リソースやシステムバ
ス等へのインターフェースとなるバスインターフェース
ユニットとして定義することもできる。これをリソース
へのアクセス用制御信号やデコーダ、入出力バッファ等
と一緒にLSIに集積すれば、各リソース又はローカル
リソースブロックの近くに、1つ又は分散して複数配置
する方法を採ることができる。集中して集積されたCP
Uチップから配線を引きまわす場合と比較して、バッフ
ァ遅延やデコーダ遅延等が除去できる(リソースのそば
に必要となるバッファICやデコーダの代りにバスイン
ターフェースユニットを代用できる)分、高速化が図れ
る可能性がある。
Bus switch interface unit 6
It is also effective to combine 0s in another LSI and arrange them near the resource 90. In particular, when the cache memory system is integrated into one and shared by two CPUs, the bus means B1 and B2 are connected by a cache memory, and when access to the cache memory from the cache memory fails (on the cache memory). (When there is no necessary data), there is only one bus means necessary for accessing an external resource. If this internal bus means is defined as an external access bus of the LSI chip of the CPU system, the bus switch interface unit 60 can be defined as a bus interface unit serving as an interface to resources, a system bus, and the like. If this is integrated in an LSI together with a resource access control signal, a decoder, an input / output buffer, and the like, a method of arranging one or a plurality of resources in the vicinity of each resource or local resource block can be adopted. . Centralized CP
As compared with the case where wiring is routed from the U chip, a buffer delay, a decoder delay, and the like can be eliminated (a bus interface unit can be used instead of a buffer IC or a decoder required near a resource), thereby increasing the speed. there is a possibility.

【0039】次に図10、図11により、CPU間の切
り換え制御について説明する。まず図10に、CPU間
の切り換え制御及びクロック周波数制御のための信号接
続を示す。高速CPU20、低速CPU30はそれぞれ
クロックセレクト制御回路202、203を有している
(CPU内部に内蔵していても良い)。CPUはクロッ
ク周波数設定/変更命令やCPU切換命令をフェッチし
実行を開始すると、対応するクロックセレクト制御回路
202又は203が必要な制御信号(Select、S
top等)を生成してクロック選択ドライバ200、2
01を制御する。ここで、図10に示したクロック選択
ドライバ200、201は、図1のクロック周波数切換
回路10、70の機能に相当する。また、信号Sele
ct(A)、(B)は、前述したクロック切換マルチプ
レクサの切換信号やクロック入力マスク信号等のコント
ロール信号を含むところの図1におけるセレクタ信号S
ELA、SELBの機能に相当し、信号Stop
(A)、(B)は、図1のクロック停止信号CLST
A、CLSTBの機能に相当するものとする。
Next, switching control between CPUs will be described with reference to FIGS. First, FIG. 10 shows signal connections for switching control between CPUs and clock frequency control. The high-speed CPU 20 and the low-speed CPU 30 have clock select control circuits 202 and 203, respectively (may be built in the CPU). When the CPU fetches a clock frequency setting / change instruction or a CPU switching instruction and starts executing the instruction, the corresponding clock select control circuit 202 or 203 transmits a necessary control signal (Select, S).
top etc.) to generate the clock selection drivers 200, 2
01 is controlled. Here, the clock selection drivers 200 and 201 shown in FIG. 10 correspond to the functions of the clock frequency switching circuits 10 and 70 in FIG. Also, the signal Sell
ct (A) and (B) are selector signals S in FIG. 1 including control signals such as the above-described clock switching multiplexer switching signal and clock input mask signal.
The signal Stop corresponds to the function of ELA and SELB.
(A) and (B) show the clock stop signal CLST of FIG.
A, It corresponds to the function of CLSTB.

【0040】図10では、動作中に選択されているCP
Uのみにクロックが供給されている構成を想定して、互
いに相手側のCPUによって自身に供給されるクロック
の起動/停止処理が実行される様に、Stop信号をク
ロスに結線している。図11は、高速CPU20から低
速CPU30への切り換えが実施される様子を図示して
おり、これについて詳しく説明する。まず動作中のCP
Uである高速CPU20がスイッチ命令(CPU30へ
のスイッチ)をフェッチすると、CPU30への再起動
指令を生成し、アイドルステートへ移行する。再起動指
令は、クロックセレクト制御回路202へのクロック制
御指令23を伴い、CPU30へのクロック再起動を実
行する(stop(B)を解除)と共に、CPU間通信
ライン61を介してCPU30にクロック再起動後直ち
にアイドルステートから抜け、次の処理ステップに移行
する様に指令する。CPU30側はクロックが再起動さ
れると、まずCPU20側のクロックを停止させるべ
く、クロックセレクト制御回路203を介して、sto
p(A)をアクティブにした後アイドルステートを抜
け、次の処理ステップに移行する、なお、CPU30
は、自身のレジスタにコピーされたCPU20の情報を
用い、CPU20に引き続いて必要な処理を実行して行
く為、処理手順や処理内容に矛盾を生じることは無い。
逆方向の、CPU30からCPU20への切り換えも同
様である。
In FIG. 10, the CP selected during the operation is shown.
Assuming a configuration in which a clock is supplied only to U, the Stop signal is cross-connected so that start / stop processing of the clock supplied to itself is executed by the CPUs on the other side. FIG. 11 illustrates how the switching from the high-speed CPU 20 to the low-speed CPU 30 is performed, which will be described in detail. First, operating CP
When the high-speed CPU 20, which is U, fetches a switch command (switch to the CPU 30), it generates a restart command to the CPU 30 and shifts to the idle state. The restart command accompanies the clock control command 23 to the clock select control circuit 202, executes the clock restart to the CPU 30 (cancels the stop (B)), and restarts the clock to the CPU 30 via the inter-CPU communication line 61. Immediately after the startup, an instruction is issued to exit the idle state and shift to the next processing step. When the clock is restarted, the CPU 30 first stops the clock via the clock select control circuit 203 to stop the clock on the CPU 20 side.
After activating p (A), the CPU exits the idle state and proceeds to the next processing step.
Uses the information of the CPU 20 copied to its own register and subsequently executes necessary processing, so that there is no inconsistency in the processing procedure and processing contents.
The same applies to the switching in the opposite direction from the CPU 30 to the CPU 20.

【0041】以上の様に、CPU間のスイッチ命令とC
PUへのクロック周波数切り換え命令とをリアルタイム
電力制御命令としてCPUの命令セットに組み込み、プ
ログラム中でそれらの命令を自由に使用できる様構成す
ることができる。それらリアルタイム電力制御命令の使
用法について以下に説明する。
As described above, the switch command between CPUs and C
A clock frequency switching command to the PU and a real-time power control command can be incorporated in a command set of the CPU so that the commands can be used freely in a program. The use of these real-time power control instructions is described below.

【0042】シーケンサ等の制御用コントローラにリア
ルタイム電力制御命令を使用する場合、図12に示した
様に、各タスクのサンプリングタイムの違いが優先順位
の違いに直接関係することが多い。すなわち、サンプリ
ングタイム(図中三角印で指示)の間隔が短いタスク
程、高応答な処理を要求される傾向が高く、優先順位が
高いタスクであると言える。従って、これらのタスク間
でタスクスイッチ(図中のa〜g)が発生する時、起動
されたタスクの先頭又は、タスクスイッチをサポートす
るOSの中で電力制御命令を実行し、結果的にその優先
順位に従って適切なCPU及びクロック周波数を選択す
る。例えば、最も優先順位の高いタスクTA1は高速C
PUコア20を選択してクロック周波数も最高のものを
選択する様にし、2番目の優先順位であるタスクTA2
は低速CPUコア30のクロック周波数最高の選択設定
に、最下位の優先順位であるタスク3は低速CPUコア
30のクロック周波数中程度の選択設定という様に、処
理タスクに応じてCPUコアとクロック周波数を選択す
る。この様にタスクの優先順位が下がるに従って消費電
力を少なくする選択モードに移行すると効果的である。
また、どのタスクも実行しないスリープモード又はウエ
イトモード(サスペンドモード)等のアイドルモード時
は、低速CPUコア30のクロック周波数最低の選択設
定にしておけば、無駄な消費電力を極力抑えることがで
き、さらに効果的である。
When a real-time power control instruction is used for a control controller such as a sequencer, the difference in the sampling time of each task is often directly related to the difference in the priority as shown in FIG. In other words, it can be said that a task with a shorter sampling time (indicated by a triangle in the figure) has a higher tendency to require high-response processing and is a task with a higher priority. Therefore, when a task switch (ag in the figure) occurs between these tasks, the power control command is executed at the head of the started task or in the OS supporting the task switch, and as a result, Select an appropriate CPU and clock frequency according to the priority. For example, the task TA1 with the highest priority is the fast C
The PU core 20 is selected to select the clock with the highest clock frequency.
The clock frequency of the low-speed CPU core 30 is set to the highest setting, and the task 3 having the lowest priority is set to the medium-speed clock frequency of the low-speed CPU core 30. Select As described above, it is effective to shift to the selection mode in which the power consumption is reduced as the task priority decreases.
In idle mode such as sleep mode or wait mode (suspend mode) in which no task is executed, wasteful power consumption can be minimized by setting the clock frequency of the low-speed CPU core 30 to the lowest setting. More effective.

【0043】図13は、マルチプロセッサ動作における
各CPUのタスク処理の一例であり、プロセッサ間同期
機構によって関連のあるタスク間で同期をとり、スケジ
ュールされた並列処理を進めている様子を示している。
SYNCm−nはCPUmとCPUnが同期する事を示
しており、idleは空き時間(アイドル時間)を、N
OPは何も処理しない状態(遊びタスク)を示してい
る。本図で、idleとNOPはタスクをプリスケジュ
ールする際に認知できるので、そこに電力制御命令を配
置し、適切な省電力モードに設定(例えば低速CPUコ
アのクロック周波数最低に設定)すれば効果的に省電力
化を図ることができる。
FIG. 13 shows an example of the task processing of each CPU in the multiprocessor operation, and shows a state in which related tasks are synchronized by the inter-processor synchronization mechanism and scheduled parallel processing is progressing. .
SYNCm-n indicates that CPUm and CPUn are synchronized, idle indicates idle time (idle time), and N
OP indicates a state in which nothing is processed (idle task). In this figure, idle and NOP can be recognized when pre-scheduling a task, so it is effective to place a power control instruction there and set an appropriate power saving mode (for example, set the clock frequency of the low-speed CPU core to the lowest). It is possible to achieve power saving.

【0044】次に、バッテリーシステムを用いて動作中
の処理装置、例えばノートパソコンにおけるパワーコン
トロール手段及び利用技術の一例を挙げる。 (1)動的に消費電力を調整するパワーコントロール手
段と、バッテリーの残量を検出するバッテリーモニタ手
段を有するバッテリ駆動型処理装置において、プロセッ
サシステムをバッテリで稼動させたい目標可動時間を設
定した時、バッテリの残量を参照しながら動的に消費電
力を調整することにより、目標可動時間を保証する。 (2)上記の(1)において、処理装置が処理するアプ
リケーションに対して処理負荷に応じて優先順位をつ
け、より負荷の軽い処理ほど消費電力を下げ(=処理速
度も下げ)て実行することより、高負荷アプリケーショ
ン実行中にオペレータに負荷を感じさせずに、消費電力
を調整する。 (3)(1)又は(2)において、スーパーバイザモー
ドとして処理装置のユーザーが直接処理の優先順位を選
択できる手段(外部ハードスイッチ又はソフトウェアス
イッチ等)を設け、選択した優先順位に対応した消費電
力に調整(パワーコントロール)する。この操作は動作
中にリアルタイムで実施しても良い。このような(1)
〜(3)の利用法で用いるパワーコントロール手段は、
前述したCPU切換え(高速/低速CPU切換え)とク
ロック周波数切換えとのコンビネーションによる電力制
御手段を用いると最も効果的である。
Next, an example of a power control means and a utilization technique in a processing device operating using a battery system, for example, a notebook personal computer will be described. (1) In a battery-driven processing apparatus having a power control means for dynamically adjusting power consumption and a battery monitoring means for detecting a remaining amount of a battery, when a target operating time at which a processor system is to be operated by a battery is set. The target operating time is guaranteed by dynamically adjusting the power consumption while referring to the remaining amount of the battery. (2) In the above (1), priorities are given to the applications processed by the processing device according to the processing load, and the lighter the processing, the lower the power consumption (= lower the processing speed) and the processing is executed. Thus, the power consumption is adjusted without causing the operator to feel a load during execution of a high-load application. (3) In (1) or (2), a means (such as an external hardware switch or a software switch) that allows the user of the processing device to directly select the priority of processing in the supervisor mode is provided, and power consumption corresponding to the selected priority is provided. (Power control). This operation may be performed in real time during operation. Such (1)
The power control means used in the methods (3) to (3)
It is most effective to use the power control means based on a combination of the above-described CPU switching (high-speed / low-speed CPU switching) and clock frequency switching.

【0045】次に、同様に本発明のパワーコントロール
手段を用い、処理装置(PC等)のCRT上のウインド
ウ画面にて消費電力設定を細かく行う方式での電力制御
(パワーセーブ)について一例を述べる。 (1)マルチタスクアプリケーションの優先度設定を行
うコントロールボタンを各ウインドウに設けるか、また
は各アプリケーション起動時に優先度の設定ウインドウ
を表示し、マウスにて優先度の設定を行う。消費電力設
定コントローラは、各アプリケーションの処理頻度のコ
ントロールや、全アプリケーションの優先状態、PCの
全体消費電力及び電源状態から最適なクロック周波数を
決定し、これによりユーザーの期待するPCのパフォー
マンスを効率よくCPUのパワーに割り当てることがで
き、かつ低消費電力化が図れる。 (2)PCの端末から離れる場合、消費電力設定ウィン
ドウ画面にて、離れる時間、バックグラウンド高速演算
が必要なアプリケーションの指定を行う。消費電力設定
コントローラは、ディスプレイなど必要の無いデバイス
の休止を即座に行い、利用者が戻るまでに行う演算量と
消費電力、電源状態の関係から最適なクロック周波数を
決定する。これによりユーザがアクセスしない間の期待
する処理を効率良く実行しかつ低消費電力化が図れる。
ここで端末から離れた事をセンスする仕掛けとしては、
入力デバイス(キーボード、マウス等)による検出、あ
るいは設定ウィンドウ画面において直接低消費電力モー
ドへの移行の設定を行う等の方法を用いる。 (3)使用しないデバイスの指定をウィンドウにて指定
し、休止状態とする。これによりユーザの利用状況に応
じて消費電力を低減できる。
Next, an example of power control (power save) in a method of finely setting power consumption on a window screen on a CRT of a processing apparatus (PC or the like) using the power control means of the present invention will be described. . (1) A control button for setting the priority of the multitask application is provided in each window, or a priority setting window is displayed when each application is started, and the priority is set with a mouse. The power consumption setting controller controls the processing frequency of each application, determines the optimum clock frequency from the priority state of all applications, the overall power consumption of the PC, and the power supply state, thereby efficiently improving the PC performance expected by the user. It can be assigned to the power of the CPU and low power consumption can be achieved. (2) When leaving the PC terminal, an application requiring a background high-speed operation is specified on the power consumption setting window screen. The power consumption setting controller immediately suspends unnecessary devices, such as a display, and determines an optimal clock frequency from the relationship between the amount of calculation performed until the user returns, power consumption, and the power supply state. As a result, it is possible to efficiently execute expected processing while the user does not access and to reduce power consumption.
Here, as a mechanism to sense that you are away from the terminal,
A method such as detection by an input device (keyboard, mouse, or the like) or setting of transition to the low power consumption mode directly on the setting window screen is used. (3) Specify a device not to be used in the window, and put the device in a sleep state. As a result, power consumption can be reduced according to the usage status of the user.

【0046】ここで、消費電力設定コントローラとは、
やはり前述した本発明の電力制御手段(CPU切換えと
クロック周波数切換えのコンビネーション)を操作する
前述の電力制御命令セットを用いて記述されたプログラ
ムモジュールである。なお高速コントロールが必要な場
合、このコントローラはファームウェア化されていても
良い。CPU以外のファームウェア実行システムが存在
する場合、前記電力制御命令セットは、外部からのビッ
ト線又は情報入出力手段等によってその実行システムか
ら直接命令実行の指示ができ、それに応答してCPU、
システム内の対応する電力制御命令を直ちに実行させる
外部命令指示手段を設けておく必要がある。ファームウ
ェア実行システムは、この外部命令指示手段を用いて必
要な電力制御のための手続きを実行する。
Here, the power consumption setting controller is
This is a program module described using the above-described power control instruction set for operating the above-described power control means (combination of CPU switching and clock frequency switching) of the present invention. If high-speed control is required, this controller may be implemented as firmware. When there is a firmware execution system other than the CPU, the power control instruction set can be directly instructed from the execution system by an external bit line or information input / output means or the like, and the CPU,
It is necessary to provide external command indicating means for immediately executing the corresponding power control command in the system. The firmware execution system executes a necessary power control procedure using the external command instruction means.

【0047】以上、利用技術について述べて来たが、こ
れらの手続きを記述するプログラムは、プリコンパイラ
で従来のプログラムに電力制御命令を条件にしたがって
挿入して自動生成し、システムにダウンロードしたり、
OSのドライバやシステムコールとして組込み、OSが
必要に応じて起動する仕掛けを用意したりする事でユー
ザーに直接負担をかけずに実現することができる。
The techniques used have been described above. Programs describing these procedures are automatically generated by inserting a power control instruction into a conventional program by a precompiler according to conditions, and downloaded to a system.
By embedding the driver as an OS driver or a system call and providing a mechanism for starting up the OS as needed, it can be realized without directly burdening the user.

【0048】また、図1に示した処理装置は、最も実現
し易い形態として2つのCPUを含む形を提示している
が、3つ以上のCPUを含む処理装置を構成することも
可能である。そのうち有効に動作しているのは1つのC
PUだけであり、そのCPUが動作中に変更したレジス
タの内容は、2つのCPUで構成する場合と同様、選択
されていない他のCPUのレジスタに実時間でコピー
し、コヒーレンシを保つことができる様にCPU間イン
ターフェースは構成され動作する。CPU間の切換え時
は、切換え命令中で切換わるべきCPUを指定すること
になる。命令が実行されると、指定されたCPUと現在
選択されているCPUとの間で本実施例中で説明した2
つのCPU間の切換え操作手続きが実施される。
Further, the processing device shown in FIG. 1 has a form including two CPUs as the easiest form to implement, but it is also possible to configure a processing device including three or more CPUs. . Among them, one C works effectively.
Only the PU, and the contents of the registers changed during the operation of the CPU can be copied in real time to the registers of the other CPUs not selected as in the case of the configuration with the two CPUs, and the coherency can be maintained. Thus, the interface between CPUs is configured and operates. When switching between CPUs, the CPU to be switched is specified in the switching command. When the instruction is executed, between the designated CPU and the currently selected CPU, the two described in the present embodiment are executed.
A switching operation procedure between the two CPUs is performed.

【0049】この様な複数のCPUを含む処理装置は、
フォールトトレラントシステムや異常時の代行処理付高
信頼性システム等に応用することも可能である。すなわ
ち、実行中の命令処理に異状を感知した場合(例えばパ
リティエラー等)、CPU間の切換え手段を用いて他の
CPUに切換え、命令を再処理し、誤動作を回避する等
の高信頼化動作が可能となる。なおこの場合、エラーが
発生した命令によるレジスタの変更を実施しないか、又
はいくつかの過去の処理ステップのレジスタ内容をCP
U内に保持しておき、再実行すべき時点の状態に選択さ
れたCPUのレジスタ内容を復帰させる手段を備える必
要がある。
A processing device including such a plurality of CPUs includes:
It can also be applied to a fault-tolerant system, a high-reliability system with proxy processing in the event of an abnormality, and the like. That is, when an abnormality is detected in the currently executed instruction processing (for example, a parity error or the like), switching to another CPU is performed using the switching means between the CPUs, and the instruction is reprocessed to avoid a malfunction. Becomes possible. In this case, the register is not changed by the instruction in which the error has occurred, or the register contents of some past processing steps are
It is necessary to provide a means for holding the data in the U and restoring the contents of the register of the selected CPU to the state at the time of re-execution.

【0050】[0050]

【発明の効果】本発明によれば、以下の効果が得られ
る。 (1)動的にかつきめ細かく高速に電力を制御すること
ができ、それによって処理装置の低消費電力化を図る効
果が得られる。 (2)低価格な1チップCPU化が可能な技術を提示し
ており、低消費電力化が必要な様々なアプリケーション
に高いコストパフォーマンスを確保しながら適用できる
効果が得られる。
According to the present invention, the following effects can be obtained. (1) The power can be dynamically, finely and quickly controlled, and the effect of reducing the power consumption of the processing device can be obtained. (2) The present invention proposes a technology capable of implementing a low-cost one-chip CPU, and has an effect of being applicable to various applications requiring low power consumption while securing high cost performance.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明になる低消費電力処理装置の構成例を示
すブロック図である。
FIG. 1 is a block diagram illustrating a configuration example of a low power consumption processing device according to the present invention.

【図2】クロック切換制御回路の構成例である。FIG. 2 is a configuration example of a clock switching control circuit.

【図3】図2のクロック切換制御回路の動作を示すタイ
ムチャートである。
FIG. 3 is a time chart illustrating an operation of the clock switching control circuit of FIG. 2;

【図4】図2の回路の変形例である。FIG. 4 is a modification of the circuit of FIG. 2;

【図5】マルチプレクサの構成例である。FIG. 5 is a configuration example of a multiplexer.

【図6】クロック切換回路の例である。FIG. 6 is an example of a clock switching circuit.

【図7】クロック切換回路の別の例である。FIG. 7 is another example of the clock switching circuit.

【図8】多数クロックの切換回路の例である。FIG. 8 is an example of a multi-clock switching circuit.

【図9】多数のクロック周波数切換回路の例である。FIG. 9 is an example of a number of clock frequency switching circuits.

【図10】CPU切換制御の結線例である。FIG. 10 is a connection example of CPU switching control.

【図11】図10の動作説明図である。FIG. 11 is an operation explanatory diagram of FIG. 10;

【図12】シーケンサシステムなどのタスクスイッチン
グ、サンプリングタイム及び優先順位の例を示す図であ
る。
FIG. 12 is a diagram illustrating an example of task switching, sampling time, and priority of a sequencer system or the like.

【図13】マルチプロセッサ動作に於ける各CPUのタ
スク処理例を示す図である。
FIG. 13 is a diagram illustrating a task processing example of each CPU in a multiprocessor operation.

【符号の説明】[Explanation of symbols]

10、70 クロック周波数切換回路 12 PLLクロックドライバ 13 クロック切換制御回路 14 クロック切換マルチプレクサ 20 高速CPUコア 21、31 CPU間I.F.回路 22、32 レジスタファイル 23 バス制御手段 30 低速CPUコア 40、50 キャッシュメモリシステム 41、51 キャッシュ間I.F. 60 バススイッチインターフェース 61 CPU間通信ライン 90 外部リソース 101、102 多入力NANDゲート 106、107 同期化処理用フリップフロップ 113 ラッチ用RSフリップフロップ 114 EXORゲート 10, 70 Clock frequency switching circuit 12 PLL clock driver 13 Clock switching control circuit 14 Clock switching multiplexer 20 High-speed CPU core 21, 31 Inter-CPU IF circuit 22, 32 Register file 23 Bus control means 30 Low-speed CPU core 40, 50 Cache memory system 41, 51 Inter-cache IF 60 Bus switch interface 61 Communication line between CPUs 90 External resources 101, 102 Multi-input NAND gate 106, 107 Synchronization processing flip-flop 113 Latching RS flip-flop 114 EXOR gate

───────────────────────────────────────────────────── フロントページの続き (72)発明者 山本 健次郎 茨城県土浦市神立町502番地 株式会社日 立製作所機械研究所内 (72)発明者 小山 昌宏 茨城県土浦市神立町502番地 株式会社日 立製作所機械研究所内 (72)発明者 桃井 康行 茨城県土浦市神立町502番地 株式会社日 立製作所機械研究所内 (72)発明者 船津 輝宣 茨城県土浦市神立町502番地 株式会社日 立製作所機械研究所内 (72)発明者 池 勝久 茨城県土浦市神立町502番地 株式会社日 立製作所機械研究所内 Fターム(参考) 5B079 AA06 BA02 BB01 BC01  ──────────────────────────────────────────────────の Continuing on the front page (72) Inventor Kenjiro Yamamoto 502 Kandachi-cho, Tsuchiura-shi, Ibaraki Pref. Machinery Research Laboratory, Inc. Inside the Machinery Research Laboratory (72) Inventor Yasuyuki Momoi 502 Kandachicho, Tsuchiura-shi, Ibaraki Pref.Mechanical Research Laboratories, Hitachi Ltd. (72) Inventor Katsuhisa Ike 502 Kandate-cho, Tsuchiura-shi, Ibaraki F-term in Machine Research Laboratory, Hitachi, Ltd. 5B079 AA06 BA02 BB01 BC01

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 与えられた基準クロックに同期しかつ互
いに異なる周波数を持つ複数のクロックを生成するPL
Lクロックドライバと、 このPLLクロックドライバにより生成されたクロック
の内の1つを入力された切換信号に応じて選択し、切換
後クロックとして出力するクロック切換マルチプレクサ
と、 このクロック切換マルチプレクサにより切り換えの前に
選択されていた切換前クロックと前記切換後クロックが
同じ信号レベルにありかつ前記基準クロックに同期した
タイミングで与えられたクロック切換用セレクタ信号に
応じた信号を生成し、この信号を前記クロック切換マル
チプレクサへの前記切換信号として出力するクロック切
換手段と、 前記クロック切換マルチプレクサより出力されるクロッ
ク出力に応答して動作するCPUと、 を備えたことを特徴とする低消費電力処理装置。
1. A PL that generates a plurality of clocks synchronized with a given reference clock and having different frequencies from each other
An L clock driver, a clock switching multiplexer for selecting one of the clocks generated by the PLL clock driver in accordance with the input switching signal, and outputting the selected clock as a clock after the switching; The clock before switching and the clock after switching are selected at the same signal level and generate a signal corresponding to a clock switching selector signal provided at a timing synchronized with the reference clock, and this signal is switched to the clock switching. A low power consumption processing device comprising: a clock switching unit that outputs the switching signal to a multiplexer; and a CPU that operates in response to a clock output output from the clock switching multiplexer.
【請求項2】 請求項1記載の低消費電力処理装置にお
いて、前記クロック切換手段は、 基準クロックに同期したクロックによって前記セレクタ
信号を同期化する同期用フリップフロップと、 このフリップフロップによって同期化されたセレクタ信
号がアクティブになっておりかつ前記切換前クロックと
切換後クロックが同じレベルに変化したタイミングでそ
の状態がセットされ、前記セレクタ信号が非アクティブ
になっており、かつ前記切換前クロックと切換後クロッ
クが同レベルに変化したタイミングでその状態がリセッ
トされる選択用フリップフロップとを備え、この選択用
フリップフロップの出力を前記切換信号として送出する
ことを特徴とする低消費電力処理装置。
2. The low power consumption processing device according to claim 1, wherein the clock switching means is synchronized with a synchronizing flip-flop for synchronizing the selector signal with a clock synchronized with a reference clock, and is synchronized with the flip-flop. The selector signal is active, and the state is set at the timing when the pre-switching clock and the post-switching clock have changed to the same level, the selector signal is inactive, and the switching is performed with the pre-switching clock. A low-power consumption processing device, comprising: a selection flip-flop whose state is reset at a timing when the subsequent clock changes to the same level; and transmitting an output of the selection flip-flop as the switching signal.
【請求項3】 請求項1の低消費電力処理装置を第1処
理装置として備えるとともに、 前記第1処理装置に含まれるCPUよりも低消費電力の
CPUを含む第2処理装置と、 第1の処理装置及び第2の処理装置内の各CPUのレジ
スタファイル間の情報を同一に保つためのCPU間イン
ターフェース手段と、 第1処理装置のCPUに接続する第1キャッシュメモリ
システムと、 この第1キャッシュメモリシステムを制御する第1キャ
ッシュメモリ制御手段と、 第1処理装置のCPUと第1キャッシュメモリシステム
を介して入出力されるバス制御手段を含む第1バス手段
と、 第2処理装置のCPUからのバス制御手段を含む第2バ
ス手段と、 第1バス手段と第2バス手段を第1処理装置及び第2処
理装置からの前記バス制御手段に応答して切り換え、外
部のリソースに適合したタイミングで外部バス及び外部
制御信号を入出力するバススイッチインターフェース手
段と、 第1処理装置の動作と第2処理装置のいずれか一方を選
択して動作させ、選択されなかった処理装置内のCPU
を停止させるか又はアイドル状態に保つモード切換手段
と、 を具備したことを特徴とする低消費電力処理装置。
3. A second processing device comprising the low power consumption processing device of claim 1 as a first processing device, a second processing device including a CPU having lower power consumption than a CPU included in the first processing device, An inter-CPU interface means for maintaining the same information between register files of the CPUs in the processing device and the second processing device; a first cache memory system connected to the CPU of the first processing device; A first cache memory control unit for controlling the memory system; a first bus unit including a CPU of the first processing device and a bus control unit input / output via the first cache memory system; and a CPU of the second processing device. A second bus means including a bus control means, and a first bus means and a second bus means responsive to the bus control means from the first processing device and the second processing device. Switching, bus switch interface means for inputting / outputting an external bus and an external control signal at a timing suitable for an external resource; and selecting and operating one of the operation of the first processing device and the second processing device. CPU in the processing unit that did not exist
And a mode switching means for stopping or keeping an idle state.
【請求項4】 請求項3記載の低消費電力処理装置にお
いて、前記モード切換手段は、前記第1及び第2処理装
置に組み込まれており、第1又は第2処理装置の動作中
の一方の処理装置から他方の処理装置へ動作を移行する
ときは、動作中の処理装置のモード切換手段は他方の処
理装置の停止又はアイドル状態を解除して当該処理装置
はアイドル状態に移行するように制御し、これによって
起動した前記他方の処理装置のモード切換手段はそれま
で動作中であった処理装置へのクロック供給を停止する
ように制御して当該他方の処理装置はそれまで動作中で
あった処理装置の状態を引き継いで動作するように制御
することを特徴とする低消費電力処理装置。
4. The low power consumption processing device according to claim 3, wherein the mode switching means is incorporated in the first and second processing devices, and one of the first and second processing devices during operation. When the operation is shifted from the processing device to the other processing device, the mode switching means of the operating processing device controls the other processing device to stop or to release the idle state and to control the processing device to shift to the idle state. Then, the mode switching means of the other processing device activated by this controls the clock supply to the processing device that was operating so far, and the other processing device was operating so far. A low-power-consumption processing device that controls to operate by taking over the state of the processing device.
【請求項5】 請求項3記載の低消費電力処理装置にお
いて、動作中の処理装置が自身のレジスタファイルを書
き換えた時、その書き換え結果と一致するように停止中
の処理装置のレジスタファイルも前記CPU間インター
フェースを介して書き換えておくようにしたことを特徴
する低消費電力処理装置。
5. The low power consumption processing device according to claim 3, wherein, when the operating processing device rewrites its own register file, the register file of the stopped processing device is also matched with the rewriting result. A low power consumption processing device characterized by rewriting via an interface between CPUs.
【請求項6】 請求項1又は2に記載の低消費電力処理
装置において、前記CPUは、前記クロック切換用セレ
クタ信号を発行してクロック周波数をダイナミックに切
換えるクロック切換命令を具備したことを特徴とする低
消費電力処理装置。
6. The low power consumption processing device according to claim 1, wherein the CPU has a clock switching command for issuing the clock switching selector signal to dynamically switch a clock frequency. Low power consumption processing device.
【請求項7】 請求項3ないし5の内の1つに記載の低
消費電力処理装置において、前記第1及び第2処理装置
のCPUは、前記クロック切換用セレクタ信号を発行し
てクロック周波数をダイナミックに切換えるクロック切
換命令と、前記モード切換手段により処理装置をダイナ
ミックに切換えるCPU切換命令の少なくとも一方を具
備したことを特徴とする低消費電力処理装置。
7. The low power consumption processing device according to claim 3, wherein the CPUs of the first and second processing devices issue the clock switching selector signal to change the clock frequency. A low power consumption processing device comprising at least one of a clock switching command for dynamically switching and a CPU switching command for dynamically switching a processing device by the mode switching means.
JP2000009303A 2000-01-18 2000-01-18 Low power consumption processor Pending JP2001202155A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000009303A JP2001202155A (en) 2000-01-18 2000-01-18 Low power consumption processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000009303A JP2001202155A (en) 2000-01-18 2000-01-18 Low power consumption processor

Publications (1)

Publication Number Publication Date
JP2001202155A true JP2001202155A (en) 2001-07-27

Family

ID=18537473

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000009303A Pending JP2001202155A (en) 2000-01-18 2000-01-18 Low power consumption processor

Country Status (1)

Country Link
JP (1) JP2001202155A (en)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6895519B2 (en) 2002-02-25 2005-05-17 Oki Electric Industry Co., Ltd. System LSI
JP2005332386A (en) * 2004-04-28 2005-12-02 Microsoft Corp Task-oriented processing as auxiliary computing environment to primary computing environment
US7039826B2 (en) 2002-04-26 2006-05-02 Seiko Epson Corporation Circuit for controlling the clock supplied to a state controller in a data transfer control device according to states of first and second devices
CN1315018C (en) * 2002-08-15 2007-05-09 联发科技股份有限公司 Clock pulse switchover structure and its clock pulse switchover method
CN1324815C (en) * 2003-06-06 2007-07-04 华为技术有限公司 Signal phase tracking network
JP2007257251A (en) * 2006-03-23 2007-10-04 Nec Corp Information-processing device, method for verifying processor operational clock frequency, and program for verifying processor operational clock frequency
US7281152B2 (en) 2003-03-27 2007-10-09 Kabushiki Kaisha Toshiba Processor, control device for a processor, clock frequency determining method and source voltage controlling method of a processor
JP2009123215A (en) * 2007-11-15 2009-06-04 Intel Corp Method, apparatus, and system for optimizing frequency and performance in multi-die microprocessor
US7571342B2 (en) 2004-06-16 2009-08-04 Panasonic Corporation Processor system, instruction sequence optimization device, and instruction sequence optimization program
US7759990B2 (en) 2006-05-23 2010-07-20 Nec Electronics Corporation Clock switching circuit
JP2010225057A (en) * 2009-03-25 2010-10-07 Seiko Epson Corp Clock switching circuit, integrated circuit device, and electronic device
JP2012142019A (en) * 2006-09-28 2012-07-26 Intel Corp Voltage regulator with drive override
KR101345286B1 (en) 2007-04-17 2013-12-27 삼성전자주식회사 Apparatus and method for controlling high speed booting
US8769316B2 (en) 2011-09-06 2014-07-01 Intel Corporation Dynamically allocating a power budget over multiple domains of a processor
CN113948134A (en) * 2020-07-17 2022-01-18 华邦电子股份有限公司 Storage device and input/output buffer control method thereof

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6895519B2 (en) 2002-02-25 2005-05-17 Oki Electric Industry Co., Ltd. System LSI
US7039826B2 (en) 2002-04-26 2006-05-02 Seiko Epson Corporation Circuit for controlling the clock supplied to a state controller in a data transfer control device according to states of first and second devices
CN1315018C (en) * 2002-08-15 2007-05-09 联发科技股份有限公司 Clock pulse switchover structure and its clock pulse switchover method
US7281152B2 (en) 2003-03-27 2007-10-09 Kabushiki Kaisha Toshiba Processor, control device for a processor, clock frequency determining method and source voltage controlling method of a processor
US7644297B2 (en) 2003-03-27 2010-01-05 Kabushiki Kaisha Toshiba Processor, control device for a processor, clock frequency determining method and source voltage controlling method of a processor
US7644298B2 (en) 2003-03-27 2010-01-05 Kabushiki Kaisha Toshiba Processor, control device for a processor, clock frequency determining method and source voltage controlling method of a processor
CN1324815C (en) * 2003-06-06 2007-07-04 华为技术有限公司 Signal phase tracking network
JP2005332386A (en) * 2004-04-28 2005-12-02 Microsoft Corp Task-oriented processing as auxiliary computing environment to primary computing environment
US7571342B2 (en) 2004-06-16 2009-08-04 Panasonic Corporation Processor system, instruction sequence optimization device, and instruction sequence optimization program
JP2007257251A (en) * 2006-03-23 2007-10-04 Nec Corp Information-processing device, method for verifying processor operational clock frequency, and program for verifying processor operational clock frequency
US7759990B2 (en) 2006-05-23 2010-07-20 Nec Electronics Corporation Clock switching circuit
JP2012142019A (en) * 2006-09-28 2012-07-26 Intel Corp Voltage regulator with drive override
US8930741B2 (en) 2006-09-28 2015-01-06 Intel Corporation Voltage regulator with drive override
KR101345286B1 (en) 2007-04-17 2013-12-27 삼성전자주식회사 Apparatus and method for controlling high speed booting
US8032772B2 (en) 2007-11-15 2011-10-04 Intel Corporation Method, apparatus, and system for optimizing frequency and performance in a multi-die microprocessor
JP4702722B2 (en) * 2007-11-15 2011-06-15 インテル・コーポレーション Method, apparatus and system for optimizing frequency and performance in a multi-die microprocessor
US8356197B2 (en) 2007-11-15 2013-01-15 Intel Corporation Method, apparatus, and system for optimizing frequency and performance in a multidie microprocessor
US8560871B2 (en) 2007-11-15 2013-10-15 Intel Corporation Method, apparatus, and system for optimizing frequency and performance in a multidie microprocessor
US8769323B2 (en) 2007-11-15 2014-07-01 Intel Corporation Method, apparatus, and system for optimizing frequency and performance in a multidie microprocessor
US8806248B2 (en) 2007-11-15 2014-08-12 Intel Corporation Method, apparatus, and system for optimizing frequency and performance in a multidie microprocessor
JP2009123215A (en) * 2007-11-15 2009-06-04 Intel Corp Method, apparatus, and system for optimizing frequency and performance in multi-die microprocessor
JP2010225057A (en) * 2009-03-25 2010-10-07 Seiko Epson Corp Clock switching circuit, integrated circuit device, and electronic device
US8769316B2 (en) 2011-09-06 2014-07-01 Intel Corporation Dynamically allocating a power budget over multiple domains of a processor
US8775833B2 (en) 2011-09-06 2014-07-08 Intel Corporation Dynamically allocating a power budget over multiple domains of a processor
US9081557B2 (en) 2011-09-06 2015-07-14 Intel Corporation Dynamically allocating a power budget over multiple domains of a processor
CN113948134A (en) * 2020-07-17 2022-01-18 华邦电子股份有限公司 Storage device and input/output buffer control method thereof

Similar Documents

Publication Publication Date Title
JP2762670B2 (en) Data processing device
US6978389B2 (en) Variable clocking in an embedded symmetric multiprocessor system
JP6092649B2 (en) Arithmetic unit, array type arithmetic unit, control method therefor, and information processing system
JP2001202155A (en) Low power consumption processor
US8341436B2 (en) Method and system for power-state transition controllers
US8825924B2 (en) Asynchronous computer communication
JP2002215597A (en) Multiprocessor device
JP5610566B2 (en) Semiconductor device and data processing system
US9164570B2 (en) Dynamic re-configuration for low power in a data processor
CN110573991A (en) architectural state retention
JP3705022B2 (en) Low power microprocessor and microprocessor system
JPH04236682A (en) Microcomputer system
JP3460736B2 (en) Clock control circuit
EP3979072B1 (en) Firmware boot task distribution to enable low latency boot performance
JP2008059300A (en) Microcomputer
US7120915B1 (en) Thread switch circuit design and signal encoding for vertical threading
JPH11202968A (en) Microcomputer
Glaser et al. Hardware-accelerated energy-efficient synchronization and communication for ultra-low-power tightly coupled clusters
US6993674B2 (en) System LSI architecture and method for controlling the clock of a data processing system through the use of instructions
JP2001092661A (en) Data processor
JP2010140319A (en) Semiconductor device
Liu et al. A Dynamic Reconfiguration Scheme for Embedded System Based on Multi-core DSP
JP3906865B2 (en) Low power microprocessor and microprocessor system
EP4160358A2 (en) System on chip and application processor
KR100946561B1 (en) Autonomous multi-microcontroller system and the control method thereof