JPH0540624A - 集積回路マイクロプロセツサの命令フエツチ装置 - Google Patents

集積回路マイクロプロセツサの命令フエツチ装置

Info

Publication number
JPH0540624A
JPH0540624A JP1451391A JP1451391A JPH0540624A JP H0540624 A JPH0540624 A JP H0540624A JP 1451391 A JP1451391 A JP 1451391A JP 1451391 A JP1451391 A JP 1451391A JP H0540624 A JPH0540624 A JP H0540624A
Authority
JP
Japan
Prior art keywords
instruction
branch
storage
prefetch
instructions
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
JP1451391A
Other languages
English (en)
Inventor
Sukenori Matsumoto
祐教 松本
Masamichi Izumida
正道 泉田
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.)
V M TECHNOL KK
VM TECHNOLOGY KK
Original Assignee
V M TECHNOL KK
VM TECHNOLOGY KK
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 V M TECHNOL KK, VM TECHNOLOGY KK filed Critical V M TECHNOL KK
Priority to JP1451391A priority Critical patent/JPH0540624A/ja
Publication of JPH0540624A publication Critical patent/JPH0540624A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】 【構成】 記憶装置8内には命令プリフェッチ開始時あ
るいは再開時における命令が保持される。分岐命令の実
行時には、この命令による分岐先の命令が記憶装置8内
に保持されている命令と一致するか否かが、命令量積算
装置9および分岐命令抽出装置11からの情報に基づき
判定装置12において判定される。一致する場合には、
記憶装置8内の命令が転送装置5を介して命令デコーダ
に転送されて実行される。 【効果】 分岐命令の実行時間を短縮でき、分岐に伴う
命令プリフェッチ動作の効率低下を抑制できる。よっ
て、マイクロプロセッサの処理速度を全体として高める
ことができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は集積回路マイクロプロセ
ッサの命令フェッチ装置に関するものである。更に詳し
くは、本発明は、命令プリフェッチ機構を備えた集積回
路マイクロプロセッサにおいて、分岐命令実行時におけ
る命令フェッチ動作を効率良く行う命令フェッチ装置に
関するものである。
【0002】
【従来の技術】マイクロプロセッサは、プログラムカウ
ンタで指定されたメモリの場所から命令フェッチをし
て、これを実行するという動作を繰り返し行う。かかる
動作速度の高速化を図る上で障害となることは、マイク
ロプロセッサの処理速度に比べて、命令を記憶している
主記憶用半導体メモリの動作速度が格段に遅く、命令の
読み出しに時間がかかるということである。このような
弊害を回避するための技術としてキャッシュメモリと呼
ばれる高速、低容量の一時記憶装置を利用する方法が知
られている。この方法は、プログラムのメモリに対する
参照の局所性を利用して、参照頻度の高い部分をキャッ
シュメモリに格納しておき、ここから命令の読み取りを
行い、動作速度の遅い主記憶装置に対するアクセスを極
力回避するものである。
【0003】一方、主記憶装置へのアクセスに起因して
生ずる動作速度の低下を回避するための別の技術とし
て、命令プリフェッチと呼ばれるものが知られている。
この命令プリフェッチは次のようなものである。マイク
ロプロセッサの主記憶装置へのアクセスは、データの読
み出し、データの書込み、命令の読み出しの3つの動作
に分類することができる。これらのうち、データの読み
出しおよび書き込みは命令の実行によって行われ、これ
らの読み出しおよび書き込み動作が完了して当該命令の
実行が完結する。ここに、命令の全てがデータの読み出
し、書込み動作を要求するわけではなく、これらの動作
を必要としない命令も多い。これに対して、命令の読み
出し動作は全ての命令が必要とする。命令の読み出し動
作は、その実行動作よりも時間的に先行していれば、そ
の読み出し時期はいくら早くても問題はない。この点に
鑑みて案出された命令プリフェッチとは、命令の実行に
伴うデータの読み出し、書込み動作時以外における、マ
イクロプロセッサと主記憶装置の間のバスにおける空き
時間を利用して、命令実行に先行してこの命令の読み出
し動作を予め行っておくものである。
【0004】これらのキャッシュメモリを利用する方法
および命令プリフェッチを行う方法は、それぞれ単独に
あるいは併用して採用されている。
【0005】
【発明が解決しようとする課題】上記のキャッシュメモ
リ装置は大規模なハードウエアを必要とするので、比較
的小規模な集積回路マイクロプロセッサに組み込むこと
は現実的ではない。このために、通常は命令プリフェッ
チ装置のみがこのような小規模のマイクロプロセッサに
組み込まれる。しかし、命令プリフェッチは、命令が順
次に実行される場合には効率的であるが、命令分岐を行
う場合には、プリフェッチを一旦中断して分岐後に再開
する必要があるので、効率が低下する。
【0006】特に、条件分岐の場合には、条件分岐命令
後のフェッチとして2種類以上の経路が発生するので、
効率の低下を回避するために、分岐予測装置、小規模な
キャッシュメモリ装置等を命令プリフェッチ装置に付設
する必要がある。
【0007】このような機構を付設すると、ハードウエ
ア規模が増大するので、比較的小規模な集積回路マイク
ロプロセッサに対してこのような機構を搭載することは
実用的ではない。
【0008】このように、比較的小規模のマイクロプロ
セッサにおいて、そこに接続される主記憶装置の遅い動
作速度に起因する処理速度の低下を抑制するためには、
従来の方法は適していない。
【0009】本発明の課題は、この点に鑑みて、比較的
小規模なマイクロプロセッサを対象として、命令分岐時
における動作を短時間で行うことができ、命令プリフェ
ッチ装置の効率低下を抑制することの可能な命令フェッ
チ装置を実現することにある。
【0010】
【課題を解決するための手段】上記の課題を解決するた
めに、本発明においては、一般的なプログラムにおいて
所謂ループを形成する命令の発生頻度が高いことに着目
して、特に発生頻度の高い後方参照型式のPCリラティ
ブ分岐命令による分岐先の命令を予め記憶しておき、該
当する後方参照型式のPCリラティブ分岐命令が発生し
たときには直ちに記憶した命令に制御を移すようにし、
これによって分岐命令の実行時間の短縮化を実現してい
る。
【0011】詳細に説明すると、本発明による集積回路
マイクロプロセッサの命令フェッチ装置は、命令プリフ
ェッチを行うプリフェッチ制御手段と、このプリフェッ
チ制御手段による命令プリフェッチ開始時および再開時
の少なくともいずれかにおいてフェッチされる命令の少
なくとも一つを記憶する記憶手段と、この記憶手段によ
って記憶された命令のプリフェッチ時以降においてフェ
ッチした命令量を積算する積算手段と、実行される分岐
命令を解釈して、当該分岐命令のオペランドを抽出する
抽出手段と、この抽出手段によって抽出されたオペラン
ドおよび積算手段において積算された命令量に基づき、
前記分岐命令の実行による分岐先の命令が記憶手段によ
って記憶されているフェッチ済みの命令であるか否かを
判定する判定手段と、この判定手段によって肯定判定が
得られた場合には、記憶手段によって記憶されているフ
ェッチ済みの命令を、実行すべき命令として取り出す命
令転送手段とを有することを特徴としている。
【0012】
【作用】命令プリフェッチ開始時あるいは再開時におい
てフェッチされた命令は、記憶手段によって保持され
る。この後に、プリフェッチされた命令量は積算手段に
よって積算される。分岐命令の実行時には、抽出手段に
よってこの分岐命令のオペランドが抽出され、判定手段
によって、この分岐命令の実行による分岐先の命令が、
記憶手段に保持されている命令であるか否かが判定され
る。記憶手段に保持されている命令と同一であることが
判明した場合には、この記憶手段から読み出された命令
が実行される。
【0013】
【実施例】以下に、図1を参照して本発明の実施例を説
明する。
【0014】図1には、CMOS構造の集積回路マイク
ロプロセッサにおける命令フェッチ装置の概略を示して
ある。本例のマイクロプロセッサ1は、例えば、内部に
おいて命令およびデータを32ビット単位で扱うもので
あり、これと主記憶装置2とを接続している外部データ
バス3は16ビットとなっている。
【0015】このため、これらの間に配置されたデータ
バス装置4は、外部の処理単位である16ビットと内部
の処理単位である32ビットとの整合を取ると共に、外
部バスデータを駆動して主記憶装置の読み書きを行う。
主記憶装置から読み取られた命令は、転送装置5を介し
て直ちに命令デコーダ6へ送られてデコードされる。
【0016】7はプリフェッチ制御装置であり、データ
の読み出しおよび書込み動作と競合しないようにデータ
バス装置4に命令のプリフェッチ動作を行わせるもので
あり、一般的に使用されるこの種の装置と同一の構成を
有している。このプリフェッチ制御装置の制御下に命令
フェッチが開始あるいは再開された時には、この時の命
令は転送装置5を介して命令デコーダ6の側に供給され
ると共に、記憶装置8にも供給されてここに保持され
る。この記憶装置8は、処理の1単位分である32ビッ
トのスタティック型メモリである。この記憶装置の容量
および形式はこれ以外であっても構わない。一方、上記
のプリフェッチ制御装置の制御の下に行われる命令プリ
フェッチ動作の回数は、命令量積算装置9において積算
される。この命令量積算装置9は、例えば8ビットカウ
ンタ回路を用いて構成することができるが、その他の構
成の演算積算回路とすることも勿論可能である。
【0017】次に、11は分岐命令抽出装置であり、命
令デコーダ6に送られる命令を常時監視しており、命令
が分岐命令であった場合には、この分岐命令のオペラン
ドを抽出する。本例においては上述のように命令量積算
装置9が8ビット構成であるので、この抽出装置におけ
るオペランドの抽出分も8ビットとしてある。抽出ビッ
ト数は命令量積算装置のビット数に応じて変更される。
【0018】12は判定装置であり、ここには上記の命
令量積算装置9における積算値と抽出装置11で抽出さ
れたオペランドが供給される。判定装置12では、これ
らの供給された値を比較して、分岐命令の分岐先が記憶
装置8に保持されている命令に一致するか否かを判定す
る。一致する場合には、その旨をプリフェッチ制御装置
7および転送装置5に通知する。転送装置5は、この通
知を受けると、分岐命令の実行中に、記憶装置8に保持
されている命令を命令デコーダ6に転送する。分岐命令
が条件分岐の場合には、分岐の確定後に、記憶装置8に
保持されている命令が命令デコーダ6に転送される。プ
リフェッチ制御装置7は、記憶装置8に保持されている
命令以降から命令のプリフェッチ動作を再開する。
【0019】本例において、例えば、実行プログラムに
おける発生頻度の最も高い分岐命令の分岐先における命
令が記憶装置に保持される。このようにすると、かかる
分岐命令の実行時には、動作速度の遅い主記憶装置にア
クセスすることなく、この分岐命令による分岐先の命令
が記憶装置から命令デコーダの側に転送される。よって
分岐命令を短時間に実行することが可能となり、分岐に
伴って発生する命令プリフェッチ動作の効率低下を抑制
することができる。
【0020】
【発明の効果】以上説明したように、本発明において
は、命令プリフェッチ開始時あるいは再開時における命
令を主記憶装置とは別の記憶装置に保持しておき、分岐
命令の実行時に、この分岐命令による分岐先の命令が記
憶装置内に保持されている場合には、この記憶装置内か
ら命令を読み出して実行するようにしている。従って、
分岐命令の実行時間を短縮化できるので、分岐命令の発
生に伴う命令プリフェッチ動作の効率低下を抑制でき、
マイクロプロセッサの全体として処理速度を高めること
ができる。
【図面の簡単な説明】
【図1】本発明の実施例である集積回路マイクロプロセ
ッサの主要部分を示す概略ブロック図である。
【符号の説明】
1・・・マイクロプロセッサ 2・・・主記憶装置 3・・・データバス 4・・・データバス装置 5・・・転送装置 6・・・命令デコーダ 7・・・プリフェッチ制御装置 8・・・記憶装置 9・・・命令量積算装置 11・・分岐命令抽出装置 12・・判定装置

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 命令プリフェッチを行うプリフェッチ制
    御手段と、このプリフェッチ制御手段による命令プリフ
    ェッチ開始時および再開時の少なくともいずれかにおい
    てフェッチされる命令の少なくとも一つを記憶する記憶
    手段と、この記憶手段によって記憶された命令のプリフ
    ェッチ時以降においてフェッチした命令量を積算する積
    算手段と、実行される分岐命令を解釈して、当該分岐命
    令のオペランドを抽出する抽出手段と、この抽出手段に
    よって抽出されたオペランドおよび前記積算手段におい
    て積算された命令量に基づき、前記分岐命令の実行によ
    る分岐先の命令が前記記憶手段によって記憶されている
    フェッチ済みの命令であるか否かを判定する判定手段
    と、この判定手段によって肯定判定が得られた場合に
    は、前記記憶手段によって記憶されているフェッチ済み
    の命令を、実行すべき命令として取り出す命令転送手段
    とを有することを特徴とする集積回路マイクロプロセッ
    サの命令フェッチ装置。
JP1451391A 1991-02-05 1991-02-05 集積回路マイクロプロセツサの命令フエツチ装置 Pending JPH0540624A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1451391A JPH0540624A (ja) 1991-02-05 1991-02-05 集積回路マイクロプロセツサの命令フエツチ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1451391A JPH0540624A (ja) 1991-02-05 1991-02-05 集積回路マイクロプロセツサの命令フエツチ装置

Publications (1)

Publication Number Publication Date
JPH0540624A true JPH0540624A (ja) 1993-02-19

Family

ID=11863166

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1451391A Pending JPH0540624A (ja) 1991-02-05 1991-02-05 集積回路マイクロプロセツサの命令フエツチ装置

Country Status (1)

Country Link
JP (1) JPH0540624A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6441671B1 (en) * 2000-01-25 2002-08-27 Maxim Integrated Products, Inc. Digital trim capacitor programming
KR100465250B1 (ko) * 2001-05-11 2005-01-13 미쓰비시덴키 가부시키가이샤 마이크로프로세서

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6441671B1 (en) * 2000-01-25 2002-08-27 Maxim Integrated Products, Inc. Digital trim capacitor programming
KR100465250B1 (ko) * 2001-05-11 2005-01-13 미쓰비시덴키 가부시키가이샤 마이크로프로세서

Similar Documents

Publication Publication Date Title
US8171266B2 (en) Look-ahead load pre-fetch in a processor
US6687812B1 (en) Parallel processing apparatus
JP2007219581A (ja) メモリコントローラおよびこれを搭載する電子機器
JPH05233271A (ja) データプロセッサ
US8943301B2 (en) Storing branch information in an address table of a processor
US6654873B2 (en) Processor apparatus and integrated circuit employing prefetching and predecoding
US9395985B2 (en) Efficient central processing unit (CPU) return address and instruction cache
JPH0540624A (ja) 集積回路マイクロプロセツサの命令フエツチ装置
JPH10214188A (ja) プロセッサの命令供給方法及び装置
JP2002535749A (ja) 複数の命令ソースからの命令を実行するプロセッサおよび方法
JP4413663B2 (ja) 命令キャッシュシステム
JP2005275735A (ja) Cpuと記憶装置の間に配置される制御装置及びチップセット
KR100282225B1 (ko) 데이타 캐쉬 메모리의 제어장치
JPH02100740A (ja) キャッシュ・メモリユニットのブロック・ロード動作方式
JP2902847B2 (ja) 自己変更コード実行方式
JP2000357090A (ja) マイクロコンピュータおよびキャッシュ制御方法
KR19990068872A (ko) 데이타 캐쉬 메모리의 제어장치
JP2000242507A (ja) プロセッサ
JPS63163532A (ja) マイクロプロセツサ
JPS62151936A (ja) マイクロプロセツサに内蔵されるキヤツシユ回路
KR970062891A (ko) 연산 실행 방법 및 연산 실행 장치
JPH08286914A (ja) メモリ制御装置
JPH04255995A (ja) 命令キャッシュ
JPS6232507B2 (ja)
JPH07219838A (ja) データ先読み制御装置