JPH05108353A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH05108353A
JPH05108353A JP27093691A JP27093691A JPH05108353A JP H05108353 A JPH05108353 A JP H05108353A JP 27093691 A JP27093691 A JP 27093691A JP 27093691 A JP27093691 A JP 27093691A JP H05108353 A JPH05108353 A JP H05108353A
Authority
JP
Japan
Prior art keywords
register
instruction
group
circuit
register group
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
JP27093691A
Other languages
English (en)
Inventor
Nobuo Higaki
信生 桧垣
Toshimichi Matsuzaki
敏道 松崎
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP27093691A priority Critical patent/JPH05108353A/ja
Publication of JPH05108353A publication Critical patent/JPH05108353A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】 【目的】 本発明は、機械語命令に基づいて種々の演算
等を行う情報処理装置に関し、多数のレジスタを有効に
使用することにより、特にエミュレーションやサブルー
チンの実行や割り込み処理において、プログラムコード
サイズを増加せず、また割り込み応答の速いエミュレー
ションが可能な情報処理装置を提供する。 【構成】 デ−タを保持する複数のレジスタを有する第
1レジスタ群と、第1レジスタ群のレジスタに対応する
レジスタを有する第2レジスタ群と、所定の命令が入力
されたとき命令によって指定された第2レジスタ群のレ
ジスタを第1レジスタ群の対応するレジスタとして使用
できるように切り換える切換手段とを備えたことによ
り、レジスタの退避や復帰をする必要がなく、プログラ
ムサイズを増加せずにエミュレーションやサブルーチン
や割り込み処理を行なえる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は機械語命令に基づいて種
々の演算等を行う情報処理装置に関し、特にエミュレー
ションやサブルーチンの実行や割り込み処理において多
数のレジスタを有効に使用し得る改良に関する。
【0002】
【従来の技術】以下図面を参照しながら、従来の情報処
理装置の一例について説明する。図9は従来の情報処理
装置を示すものであり、命令解読器901aを備えた制
御部901と汎用レジスタ群902aを備えた演算実行
部902とからなる。この情報処理装置が汎用レジスタ
群902aをアクセスする演算を実行する場合は、ま
ず、命令解読器901aが機械語命令を解読する。そし
て演算に必要なデータを汎用レジスタ群902aから読
み出すために、命令解読器901aは汎用レジスタ群9
02aに対して読み出すレジスタ番号を出力し、汎用レ
ジスタ群902aはレジスタ番号に対応するレジスタ内
のデータを出力する。
【0003】次に、命令解読器901aは演算を実行す
るために、演算実行部902に対して制御信号を出力
し、図示していない演算実行部は汎用レジスタ群902
aから出力したデータに対して演算を実行する。最後
に、演算結果を汎用レジスタ群902a内に書き込むた
めに、書き込もうとする汎用レジスタ群902aのレジ
スタ番号と、書き込みを許可する制御信号を汎用レジス
タ群902aに対して出力し、演算結果を汎用レジスタ
群902a内のレジスタ番号に対応するレジスタに格納
する。
【0004】このように構成された従来の情報処理装置
を用いて、実装されていない機械語命令のエミュレーシ
ョンすなわち実装されている機械語命令を組み合わせに
よって、未実装の機械語命令と同じ処理を行わせる場合
の例を説明する。まず、割り込みを禁止する。次に、エ
ミュレーション中に作業用のレジスタとして使用する汎
用レジスタ群902aのレジスタに格納されているデー
タを、図外のスタックやメモリに退避する。退避してお
かないと、作業用のレジスタとして使用するのでレジス
タの元のデータが破壊されてしまうから、エミュレーシ
ョン終了後誤ったデータを処理をすることになるからで
ある。その後、未実装の機械語命令と同じ処理を実現す
る命令列を実行する。最後に、退避したデータを図外の
スタックやメモリから元のレジスタに復帰し、割り込み
禁止を解除してエミュレーションを完了する。退避した
データを復帰することにより元のデータは保存されてい
る。
【0005】
【発明が解決しようとする課題】しかしながら、上記の
ような構成では、未実装の機械語命令をエミュレーショ
ンする場合、汎用レジスタ群902aのデータを保存す
るために汎用レジスタの内容を一旦スタックやメモリへ
退避しておきエミュレ−ション終了後に再度スタックや
メモリから復帰させるという処理が必要であり、その処
理の分だけプログラムコードサイズが増加するという課
題を有していた。
【0006】そこで、このような退避および復帰を回避
するために単に作業用のレジスタを増設しておき、作業
用のレジスタのレジスタ番号を機械語命令のレジスタフ
ィールドに割り付ける方法が考えられるが、レジスタフ
ィールドを割り付けた分だけオペレーションフィールド
が短縮され実装可能なオペレーション数が減少してしま
う、もしくはオペレーション数を減少しないようにする
と、命令語長が長くなるという課題を有してすることに
なる。
【0007】また他の方法として、汎用レジスタと同数
の作業用レジスタを増設しておき、汎用レジスタ群の全
てのレジスタを作業用レジスタ群に切り換える方法があ
る。この方法によれば、作業用のレジスタに一旦切り換
えておいてエミュレ−ション終了後に再度切り換えるこ
とにより、作業用のレジスタがあたかも汎用レジスタで
あるかのように使用できるだけでなく元のデ−タが破壊
されないことから、退避および復帰を回避することは可
能である。しかし、一旦切り換えてしまうとレジスタ全
てが切り換えられるから、切り換え前のレジスタ群と切
り換え後のレジスタ群との間での演算処理やデ−タ転送
が直接できないという欠点があり、間接的にこのような
処理を実現したとしても結局プログラムコ−ドサイズが
増加するという問題を有している。
【0008】以上は、エミュレ−ションの場合について
述べたが、これに限らずサブル−チンの処理や割り込み
処理を実行する場合にも共通の課題である。本発明はか
かる点に鑑み、プログラムコードサイズを増加せずにエ
ミュレーションやサブル−チンの処理や割り込み処理が
可能な情報処理装置を提供することを目的とする。
【0009】
【課題を解決するための手段】上記課題を解決するため
に本発明の情報処理装置は、デ−タを保持する複数のレ
ジスタを有する第1レジスタ群と、第1レジスタ群のレ
ジスタに対応するレジスタを有する第2レジスタ群と、
所定の命令が入力されたとき命令によって指定された第
2レジスタ群のレジスタを第1レジスタ群の対応するレ
ジスタとして使用できるように切り換える切換手段とを
備えたことを特徴としている。
【0010】前記切換手段は、第2のレジスタ群のレジ
スタを第1のレジスタ群の対応するレジスタとして使用
できるよう切り換えることを指示する命令を検出する命
令検出器と、前記命令から切り換えるべきレジスタの指
定と書込み読出しの区別とを解読する命令解読器と、書
込みの場合には第2のレジスタ群の指定されたレジスタ
に対して書込許可信号を与え、読出しの場合には前記指
定されたレジスタからの読出しデ−タを選択するレジス
タ入出力制御回路とから構成してもよい。
【0011】前記レジスタ入出力制御回路は、更に前記
命令が入力された後解除命令が入力されるまでの間第2
レジスタ群のレジスタが第1レジスタ群のレジスタとし
て使用できるよう切り換えられた状態を保持する状態保
持回路を有してもよい。前記状態保持回路は、所定の命
令が入力されたときその保持している状態を示す情報を
出力する状態読出回路を有することもできる。
【0012】
【作用】上記の構成により、切り換え手段が所定の命令
にしたがって第1レジスタ群のレジスタと第2レジスタ
群のレジスタを指定されたレジスタ毎に切り換えを行
う。これにより、エミュレーションまたはサブルーチン
の処理もしくは割り込み処理を行なうときに、レジスタ
の内容をスタックやメモリに退避および復帰する必要が
なくプログラムコードサイズを増加させることなく処理
することができる。
【0013】
【実施例】図1は情報処理装置の一構成を示すブロック
図である。図1において、102は第1レジスタ群であ
り、たとえば32ビットのデータを格納する16個のレ
ジスタGR0〜GR15からなり、汎用レジスタ群とし
ての使用する。103は第2レジスタ群であり、第1レ
ジスタ群の各レジスタに対応する同数のレジスタWR0
〜WR15を有しエミュレーション時などに作業用レジ
スタ群として使用する。
【0014】110は切り換え手段であり、命令解読器
101、命令検出器104、レジスタ入出力制御回路1
05、セレクタ106およびセレクタ107とから構成
され、所定の命令が入力されたとき命令によって指定さ
れた第2レジスタ群のレジスタを第1レジスタ群の対応
するレジスタとして使用できるように切り換える。前記
命令解読器101は、図外から取り込んでくる機械語命
令を解読する。
【0015】前記命令検出器104は、命令解読器10
1と並列に機械語命令を解読し、作業用レジスタ群に切
り換えることを指示する所定の命令を検出する。ここ
に、所定の命令とは、作業用レジスタ使用開始命令およ
び作業用レジスタ使用終了命令である。前記レジスタ入
出力制御回路105は、命令解読器101が出力するレ
ジスタ番号およびレジスタ書き込み信号と、命令検出器
104が出力する作業用レジスタ使用開始信号S1およ
び作業用レジスタ使用終了信号S2が入力され、汎用レ
ジスタ群102および作業用レジスタ群103の読み出
しおよび書き込みを制御する。
【0016】前記セレクタ106および107は、それ
ぞれ、レジスタ入出力制御回路105が出力する信号が
入力され、汎用レジスタ群102と作業用レジスタ群1
03から読み出したデータを選択する。図2は上記命令
検出器104の一構成図であり、5個のAND回路20
1、202、203、205、206と1個とOR回路
204とからなっている。
【0017】AND回路201は、後述する図4の機械
語命令上位5ビットが入力され、機械語命令のうち作業
用レジスタ開始命令を検出する。たとえば、機械語命令
の上位6ビットが”100000”(後述する図5
(b)の”LDS_X”命令)である機械語命令がAN
D回路201に入力されると、このときの出力は”1”
となる。すなわち、AND回路201は、上位6ビット
が”10000x”(xはドントケア)である機械語命
令を検出する。
【0018】AND回路206は、AND回路201の
出力する信号を、命令解読器101が出力するタイミン
グ信号T1により、その命令がデスティネーションレジ
スタをアクセスする時点で出力するように同期させる回
路であり、作業用レジスタ使用開始信号S1 を出力す
る。AND回路202は、上位6ビットが”10001
0”の機械語命令を検出し、AND回路203は、上位
6ビットが”0101xx”の機械語命令を検出し、O
R回路204は、AND回路202とAND回路203
の出力のORをとる。AND回路205は、OR回路2
04の出力する信号を、命令解読器101が出力するタ
イミング信号T2により、その命令が実行終了した直後
に出力するように同期させる回路である。
【0019】すなわち、AND回路205は、AND回
路202またはAND回路203に上位6ビットが”1
00010”または”0101xx”である機械語命令
が入力された後、その命令の実行が終了したときに、作
業用レジスタ使用終了命令を検出したことを示す作業用
レジスタ使用終了信号S2を出力するここで、AND回
路205によって、作業用レジスタ使用命令の実行が終
了した時点で作業用レジスタ使用終了信号S2を出力し
ているのは、作業用レジスタ使用終了命令実行中には作
業用レジスタをアクセスできるようにする一方、次の命
令からは汎用レジスタをアクセスできるようにするため
である。
【0020】図3は、レジスタ入出力制御回路105の
一構成例である。350から500の破線部の回路は、
状態保持回路であり、上から順に、前記作業用レジスタ
群102の16個のレジスタWR0〜WR15に対応し
て設けられている。300ないし315は、AND回路
であり、それぞれに前記命令解読器101から4ビット
のレジスタ番号が入力され、レジスタ番号に対応するA
ND回路のみが”1”を出力する。
【0021】321ないし325は、OR回路であり、
前記状態制御回路350ないし500の16本の出力の
ORをとる。状態保持回路部350は、フリップフロッ
プ351とAND回路352、353とOR回路354
からなっている。作業用レジスタ使用開始信号S1が”
1”になると、各状態保持回路350ないし500内の
AND回路352に加わる。このとき、命令解読器10
1が所定のレジスタ番号を指定すると、その番号を持つ
AND回路300ないし315が”1”を出力し、AN
D回路352のゲートを開くので、作業用レジスタ使用
開始信号S1の”1”がAND回路353、OR回路3
54、OR回路321を通じてOR回路325に入力さ
れ、当該OR回路325からセレクタ制御信号C1とし
て出力される。
【0022】この場合、作業用レジスタ使用開始信号S
1は前記AND回路352のゲートを通じてフリップフ
ロップ351にも入力され、フリップフロップ351の
出力Qが”1”になる。したがって、その後は作業用レ
ジスタ使用開始信号が”0”であっても、作業用レジス
タ使用終了信号S2が”1”にならない限り、そのレジ
スタ番号が指定されると、AND回路353を通じてQ
出力の”1”が作業用レジスタ使用開始信号S1の代わ
りに、セレクタ制御信号C1としてOR回路325から
出力される。
【0023】一方、作業用レジスタ使用終了信号S2
が”1”になると、全状態保持回路350ないし500
のフリップフロップは全てリセットされる。これによ
り、どのレジスタ番号が指定されてもレジスタ制御信号
C1は”1”を出力しなくなる。前記セレクタ制御信号
C1は、図1のセレクタ106、107に供給されると
ともに、AND回路601、602にも供給される。A
ND回路601、602はセレクタ制御信号C1に応じ
て、選択的にレジスタ書込信号W0を汎用レジスタ書込
信号W1または作業用レジスタ書込信号W2として、汎
用レジスタ群102または作業用レジスタ群103へ出
力する。
【0024】図4、図5は、命令解読器101および命
令検出器104に入力される機械語命令体系中、ロード
ストア命令と演算命令の部分を示している。図4(a)
は、ロードストア命令のフィールド構成を示し、各フィ
ールドはオペレーション部6ビット、デスティネーショ
ンレジスタ部4ビット、アドレッシングモード部6ビッ
トである。図4(b)は、ロードストア命令のオペレー
ション部のビットパターン、ニモニック、その命令の動
作の対応関係を示す。
【0025】図5(a)は、演算命令のフィールド構成
を示し、各フィールドはオペレーション部8ビット、ソ
ースレジスタ部4ビット、デスティネーションレジスタ
部4ビットである。図5(b)は、演算命令のオペレー
ション部のビットパターン、ニモニック、その命令の動
作の対応関係を示す。図4において、ニモニックの最後
が”_X”である機械語命令は、作業用レジスタ使用開
始命令であることを示し、前記命令検出器104に入力
されると、命令検出器104は前記作業用レジスタ使用
開始信号S1の出力を”1”とする。
【0026】また、図4、5において、ニモニックの最
後が”_R”である機械語命令は、作業用レジスタ使用
終了命令であることを示し、前記命令検出器104に入
力されると、命令検出器104は前記作業用レジスタ使
用終了信号S2の出力を”1”とする。ここで、図4、
図5に示すように、レジスタを切り換える命令”_X”
および”_R”は、オペレーションフィールドのビット
パターンに割り付けている。図9の従来例にレジスタを
増設し、その分レジスタフィールドに割り付ける場合、
図4、図5に示すソースレジスタ部、デスティネーショ
ンレジスタ部はそれぞれ5ビット必要となり、そのビッ
ト数は増加する。これに対して、本実施例のようにレジ
スタを増設しオペレーションフィールドのビットパター
ンに割り付ける場合、レジスタを切り換える命令”_
X”および”_R”は、レジスタをアクセスする命令に
限られ、情報処理装置の仕様により特に必要な命令だけ
を切り換え命令とすれば、容易に割り付けることがで
き、レジスタフィールドのビット数は増加しないので、
機械後命令の語長を長くならないようにすることが可能
である。
【0027】以上のように構成された情報処理装置につ
いて、その動作を説明する。図6は、本情報処理装置に
実装されていない”ADD GR0@(2),GR1
@”(汎用レジスタGR0の内容に2を加算した結果が
指し示すアドレスのメモリ上の内容と汎用レジスタGR
1の内容が指し示すアドレスのメモリ上の内容を加算し
て、GR1の内容が指し示すアドレスのメモリ上に格納
する)という命令をエミュレーションする機械語命令列
であり、この命令列は1行目から順次命令解読器101
および命令検出器104に入力される。
【0028】1行目の”LDS_X GR0@(2),
GR2”の機械語命令は、汎用レジスタ群102のレジ
スタGR0の内容に2を加算した結果が指し示すアドレ
スのメモリ上の内容を読み出し、そのデータを作業用レ
ジスタ群103のレジスタWR2に格納するという処理
を意味する。この命令では、レジスタアクセスは、メモ
リ上の内容を読み出す段階での汎用レジスタGR0の読
み出しと、メモリから読み出したデータをレジスタに格
納する段階での作業用レジスタWR2への書き込みとの
2回行われる必要がある。
【0029】この機械語命令は命令解読器101に入力
されるとともに、この機械語命令のオペレーション部”
100000”が命令検出器104に入力され、図2の
AND回路201で検出されるが、メモリを読み出す段
階では、AND回路206は、タイミング信号T1によ
り出力を禁止されているから、作業用レジスタ使用開始
信号S1は”0”のままであり、図3のセレクタ入出力
制御回路105でも、セレクタ制御信号C1は”0”で
あることから、汎用レジスタ群102のレジスタGR0
を読み出す。
【0030】そして、メモリから読み出したデータをレ
ジスタに格納する段階では、命令検出器104は、図2
のタイミング信号T1により出力を許可されているか
ら、作業用レジスタ使用開始信号S1は”1”となり、
図3のセレクタ入出力制御回路105により、セレクタ
制御信号C1は”1”となり、作業用レジスタ書込許可
信号W2がアクティブとなるから、作業用レジスタ群1
03のレジスタWR2へ書き込む。
【0031】この機械語命令の場合、ニモニックの記述
上のデスティネーションレジスタは、”GR2”となっ
ているけれども、オペレーションを示すニモニックの最
後が”_X”であるから命令検出器104で検出される
結果、作業用レジスタ群103のレジスタWR2にアク
セスされるため、実際の動作上のデスティネーションレ
ジスタは”WR2”となる。したがって、この機械語命
令を実行すると、汎用レジスタ群102のレジスタGR
0の内容に2を加算した結果が指し示すアドレスのメモ
リ上のデータが、作業用レジスタ群103のレジスタW
R2に格納され、その結果、汎用レジスタ群102のレ
ジスタGR2のデータは、保存されているので、この命
令とは別に、GR2のデータをスタックやメモリに退避
する命令を実行する必要がなくなる。
【0032】2行目の”LDS_X GR1@,GR
3”の機械語命令は、汎用レジスタ群102のレジスタ
102−1(GR1)の内容が指し示すアドレスのメモ
リ上の内容を読み出し、そのデータを作業用レジスタ群
103のレジスタ103−3(WR3)に格納するとい
う処理を意味する。この機械語命令も1行目と同様に、
デスティネーションレジスタのレジスタは作業用レジス
タ群103のレジスタWR3となる。汎用レジスタ群1
02のレジスタGR3のデータは保存されている。
【0033】3行目の”ADD GR2,GR3”の機
械語命令は、通常、GR2の内容とGR3の内容を加算
しGR3に格納するという処理を意味するが、1行目お
よび2行目の機械語命令以降は、レジスタ番号2および
3が指定されると、図3の状態保持回路370および状
態保持回路380内のフリップフロップが作業用レジス
タ使用開始信号S1 の”1”を保持しているので、AN
D回路302ないし303が”1”を出力すると、セレ
クタ制御信号C1が”1”となり、作業用レジスタ群1
03をアクセスすることになり、結局この機械語命令を
実行すると作業用レジスタ群103のレジスタWR2の
内容とWR3の内容を加算してWR3に格納する。
【0034】4行目の”STS_R GR3,GR1
@”の機械語命令は、作業用レジスタ群103のレジス
タWR3の内容を、汎用レジスタ群102のレジスタG
R1の内容が指し示すアドレスのメモリに格納するとい
う処理を意味する。この機械語命令も同様に、レジスタ
番号3が指定されると、作業用レジスタ群103のレジ
スタWR3をアクセスし、レジスタ番号1が指定される
ときは汎用レジスタ群102のレジスタGR1をアクセ
スするので、結局WR3の内容をGR1が指し示すメモ
リに格納する。同時に、この機械語命令は命令検出器1
04で検出され、図2のAND回路205で、タイミン
グ信号T2に同期されこの命令実行終了直後に、作業用
レジスタ使用終了信号S2が”1”となる。作業用レジ
スタ使用終了信号S2が出力されると、図3のレジスタ
入出力制御回路105は、状態保持回路350ないし5
00内の全てのフリップフロップがリセットされ、以後
レジスタ番号がAND回路300ないし315に入力さ
れても、セレクタ制御信号C1は、”0”のままである
から、汎用レジスタ群102をアクセスすることにな
る。
【0035】本実施例のよれば、エミュレーション開始
時および終了時の所定の命令を検出し、エミュレーショ
ン開始時の作業用レジスタ使用開始命令のデスティネー
ションに指定しているレジスタは、作業用レジスタ群1
03のレジスタをアクセスし、以後の命令で同じ番号の
レジスタを使用する場合にも、作業用レジスタ群103
のレジスタをアクセスする。エミュレーション終了時の
作業用レジスタ使用終了命令を実行した後は、どのレジ
スタ番号を指定しても汎用レジスタ群102のレジスタ
をアクセスすることにより、エミュレーションを行なう
時に作業用のレジスタを確保するのに、レジスタの内容
をメモリに待避および復帰する必要がない。また、エミ
ュレーション用の作業用レジスタに対して機械語命令に
ビットパターンを割り付ける必要もなく、LDS_Xお
よびSTS_R等のエミュレーション時に先頭および最
後に実行する機械語命令のみを特定命令として追加する
だけで、プログラムコードサイズを増加せずにエミュレ
ーションを行なうことができる。このことは、エミュレ
ーションに限らずサブルーチンや割り込み処理において
も同じである。
【0036】図7は、本発明の情報処理装置の他の一構
成を示すブロック図であり、基本的な構成は図1と同じ
である。図1と異なるのは、レジスタ入出力制御装置8
05内に状態読出回路800を設け、状態保持回路35
0〜500の内容を命令により出力する点である。図8
は、上記レジスタ入出力制御回路805の一構成図を示
す。
【0037】図8において、状態読出回路800は、状
態保持回路350〜500内の全てのフリップフロップ
出力Qが入力され、所定の機械語命令によりその保持し
ている状態を出力する。この出力は全16ビットであ
り、あるビットの出力が”1”であるときは、対応する
状態保持回路内のフリップフロップの出力Qが”1”で
あるのだから、そのビットに対応する作業用レジスタ群
103のレジスタがアクセスされたことを示す。また、
そのビットの出力が”0”であるときは、フリップフロ
ップ出力Qが”0”であるのだから、そのビットに対応
する作業用レジスタ群103のレジスタがアクセスされ
ていないことを示す。
【0038】たとえば、エミュレーション時、レジスタ
番号0とレジスタ番号3が、汎用レジスタではなく作業
レジスタのレジスタに切り換えられている場合には、図
8の状態保持回路350と380内のフリップフロップ
が”1”になっているので、状態読出回路800の出力
は”1001 0000 0000 0000”とな
り、MSBから第0ビットと第3ビットとが”1”であ
るから、汎用レジスタGR0とGR3が作業用レジスタ
WR0とWR3に切り換えられていることを、命令によ
り読み出すことができる。
【0039】つまり、状態読出回路800の出力は、汎
用レジスタ群102中どのレジスタが、作業用レジスタ
群103のレジスタに切り換えられているのかを示す状
態を示す。エミュレーション時の動作は、前記実施例と
同じであるが、前記実施例と異なる点は、エミュレーシ
ョン中に割り込み処理を受け付け得ることが容易に可能
なことである。
【0040】前記実施例において、図6の機械語命令列
によるエミュレーションでは2個の作業用レジスタWR
2、WR3を使用している。このエミュレーション中
に、たとえば、作業用レジスタWR0、WR1、WR2
を使用する割り込みが発生し、場合、そのまま割り込み
処理を受け付けてしまえば、作業用レジスタWR2は重
複して使われるから、エミュレーションで使用している
作業用レジスタWR2の内容は破壊されてしまい、その
結果、割り込み処理は正しく行われても、エミュレーシ
ョンは誤って行われてしまうことになるので、通常、エ
ミュレーション中には割り込みを受け付けない。
【0041】そこで、本実施例では、エミュレーション
中に割り込みを受け付けた場合でも、割り込み処理ハン
ドラ内で状態読出回路800を介して状態保持回路35
0〜500の内容を参照して、どの作業用レジスタが使
用されているのかを示す情報が得られるので、エミュレ
ーションで使用中の作業用レジスタで割り込み処理でも
使用するものについては、そのレジスタの内容を退避、
復帰することが可能となる。退避、復帰することにより
作業用レジスタの元のデータが保存されるため、エミュ
レーション中に割り込みを受け付けることができる。
【0042】このように、エミュレーション中でも割り
込みを受け付けることができ、割り込みへの応答時間が
速くなる。
【0043】
【発明の効果】以上説明したように、本発明によれば、
汎用レジスタをレジスタ毎に作業用レジスタに切り換え
ることにより、エミュレーションやサブルーチンの実行
や割り込み処理において、レジスタの内容をスタックや
メモリに退避および復帰させる必要がないのでプログラ
ムコードサイズが増加しなくてすむ。
【0044】しかも、作業用のレジスタ群のレジスタ番
号を機械語命令のレジスタフィールドに割り付ける必要
がないので、オペレーションフィールドの短縮や実装可
能なオペレーション数が減ることもなく、もしくは命令
語長が長くなることなしに、作業用のレジスタを確保で
きる。さらに、汎用レジスタ群と同数の作業用レジスタ
群を増設しておき、汎用レジスタ群の全てのレジスタを
作業用レジスタ群に切り換える方法によれば、切り換え
前のレジスタ群と切り換え後のレジスタ群との間での演
算処理やデ−タ転送が直接できないという欠点があるの
に対して、本発明によれば、同じレジスタ番号でない限
り切り換え前のレジスタ群と切り換え後のレジスタ群と
の間での演算処理やデ−タ転送が直接可能となる。
【図面の簡単な説明】
【図1】本発明における情報処理装置の一実施例の構成
を示すブロック図である。
【図2】同実施例の命令検出器の一構成図である。
【図3】同実施例の情報処理装置内のレジスタ入出力制
御回路の一構成図である。
【図4】同実施例の情報処理装置の機械語命令ビットパ
ターンの一例である。
【図5】同実施例の情報処理装置の機械語命令ビットパ
ターンの一例である。
【図6】同実施例の情報処理装置のエミュレーションを
実行する機械語命令列の一例ある。
【図7】本発明における他の一実施例を示すブロック図
である。
【図8】同実施例の発明のレジスタ入出力制御回路の一
構成図である。
【図9】従来の情報処理装置を示すブロック図である。
【符号の説明】
101 命令解読器 102 汎用レジスタ群 103 作業用レジスタ群 104 命令検出器 105 レジスタ入出力制御回路 106 セレクタ 107 セレクタ 110 切換手段 201〜203 AND回路 204 OR回路 205・206 AND回路 300〜315 AND回路 321〜325 OR回路 350 状態保持回路 351 フリップフロップ 352・353 AND回路 354 OR回路 360・370〜500 状態保持回路 601・602 AND回路 800 状態読出回路 805 レジスタ入出力制御回路 901 制御部 901a 命令解読器 902 演算実行部 902a 汎用レジスタ群

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 デ−タを保持する複数のレジスタを有す
    る第1レジスタ群と、第1レジスタ群のレジスタに対応
    するレジスタを有する第2レジスタ群と、所定の命令が
    入力されたとき命令によって指定された第2レジスタ群
    のレジスタを第1レジスタ群の対応するレジスタとして
    使用できるように切り換える切換手段とを備えたことを
    特徴とする情報処理装置。
  2. 【請求項2】 前記切換手段は、第2のレジスタ群のレ
    ジスタを第1のレジスタ群の対応するレジスタとして使
    用できるよう切り換えることを指示する命令を検出する
    命令検出器と、前記命令から切り換えるべきレジスタの
    指定と書込み読出しの区別とを解読する命令解読器と、
    書込みの場合には第2のレジスタ群の指定されたレジス
    タに対して書込許可信号を与え、読出しの場合には前記
    指定されたレジスタからの読出しデ−タを選択するレジ
    スタ入出力制御回路とからなっていることを特徴とする
    請求項1記載の情報処理装置。
  3. 【請求項3】 前記レジスタ入出力制御回路は、更に前
    記命令が入力された後解除命令が入力されるまでの間第
    2レジスタ群のレジスタが第1レジスタ群のレジスタと
    して使用できるよう切り換えられた状態を保持する状態
    保持回路を有することを特徴とする請求項2記載の情報
    処理装置。
  4. 【請求項4】 前記状態保持回路は、所定の命令が入力
    されたときその保持している状態を示す情報を出力する
    状態読出回路を有することを特徴とする請求項3記載の
    情報処理装置。
