JP2826309B2 - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JP2826309B2
JP2826309B2 JP60260620A JP26062085A JP2826309B2 JP 2826309 B2 JP2826309 B2 JP 2826309B2 JP 60260620 A JP60260620 A JP 60260620A JP 26062085 A JP26062085 A JP 26062085A JP 2826309 B2 JP2826309 B2 JP 2826309B2
Authority
JP
Japan
Prior art keywords
input
instruction code
output
instruction
operand 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.)
Expired - Lifetime
Application number
JP60260620A
Other languages
English (en)
Other versions
JPS62120542A (ja
Inventor
昌弘 野村
重達 香取
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.)
NEC Corp
Original Assignee
Nippon Electric Co Ltd
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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP60260620A priority Critical patent/JP2826309B2/ja
Publication of JPS62120542A publication Critical patent/JPS62120542A/ja
Application granted granted Critical
Publication of JP2826309B2 publication Critical patent/JP2826309B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、命令処理実行方式に関し、特に、命令コー
ドを解読する解読回路の制御により各種のデータ処理を
実行する演算処理装置および入出力装置を単一半導体基
板上に集積した情報処理装置の命令処理実行方式に関す
るものである。 従来の技術 近年、パーソナルコンピュータ等マイクロコンピュー
タを用いた情報処理機器市場の急成長に伴ない、そのソ
フトウェア資産も汎用コンピュータの場合と同様膨大な
ものとなってきている。 この為、新たに高性能マイクロコンピュータを開発す
る場合、特に、開発製品が一連の製品ファミリーの上位
機種として位置付けられる様な場合において、一連の下
位機種で蓄積されたソフトウェア資産の互換性あるいは
継承性ということが考慮されるに至っている。 このような観点から、従来は、上位機種上で下位機種
用ソフトウェアを実行させる手段として、まず、下位機
種用ソフトウェアの上位機種への移植という手法が用い
られてきた。 しかしながら、この方法も今後は、ソフトウェア数の
増大に伴なうソフトウェア移殖にかかる費用と工数の増
加から、全てのソフトウェアの移殖を実現する事は極め
て困難になるものと思われる。 これを解決するものとして、第5図に示すような構成
の情報処理装置が考え出された。図示する情報処理装置
400は、上位機種の命令セットを実行するマイクロコン
ピュータ401、下位機種の命令セットを実行するマイク
ロコンピュータ402、これら両マイクロコンピュータ401
および402の実行を制御するエミュレーション制御装置4
03、上位機種用、下位機種用のソフトウェアを格納する
メモリ404および入出力装置405を有しており、アドレス
バス406およびデータバス407により相互に接続されてい
る。 このような構成において、上位機種用のソフトウェア
を実行する時は、エミュレーション制御装置403の制御
でアドレスバス406およびデータバス407が上位機種の命
令セットを実行するマイクロコンピュータ401に接続さ
れ、メモリ404内の上位機種用のソフトウェアを実行す
るようになっている。 また、下位機種用のソフトウェアを実行させる時は、
エミュレーション制御装置403の制御によりアドレスバ
ス406およびデータバス407が下位機種の命令セットを実
行するマイクロコンピュータ402に接続され、メモリ404
内の下位機種用のソフトウェアを実行するようになって
いる。 発明が解決しようとする問題点 しかしながら、このような従来の情報処理装置では、
2つのマイクロコンピュータを備え、これら両マイクロ
コンピュータの実行動作を切換える事により、上位機種
用、下位機種用両方のソフトウェアを実行している。そ
の為、一方の機種のソフトウェアを実行している際に
は、他方の機種のソフトウェアを実行するマイクロコン
ピュータは全く動作せず、ハードウェア資源として非常
に大きな無駄であるといった問題点がある。 また、上記機種及び下位機種に入出力装置が内蔵され
ている場合には、その各入出力装置には上位機種あるい
は下位機種により各々異なる固有なアドレス割付けが行
なわれている。その為、各入出力装置に単一アドレスが
割付けられた従来の情報処理装置では上位機種用或いは
下位機種用のソフトウェアにおいて入出力命令が正常に
実行されない。 これを解決するために、上位機種用、下位機種用に各
々固有アドレスを割付けた入出力装置群を2通り用意し
ていた。これら2つの入出力装置群を、上位機種用およ
び下位機種用のそれぞれのソフトウェアを実行するマイ
クロコンピュータの切換え時に、同様に切換える事が必
要となる。しかし、この場合にも、一方の入出力装置群
が動作している時には他方の入出力装置群は一切選択さ
れないので、ハードウェア資源が無駄になっているとい
う問題点がある。 このように、従来の情報処理装置では、マイクロコン
ピュータ、入出力装置共2組用意する事より、システム
規模の増大およびそれに伴なうシステム価格の上昇を引
起こすだけでなく、それらハードウェア資源が殆ど有効
に利用されないという著しい欠点を有していた。 本発明は上述した点に鑑みて為されたものであり、シ
ステム規模の縮小およびシステムコストの低減を計る情
報処理装置を提供することを目的としている。 問題点を解決するための手段 本発明は、プログラム記憶手段内に格納される第1の
命令コード群を解読する解読手段の制御により各種のデ
ータ処理を実行する中央処理部と、外部との入出力デー
タ処理を行なう入出力部とを単一半導体基板上に集積し
た情報処理装置であって、この中央処理部は、第1の命
令コード群を実行する実行手段と、プログラム記憶手段
内に格納される第2の命令コード群からアドレス情報を
生成し、このアドレス情報に基づいて第2の命令コード
群から第1の命令コード群を生成する命令コード変換記
憶手段と、実行手段へ送出する命令コードを制御する命
令コード選択手段と、第2の命令コード群に対応する入
出力部のオペランドアドレスを、第1の命令コード群に
対応する該入出力部のオペランドアドレスに変換し、特
定コードへの変換では実行手段に割込み要求を発生する
入出力オペランドアドレス変換手段とを有している。 作用 本発明にあっては、命令コード選択手段の制御により
プログラム記憶手段内の第1の命令コード群を実行する
と共に、第2の命令コード群から命令コード変換記憶手
段で生成された第1の命令コード群を実行し、第2の命
令コード群に対応する入出力部に対する入出力処理にお
いては、入出力オペランドアドレス変換手段で生成され
た入出力オペランドアドレスで入出力処理を行なうと共
に、特定コードへの変換で入出力オペランドアドレス変
換手段が実行手段に割込み要求を発生するようになって
いる。 実施例 以下、添付の図面を参照して本発明を実施例により詳
述する。 第1図の本発明に1実施例を示す。なお、本発明の実
施例による情報処理装置は、上位機種用の命令をそのま
ま解釈実行するモード(以下ネイティブモードと記す)
および下位機種用の命令を該当する上位機種用の命令に
変換後解釈実行するモード(以下エミュレーションモー
ドと記す)の2つの実行モードを有している。 情報処理装置100内の実行部110は、上位機種命令の処
理実行を行なうものである。この実行部110は、次に実
行すべき命令の命令コードのメモリ120内格納アドレス
を指すプログラムカウンタ(以下PCと記す)111と、実
行部110の動作状態を示すプログラムステータスワード
(以下PSWと記す)112と、処理データを保持する汎用レ
ジスタ群113と、実行する命令を保持する命令レジスタ1
14と、命令レジスタ114の内容を解読し、各種制御信号
を発生する命令デコーダ115と、命令デコーダ115の出力
により実行部110全体の動作を制御する実行制御部116
と、実行制御部116の制御により処理データに対して算
術論理演算を行う算術論理演算ユニット(以下ALUと記
す)117と、メモリ120内に形成されるスタック領域の先
頭アドレスを指すスタックポインタ119とによって構成
される。 また実行部110のPSW112内には、ネイティブモードと
エミュレーションモードとの2つの実行モードを切換え
る為にモード設定フリップフロップ118が設けられてい
る。実行部110はPSW操作命令によりモード設定フリップ
フロップ118を書き替える事によって、情報処理装置100
の実行モードを切換える。 本実施例による情報処理装置100は、モード設定フリ
ップフロップ118が“1"にセットされている時はネイテ
ィブモードで、また“0"にリセットされている時はエミ
ュレーションモードで動作するようになっている。 情報処理装置100は実行部110の他に、下位機種の命令
群を上位機種の命令群に変換する命令コード変換テーブ
ル130と、内部バス140上に読み出された上位機種の命令
かあるいは命令コード変換テーブル130により変換後の
上位機種の命令かを、PSW112内のモード設定フリップフ
ロップ118の値によって切換え、実行部110に転送する命
令コードセレクタ150と、外部との入出力データの入出
力処理を行なう入出力装置群160とを含んでいる。更
に、メモリ120は、実行部110の処理プログラム、処理デ
ータおよび下位機種で固有にアドレス割付けられた入出
力装置群160のオペランドアドレスを上位機種で割付け
られた該当の入出力装置群160のオペランドアドレスに
変換する入出力オペランドアドレス変換テーブル121を
格納している。これらの全機能ユニットは、内部バス14
0により相互に接続されている。 次に、情報処理装置100がネイティブモード及びエミ
ュレーションモードで動作する時の命令実行の詳細につ
いて述べる。 第2図に情報処理装置100がネイティブモードで動作
する時の命令実行のフローチャートを示し、各ステップ
の動作を以下に説明する。 ステップ201: 実行部110は、PC111で指されるメモリ120内の領域に
より上位機種用の命令コードを内容バス140上に読みだ
す。 ステップ202: PSW112内のモード設定フリップフロップ118が“1"に
セットされていることにより、命令コードセレクタ150
は内部バス140上のデータを選択する。これに応じて、
実行部110は上位機種用の命令コードをそのまま命令レ
ジスタ114に取り込む。 ステップ203: 実行部110は、PC111を更新すると共に命令コードレジ
スタ114内の命令コードを命令デコーダ115によって複号
化する。 ステップ204: 実行制御部116は命令デコーダ115からの複号化信号に
より、汎用レジスタ群113の読み出しおよび書き込みを
行う。それと共に、メモリ120、入出力装置群160からの
オペランドデータの読み出しあるいはメモリ120、入出
力装置群160への処理結果の書き込みをなす。更に、ALC
117の算術論理演算動作の制御を行う。このようにし
て、各種命令処理を実行する。しかる後、ステップ201
に戻る。 以上のステップ201〜204のループ動作を繰り返す。 第3図(A)および(B)は、情報処理装置100がエ
ミュレーションモードで動作する時の命令実行のフロー
チャートを示し、各ステップの動作を以下に説明する。 ステップ301: 実行部110は、PC111で指令されるメモリ120内の領域
より下位機種用の命令コードを読み出す。 ステップ302: 実行部110は命令コード情報を参照アドレスとして命
令コード変換テーブル130を参照し、下位機種用の命令
コードに該当する上位機種用の命令コードを命令コード
変換テーブル130より読み出す。 ステップ303: PSW112内のモード設定フリップフロップ118が“0"に
リセットされていることにより、命令コードセレクタ15
0が命令コード変換テーブル130からの出力データを選択
する。実行部110は変換された上位機種用の命令コード
を命令レジスタ114に取り込む。 ステップ304: 実行部110は、PC111を更新すると共に、命令レジスタ
114内の命令コードを命令デコーダ115により複号化す
る。 ステップ305: 命令デコーダ115で複号化された命令が、入出力装置
群160との入出力命令であるか否かを判定する。この、
入出力命令は、命令コード変換テーブル130により、例
えば16ビットの下位機種の入出力命令が32ビットの上位
機種の入出力命令に変換され、この変換された命令が命
令デコーダ115により複号化されたものである。ここ
で、肯定判定の場合()にはステップ307へ移行し、
また否定判定の場合()にはステップ306へ移行す
る。 ステップ306: 実行制御部116は、命令デコーダ115の複号化命令によ
り、汎用レジスタ群113の読み出しおよび書き込み、メ
モリ120からのオペランドデータの読み出しあるいはメ
モリ120への処理結果の書き込み、ALC117の算術論理演
算動作の制御を行う。このようにして入出力命令処理以
外の各種命令処理を実行する。しかる後ステップ301に
戻る()。 ステップ307: 実行部110は、命令コードに続く下位機種で固有に割
付けられた入出力装置群160のオペランドアドレスをメ
モリ120より読み出す。 ステップ308: 実行部110は、読み出したオペランドアドレスを参照
アドレスとして、入出力オペランドアドレス変換テーブ
ルを参照する。入出力オペランドアドレス変換テーブル
121は、前述のようにメモリ120内に設けられているもの
であるため、その構成はメモリである。従って、参照ア
ドレスに対応しておればどのような変換オペランドアド
レスを出力してもよいが、通常、入出力装置群160に固
有にアドレス割付けされたオペランドアドレスは、ステ
ップ307において述べた下位機種で固有に割付けられた
オペランドアドレスと同じであるので、実行部110は、
ステップ307で読み出したオペランドアドレスに実質的
変更を加えず、入出力オペランドアドレス変換テーブル
によって例えば0等を付加して、単に16ビットを32ビッ
トに変更するような変換をし、上位機種用のオペランド
アドレスとする。 ステップ309: 実行制御部116は、変換された入出力オペランドアド
レスに基づいて入出力命令処理を行ない、命令実行処理
後ステップ301へ戻る。 第4図は、第3図(B)のステップ309の別な処理実
行例を示す流れである。これは、下位機種で固有にアド
レス割付けされた特定の入出力装置について例外的な処
理を行う場合である。つまり、エミュレーションモード
時の入出力命令処理において、入出力装置群160内の幾
つかの入出力装置について異なる入出力処理を行なう、
或いは下位機種で固有にアドレス割付けされた入出力装
置が入出力装置群160に備えられていない等の処理の場
合についてである。 これは、入出力オペランドアドレス変換テーブル121
内において、例外的な処理を行う特定の入出力装置に対
する参照アドレスが入力されたときに、例外処理を起動
させる為の特殊コードを変換オペランドアドレスとして
出力するように予め設定しておき、第4図に示すような
ステップを実行すればよいのである。例えば、一般的に
メモリのアドレス空間は全て利用すべく割り付けられて
いるわけではなく、従って、特殊コードとして、FF等の
通常利用されない変換オペランドアドレスを出力するよ
うに設定しておけばよい。 ステップ311: エミュレーションモード時の入出力命令処理におい
て、実行部110はメモリ120内の入出力オペランドアドレ
ス変換テーブル121を参照した時に読み出された変換オ
ペランドアドレスであるテーブルデータが特殊コードで
あるかどうかの判定を行なう。もし、特殊コードであっ
た場合には(肯定判定)ステップ313へ移行する。 ステップ312: ステップ311で否定判定となった場合つまり特殊コー
ドでなかった場合に、実行制御部116は第3図(B)に
て示したステップ309と同様に、変換オペランドアドレ
スに対する入出力命令処理を行う。 ステップ313: ステップ311で肯定判定つまり変換オペランドアドレ
スが特殊コードであった場合には、実行制御部116は、
特殊コードを参照したアドレス(下位機種固有のアドレ
ス割付けによる入出力装置群160のオペランドアドレ
ス)をスタックポインタ119で指されるメモリ120内のス
タック領域に退避させる。 ステップ314: 実行制御部116は、割込み命令コードを発生して命令
レジスタ114に格納する事により、ソフトウェアによる
割込み処理に入る。割込み処理では、メモリ120内のス
タック領域に退避した入出力装置群160のオペランドア
ドレスを読み出す事により、入出力装置毎の各々の処理
へ分岐する事ができる。 上述した如く、下位機種の命令コードを上位機種の命
令コードに変換する命令コード変換テーブル130と命令
コードセレクタ150と備え、実行モードを切換えるのみ
で、上位機種、下位機種両方のマイクロコンピュータを
備える事なしに、上位機種用、下位機種用の両方のソフ
トフェアを実行する事が可能である。 また、上位機種、下位機種各々に固有にアドレス割付
けされた入出力装置に対する操作命令(入出力命令)に
おいても、下位機種において割付けされたアドレスを、
上位機種における該当入出力装置のアドレスに変換する
テーブルを備え、上位機種の入出力命令を実行する事に
より、何ら他のハードウェアを付加する事なく、上位機
種、下位機種の入出力命令の実行が可能となっている。 発明の効果 以上詳述した如く本発明によれば、複数のマイクロコ
ンピュータおよび複数のマイクロコンピュータに対応す
る複数の入出力装置を備える事なく、複数のマイクロコ
ンピュータのソフトフェアを処理実行する事が可能な情
報処理装置を実現することができ、システム規模の削
減、それに伴なうシステムの低価格化の点で極めて有効
であり、更にハードウェア資源も非常に有効に活用さ
れ、実用に供して極めて効果大である。
【図面の簡単な説明】 第1図は本発明の一実施例による情報処理装置の構成を
示すブロック図である。 第2図は本発明実施例におけるネイティブモード時の命
令実行順序を示す流れ図である。 第3図(A)および(B)は本発明実施例におけるエミ
ュレーションモード時の命令実行順序を示す流れ図であ
る。 第4図はエミュレーションモード時の入出力命令におい
て例外処理をなす場合の命令実行順序を示す流れ図であ
る。 第5図は従来の下位機種用のエミュレーション機能を備
えた情報処理装置の構成ブロック図である。 (主な参照番号) 100、400……情報処理装置、110……実行部、 115……命令デコーダ、116……実行制御部、 118……モード設定フリップフロップ、 120……メモリ、 130……命令コード変換テーブル、 150……命令コードセレクタ、 401……上位機種マイクロコンピュータ、 402……下位機種マイクロコンピュータ、 403……エミュレーション制御装置、 404……メモリ、405……入出力装置、 406……アドレスバス、407……データバス

Claims (1)

  1. (57)【特許請求の範囲】 1.第1および第2の命令コード群を有するプログラム
    を格納するプログラム記憶手段と、前記第1の命令コー
    ド群を解読する解読手段と、該解読手段によって得られ
    る命令によって各種のデータ処理を為す中央処理部と、
    該中央処理部との間で入力データおよび出力データの授
    受を行う入出力部と、オペランドアドレス変換テーブル
    を有するメモリとを備える情報処理装置において、前記
    中央処理部は、前記プログラムに含まれる前記第2の命
    令コード群から生成されるアドレス情報に基づいて、前
    記第2の命令コード群から前記第1の命令コード群を生
    成する命令コード変換記憶手段と、前記第1の命令コー
    ド群を実行する実行手段と、該実行手段へ送出する命令
    コードを制御する命令コード選択手段と、前記第2の命
    令コード群に対応する前記入出力部のオペランドアドレ
    スを前記オペランドアドレス変換テーブルを用いて前記
    第1の命令コード群に対応する前記入出力部のオペラン
    ドアドレスに変換する入出力オペランドアドレス変換手
    段とを有し、前記中央処理部は、前記命令コード選択手
    段の制御の下で、前記プログラム記憶手段内の第1の命
    令コード群を実行すると共に、前記第2の命令コード群
    から前記命令コード変換記憶手段で生成された前記第1
    の命令コード群を実行し、前記第2の命令コード群に対
    応する入出力部に対する入出力処理においては、前記入
    出力オペランドアドレス変換手段で生成された入出力オ
    ペランドアドレスで入出力処理を行い、さらに、前記オ
    ペランドアドレス変換テーブルは予め与えられた特定コ
    ードが付加されたものを有し、前記入出力オぺランド変
    換手段は前記オペランドアドレス変換テーブルを用いて
    生成した入出力オペランドアドレスに前記特定コードが
    付加されておれば前記実行手段に対し割込み要求を発生
    することを特徴とする情報処理装置。
JP60260620A 1985-11-20 1985-11-20 情報処理装置 Expired - Lifetime JP2826309B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60260620A JP2826309B2 (ja) 1985-11-20 1985-11-20 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60260620A JP2826309B2 (ja) 1985-11-20 1985-11-20 情報処理装置

Publications (2)

Publication Number Publication Date
JPS62120542A JPS62120542A (ja) 1987-06-01
JP2826309B2 true JP2826309B2 (ja) 1998-11-18

Family

ID=17350453

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60260620A Expired - Lifetime JP2826309B2 (ja) 1985-11-20 1985-11-20 情報処理装置

Country Status (1)

Country Link
JP (1) JP2826309B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2780974B2 (ja) * 1987-11-30 1998-07-30 株式会社リコー プリンタ
JP3634379B2 (ja) 1996-01-24 2005-03-30 サン・マイクロシステムズ・インコーポレイテッド スタックキャッシングのための方法及び装置
JPH10177487A (ja) * 1996-12-16 1998-06-30 Fujitsu Ltd プロセッサの命令シミュレーション方法および命令シミュレーション・システム
US7802252B2 (en) * 2007-01-09 2010-09-21 International Business Machines Corporation Method and apparatus for selecting the architecture level to which a processor appears to conform

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5099656A (ja) * 1974-01-02 1975-08-07
JPS5193643A (ja) * 1975-02-15 1976-08-17
JPS55118161A (en) * 1979-03-05 1980-09-10 Nec Corp Information processor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5099656A (ja) * 1974-01-02 1975-08-07
JPS5193643A (ja) * 1975-02-15 1976-08-17
JPS55118161A (en) * 1979-03-05 1980-09-10 Nec Corp Information processor

Also Published As

Publication number Publication date
JPS62120542A (ja) 1987-06-01

Similar Documents

Publication Publication Date Title
US5077657A (en) Emulator Assist unit which forms addresses of user instruction operands in response to emulator assist unit commands from host processor
EP0315275B1 (en) Flexible asic microcomputer
EP0169565B1 (en) Microprocessor compatible with any software represented by different types of instruction formats
US4005391A (en) Peripheral interrupt priority resolution in a micro program data processor having plural levels of subinstruction sets
JPH08305585A (ja) 割込制御装置
JP2845433B2 (ja) 集積回路装置
US6012138A (en) Dynamically variable length CPU pipeline for efficiently executing two instruction sets
JP2826309B2 (ja) 情報処理装置
JPH0523447B2 (ja)
JPH03171231A (ja) マイクロコンピュータシステム
JP2551167B2 (ja) マイクロコンピュータ
JPH0683615A (ja) 命令セットエミュレーションを行う計算機
JPH056281A (ja) 情報処理装置
JPS594049B2 (ja) コンピュ−タ装置
JPH07109589B2 (ja) 命令処理方式
JPS62151938A (ja) 命令処理方式
JPS6217773B2 (ja)
JPS6097440A (ja) 仮想多重プロセツサ装置
JPH05181673A (ja) マイクロプロセッサ
KR950006585B1 (ko) 마이크로프로그램 제어장치 및 그 제어방법
JPS59218569A (ja) マイクロ・コンピユ−タ
JP2618703B2 (ja) プログラマブルシーケンスコントローラの高速演算処理方式
JP3474347B2 (ja) マイクロコンピュータの命令解読部
JP2743947B2 (ja) マイクロプログラム制御方式
JP2000298589A (ja) マイクロプロセッサ