[go: up one dir, main page]

JPH0991136A - 信号処理装置 - Google Patents

信号処理装置

Info

Publication number
JPH0991136A
JPH0991136A JP7245626A JP24562695A JPH0991136A JP H0991136 A JPH0991136 A JP H0991136A JP 7245626 A JP7245626 A JP 7245626A JP 24562695 A JP24562695 A JP 24562695A JP H0991136 A JPH0991136 A JP H0991136A
Authority
JP
Japan
Prior art keywords
instruction
buffer
memory
output
address
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
JP7245626A
Other languages
English (en)
Inventor
Kazutaka Nogami
一孝 野上
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 JP7245626A priority Critical patent/JPH0991136A/ja
Priority to US08/717,118 priority patent/US5809326A/en
Publication of JPH0991136A publication Critical patent/JPH0991136A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3808Instruction prefetching for instruction reuse, e.g. trace cache, branch target cache
    • G06F9/381Loop buffering

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】 【課題】 従来では、命令のステップが命令ループ中に
おいても命令ループ中でない場合と同様に、実行される
命令を命令キャッシュから読み込んでくる必要があり、
命令ループ中の命令、命令ループ中にない命令を命令キ
ャッシュから読み込むためには、同様の電力を消費して
いたため、低消費電力化が図られていなかった。 【解決手段】 命令キャッシュ11から出力される命令
に関する情報を順次記憶するバッファ14と、命令が命
令ループに入ったことを検知するレジスタ17とを有
し、命令が命令ループに入った場合には、コントロール
回路20により命令キャッシュ11を活性化させずに、
命令ループの命令をバッファ11から出力する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は信号処理装置、特に
命令キャッシュからの命令のうち、命令ループ中の命令
を記憶するバッファを有する信号処理装置に関する。
【0002】
【従来の技術】従来の信号処理装置について、以下図面
を参照して説明する。従来のマイクロプロセッサはAL
U(Arithmetic Logic Unit )に命令を供給するため
に、図3に示すような命令キャッシュ101や命令デコ
ーダ102を有するものが多い。この命令キャッシュ1
01は、命令を有する図示せぬメインメモリから、任意
の命令を読み込み記憶しておき、命令アドレス151に
より指定された命令152が命令デコーダ102に出力
され、命令デコーダ102によってデコードされ、命令
デコード信号153として後段のALUに出力される。
この命令キャッシュを有するCPU(Central Processi
ng Unit )は、命令を保持するメインメモリから命令を
直接読み込む方式のものに比べ、命令を高速に読み込
み、出力させることができる。
【0003】しかし、CPUが命令のメインメモリから
直接命令を読み込むのに比べ、命令キャッシュから命令
を読み込む場合には、ミスヒットをする確率も高くな
り、性能の低下を招いてしまう。よって命令キャッシュ
のヒット率をあげるために、命令を複数のキャッシュメ
モリで保持するセット・アソシアティブ方式の命令キャ
ッシュにしている場合が多い。但し、セット・アソシア
ティブ方式の命令キャッシュでは、ダイレクトマップ方
式(1Wayセット・アソシアティブ方式)の命令キャ
ッシュに比べ、1つのアドレスの指定に対し複数の命令
を読み出すことになるので、消費電力の増加も免れな
い。
【0004】ところで通常CPUに与えられるプログラ
ムは、その約80%程度が同じ動作を繰り返す命令、す
なわち命令ループにより構成されている。この命令ルー
プは、例えば演算中のデータが分岐命令で指定されてい
る一定の値になるまでは、同じ命令によって繰り返し演
算が行われるという命令の集合により構成されている。
従って分岐命令で指定されている条件になるまでは、同
様の命令が繰り返し行われ、その分岐命令で指定された
条件になった後、はじめて次の命令に演算が移行する。
【0005】従来のCPUにおいては、命令を命令ルー
プ中においても命令ループ中でない場合と同様に、実行
される命令を命令キャッシュから読み込んでくる必要が
ある。このため、命令ループ中の命令、命令ループ中に
ない命令を命令キャッシュから読み込むためには、同様
の電力を消費することになる。またセット・アソシアテ
ィブ方式の命令キャッシュを用いた場合でも、命令が命
令ループ中でない場合には、ヒット率を向上させること
には効果を有するが、命令ループ中の場合では繰り返し
の命令を読み込むだけであり、この単純な作業のためで
あっても、命令ループでない場合と同様に消費電力がか
かってしまう。
【0006】
【発明が解決しようとする課題】上記のように従来のC
PUにおいては、演算処理の高速化を目的として命令の
メインメモリから任意の命令を命令キャッシュに保持
し、この命令キャッシュから読み込んだ命令により演算
を実行する構成としている。さらに命令キャッシュのヒ
ット率をあげるために、命令を複数のキャッシュメモリ
で保持するセット・アソシアティブ方式の命令キャッシ
ュの構造が多く用いられている。
【0007】しかしセット・アソシアティブ方式の命令
キャッシュでは、ダイレクトマップ方式(1Wayセッ
ト・アソシアティブ方式)の命令キャッシュに比べ、1
つのアドレスの指定に対し複数の命令を読み出すことに
なるので、消費電力の増加も免れない。
【0008】ALUに与えられる演算命令は、約80%
程度が命令ループにより構成されている。この命令ルー
プは、例えば演算中のデータが分岐命令で指定されてい
る一定値になるまでは、同じ命令によって繰り返し演算
が行われるという命令の集合により構成されている。
【0009】従来のCPUにおいては、命令のステップ
が命令ループ中においても命令ループ中でない場合と同
様に、実行される命令を命令キャッシュから読み込んで
くる必要がある。このため、命令ループ中の命令、命令
ループ中にない命令を命令キャッシュから読み込むため
には、同様の電力を消費することになる。
【0010】従って従来のCPUにおいては、この命令
の繰り返しよりなる命令ループの特性を、十分に低消費
電力化や高速化に結び付けることがなられておらず、命
令ループを構成しない命令、命令ループ中の命令共に、
同様の条件より命令キャッシュから読み込んでいるた
め、命令ループの特性を生かしたCPUに係る低消費電
力化が実現できていなかった。
【0011】
【課題を解決するための手段】本発明は上記の問題点を
鑑み、CPUの内、ALUに命令を供給する部分を以下
のような構成とする。すなわち命令を保持する命令メモ
リと、前記命令メモリより出力された命令と、この命令
のうちの条件分岐命令の判断の結果とを記憶する複数の
エントリを有する命令バッファと、前記命令バッファが
記憶した命令に対応したアドレスを記憶し、前記命令バ
ッファに制御を移す命令のアドレスを指定する第一レジ
スタと、前記第一レジスタに記憶されている前記命令バ
ッファに制御を移す命令のアドレスと、プログラムカウ
ンタのアドレスとを比較し比較結果を出力する第一比較
器と、前記命令バッファに記憶された条件分岐命令の判
断の結果と、実行中の条件分岐命令の条件判断の結果と
を比較し比較結果を出力する第二比較器と、前記第一比
較器と前記第二比較器の比較結果の出力に応じて、前記
命令バッファと前記命令メモリの動作を制御するコント
ロール回路とを有する。
【0012】そして前記命令メモリより出力された命令
のうちの条件分岐命令によって、命令ループが形成され
た際には、前記命令バッファにより、前記第一レジスタ
に記憶された前記命令バッファが記憶した命令に対応し
たアドレスの前記命令バッファが記憶する命令から、前
記命令バッファが記憶する最後のアドレスの命令まで、
或いは前記第二比較器の比較結果が不一致になるまで
は、前記命令バッファが記憶する命令を出力することを
特徴とする信号処理装置を提供する。
【0013】
【発明の実施の形態】本発明の第一の実施例を図1を参
照して説明する。まず本発明に係るALUに命令を供給
する部分の構成について説明する。本発明の構成は、図
示せぬプログラム・カウンタが発生する命令アドレス5
1に対応して、命令キャッシュ11から出力される命令
を順次記憶するメモリ12と、このメモリ12に記憶さ
れている命令に対応して、命令のうちの分岐判断を記憶
するメモリ13とからなる命令バッファ14と、命令ル
ープに入るときの命令の最初のアドレスを記憶している
メモリ15と、このアドレスに対応した命令バッファ1
4のエントリを記憶し、命令バッファ14にエントリを
指定する信号52を出力するメモリ16とからなる第一
レジスタ17と、第一レジスタ17に記憶されている命
令ループに入るときの最初のアドレス53とプログラム
・カウンタが発生する命令アドレス51を比較し、一致
信号或いは不一致信号54を出力する第一比較器18
と、命令バッファ14に記憶された条件分岐命令の条件
判断結果55と、ALUから出力される実行中の条件分
岐命令の条件判断の結果56とを比較し、一致信号或い
は不一致信号57を出力する第二比較器19と、第一、
第二の比較器18、19の一致或いは不一致信号54、
57を受けて命令キャッシュ11を活性化または非活性
化させる命令58と、命令バッファ14から命令を出力
させるための信号59を出力するコントロール回路20
と、命令キャッシュから出力される命令60か命令バッ
ファから出力される命令61かを、コントロール回路2
0からの制御信号62により選択するマルチプレクサ2
1とを有する。またマルチプレクサ21により選択され
た命令キャッシュからの命令60或いは命令バッファか
らの命令61は命令デコーデ22に入力され、デコード
された後、図示しないALUに命令のデコード信号63
として出力される。
【0014】続いて本発明に係る動作について説明す
る。通常CPU内でのALUに与えられる命令は、一連
のプログラムにより構成されている。このプログラムを
実行してゆくと、ある命令とある命令の間でループが形
成され、演算数値がある分岐命令の条件を満たさない限
りはそのループ内の命令を繰り返し実行する部分と、ル
ープを構成せず単に一つの命令を順次実行する命令の繰
り返しのない部分とがある。但し、ある条件分岐命令ま
ではプログラムのアドレスの順に従って命令が出力され
る。
【0015】本発明の動作においては、はじめに命令ル
ープが形成されない状態で、プログラム・カウンタが発
生する命令アドレス51に従い命令キャッシュ11から
出力される命令60を順次命令バッファ14に取り込み
記憶する。ここでALUに与えられた命令に対応して出
力されるALUからの条件分岐の判断結果を、命令キャ
ッシュ11から供給され記憶した命令に対応したアドレ
スで、命令バッファ14内の分岐判断を記憶している部
分13に記憶する。命令バッファ14は例えばFIFO
(First In First Out)として動作させると、命令バッ
ファ14の持つエントリの数だけ、命令キャッシュ11
から最近に出力された命令の順に、またこの命令の順に
対応するALUからの条件判断の結果56を記憶させる
ことができる。
【0016】プログラムの命令がアドレス・カウンタ5
1に応じて順次進行し、ある条件分岐命令によってアド
レスが小さい命令へ分岐する命令が実行されると、プロ
グラム中に命令ループが形成されたことになる。
【0017】この際に条件分岐命令の指定する現在実行
された命令より前のアドレスの命令、すなわちアドレス
の後ろに飛ぶアドレス数が、命令バッファ11のエント
リ数よりも小さければ、命令ループに入るときの命令の
最初のアドレスを記憶しているメモリ15と、このアド
レスに対応した命令バッファ14のエントリを記憶し、
命令バッファ14にエントリを指定する信号52を出力
するメモリ16とからなる第一レジスタ17により、飛
び先アドレスを設定し、それに対応する命令バッファ1
1のエントリを設定する。
【0018】この場合には、形成される命令ループは命
令バッファ14の保持する命令の中に全て入るので、命
令バッファ14からその命令ループで必要とする命令の
全てを命令バッファ14の保持する命令から出力するこ
とができる。従ってこの時には、命令ループに入るとき
の最初のアドレス53とプログラム・カウンタが発生す
る命令アドレス51を第一比較器により比較し、一致信
号54を出力させこれを受けたコントロール回路20に
よる命令キャッシュ11を非活性化させる命令58によ
り、命令キャッシュ11を停止させる。また命令キャッ
シュの停止と同時に図示しないプログラム・カウンタを
停止させることができる。またコントロール回路20に
よる制御信号62によりマルチプレクサ21が命令バッ
ファからの命令61を選択するようにする。
【0019】また条件分岐命令の指定する現在実行され
た命令より前のアドレスの命令、すなわちアドレスの後
ろに飛ぶアドレス数が、命令バッファ11のエントリ数
よりも大きければ、命令バッファ11が保持する命令の
みで、この命令ループの命令を供給することは困難とな
る。この場合には、条件分岐がなされる命令のアドレス
から、命令バッファ11のエントリ数だけさかのぼっ
た、命令バッファ11に記憶されている最も古くに記憶
された命令のアドレスを、第一レジスタ17により設定
し、これに対応した命令バッファ14の最初のエントリ
を設定する。そして、命令ループの必要とする命令のう
ち命令バッファが保持していない部分の命令について
は、命令ループが形成されていない場合と同様に、図示
しないプログラム・カウンタの動作を開始させ、命令キ
ャッシュ11を活性化させ命令キャッシュ11から命令
を供給する。
【0020】この際は、第一比較器18からの不一致信
号54によりコントロール回路20から、命令キャッシ
ュ11を活性化させる信号を出力し、同時に制御信号6
2によりマルチプレクサ21を切り替え、命令キャッシ
ュ11から命令を供給する。
【0021】ここで命令が命令キャッシュ11より供給
されている間は、命令バッファ14は新たな命令を取り
込むことなく、命令ループが形成される直前までの命令
を全て保持したままの状態となる。
【0022】命令キャッシュ11から命令が順次供給さ
れ、命令ループ中の命令のアドレスが命令バッファ14
の保持するもっとも古い命令のアドレスと一致したとき
には、命令ループに入るときの命令の最初のアドレスを
記憶しているメモリ15からのアドレス53と、プログ
ラム・カウンタが発生する命令アドレス51との第一比
較器18により、一致信号54が出力される。この一致
信号54を受けてコントロール回路20は命令キャッシ
ュを停止させ、図示しないプログラム・カウンタも停止
させる。また命令バッファ14から保持している命令を
マルチプレクサ21に出力すると同時に、マルチプレク
サ21は命令バッファ14からの命令を選択するように
マルチプレクサ21を切り替える。命令バッファ14か
らの命令の供給を続け、再び条件分岐命令まで進むと、
再び条件判断の結果によっては上記と同様の動作を繰り
返し、命令バッファ14が命令を保持している範囲まで
は命令バッファ14から、命令バッファ14が保持して
いない範囲までの命令は、命令キャッシュ11から供給
される。
【0023】プログラムが命令ループから抜け出したこ
とは第二比較器19の出力57により判断する。命令バ
ッファ14は実行中の命令のうち、条件分岐命令の判断
結果をメモリ13により記憶しておりこの結果55と、
ALUに与えられた命令により演算が実行された後の条
件分岐の判断結果56とが、第二比較器19に出力され
る。この第二比較器19の出力57により、例えば過去
に実行された条件分岐命令の条件判断結果と異なった
か、或いは命令バッファ14に保持されている命令より
も更に先のアドレスの命令に移行したかによって判断す
る。この場合、命令ループは条件分岐命令にて条件が満
たされたため、ループが解消したと判断される。この場
合、命令バッファ14はエントリを全て無効にして、新
たに命令キャッシュ11を活性化させ、図示しないプロ
グラムカウンタを動作させ、命令キャッシュ11から供
給される命令と条件分岐の判断結果を取り込み始め、命
令ループに入った場合にはまた上記の動作を繰り返す。
【0024】続いて本発明の第二の実施例を図2を参照
して説明する。第一の実施例においては命令バッファは
命令キャッシュからの出力を直接うけるように接続さ
れ、命令デコーダは命令ループの形成に応じて、命令キ
ャッシュからの命令或いは命令バッファからの命令をデ
コードしていた。第一の実施例においてはプログラムが
命令ループに入っている場合には、命令キャッシュを非
活性化させ、命令バッファからの命令を供給し、この命
令バッファから供給された命令を命令デコーダに出力
し、デコードを行って後段のALUに出力している。こ
の場合には命令デコーダも繰り返し供給される命令につ
いてのデコードを行っていることになる。
【0025】第二の実施例においてはこの点に着目し、
命令バッファには命令キャッシュから供給される命令
が、既に命令デコーダによりデコードが終了した命令デ
コード信号を、命令バッファに記憶させる構成とする。
本構成は例えば図2に示すような回路によって実現する
ことが可能である。
【0026】図2の回路構成は、第一の実施例において
命令バッファは命令キャッシュから供給される命令を直
接記憶する構成を、命令に対応した命令デコード信号を
記憶するように変更したものである。主な構成について
は第一の実施例とほぼ同様であり、従って同一機能を有
するものについては同一の符号を付けてある。
【0027】主な変更点は命令キャッシュ11からの出
力を、命令バッファ14に取り込む前に命令デコーダ2
2によりデコードし、命令デコーダ22によりデコード
された命令デコード信号を、命令バッファ14に取り込
む点と、コントロール回路20から命令キャッシュ11
への制御信号を、命令デコーダ22にも出力し、命令バ
ッファ14から命令デコード信号を供給している間は、
命令キャッシュ、命令デコーダともに非活性化させる点
である。その他の構成については第一の実施例と同様で
ある。
【0028】本発明によれば以下に示すような効果があ
る。すなわち命令キャッシュの保持する命令の一部を命
令バッファに保持し、命令ループが形成された場合に
は、命令の供給を命令バッファから行う。従ってこの間
は命令キャッシュを停止することができ、命令キャッシ
ュを活性化させるためにかかる電力を消費せずに済み、
プログラムの一連の実行にかかる平均の消費電力を低減
することができる。
【0029】また命令キャッシュの方式がセット・アソ
シアティブ方式の場合には、ダイレクトマップ方式に比
べ消費電力は多いため、命令キャッシュを停止すること
による低電力化には効果がある。また、命令が命令バッ
ファより供給されている間は、プログラム・カウンタは
インクリメントを行わず、カウントが停止しているた
め、プログラム・カウンタの消費電力を低減することが
できる。
【0030】さらに第二の実施例のような構成により、
命令バッファにて命令デコード信号を供給することによ
り、命令デコード信号が命令バッファより供給されてい
る間には、命令デコーダを活性化する必要がないので、
さらに消費電力を低減することができる。
【0031】
【発明の効果】本発明によれば、命令ループが形成され
た場合には、命令の供給を命令バッファから行うことに
より、この間は命令キャッシュを停止することができ、
命令キャッシュを活性化させるためにかかる電力を消費
せずに済み、プログラムの一連の実行にかかる平均の消
費電力を低減することができる。
【0032】また命令キャッシュの方式がセット・アソ
シアティブ方式の場合には、ダイレクトマップ方式に比
べ消費電力は多いため、命令キャッシュを停止すること
により消費電力を低減することができる。
【0033】また、命令が命令バッファより供給されて
いる間は、プログラム・カウンタはインクリメントを行
わず、カウントが停止しているため、プログラム・カウ
ンタの消費電力を低減することができる。
【図面の簡単な説明】
【図1】本発明の第一の実施例を説明する回路図。
【図2】本発明の第二の実施例を説明する回路図。
【図3】従来例を説明する回路図。
【符号の説明】
11 命令キャッシュ 12 命令キャッシュの命令を順次記憶するメモリ 13 命令の分岐判断結果を記憶するメモリ 14 命令バッファ 15 命令ループの最初のアドレスを記憶するメモリ 16 エントリを指定する信号を出力するメモリ 17 第一レジスタ 18 第一比較器 19 第二比較器 20 コントロール回路 21 マルチプレクサ 51 プログラム・カウンタが発生する命令アドレス 53 命令ループに入るときの最初のアドレス 54、57 一致信号、不一致信号 55 命令バッファに記憶されている条件分岐命令の
条件判断結果 56 ALUから出力される条件分岐命令の条件判断
の結果 58 命令キャッシュを活性化または非活性化させる
命令 59 命令バッファから命令を出力させるための信号 60 命令キャッシュから出力される命令 61 命令バッファから出力される命令 62 コントロール回路からの制御信号 63 命令のデコード信号 101 命令キャッシュ 102 命令デコーダ 151 命令アドレス 152 命令キャッシュからの命令 153 命令デコード信号

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 命令を保持する命令メモリと、 前記命令メモリより出力された命令と、この命令のうち
    の条件分岐命令の判断の結果とを記憶する複数のエント
    リを有する命令バッファと、 前記命令バッファが記憶した命令に対応したアドレスを
    記憶し、前記命令バッファに制御を移す命令のアドレス
    を指定する第一レジスタと、 前記第一レジスタに記憶されている前記命令バッファに
    制御を移す命令のアドレスと、プログラムカウンタのア
    ドレスとを比較し比較結果を出力する第一比較器と、 前記命令バッファに記憶された条件分岐命令の判断の結
    果と、実行中の条件分岐命令の条件判断の結果とを比較
    し比較結果を出力する第二比較器と、 前記第一比較器と前記第二比較器の比較結果の出力に応
    じて、前記命令バッファと前記命令メモリの動作を制御
    するコントロール回路とを有し、 前記命令メモリより出力された命令のうちの条件分岐命
    令によって、命令ループが形成された際には、前記命令
    バッファにより、前記第一レジスタに記憶された前記命
    令バッファが記憶した命令に対応したアドレスの前記命
    令バッファが記憶する命令から、前記命令バッファが記
    憶する最後のアドレスの命令まで、或いは前記第二比較
    器の比較結果が不一致になるまでは、前記命令バッファ
    が記憶する命令を出力することを特徴とする信号処理装
    置。
  2. 【請求項2】 請求項1記載の信号処理装置において、 前記命令ループが形成された際には、前記コントロール
    回路により前記命令メモリの動作を停止させることを特
    徴とする信号処理装置。
  3. 【請求項3】 請求項1または2記載の信号処理装置に
    おいて、 前記第二比較器は、前記命令バッファに記憶された条件
    分岐命令の判断の結果と、実行中の条件分岐命令の条件
    判断の結果とを比較し、前記命令バッファが記憶する条
    件分岐の条件判断の結果と、実行中の条件分岐命令の条
    件判断の結果とが異なったことによって、命令ループか
    ら抜け出したことを検出し、前記命令メモリの動作を開
    始させることを特徴とする信号処理装置。
  4. 【請求項4】 請求項1乃至3記載の信号処理装置にお
    いて、 前記命令バッファが記憶する命令は、前記命令メモリよ
    り出力された命令が命令デコーダによりデコードされた
    命令であることを特徴とする信号処理装置。
  5. 【請求項5】 請求項1記載の信号処理装置において、 前記コントロール回路の制御により、前記命令メモリか
    らの出力と前記命令バッファからの出力のうちの一つを
    選択し出力する命令選択回路を具備することを特徴とす
    る信号処理装置。
  6. 【請求項6】 命令を保持する第一命令メモリと、前記
    第一命令メモリから選択された命令を保持し、アドレス
    信号に応じて所定命令を出力する第二命令メモリと、前
    記第二命令メモリから出力された所定命令を読み込みデ
    コードするデコード回路と、前記デコードされた命令に
    より演算を実行する演算器とを有する信号処理装置にお
    いて、 前記アドレス信号に応じて前記第二命令メモリから出力
    された所定命令を順次保持する第三命令メモリと、前記
    第二命令メモリ及び前記第三命令メモリの動作を制御す
    るコントロール回路と、前記第二命令メモリのアドレス
    に対応した前記第三命令メモリのアドレスを指定するレ
    ジスタとを有し、前記所定命令のうち前記第二命令メモ
    リによって出力された命令を再び繰り返し出力する際
    に、前記コントロール回路により前記第二命令メモリの
    出力を停止させ、前記レジスタにより指定されたアドレ
    スの前記第三命令メモリの命令を出力することを特徴と
    する信号処理装置。
  7. 【請求項7】 請求項6記載の信号処理装置において、 前記第三命令メモリが保持する命令は前記第二命令メモ
    リから出力された命令が前記デコード回路によりデコー
    ドされた命令であることを特徴とする信号処理装置。
