JP2002189591A - プロセッサ - Google Patents

プロセッサ

Info

Publication number
JP2002189591A
JP2002189591A JP2000388832A JP2000388832A JP2002189591A JP 2002189591 A JP2002189591 A JP 2002189591A JP 2000388832 A JP2000388832 A JP 2000388832A JP 2000388832 A JP2000388832 A JP 2000388832A JP 2002189591 A JP2002189591 A JP 2002189591A
Authority
JP
Japan
Prior art keywords
instruction
load
memory access
access
clocks
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2000388832A
Other languages
English (en)
Other versions
JP3697393B2 (ja
Inventor
Hiroyuki Takano
野 裕 之 高
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2000388832A priority Critical patent/JP3697393B2/ja
Publication of JP2002189591A publication Critical patent/JP2002189591A/ja
Application granted granted Critical
Publication of JP3697393B2 publication Critical patent/JP3697393B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Power Sources (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)
  • Microcomputers (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【課題】 性能を低下させずに消費電力を低減できるプ
ロセッサを提供する。 【解決手段】 本発明のプロセッサは、ロード/ストア
命令と、このロード/ストア命令によりロード/ストア
されたデータにアクセスする後続命令との間のクロック
数を計測するロード/ストア遅延量計測部21と、ロー
ド/ストア遅延量計測部21で計測されたクロック数に
基づいて、内蔵メモリ11に供給する電源電圧やしきい
値電圧の電圧レベルを可変制御するアクセス速度可変制
御部22とを有する。ロード命令等のメモリアクセス命
令のアクセス先に後続命令がアクセスする場合に、両命
令間のクロック数に応じて、内蔵メモリ11に供給する
電源電圧やしきい値電圧を制御するため、命令列の実行
に支障がない範囲でメモリアクセス命令の実行時間を制
御でき、プロセッサの処理速度を落とさずに消費電力の
低減を図ることができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プロセッサの低消
費電力化に関し、特に、プロセッサが記憶装置にアクセ
スする際の消費電力を低減する技術に関する。
【0002】
【従来の技術】マイクロプロセッサの動作周波数は年々
高くなる傾向にあり、また、バッテリで駆動する携帯電
子機器が急速な勢いで普及していることから、LSIの
低消費電力化が重要視されつつある。
【0003】近年、マイクロプロセッサやその周辺回路
とメモリとを混載したLSIの開発が盛んに行われてい
るが、メモリ混載型のLSIはメモリなしのLSIより
も消費電力が大きくなる傾向にある。
【0004】ちなみに、LSIの消費電力Pは、P=a*C*
V*V*n*f+Psと表すことができる。ここで、aはLSIの
稼働率、CはLSIの容量、Vは電圧、nは素子数、f
は動作周波数、Psは待機時の消費電力である。
【0005】メモリの消費電力を抑える手法として、
(a)デバイスやプロセスに依存する方法、(b)メモ
リ内の基本部品に依存する方法(例えば、センスアンプ
の構成やセルアレイの構成を工夫するなど)、(c)メ
モリの外側からの制御による方法などが考えられる。
【0006】特に、(c)の方法は、具体的には以下の
ようなものである。 (c-1)単体のメモリとして使用するときのみ電力を消費
するようにする。(c-2)機能的には一つでも、複数のメ
モリに分割し、使用するメモリのみで電力を消費するよ
うにする。(c-3)消費電力の使用量の異なる複数のメモ
リを使用して使い分ける。(c-4)プロセッサから見える
メモリのアドレスをグレイコード化するなどして、アド
レス線から信号が伝搬する素子の充放電を小さくする。
(c-5)メモリに与えるデータが、ある値の付近で小さく
振れる場合には、そのデータからの変化分をグレイコー
ドとして扱い、データ線から信号が伝搬する素子の充放
電を小さくする。(c-6)DRAMの場合には、リフレッシュ
に関する制御をコントロールする。
【0007】上述した(c-1)〜(c-6)の方法は主に、メモ
リの実効稼働率aに関する低消費電力化手法である。
【0008】また、メモリには限らないが、上述した
(c)と同様の上位アーキテクチャレベルの低消費電力
化手法として、以下のようなものがある。
【0009】(d)LSI内部の各部で処理に必要十分
な周波数で動作させる。ただし、原則として、その周波
数は各部で固定する。
【0010】(e)通常の動作モードの他に、消費電力
を全体的に低減する低消費電力動作モードなどを設け、
低消費電力動作モードの定義に従って、LSI内部の一
部あるいは全部の動作周波数を下げたり、クロックを停
止したりする。
【0011】(f)通常の動作モードの他に、低消費電
力動作モードなどを設けて、電源電圧やしきい値電圧を
下げる。
【0012】(g)動作させる必要のないフリップフロ
ップにはクロックを供給しない。
【0013】一方、メモリからのデータのロードに関す
るパイプライン制御の手法として、ノンブロッキング制
御と呼ばれる手法がある。
【0014】例えば、図9のような命令フェッチステー
ジ(Fstage)、デコード/レジスタ読み出しステージ
(Dstage)、メモリアクセス/演算ステージ(Estag
e)、レジスタ書き込みステージ(Wstage)という四段
にパイプライン構成されたプロセッサについて考える。
【0015】図9のプロセッサは、命令フェッチ装置1
と、命令メモリ2と、命令レジスタ3と、デコーダ4
と、レジスタ5と、セレクタ6と、パイプラインレジス
タ7と、演算器8と、ロード/ストア制御装置9と、内
蔵メモリ11とを有する。
【0016】ロード命令(load Rs,(Rt))は、Fstageで
命令メモリ2から読み出した命令レジスタ3内の命令
を、Dstageでデコーダ4でデコードし、Estageでロード
/ストア制御装置9を介して、内蔵メモリ11や外部メ
モリ14にアクセスしてデータを読み出し、Wstageでデ
ータをレジスタ番号Rsで示される読み出しレジスタ5に
書き込む。
【0017】また、ストア命令(store Rs, (Rt))は、F
stageで命令を読み出し、DstageでレジスタRtからアド
レスを、Rsからデータを読み出し、Estageで内蔵メモリ
11のアドレスにアクセスしてデータを書き込み、Wsta
geでは何もしない。
【0018】この他、加算命令(add Rs,Rt)は、Fstage
で命令を読み出し、DstageでレジスタRs,Rtの値を読み
出し、EstageでRs,Rtから読み出したデータを演算器8
で加算し、Wstageで読み出しレジスタ5に加算結果を書
き込む。また、他の減算命令(sub Rs,Rt)、OR命令
(or Rs,Rt)、AND命令(and Rs,Rt)も、加算命令と
同様に動作する。
【0019】レジスタ番号Rs,Rtは、例えば、R0〜R31
の値を取るものとする。また、これらの動作は、デコー
ダ4によりデコードされた制御信号により制御されてい
る。
【0020】図10(a)はプロセッサが実行する命令
列の一例を示す図であり、ロード命令がデータをロード
したレジスタR1を、後続のadd命令が参照する例を示
している。図10(a)の例では、ロード命令とadd
命令との間に3命令が存在する。
【0021】本明細書では、ロード命令でロードすべき
データを、Estageでロードできた場合は、そのデータを
ロード命令の直後の命令で使用できるように、データの
バイパス回路が組み込まれているものとする。図10
(a)の例では、ロード命令でロードしたデータをsu
b命令で使用可能である。
【0022】ここで、もし、ロードすべきデータが内蔵
メモリ11内になくてキャッシュミスを起こした場合
や、ロード対象が外部メモリ14の場合は、図10
(b)のようにロード命令のEstageおよびそれ以降の命
令をストールさせて、有効なデータがロードされるまで
待機する方法と、図10(c)に示すようにロードした
データを必要とする命令がDstageに達してから初めてス
トールさせる方法がある。
【0023】この場合、データを必要とする命令がDsta
geに達する以前は、ロード/ストア制御装置9による制
御機構とプロセッサのパイプライン機構は別個に動作し
ている。その結果、図10(d)に示すようにストール
せずに済む場合もある。なお、図10(b)〜図10
(d)は、ロードに要するクロック数が6クロックの例
を示している。
【0024】図10(c)や図10(d)のように動作
させる制御手法をロードのノンブロッキング制御とい
う。本発明では、ロード命令とそのロードデータを使用
する命令との間のクロック数、すなわちノンブロッキン
グ動作可能な命令数をロード遅延数と呼ぶ。例えば、図
10(d)のロード遅延数は5である。
【0025】ノンブロッキング制御方法は簡単であり、
Estageのロード命令でロードされる先のレジスタ番号
と、Dstageの後続命令で参照されるレジスタの番号が一
致し、かつEstageでまだ有効なデータがロードされてい
ない場合に、このDstageをストールさせるようにすれば
よい。
【0026】図9は上述したノンブロッキング制御機能
を備えた従来のプロセッサのブロック構成を示してい
る。図9のプロセッサは、ノンブロッキング制御を行う
ノンブロッキング制御部12をロード/ストア制御装置
9内に設けている。
【0027】上述したノンブロッキング制御では、先行
するロード命令でロードされるべきデータが後続命令の
Estageでまだロードされていない場合のみ、パイプライ
ン処理をストールさせるため、ストールの頻度が少なく
なってプロセッサの性能向上が図れる。
【0028】
【発明が解決しようとする課題】しかしながら、最近の
プロセッサは、高速のクロックで動作するため、1サイ
クルの時間が短く、ノンブロッキング制御を行っても、
ストールの頻度を減らせないおそれがある。また、プロ
セッサの動作周波数が高くなるほど、消費電力が増える
という問題もある。
【0029】本発明は、このような点に鑑みてなされた
ものであり、その目的は、性能を低下させることなく、
消費電力を低減できるプロセッサを提供することにあ
る。
【0030】
【課題を解決するための手段】上述した課題を解決する
ために、本発明は、記憶装置にアクセスしてデータの読
み出しあるいは書き込みを行うメモリアクセス命令と、
該メモリアクセス命令の後に発行され該メモリアクセス
命令により読み出しまたは書き込まれたデータにアクセ
スする命令と、の間のクロック数を検出するクロック数
検出手段と、前記クロック数検出手段で検出されたクロ
ック数に基づいて、該メモリアクセス命令で前記記憶装
置をアクセスするのに要する時間を調整するアクセス時
間調整手段と、を備える。
【0031】本発明では、メモリアクセス命令と、この
メモリアクセス命令の後に発行されこのメモリアクセス
命令により読み出しまたは書き込まれたデータにアクセ
スする命令と、の間のクロック数に基づいて、このメモ
リアクセス命令で記憶装置をアクセスするのに要する時
間を調整するようにしたため、必要以上に高速に記憶装
置にアクセスしなくなり、消費電力を低減できる。
【0032】メモリアクセス命令の中には、ロード命令
やストア命令などが含まれる。
【0033】メモリアクセス命令と後続命令との間のク
ロック数を計測するには、例えば、メモリアクセス命令
のオペランドを参照する手法や、命令列を一時的に格納
する命令バッファを用いてクロック数を計測する手法が
ある。
【0034】
【発明の実施の形態】以下、本発明に係るプロセッサに
ついて、図面を参照しながら具体的に説明する。
【0035】(第1の実施形態)図1は本発明に係るプ
ロセッサの内部構成を示す第1の実施形態のブロック図
である。図1のプロセッサは、図9に示す従来のプロセ
ッサと同様に、実行すべき命令をフェッチする命令フェ
ッチ装置1と、フェッチした命令を格納する命令メモリ
2と、命令メモリ2から読み出した命令を一時的に格納
する命令レジスタ3と、命令レジスタ3から取り出した
命令をデコードするデコーダ4と、命令の実行に用いら
れるオペランドの情報を格納するレジスタ5と、命令の
バイパス制御を行うセレクタ6と、システムクロックに
同期化させるパイプラインレジスタ7と、演算命令を実
行する演算器8と、ロード/ストア命令の実行を制御す
るロード/ストア制御装置9と、高速でアクセス可能な
内蔵メモリ11とを有する。
【0036】ロード/ストア制御装置9には、上述した
ノンブロッキング制御を行うノンブロッキング制御部1
2が内蔵されている。
【0037】図1の演算器8で演算されたデータは、セ
レクタ6とパイプラインレジスタ7を介して演算器8ま
たはロード/ストア制御装置9に入力される。演算器8
での演算結果、あるいはロード/ストア制御装置9での
ロード/ストア処理結果は、セレクタ6とパイプライン
レジスタ7を介してレジスタ5に書き戻される。
【0038】また、図1のプロセッサは、バス13を介
して外部メモリ14とアクセス可能であり、外部メモリ
14から読み出したデータは内蔵メモリ11に格納され
る。これにより、以後、同一アドレスにアクセスする際
に外部メモリ14にアクセスしなくて済むため、メモリ
アクセスの高速化が可能になる。
【0039】図1のプロセッサは、内蔵メモリ11のア
クセス速度を可変制御できるようにした点に特徴があ
る。具体的には、ロード/ストア遅延量計測部(クロッ
ク数計測手段)21と、アクセス速度可変制御部(アク
セス時間調整手段)22とを有する点に特徴がある。
【0040】ロード/ストア遅延量計測部21は、ロー
ド/ストア命令と、このロード/ストア命令によりロー
ド/ストアされたデータにアクセスする後続命令との間
のクロック数を計測する。
【0041】アクセス速度可変制御部22は、ロード/
ストア遅延量計測部21で計測されたクロック数に基づ
いて、内蔵メモリ11に供給する電源電圧やしきい値電
圧の電圧レベルを可変制御する。
【0042】図2は命令列の具体例であり、以下、この
例に基づいて本実施形態の動作を説明する。図2の命令
列の場合、命令列の並びだけから、ロード命令とこのロ
ード命令でロードするデータを使用する後続命令との間
の命令数、すなわちロード遅延数を判定できる。図2の
例の場合、ロード遅延数は3である。なお、図2のロー
ド命令のオペランドである(R2)には、直前で即値が代入
されているなどして、命令列だけから、アドレスが内蔵
メモリ11へのアクセスであると分かっているものとす
る。
【0043】ロード命令がデータをロードしたレジスタ
R1を使用する後続命令は、4命令後のadd命令であ
る。このadd命令が実際にレジスタ番号R1を参照す
るのは、Dstageである。すなわち、ロード命令がレジス
タR1にデータをロードしてから4クロック後にadd
命令はレジスタR1を参照する。したがって、ロード命
令は、4クロックかけてレジスタR1にデータをロード
しても、後続命令の実行に支障は起きない。
【0044】そこで、本実施形態は、図3に示すよう
に、内蔵メモリ11へのアクセス速度を遅くして、ロー
ド命令が4クロックかけてデータをロードするようにし
ている。図中の”e”は、”E”に比べて内蔵メモリ1
1がゆっくり動作することを模式的に示している。
【0045】図3のように、ロード命令をゆっくり実行
しても、後続のadd命令がレジスタR1を参照する時
点ではレジスタR1には所望のデータがロードされてい
るため、実質的な影響はない。
【0046】ロード命令をゆっくり実行するための具体
的な手法として、本実施形態は、アクセス速度可変制御
部22により、内蔵メモリ11に供給する電源電圧やし
きい値電圧の電圧レベルを低くする。これにより、内蔵
メモリ11を構成するトランジスタの動作が遅くなり、
内蔵メモリ11へのアクセス速度も低下する。
【0047】なお、電圧レベルを変更する以外の手法で
ロード命令をゆっくり実行させてもよく、例えば、内蔵
メモリ11に供給するクロックの周波数を遅くしてもよ
い。
【0048】図4は内蔵メモリ11へのアクセスタイミ
ングを示すタイミング図であり、図4(a)は通常の電
源電圧を内蔵メモリ11に供給した場合、図4(b)は
内蔵メモリ11に供給する電源電圧を下げた場合を示し
ている。
【0049】図4からわかるように、電源電圧を下げる
と、内蔵メモリ11からデータが読み出されるまでにか
なりの時間がかかる。したがって、内蔵メモリ11から
データが読み出されるタイミングに合わせて、内蔵メモ
リ11に制御クロックを供給することで、通常の電源電
圧供給時と同様に、内蔵メモリ11の読み書きを正常に
行うことができる。
【0050】本実施形態では、コンパイラやプログラム
作成者がプロセッサに与えるプログラムコードを生成す
る際、ロード命令がデータをロードしたレジスタと同じ
レジスタに後続命令がアクセスする場合には、両命令間
のクロック数を予め計測しておき、そのクロック数に
「1」を加えた値を、ロード命令のオペランドに記述し
ておく。このオペランドを以下では遅延数オペランドと
呼ぶ。
【0051】例えば、図2の命令列は図5のような命令
列に変更されてプロセッサに供給される。図2と図5の
違いは、1行目のロード命令であり、図5のロード命令
は遅延数オペランドをもつ。以下では、遅延数オペラン
ドをもつロード命令を拡張ロード命令と呼ぶ。
【0052】以下、図5のような命令列を実行する場合
の図1のプロセッサの動作を説明する。デコーダ4内の
ロード/ストア遅延量計測部21は、命令列の中に含ま
れる拡張ロード命令の遅延数オペランドに基づいて、遅
延クロック数を計測する。この遅延クロック数は、パイ
プラインレジスタ7を介してロード/ストア制御装置9
に送られる。
【0053】ロード/ストア制御装置9内のノンブロッ
キング制御部12は、拡張ロード命令の遅延クロック数
をアクセス速度可変制御部22に送る。アクセス速度可
変制御部22は、遅延クロック数に応じた電源電圧を内
蔵メモリ11に供給する。
【0054】ロード/ストア制御装置9は、Estageに
て、拡張ロード命令が示すアドレスを内蔵メモリ11に
供給するとともに、拡張ロード命令以降の命令をノンブ
ロッキング制御部12に実行させ、その実行制御と並行
して拡張ロード命令の処理を制御する。そして、4クロ
ックかけてデータをレジスタR1にロードした後、後続
のadd命令のDstageでバイパス装置を経由してバイパ
スするとともに、レジスタR8に書き込んで動作を終了
する。
【0055】このように、第1の実施形態では、ロード
命令等のメモリアクセス命令のアクセス先に後続命令が
アクセスする場合に、両命令間のクロック数に応じて、
内蔵メモリ11に供給する電源電圧やしきい値電圧を制
御するため、命令列の実行に支障がない範囲でメモリア
クセス命令の実行時間を制御でき、プロセッサの処理速
度を落とさずに消費電力の低減を図ることができる。
【0056】(第2の実施形態)第2の実施形態は、ロ
ード命令がデータをロードしたレジスタと同じレジスタ
に後続命令がアクセスする場合に、両命令間のクロック
数を動的に検出するものである。
【0057】図6は本発明に係るプロセッサの内部構成
を示す第2の実施形態のブロック図である。図6のプロ
セッサは、命令メモリ2から読み出した命令列を一時的
に格納するFIFO(First In First Out)構造の命令バッフ
ァ23を有する。
【0058】命令バッファ23に格納された命令列は、
古いものから順にデコーダ4に送られる。デコーダ4内
部のロード/ストア遅延量計測部21は、ロード命令が
データをロードしたレジスタと同じレジスタに後続命令
がアクセスする場合に、両命令間のクロック数を検出す
る。検出されたクロック数は、パイプラインレジスタ7
を介してロード/ストア制御装置9に送られる。
【0059】ロード/ストア制御装置9内のノンブロッ
キング制御部12は、ロード/ストア遅延量計測部21
が計測したクロック数に基づいて、内蔵メモリ11に供
給する電源電圧やしきい値電圧の電圧レベルを調整す
る。
【0060】このように、第2の実施形態では、命令バ
ッファ23にて、同一のレジスタにアクセスするロード
命令とその後続命令との間のクロック数を判別するた
め、プログラマやコンパイラは従来と同様の手法でプロ
グラムコードを生成できる。すなわち、従来と同様のプ
ログラミング手法を用いつつ、消費電力の低減が図れ
る。
【0061】(その他の実施形態)第1および第2の実
施形態では、同一のレジスタにアクセスするロード命令
とその後続命令について説明したが、他のメモリアクセ
ス命令についても、本発明は同様に適用可能である。
【0062】図7は、ストア命令がストアしたアドレス
と同一アドレスに、後続命令がアクセスする例を示す図
である。図7の場合、ストア命令と、このストア命令が
ストアしたデータにアクセスするロード命令との間の命
令数、すなわちアクセス遅延クロック数が「3」の場合
の例を示している。なお、図7において、ロード/スト
ア命令のアクセスアドレスには、直前で即値が代入され
るなどして、命令列だけからアドレスが内蔵メモリ11
へのアクセスであると分かっているものとする。
【0063】図7の命令列の場合、後続のロード命令が
Dstageでストアデータを参照するまでに、先行するスト
ア命令のストア処理が完了していればよい。このため、
本実施形態では、図8に示すようにストア命令のEstage
を(アクセス遅延クロック数+1=4)クロックかけて
行う。図8の”e”は、”E”と記載した場合よりも内
蔵メモリ11がゆっくりと動作していることを模式的に
示している。
【0064】このように、ストア命令がストアしたアド
レスと同一アドレスに、後続命令がアクセスする場合
も、プロセッサの動作速度を低下させずに、消費電力の
低減を図ることができる。
【0065】なお、本発明が対象とするメモリアクセス
命令は、ロード命令やストア命令以外の命令でもよい。
例えば、add命令等の演算命令がメモリに直接アクセ
スする場合にも本発明は適用可能である。
【0066】
【発明の効果】以上詳細に説明したように、本発明によ
れば、メモリアクセス命令の実行結果を利用する命令の
実行の妨げにならない範囲内で、メモリアクセス命令の
実行に要する時間を調整できるようにしたため、記憶装
置に対するアクセス速度を動的に変化させることによ
り、消費電力の低減を図ることができる。
【図面の簡単な説明】
【図1】本発明に係るプロセッサの内部構成を示す第1
の実施形態のブロック図。
【図2】命令列の具体例を示す図。
【図3】4クロックかけてロード命令を実行する場合の
命令列を示す図。
【図4】内蔵メモリへのアクセスタイミングを示すタイ
ミング図。
【図5】ロード命令を拡張ロード命令に変更した命令列
を示す図。
【図6】本発明に係るプロセッサの内部構成を示す第2
の実施形態のブロック図。
【図7】ストア命令がストアしたアドレスと同一アドレ
スに、後続命令がアクセスする例を示す図。
【図8】4クロックかけてストア命令を実行する場合の
命令列を示す図。
【図9】従来のプロセッサの内部構成を示すブロック
図。
【図10】プロセッサが実行する命令列の一例を示す
図。
【符号の説明】
1 命令フェッチ装置 2 命令メモリ 3 命令レジスタ 4 デコーダ 5 レジスタ 6 セレクタ 7 パイプラインレジスタ 8 演算器 9 ロード/ストア制御装置 11 内蔵メモリ 12 ノンブロッキング制御部 13 バス 14 外部メモリ 21 ロード/ストア遅延量計測部 22 アクセス速度可変制御部 23 命令バッファ
フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G06F 12/00 564 G06F 15/78 510P 15/78 510 1/00 332Z

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】記憶装置にアクセスしてデータの読み出し
    あるいは書き込みを行うメモリアクセス命令と、該メモ
    リアクセス命令の後に発行され該メモリアクセス命令に
    より読み出しまたは書き込まれたデータにアクセスする
    命令と、の間のクロック数を検出するクロック数検出手
    段と、 前記クロック数検出手段で検出されたクロック数に基づ
    いて、該メモリアクセス命令で前記記憶装置をアクセス
    するのに要する時間を調整するアクセス時間調整手段
    と、を備えることを特徴とするプロセッサ。
  2. 【請求項2】前記アクセス時間調整手段は、該メモリア
    クセス命令で前記記憶装置をアクセスする際、前記クロ
    ック数検出手段で検出されたクロック数以下の時間がか
    かるように、前記記憶装置に対するアクセス速度を変化
    させることを特徴とする請求項1に記載のプロセッサ。
  3. 【請求項3】前記メモリアクセス命令のオペランドに
    は、該メモリアクセス命令と、該メモリアクセス命令の
    後に発行され該メモリアクセス命令により読み出しまた
    は書き込まれたデータにアクセスする命令との間のクロ
    ック数情報が含まれており、 前記クロック数検出手段は、前記クロック数情報に基づ
    いて、メモリアクセス命令と、該メモリアクセス命令の
    後に発行され該メモリアクセス命令により読み出しまた
    は書き込まれたデータにアクセスする命令との間のクロ
    ック数を検出することを特徴とする請求項1または2に
    記載のプロセッサ。
  4. 【請求項4】前記メモリアクセス命令は、前記記憶装置
    からレジスタにデータをロードするロード命令であり、 前記クロック数検出手段は、前記ロード命令と、該ロー
    ド命令がデータをロードするレジスタにアクセスする該
    ロード命令の後続命令との間のクロック数を検出するこ
    とを特徴とする請求項1〜3のいずれかに記載のプロセ
    ッサ。
  5. 【請求項5】前記メモリアクセス命令は、前記記憶装置
    の所定領域にデータをストアするストア命令であり、 前記クロック数検出手段は、前記ストア命令と、該スト
    ア命令がストアする前記記憶装置内の所定領域にアクセ
    スする該ストア命令の後続命令との間のクロック数を判
    定することを特徴とする請求項1〜3のいずれかに記載
    のプロセッサ。
  6. 【請求項6】命令の実行処理を開始する前に、一時的に
    命令を格納する命令バッファを備え、 前記クロック数検出手段は、ロード命令と、該ロード命
    令がデータをロードするレジスタにアクセスする該ロー
    ド命令の後続命令とが前記命令バッファ内に格納されて
    いる場合に、両命令間のクロック数を検出することを特
    徴とする請求項1〜3のいずれかに記載のプロセッサ。
  7. 【請求項7】命令の実行処理を開始する前に、一時的に
    命令を格納する命令バッファを備え、 前記クロック数検出手段は、ストア命令と、該ストア命
    令がストアする前記記憶装置内の所定領域にアクセスす
    る該ストア命令の後続命令との間のクロック数を検出す
    ることを特徴とする請求項1〜3のいずれかに記載のプ
    ロセッサ。
  8. 【請求項8】前記アクセス時間調整手段は、前記記憶装
    置に供給する電源電圧または前記記憶装置のしきい値電
    圧を調整することにより、前記記憶装置に対するアクセ
    ス速度を調整することを特徴とする請求項1〜7のいず
    れかに記載のプロセッサ。
JP2000388832A 2000-12-21 2000-12-21 プロセッサ Expired - Fee Related JP3697393B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000388832A JP3697393B2 (ja) 2000-12-21 2000-12-21 プロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000388832A JP3697393B2 (ja) 2000-12-21 2000-12-21 プロセッサ

Publications (2)

Publication Number Publication Date
JP2002189591A true JP2002189591A (ja) 2002-07-05
JP3697393B2 JP3697393B2 (ja) 2005-09-21

Family

ID=18855502

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000388832A Expired - Fee Related JP3697393B2 (ja) 2000-12-21 2000-12-21 プロセッサ

Country Status (1)

Country Link
JP (1) JP3697393B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008016162A1 (en) * 2006-08-02 2008-02-07 Kabushiki Kaisha Toshiba Memory system and memory chip
JP2008520014A (ja) * 2004-11-10 2008-06-12 フリースケール セミコンダクター インコーポレイテッド 複数の基準回路を用いて電圧及び周波数を制御する装置及び方法
JP2010501102A (ja) * 2006-08-16 2010-01-14 クゥアルコム・インコーポレイテッド 動的可変遅延に基づいてプロセッサ命令を実行するための方法および装置
JP2012113724A (ja) * 2006-05-11 2012-06-14 Intel Corp 電力低減方法、装置、読み取り可能な媒体、及びシステム

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008520014A (ja) * 2004-11-10 2008-06-12 フリースケール セミコンダクター インコーポレイテッド 複数の基準回路を用いて電圧及び周波数を制御する装置及び方法
JP2012113724A (ja) * 2006-05-11 2012-06-14 Intel Corp 電力低減方法、装置、読み取り可能な媒体、及びシステム
WO2008016162A1 (en) * 2006-08-02 2008-02-07 Kabushiki Kaisha Toshiba Memory system and memory chip
JP2008040609A (ja) * 2006-08-02 2008-02-21 Toshiba Corp メモリシステム及びメモリチップ
CN101517547B (zh) * 2006-08-02 2013-01-16 株式会社东芝 存储器系统和存储器芯片
US8892917B2 (en) 2006-08-02 2014-11-18 Kabushiki Kaisha Toshiba Memory system and memory chip
US9880767B2 (en) 2006-08-02 2018-01-30 Toshiba Memory Corporation Memory system and memory chip
JP2010501102A (ja) * 2006-08-16 2010-01-14 クゥアルコム・インコーポレイテッド 動的可変遅延に基づいてプロセッサ命令を実行するための方法および装置
US8566568B2 (en) 2006-08-16 2013-10-22 Qualcomm Incorporated Method and apparatus for executing processor instructions based on a dynamically alterable delay

Also Published As

Publication number Publication date
JP3697393B2 (ja) 2005-09-21

Similar Documents

Publication Publication Date Title
US7502914B2 (en) Transitive suppression of instruction replay
US6088789A (en) Prefetch instruction specifying destination functional unit and read/write access mode
US9886385B1 (en) Content-directed prefetch circuit with quality filtering
US8914580B2 (en) Reducing cache power consumption for sequential accesses
US9052910B2 (en) Efficiency of short loop instruction fetch
CN112230992B (zh) 一种包含分支预测循环的指令处理装置、处理器及其处理方法
US8806181B1 (en) Dynamic pipeline reconfiguration including changing a number of stages
US20100257335A1 (en) Reconfigurable circuit with suspension control circuit
US20220076739A1 (en) Memory context restore, reduction of boot time of a system on a chip by reducing double data rate memory training
US20120173848A1 (en) Pipeline flush for processor that may execute instructions out of order
EP3221766A1 (en) Processor including multiple dissimilar processor cores
US20070260857A1 (en) Electronic Circuit
JP3790626B2 (ja) デュアルワードまたは複数命令をフェッチしかつ発行する方法および装置
US20210349823A1 (en) Dynamic Adaptive Drain for Write Combining Buffer
US7730288B2 (en) Method and apparatus for multiple load instruction execution
US5898815A (en) I/O bus interface recovery counter dependent upon minimum bus clocks to prevent overrun and ratio of execution core clock frequency to system bus clock frequency
JP2001142701A (ja) プロセッサにおけるパイプライン制御用メカニズムおよび方法
JP3697393B2 (ja) プロセッサ
US7178013B1 (en) Repeat function for processing of repetitive instruction streams
US20180181335A1 (en) Apparatus and method to speed up memory frequency switch flow
US20080141252A1 (en) Cascaded Delayed Execution Pipeline
JP5902208B2 (ja) データ処理装置
JP3146058B2 (ja) 並列処理型プロセッサシステムおよび並列処理型プロセッサシステムの制御方法
CN113853584A (zh) 可变延时指令
US20120079249A1 (en) Training Decode Unit for Previously-Detected Instruction Type

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040709

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050621

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050704

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090708

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090708

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100708

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110708

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120708

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees