JPH02201650A - 演算装置 - Google Patents
演算装置Info
- Publication number
- JPH02201650A JPH02201650A JP2106389A JP2106389A JPH02201650A JP H02201650 A JPH02201650 A JP H02201650A JP 2106389 A JP2106389 A JP 2106389A JP 2106389 A JP2106389 A JP 2106389A JP H02201650 A JPH02201650 A JP H02201650A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- calculation
- data
- microinstruction
- arithmetic
- 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
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[発明の目的]
(産業上の利用分野)
本発明はマイクロ命令により起動される演算装置に係り
、特にダブルワードの演算に好適な演算装置に関する。
、特にダブルワードの演算に好適な演算装置に関する。
(従来の技術)
マイクロ命令により起動される演算装置では、第3図に
示すように制御記憶(WC8)II内のマイクロ命令F
1により、まず、メモリ(M E M)】2内のデータ
1(上位データ)とレジスタ13a(レジスタ1)の内
容(上位データ)をデータバスに読出して演算器14で
上位データの演算を行ない、続いて、マイクロ命令F2
でメモリ12内のブタ2(下位データ)とレジスタ13
b(レジスタ2)の内容(下位データ)をデータバスに
読出して演算器14で下位データの演算を行なうことに
より、ダブルワードの演算を実現している。
示すように制御記憶(WC8)II内のマイクロ命令F
1により、まず、メモリ(M E M)】2内のデータ
1(上位データ)とレジスタ13a(レジスタ1)の内
容(上位データ)をデータバスに読出して演算器14で
上位データの演算を行ない、続いて、マイクロ命令F2
でメモリ12内のブタ2(下位データ)とレジスタ13
b(レジスタ2)の内容(下位データ)をデータバスに
読出して演算器14で下位データの演算を行なうことに
より、ダブルワードの演算を実現している。
ところで、メモリ12からのデータの読出し時にバウン
ダリ (ハーフワードで区切られるメモリ境界)などの
条件等により、メモリ待ち(メモリ12からのデータ読
出し待ち)が発生した場合には、制御記憶11の特定の
番地からnop(no opreation)を示すマ
イクロ命令Nが演算シーケンス内に割込むようになって
いる。この場合、演算器14は、マイクロ命令Fl、F
2の連続動作で起動されるため、メモリ待ちの発生によ
り、演算シーケンス内にマイクロ命令Nが割込むと、正
常に起動されぬ問題がある。
ダリ (ハーフワードで区切られるメモリ境界)などの
条件等により、メモリ待ち(メモリ12からのデータ読
出し待ち)が発生した場合には、制御記憶11の特定の
番地からnop(no opreation)を示すマ
イクロ命令Nが演算シーケンス内に割込むようになって
いる。この場合、演算器14は、マイクロ命令Fl、F
2の連続動作で起動されるため、メモリ待ちの発生によ
り、演算シーケンス内にマイクロ命令Nが割込むと、正
常に起動されぬ問題がある。
そこで、従来、マイクロ命令Fl 、F2の連続動作を
保障するため、マイクロ命令F2で指定されるメモリ1
2内のデータを演算実行前にマイクロ命令Rでレジスタ
15(レジスタW)に−時格納しておき、このレジスタ
15(レジスタW)内のブタを使用して演算する構成と
していた。
保障するため、マイクロ命令F2で指定されるメモリ1
2内のデータを演算実行前にマイクロ命令Rでレジスタ
15(レジスタW)に−時格納しておき、このレジスタ
15(レジスタW)内のブタを使用して演算する構成と
していた。
このような構成によれば、メモリ待ちが発生しても、演
算対象となるデータは既にレジスタWに格納されている
ため、演算を続行することができる。しかしながら、メ
モリデータを演算実行前に読出しておく必要かあるため
、その分、演算速度が遅くなる欠点がある。
算対象となるデータは既にレジスタWに格納されている
ため、演算を続行することができる。しかしながら、メ
モリデータを演算実行前に読出しておく必要かあるため
、その分、演算速度が遅くなる欠点がある。
(発明が解決しようとする課題)
上記したように、従来、メモリのアクセス途中で発生す
るメモリ待ちを考慮して、メモリプタを予め演算実行前
に読出しておく構成としていたため、演算速度が遅くな
る欠点があった。
るメモリ待ちを考慮して、メモリプタを予め演算実行前
に読出しておく構成としていたため、演算速度が遅くな
る欠点があった。
本発明は上記のような点に鑑みなされたもので、マイク
ロ命令により起動される演算装置において、メモリ待ち
か発生した場合でも正常に演算を続行でき、かつ、高速
に演算できる演算装置を提供することを[1的とする。
ロ命令により起動される演算装置において、メモリ待ち
か発生した場合でも正常に演算を続行でき、かつ、高速
に演算できる演算装置を提供することを[1的とする。
[発明の構成]
(課題を解決するための手段)
すなイ)ち、本発明に係る演算装置は、マイクロ命令に
より起動される演算装置において、演算対象となるメモ
リデータの読出し時にメモリ待ちが発生した際に、特定
のマイクロ命令により、そのときの演算を一時中断せ1
.め、メモリ待ちが解除された際に上記中断された状態
からの演算を続行させることを特徴と4る。
より起動される演算装置において、演算対象となるメモ
リデータの読出し時にメモリ待ちが発生した際に、特定
のマイクロ命令により、そのときの演算を一時中断せ1
.め、メモリ待ちが解除された際に上記中断された状態
からの演算を続行させることを特徴と4る。
(作用)
上記の構成によれば、演算対象となるメモリデータの読
出し時にメモリ待ちが発生すると、演算シーケンス内に
演算とは別のマイクロ命令である特定のマイクロ命令が
割込む。この場合、この特定のマイクロ命令は演算を一
時中断させる命令であるため、演算シーケンス内に割込
んでも、メモリ待ちか解除された際に再び演算を続行さ
せることができる。したがって、従来のようにメモリ待
ちを考慮してメモリデータを演算実行前に予め読出して
おかなくとも、正常に演算を続行でき、また、その分、
高速となる。
出し時にメモリ待ちが発生すると、演算シーケンス内に
演算とは別のマイクロ命令である特定のマイクロ命令が
割込む。この場合、この特定のマイクロ命令は演算を一
時中断させる命令であるため、演算シーケンス内に割込
んでも、メモリ待ちか解除された際に再び演算を続行さ
せることができる。したがって、従来のようにメモリ待
ちを考慮してメモリデータを演算実行前に予め読出して
おかなくとも、正常に演算を続行でき、また、その分、
高速となる。
(実施例)
以下、図面を参照して本発明の一実施例に係る演算装置
を説明する。
を説明する。
第1図はその回路構成を示すブロック図であり、制御記
憶(WC5)21には、演算器24を起動させるマイク
ロ命令FL、F2と、メモリ待ちが発生した際に演算シ
ーケンス内に割込むマイクロ命令Nが記憶されている。
憶(WC5)21には、演算器24を起動させるマイク
ロ命令FL、F2と、メモリ待ちが発生した際に演算シ
ーケンス内に割込むマイクロ命令Nが記憶されている。
このマイクロ命令Nは、メモリ待ちが発生した際に演算
器24の演算を一時中断させる命令であり、制御記憶2
1の特定の番地に設定されている。
器24の演算を一時中断させる命令であり、制御記憶2
1の特定の番地に設定されている。
メモリ(MEM)22には、演算器24で使用するデー
タ1 (上位データ)およびデータ2(下位ブタ)が格
納されている。また、レジスタ23a(レジスター)に
はメモリ22内のデータ1と共に演算器24で使用され
る上位データが、レジスタ23b(レジスタ2)にはデ
ータ2と共に演算器24で使用されるド位データがそれ
ぞれ格納されている。演算器24は、制御記憶21内の
マイクロ命令Fl、F2で起動されてダブルワードの演
算を行なうものであり、特定のマイクロ命令Nによって
演算を一時中断し、次のマイクロ命令に遷移したときに
中断した状態からの演算を続行する。
タ1 (上位データ)およびデータ2(下位ブタ)が格
納されている。また、レジスタ23a(レジスター)に
はメモリ22内のデータ1と共に演算器24で使用され
る上位データが、レジスタ23b(レジスタ2)にはデ
ータ2と共に演算器24で使用されるド位データがそれ
ぞれ格納されている。演算器24は、制御記憶21内の
マイクロ命令Fl、F2で起動されてダブルワードの演
算を行なうものであり、特定のマイクロ命令Nによって
演算を一時中断し、次のマイクロ命令に遷移したときに
中断した状態からの演算を続行する。
次に、同実施例の動作を説明する。
演算器24は、制御記憶21内のマイクロ命令F1、F
2で起動され、メモリ22内のデータ1.2とレジスタ
23a、23bの内容に対して、ダブルワードの演算を
行なう。ここで、メモリデータの読出し時にメモリ待ち
(メモリ22からのデータ読出し待ち)が発生すると、
制御記憶21の特定の番地に設定されたマイクロ命令N
が演算シーケンス内に割込む。このマイクロ命令Nは、
演算器24の演算を一時中断させる命令である。したが
って、メモリ待ちが発生すると、このマイクロ命令Nに
より、演算器24はそのときの状態を保持したまま停止
する。
2で起動され、メモリ22内のデータ1.2とレジスタ
23a、23bの内容に対して、ダブルワードの演算を
行なう。ここで、メモリデータの読出し時にメモリ待ち
(メモリ22からのデータ読出し待ち)が発生すると、
制御記憶21の特定の番地に設定されたマイクロ命令N
が演算シーケンス内に割込む。このマイクロ命令Nは、
演算器24の演算を一時中断させる命令である。したが
って、メモリ待ちが発生すると、このマイクロ命令Nに
より、演算器24はそのときの状態を保持したまま停止
する。
具体的に説明すると、第2図のフローチャートに示すよ
うに、ダブルワードの演算において、例えばデータ1が
メモリ待ちであれば(ステップS1)、演算器24の起
動前にマイクロ命令Nが割込む(ステップS2)。この
場合、演算器24は、動作停止中であるため、マイクロ
命令Nの割込みにより、その動作停止状態を維持するこ
とになる(ステップS3)。一方、データ1がメモリ待
ちでないならば、マイクロ命令Flにより、演算器24
が起動される。これにより、演算器24は、データ1、
レジスタ1の上位データを読出して演算を開始する(ス
テップS4)。
うに、ダブルワードの演算において、例えばデータ1が
メモリ待ちであれば(ステップS1)、演算器24の起
動前にマイクロ命令Nが割込む(ステップS2)。この
場合、演算器24は、動作停止中であるため、マイクロ
命令Nの割込みにより、その動作停止状態を維持するこ
とになる(ステップS3)。一方、データ1がメモリ待
ちでないならば、マイクロ命令Flにより、演算器24
が起動される。これにより、演算器24は、データ1、
レジスタ1の上位データを読出して演算を開始する(ス
テップS4)。
次に、マイクロ命令F2により、演算器24はブタ2、
レジスタ2の下位データを読出して演算を続行するもの
であるが、このデータ2の読出し時にメモリ待ちが発生
した場合には(ステップS5)、マイクロ命令Nが演算
シーケンス内に割込んで、演算器24の演算を一時中断
せしめる(ステップS6.7)。このマイクロ命令Nの
割込みにより、演算器24はそのときの状態を保持した
だまま停止することになる。そして、メモリ待ちが解除
され、マイクロ命令F2に遷移f7た時点で、演算器2
4は中断された状態かにJ゛演算を続行する(ステップ
S8)。
レジスタ2の下位データを読出して演算を続行するもの
であるが、このデータ2の読出し時にメモリ待ちが発生
した場合には(ステップS5)、マイクロ命令Nが演算
シーケンス内に割込んで、演算器24の演算を一時中断
せしめる(ステップS6.7)。このマイクロ命令Nの
割込みにより、演算器24はそのときの状態を保持した
だまま停止することになる。そして、メモリ待ちが解除
され、マイクロ命令F2に遷移f7た時点で、演算器2
4は中断された状態かにJ゛演算を続行する(ステップ
S8)。
このように、演算対求となるメモリデータの読出し時に
メモリ待ちか発生すると、演算とは別のマイクロ命令で
あるマイクロ命令Nが演算シーケンス内に割込むが、こ
のマイクロ命令は演算を一時中断させる命令であるため
、メモリ待ちが解除されたときに、中断された状態から
の演算を続行させることができる。したがって、従来の
ようにメモリデータを演算実行前に予め読出しておかな
くとも、正常に演算を続行でき、また、事前にメモリデ
ータを読出す必要がない分、高速となる。
メモリ待ちか発生すると、演算とは別のマイクロ命令で
あるマイクロ命令Nが演算シーケンス内に割込むが、こ
のマイクロ命令は演算を一時中断させる命令であるため
、メモリ待ちが解除されたときに、中断された状態から
の演算を続行させることができる。したがって、従来の
ようにメモリデータを演算実行前に予め読出しておかな
くとも、正常に演算を続行でき、また、事前にメモリデ
ータを読出す必要がない分、高速となる。
また、このような演算の中断制御をマイクロ命令によっ
て実現しているため、特別なハード構成を必要とせず、
また、現存するマイクロ命令を流用できるためハード量
を抑さえることができる。
て実現しているため、特別なハード構成を必要とせず、
また、現存するマイクロ命令を流用できるためハード量
を抑さえることができる。
[発明の効果]
以上のように本発明によれば、メモリ待ちが発生すると
、特定のマイクロ命令によって演算が一時中断されるた
め、メモリ待ちが解除されたときに、中断された状態か
ら正常に演算を続行できる。また、メモリデータを演算
実行前に予め読出しておく必要がないため、高速に演算
できる。
、特定のマイクロ命令によって演算が一時中断されるた
め、メモリ待ちが解除されたときに、中断された状態か
ら正常に演算を続行できる。また、メモリデータを演算
実行前に予め読出しておく必要がないため、高速に演算
できる。
第1図は本発明の一実施例に係る回路構成を示すブロッ
ク図、第2図は同実施例の動作を説明するためのフロー
チャート、第3図は従来の回路構成を示すブロック図で
ある。 21・・・制御記憶(WC3) 22・・・メモリ(
M E M) 、23aおよび23b−・・レジスタ、
24 ・・・演算器。 出願人代理人 弁理士 鈴江武彦
ク図、第2図は同実施例の動作を説明するためのフロー
チャート、第3図は従来の回路構成を示すブロック図で
ある。 21・・・制御記憶(WC3) 22・・・メモリ(
M E M) 、23aおよび23b−・・レジスタ、
24 ・・・演算器。 出願人代理人 弁理士 鈴江武彦
Claims (1)
- 【特許請求の範囲】 マイクロ命令により起動される演算装置において、 演算対象となるメモリデータの読出し時にメモリ待ちが
発生した際に、特定のマイクロ命令により、そのときの
演算を一時中断せしめ、メモリ待ちが解除された際に上
記中断された状態からの演算を続行させることを特徴と
する演算装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2106389A JPH02201650A (ja) | 1989-01-31 | 1989-01-31 | 演算装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2106389A JPH02201650A (ja) | 1989-01-31 | 1989-01-31 | 演算装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH02201650A true JPH02201650A (ja) | 1990-08-09 |
Family
ID=12044435
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2106389A Pending JPH02201650A (ja) | 1989-01-31 | 1989-01-31 | 演算装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH02201650A (ja) |
-
1989
- 1989-01-31 JP JP2106389A patent/JPH02201650A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5161226A (en) | Microprocessor inverse processor state usage | |
| JPH04306735A (ja) | 非同期割込み禁止機構 | |
| US4961161A (en) | Arithmetic processor performing mask and trap operations for exceptions | |
| JPH0450621B2 (ja) | ||
| JP2005050208A (ja) | マルチタスクシステムにおけるメモリ管理方式およびタスク制御装置 | |
| JPH07120338B2 (ja) | 共同プロセッサによる命令の実行をデータプロセッサが調整する方法および該データプロセッサ | |
| JPS63279328A (ja) | 仮想計算機システムのゲスト実行制御方式 | |
| JPS5911921B2 (ja) | 数値制御装置 | |
| JP2753781B2 (ja) | マイクロプロセッサ装置及び割込みと自動化入出力トラップ再始動を行う方法 | |
| JPH02201650A (ja) | 演算装置 | |
| JP2562838B2 (ja) | プロセッサ及びストアバッファ制御方法 | |
| KR890002759A (ko) | 데이타요소의 수정장치 및 그 방법 | |
| JPS61184643A (ja) | 仮想計算機の起動制御方式 | |
| JPS60214044A (ja) | マイクロコンピュ−タ | |
| JPS6243734A (ja) | マイクロプロセツサ | |
| US5778207A (en) | Assisting operating-system interrupts using application-based processing | |
| JPS61184644A (ja) | 仮想計算機システム制御方式 | |
| JPH0259933A (ja) | マイクロプロセッサ | |
| JPS6136850A (ja) | 入出力割込通知方式 | |
| JPS61117635A (ja) | 仮想記憶制御方式 | |
| JPH01201730A (ja) | 情報処理装置 | |
| JPH0242538A (ja) | マイクロプロセッサ | |
| JPS62151936A (ja) | マイクロプロセツサに内蔵されるキヤツシユ回路 | |
| JPH0795288B2 (ja) | マイクロコンピュータ | |
| JPS60193046A (ja) | 命令例外検出方式 |