JP7245626A 1995-09-25 1995-09-25 信号処理装置 Pending JPH0991136A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP7245626A JPH0991136A (ja) 1995-09-25 1995-09-25 信号処理装置
US08/717,118 US5809326A (en) 1995-09-25 1996-09-20 Signal processor and method of operating a signal processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7245626A JPH0991136A (ja) 1995-09-25 1995-09-25 信号処理装置

Publications (1)

Publication Number Publication Date
JPH0991136A true JPH0991136A (ja) 1997-04-04

Family

ID=17136482

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7245626A Pending JPH0991136A (ja) 1995-09-25 1995-09-25 信号処理装置

Country Status (2)

Country Link
US (1) US5809326A (ja)
JP (1) JPH0991136A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001005660A (ja) * 1999-05-26 2001-01-12 Infineon Technol North America Corp マイクロプロセッサ内の命令トランザクションを低減する方法及び装置
JP2007257349A (ja) * 2006-03-23 2007-10-04 Fujitsu Ltd プロセッサ及びその処理方法
WO2011161884A1 (ja) * 2010-06-25 2011-12-29 パナソニック株式会社 集積回路、コンピュータシステム、制御方法
JP2012221086A (ja) * 2011-04-06 2012-11-12 Fujitsu Semiconductor Ltd 情報処理装置
JP2013541758A (ja) * 2010-09-24 2013-11-14 インテル・コーポレーション 命令フェッチユニットの電力を落とすことによりプロセッサ内の電力消費を低下させる方法および装置
JP2014013565A (ja) * 2012-06-15 2014-01-23 Apple Inc ループバッファ学習
US9471322B2 (en) 2014-02-12 2016-10-18 Apple Inc. Early loop buffer mode entry upon number of mispredictions of exit condition exceeding threshold
US9753733B2 (en) 2012-06-15 2017-09-05 Apple Inc. Methods, apparatus, and processors for packing multiple iterations of loop in a loop buffer

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6505295B1 (en) * 1997-02-17 2003-01-07 Hitachi, Ltd. Data processor
EP0992894A1 (en) * 1998-10-06 2000-04-12 Texas Instruments Inc. Apparatus and method for loop execution
DE50004566D1 (de) * 1999-03-17 2004-01-08 Infineon Technologies Ag Cachen kurzer programmschleifen innerhalb eines instruktions-fifos
US6598155B1 (en) * 2000-01-31 2003-07-22 Intel Corporation Method and apparatus for loop buffering digital signal processing instructions
US6898693B1 (en) * 2000-11-02 2005-05-24 Intel Corporation Hardware loops
KR100395756B1 (ko) * 2001-06-16 2003-08-21 삼성전자주식회사 캐쉬 메모리 및 이를 이용하는 마이크로 프로세서
US7249248B2 (en) * 2002-11-25 2007-07-24 Intel Corporation Method, apparatus, and system for variable increment multi-index looping operations
US7711934B2 (en) * 2005-10-31 2010-05-04 Mips Technologies, Inc. Processor core and method for managing branch misprediction in an out-of-order processor pipeline
US7734901B2 (en) * 2005-10-31 2010-06-08 Mips Technologies, Inc. Processor core and method for managing program counter redirection in an out-of-order processor pipeline
US7496771B2 (en) * 2005-11-15 2009-02-24 Mips Technologies, Inc. Processor accessing a scratch pad on-demand to reduce power consumption
US7562191B2 (en) * 2005-11-15 2009-07-14 Mips Technologies, Inc. Microprocessor having a power-saving instruction cache way predictor and instruction replacement scheme
US7873820B2 (en) * 2005-11-15 2011-01-18 Mips Technologies, Inc. Processor utilizing a loop buffer to reduce power consumption
US20070204139A1 (en) 2006-02-28 2007-08-30 Mips Technologies, Inc. Compact linked-list-based multi-threaded instruction graduation buffer
US7370178B1 (en) 2006-07-14 2008-05-06 Mips Technologies, Inc. Method for latest producer tracking in an out-of-order processor, and applications thereof
US20080016326A1 (en) 2006-07-14 2008-01-17 Mips Technologies, Inc. Latest producer tracking in an out-of-order processor, and applications thereof
US7657708B2 (en) * 2006-08-18 2010-02-02 Mips Technologies, Inc. Methods for reducing data cache access power in a processor using way selection bits
US7650465B2 (en) 2006-08-18 2010-01-19 Mips Technologies, Inc. Micro tag array having way selection bits for reducing data cache access power
US8032734B2 (en) * 2006-09-06 2011-10-04 Mips Technologies, Inc. Coprocessor load data queue for interfacing an out-of-order execution unit with an in-order coprocessor
US7647475B2 (en) * 2006-09-06 2010-01-12 Mips Technologies, Inc. System for synchronizing an in-order co-processor with an out-of-order processor using a co-processor interface store data queue
US9946547B2 (en) * 2006-09-29 2018-04-17 Arm Finance Overseas Limited Load/store unit for a processor, and applications thereof
US20080082793A1 (en) * 2006-09-29 2008-04-03 Mips Technologies, Inc. Detection and prevention of write-after-write hazards, and applications thereof
US7594079B2 (en) 2006-09-29 2009-09-22 Mips Technologies, Inc. Data cache virtual hint way prediction, and applications thereof
US8078846B2 (en) 2006-09-29 2011-12-13 Mips Technologies, Inc. Conditional move instruction formed into one decoded instruction to be graduated and another decoded instruction to be invalidated
CN102637149B (zh) * 2012-03-23 2015-07-01 山东极芯电子科技有限公司 一种处理器及其运行方法
US10956154B2 (en) * 2015-07-07 2021-03-23 Samsung Electronics Co., Ltd. Signal processing device and method
US11003457B2 (en) * 2019-01-23 2021-05-11 Mediatek Inc. Power-saving mechanism for memory sub-system in pipelined processor

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8728493D0 (en) * 1987-12-05 1988-01-13 Int Computers Ltd Jump prediction
US5487156A (en) * 1989-12-15 1996-01-23 Popescu; Valeri Processor architecture having independently fetching issuing and updating operations of instructions which are sequentially assigned and stored in order fetched
US5093778A (en) * 1990-02-26 1992-03-03 Nexgen Microsystems Integrated single structure branch prediction cache
US5163140A (en) * 1990-02-26 1992-11-10 Nexgen Microsystems Two-level branch prediction cache
JP2834292B2 (ja) * 1990-08-15 1998-12-09 株式会社日立製作所 データ・プロセッサ
US5454090A (en) * 1990-10-12 1995-09-26 Siemens Aktiengesellschaft Apparatus for furnishing instructions in a microprocessor with a multi-stage pipeline processing unit for processing instruction phase and having a memory and at least three additional memory units
US5623614A (en) * 1993-09-17 1997-04-22 Advanced Micro Devices, Inc. Branch prediction cache with multiple entries for returns having multiple callers
US5592634A (en) * 1994-05-16 1997-01-07 Motorola Inc. Zero-cycle multi-state branch cache prediction data processing system and method thereof

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001005660A (ja) * 1999-05-26 2001-01-12 Infineon Technol North America Corp マイクロプロセッサ内の命令トランザクションを低減する方法及び装置
JP2007257349A (ja) * 2006-03-23 2007-10-04 Fujitsu Ltd プロセッサ及びその処理方法
WO2011161884A1 (ja) * 2010-06-25 2011-12-29 パナソニック株式会社 集積回路、コンピュータシステム、制御方法
US8918664B2 (en) 2010-06-25 2014-12-23 Panasonic Corporation Integrated circuit, computer system, and control method, including power saving control to reduce power consumed by execution of a loop
JP5853216B2 (ja) * 2010-06-25 2016-02-09 パナソニックIpマネジメント株式会社 集積回路、コンピュータシステム、制御方法
JP2013541758A (ja) * 2010-09-24 2013-11-14 インテル・コーポレーション 命令フェッチユニットの電力を落とすことによりプロセッサ内の電力消費を低下させる方法および装置
JP2012221086A (ja) * 2011-04-06 2012-11-12 Fujitsu Semiconductor Ltd 情報処理装置
JP2014013565A (ja) * 2012-06-15 2014-01-23 Apple Inc ループバッファ学習
US9557999B2 (en) 2012-06-15 2017-01-31 Apple Inc. Loop buffer learning
US9753733B2 (en) 2012-06-15 2017-09-05 Apple Inc. Methods, apparatus, and processors for packing multiple iterations of loop in a loop buffer
US9471322B2 (en) 2014-02-12 2016-10-18 Apple Inc. Early loop buffer mode entry upon number of mispredictions of exit condition exceeding threshold

