JPH07109589B2 - 命令処理方式 - Google Patents
命令処理方式Info
- Publication number
- JPH07109589B2 JPH07109589B2 JP60165177A JP16517785A JPH07109589B2 JP H07109589 B2 JPH07109589 B2 JP H07109589B2 JP 60165177 A JP60165177 A JP 60165177A JP 16517785 A JP16517785 A JP 16517785A JP H07109589 B2 JPH07109589 B2 JP H07109589B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction code
- instruction
- code group
- model
- storage means
- 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
- Executing Machine-Instructions (AREA)
- Microcomputers (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、命令コードを解読する解読回路の制御により
各種のデータ処理を実行する演算処理装置を単一半導体
基盤上に集積した情報処理装置の命令処理方式に関す
る。
各種のデータ処理を実行する演算処理装置を単一半導体
基盤上に集積した情報処理装置の命令処理方式に関す
る。
最近、パーソナルコピュータ、オフィスコンピュータ等
の情報処理機器が、企業内ではもちろろん、一般家庭で
も多く利用されている。これら情報処理機器は、利用範
囲が広く、これに伴うソフトウェアも増え続け、今では
膨大な数となっている。
の情報処理機器が、企業内ではもちろろん、一般家庭で
も多く利用されている。これら情報処理機器は、利用範
囲が広く、これに伴うソフトウェアも増え続け、今では
膨大な数となっている。
ソフトウェアの増大と平行して、情報処理機器も利用者
の要求とともに、高性能化、高速処理化が進んでいる。
の要求とともに、高性能化、高速処理化が進んでいる。
しかし、次々と新しい機種が製品化されているため、最
新機種として製品化された情報処理機器もすぐに旧式化
しているというのが現状である。
新機種として製品化された情報処理機器もすぐに旧式化
しているというのが現状である。
従来の機種(以下、下位機種と記す)には、多くのソフ
トウェアが用意されているが下位機種の命令コードは、
最新の機種(以下、上位機種と記す)の命令コードとは
全く異る。最新の上位機種のソフトウェアと従来の下位
機種のソフトウェアとの互換性が問題になっている。
トウェアが用意されているが下位機種の命令コードは、
最新の機種(以下、上位機種と記す)の命令コードとは
全く異る。最新の上位機種のソフトウェアと従来の下位
機種のソフトウェアとの互換性が問題になっている。
第8図は、従来の情報処理機器の構成図である。CPU801
は上位機種の命令セットを実行するマイコンである。メ
モリ802には、実行されるプログラムや処理データが格
納されており、バスでCPU801や入出力装置803と結合さ
れている。
は上位機種の命令セットを実行するマイコンである。メ
モリ802には、実行されるプログラムや処理データが格
納されており、バスでCPU801や入出力装置803と結合さ
れている。
上記の様な構成の機器で下位機種用のソフトウェアを実
行してもCPU801は上位機種の命令コードとして解釈し正
しい処理を行うことは不可能である。
行してもCPU801は上位機種の命令コードとして解釈し正
しい処理を行うことは不可能である。
また、この膨大の数の従来の下位機種用のソフトウェア
が上位機種に使用できないという理由で無視することも
不可能である。そこで、今まで上位機種上で下位機種用
のソフトウェアを使用する方法として、第1に下位機種
用ソフトウェアのソースプログラムを上位機種用に書き
直して上位機種上で用いる方法、第2に上位機種用の命
令で全く新しいソフトウェアを作るという方法があっ
た。
が上位機種に使用できないという理由で無視することも
不可能である。そこで、今まで上位機種上で下位機種用
のソフトウェアを使用する方法として、第1に下位機種
用ソフトウェアのソースプログラムを上位機種用に書き
直して上位機種上で用いる方法、第2に上位機種用の命
令で全く新しいソフトウェアを作るという方法があっ
た。
しかし、第1の方法には、現在使われているすべての下
位機種用のソフトウェアを上位機種用に書き直すために
大変な時間を費してしまうという問題がある。また、第
2の方法には、従来のソフトウェアと同じだけのソフト
ウェアを新たに作成するために今までと同じ、または、
それ以上の工数と費用がかかってしまうという問題があ
る。つまり、上記の2つの方法は、下位機種用のソフト
ウェアが膨大な数となってしまった今では用いることが
不可能である。そこで従来は、第9図の様な構成の情報
装置900が考えられた。
位機種用のソフトウェアを上位機種用に書き直すために
大変な時間を費してしまうという問題がある。また、第
2の方法には、従来のソフトウェアと同じだけのソフト
ウェアを新たに作成するために今までと同じ、または、
それ以上の工数と費用がかかってしまうという問題があ
る。つまり、上記の2つの方法は、下位機種用のソフト
ウェアが膨大な数となってしまった今では用いることが
不可能である。そこで従来は、第9図の様な構成の情報
装置900が考えられた。
次に第9図を参照しながら情報処理装置900の構成と動
作を説明する。
作を説明する。
第9図は、上位機種の命令セットを実行するマイコン90
1と下位機種の命令セットを実行するマイコン902の両方
を搭載させた情報処理装置900のブロック図である。第
9図において、上位機種の命令セットを実行するマイコ
ン901と下位機種の命令セットを実行するマイコン902
は、エミュレーション制御装置903に接続されている。
上位機種用のソフトウェアを実行させる時は、エミュレ
ーション制御装置903の制御でアドレスバス905、データ
バス906が上位機種の命令セットを実行するマイコン901
に接続され、メモリ904の中の上位機種用のプログラム
を実行する。下位機種用のソフトウェアを実行させると
きは、エミュレーション制御装置903の制御でアドレス
バス905、データバス906が下位機種の命令セットを実行
するマイコン902に接続され、メモリ904の中の下位機種
用のプログラムを実行する。この様にして、下位機種
用、上位機種用両方のソフトウェアを実行できる。
1と下位機種の命令セットを実行するマイコン902の両方
を搭載させた情報処理装置900のブロック図である。第
9図において、上位機種の命令セットを実行するマイコ
ン901と下位機種の命令セットを実行するマイコン902
は、エミュレーション制御装置903に接続されている。
上位機種用のソフトウェアを実行させる時は、エミュレ
ーション制御装置903の制御でアドレスバス905、データ
バス906が上位機種の命令セットを実行するマイコン901
に接続され、メモリ904の中の上位機種用のプログラム
を実行する。下位機種用のソフトウェアを実行させると
きは、エミュレーション制御装置903の制御でアドレス
バス905、データバス906が下位機種の命令セットを実行
するマイコン902に接続され、メモリ904の中の下位機種
用のプログラムを実行する。この様にして、下位機種
用、上位機種用両方のソフトウェアを実行できる。
上述した従来の情報処理装置は、上位機種の命令コード
実行用と、下位機種の命令コード実行用の2つのマイコ
ンを搭載しており、情報処理装置のシステム規模が大き
くなってしまうという欠点がある。それに伴い、価格が
高価になってしまうという欠点もある。また、マイコン
を2つ搭載するということは、下位機種の命令コード実
行用のマイコンを使っているときは、もう1つの上位機
種の命令コード実行用のマイコンは使われておらず、上
位機種の命令コード実行用のマイコンを使っているとき
は、もう1つの下位機種の命令コード実行用のマイコン
は使われていないというように、常に片方のマイコンし
か使われていないため、ハードウェアが無駄になってし
まうという欠点がある。
実行用と、下位機種の命令コード実行用の2つのマイコ
ンを搭載しており、情報処理装置のシステム規模が大き
くなってしまうという欠点がある。それに伴い、価格が
高価になってしまうという欠点もある。また、マイコン
を2つ搭載するということは、下位機種の命令コード実
行用のマイコンを使っているときは、もう1つの上位機
種の命令コード実行用のマイコンは使われておらず、上
位機種の命令コード実行用のマイコンを使っているとき
は、もう1つの下位機種の命令コード実行用のマイコン
は使われていないというように、常に片方のマイコンし
か使われていないため、ハードウェアが無駄になってし
まうという欠点がある。
本発明に基づく情報処理装置は、プログラム記憶手段内
に格納される第1の命令コード群を解読する解読回路の
制御により、各種のデータ処理を実行する演算処理装置
を単一半導体基板上に集積した半導体集積回路において
複数の第1の命令コード群と第2の命令コード群を蓄え
る待を行列記憶手段と、プログラム記憶手段内の第1の
命令コード群と第2の命令コード群を待ち行列記憶手段
へ送出する命令読み出し手段と、第1の命令コード群を
実行する実行手段と、第2の命令コード群から第1の命
令コード群を生成する命令コード変換記憶手段を有し、
命令読み出し手段によるプログラム記憶手段内の第1の
命令コード群と第2の命令コード群の待ち行列記憶手段
への格納処理と命令コード変換記憶手段による第2の命
令コードから第1の命令コードへの変換処理と実行手段
による第1の命令コードの実行処理を並列に実行するこ
とを特徴とする。
に格納される第1の命令コード群を解読する解読回路の
制御により、各種のデータ処理を実行する演算処理装置
を単一半導体基板上に集積した半導体集積回路において
複数の第1の命令コード群と第2の命令コード群を蓄え
る待を行列記憶手段と、プログラム記憶手段内の第1の
命令コード群と第2の命令コード群を待ち行列記憶手段
へ送出する命令読み出し手段と、第1の命令コード群を
実行する実行手段と、第2の命令コード群から第1の命
令コード群を生成する命令コード変換記憶手段を有し、
命令読み出し手段によるプログラム記憶手段内の第1の
命令コード群と第2の命令コード群の待ち行列記憶手段
への格納処理と命令コード変換記憶手段による第2の命
令コードから第1の命令コードへの変換処理と実行手段
による第1の命令コードの実行処理を並列に実行するこ
とを特徴とする。
次に、本発明について図面を参照して説明する。
第1図は、本発明に関する情報処理装置の構成図であ
る。情報処理装置100には2つのモードがあり、1つは
上位機種用の命令として実行するモード(以下ネイティ
ブモードと記す)と他方は、下位機種用の命令として処
理するモード(以下エミュレーションモードと記す)で
ある。第1図の情報処理装置100のマイクロコンピュー
タ101は、下位機種の命令セットを実行する機能(以下
エミュレーション機能と記す)と本来の命令セットを実
行する機能の両方を備えている。マイクロコンピュータ
101は実行ユニット102、入出力装置103、命令コードセ
レクタ104、コード変換メモリ105、QUEUE106、フェッチ
ユニット107から構成される。QUEUE106は、複数の命令
を蓄えておくことができ、読み出されるときは、書き込
まれた順に1命令ずつ内部データバース111へ送出す
る。QUEUE106からは、QUEUE106の状態信号であるQRDY信
号109とQFULL信号110が送出されている。QRDY信号109
は、実行ユニット102とフェッチユニット107に送出され
ており、QUEUE106の中に処理する命令コードが、あるか
ないかを示している。処理する命令コードがある場合
は、アクティブレベル“1"となる。QFULL信号110は、フ
ェッチユニット107に送出されており、QUEUE106の中
に、まだ、命令コードを書き込める余裕があるかないか
を示している。QUEUE106がいっぱいで、命令コードを書
き込むことができない場合、アクティブレベル“1"とな
る。QUEUE106を用いない場合、情報処理装置は第4図の
様に動作し、実行ユニット102は、命令コードの実行を
終えるまでメモリ108から次の命令コードを読み出すこ
とができないため、情報処理装置内では、常に、フェッ
チまたは実行の一方の処理しか行うことができない。と
こいがQUEUE106があると、実行ユニット102が命令コー
ドの実行をしていても、フェッチユニット107の指示で
メモリ108からフェッチが行われ、QUEUE106に蓄えられ
る。QRDY信号109がアクティブレベル“1"であればQUEUE
106からは命令コードが次々と送出されるため、前の命
令コードが実行ユニット102に取り込まれると、次の命
令はすでにQUEUEから内部データバス111に送出されてい
る。そのため、第5図の様に、フェッチと実行が平行し
て行われ、第4図のQUEUEがない場合に比べて処理時間
が短縮される。
る。情報処理装置100には2つのモードがあり、1つは
上位機種用の命令として実行するモード(以下ネイティ
ブモードと記す)と他方は、下位機種用の命令として処
理するモード(以下エミュレーションモードと記す)で
ある。第1図の情報処理装置100のマイクロコンピュー
タ101は、下位機種の命令セットを実行する機能(以下
エミュレーション機能と記す)と本来の命令セットを実
行する機能の両方を備えている。マイクロコンピュータ
101は実行ユニット102、入出力装置103、命令コードセ
レクタ104、コード変換メモリ105、QUEUE106、フェッチ
ユニット107から構成される。QUEUE106は、複数の命令
を蓄えておくことができ、読み出されるときは、書き込
まれた順に1命令ずつ内部データバース111へ送出す
る。QUEUE106からは、QUEUE106の状態信号であるQRDY信
号109とQFULL信号110が送出されている。QRDY信号109
は、実行ユニット102とフェッチユニット107に送出され
ており、QUEUE106の中に処理する命令コードが、あるか
ないかを示している。処理する命令コードがある場合
は、アクティブレベル“1"となる。QFULL信号110は、フ
ェッチユニット107に送出されており、QUEUE106の中
に、まだ、命令コードを書き込める余裕があるかないか
を示している。QUEUE106がいっぱいで、命令コードを書
き込むことができない場合、アクティブレベル“1"とな
る。QUEUE106を用いない場合、情報処理装置は第4図の
様に動作し、実行ユニット102は、命令コードの実行を
終えるまでメモリ108から次の命令コードを読み出すこ
とができないため、情報処理装置内では、常に、フェッ
チまたは実行の一方の処理しか行うことができない。と
こいがQUEUE106があると、実行ユニット102が命令コー
ドの実行をしていても、フェッチユニット107の指示で
メモリ108からフェッチが行われ、QUEUE106に蓄えられ
る。QRDY信号109がアクティブレベル“1"であればQUEUE
106からは命令コードが次々と送出されるため、前の命
令コードが実行ユニット102に取り込まれると、次の命
令はすでにQUEUEから内部データバス111に送出されてい
る。そのため、第5図の様に、フェッチと実行が平行し
て行われ、第4図のQUEUEがない場合に比べて処理時間
が短縮される。
フェッチユニット107は、QUEUE106からのQRDY信号109お
よびQFULL110を受けて、メモリ108からQUEUE106への命
令の書き込みを制御する。QFULL信号110がインアクティ
ブレベル“0"で、QRDY信号109がアクティブレベル“1"
の場合、QUEUE106にはまだ命令を書き込む余裕があり、
QFULL信号110がインアクティブレベル“0"で、QRDY信号
109もインアクティブレベル“0"の場合、QUEUE106には
処理する命令が入っていないため、フェッチユニット10
7からは、アドレス情報が内部アドレス113上に送出さ
れ、外部アドレスバス114を介してメモリ108に受け取ら
れる。するとメモリ108から命令コードが送出され、外
部データバス112を経てQUEUE106に書き込まれ、蓄えら
れる。QUEUE106がいっぱいになると、QFULL信号110がア
クティブルベル“1"となり、フェッチユニット107は、
アドレス情報の送出をしなくなる。QFULL信号110がイン
アクティブレベル“0"になると再びメモリ108からQUEUE
106へ命令コードの書き込みが行われる。
よびQFULL110を受けて、メモリ108からQUEUE106への命
令の書き込みを制御する。QFULL信号110がインアクティ
ブレベル“0"で、QRDY信号109がアクティブレベル“1"
の場合、QUEUE106にはまだ命令を書き込む余裕があり、
QFULL信号110がインアクティブレベル“0"で、QRDY信号
109もインアクティブレベル“0"の場合、QUEUE106には
処理する命令が入っていないため、フェッチユニット10
7からは、アドレス情報が内部アドレス113上に送出さ
れ、外部アドレスバス114を介してメモリ108に受け取ら
れる。するとメモリ108から命令コードが送出され、外
部データバス112を経てQUEUE106に書き込まれ、蓄えら
れる。QUEUE106がいっぱいになると、QFULL信号110がア
クティブルベル“1"となり、フェッチユニット107は、
アドレス情報の送出をしなくなる。QFULL信号110がイン
アクティブレベル“0"になると再びメモリ108からQUEUE
106へ命令コードの書き込みが行われる。
コード変換メモリ105には、下位機種の命令コードを上
位機種の命令コードに変換するコード変換テーブルが格
納されている。
位機種の命令コードに変換するコード変換テーブルが格
納されている。
命令コードセレクタ104は、内部データバス111上の命令
コードか、コード変換メモリ105内の変換された命令コ
ードかを選択し、実行ユニット102へ送出する。
コードか、コード変換メモリ105内の変換された命令コ
ードかを選択し、実行ユニット102へ送出する。
メモリ108には、マイクロコンピュータ101がネイティブ
モードで実行するプログラム、エミュレーションモード
で実行するプログラム、処理データが納められている。
モードで実行するプログラム、エミュレーションモード
で実行するプログラム、処理データが納められている。
実行ユニット102内には、プログラム・カウンタ(以下P
Cと記す)115、プログラム・ステータス・ワード(以下
PSWと記す)116、レジスタ群117が含まれている。
Cと記す)115、プログラム・ステータス・ワード(以下
PSWと記す)116、レジスタ群117が含まれている。
PSW116には、ネイティブモード、エミュレーションモー
ドを設定するモード設定フリップフロップ118が設置さ
れている。他にZフラグ、キャリーフラグ等も含まれて
いるが本図中には図示していない。このモード設定フリ
ップ・フロップ118が“1"の場合、シングルチップマイ
コン101はネイティブモードとなり、フェッチした命令
コードを上位機種用の命令コードとして解釈、実行す
る。また、モード設定フリップフロップ118が“0"の場
合、シングルチップマイコン101は、エミュレーション
モードとなり、フェッチした命令コードを下位機種用の
命令コードとして処理する。
ドを設定するモード設定フリップフロップ118が設置さ
れている。他にZフラグ、キャリーフラグ等も含まれて
いるが本図中には図示していない。このモード設定フリ
ップ・フロップ118が“1"の場合、シングルチップマイ
コン101はネイティブモードとなり、フェッチした命令
コードを上位機種用の命令コードとして解釈、実行す
る。また、モード設定フリップフロップ118が“0"の場
合、シングルチップマイコン101は、エミュレーション
モードとなり、フェッチした命令コードを下位機種用の
命令コードとして処理する。
以下に実行ユニット102が実行する命令処理を第2図の
フローチャートを参照しながら説明する。MOVは、転送
命令で、レジスタ・レジスタ間、レジスタ・メモリ間で
のデータの転送、又は、レジスタへの直接データ転送、
メモリへの直接データ転送を行う、ADDは、加算命令
で、レジスタプラスレジスタ、レジスタプラスメモリ、
メモリプラスレジスタ、レジスタプラスデータ、メモリ
プラスデータの処理を行い、計算結果をレジスタまたは
メモリに格納する。SUBは、減算命令で、レジスタマイ
ナスレジスタ、レジスタマイナスメモリ、メモリマイナ
スレジスタ、レジスタマイナスデータ、メモリマイナス
データの処理を行い、計算結果をレジスタまたは、メモ
リに格納する。INA,nは、入出力命令で、第2オパラン
ドで指定している入出力装置103のアドレスnに格納し
てあるデータをアキュムレータAに転送する。OUTA,n
は、入出力命令で、第2オペランドで指定している入出
力装置103のアドレスnにアキュムレータAの内容を転
送する、INTは、割込命令で、INTが実行されるとPC115
とPSW116をスタック領域に退避し、所定割込みベクタへ
分岐する。そして、PSW116内のモード設定フリップフロ
ップ118を強制的にセットし、ネイティブモードとな
る。RET1命令は、主プログラムへの復帰命令で、この命
令を実行すると、スタック領域に退避されている割込命
令前のPC,PSWの情報をリストアし、再び主プログラムに
戻る。
フローチャートを参照しながら説明する。MOVは、転送
命令で、レジスタ・レジスタ間、レジスタ・メモリ間で
のデータの転送、又は、レジスタへの直接データ転送、
メモリへの直接データ転送を行う、ADDは、加算命令
で、レジスタプラスレジスタ、レジスタプラスメモリ、
メモリプラスレジスタ、レジスタプラスデータ、メモリ
プラスデータの処理を行い、計算結果をレジスタまたは
メモリに格納する。SUBは、減算命令で、レジスタマイ
ナスレジスタ、レジスタマイナスメモリ、メモリマイナ
スレジスタ、レジスタマイナスデータ、メモリマイナス
データの処理を行い、計算結果をレジスタまたは、メモ
リに格納する。INA,nは、入出力命令で、第2オパラン
ドで指定している入出力装置103のアドレスnに格納し
てあるデータをアキュムレータAに転送する。OUTA,n
は、入出力命令で、第2オペランドで指定している入出
力装置103のアドレスnにアキュムレータAの内容を転
送する、INTは、割込命令で、INTが実行されるとPC115
とPSW116をスタック領域に退避し、所定割込みベクタへ
分岐する。そして、PSW116内のモード設定フリップフロ
ップ118を強制的にセットし、ネイティブモードとな
る。RET1命令は、主プログラムへの復帰命令で、この命
令を実行すると、スタック領域に退避されている割込命
令前のPC,PSWの情報をリストアし、再び主プログラムに
戻る。
次に情報処理装置100の動作を説明する。この情報処理
装置100はQUEUE106を用いているため、実行ユニット102
が命令コードの実行をしていても、フェッチユニット10
7の指示でメモリ108からのフェッチが行われ、QUEUE106
に蓄えられる。QRDY信号109がアクティブレベル“1"で
あれば、QUEUE106からは、命令コードが次々と送出され
るため、前の命令コードが実行ユニット102に取り込ま
れると次の命令はすでにQUEUE106から内部データバス11
1に送出されている。ここまでは、ネイティブ・モード
にもエミュレーションモードにも共通の動作である。続
く動作は、ネイティブモードとエミュレーションモード
とに分けて説明する。
装置100はQUEUE106を用いているため、実行ユニット102
が命令コードの実行をしていても、フェッチユニット10
7の指示でメモリ108からのフェッチが行われ、QUEUE106
に蓄えられる。QRDY信号109がアクティブレベル“1"で
あれば、QUEUE106からは、命令コードが次々と送出され
るため、前の命令コードが実行ユニット102に取り込ま
れると次の命令はすでにQUEUE106から内部データバス11
1に送出されている。ここまでは、ネイティブ・モード
にもエミュレーションモードにも共通の動作である。続
く動作は、ネイティブモードとエミュレーションモード
とに分けて説明する。
まず最初にネイティブモードの場合を説明する。内部デ
ータバス111上の命令コードは、上位機種の命令コード
である。実行ユニット102はネイティブモードで動作し
ているため、命令コードセレクタ104は内部データバス1
11上の命令コードを選択し、実行ユニット102に出力す
る。実行ユニット102は、この命令コードをデコードし
て、第2図で説明した各命令を処理する。このときは、
すでに次の命令コードが内部データバス111上に出力さ
れており、前の命令コードの処理が終わるのを待ってい
る。この様に第5図に示す通り、命令コードのフェッ
チ、命令コードの実行が平行して行われるため、第4図
のQUEUEがない場合に比べ処理時間が短縮される。
ータバス111上の命令コードは、上位機種の命令コード
である。実行ユニット102はネイティブモードで動作し
ているため、命令コードセレクタ104は内部データバス1
11上の命令コードを選択し、実行ユニット102に出力す
る。実行ユニット102は、この命令コードをデコードし
て、第2図で説明した各命令を処理する。このときは、
すでに次の命令コードが内部データバス111上に出力さ
れており、前の命令コードの処理が終わるのを待ってい
る。この様に第5図に示す通り、命令コードのフェッ
チ、命令コードの実行が平行して行われるため、第4図
のQUEUEがない場合に比べ処理時間が短縮される。
次に、エミュレーションモードの場合を説明する。内部
データバス111上の命令コードは、下位機種の命令コー
ドである。下位機種の命令コードは、コード変換メモリ
105に送られ、コード変換メモリ105内のコード変換テー
ブルによって上位機種の命令コードに変換される。すな
わち、コード変換メモリ105は、下位機種用MOV命令の命
令コードが入力すると、下位機種用MOV命令と同じ処理
を行う上位機種用MOV命令の命令コードに変換し、同様
に下位機種用ADD命令の命令コードが入力すると、下位
機種用ADD命令と同じ処理を行う上位機種用ADD命令の命
令コードに変換する。実行ユニット102がエミュレーシ
ョンモードで動作しているため、命令コードセレクタ10
4は、コード変換メモリ105の命令コードを選択し、上位
機種命令に変換された命令コードを実行ユニット102に
出力する。実行ユニット102はこの命令コードをデコー
ドしてMOVであれば転送をADDであれば加算をSUBであれ
ば、減算を実行する。命令コードを変換した後の実行ユ
ニット102の動作は第2図で説明したものと同様であ
る。そして、このときはすでに次の命令コードがコード
変換されている。以上の様に、第7図に示す通り、命令
コードのフェッチ、命令コードの変換、命令コードの実
行が平行して行われるため、第6図のQUEUEがない場合
に比べ、処理時間が短縮される。
データバス111上の命令コードは、下位機種の命令コー
ドである。下位機種の命令コードは、コード変換メモリ
105に送られ、コード変換メモリ105内のコード変換テー
ブルによって上位機種の命令コードに変換される。すな
わち、コード変換メモリ105は、下位機種用MOV命令の命
令コードが入力すると、下位機種用MOV命令と同じ処理
を行う上位機種用MOV命令の命令コードに変換し、同様
に下位機種用ADD命令の命令コードが入力すると、下位
機種用ADD命令と同じ処理を行う上位機種用ADD命令の命
令コードに変換する。実行ユニット102がエミュレーシ
ョンモードで動作しているため、命令コードセレクタ10
4は、コード変換メモリ105の命令コードを選択し、上位
機種命令に変換された命令コードを実行ユニット102に
出力する。実行ユニット102はこの命令コードをデコー
ドしてMOVであれば転送をADDであれば加算をSUBであれ
ば、減算を実行する。命令コードを変換した後の実行ユ
ニット102の動作は第2図で説明したものと同様であ
る。そして、このときはすでに次の命令コードがコード
変換されている。以上の様に、第7図に示す通り、命令
コードのフェッチ、命令コードの変換、命令コードの実
行が平行して行われるため、第6図のQUEUEがない場合
に比べ、処理時間が短縮される。
以上説明したように本発明は下位機種の命令セットを実
行する機能と上位機種の命令セットを実行する機能を備
えているため、下位機種用と上位機種用の両方のソフト
ウェアを実行できるという利点がある。
行する機能と上位機種の命令セットを実行する機能を備
えているため、下位機種用と上位機種用の両方のソフト
ウェアを実行できるという利点がある。
また、本発明に関する情報処理装置には、命令コード変
換メモリを用いているため、2つのマイコンを搭載する
ことなく上位機種の命令セットを実行する機能をもった
マイコンだけで下位機種の命令も処理できるので、今ま
での下位機種用のマイコンと上位機種用のマイコンの2
つを使っていた情報処理装置に比べ小型化でき、また、
低コスト化も可能であるという利点もある。
換メモリを用いているため、2つのマイコンを搭載する
ことなく上位機種の命令セットを実行する機能をもった
マイコンだけで下位機種の命令も処理できるので、今ま
での下位機種用のマイコンと上位機種用のマイコンの2
つを使っていた情報処理装置に比べ小型化でき、また、
低コスト化も可能であるという利点もある。
さらに、本発明に関する情報処理装置には、QUEUEを用
いているため、1命令の処理が終わるたびにメモリから
命令コードを読み出すのではなく、命令コードのフェッ
チ、命令コードの実行が平行して行われるため、プログ
ラム処理速度が速いという利点がある。
いているため、1命令の処理が終わるたびにメモリから
命令コードを読み出すのではなく、命令コードのフェッ
チ、命令コードの実行が平行して行われるため、プログ
ラム処理速度が速いという利点がある。
第1図は本発明における情報処理装置の構成図、第2図
はネイティブモード時のフローチャート、第3図はエミ
ュレーションモード時のフローチャート、第4図はQUEU
Eを用いないときのタイムチャート、第5図はQUEUEを用
いたときのタイムチャート、第6図は本発明における情
報処理装置においてQUEUEを用いない場合のタイムチャ
ート、第7図は本発明における情報処理装置においてQU
EUEを用いる場合のタイムチャート、第8図は従来のエ
ミュレーション機能の付加されていない上位機種の構成
図、第9図は従来の下位機種用エミュレーション機能付
の上位機種の構成図である。 102……実行ユニット、103……入出力装置、104……命
令コードセレクタ、105……コード変換メモリ、106……
QUEUE、107……フェッチユニット、108……メモリ、109
……QRDY信号、110……QFULL信号、111……内部データ
バス、112……外部データバス、113……内部アドレスバ
ス、114……外部アドレスバス、115……PC、116……PS
W、117……レジスタ、118……モード設定フリップフロ
ップ、801……CPU、802……メモリ、803……入出力装
置、901……上位機種用マイコン、902……下位機種用マ
イコン、903……エミュレーション制御装置、904……メ
モリ、905……アドレスバス、906……データバス。
はネイティブモード時のフローチャート、第3図はエミ
ュレーションモード時のフローチャート、第4図はQUEU
Eを用いないときのタイムチャート、第5図はQUEUEを用
いたときのタイムチャート、第6図は本発明における情
報処理装置においてQUEUEを用いない場合のタイムチャ
ート、第7図は本発明における情報処理装置においてQU
EUEを用いる場合のタイムチャート、第8図は従来のエ
ミュレーション機能の付加されていない上位機種の構成
図、第9図は従来の下位機種用エミュレーション機能付
の上位機種の構成図である。 102……実行ユニット、103……入出力装置、104……命
令コードセレクタ、105……コード変換メモリ、106……
QUEUE、107……フェッチユニット、108……メモリ、109
……QRDY信号、110……QFULL信号、111……内部データ
バス、112……外部データバス、113……内部アドレスバ
ス、114……外部アドレスバス、115……PC、116……PS
W、117……レジスタ、118……モード設定フリップフロ
ップ、801……CPU、802……メモリ、803……入出力装
置、901……上位機種用マイコン、902……下位機種用マ
イコン、903……エミュレーション制御装置、904……メ
モリ、905……アドレスバス、906……データバス。
フロントページの続き (56)参考文献 特開 昭59−8058(JP,A) 特開 昭59−99552(JP,A) 特開 昭51−32146(JP,A) 特開 昭54−30752(JP,A) 日経エレクトロニクス,1984年4月23日 号,日経マグロウヒル社,P.100−105
Claims (1)
- 【請求項1】プログラム記憶手段内に格納される上位機
種用の第1の命令コード群を解読する解読回路の制御に
より、各種のデータ処理を実行する演算処理装置を単一
半導体基板上に集積した半導体集積回路において、複数
の前記上位機種用の第1の命令コード群と下位機種用の
第2の命令コード群を蓄える記憶手段と、前記プログラ
ム記憶手段内の前記第1の命令コード群と前記第2の命
令コード群を前記記憶手段へ送出する命令読み出し手段
と、前記第1の命令コード群を実行する実行手段と、前
記第2の命令コード群から前記第1の命令コード群を生
成する命令コード変換手段と、前記記憶手段から送出さ
れた命令コード群が前記上位機種用の第1の命令コード
群である場合は該上位機種用の第1の命令コード群を選
択し、前記記憶手段から出力された命令コード群が前記
第2の命令コード群である場合は、前記第2の命令コー
ドを前記命令コード変換手段により生成された前記第1
の命令コード群を選択し前記実行手段に送出する選択手
段とを含み、前記プログラム記憶手段内の命令コード群
が前記第2の命令コード群である場合は、前記命令読み
出し手段による前記プログラム記憶手段内の前記第2の
命令コード群の前記記憶手段への格納処理と、前記命令
コード変換手段による前記第2の命令コードから前記第
1の命令コードへの変換処理と、前記実行手段による前
記第1の命令コードの実行処理とを並列に実行し、前記
プログラム記憶手段内の命令コード群が前記第1の命令
コード群である場合は、前記命令読み出し手段による前
記プログラム記憶手段内の前記第1の命令コード群の前
記記憶手段への格納処理と、前記実行手段による前記第
1の命令コードの実行処理とを並列に実行することを特
徴とする命令処理方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60165177A JPH07109589B2 (ja) | 1985-07-25 | 1985-07-25 | 命令処理方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60165177A JPH07109589B2 (ja) | 1985-07-25 | 1985-07-25 | 命令処理方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6225334A JPS6225334A (ja) | 1987-02-03 |
| JPH07109589B2 true JPH07109589B2 (ja) | 1995-11-22 |
Family
ID=15807313
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60165177A Expired - Lifetime JPH07109589B2 (ja) | 1985-07-25 | 1985-07-25 | 命令処理方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH07109589B2 (ja) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0687755B2 (ja) * | 1989-12-22 | 1994-11-09 | 辻製油株式会社 | 耐海水性の改善された人工飼料の製造法 |
| JP2839730B2 (ja) * | 1991-02-25 | 1998-12-16 | 株式会社東芝 | エミュレーション装置及び半導体装置 |
| GB2307072B (en) | 1994-06-10 | 1998-05-13 | Advanced Risc Mach Ltd | Interoperability with multiple instruction sets |
| US5758140A (en) * | 1996-01-25 | 1998-05-26 | International Business Machines Corporation | Method and system for emulating instructions by performing an operation directly using special-purpose register contents |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS548415B2 (ja) * | 1974-09-11 | 1979-04-16 | ||
| GB2002553A (en) * | 1977-08-10 | 1979-02-21 | Itek Corp | High speed, real-time computer emulator |
| JPS598058A (ja) * | 1982-07-02 | 1984-01-17 | Matsushita Electric Ind Co Ltd | マイクロプロセツサ |
| JPS5999552A (ja) * | 1982-11-30 | 1984-06-08 | Matsushita Electric Ind Co Ltd | マイクロコンピユ−タ |
-
1985
- 1985-07-25 JP JP60165177A patent/JPH07109589B2/ja not_active Expired - Lifetime
Non-Patent Citations (1)
| Title |
|---|
| 日経エレクトロニクス,1984年4月23日号,日経マグロウヒル社,P.100−105 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPS6225334A (ja) | 1987-02-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CA2074633C (en) | Real-time, concurrent, multifunction digital signal processor subsystem for personal computers | |
| JP2644780B2 (ja) | 処理依頼機能を持つ並列計算機 | |
| US4715013A (en) | Coprocessor instruction format | |
| EP0230664B1 (en) | Master slave microprocessor system with virtual memory | |
| US3886523A (en) | Micro program data processor having parallel instruction flow streams for plural levels of sub instruction sets | |
| US4750110A (en) | Method and apparatus for executing an instruction contingent upon a condition present in another data processor | |
| JPH08305585A (ja) | 割込制御装置 | |
| US5021991A (en) | Coprocessor instruction format | |
| CN114116555A (zh) | 直接存储器访问电路、操作方法及存取指令的产生方法 | |
| JPH07120338B2 (ja) | 共同プロセッサによる命令の実行をデータプロセッサが調整する方法および該データプロセッサ | |
| US6986028B2 (en) | Repeat block with zero cycle overhead nesting | |
| US4758950A (en) | Method and apparatus for selectively delaying an interrupt of a coprocessor | |
| US4914578A (en) | Method and apparatus for interrupting a coprocessor | |
| JPH07287682A (ja) | コンピュータシステム | |
| JP2002014809A (ja) | マイクロプロセッサ並びにアセンブラ、その方法およびそのプログラムを記録した記録媒体 | |
| JPH0683615A (ja) | 命令セットエミュレーションを行う計算機 | |
| JP2826309B2 (ja) | 情報処理装置 | |
| US4994961A (en) | Coprocessor instruction format | |
| JPS6225334A (ja) | 命令処理方式 | |
| US8464016B2 (en) | Method and device for switching over in a memory for a control device | |
| US7689991B2 (en) | Bus management techniques | |
| JPS62151938A (ja) | 命令処理方式 | |
| US4758978A (en) | Method and apparatus for selectively evaluating an effective address for a coprocessor | |
| US5561818A (en) | Microprocessor and data processing system for data transfer using a register file | |
| JPH056281A (ja) | 情報処理装置 |