JPH0687221B2 - 情報処理装置 - Google Patents
情報処理装置Info
- Publication number
- JPH0687221B2 JPH0687221B2 JP61076981A JP7698186A JPH0687221B2 JP H0687221 B2 JPH0687221 B2 JP H0687221B2 JP 61076981 A JP61076981 A JP 61076981A JP 7698186 A JP7698186 A JP 7698186A JP H0687221 B2 JPH0687221 B2 JP H0687221B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- coprocessor
- queue
- inst
- central processing
- 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.)
- Expired - Lifetime
Links
Landscapes
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は情報処理装置、詳しくは、中央処理装置(以
下、CPUという)に割当てられた命令キューと同じ大き
さの命令キューを保持し、CPUから出力されるステータ
スによってCPUと同期してフェッチを行うと共に、CPUの
有する命令セットに含まれる命令を実行するスレーブフ
ロセッサ(以下、コプロセッサという)を含む情報処理
装置に関する。
下、CPUという)に割当てられた命令キューと同じ大き
さの命令キューを保持し、CPUから出力されるステータ
スによってCPUと同期してフェッチを行うと共に、CPUの
有する命令セットに含まれる命令を実行するスレーブフ
ロセッサ(以下、コプロセッサという)を含む情報処理
装置に関する。
従来この種のコプロセッサはマスタープロセッサと共に
使用される。かかるCPUとコプロセッサとを使用したシ
ステム例が第3図に示されており、この第3図のシステ
ムで301と302とはそれぞれのアドレスバスとデータバス
とを示している。CPU303のバスインターフェース部305
とコプロセッサ304のバスインタフェース部306とはアド
レスバス301とデータバス302を介して図示していないプ
ログラムメモリおよびワーキングメモリと命令あるいは
データの授受を行なう。例えば、命令はCPU303の単一命
令セットを有する命令実行部307とコプロセッサ304のCP
Uと対応する命令セットを有する命令実行部308とで実行
されるのであるが、命令実行部307,308での実行に先立
ち命令キュー309,310をそれぞれ形成し、内部データバ
ス311,312をそれぞれ介して順次命令実行部307,308に供
給される。313,314はCPU303の命令キュー309の状態(以
下、キューステータスQST1,QST0という)をコプロセッ
サ304に送る信号線であり、315,316,317は起動している
バスサイクルの種類を示す情報(以下、バスステータス
BST2,BST1,BST0という)をCPU303からコプロセッサ304
に送るための信号線である。
使用される。かかるCPUとコプロセッサとを使用したシ
ステム例が第3図に示されており、この第3図のシステ
ムで301と302とはそれぞれのアドレスバスとデータバス
とを示している。CPU303のバスインターフェース部305
とコプロセッサ304のバスインタフェース部306とはアド
レスバス301とデータバス302を介して図示していないプ
ログラムメモリおよびワーキングメモリと命令あるいは
データの授受を行なう。例えば、命令はCPU303の単一命
令セットを有する命令実行部307とコプロセッサ304のCP
Uと対応する命令セットを有する命令実行部308とで実行
されるのであるが、命令実行部307,308での実行に先立
ち命令キュー309,310をそれぞれ形成し、内部データバ
ス311,312をそれぞれ介して順次命令実行部307,308に供
給される。313,314はCPU303の命令キュー309の状態(以
下、キューステータスQST1,QST0という)をコプロセッ
サ304に送る信号線であり、315,316,317は起動している
バスサイクルの種類を示す情報(以下、バスステータス
BST2,BST1,BST0という)をCPU303からコプロセッサ304
に送るための信号線である。
次に、CPU303がコプロセッサ304と共働して命令A−E
(以下、Inst.A〜Eという)を実行する手順を第4図に
示された命令キューの状態図と別表1の解説を参照しつ
つ説明する。
(以下、Inst.A〜Eという)を実行する手順を第4図に
示された命令キューの状態図と別表1の解説を参照しつ
つ説明する。
第4図は、第3図に示したCPU303とコプロセッサ304の
命令キュー109と110の内容を時間を追って示している。
簡単の為にキューは、4Byteであり、各命令の実行に伴
うメモリアクセスはないものとする。またInst.A〜Eは
1Byte長の命令であり、Inst.C〜EはCPU303の命令、Ins
t.Bはコプロセッサ34の命令である。
命令キュー109と110の内容を時間を追って示している。
簡単の為にキューは、4Byteであり、各命令の実行に伴
うメモリアクセスはないものとする。またInst.A〜Eは
1Byte長の命令であり、Inst.C〜EはCPU303の命令、Ins
t.Bはコプロセッサ34の命令である。
いまCPU303の命令キュー309とコプロセッサ304の命令キ
ュー310には、Inst.A〜Dが入っている(第4図のステ
ップ1)。
ュー310には、Inst.A〜Dが入っている(第4図のステ
ップ1)。
CPU303は、命令キュー309からInst.Aを取り出す。CPU30
3は、同時に信号路313,314を通してキュースタータスを
コプロセッサ304に送る。コプロセッサ304は、このキュ
ーステータスを受けて命令キュー310からInst.Aを取り
出す。命令キュー310から取り出されたInst.Aは、CPU30
3では、内部データバス311を通して命令実行部307へ送
られデコードされる。コプロセッサ304では、内部デー
タバス312を通して命令実行部308へ送られデコードされ
る。Inst.Aは、CPU303の命令であり、各デコードの結果
CPU303はInst.Aを実行し、コプロセッサ304はそのまま
何も動作しない(第4図のステップ2)。
3は、同時に信号路313,314を通してキュースタータスを
コプロセッサ304に送る。コプロセッサ304は、このキュ
ーステータスを受けて命令キュー310からInst.Aを取り
出す。命令キュー310から取り出されたInst.Aは、CPU30
3では、内部データバス311を通して命令実行部307へ送
られデコードされる。コプロセッサ304では、内部デー
タバス312を通して命令実行部308へ送られデコードされ
る。Inst.Aは、CPU303の命令であり、各デコードの結果
CPU303はInst.Aを実行し、コプロセッサ304はそのまま
何も動作しない(第4図のステップ2)。
CPU303は、Inst.Aの実行が終了すると、命令キュー309
からInst.Bを取り出す。同時にコプロセッサ304は、信
号路313,314を通して命令コードの1Byte目の取り出しを
示すキューステータスを受けて、命令キュー310からIns
t.Bを取り出す。Inst.Bは、Inst.Aと同様にCPU303の命
令実行部307とコプロセッサ304の命令実行部308におい
てデコードされる。Inst.Bは、コプロセッサ304の命令
であり、デコードの結果CPU303は何も動作せず、コプロ
セッサ304はInst.Bを実行する(第4図のステップ
3)。
からInst.Bを取り出す。同時にコプロセッサ304は、信
号路313,314を通して命令コードの1Byte目の取り出しを
示すキューステータスを受けて、命令キュー310からIns
t.Bを取り出す。Inst.Bは、Inst.Aと同様にCPU303の命
令実行部307とコプロセッサ304の命令実行部308におい
てデコードされる。Inst.Bは、コプロセッサ304の命令
であり、デコードの結果CPU303は何も動作せず、コプロ
セッサ304はInst.Bを実行する(第4図のステップ
3)。
Inst.Bは、CPU303の命令ではないので、CPU303は、コプ
ロセッサ304が命令を実行中であっても命令キュー309か
らInst.Cを取り出す。コプロセッサ304は、CPU303が出
力する命令コードの1byte目の取り出しを示すキュース
テータスによりInst.Bの実行と並行して命令キュー310
からInst.Cを取り出す。Inst.Cは、CPU303の命令である
から、CPU303はInst.Cを実行する。コプロセッサ304
は、Inst.Cのデコードによって何の影響も受けずInst.B
の実行をつづける(第4図のステップ4)。
ロセッサ304が命令を実行中であっても命令キュー309か
らInst.Cを取り出す。コプロセッサ304は、CPU303が出
力する命令コードの1byte目の取り出しを示すキュース
テータスによりInst.Bの実行と並行して命令キュー310
からInst.Cを取り出す。Inst.Cは、CPU303の命令である
から、CPU303はInst.Cを実行する。コプロセッサ304
は、Inst.Cのデコードによって何の影響も受けずInst.B
の実行をつづける(第4図のステップ4)。
ここでCPU303は、バスが使用されていないことと、命令
キュー309内に命令コードが少なくなったことにより、
次のようなフェッチ動作を行う。
キュー309内に命令コードが少なくなったことにより、
次のようなフェッチ動作を行う。
CPU303は、命令キュー309に入っている命令コードの次
のアドレス(ここではInst.Eが格納されているアドレ
ス)がアドレスバス301に出力される。次に出力された
アドレスに対応した命令コードがメモリからデータバス
302上に出力される。CPU303は、このデータバス302に出
力された命令コードを取込み命令キュー309に格納す
る。このフェッチ動作中、CPU303は、信号路315,316,31
7を通してフェッチ動作であることを示すバスステータ
スをコプロセッサ304に出力している。このステータス
を受けてコプロセッサ304は、データバス302上の命令コ
ードをCPU303が命令キュー309に格納したのと同様にし
て命令キュー310に格納する(第4図のステップ5)。
以上の動作をステップ1〜5ごとにまとめて示したのが
別表1である。
のアドレス(ここではInst.Eが格納されているアドレ
ス)がアドレスバス301に出力される。次に出力された
アドレスに対応した命令コードがメモリからデータバス
302上に出力される。CPU303は、このデータバス302に出
力された命令コードを取込み命令キュー309に格納す
る。このフェッチ動作中、CPU303は、信号路315,316,31
7を通してフェッチ動作であることを示すバスステータ
スをコプロセッサ304に出力している。このステータス
を受けてコプロセッサ304は、データバス302上の命令コ
ードをCPU303が命令キュー309に格納したのと同様にし
て命令キュー310に格納する(第4図のステップ5)。
以上の動作をステップ1〜5ごとにまとめて示したのが
別表1である。
一般に新規なCPUの開発に際しては、新機能の実現を図
れる命令セットが必要である。しかし、従来開発された
大量のソフトウエアをそのまま使用できるように従来の
命令セットを継承することも要請されている。特に、コ
プロセッサを付加できるCPUでは、コプロセッサの機能
を十分に活かすことができるソフトウエアがライブラリ
として大量に存在する。このようなソフトウエアを新規
の命令セットに書き直すとすれば、多大の工数と費用が
必要となる問題点があった。
れる命令セットが必要である。しかし、従来開発された
大量のソフトウエアをそのまま使用できるように従来の
命令セットを継承することも要請されている。特に、コ
プロセッサを付加できるCPUでは、コプロセッサの機能
を十分に活かすことができるソフトウエアがライブラリ
として大量に存在する。このようなソフトウエアを新規
の命令セットに書き直すとすれば、多大の工数と費用が
必要となる問題点があった。
本発明は、新規な命令セットを採用しても、従前のソフ
トウエアの修正作業が最小限ですみ、従来のソフトウエ
ア資産をわずかの修正で活用できる情報処理装置を提供
することを目的とする。
トウエアの修正作業が最小限ですみ、従来のソフトウエ
ア資産をわずかの修正で活用できる情報処理装置を提供
することを目的とする。
本発明による情報処理装置においては、中央処理装置
は、中央処理装置用命令、コプロセッサ用命令および変
更命令が混在した命令群を順々にフェッチしフェッチし
た命令を一時格納する第1命令キューと、この命令キュ
ーから命令を読み出し当該読み出した命令のうちの前記
中央処理装置用命令を第1および第2の動作モードのう
ちの指定された動作モードで実行する第1命令実行部と
を有し、この第1命令実行部は第1命令キューから前記
変更命令を受けると現在の動作モードから他方の動作モ
ードにその命令実行動作モードが遷移し、一方、コプロ
セッサは、中央処理装置の命令フェッチと同期して命令
をフェッチし当該フェッチした命令を一時格納する第2
命令キューと、フェッチした命令が前記変更命令である
かどうかを示す識別情報を第2命令キューに格納された
命令に付随して付加する手段と、第2命令キューから命
令とともに当該命令に付随した識別情報を読み出し当該
読み出した命令が前記識別情報により前記変更命令であ
ることが示されているときに中央処理装置の第1命令実
行部と同じ命令実行モードに遷移する第2命令実行部と
を有し、この第2命令実行部は、第2命令キューから読
み出した命令のうちプロセッサ用命令を実行している。
は、中央処理装置用命令、コプロセッサ用命令および変
更命令が混在した命令群を順々にフェッチしフェッチし
た命令を一時格納する第1命令キューと、この命令キュ
ーから命令を読み出し当該読み出した命令のうちの前記
中央処理装置用命令を第1および第2の動作モードのう
ちの指定された動作モードで実行する第1命令実行部と
を有し、この第1命令実行部は第1命令キューから前記
変更命令を受けると現在の動作モードから他方の動作モ
ードにその命令実行動作モードが遷移し、一方、コプロ
セッサは、中央処理装置の命令フェッチと同期して命令
をフェッチし当該フェッチした命令を一時格納する第2
命令キューと、フェッチした命令が前記変更命令である
かどうかを示す識別情報を第2命令キューに格納された
命令に付随して付加する手段と、第2命令キューから命
令とともに当該命令に付随した識別情報を読み出し当該
読み出した命令が前記識別情報により前記変更命令であ
ることが示されているときに中央処理装置の第1命令実
行部と同じ命令実行モードに遷移する第2命令実行部と
を有し、この第2命令実行部は、第2命令キューから読
み出した命令のうちプロセッサ用命令を実行している。
中央処理装置とコプロセッサとが同期して命令をフェッ
チし、中央処理装置がある同装置用命令を現在のモード
で実行しているとき、現在モードからの他のモードに基
づく命令実行モードに変更する変更命令を受けると中央
処理装置の命令実行モードが切換えられると、以後中央
処理装置は切換えられた動作モードに基づき命令キュー
中の命令を実行するようになる。
チし、中央処理装置がある同装置用命令を現在のモード
で実行しているとき、現在モードからの他のモードに基
づく命令実行モードに変更する変更命令を受けると中央
処理装置の命令実行モードが切換えられると、以後中央
処理装置は切換えられた動作モードに基づき命令キュー
中の命令を実行するようになる。
したがって、中央処理装置の有する複数の命令セット
に、新機能の実現を可能にする命令セットと従前の命令
セットを含ませておけば、従前の命令セットに基づき開
発されたソフトウエアを大幅に修正しなくともそのまま
使用できる。また、中央処理装置からコプロセッサのモ
ードも変更するため、中央処理装置がもつ命令実行モー
ド中にコプロセッサをサポートしないモードが含まれて
いてもコプロセッサが誤動作することもない。
に、新機能の実現を可能にする命令セットと従前の命令
セットを含ませておけば、従前の命令セットに基づき開
発されたソフトウエアを大幅に修正しなくともそのまま
使用できる。また、中央処理装置からコプロセッサのモ
ードも変更するため、中央処理装置がもつ命令実行モー
ド中にコプロセッサをサポートしないモードが含まれて
いてもコプロセッサが誤動作することもない。
以下、本発明の一実施例を図面に基づき説明する。
第1図は一実施例の構成を示すブロック図であり、アド
レスバス101、データバス102はCPU103とコプロセッサ10
4のバスインターフェース部105,106とプログラムメモリ
等の周辺装置とのアドレス情報、命令等の授受に使用さ
れている。バスインターフェース部105,106を介して供
給される命令は命令実行部107,108で命令セットに基づ
き実行される。CPU103とコプロセッサ104の命令実行部1
07,108には2つの命令セットがそれぞれ用意されてお
り、CPU103の各命令セットにはその命令セットに基づく
命令の実行(モード0)から他の命令セットに基づく命
令の実行(モード1)への変更を指示するモード変更命
令Inst.F.Inst.F′が含まれている(第5図参照)。CPU
103とコプロセッサ104とでそれぞれ実行される命令は命
令キュー109,110を構成し、コプロセッサ104は命令キュ
ー110を構成するためにフェッチされる命令がモード変
更命令Inst.F,Inst.F′であるか否かを判別しモード変
更命令の場合は識別情報「1」を、それ以外の場合は
「0」を出力するプリデコーダ111を有している。プリ
デコーダ111の出力は命令キュー110に対応するビット群
112に格納され、ビットT0〜T3は命令Q0〜Q3にそれぞれ
対応している。114,115は命令キュー109,110内の命令を
命令実行部107,108にそれぞれ送出するための内部デー
タバスであり、ビット群112に格納されていた情報
「1」または「0」は、信号線116を介して命令と同期
して命令実行部108に送出され、命令実行部108はビット
群112から出力された情報に基づき命令セットの切換え
を行なう。
レスバス101、データバス102はCPU103とコプロセッサ10
4のバスインターフェース部105,106とプログラムメモリ
等の周辺装置とのアドレス情報、命令等の授受に使用さ
れている。バスインターフェース部105,106を介して供
給される命令は命令実行部107,108で命令セットに基づ
き実行される。CPU103とコプロセッサ104の命令実行部1
07,108には2つの命令セットがそれぞれ用意されてお
り、CPU103の各命令セットにはその命令セットに基づく
命令の実行(モード0)から他の命令セットに基づく命
令の実行(モード1)への変更を指示するモード変更命
令Inst.F.Inst.F′が含まれている(第5図参照)。CPU
103とコプロセッサ104とでそれぞれ実行される命令は命
令キュー109,110を構成し、コプロセッサ104は命令キュ
ー110を構成するためにフェッチされる命令がモード変
更命令Inst.F,Inst.F′であるか否かを判別しモード変
更命令の場合は識別情報「1」を、それ以外の場合は
「0」を出力するプリデコーダ111を有している。プリ
デコーダ111の出力は命令キュー110に対応するビット群
112に格納され、ビットT0〜T3は命令Q0〜Q3にそれぞれ
対応している。114,115は命令キュー109,110内の命令を
命令実行部107,108にそれぞれ送出するための内部デー
タバスであり、ビット群112に格納されていた情報
「1」または「0」は、信号線116を介して命令と同期
して命令実行部108に送出され、命令実行部108はビット
群112から出力された情報に基づき命令セットの切換え
を行なう。
次にCPU103がコプロセッサ104と共働して命令(Inst.B,
Inst.F,Inst.B′)をモードを切り換えつつ実行すると
きの作用を説明する。
Inst.F,Inst.B′)をモードを切り換えつつ実行すると
きの作用を説明する。
第2図は、第1図に示したCPU103とコプロセッサ104の
命令キューの内容と、CPU103、コプロセッサ104の状態
及びCPU103が信号路117,118を通してコプロセッサ104に
出力する情報と、同じく信号路119,120,121を通して出
力する情報を時間を追って示している。簡単の為に各命
令の実行に伴うメモリアクセスはないものとする。また
命令は1Byte長の命令であり、CPU103の命令のう
ち“′”の付いた命令はモード1の命令であり、付いて
いない命令はモード0の命令であるものとする。なおIn
st.Bは、コプロセッサ104の命令である。
命令キューの内容と、CPU103、コプロセッサ104の状態
及びCPU103が信号路117,118を通してコプロセッサ104に
出力する情報と、同じく信号路119,120,121を通して出
力する情報を時間を追って示している。簡単の為に各命
令の実行に伴うメモリアクセスはないものとする。また
命令は1Byte長の命令であり、CPU103の命令のう
ち“′”の付いた命令はモード1の命令であり、付いて
いない命令はモード0の命令であるものとする。なおIn
st.Bは、コプロセッサ104の命令である。
いま、CPU103及びコプロセッサ104は、モード0の状態
であり、命令キュー109と、コプロセッサ104の命令キュ
ー110は空の状態であるとする。CPU103は、フェッチを
行いInst.Bを命令キュー109のP0に格納する。コプロセ
ッサ104は、CPU103が出力するバスステータスによってC
PU103と同期してInst.Bをフェッチし、命令キュー110の
Q0に格納する。このときプリデコーダ111は、“0"を信
号路113を通して、命令キュー110のInst.Bが格納されて
いる場所に対応するビット群112のT0に格納する。
であり、命令キュー109と、コプロセッサ104の命令キュ
ー110は空の状態であるとする。CPU103は、フェッチを
行いInst.Bを命令キュー109のP0に格納する。コプロセ
ッサ104は、CPU103が出力するバスステータスによってC
PU103と同期してInst.Bをフェッチし、命令キュー110の
Q0に格納する。このときプリデコーダ111は、“0"を信
号路113を通して、命令キュー110のInst.Bが格納されて
いる場所に対応するビット群112のT0に格納する。
引続きCPU103は、Inst.F、Inst.B′、Inst.C′をフェッ
チし、命令キュー109のP1、P2、P3に格納する。同様に
コプロセッサ104も、Inst.F、Inst.B′、Inst.C′を命
令キュー110のQ1、Q2、Q3に格納する。ここでプリデコ
ーダ111は、Inst.Fがフェッチされたことによって、命
令実行モードを遷移させることを示す信号“1"を信号路
113を通して、命令キュー110のInst.Fが格納されている
場所に対応するビット群112のビット(すなわちT1)に
格納する(第2図のステップ1)。
チし、命令キュー109のP1、P2、P3に格納する。同様に
コプロセッサ104も、Inst.F、Inst.B′、Inst.C′を命
令キュー110のQ1、Q2、Q3に格納する。ここでプリデコ
ーダ111は、Inst.Fがフェッチされたことによって、命
令実行モードを遷移させることを示す信号“1"を信号路
113を通して、命令キュー110のInst.Fが格納されている
場所に対応するビット群112のビット(すなわちT1)に
格納する(第2図のステップ1)。
CPU103は、命令キュー109のP0からInst.Bを取り出す。
コプロセッサ104では、CPU103が出力するキューステー
タスにより、命令キュー110のQ0からInst.Bが内部デー
タバス115を通して、ビット群112のT0から“0"が信号路
116を通して命令実行部108へ送られる。コプロセッサ10
4はモード0の状態であり、この命令を実行する。一方C
PU103は、続いて命令キュー109のP1からInst.Fを取り出
す(第2図のステップ2)。
コプロセッサ104では、CPU103が出力するキューステー
タスにより、命令キュー110のQ0からInst.Bが内部デー
タバス115を通して、ビット群112のT0から“0"が信号路
116を通して命令実行部108へ送られる。コプロセッサ10
4はモード0の状態であり、この命令を実行する。一方C
PU103は、続いて命令キュー109のP1からInst.Fを取り出
す(第2図のステップ2)。
Inst.Fは、CPU103の命令実行モードを遷移させる命令で
あり、CPU103では、この命令を実行することにより命令
実行モードがモード0からモード1へと遷移する。同時
にコプロセッサ104でも、命令キュー110のQ1からInst.F
が内部データバス115を通して、ビット群112のT1から
“1"が信号路116を通して命令実行部108へ送られる。信
号路116を通して命令実行部108へ送られた信号が“1"で
あることにより、コプロセッサ104でも、命令実行モー
ドがモード0からモード1へと遷移する(第2図のステ
ップ3)。
あり、CPU103では、この命令を実行することにより命令
実行モードがモード0からモード1へと遷移する。同時
にコプロセッサ104でも、命令キュー110のQ1からInst.F
が内部データバス115を通して、ビット群112のT1から
“1"が信号路116を通して命令実行部108へ送られる。信
号路116を通して命令実行部108へ送られた信号が“1"で
あることにより、コプロセッサ104でも、命令実行モー
ドがモード0からモード1へと遷移する(第2図のステ
ップ3)。
CPU103は、Inst.B′を命令キュー109のP2から取り出し
実行する。コプロセッサ104でも、CPU103が出力するキ
ューステータスに従って、Inst.B′を命令キュー110か
ら取り出す。Inst.B′は、モード0の命令Inst.Bと同じ
コードであるが、コプロセッサ104の命令実行モード
は、モード1となっているために実行は行わない(第2
図のステップ4)。
実行する。コプロセッサ104でも、CPU103が出力するキ
ューステータスに従って、Inst.B′を命令キュー110か
ら取り出す。Inst.B′は、モード0の命令Inst.Bと同じ
コードであるが、コプロセッサ104の命令実行モード
は、モード1となっているために実行は行わない(第2
図のステップ4)。
ここでCPU103は、再びフェッチを行い、Inst.F′、Ins
t.C、Inst.Dを命令キュー109のP0、P1、P2に格納する。
同様にコプロセッサ104も、Inst.F′、Inst.C、Inst.D
を命令キュー110のQ0、Q1、Q2に格納する。プリデコー
ダ111は、フェッチされたInst.F′を検出し、命令実行
モードを遷移させる命令であることを示す信号“1"を信
号路113を通して、命令キュー110のInst.F′が格納され
ている場所に対応するビット群112のビット(すなわちT
0)に格納する(第2図のステップ5)。
t.C、Inst.Dを命令キュー109のP0、P1、P2に格納する。
同様にコプロセッサ104も、Inst.F′、Inst.C、Inst.D
を命令キュー110のQ0、Q1、Q2に格納する。プリデコー
ダ111は、フェッチされたInst.F′を検出し、命令実行
モードを遷移させる命令であることを示す信号“1"を信
号路113を通して、命令キュー110のInst.F′が格納され
ている場所に対応するビット群112のビット(すなわちT
0)に格納する(第2図のステップ5)。
以下、コプロセッサ104は、CPU103と同期して命令を実
行し、Inst.F′が命令キュー110から取り出される時
に、同時に取り出されるビット群112のT0の信号により
再び命令実行モードをモード1からモード0へと遷移さ
せる。以上の各ステップ1〜5におけるCPU103、コプロ
セッサ104等の機能をまとめたのが別表2であり、別表
3,4にはキューステータスとバスステータスとが説明さ
れている。
行し、Inst.F′が命令キュー110から取り出される時
に、同時に取り出されるビット群112のT0の信号により
再び命令実行モードをモード1からモード0へと遷移さ
せる。以上の各ステップ1〜5におけるCPU103、コプロ
セッサ104等の機能をまとめたのが別表2であり、別表
3,4にはキューステータスとバスステータスとが説明さ
れている。
以上説明したように、本発明によれば新たな命令セット
の採用に際して、それまで用いられていた大量のソフト
ウェアを修正する必要がないという非常に優れた効果を
有している。
の採用に際して、それまで用いられていた大量のソフト
ウェアを修正する必要がないという非常に優れた効果を
有している。
第1図は一実施例の構成を示すブロック図、第2図は一
実施例の命令キューの状態図、第3図は従来例のブロッ
ク図、第4図は従来例の命令キューの状態図、第5図は
命令実行モードの変更を示す概念図である。 103……中央処理装置、104……コプロセッサ、Inst.F,I
nst.F′……変更命令、111……命令識別手段(プリデコ
ーダ)、112……識別情報格納手段(ビット群)。
実施例の命令キューの状態図、第3図は従来例のブロッ
ク図、第4図は従来例の命令キューの状態図、第5図は
命令実行モードの変更を示す概念図である。 103……中央処理装置、104……コプロセッサ、Inst.F,I
nst.F′……変更命令、111……命令識別手段(プリデコ
ーダ)、112……識別情報格納手段(ビット群)。
Claims (1)
- 【請求項1】中央処理装置とコプロセッサとを含む情報
処理装置において、 前記中央処理装置は、中央処理装置用命令、コプロセッ
サ用命令および変更命令が混在した命令群を順々にフェ
ッチし、フェッチした命令を一時格納する命令キュー
と、この命令キューから命令を呼び出し当該読み出した
命令のうちの前記中央処理装置用命令を第1および第2
の命令実行動作モードのうちの指定された命令実行動作
モードで実行する命令実行部とを有し、前記命令実行部
は前記命令キューから前記変更命令を受けると現在の前
記第1および第2の命令実行動作モードの一方から他方
に遷移し、 前記コプロセッサは、前記中央処理装置の命令フェッチ
と同期して、前記中央処理装置がフェッチする命令と同
じ命令をフェッチし、当該フェッチした命令を一時格納
するコプロセッサ用命令キューと、フェッチした命令が
前記変更命令であるかどうかを示す識別情報を前記コプ
ロセッサ用命令キューに格納された命令に付随して付加
する手段と、前記コプロセッサ用命令キューから命令を
読み出し当該読み出した命令のうちの前記コプロセッサ
用命令を、前記中央処理装置の前記命令実行部の命令実
行動作モードに1対1に対応する第1および第2の命令
実行動作モードのうちの指定された命令実行動作モード
で実行するコプロセッサ用命令実行部とを有し、前記コ
プロセッサ用命令キューから命令とともに当該命令に付
随した識別情報を読み出し当該読み出した命令が前記識
別情報により前記変更命令であることが示されていると
きに前記中央処理装置の前記命令実行部の命令実行動作
モードに対応する命令実行動作モードに遷移することを
特徴とする情報処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61076981A JPH0687221B2 (ja) | 1986-04-02 | 1986-04-02 | 情報処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61076981A JPH0687221B2 (ja) | 1986-04-02 | 1986-04-02 | 情報処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS62232036A JPS62232036A (ja) | 1987-10-12 |
JPH0687221B2 true JPH0687221B2 (ja) | 1994-11-02 |
Family
ID=13620953
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61076981A Expired - Lifetime JPH0687221B2 (ja) | 1986-04-02 | 1986-04-02 | 情報処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0687221B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01166222A (ja) * | 1987-12-23 | 1989-06-30 | Matsushita Electric Works Ltd | プログラムコントローラの演算回路構成 |
JPH01243121A (ja) * | 1988-03-25 | 1989-09-27 | Hitachi Ltd | データ処理装置 |
EP0976034B1 (en) | 1996-01-24 | 2005-10-19 | Sun Microsystems, Inc. | Method and apparatus for stack caching |
JP3621315B2 (ja) | 1999-11-22 | 2005-02-16 | Necエレクトロニクス株式会社 | マイクロプロセッサシステム |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS513743A (ja) * | 1974-06-28 | 1976-01-13 | Hitachi Ltd |
-
1986
- 1986-04-02 JP JP61076981A patent/JPH0687221B2/ja not_active Expired - Lifetime
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS513743A (ja) * | 1974-06-28 | 1976-01-13 | Hitachi Ltd |
Also Published As
Publication number | Publication date |
---|---|
JPS62232036A (ja) | 1987-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4949241A (en) | Microcomputer system including a master processor and a slave processor synchronized by three control lines | |
US4562538A (en) | Microprocessor having decision pointer to process restore position | |
JPH0687221B2 (ja) | 情報処理装置 | |
US8200943B2 (en) | Microprocessor | |
JP2680828B2 (ja) | ディジタル装置 | |
JPH1069470A (ja) | マルチプロセッサシステム | |
CA1137641A (en) | Single chip microcomputer selectively operable in response to instructions stored on the computer chip or in response to instructions stored external to the chip | |
JPS6049337B2 (ja) | パイプライン制御方式 | |
JPH0192843A (ja) | データ処理装置 | |
JPS59123934A (ja) | プログラム可能な論理制御装置 | |
CN112802527B (zh) | 嵌入式闪存高速编程的实现方法、嵌入式闪存的编程系统 | |
JP2581080B2 (ja) | デバック用マイクロプロセッサ | |
JP2883488B2 (ja) | 命令処理装置 | |
JP2622026B2 (ja) | 中央処理装置におけるレジスタ書込制御方式 | |
JP3197045B2 (ja) | 拡張中央演算処理装置 | |
JPS6250855B2 (ja) | ||
JP3037295B1 (ja) | イベント検出回路 | |
JP2755646B2 (ja) | データ駆動型データ処理装置 | |
JP2000029508A (ja) | プログラマブルコントローラ | |
JPH065528B2 (ja) | 情報処理システム | |
JPS6240737B2 (ja) | ||
JPH0452986B2 (ja) | ||
JP3039918B2 (ja) | プロセッサシステム | |
JPS5938828A (ja) | デ−タ処理システム | |
JPH05342171A (ja) | 共有記憶通信方式 |