Also Published As

Publication number Publication date
US5809326A (en) 1998-09-15

Similar Documents

Publication Publication Date Title
JPH0991136A (ja) 信号処理装置
US5872985A (en) Switching multi-context processor and method overcoming pipeline vacancies
US5941981A (en) System for using a data history table to select among multiple data prefetch algorithms
US12455745B2 (en) Processor subroutine cache
KR100266424B1 (ko) 롬(rom)용량을 저감한 데이타 프로세서
US9632788B2 (en) Buffering instructions of a single branch, backwards short loop within a virtual loop buffer
US6088781A (en) Stride instruction for fetching data separated by a stride amount
US20010020267A1 (en) Pipeline processing apparatus with improved efficiency of branch prediction, and method therefor
US20040098540A1 (en) Cache system and cache memory control device controlling cache memory having two access modes
US7596683B2 (en) Switching processor threads during long latencies
US6959379B1 (en) Multiple execution of instruction loops within a processor without accessing program memory
JPH07281895A (ja) 分岐キャッシュ
KR20020090107A (ko) 데이터 처리 장치 내의 루프 버퍼를 이용한 루프 명령처리 장치
JP3794918B2 (ja) 復帰選択ビットを用いて分岐予測のタイプを分類する分岐予測
JP5159258B2 (ja) 演算処理装置
WO2001038970A2 (en) Buffer memories, methods and systems for buffering having seperate buffer memories for each of a plurality of tasks
JP2006522398A (ja) パイプライン型命令プロセッサにおけるバイパスの使用
US6654873B2 (en) Processor apparatus and integrated circuit employing prefetching and predecoding
JP3725547B2 (ja) 限定ラン分岐予測
JPH03129432A (ja) 分岐制御回路
US5197131A (en) Instruction buffer system for switching execution of current instruction to a branch or to a return from subroutine
EP0279953B1 (en) Computer system having mixed macrocode and microcode instruction execution
US8484445B2 (en) Memory control circuit and integrated circuit including branch instruction and detection and operation mode control of a memory
US6161171A (en) Apparatus for pipelining sequential instructions in synchronism with an operation clock
JP3146077B2 (ja) プロセッサ