JP27093691A 1991-10-18 1991-10-18 情報処理装置 Pending JPH05108353A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27093691A JPH05108353A (ja) 1991-10-18 1991-10-18 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27093691A JPH05108353A (ja) 1991-10-18 1991-10-18 情報処理装置

Publications (1)

Publication Number Publication Date
JPH05108353A true JPH05108353A (ja) 1993-04-30

Family

ID=17493067

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27093691A Pending JPH05108353A (ja) 1991-10-18 1991-10-18 情報処理装置

Country Status (1)

Country Link
JP (1) JPH05108353A (ja)

Similar Documents

Publication Publication Date Title
JP2539199B2 (ja) デジタルプロセッサ制御装置
KR900003591B1 (ko) 데이터 처리장치
US6959367B2 (en) System having read-modify-write unit
JPH0242569A (ja) ベクター処理システムに用いる文脈スイッチング方法及び装置
EP0213843A2 (en) Digital processor control
NZ201809A (en) Microprocessor
JP3773470B2 (ja) データ処理装置内でのコプロセッサ命令の取り扱い
JPH0414385B2 (ja)
JPS58121457A (ja) 情報処理装置
US5564057A (en) Microprocessor architecture which facilitates input/output utilizing pairs of registers which the same address
JPS6319058A (ja) メモリ装置
JPH05108353A (ja) 情報処理装置
JPH0377137A (ja) 情報処理装置
JPH06342397A (ja) 論理的アドレス空間を写像するための回路装置
JPS60134937A (ja) アドレス拡張装置
JPH0397035A (ja) 記憶手段構成方式
JP2511063B2 (ja) パイプライン制御方式
JPS6220034A (ja) プログラム状態語切換制御方式
JPS62151942A (ja) タスク切換え方式
JP2001134449A (ja) データ処理装置とその制御方法
JP2583614B2 (ja) ベクトル演算装置
JPS6149695B2 (ja)
JPH07152630A (ja) ディジタルシグナルプロセッサ
JPS5846444A (ja) 電子計算機
JPH02272654A (ja) キャッシュメモリ装置