JPH0219495B2 - - Google Patents
Info
- Publication number
- JPH0219495B2 JPH0219495B2 JP58222900A JP22290083A JPH0219495B2 JP H0219495 B2 JPH0219495 B2 JP H0219495B2 JP 58222900 A JP58222900 A JP 58222900A JP 22290083 A JP22290083 A JP 22290083A JP H0219495 B2 JPH0219495 B2 JP H0219495B2
- Authority
- JP
- Japan
- Prior art keywords
- operand
- segment
- register
- address
- access
- 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
- 238000000034 method Methods 0.000 claims description 23
- 238000012545 processing Methods 0.000 claims description 13
- 238000001514 detection method Methods 0.000 claims description 12
- 230000011218 segmentation Effects 0.000 claims description 7
- 238000012937 correction Methods 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 4
- 230000010365 information processing Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000012546 transfer Methods 0.000 description 5
- 101100049748 Archaeoglobus fulgidus (strain ATCC 49558 / DSM 4304 / JCM 9628 / NBRC 100126 / VC-16) wtpA gene Proteins 0.000 description 2
- 101100514057 Azotobacter vinelandii modE gene Proteins 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 101150103307 modA gene Proteins 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000034179 segment specification Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
【発明の詳細な説明】
(産業上の利用分野)
本発明は、情報処理装置における記憶保護例外
の検出、および報告に関する。
の検出、および報告に関する。
(従来技術)
情報処理装置の効率的運用を目的として多重プ
ログラム方式、および仮想記憶方式がひろく採用
されてきた。これらの方式の一つとして、セグメ
ンテーシヨン手法がある。セグメンテーシヨン方
法によれば、仮想記憶空間はセグメント記述子に
含まれるベースアドレスとセグメントサイズとに
よつて規定される、セグメントと称される記憶領
域に分割されている。プログラムにより使用され
るセグメントは、制御プログラムにより管理さ
れ、割当てられたセグメントにより指定された仮
想記憶領域のみが各プログラムによる使用を許可
されている。プログラムがセグメント外へアクセ
スしようとしたときには、ハードウエアによりセ
グメント外アクセス例外が検出され、該当プログ
ラムの実行が中止される。上記セグメント外アク
セス例外の検出は、セキユリテイ保護において重
要な機能である。しかし、従来のセグメンテーシ
ヨン方式においては、ベースアドレスとセグメン
トサイズとの指定単位が大きく、例えば64Kワー
ドであつた。この結果、小量のデータを準備する
際にも、セグメントの指定単位により決定される
大きな仮想空間を占有するという無駄があつた。
ログラム方式、および仮想記憶方式がひろく採用
されてきた。これらの方式の一つとして、セグメ
ンテーシヨン手法がある。セグメンテーシヨン方
法によれば、仮想記憶空間はセグメント記述子に
含まれるベースアドレスとセグメントサイズとに
よつて規定される、セグメントと称される記憶領
域に分割されている。プログラムにより使用され
るセグメントは、制御プログラムにより管理さ
れ、割当てられたセグメントにより指定された仮
想記憶領域のみが各プログラムによる使用を許可
されている。プログラムがセグメント外へアクセ
スしようとしたときには、ハードウエアによりセ
グメント外アクセス例外が検出され、該当プログ
ラムの実行が中止される。上記セグメント外アク
セス例外の検出は、セキユリテイ保護において重
要な機能である。しかし、従来のセグメンテーシ
ヨン方式においては、ベースアドレスとセグメン
トサイズとの指定単位が大きく、例えば64Kワー
ドであつた。この結果、小量のデータを準備する
際にも、セグメントの指定単位により決定される
大きな仮想空間を占有するという無駄があつた。
この無駄をなくし、さらにきめ細かいセキユリ
テイ保護を実現するためには、ベースアドレスと
セグメントサイズとをバイト単位に小さくする方
式が提案されている。この種の方式は上記目的を
達成するものであつたが、オペランドアクセスお
よびセグメント外アクセスチエツクが複雑になる
という問題が新たに生じていた。すなわち、ベー
スアドレスに基本オペランドの処理単位(1ワー
ト=4バイト)以下の偏位が生じているため、正
確にバイト単位のオペランドアクセスを行うため
の一つの方法は完全にバイト単位オペランドをア
クセスする手法がある。この手法では第1図aに
示すようにオペランド長(バイト長)に相等する
回数のアクセスが必要になつてしまい、システム
の性能を低下させる。そこで、アクセスにおいて
は、仮想アドレスの指定するバイトを含む1ワー
ドをオペランドとして規定することにより、第1
図bに示すように、1回のアクセスによる基本オ
ペランドの取出しができるように構成している。
上記においては、アクセス範囲をワード境界とす
るため、次のように記号を定義し、 W/VA=仮想アドレスのワード内偏位 EA=実効アドレス(セグメント内の相対アド
レス) SIZE=セグメントサイズ とすれば、上記に伴うセグメント外アクセス例外
の検出条件は下記の式により示される。
テイ保護を実現するためには、ベースアドレスと
セグメントサイズとをバイト単位に小さくする方
式が提案されている。この種の方式は上記目的を
達成するものであつたが、オペランドアクセスお
よびセグメント外アクセスチエツクが複雑になる
という問題が新たに生じていた。すなわち、ベー
スアドレスに基本オペランドの処理単位(1ワー
ト=4バイト)以下の偏位が生じているため、正
確にバイト単位のオペランドアクセスを行うため
の一つの方法は完全にバイト単位オペランドをア
クセスする手法がある。この手法では第1図aに
示すようにオペランド長(バイト長)に相等する
回数のアクセスが必要になつてしまい、システム
の性能を低下させる。そこで、アクセスにおいて
は、仮想アドレスの指定するバイトを含む1ワー
ドをオペランドとして規定することにより、第1
図bに示すように、1回のアクセスによる基本オ
ペランドの取出しができるように構成している。
上記においては、アクセス範囲をワード境界とす
るため、次のように記号を定義し、 W/VA=仮想アドレスのワード内偏位 EA=実効アドレス(セグメント内の相対アド
レス) SIZE=セグメントサイズ とすれば、上記に伴うセグメント外アクセス例外
の検出条件は下記の式により示される。
SIZE−EA<3−W/VA ……(1)
ここで、左辺は現在の実効アドレスから最大セ
グメント境界までの距離を表わし、右辺は現在の
仮想アドレスから現在アクセスする最高バイト位
置(この場合は3である。)までの距離を表わし
ている。よつて、第1図cの実例では、 SIZE−EA≧3−W/VA ……(2) であり、オペランドアクセスは許可されるが、第
1図dの実例では SIZE−EA<3−W/VA ……(3) となつてセグメント外アクセス例外が検出され
る。
グメント境界までの距離を表わし、右辺は現在の
仮想アドレスから現在アクセスする最高バイト位
置(この場合は3である。)までの距離を表わし
ている。よつて、第1図cの実例では、 SIZE−EA≧3−W/VA ……(2) であり、オペランドアクセスは許可されるが、第
1図dの実例では SIZE−EA<3−W/VA ……(3) となつてセグメント外アクセス例外が検出され
る。
一方、可変長オペランドの場合には基本オペラ
ンドのようにワードアクセスを行うことができ
ず、バイト単位でアドレス指定/例外検出を行う
必要がある。例えば、開始実効アドレスをEAθと
し、オペランド長をLとすると、オペランドサイ
ズはL−1であり、可変長オペランドの最大アド
レスは、 EAθ+L−1 という式により表
示され、実行前に予知される。第1図eに示すよ
うなセグメント外アクセスのチエツクは、 EAθ+L−1>SIZE ……(4) すなわち、 SIZE−EAθ<L−1 ……(5) によつて示される。
ンドのようにワードアクセスを行うことができ
ず、バイト単位でアドレス指定/例外検出を行う
必要がある。例えば、開始実効アドレスをEAθと
し、オペランド長をLとすると、オペランドサイ
ズはL−1であり、可変長オペランドの最大アド
レスは、 EAθ+L−1 という式により表
示され、実行前に予知される。第1図eに示すよ
うなセグメント外アクセスのチエツクは、 EAθ+L−1>SIZE ……(4) すなわち、 SIZE−EAθ<L−1 ……(5) によつて示される。
しかしながら、従来の処理装置においてはセグ
メント外アクセス例外の報告タイミングを、実際
にアクセスを行う際に検出するという慣行があ
る。これにしたがうと、上記のチエツク方法では
オペランドをアクセス単位に分割してチエツクす
るという複雑な手続きが必要である。例えば、第
1図fに示した右方向へのアクセス処理時には、
オペランドアクセスは最大1ワード単位で実行さ
れ、4回のアクセスで一連の処理が終了する。ア
クセスごとに実効アドレスと仮想アドレスとは漸
増し、残オペランドのビツト長は漸減する。ま
た、セグメント外アクセス例外チエツクでは、一
度にアクセスされるオペランドの最右端バイト位
置までを毎回チエツクしている。第2図に以上の
関係を示す。第2図よりチエツク方式は下記のよ
うに要約される。
メント外アクセス例外の報告タイミングを、実際
にアクセスを行う際に検出するという慣行があ
る。これにしたがうと、上記のチエツク方法では
オペランドをアクセス単位に分割してチエツクす
るという複雑な手続きが必要である。例えば、第
1図fに示した右方向へのアクセス処理時には、
オペランドアクセスは最大1ワード単位で実行さ
れ、4回のアクセスで一連の処理が終了する。ア
クセスごとに実効アドレスと仮想アドレスとは漸
増し、残オペランドのビツト長は漸減する。ま
た、セグメント外アクセス例外チエツクでは、一
度にアクセスされるオペランドの最右端バイト位
置までを毎回チエツクしている。第2図に以上の
関係を示す。第2図よりチエツク方式は下記のよ
うに要約される。
第1回〜第3回
:SIZE−EA<3−W/VA ……(6)
第4回
:SIZE−EA<EBP−W/VA ……(7)
ここで、第(7)式のEBPはオペランドの最終ア
クセス時の最右端バイト位置を示す。
クセス時の最右端バイト位置を示す。
上記のEBP値を生成するためには、2通りの
方法がある。第1の方法は命令開始時のオペラン
ドサイズからアクセス時に処理されるサイズを減
算し、最終アクセス時の残サイズとして求める方
法である。第2の方法はオペランドアクセスごと
のアドレス増分が一定であり、アクセス単位に等
しいことを利用する方法である。第2の方法はオ
ペランドのアクセス開始仮想アドレスとオペラン
ドの初期サイズとの和のmodAとして得る方法で
ある。
方法がある。第1の方法は命令開始時のオペラン
ドサイズからアクセス時に処理されるサイズを減
算し、最終アクセス時の残サイズとして求める方
法である。第2の方法はオペランドアクセスごと
のアドレス増分が一定であり、アクセス単位に等
しいことを利用する方法である。第2の方法はオ
ペランドのアクセス開始仮想アドレスとオペラン
ドの初期サイズとの和のmodAとして得る方法で
ある。
EBP=LS−1−Σlop ……(8)
EBP={VAS−(LS−1}modA ……(9)
ここで、LSは初期オペランド長、lopはオペラ
ンドの処理長である。
ンドの処理長である。
上記両方式はいずれも複雑であり、ハードウエ
アで実現する場合にはハードウエア量の増加と、
論理信号の最大遅延時間の臨界伝達経路(クリテ
イカルバス)の増加とを派生するという欠点があ
つた。
アで実現する場合にはハードウエア量の増加と、
論理信号の最大遅延時間の臨界伝達経路(クリテ
イカルバス)の増加とを派生するという欠点があ
つた。
(発明の目的)
本発明の目的は、可変長命令の実行に先行して
アクセスを予想される全命令領域のセグメント外
アクセス例外のチエツクを実施して上記欠点を除
去することにより、EBPを作成するための複雑
な手続きを省略し、単純な構成により少量のハー
ドウエアでセグメント外アクセス例外のチエツク
を実現し、低コストでマシンサイクルタイムを短
縮した情報処理装置の例外検出装置を提供するこ
とにある。
アクセスを予想される全命令領域のセグメント外
アクセス例外のチエツクを実施して上記欠点を除
去することにより、EBPを作成するための複雑
な手続きを省略し、単純な構成により少量のハー
ドウエアでセグメント外アクセス例外のチエツク
を実現し、低コストでマシンサイクルタイムを短
縮した情報処理装置の例外検出装置を提供するこ
とにある。
(発明の構成)
本発明による例外検出装置は、ベースアドレス
とセグメントサイズを含むセグメント記述子とに
よつてセグメントを規定し、ベースアドレスと実
効アドレスとの和を仮想アドレスとし、実効アド
レスとセグメントサイズとの比較にもとづいてセ
グメント外アクセス判定を行うセグメンテーシヨ
ン方式において使用されるものである。
とセグメントサイズを含むセグメント記述子とに
よつてセグメントを規定し、ベースアドレスと実
効アドレスとの和を仮想アドレスとし、実効アド
レスとセグメントサイズとの比較にもとづいてセ
グメント外アクセス判定を行うセグメンテーシヨ
ン方式において使用されるものである。
本発明において、例外検出装置はレジスタ手段
と、命令レジスタと、実効アドレス加算器と、補
正手段と、報告手段とを具備して構成したもので
ある。
と、命令レジスタと、実効アドレス加算器と、補
正手段と、報告手段とを具備して構成したもので
ある。
レジスタ手段は、セグメント記述子を保持する
ためのものである。
ためのものである。
命令レジスタは、実行すべきオペランドの開始
位置とオペランド長とにより定義される可変長オ
ペランドを処理する可変長命令をロードするため
のものである。
位置とオペランド長とにより定義される可変長オ
ペランドを処理する可変長命令をロードするため
のものである。
実効アドレス加算器は、命令レジスタにロード
された可変長命令に応答して、オペランドの開始
実効アドレスを生成するためのものである。
された可変長命令に応答して、オペランドの開始
実効アドレスを生成するためのものである。
補正手段は、可変長命令により指定されたオペ
ランド長から1を減ずるためのものである。
ランド長から1を減ずるためのものである。
報告手段は、レジスタ手段から出力されるセグ
メントサイズ値から補正手段の出力値、および開
始実効アドレスの値を減算し、減算の結果により
オペランドの終了位置がセグメント外に存在する
か否かを判定し、判定の結果によつて例外を報告
するためのものである。
メントサイズ値から補正手段の出力値、および開
始実効アドレスの値を減算し、減算の結果により
オペランドの終了位置がセグメント外に存在する
か否かを判定し、判定の結果によつて例外を報告
するためのものである。
(実施例)
次に、本発明について図面を参照して詳細に説
明する。
明する。
本発明に関する可変長オペランドを処理する命
令の一例として、MOVE命令の形式を第3図a
に示す。MOVE命令は命令コード=MVMで表
示されるもので、第1のオペランドを読出し、第
2のオペランドへ書込むためのものである。両オ
ペランドは、それぞれサフイツクス1および2に
より識別される4個のフイールドBi,XiSi,Li
から成るオペランド記述子によつて規定されてい
る。オペランド記述子の第1のフイールドBiは、
セグメントレジスタ番号である。第3図bに示す
ように、セグメントレジスタは番号付けられた複
数のエントリを有し、各エントリはベースアドレ
スとセグメントサイズとを含むセグメント記述子
を保持する。第2のフイールドXiはインデツク
スレジスタの識別コードを示し、第3のフイール
ドSiはアドレスシラブルである。第4のフイール
ドLiはオペランド長を示す。両オペランドの先頭
仮想アドレスと最終の仮想アドレスとは、次の式
により表現される。
令の一例として、MOVE命令の形式を第3図a
に示す。MOVE命令は命令コード=MVMで表
示されるもので、第1のオペランドを読出し、第
2のオペランドへ書込むためのものである。両オ
ペランドは、それぞれサフイツクス1および2に
より識別される4個のフイールドBi,XiSi,Li
から成るオペランド記述子によつて規定されてい
る。オペランド記述子の第1のフイールドBiは、
セグメントレジスタ番号である。第3図bに示す
ように、セグメントレジスタは番号付けられた複
数のエントリを有し、各エントリはベースアドレ
スとセグメントサイズとを含むセグメント記述子
を保持する。第2のフイールドXiはインデツク
スレジスタの識別コードを示し、第3のフイール
ドSiはアドレスシラブルである。第4のフイール
ドLiはオペランド長を示す。両オペランドの先頭
仮想アドレスと最終の仮想アドレスとは、次の式
により表現される。
〔オペランド1〕
先頭仮想アドレス:BS1+IX1+S1
最後尾仮想アドレス:BS1+IX1+S1+L1−
1 〔オペランド2〕 先頭仮想アドレス:BS2+IX2+S2 最後尾仮想アドレス:BS2+IX2+S2+L2−
1 ここで、L1>L2であるならば、MOVE命令に
よる操作はオペランド1からオペランド2へ長さ
L2の移送を実行して終了する。一方、L1<L2で
あるならば、第1のオペランドから第2のオペラ
ンドへ長さL1の移送を行い、それ以後、長さ
(L2−L1)にわたつてオペランド2へ既定値(例
えば、オール0などの値)を転送する。
1 〔オペランド2〕 先頭仮想アドレス:BS2+IX2+S2 最後尾仮想アドレス:BS2+IX2+S2+L2−
1 ここで、L1>L2であるならば、MOVE命令に
よる操作はオペランド1からオペランド2へ長さ
L2の移送を実行して終了する。一方、L1<L2で
あるならば、第1のオペランドから第2のオペラ
ンドへ長さL1の移送を行い、それ以後、長さ
(L2−L1)にわたつてオペランド2へ既定値(例
えば、オール0などの値)を転送する。
次に、セグメンテーシヨン方式において、可変
長命令を処理できる情報処理装置の一実施例のブ
ロツク図を関連装置と共に第4図に示す。第4図
において、1は主記憶装置、2は情報処理装置、
11〜13は第1〜第3の命令レジスタ、14は
セグメントレジスタ、15はインデツクスレジス
タ、21は仮想アドレスの加算器、22は実効ア
ドレスの加算器、23は減算器、24はインデツ
クス/加数の切換えを行う切換え器、25は実効
アドレスの切換え器、26は減算の切換え器、2
7はレジスタ番号の切換え器、28は命令制御
器、29は減数発生器、31は仮想アドレスレジ
スタ、32は実効アドレスレジスタ、33はオペ
ランドサイズレジスタ、34は下位仮想アドレス
レジスタ、35はサイズレジスタ、36はSR番
号レジスタ、37はメモリアクセス制御器、42
は実効アドレススタツク、43はオペランド長ス
タツク、45は減算器、46はSR番号スタツク、
47は減算器45とオペランドサイズレジスタ3
3との切換え器、50はセグメント外アクセス例
外検出器、51は例外受付け器、55はSZの切
換え器である。
長命令を処理できる情報処理装置の一実施例のブ
ロツク図を関連装置と共に第4図に示す。第4図
において、1は主記憶装置、2は情報処理装置、
11〜13は第1〜第3の命令レジスタ、14は
セグメントレジスタ、15はインデツクスレジス
タ、21は仮想アドレスの加算器、22は実効ア
ドレスの加算器、23は減算器、24はインデツ
クス/加数の切換えを行う切換え器、25は実効
アドレスの切換え器、26は減算の切換え器、2
7はレジスタ番号の切換え器、28は命令制御
器、29は減数発生器、31は仮想アドレスレジ
スタ、32は実効アドレスレジスタ、33はオペ
ランドサイズレジスタ、34は下位仮想アドレス
レジスタ、35はサイズレジスタ、36はSR番
号レジスタ、37はメモリアクセス制御器、42
は実効アドレススタツク、43はオペランド長ス
タツク、45は減算器、46はSR番号スタツク、
47は減算器45とオペランドサイズレジスタ3
3との切換え器、50はセグメント外アクセス例
外検出器、51は例外受付け器、55はSZの切
換え器である。
第5図は、第4図におけるセグメント外アクセ
ス例外検出器50の詳細を関連部分と共に示した
図である。第5図において、52はELの切換え
器、53はゲート、56〜58はそれぞれ減算器
である。セグメント外アクセス例外検出器50は
切換え器52と、ゲート53と、減算器56〜5
8から成立つている。
ス例外検出器50の詳細を関連部分と共に示した
図である。第5図において、52はELの切換え
器、53はゲート、56〜58はそれぞれ減算器
である。セグメント外アクセス例外検出器50は
切換え器52と、ゲート53と、減算器56〜5
8から成立つている。
第4図において、主記憶装置1から読出された
命令語は中央処理装置2に転送され、第1〜第3
の命令レジスタ11〜13に格納される。特に、
MOVE命令の解読時には、まず、命令コードが
第1の命令レジスタに格納され、第1のオペラン
ドの記述子のB1,X1,S1フイールドが第2の命
令レジスタ12に格納され、L1フイールドが第
3の命令レジスタ13に格納される。第1の命令
レジスタ11に格納された命令コードMVMは命令
制御器28により解読され、MOVE命令の動作
に必要な制御信号が命令制御器28から出力され
る。MOVE命令は第1のオペランド記述子の解
読/第1のオペランドの先頭の読出し、ならびに
第2のオペランド記述子の解読/第2のオペラン
ドの先頭の書込みなどの操作により最初に実行さ
れ、以後は後続する第1のオペランドの読出しと
後続する第2のオペランドへの書込みが繰返され
る。セグメントレジスタ14は既に説明したよう
に複数のエントリを有し、レジスタ番号の切換え
器27を介して送出された読出しアドレスがセグ
メントレジスタ14に与えられる。セグメントレ
ジスタ14の読出しアドレスはオペランド記述子
を解読する時に第2の命令レジスタ12のBフイ
ールドによつて決定され、この値はSR番号レジ
スタ36にセツトされた後にSR番号スタツク4
6に書込まれる。
命令語は中央処理装置2に転送され、第1〜第3
の命令レジスタ11〜13に格納される。特に、
MOVE命令の解読時には、まず、命令コードが
第1の命令レジスタに格納され、第1のオペラン
ドの記述子のB1,X1,S1フイールドが第2の命
令レジスタ12に格納され、L1フイールドが第
3の命令レジスタ13に格納される。第1の命令
レジスタ11に格納された命令コードMVMは命令
制御器28により解読され、MOVE命令の動作
に必要な制御信号が命令制御器28から出力され
る。MOVE命令は第1のオペランド記述子の解
読/第1のオペランドの先頭の読出し、ならびに
第2のオペランド記述子の解読/第2のオペラン
ドの先頭の書込みなどの操作により最初に実行さ
れ、以後は後続する第1のオペランドの読出しと
後続する第2のオペランドへの書込みが繰返され
る。セグメントレジスタ14は既に説明したよう
に複数のエントリを有し、レジスタ番号の切換え
器27を介して送出された読出しアドレスがセグ
メントレジスタ14に与えられる。セグメントレ
ジスタ14の読出しアドレスはオペランド記述子
を解読する時に第2の命令レジスタ12のBフイ
ールドによつて決定され、この値はSR番号レジ
スタ36にセツトされた後にSR番号スタツク4
6に書込まれる。
セグメントレジスタ14のベースアドレスフイ
ールドは、仮想アドレスの加算器21へ送出され
ている。仮想アドレスの加算器21は、解読時に
Xフイールドにより決定されたインデツクスレジ
スタ15の出力と、Sフイールドと、ベースアド
レスとを加算して仮想アドレスを生成する。同様
にして、実効アドレスの加算器22は、インデツ
クスレジスタ15の出力とSフイールドとを加算
して実効アドレスを生成する。生成された仮想ア
ドレスは仮想アドレスレジスタ31のメモリアク
セス制御器37に送出され、実アドレスに変換さ
れた後に主記憶装置1へのアクセスに使用される
と共に、下位仮想アドレスレジスタ34を介して
セグメント外アクセス例外検出器50へ送出され
る。実効アドレスは実効アドレスレジスタ32を
介してセグメント外アクセス例外検出器50へ送
出されると共に、実効アドレススタツク42にも
書込まれる。
ールドは、仮想アドレスの加算器21へ送出され
ている。仮想アドレスの加算器21は、解読時に
Xフイールドにより決定されたインデツクスレジ
スタ15の出力と、Sフイールドと、ベースアド
レスとを加算して仮想アドレスを生成する。同様
にして、実効アドレスの加算器22は、インデツ
クスレジスタ15の出力とSフイールドとを加算
して実効アドレスを生成する。生成された仮想ア
ドレスは仮想アドレスレジスタ31のメモリアク
セス制御器37に送出され、実アドレスに変換さ
れた後に主記憶装置1へのアクセスに使用される
と共に、下位仮想アドレスレジスタ34を介して
セグメント外アクセス例外検出器50へ送出され
る。実効アドレスは実効アドレスレジスタ32を
介してセグメント外アクセス例外検出器50へ送
出されると共に、実効アドレススタツク42にも
書込まれる。
減算器23は、オペランド長、またはオペラン
ドサイズから減数発生器29の出力値を減算する
ものである。減算器23は切換え器26の動作に
対応して発生され、第3の命令レジスタ13を選
択する場合には1、オペランド長スタツク43を
選択する場合には4である。1はオペランド長を
オペランドサイズに補正する値であり、4は1メ
モリアクセスでアクセス可能な最大オペランドサ
イズを示す値である。
ドサイズから減数発生器29の出力値を減算する
ものである。減算器23は切換え器26の動作に
対応して発生され、第3の命令レジスタ13を選
択する場合には1、オペランド長スタツク43を
選択する場合には4である。1はオペランド長を
オペランドサイズに補正する値であり、4は1メ
モリアクセスでアクセス可能な最大オペランドサ
イズを示す値である。
減算器23の出力は、オペランドサイズレジス
タ33にセツトされる。オペランドの先頭のアク
セスにおいては、オペランドサイズレジスタ33
にセツトされた(L−1)の値からさらに減算器
45においてセグメント外アクセス例外検出器5
0から送出された(3−W/VA)の値を減算す
る。その結果の先頭のオペランドアクセス後の残
レングスは、切換え器47を経由してオペランド
長スタツク43にセツトされる。後続するオペラ
ンドアクセスにおいて、切換え器47はオペラン
ドサイズレジスタ33の出力を選択し、減算器4
5の出力を変更することなくオペランド長スタツ
ク43に転送する。
タ33にセツトされる。オペランドの先頭のアク
セスにおいては、オペランドサイズレジスタ33
にセツトされた(L−1)の値からさらに減算器
45においてセグメント外アクセス例外検出器5
0から送出された(3−W/VA)の値を減算す
る。その結果の先頭のオペランドアクセス後の残
レングスは、切換え器47を経由してオペランド
長スタツク43にセツトされる。後続するオペラ
ンドアクセスにおいて、切換え器47はオペラン
ドサイズレジスタ33の出力を選択し、減算器4
5の出力を変更することなくオペランド長スタツ
ク43に転送する。
セグメントレジスタ14から読出されたセグメ
ントサイズは、切換器55とサイズレジスタ35
とを経由してセグメント外アクセス例外検出器5
0に送出される。
ントサイズは、切換器55とサイズレジスタ35
とを経由してセグメント外アクセス例外検出器5
0に送出される。
SR番号スタツク46と、実効アドレススタツ
ク42と、オペランド長スタツク43とは相等し
い複数のエントリを有し、オペランド記述子の解
読済み情報を各エントリに保持し、それぞれオペ
ランド記述子と対応づけてスタツク群として使用
される。例えば、各スタツクに書込まれた第1の
オペランド記述子の後続読出しの場合、SR番号
スタツク46から読出されたレジスタ番号は、レ
ジスタ番号の切換え器27を経由してセグメント
レジスタ14の読出しアドレスとして送出されて
使用される。実効アドレススタツク42から読出
された第1のオペランド記述子の実効アドレス
(例えば、E)は、実効アドレスの切換え器25
を経由して出力され、インデツクス/加数の切換
器24により出力されるアドレス加数(4バイ
ト)とセグメントレジスタ14から読出されるベ
ースアドレス(例えば、B)と共に2つのアドレ
ス加算器21,22において加算され、後続する
仮想アドレス(B+E+4)の実効アドレス(E
+4)を発生する。仮想アドレスはメモリアクセ
ス制御器37へ送出され、記憶装置1をアクセス
するために使用される。実効アドレス(E+4)
は、さらに後続する第1のオペランドの読出しに
備え、実効アドレススタツク42に書込まれる。
オペレーシヨン長スタツク43から読出された第
1のオペランドの残サイズは、減数発生器29で
発生した1回のオペランド読出しの処理長4だ
け、減算器23により減算される。上記の減算結
果は、オペランドアクセスの終了検出に備えてオ
ペランド長スタツク43に再度、書込まれる。減
算器23のキヤリー出力は残レングス対アクセス
長の符号を表示しており、負符号を表示した場合
にオペランド長の終了を意味している。
ク42と、オペランド長スタツク43とは相等し
い複数のエントリを有し、オペランド記述子の解
読済み情報を各エントリに保持し、それぞれオペ
ランド記述子と対応づけてスタツク群として使用
される。例えば、各スタツクに書込まれた第1の
オペランド記述子の後続読出しの場合、SR番号
スタツク46から読出されたレジスタ番号は、レ
ジスタ番号の切換え器27を経由してセグメント
レジスタ14の読出しアドレスとして送出されて
使用される。実効アドレススタツク42から読出
された第1のオペランド記述子の実効アドレス
(例えば、E)は、実効アドレスの切換え器25
を経由して出力され、インデツクス/加数の切換
器24により出力されるアドレス加数(4バイ
ト)とセグメントレジスタ14から読出されるベ
ースアドレス(例えば、B)と共に2つのアドレ
ス加算器21,22において加算され、後続する
仮想アドレス(B+E+4)の実効アドレス(E
+4)を発生する。仮想アドレスはメモリアクセ
ス制御器37へ送出され、記憶装置1をアクセス
するために使用される。実効アドレス(E+4)
は、さらに後続する第1のオペランドの読出しに
備え、実効アドレススタツク42に書込まれる。
オペレーシヨン長スタツク43から読出された第
1のオペランドの残サイズは、減数発生器29で
発生した1回のオペランド読出しの処理長4だ
け、減算器23により減算される。上記の減算結
果は、オペランドアクセスの終了検出に備えてオ
ペランド長スタツク43に再度、書込まれる。減
算器23のキヤリー出力は残レングス対アクセス
長の符号を表示しており、負符号を表示した場合
にオペランド長の終了を意味している。
以上により、第1のオペランド記述子の解読/
第1回の主記憶装置アクセス、および後続アクセ
スの順で説明したが、第2のオペランド記述子も
同様に解読され、スタツク群へ貯えられ、第1の
オペランド記述子と交互に読出されて後続のオペ
ランドの読出し、および書込みに使用される。
第1回の主記憶装置アクセス、および後続アクセ
スの順で説明したが、第2のオペランド記述子も
同様に解読され、スタツク群へ貯えられ、第1の
オペランド記述子と交互に読出されて後続のオペ
ランドの読出し、および書込みに使用される。
セグメント外アクセス例外検出器50において
セグメント外アクセス例外を検出した場合には、
例外発生が例外受付け器51に報告される。例外
受付け器51は情報処理装置2の実行処理を即時
に中断し、例外処理を起動する。
セグメント外アクセス例外を検出した場合には、
例外発生が例外受付け器51に報告される。例外
受付け器51は情報処理装置2の実行処理を即時
に中断し、例外処理を起動する。
次に、第5図にセグメント外アクセス例外検出
器50の一実施例の詳細なブロツク図を示す。第
5図において、減算器58はメモリアクセスごと
に最右端バイト位置を示す定数「3」から、下位
仮想アドレスレジスタ34の保持する値を減算す
る。すなわち、減算器58は既に説明したような
(3−W/VA)項を生成する。この出力は減算
器45に送出され、既に説明したようにオペラン
ド記述子の解読時におけるオペランドサイズの残
量補正に使用される。ELの切換え器52は、実
効アドレスレジスタ32の出力とオペランドサイ
ズレジスタ33の出力とを切換えて得た出力を減
算器56に転送する。減算器56はサイズレジス
タ35の出力からELの切換え器52の出力を減
算する機能を有し、減算の結果はSZの切換え器
55においてセグメントレジスタ14からのサイ
ズ出力と切換えられてサイズレジスタ35へ転送
される。減算器57では、減算器56の出力から
減算器58の出力を減算している。すなわち、
(SIZE−EA−(3−W/VA))の演算を行つてい
る。減算器56のキヤリー信号と、減算器57の
キヤリー信号とはゲート53に転送される。
器50の一実施例の詳細なブロツク図を示す。第
5図において、減算器58はメモリアクセスごと
に最右端バイト位置を示す定数「3」から、下位
仮想アドレスレジスタ34の保持する値を減算す
る。すなわち、減算器58は既に説明したような
(3−W/VA)項を生成する。この出力は減算
器45に送出され、既に説明したようにオペラン
ド記述子の解読時におけるオペランドサイズの残
量補正に使用される。ELの切換え器52は、実
効アドレスレジスタ32の出力とオペランドサイ
ズレジスタ33の出力とを切換えて得た出力を減
算器56に転送する。減算器56はサイズレジス
タ35の出力からELの切換え器52の出力を減
算する機能を有し、減算の結果はSZの切換え器
55においてセグメントレジスタ14からのサイ
ズ出力と切換えられてサイズレジスタ35へ転送
される。減算器57では、減算器56の出力から
減算器58の出力を減算している。すなわち、
(SIZE−EA−(3−W/VA))の演算を行つてい
る。減算器56のキヤリー信号と、減算器57の
キヤリー信号とはゲート53に転送される。
第4図および第5図に示した情報処理装置で
は、第6図に示すようなパイプライン処理により
アドレス生成とセグメント外アクセス例外チエツ
クとを実現している。すなわち、第6図において
は、基本命令の動作タイミングチヤートに示した
ように、第4図において並べて配置されたレジス
タ群には同期してデータがセツトされる。第6図
のタイミングチヤートのクロツクT2期間には、
サイズレジスタ35と、実効アドレスレジスタ3
2と、下位仮想アドレスレジスタ34とには命令
a1のオペランドアクセスに関連した値、すなわ
ち、s1,e1,w/v1がセツトされている。一方、
基本命令ではオペランド長フイールドが存在しな
いので、オペランドサイズレジスタ33は使用さ
れず、ELの切換え器52は実効アドレスレジス
タ32を選択している。一方、減算器56は(s1
−e1)を出力し、減算器58は(3−w/v1)を
出力している。したがつて、減算器57では(s1
−e1)−(3−w/v1)を計算しており、そのキヤ
リー出力には(s1−e1)≧(3−w/v1)という事
象を出力し、上記のセグメント外アクセス例外検
出の第(1)式を表わしている。ゲート53では基本
命令タイミング信号をANDし、セグメント外ア
クセス例外報告信号を生成している。
は、第6図に示すようなパイプライン処理により
アドレス生成とセグメント外アクセス例外チエツ
クとを実現している。すなわち、第6図において
は、基本命令の動作タイミングチヤートに示した
ように、第4図において並べて配置されたレジス
タ群には同期してデータがセツトされる。第6図
のタイミングチヤートのクロツクT2期間には、
サイズレジスタ35と、実効アドレスレジスタ3
2と、下位仮想アドレスレジスタ34とには命令
a1のオペランドアクセスに関連した値、すなわ
ち、s1,e1,w/v1がセツトされている。一方、
基本命令ではオペランド長フイールドが存在しな
いので、オペランドサイズレジスタ33は使用さ
れず、ELの切換え器52は実効アドレスレジス
タ32を選択している。一方、減算器56は(s1
−e1)を出力し、減算器58は(3−w/v1)を
出力している。したがつて、減算器57では(s1
−e1)−(3−w/v1)を計算しており、そのキヤ
リー出力には(s1−e1)≧(3−w/v1)という事
象を出力し、上記のセグメント外アクセス例外検
出の第(1)式を表わしている。ゲート53では基本
命令タイミング信号をANDし、セグメント外ア
クセス例外報告信号を生成している。
第6図において、後半のタイミングチヤートは
可変長オペランド命令の動作タイミングチヤート
を示す。第6図の示す期間T5において、第1〜
第3の命令レジスタ11〜13には可変長命令の
命令コードと、第1のオペランド記述子とがセツ
トされる。各演算器においては、仮想アドレスv5
と、実効アドレスe5と、オペランド長サイズ(15
−1)とを計算すると共に、セグメントレジスタ
番号r5と、セグメントレジスタ14から読出した
サイズs5とを各レジスタにセツトする。
可変長オペランド命令の動作タイミングチヤート
を示す。第6図の示す期間T5において、第1〜
第3の命令レジスタ11〜13には可変長命令の
命令コードと、第1のオペランド記述子とがセツ
トされる。各演算器においては、仮想アドレスv5
と、実効アドレスe5と、オペランド長サイズ(15
−1)とを計算すると共に、セグメントレジスタ
番号r5と、セグメントレジスタ14から読出した
サイズs5とを各レジスタにセツトする。
次のマシンサイクルT6は、オペランド取出し
の準備に使用される。ELの切換え器52はオペ
ランドサイズレジスタ33の出力を選択し、SZ
の切換え器55では減算器56を選択している。
したがつて、サイズレジスタ35には減算器56
の出力値s5−(15−1)がセツトされる。サイク
T7の期間において、実効アドレススタツク42
とSR番号スタツク46との第1のオペランド記
述子のエントリには、それぞれe5とr5とがセツト
される。ELの切換え器52は実効アドレスレジ
スタ32を選択し、減算器45からL−1−(3
−W/VA)という初回アクセス分を減じたオペ
ランドサイズがオペランド長スタツク43の第1
のオペランド記述子のエントリにセツトされる。
の準備に使用される。ELの切換え器52はオペ
ランドサイズレジスタ33の出力を選択し、SZ
の切換え器55では減算器56を選択している。
したがつて、サイズレジスタ35には減算器56
の出力値s5−(15−1)がセツトされる。サイク
T7の期間において、実効アドレススタツク42
とSR番号スタツク46との第1のオペランド記
述子のエントリには、それぞれe5とr5とがセツト
される。ELの切換え器52は実効アドレスレジ
スタ32を選択し、減算器45からL−1−(3
−W/VA)という初回アクセス分を減じたオペ
ランドサイズがオペランド長スタツク43の第1
のオペランド記述子のエントリにセツトされる。
次のサイクルT7の期間には、仮想アドレスレ
ジスタ31に保持する仮想アドレスv5が付加さ
れ、メモリアクセス制御器37へ読出される。メ
モリアクセス制御器37では、これに応答してリ
クエストを送出する。このとき、セグメント外ア
クセス例外検出器50においては、ELの切換え
器52は実効アドレスレジスタ32を選択してお
り、減算器56では(サイズレジスタ35の内
容)−(実効アドレスレジスタ32の内容)=s5−
(15−1)−e5を計算し、生成されたキヤリー出力
は可変長タイミング信号との条件をとり、セグメ
ント外アクセス例外の判定報告信号とする。この
式は、第1のオペランド記述子によりアクセスさ
れる最右端バイト位置に関する例外判定式を示し
たものである。したがつて、この場合はセグメン
ト外アクセス例外が存在しない場合を示してい
る。
ジスタ31に保持する仮想アドレスv5が付加さ
れ、メモリアクセス制御器37へ読出される。メ
モリアクセス制御器37では、これに応答してリ
クエストを送出する。このとき、セグメント外ア
クセス例外検出器50においては、ELの切換え
器52は実効アドレスレジスタ32を選択してお
り、減算器56では(サイズレジスタ35の内
容)−(実効アドレスレジスタ32の内容)=s5−
(15−1)−e5を計算し、生成されたキヤリー出力
は可変長タイミング信号との条件をとり、セグメ
ント外アクセス例外の判定報告信号とする。この
式は、第1のオペランド記述子によりアクセスさ
れる最右端バイト位置に関する例外判定式を示し
たものである。したがつて、この場合はセグメン
ト外アクセス例外が存在しない場合を示してい
る。
サイクルT7の期間では、第2および第3の命
令レジスタ12,13に取出された第2のオペラ
ンド記述子の解読が並行して処理実行され、サイ
クルT8,T9の2サイクル期間に第1のオペラン
ド記述子の場合と同様に処理が行われ、各スタツ
クの第2のオペランドのエントリに解読結果が格
納される。第2のオペランドは、データを記憶す
るためのオペランドであり、第2のオペランドの
実行によつて記憶データの転送が行われる。しか
しながら、斯かる動作は本発明に直接的関連がな
いので説明を省略する。
令レジスタ12,13に取出された第2のオペラ
ンド記述子の解読が並行して処理実行され、サイ
クルT8,T9の2サイクル期間に第1のオペラン
ド記述子の場合と同様に処理が行われ、各スタツ
クの第2のオペランドのエントリに解読結果が格
納される。第2のオペランドは、データを記憶す
るためのオペランドであり、第2のオペランドの
実行によつて記憶データの転送が行われる。しか
しながら、斯かる動作は本発明に直接的関連がな
いので説明を省略する。
サイクルT10からサイクルToまでの期間には、
第1のオペランドと第2のオペランドとの後続ア
クセスリクエストが交互に処理されている。後続
リクエストや後続アクセスリクエストは、スタツ
ク群からオペランド記述子対応に読出される情報
を用いて送出される。例えば、サイクルT9の期
間の動作は、第1のオペランドアクセスであり、
SR番号スタツク46から第1のオペランドのた
めのセグメントレジスタ番号r5を読出すと共に、
実効アドレススタツク42から前回のアクセスで
使用した実効アドレスを読出し、オペランド長ス
タツク43から残オペランドサイズを読出す。そ
こで、仮想アドレスの加算器21と実効アドレス
の加算器22とに対して、選択器24,25を介
して+4および実効アドレスe5が供給され、さら
に仮想アドレスの加算器21にはセグメントレジ
スタ14から読出されたベースアドレスr5が供給
され、今回アクセスする仮想アドレスv5+4と実
効アドレスe5+4とが出力される。一方、減算器
23では残サイズrl5から今回、オペランドアク
セスするオペランド長、すなわち、4が減ぜられ
る。
第1のオペランドと第2のオペランドとの後続ア
クセスリクエストが交互に処理されている。後続
リクエストや後続アクセスリクエストは、スタツ
ク群からオペランド記述子対応に読出される情報
を用いて送出される。例えば、サイクルT9の期
間の動作は、第1のオペランドアクセスであり、
SR番号スタツク46から第1のオペランドのた
めのセグメントレジスタ番号r5を読出すと共に、
実効アドレススタツク42から前回のアクセスで
使用した実効アドレスを読出し、オペランド長ス
タツク43から残オペランドサイズを読出す。そ
こで、仮想アドレスの加算器21と実効アドレス
の加算器22とに対して、選択器24,25を介
して+4および実効アドレスe5が供給され、さら
に仮想アドレスの加算器21にはセグメントレジ
スタ14から読出されたベースアドレスr5が供給
され、今回アクセスする仮想アドレスv5+4と実
効アドレスe5+4とが出力される。一方、減算器
23では残サイズrl5から今回、オペランドアク
セスするオペランド長、すなわち、4が減ぜられ
る。
これらのアドレスや残レングスは、レジスタ群
を介して再度、スタツク群に書込まれ、次のアク
セスで使用される。仮想アドレスはメモリアクセ
スのためにメモリアクセス制御器37へ送出され
る。以後、オペランドアクセスをサイクルTo-1
の期間にみられるように、残レングスが0になる
まで繰返す。これらの後続アクセスにおいては、
可変長タイミング信号がチエツクの無効を指示し
ており、セグメント外アクセス例外検出器50で
は例外のチエツクを行わないでアクセスをしてい
る。後続のアクセスの範囲では、開始時のチエツ
クによりすでにアクセスが完了しており、チエツ
クなしのアクセスで例外の検出洩れはない。
を介して再度、スタツク群に書込まれ、次のアク
セスで使用される。仮想アドレスはメモリアクセ
スのためにメモリアクセス制御器37へ送出され
る。以後、オペランドアクセスをサイクルTo-1
の期間にみられるように、残レングスが0になる
まで繰返す。これらの後続アクセスにおいては、
可変長タイミング信号がチエツクの無効を指示し
ており、セグメント外アクセス例外検出器50で
は例外のチエツクを行わないでアクセスをしてい
る。後続のアクセスの範囲では、開始時のチエツ
クによりすでにアクセスが完了しており、チエツ
クなしのアクセスで例外の検出洩れはない。
一方、オペランド記述子を解読する時のセグメ
ント外アクセス例外チエツクにおいて例外を検出
した場合には、例外報告信号をもとにして
MOVE命令の処理を中断し、例外処理を開始す
る。上記の例外検出のタイミングはMOVE命令
の書込み動作に先行しており、これによつて他の
セグメントが乱れることを防止している。
ント外アクセス例外チエツクにおいて例外を検出
した場合には、例外報告信号をもとにして
MOVE命令の処理を中断し、例外処理を開始す
る。上記の例外検出のタイミングはMOVE命令
の書込み動作に先行しており、これによつて他の
セグメントが乱れることを防止している。
(発明の効果)
本発明は以上説明したように、可変長オペラン
ドアクセスの開始時にオペランドの最大アクセス
可能アドレスを予知してセグメント外アクセス例
外チエツクを行うことにより、EBPを生成する
ための複雑な手続きを省略し、少量のハードウエ
アで単純な構成のセグメント外アクセス例外チエ
ツクを実現し、結果的には低コストで容易にマシ
ンサイクルタイムを短縮することができるという
効果がある。
ドアクセスの開始時にオペランドの最大アクセス
可能アドレスを予知してセグメント外アクセス例
外チエツクを行うことにより、EBPを生成する
ための複雑な手続きを省略し、少量のハードウエ
アで単純な構成のセグメント外アクセス例外チエ
ツクを実現し、結果的には低コストで容易にマシ
ンサイクルタイムを短縮することができるという
効果がある。
第1図〜第3図はセグメンテーシヨンの概念を
示す図である。第4図は、本発明による例外検出
装置の一実施例を示すブロツク図である。第5図
は、第3図において使用されるセグメント例外ア
クセス検出器の詳細例を関連部分と共に示すブロ
ツク図である。第6図は、第4図ならびに第5図
における例外検出装置を示すタイミングチヤート
である。 1……主記憶装置、2……情報処理装置、11
〜15,31〜36……レジスタ、21,22…
…加算器、23,45,56〜58……減算器、
24〜27,47,52,55……切換え器、2
8……命令制御器、29……減数発生器、37…
…メモリアクセス制御器、42,43,46……
スタツク、50……セグメント外アクセス例外検
出器、51……例外受付け器、53……ゲート。
示す図である。第4図は、本発明による例外検出
装置の一実施例を示すブロツク図である。第5図
は、第3図において使用されるセグメント例外ア
クセス検出器の詳細例を関連部分と共に示すブロ
ツク図である。第6図は、第4図ならびに第5図
における例外検出装置を示すタイミングチヤート
である。 1……主記憶装置、2……情報処理装置、11
〜15,31〜36……レジスタ、21,22…
…加算器、23,45,56〜58……減算器、
24〜27,47,52,55……切換え器、2
8……命令制御器、29……減数発生器、37…
…メモリアクセス制御器、42,43,46……
スタツク、50……セグメント外アクセス例外検
出器、51……例外受付け器、53……ゲート。
Claims (1)
- 1 ベースアドレスとセグメントサイズを含むセ
グメント記述子とによつてセグメントを規定し、
前記ベースアドレスと実効アドレスとの和を仮想
アドレスとし、前記実効アドレスと前記セグメン
トサイズとの比較にもとづいてセグメント外アク
セス判定を行うセグメンテーシヨン方式において
使用される例外検出装置であつて、前記セグメン
ト記述子を保持するためのレジスタ手段と、実行
すべきオペランドの開始位置とオペランド長とに
より定義される可変長オペランドを処理する可変
長命令をロードするための命令レジスタと、前記
命令レジスタにロードされた前記可変長命令に応
答して、前記オペランドの開始実効アドレスを生
成するための実効アドレス加算器と、前記可変長
命令により指定された前記オペランド長から1を
減ずるための補正手段と、前記レジスタ手段から
出力されるセグメントサイズ値から前記補正手段
の出力値、および前記開始実効アドレスの値を減
算し、前記減算の結果により前記オペランドの終
了位置がセグメント外に存在するか否かを判定
し、前記判定の結果によつて例外を報告するため
の報告手段とを具備して構成したことを特徴とす
る例外検出装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58222900A JPS60114948A (ja) | 1983-11-25 | 1983-11-25 | 例外検出装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58222900A JPS60114948A (ja) | 1983-11-25 | 1983-11-25 | 例外検出装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS60114948A JPS60114948A (ja) | 1985-06-21 |
JPH0219495B2 true JPH0219495B2 (ja) | 1990-05-02 |
Family
ID=16789623
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP58222900A Granted JPS60114948A (ja) | 1983-11-25 | 1983-11-25 | 例外検出装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS60114948A (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04160655A (ja) * | 1990-10-25 | 1992-06-03 | Nec Ibaraki Ltd | 例外検出方式 |
JP6525267B2 (ja) | 2015-11-13 | 2019-06-05 | Necプラットフォームズ株式会社 | 範囲外参照検出装置、方法およびプログラム |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS56157549A (en) * | 1980-05-09 | 1981-12-04 | Fujitsu Ltd | Access address check processing system for storage device |
-
1983
- 1983-11-25 JP JP58222900A patent/JPS60114948A/ja active Granted
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS56157549A (en) * | 1980-05-09 | 1981-12-04 | Fujitsu Ltd | Access address check processing system for storage device |
Also Published As
Publication number | Publication date |
---|---|
JPS60114948A (ja) | 1985-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0258453B1 (en) | Instruction prefetch control apparatus | |
EP0213843B1 (en) | Digital processor control | |
US5023773A (en) | Authorization for selective program access to data in multiple address spaces | |
EP0208428B1 (en) | Direct input/output in a virtual memory system | |
US5619671A (en) | Method and apparatus for providing token controlled access to protected pages of memory | |
JPH0242569A (ja) | ベクター処理システムに用いる文脈スイッチング方法及び装置 | |
JPH02232753A (ja) | デジタルコンピュータシステムにおける仮想メモリーアドレスから物理的メモリーアドレスへの変換を制御する方法とその装置 | |
US3701977A (en) | General purpose digital computer | |
EP0074479B1 (en) | Data processing apparatus with intersegment call | |
JPH05134927A (ja) | アドレス変換装置および方法 | |
US5226132A (en) | Multiple virtual addressing using/comparing translation pairs of addresses comprising a space address and an origin address (sto) while using space registers as storage devices for a data processing system | |
US4991083A (en) | Method and system for extending address space for vector processing | |
JPS62102344A (ja) | バツフア・メモリ制御方式 | |
JPH0219495B2 (ja) | ||
JPH0192856A (ja) | アクセス及び欠陥論理信号を用いて主メモリユニットを保護する装置及び方法 | |
KR930003399B1 (ko) | 마이크로프로그램된 소프트웨어 명령 실행장치 및 방법 | |
JPS6051947A (ja) | 仮想記憶計算機における命令先取方式 | |
JP2637320B2 (ja) | バッファ記憶制御方式 | |
JPS615357A (ja) | デ−タ処理装置 | |
JPH0248733A (ja) | 情報処理装置 | |
JP3047992B2 (ja) | 主記憶キー制御方法 | |
JPS6042972B2 (ja) | アドレス変換機能を有する情報処理装置 | |
JPS6115235A (ja) | 中央処理装置 | |
JPH03127126A (ja) | 情報処理装置 | |
JPS63206834A (ja) | 命令制御におけるエラ−検出処理方式 |