JPH06124205A - 命令プリフェッチ装置 - Google Patents
命令プリフェッチ装置Info
- Publication number
- JPH06124205A JPH06124205A JP4272695A JP27269592A JPH06124205A JP H06124205 A JPH06124205 A JP H06124205A JP 4272695 A JP4272695 A JP 4272695A JP 27269592 A JP27269592 A JP 27269592A JP H06124205 A JPH06124205 A JP H06124205A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- instruction data
- data
- prefetch
- task
- 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
Links
Landscapes
- Advance Control (AREA)
Abstract
(57)【要約】
【目的】 シングルタスク実行時に条件分岐命令を実行
する際に、条件成立時および条件不成立時の命令データ
を先取りすることができ、またマルチタスク処理時に
は、現在実行中のタスクの命令データおよび次に実行さ
れるタスクの命令データが先取りすることができる命令
プリフェッチ装置を提供する。 【構成】 第一の命令先取り実行部9と第二の命令先取
り実行部10を備えることにより、条件分岐命令実行時
には分岐先の命令データを先取りすることができ、ま
た、マルチタスク処理時には次に実行するタスクの命令
データを先取りすることができるため、命令データの先
取りおよび命令データ解読装置11への命令データの供
給のための不要なサイクルが減少し、高速に命令実行が
行える。
する際に、条件成立時および条件不成立時の命令データ
を先取りすることができ、またマルチタスク処理時に
は、現在実行中のタスクの命令データおよび次に実行さ
れるタスクの命令データが先取りすることができる命令
プリフェッチ装置を提供する。 【構成】 第一の命令先取り実行部9と第二の命令先取
り実行部10を備えることにより、条件分岐命令実行時
には分岐先の命令データを先取りすることができ、ま
た、マルチタスク処理時には次に実行するタスクの命令
データを先取りすることができるため、命令データの先
取りおよび命令データ解読装置11への命令データの供
給のための不要なサイクルが減少し、高速に命令実行が
行える。
Description
【0001】
【産業上の利用分野】本発明は、条件分岐命令実行時に
は、分岐条件不成立時と分岐条件成立時の命令データを
先取りし、またマルチタスク処理時には、現在実行中の
タスクの命令データと次に実行するタスクの命令データ
を先取りすることが可能な命令プリフェッチ装置に関す
るものである。
は、分岐条件不成立時と分岐条件成立時の命令データを
先取りし、またマルチタスク処理時には、現在実行中の
タスクの命令データと次に実行するタスクの命令データ
を先取りすることが可能な命令プリフェッチ装置に関す
るものである。
【0002】
【従来の技術】従来より、条件分岐命令実行時に命令デ
ータを先取りする場合には、命令データを先取りし、格
納しておくための命令先取りキューを1組しか備えてな
かったため、分岐条件不成立時の命令データだけしか先
取りできないため、分岐条件不成立の場合は先取りされ
た命令データを使用できるが、分岐条件成立の場合は再
度、分岐条件成立時の命令データを格納する必要があっ
た。
ータを先取りする場合には、命令データを先取りし、格
納しておくための命令先取りキューを1組しか備えてな
かったため、分岐条件不成立時の命令データだけしか先
取りできないため、分岐条件不成立の場合は先取りされ
た命令データを使用できるが、分岐条件成立の場合は再
度、分岐条件成立時の命令データを格納する必要があっ
た。
【0003】また、現在実行中のタスクの命令データの
先取りは可能であったがマルチタスク処理を行なう場合
にはタスク切り換え時に割り込みをかけ実行していたタ
スクの再実行のために、実行していたタスクの再実行時
の命令データのポインタを記憶装置に退避させ、その
後、次に実行するタスクのスタートアドレスおよび命令
データを格納する必要があり、オバーヘッドが大きかっ
た。
先取りは可能であったがマルチタスク処理を行なう場合
にはタスク切り換え時に割り込みをかけ実行していたタ
スクの再実行のために、実行していたタスクの再実行時
の命令データのポインタを記憶装置に退避させ、その
後、次に実行するタスクのスタートアドレスおよび命令
データを格納する必要があり、オバーヘッドが大きかっ
た。
【0004】
【発明が解決しようとする課題】しかしながら、上記従
来の構成では、条件分岐命令実行時には、分岐先の命令
データの先取りができず、条件分岐命令実行時に、条件
が成立して分岐する場合は、命令データの再格納が必要
である。
来の構成では、条件分岐命令実行時には、分岐先の命令
データの先取りができず、条件分岐命令実行時に、条件
が成立して分岐する場合は、命令データの再格納が必要
である。
【0005】またマルチタスク処理時には、タスク切り
換え時に、割込みをかけ、実行中のタスクの再実行時の
命令データのポインタを記憶装置へ退避した後、次に実
行するタスクの命令データの格納を行なう必要があり、
次に実行するタスクの命令データの先取りが行えず、タ
スク切り換え時に命令解読装置への命令データの供給に
不要な空きサイクルが生じていた。
換え時に、割込みをかけ、実行中のタスクの再実行時の
命令データのポインタを記憶装置へ退避した後、次に実
行するタスクの命令データの格納を行なう必要があり、
次に実行するタスクの命令データの先取りが行えず、タ
スク切り換え時に命令解読装置への命令データの供給に
不要な空きサイクルが生じていた。
【0006】本発明は上記従来の課題を解決するもの
で、条件分岐命令実行時には分岐する場合と分岐しない
場合の命令データの先取りができ、またマルチタスク処
理時には現在実行中のタスクの命令データと次に実行す
る命令データの先取りができる命令プリフェッチ装置を
提供することを目的とする。
で、条件分岐命令実行時には分岐する場合と分岐しない
場合の命令データの先取りができ、またマルチタスク処
理時には現在実行中のタスクの命令データと次に実行す
る命令データの先取りができる命令プリフェッチ装置を
提供することを目的とする。
【0007】
【課題を解決するための手段】この目的を達成するため
に本発明の命令プリフェッチ装置は、先取りした命令デ
ータを格納しておくための命令先取りキューを2組備
え、それに対応して、前記命令先取りキューへ書き込み
アドレスを指示する第一の手段と、前記命令先取りキュ
ーへ読み出しアドレスを指示する第二の手段と、前記命
令先取りキューの有効バイト数を示す第三の手段をそれ
ぞれ2組備え、 (1)シングルタスク実行時に条件分岐命令を実行する
際には一方の命令先取りキューに分岐条件不成立つまり
分岐しない場合の命令データを先取りし、他方の命令先
取りキューに分岐条件成立時つまり分岐する場合の命令
データを先取りする。
に本発明の命令プリフェッチ装置は、先取りした命令デ
ータを格納しておくための命令先取りキューを2組備
え、それに対応して、前記命令先取りキューへ書き込み
アドレスを指示する第一の手段と、前記命令先取りキュ
ーへ読み出しアドレスを指示する第二の手段と、前記命
令先取りキューの有効バイト数を示す第三の手段をそれ
ぞれ2組備え、 (1)シングルタスク実行時に条件分岐命令を実行する
際には一方の命令先取りキューに分岐条件不成立つまり
分岐しない場合の命令データを先取りし、他方の命令先
取りキューに分岐条件成立時つまり分岐する場合の命令
データを先取りする。
【0008】(2)また、マルチタスク処理時には一方
の命令先取りキューに実行中のタスクの命令データを先
取りし、他方の命令先取りキューに次に実行するタスク
の命令データを先取りすることが可能なように構成した
ものである。
の命令先取りキューに実行中のタスクの命令データを先
取りし、他方の命令先取りキューに次に実行するタスク
の命令データを先取りすることが可能なように構成した
ものである。
【0009】
【作用】この構成によって、条件分岐命令実行時には、
分岐先の命令データを先取りすることができ、また、マ
ルチタスク処理時には、次に実行するタスクの命令デー
タの先取りが行えるため、従来のような命令解読装置へ
の命令データの供給に不要な空きサイクルがなくなっ
た。
分岐先の命令データを先取りすることができ、また、マ
ルチタスク処理時には、次に実行するタスクの命令デー
タの先取りが行えるため、従来のような命令解読装置へ
の命令データの供給に不要な空きサイクルがなくなっ
た。
【0010】
【実施例】以下、本発明の一実施例について、図面を参
照しながら説明する。
照しながら説明する。
【0011】図1は本発明の一実施例における命令プリ
フェッチ装置および命令データ解読装置の構成図を示す
ものである。
フェッチ装置および命令データ解読装置の構成図を示す
ものである。
【0012】図1において、1,2は記憶装置(図示せ
ず)から先取りした命令データを格納しておくための第
一の命令先取りキュー及び第二の命令先取りキュー、
3,4は記憶装置に先取りする命令データのアドレス1
02を指示し、同時に前記第一の命令先取りキュー1の
書き込みアドレス103、および前記第二の命令先取り
キュー2の書き込みアドレス104(書き込みアドレス
103,104は前記第一の命令先取りキュー1、第二
の命令先取りキュー2がそれぞれ8バイトで構成されて
おり、1アドレス1バイトとすると、前記アドレス10
0,101の下位3ビットを使用)を指示する第一の書
き込みアドレスカウンタ及び第二の書き込みアドレスカ
ウンタ、5,6は、現在実行中の命令のポインタを示
し、同時に前記第一の命令先取りキュー1の読み出しア
ドレス125、および前記第二の命令先取りキュー2の
読み出しアドレス126(読み出しアドレス125,1
26は、前記第一の命令先取りキュー1、第二の命令先
取りキュー2がそれぞれ8バイトで構成されており、1
アドレス1バイトとすると、現在実行中の命令のポイン
タ113,114の下位3ビットを使用)、7,8は前
記第一の命令先取りキュー1、第二の命令先取りキュー
2の有効バイト数105,106を示し、また、前記第
一の命令先取りキュー1、第二の命令先取りキュー2に
書き込み許可信号および前記第一の書き込みアドレスカ
ウンタ3、第二の書き込みアドレスカウンタ4に記憶装
置へのアドレス出力許可信号107,108を出力する
第一の有効バイト数カウンタ、第二の有効バイト数カウ
ンタ、9は、前記第一の命令先取りキュー1、第一の書
き込みアドレスカウンタ3、第一の読み出しアドレスカ
ウンタ5、第一の有効バイト数カウンタ7で構成された
第一の命令先取り実行部、10は前記第二の命令先取り
キュー2、第二の書き込みアドレスカウンタ4、第二の
読み出しアドレスカウンタ6、第二の有効バイト数カウ
ンタ8で構成された第二の命令先取り実行部である。
ず)から先取りした命令データを格納しておくための第
一の命令先取りキュー及び第二の命令先取りキュー、
3,4は記憶装置に先取りする命令データのアドレス1
02を指示し、同時に前記第一の命令先取りキュー1の
書き込みアドレス103、および前記第二の命令先取り
キュー2の書き込みアドレス104(書き込みアドレス
103,104は前記第一の命令先取りキュー1、第二
の命令先取りキュー2がそれぞれ8バイトで構成されて
おり、1アドレス1バイトとすると、前記アドレス10
0,101の下位3ビットを使用)を指示する第一の書
き込みアドレスカウンタ及び第二の書き込みアドレスカ
ウンタ、5,6は、現在実行中の命令のポインタを示
し、同時に前記第一の命令先取りキュー1の読み出しア
ドレス125、および前記第二の命令先取りキュー2の
読み出しアドレス126(読み出しアドレス125,1
26は、前記第一の命令先取りキュー1、第二の命令先
取りキュー2がそれぞれ8バイトで構成されており、1
アドレス1バイトとすると、現在実行中の命令のポイン
タ113,114の下位3ビットを使用)、7,8は前
記第一の命令先取りキュー1、第二の命令先取りキュー
2の有効バイト数105,106を示し、また、前記第
一の命令先取りキュー1、第二の命令先取りキュー2に
書き込み許可信号および前記第一の書き込みアドレスカ
ウンタ3、第二の書き込みアドレスカウンタ4に記憶装
置へのアドレス出力許可信号107,108を出力する
第一の有効バイト数カウンタ、第二の有効バイト数カウ
ンタ、9は、前記第一の命令先取りキュー1、第一の書
き込みアドレスカウンタ3、第一の読み出しアドレスカ
ウンタ5、第一の有効バイト数カウンタ7で構成された
第一の命令先取り実行部、10は前記第二の命令先取り
キュー2、第二の書き込みアドレスカウンタ4、第二の
読み出しアドレスカウンタ6、第二の有効バイト数カウ
ンタ8で構成された第二の命令先取り実行部である。
【0013】11は命令データを解読し、解読情報信号
を出力する命令解読装置(命令プリフェッチ装置には含
まない)、12は前記第一の書き込みアドレスカウンタ
3の出力するアドレス109と、前記第二の書き込みア
ドレスカウンタ4の出力するアドレス110とを選択す
るマルチプレクサ、13は前記第一の有効バイト数カウ
ンタ7が出力する有効バイト数111と前記第二の有効
バイト数カウンタ8が出力する有効バイト数112とを
選択するためのマルチプレクサ、14は前記第一の読み
出しアドレスカウンタ5が出力する実行中の命令のポイ
ンタ113と前記第二の読み出しアドレスカウンタ6が
出力する実行中の命令のポインタ114とを選択するマ
ルチプレクサ、15は、前記第一の命令先取りキュー1
が出力する命令データ115と前記第二の命令先取りキ
ュー2が出力する命令データ116とを選択するための
マルチプレクサ、16は前記第一の書き込みアドレスカ
ウンタ3が記憶装置に対して出力する前記アドレス10
0と前記第二の書き込みアドレスカウンタ4が記憶装置
に対して出力する前記アドレス101とを選択するマル
チプレクサ、17は、前記マルチプレクサ12の出力1
17と、先取りした命令データのバイト数118を加算
するための加算器であり、前記加算器17の出力119
によって前記第一の書き込みアドレスカウンタ3あるい
は第二の書き込みアドレスカウンタ4は更新される。1
8は前記マルチプレクサ13の出力120と、解読の終
了した命令のバイト数127を減算するための減算器、
19は前記減算器の出力121と先取りした命令データ
のバイト数118を加算するための加算器であり、前記
加算器19の出力122によって前記第一の有効バイト
数カウンタ7あるいは第二の有効バイト数カウンタ8は
更新される。
を出力する命令解読装置(命令プリフェッチ装置には含
まない)、12は前記第一の書き込みアドレスカウンタ
3の出力するアドレス109と、前記第二の書き込みア
ドレスカウンタ4の出力するアドレス110とを選択す
るマルチプレクサ、13は前記第一の有効バイト数カウ
ンタ7が出力する有効バイト数111と前記第二の有効
バイト数カウンタ8が出力する有効バイト数112とを
選択するためのマルチプレクサ、14は前記第一の読み
出しアドレスカウンタ5が出力する実行中の命令のポイ
ンタ113と前記第二の読み出しアドレスカウンタ6が
出力する実行中の命令のポインタ114とを選択するマ
ルチプレクサ、15は、前記第一の命令先取りキュー1
が出力する命令データ115と前記第二の命令先取りキ
ュー2が出力する命令データ116とを選択するための
マルチプレクサ、16は前記第一の書き込みアドレスカ
ウンタ3が記憶装置に対して出力する前記アドレス10
0と前記第二の書き込みアドレスカウンタ4が記憶装置
に対して出力する前記アドレス101とを選択するマル
チプレクサ、17は、前記マルチプレクサ12の出力1
17と、先取りした命令データのバイト数118を加算
するための加算器であり、前記加算器17の出力119
によって前記第一の書き込みアドレスカウンタ3あるい
は第二の書き込みアドレスカウンタ4は更新される。1
8は前記マルチプレクサ13の出力120と、解読の終
了した命令のバイト数127を減算するための減算器、
19は前記減算器の出力121と先取りした命令データ
のバイト数118を加算するための加算器であり、前記
加算器19の出力122によって前記第一の有効バイト
数カウンタ7あるいは第二の有効バイト数カウンタ8は
更新される。
【0014】20は、前記マルチプレクサ14の出力1
23と解読の終了した命令のバイト数127を加算する
ための加算器であり、前記加算器20の出力124によ
って前記第一の読み出しアドレスカウンタ5あるいは第
二の読み出しアドレスカウンタ6は更新される。21は
前記マルチプレクサ12,13,14,15,16の制
御および、前記加算器17,19,20、および減算器
18への入力を与える命令先取り制御装置である。
23と解読の終了した命令のバイト数127を加算する
ための加算器であり、前記加算器20の出力124によ
って前記第一の読み出しアドレスカウンタ5あるいは第
二の読み出しアドレスカウンタ6は更新される。21は
前記マルチプレクサ12,13,14,15,16の制
御および、前記加算器17,19,20、および減算器
18への入力を与える命令先取り制御装置である。
【0015】以上のように構成された本実施例の命令プ
リフェッチ装置について、以下、(1)シングルタスク
処理時の条件分岐命令以外の命令実行時、(2)シング
ルタスク処理時の条件分岐命令実行時、(3)マルチタ
スク処理時の3つの場合に分けて動作を説明する。
リフェッチ装置について、以下、(1)シングルタスク
処理時の条件分岐命令以外の命令実行時、(2)シング
ルタスク処理時の条件分岐命令実行時、(3)マルチタ
スク処理時の3つの場合に分けて動作を説明する。
【0016】(1)条件分岐命令およびマルチタスク処
理以外の場合の命令の先取りについて説明する。
理以外の場合の命令の先取りについて説明する。
【0017】この場合、前記第二の命令先取り実行部1
0は使用せず、前記第一の命令先取り実行部9を使用す
るため、前記命令先取り制御装置21は、前記マルチプ
レクサ12,13,14,15,16に前記第一の命令
先取り実行部9の出力するデータを選択するように、セ
レクト信号128を出力し、また前記、加算器17,1
9,20の出力によって、前記第一の書き込みアドレス
カウンタ3、第一の有効バイト数カウンタ7、第一の読
み出しアドレスカウンタ5が更新されるものとする。
0は使用せず、前記第一の命令先取り実行部9を使用す
るため、前記命令先取り制御装置21は、前記マルチプ
レクサ12,13,14,15,16に前記第一の命令
先取り実行部9の出力するデータを選択するように、セ
レクト信号128を出力し、また前記、加算器17,1
9,20の出力によって、前記第一の書き込みアドレス
カウンタ3、第一の有効バイト数カウンタ7、第一の読
み出しアドレスカウンタ5が更新されるものとする。
【0018】また、前記第一の命令先取りキュー1への
書き込み許可信号であり、記憶装置へのアドレス出力許
可信号である107の出力される条件(以下、命令先取
り許可条件)は、第一の命令先取りキュー1の構成バイ
ト数−第一の有効バイト数カウンタ7≧先取りする命令
データのバイト数とする。
書き込み許可信号であり、記憶装置へのアドレス出力許
可信号である107の出力される条件(以下、命令先取
り許可条件)は、第一の命令先取りキュー1の構成バイ
ト数−第一の有効バイト数カウンタ7≧先取りする命令
データのバイト数とする。
【0019】まず、命令のスタート時は、前記第一の有
効バイト数カウンタ7は零であるため、前記書き込み許
可信号、アドレス出力許可信号107が出力されてお
り、前記第一の書き込みアドレスカウンタ3と第一の読
み出しアドレスカウンタ5に記憶装置からスタートアド
レス129が格納され、前記第一の書き込みアドレスカ
ウンタ3は、アドレス100(前記スタートアドレス1
29と同じ)を出力することにより、記憶装置に先取り
する命令データのアドレス102が指示され、前記第一
の書き込みアドレスカウンタが指示する書き込みアドレ
ス103に従って前記第一の命令先取りキュー1に命令
データ130が格納され、前記命令先取り制御装置は、
先取りした命令データのバイト数118を出力し、前記
第一の書き込みアドレスカウンタ3が出力するアドレス
(スタートアドレス129と同じ)109すなわちマル
チプレクサの出力117と加算器17で加算され、前記
第一の書き込みアドレスカウンタ3は更新され、同様に
前記第一の有効バイト数カウンタ7も加算器19の出力
により更新される。そして、前記第一の読み出しアドレ
スカウンタ5が指示する読み出しアドレス125に従っ
て命令データ115を出力することにより、命令データ
解読装置11は命令データ119を受け取り、命令の解
読を開始し、解読の終了した命令データについてはその
バイト数を示す信号131を前記命令先取り制御装置2
1に送ることにより前記命令先取り制御装置21は前記
加算器20と前記減算器18に対して解読の終了した命
令データのバイト数128を出力することにより、前記
第一の読み出しアドレスカウンタ5すなわち現在実行中
の命令のポインタは更新され、また前記第一の有効バイ
ト数カウンタ7も更新される。そして、1つの命令の解
読および実行が終了したときに命令解読終了信号132
が出力され、前記命令先取り制御装置21は命令データ
読み出し許可信号133を前記第一の命令先取りキュー
1に指示し、前記読み出しアドレス125に従って命令
データの読み出しを行なう。また、前記命令先取り許可
条件が成立しているときは常に命令データの先取りがで
きる。
効バイト数カウンタ7は零であるため、前記書き込み許
可信号、アドレス出力許可信号107が出力されてお
り、前記第一の書き込みアドレスカウンタ3と第一の読
み出しアドレスカウンタ5に記憶装置からスタートアド
レス129が格納され、前記第一の書き込みアドレスカ
ウンタ3は、アドレス100(前記スタートアドレス1
29と同じ)を出力することにより、記憶装置に先取り
する命令データのアドレス102が指示され、前記第一
の書き込みアドレスカウンタが指示する書き込みアドレ
ス103に従って前記第一の命令先取りキュー1に命令
データ130が格納され、前記命令先取り制御装置は、
先取りした命令データのバイト数118を出力し、前記
第一の書き込みアドレスカウンタ3が出力するアドレス
(スタートアドレス129と同じ)109すなわちマル
チプレクサの出力117と加算器17で加算され、前記
第一の書き込みアドレスカウンタ3は更新され、同様に
前記第一の有効バイト数カウンタ7も加算器19の出力
により更新される。そして、前記第一の読み出しアドレ
スカウンタ5が指示する読み出しアドレス125に従っ
て命令データ115を出力することにより、命令データ
解読装置11は命令データ119を受け取り、命令の解
読を開始し、解読の終了した命令データについてはその
バイト数を示す信号131を前記命令先取り制御装置2
1に送ることにより前記命令先取り制御装置21は前記
加算器20と前記減算器18に対して解読の終了した命
令データのバイト数128を出力することにより、前記
第一の読み出しアドレスカウンタ5すなわち現在実行中
の命令のポインタは更新され、また前記第一の有効バイ
ト数カウンタ7も更新される。そして、1つの命令の解
読および実行が終了したときに命令解読終了信号132
が出力され、前記命令先取り制御装置21は命令データ
読み出し許可信号133を前記第一の命令先取りキュー
1に指示し、前記読み出しアドレス125に従って命令
データの読み出しを行なう。また、前記命令先取り許可
条件が成立しているときは常に命令データの先取りがで
きる。
【0020】このように、前記第一の命令先取りキュー
1への書き込みおよび読み出しを行うことにより効率よ
く命令の先取りができる。
1への書き込みおよび読み出しを行うことにより効率よ
く命令の先取りができる。
【0021】(2)次に条件分岐命令実行時の、条件成
立時と条件不成立時の命令データの先取りについて説明
する。
立時と条件不成立時の命令データの先取りについて説明
する。
【0022】また前記第一の命令先取り実行部9と第二
の命令先取り実行部10は機能は全く同じであるため、
前記第二の命令先取り実行部10での命令先取りの詳細
は省略する。条件分岐命令を実行する以前の命令は、前
述(1)の通りに前記第一の命令先取り実行部9を使用
して命令の先取りおよび読み出しが行われ、条件分岐命
令実行時は、条件不成立時すなわち分岐しない場合の命
令データは前記第二の命令先取りキュー2に先取りし条
件成立時すなわち分岐する場合は、前記命令データ解読
装置11が解読した命令データを条件分岐命令だと判断
すると、分岐先の命令データのアドレス134を解読し
て出力し、前記第二の書き込みアドレスカウンタ4と第
二の読み出しアドレスカウンタ6に分岐先のアドレス1
34が格納され、前記第一の命令先取り実行部と同様に
して記憶装置から命令データ135が前記第二の命令先
取りキュー2に格納される。そして、条件分岐命令実行
終了後、前記命令データ解読装置11は命令先取り制御
装置に結果フラグ136を出力し、条件不成立の場合
は、引き続き前記第一の命令先取り実行部9を使用し
て、命令の先取りを続けていくが、条件成立の場合、前
記命令先取り制御装置21は前記第二の命令先取り実行
部10の出力するデータを選択するように前記セレクト
信号128を出力する。
の命令先取り実行部10は機能は全く同じであるため、
前記第二の命令先取り実行部10での命令先取りの詳細
は省略する。条件分岐命令を実行する以前の命令は、前
述(1)の通りに前記第一の命令先取り実行部9を使用
して命令の先取りおよび読み出しが行われ、条件分岐命
令実行時は、条件不成立時すなわち分岐しない場合の命
令データは前記第二の命令先取りキュー2に先取りし条
件成立時すなわち分岐する場合は、前記命令データ解読
装置11が解読した命令データを条件分岐命令だと判断
すると、分岐先の命令データのアドレス134を解読し
て出力し、前記第二の書き込みアドレスカウンタ4と第
二の読み出しアドレスカウンタ6に分岐先のアドレス1
34が格納され、前記第一の命令先取り実行部と同様に
して記憶装置から命令データ135が前記第二の命令先
取りキュー2に格納される。そして、条件分岐命令実行
終了後、前記命令データ解読装置11は命令先取り制御
装置に結果フラグ136を出力し、条件不成立の場合
は、引き続き前記第一の命令先取り実行部9を使用し
て、命令の先取りを続けていくが、条件成立の場合、前
記命令先取り制御装置21は前記第二の命令先取り実行
部10の出力するデータを選択するように前記セレクト
信号128を出力する。
【0023】分岐して以降の命令データの先取りは前記
第二の命令先取り実行部10を使用して実行するが、さ
らに条件分岐命令を実行する場合、分岐しない場合の命
令データの先取りは、前記第二の命令先取り実行部10
を使用し、分岐した場合の命令データの先取りは前記第
一の命令先取り実行部9を使用する。
第二の命令先取り実行部10を使用して実行するが、さ
らに条件分岐命令を実行する場合、分岐しない場合の命
令データの先取りは、前記第二の命令先取り実行部10
を使用し、分岐した場合の命令データの先取りは前記第
一の命令先取り実行部9を使用する。
【0024】(3)マルチタスク処理時の命令先取りに
ついて説明する。 まず、一番最初に実行するタスクは、前記(1)と同様
に前記第一の命令先取り実行部9を使用して、命令先取
りを行ない、次に実行するタスクの命令データの先取り
は、タスクを切り換える前に、前記第二の書き込みアド
レスカウンタ4と第二の読み出しアドレスカウンタ6に
次に実行するタスクのスタートアドレス137を格納
し、前記第二の命令先取りキュー2に命令データ135
を先取りしておく。そしてタスクを切り換えるときに前
記命令先取り制御装置21は前記セレクタ信号128を
切り換え、前記第二の命令先取り実行部10の出力デー
タが選択され、次のタスクの実行が始まる。さらに次の
タスクの命令データを先取りする場合は、前記第一の命
令先取り実行部9を使用する。
ついて説明する。 まず、一番最初に実行するタスクは、前記(1)と同様
に前記第一の命令先取り実行部9を使用して、命令先取
りを行ない、次に実行するタスクの命令データの先取り
は、タスクを切り換える前に、前記第二の書き込みアド
レスカウンタ4と第二の読み出しアドレスカウンタ6に
次に実行するタスクのスタートアドレス137を格納
し、前記第二の命令先取りキュー2に命令データ135
を先取りしておく。そしてタスクを切り換えるときに前
記命令先取り制御装置21は前記セレクタ信号128を
切り換え、前記第二の命令先取り実行部10の出力デー
タが選択され、次のタスクの実行が始まる。さらに次の
タスクの命令データを先取りする場合は、前記第一の命
令先取り実行部9を使用する。
【0025】このようにマルチタスク処理の場合も第一
の命令先取り実行部と第二の命令実行部を交互に使用す
る。
の命令先取り実行部と第二の命令実行部を交互に使用す
る。
【0026】
【発明の効果】本発明は、前記命令先取りキューと第
一,第二,第三の手段を2組設けることにより、条件分
岐命令実行時に条件成立時の命令データと条件不成立時
の命令データを先取りでき、また、マルチタスク処理時
に次に実行するタスクの命令データの先取りができる優
れた命令プリフェッチ装置を実現できるものである。
一,第二,第三の手段を2組設けることにより、条件分
岐命令実行時に条件成立時の命令データと条件不成立時
の命令データを先取りでき、また、マルチタスク処理時
に次に実行するタスクの命令データの先取りができる優
れた命令プリフェッチ装置を実現できるものである。
【図1】本発明の一実施例における命令プリフェッチ装
置の構成図
置の構成図
1 第一の命令先取りキュー 2 第二の命令先取りキュー 3 第一の書き込みアドレスカウンタ 4 第二の書き込みアドレスカウンタ 5 第一の読み出しアドレスカウンタ 6 第二の読み出しアドレスカウンタ 7 第一の有効バイト数カウンタ 8 第二の有効バイト数カウンタ 9 第一の命令先取り実行部 10 第二の命令先取り実行部 11 命令データ解読装置 12〜16 マルチプレクサ 17,19,20 加算器 18 減算器 21 命令先取り制御装置
Claims (1)
- 【請求項1】記憶装置から命令データを先取りし、格納
しておくための命令先取りキューを2組備え、それに対
応して先取りする命令データのアドレスを示し、同時に
前記命令先取りキューの書き込みアドレスを示す第一の
手段と、現在実行中の命令データのポインタを示し、同
時に前記命令先取りキューの読み出しアドレスを示す第
二の手段と、前記命令先取りキュー内の有効な命令デー
タのバイト数を示す第三の手段をそれぞれ2組備え、シ
ングルタスク実行時に条件分岐命令を実行する場合は、
2組の前記命令先取りキュー、第一,第二,第三の手段
を同時に使用し、条件不成立時の命令データは条件分岐
命令を実行する以前の命令を先取りした際に使用した方
の命令先取りキューに先取りし、分岐条件成立時の命令
データは、もう一方の命令先取りキューに先取りするこ
とにより、条件分岐命令実行後、分岐条件不成立の場合
は、条件分岐命令を実行する以前の命令を先取りした際
に使用していた方の命令先取りキューに先取りされた命
令データを選択し、分岐条件成立の場合はもう一方の命
令先取りキューに先取りされた命令データを選択し、命
令の実行を進め、継続してマルチタスク処理を行う場合
は、2組の命令先取りキュー、第一,第二,第三の手段
を同時に使用し実行中のタスクについては実行中のタス
クが使用している方の命令先取りキューに命令データを
先取りし、またタスクを切換える前にもう一方の命令先
取りキューに次に実行するタスクの命令データを先取り
し、タスク切換え時には、次に実行するタスクの命令デ
ータが先取りされている方の命令先取りキューの命令デ
ータを選択し、命令実行を進め、 タスクを切り換えるときは、2組の命令先取りキューに
交互に命令データの先取りを行なうことを特徴とする命
令プリフェッチ装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4272695A JPH06124205A (ja) | 1992-10-12 | 1992-10-12 | 命令プリフェッチ装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4272695A JPH06124205A (ja) | 1992-10-12 | 1992-10-12 | 命令プリフェッチ装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH06124205A true JPH06124205A (ja) | 1994-05-06 |
Family
ID=17517510
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP4272695A Pending JPH06124205A (ja) | 1992-10-12 | 1992-10-12 | 命令プリフェッチ装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH06124205A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6161158A (en) * | 1997-04-25 | 2000-12-12 | Nec Corporation | Bus arbitration apparatus and method wherein each module has two in-module arbiters |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6373335A (ja) * | 1986-09-16 | 1988-04-02 | Nec Corp | 情報処理装置 |
| JPS6389930A (ja) * | 1986-09-21 | 1988-04-20 | Matsushita Electric Ind Co Ltd | マイクロプログラム制御装置 |
| JPS63318634A (ja) * | 1987-06-23 | 1988-12-27 | Nec Corp | 命令先取り方式 |
| JPH01126732A (ja) * | 1987-11-12 | 1989-05-18 | Matsushita Electric Ind Co Ltd | 情報処理装置 |
| JPH0324624A (ja) * | 1989-06-21 | 1991-02-01 | Mitsubishi Electric Corp | マイクロプロセツサ |
| JPH03147134A (ja) * | 1989-11-02 | 1991-06-24 | Oki Electric Ind Co Ltd | 命令シーケンス制御装置 |
| JPH03188530A (ja) * | 1989-12-18 | 1991-08-16 | Matsushita Electric Ind Co Ltd | プログラム先取り装置 |
-
1992
- 1992-10-12 JP JP4272695A patent/JPH06124205A/ja active Pending
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6373335A (ja) * | 1986-09-16 | 1988-04-02 | Nec Corp | 情報処理装置 |
| JPS6389930A (ja) * | 1986-09-21 | 1988-04-20 | Matsushita Electric Ind Co Ltd | マイクロプログラム制御装置 |
| JPS63318634A (ja) * | 1987-06-23 | 1988-12-27 | Nec Corp | 命令先取り方式 |
| JPH01126732A (ja) * | 1987-11-12 | 1989-05-18 | Matsushita Electric Ind Co Ltd | 情報処理装置 |
| JPH0324624A (ja) * | 1989-06-21 | 1991-02-01 | Mitsubishi Electric Corp | マイクロプロセツサ |
| JPH03147134A (ja) * | 1989-11-02 | 1991-06-24 | Oki Electric Ind Co Ltd | 命令シーケンス制御装置 |
| JPH03188530A (ja) * | 1989-12-18 | 1991-08-16 | Matsushita Electric Ind Co Ltd | プログラム先取り装置 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6161158A (en) * | 1997-04-25 | 2000-12-12 | Nec Corporation | Bus arbitration apparatus and method wherein each module has two in-module arbiters |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2539199B2 (ja) | デジタルプロセッサ制御装置 | |
| JPH0769818B2 (ja) | デ−タ処理装置 | |
| JPS63175934A (ja) | デ−タ処理装置 | |
| JPH0895804A (ja) | 中央処理装置 | |
| JPH0736848A (ja) | 情報処理装置および処理方法 | |
| JPH0769812B2 (ja) | データ処理装置 | |
| JPS6211736B2 (ja) | ||
| JP2668987B2 (ja) | データ処理装置 | |
| KR920004280B1 (ko) | 정보처리장치 | |
| JP3305841B2 (ja) | プログラム制御装置 | |
| JPH01291327A (ja) | 処理モード先取り制御方式 | |
| JP2001022577A (ja) | 情報処理装置 | |
| JPH10283185A (ja) | プロセッサ | |
| JPS60231241A (ja) | プログラム先行フエツチ制御方式 | |
| JPS62288974A (ja) | ベクトル処理装置 | |
| JP2583614B2 (ja) | ベクトル演算装置 | |
| JPH07210384A (ja) | 浮動小数点演算装置 | |
| JPH04213727A (ja) | 情報処理装置 | |
| JPH06250854A (ja) | 命令プリフェッチ装置 | |
| JPH0855033A (ja) | 情報処理装置 | |
| JPS62251943A (ja) | チヤネル装置のメモリアドレス制御方式 | |
| JPH06103065A (ja) | 命令プリフェッチ装置 | |
| JPH03263225A (ja) | 命令再取出し処理方式 | |
| JPH02278428A (ja) | 分岐制御方式 | |
| JPH01296345A (ja) | 情報処理装置 |