JPS63245539A - デ−タ処理装置のメモリ制御方式 - Google Patents
デ−タ処理装置のメモリ制御方式Info
- Publication number
- JPS63245539A JPS63245539A JP62078658A JP7865887A JPS63245539A JP S63245539 A JPS63245539 A JP S63245539A JP 62078658 A JP62078658 A JP 62078658A JP 7865887 A JP7865887 A JP 7865887A JP S63245539 A JPS63245539 A JP S63245539A
- Authority
- JP
- Japan
- Prior art keywords
- segment
- instruction
- attribute
- permission
- base register
- 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
- 238000000034 method Methods 0.000 claims description 17
- 230000011218 segmentation Effects 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 4
- 238000006073 displacement reaction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Landscapes
- Storage Device Security (AREA)
- Executing Machine-Instructions (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[発明の目的1
(産業上の利用分野)
本発明は、セグメンテーション方式によるデータ処理M
ARのメモリ制御方式に関する。
ARのメモリ制御方式に関する。
(従来の技術)
従来、例えば16ビツトのマイクロプロセッサを使用す
るデータ処理装置では、セグメンテーション方式のメモ
リ制御方式が採用されてりる。
るデータ処理装置では、セグメンテーション方式のメモ
リ制御方式が採用されてりる。
セグメンテーション方式では、メモリの全アドレス空間
をセグメントと称す部分空間に分割し、各セグメントは
先頭アドレスであるセグメントペースが設定される。メ
モリをアクセスする際の物理アドレスは、各セグメント
毎に設定されるセグメント番号及びオフセットにより指
定される。セグメント番号はセグメントベースアドレス
(以下単にベースアドレスと称す)に対応している。
をセグメントと称す部分空間に分割し、各セグメントは
先頭アドレスであるセグメントペースが設定される。メ
モリをアクセスする際の物理アドレスは、各セグメント
毎に設定されるセグメント番号及びオフセットにより指
定される。セグメント番号はセグメントベースアドレス
(以下単にベースアドレスと称す)に対応している。
ところで、各セグメントをアクセスするために、セグメ
ント記述子レジスタ(以下ベースレジスタと称す)が設
けられている。ベースレジスタは、ベースアドレス、セ
グメントサイズ及びセグメント属性を格納するエリアを
有する。セグメント属性には、そのセグメントを手続き
として呼出すための実行許可、そのセグメントのデータ
を参照するための読出し許可及びそのセグメントの内容
を変更するための閤込み許可等の属性がある。データ処
理B[のCPUは、セグメントをアクセスする際に、ベ
ースレジスタに前記のようなセグメントの情報をロード
する。通常では、複数のセグメントを効率的にアクセス
する必要から、各セグメントに対応する複数のベースレ
ジスタ群が設けられている。
ント記述子レジスタ(以下ベースレジスタと称す)が設
けられている。ベースレジスタは、ベースアドレス、セ
グメントサイズ及びセグメント属性を格納するエリアを
有する。セグメント属性には、そのセグメントを手続き
として呼出すための実行許可、そのセグメントのデータ
を参照するための読出し許可及びそのセグメントの内容
を変更するための閤込み許可等の属性がある。データ処
理B[のCPUは、セグメントをアクセスする際に、ベ
ースレジスタに前記のようなセグメントの情報をロード
する。通常では、複数のセグメントを効率的にアクセス
する必要から、各セグメントに対応する複数のベースレ
ジスタ群が設けられている。
ここで、セグメントを手続きとして実行する(呼出す)
場合に、そのセグメントを命令セグメントと称す。実行
中の命令セグメントにおいて、その情報は特別のベース
レジスタである命令レジスタに格納される。
場合に、そのセグメントを命令セグメントと称す。実行
中の命令セグメントにおいて、その情報は特別のベース
レジスタである命令レジスタに格納される。
CPUがプログラムの各命令を実行する場合、アクセス
すべきデータの所在は命令の中のアドレスシラブル(ア
ドレス指定部)で指定される。アドレスシラブルは、ア
クセスすべきセグメントの情報がロードされているベー
スレジスタの番号を指定するフィールドを含み、その他
にインデックスレジスタやオフセット(ディスブレース
メン[・)を指定するフィールドを有する。アドレスシ
ラブルに対して、ベースレジスタ番号が指定されない場
合がある。この場合には、アクセスされるセグメントは
実行中の命令が含まれている命令セグメントが暗黙に指
定されることになる。アドレスシラブルには、ベースレ
ジスタ番号の指定の有無を指示するビットが設けられて
いる。
すべきデータの所在は命令の中のアドレスシラブル(ア
ドレス指定部)で指定される。アドレスシラブルは、ア
クセスすべきセグメントの情報がロードされているベー
スレジスタの番号を指定するフィールドを含み、その他
にインデックスレジスタやオフセット(ディスブレース
メン[・)を指定するフィールドを有する。アドレスシ
ラブルに対して、ベースレジスタ番号が指定されない場
合がある。この場合には、アクセスされるセグメントは
実行中の命令が含まれている命令セグメントが暗黙に指
定されることになる。アドレスシラブルには、ベースレ
ジスタ番号の指定の有無を指示するビットが設けられて
いる。
アドレスシラブル含有する命令語は、例えば第2図に示
すように構成されている。即ち、命令語は、命令コード
(OP)、演算の対象となる汎用レジスタ番号(G)、
ベースレジスタ番号の指定の有無を指示するビット(B
E)、インデックス修飾に使用するインデックスレジス
タ番号(X)、ベースレジスタ番号(BN)及びディス
ブレースメント(D)からなる。
すように構成されている。即ち、命令語は、命令コード
(OP)、演算の対象となる汎用レジスタ番号(G)、
ベースレジスタ番号の指定の有無を指示するビット(B
E)、インデックス修飾に使用するインデックスレジス
タ番号(X)、ベースレジスタ番号(BN)及びディス
ブレースメント(D)からなる。
命令によりセグメントがアクセスされる際、ベースレジ
スタにロードされているセグメント属性の情報に基づい
て、そのアクセスのチェックがなされる。これは、メモ
リ保護のためであり、例えばプログラムの破壊等を防止
するためである。このチェック処理により、許可されて
いないアクセスであることが検出されると、トラップが
発生される。命令語でベースレジスタ番号の指定が無い
場合(BEが「0」)には、前記のように命令セグメン
トが暗黙に指定される。この場合には、アクセスチェッ
クは、命令レジスタにロードされているセグメント属性
の情報によりなされる。
スタにロードされているセグメント属性の情報に基づい
て、そのアクセスのチェックがなされる。これは、メモ
リ保護のためであり、例えばプログラムの破壊等を防止
するためである。このチェック処理により、許可されて
いないアクセスであることが検出されると、トラップが
発生される。命令語でベースレジスタ番号の指定が無い
場合(BEが「0」)には、前記のように命令セグメン
トが暗黙に指定される。この場合には、アクセスチェッ
クは、命令レジスタにロードされているセグメント属性
の情報によりなされる。
第3図に示すように、複数(n>個のベースレジスタ群
21が設けられている場合、所定のベースレジスタは命
令語のBNフィールド22のベースレジスタ番号により
指定される。各ベースレジスタは、前記のように、ベー
スアドレス、サイズ、及びセグメント属性である実行(
E)、読出しくR>、崗込み(W>の各許可属性からな
る。各許可属性では、「1」のとき許可状態、「0」の
とき不許可状態とする。セレクタ24は、命令語のベー
スレジスタ番号の指定の有無を指示するビット(BE)
に応じて、選択指定されたベースレジスタか又は命令ベ
ースレジスタ23のいずれかを選択する。即ち、命令語
のBEフィールドが「0」の場合には命令ベースレジス
タ23が選択されて、BEフィールドが「1」の場合に
は他方が選択される。アクセスチェック回路25は、セ
レクタ24で選択されたいずれかのセグメント属性をチ
ェックし、セグメントに対するアクセス許可又は不許可
の判定を行なう。
21が設けられている場合、所定のベースレジスタは命
令語のBNフィールド22のベースレジスタ番号により
指定される。各ベースレジスタは、前記のように、ベー
スアドレス、サイズ、及びセグメント属性である実行(
E)、読出しくR>、崗込み(W>の各許可属性からな
る。各許可属性では、「1」のとき許可状態、「0」の
とき不許可状態とする。セレクタ24は、命令語のベー
スレジスタ番号の指定の有無を指示するビット(BE)
に応じて、選択指定されたベースレジスタか又は命令ベ
ースレジスタ23のいずれかを選択する。即ち、命令語
のBEフィールドが「0」の場合には命令ベースレジス
タ23が選択されて、BEフィールドが「1」の場合に
は他方が選択される。アクセスチェック回路25は、セ
レクタ24で選択されたいずれかのセグメント属性をチ
ェックし、セグメントに対するアクセス許可又は不許可
の判定を行なう。
ところで、命令セグメントは、通常では変数としてのデ
ータを含むことはなり、害換え不可の状態が保持されて
いる。このため、セグメント属性の書込み許可属性には
許可「1」の情報が与えられることはない。しかし、命
令セグメントには、定数として参照されるだけのデータ
を含むことは可能である。このデータを参照するために
は、セグメント属性の読出し許可属性に許可「1」を与
えればよいことになる。この読出し許可属性に対する許
可「1」は、手続きセグメント(サブルーチン)により
与えられる。しかしながら、前記のような方式であると
、手続きセグメントは命令セグメント以外の他のセグメ
ントのデータを参照するときにも、同等に読出し属性に
対する許可「1」を与えてしまう不都合がある。
ータを含むことはなり、害換え不可の状態が保持されて
いる。このため、セグメント属性の書込み許可属性には
許可「1」の情報が与えられることはない。しかし、命
令セグメントには、定数として参照されるだけのデータ
を含むことは可能である。このデータを参照するために
は、セグメント属性の読出し許可属性に許可「1」を与
えればよいことになる。この読出し許可属性に対する許
可「1」は、手続きセグメント(サブルーチン)により
与えられる。しかしながら、前記のような方式であると
、手続きセグメントは命令セグメント以外の他のセグメ
ントのデータを参照するときにも、同等に読出し属性に
対する許可「1」を与えてしまう不都合がある。
(発明が解決しようとする問題点)
従来のメモリ制御方式では、実行中の命令セグメントの
データを参照するための読出し許可属性に許可を与える
と、その他のセグメントに対しても同等に読出し許可属
性に許可を与えてしまう問題が発生する。
データを参照するための読出し許可属性に許可を与える
と、その他のセグメントに対しても同等に読出し許可属
性に許可を与えてしまう問題が発生する。
本発明の目的は、実行中の命令セグメントからデータを
参照するための読出し動作において、命令セグメントの
読出し許可属性に対する許可の有無とは無関係に読出し
可能となるようにして、命令セグメント以外の他のセグ
メントに対して同等に読出し許可属性に許可を与えるよ
うな事態を確実に防止することができるデータ処!!l
!8置のメモリ制御方式を提供することにある。
参照するための読出し動作において、命令セグメントの
読出し許可属性に対する許可の有無とは無関係に読出し
可能となるようにして、命令セグメント以外の他のセグ
メントに対して同等に読出し許可属性に許可を与えるよ
うな事態を確実に防止することができるデータ処!!l
!8置のメモリ制御方式を提供することにある。
[発明の構成1
(問題点を解決するための手段と作用)本発明は、セグ
メンテーション方式のメモリ制御方式において、命令ベ
ースレジスタにロードされた命令セグメントのデータを
参照するためのセグメントアクセスを実行する際に、セ
グメント属性の磨込み許可属性をチェックしかつセグメ
ン!・属性の読出し許可属性の有無とは無関係にデータ
の読出し許可を行なうアクセスチェック手段を備えた方
式でおる。
メンテーション方式のメモリ制御方式において、命令ベ
ースレジスタにロードされた命令セグメントのデータを
参照するためのセグメントアクセスを実行する際に、セ
グメント属性の磨込み許可属性をチェックしかつセグメ
ン!・属性の読出し許可属性の有無とは無関係にデータ
の読出し許可を行なうアクセスチェック手段を備えた方
式でおる。
このような方式により、命令セグメントからデータを参
照する際に、命令セグメント以外の他のセグメントに対
して同等に読出し許可属性に許可を与えるような事態を
確実に防止することができる。
照する際に、命令セグメント以外の他のセグメントに対
して同等に読出し許可属性に許可を与えるような事態を
確実に防止することができる。
(実施例)
以下図面を参照して本発明の詳細な説明する。第1図は
同実施例の方式の内容を説明するためのブロック図であ
る。第1図において、複数(n)個のベースレジスタ群
21は、メモリのアドレス空間を構成する複数のセグメ
ントに対応するセグメント記述子レジスタである。各ベ
ースレジスタBO〜3nは、ベースアドレス、サイズ、
及びセグメント属性である実行(E)、読出しくR)、
書込み<W)の各許可属性のフィールドからなる。一方
、命令ベースレジスタ33は、実行中の命令セグメント
の情報であるベースアドレス、サイズ、及びセグメント
属性である実行(E)、読出しくR>、!込み(W>の
各許可属性のフィールドからなる。ここで、命令ベース
レジスタ33の実行(E)、読出しくR>の各許可属性
のフィールドに曝よ予め許可状態を指示する許可し1」
の情報がロードされている。
同実施例の方式の内容を説明するためのブロック図であ
る。第1図において、複数(n)個のベースレジスタ群
21は、メモリのアドレス空間を構成する複数のセグメ
ントに対応するセグメント記述子レジスタである。各ベ
ースレジスタBO〜3nは、ベースアドレス、サイズ、
及びセグメント属性である実行(E)、読出しくR)、
書込み<W)の各許可属性のフィールドからなる。一方
、命令ベースレジスタ33は、実行中の命令セグメント
の情報であるベースアドレス、サイズ、及びセグメント
属性である実行(E)、読出しくR>、!込み(W>の
各許可属性のフィールドからなる。ここで、命令ベース
レジスタ33の実行(E)、読出しくR>の各許可属性
のフィールドに曝よ予め許可状態を指示する許可し1」
の情報がロードされている。
セレクタ34は、命令語のベースレジスタ番号の指定の
有無を指示するビット(BE)に応じて、選択指定され
たベースレジスタか又は命令ベースレジスタ33のいず
れかを選択する。即ち、命令語のBEフィールドが「0
」の場合には命令ベースレジスタ33が選択されて、B
Eフィールドが「1」の場合には他方が選択される。ア
クセスチェック回路35は、セレクタ34で選択された
いずれかのセグメント属性をチェックし、セグメントに
対するアクセス許可又は不許可の判定を行なう。
有無を指示するビット(BE)に応じて、選択指定され
たベースレジスタか又は命令ベースレジスタ33のいず
れかを選択する。即ち、命令語のBEフィールドが「0
」の場合には命令ベースレジスタ33が選択されて、B
Eフィールドが「1」の場合には他方が選択される。ア
クセスチェック回路35は、セレクタ34で選択された
いずれかのセグメント属性をチェックし、セグメントに
対するアクセス許可又は不許可の判定を行なう。
次に、同実施例の動作を説明する。先ず、前記第2図に
示すように、命令語の8Eフイールドが「1」の場合に
は、セレクタ34はベースレジスタ群21から選択され
たベースレジスタを選択する。
示すように、命令語の8Eフイールドが「1」の場合に
は、セレクタ34はベースレジスタ群21から選択され
たベースレジスタを選択する。
この場合、命令語のBNフィールド22のベースレジス
タ番号により、アクセスされるセグメントに対応する所
定のベースレジスタが指定される。アクセスチェック回
路35は、セレクタ34で選択されたベースレジスタの
セグメントメント属性をチェックし、セグメントに対す
るアクセス許可又は不許可の判定を行なう。アクセス許
可がなされると、指定されたベースレジスタの情報に基
づいて、所定のセグメントがアクセスされることになる
。
タ番号により、アクセスされるセグメントに対応する所
定のベースレジスタが指定される。アクセスチェック回
路35は、セレクタ34で選択されたベースレジスタの
セグメントメント属性をチェックし、セグメントに対す
るアクセス許可又は不許可の判定を行なう。アクセス許
可がなされると、指定されたベースレジスタの情報に基
づいて、所定のセグメントがアクセスされることになる
。
ここで、命令語のBEフィールドが「0」であると、セ
レクタ34は暗黙に命令ベースレジスタを選択する。ア
クセスチェック回路35は、セレクタ34で選択された
命令ベースレジスタのセグメント属性をチェックする。
レクタ34は暗黙に命令ベースレジスタを選択する。ア
クセスチェック回路35は、セレクタ34で選択された
命令ベースレジスタのセグメント属性をチェックする。
この場合、前記のように、命令ベースレジスタ33のセ
グメント属性の実行(E)、読出しくR)の各許可属性
のフィールドには予め許可状態を指示する許可「1」の
情報がロードされている。これにより、アクセスチェッ
ク回路35は、命令セグメントのデータを参照するため
の読出し動作の際に、読出しくR)の許可属性のフィー
ルドの許可状態を指示する許可「1」の情報に基づいて
、常に読出し可能であることを指示することになる。
グメント属性の実行(E)、読出しくR)の各許可属性
のフィールドには予め許可状態を指示する許可「1」の
情報がロードされている。これにより、アクセスチェッ
ク回路35は、命令セグメントのデータを参照するため
の読出し動作の際に、読出しくR)の許可属性のフィー
ルドの許可状態を指示する許可「1」の情報に基づいて
、常に読出し可能であることを指示することになる。
したがって、命令セグメントのデータを参照する際に、
手続きセグメントにより読出し許可属性に許可「1」を
与えることなく、命令セグメン!・からデータの読出し
を行なうことができる。
手続きセグメントにより読出し許可属性に許可「1」を
与えることなく、命令セグメン!・からデータの読出し
を行なうことができる。
[発明の効果]
以上詳述したように本発明によれば、セグメンテーシミ
ン方式におりて、実行中の命令セグメントのデータを参
照する際に、セグメント属性の読出し許可属性に許可が
与えられなくても、常に命令セグメントから定数として
のデータを読出すことが可能である。したがって、命令
セグメントのデータを参照する際に、命令セグメント以
外の他のセグメントの読出し許可属性に同等の許可が与
えられるような事態を確実に防止することができるもの
である。
ン方式におりて、実行中の命令セグメントのデータを参
照する際に、セグメント属性の読出し許可属性に許可が
与えられなくても、常に命令セグメントから定数として
のデータを読出すことが可能である。したがって、命令
セグメントのデータを参照する際に、命令セグメント以
外の他のセグメントの読出し許可属性に同等の許可が与
えられるような事態を確実に防止することができるもの
である。
第1図は本発明の実施例に係わるブロック図、第2図は
従来の命令語の一例を示す図、第3図は従来のセグメン
テーシミン方式の動作を説明するためのブロック図であ
る。 21・・・ベースレジスタ群、23.33・・・命令ベ
ースレジスタ、24.34・・・セレクタ、25.35
・・・アクセスチェック回路。 出願人代理人 弁理士 鈴 江 武 彦第1図 jI2図 第3図
従来の命令語の一例を示す図、第3図は従来のセグメン
テーシミン方式の動作を説明するためのブロック図であ
る。 21・・・ベースレジスタ群、23.33・・・命令ベ
ースレジスタ、24.34・・・セレクタ、25.35
・・・アクセスチェック回路。 出願人代理人 弁理士 鈴 江 武 彦第1図 jI2図 第3図
Claims (1)
- 【特許請求の範囲】 メモリの各セグメントに対応するベースアドレス、サイ
ズ及びセグメント属性を格納するベースレジスタ群を有
するセグメンテーシヨン方式のメモリ制御方式において
、 実行中の命令セグメントのベースアドレス、サイズ及び
セグメント属性の各情報を格納するための命令ベースレ
ジスタと、前記命令セグメントのデータを参照するため
のセグメントアクセスを実行する際に前記セグメント属
性の書込み許可属性をチェックしかつ前記セグメント属
性の読出し許可属性の有無とは無関係にデータの読出し
許可を行なうアクセスチェック手段とを具備したことを
特徴とするデータ処理装置のメモリ制御方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62078658A JPS63245539A (ja) | 1987-03-31 | 1987-03-31 | デ−タ処理装置のメモリ制御方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62078658A JPS63245539A (ja) | 1987-03-31 | 1987-03-31 | デ−タ処理装置のメモリ制御方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63245539A true JPS63245539A (ja) | 1988-10-12 |
Family
ID=13667960
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62078658A Pending JPS63245539A (ja) | 1987-03-31 | 1987-03-31 | デ−タ処理装置のメモリ制御方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63245539A (ja) |
-
1987
- 1987-03-31 JP JP62078658A patent/JPS63245539A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4453212A (en) | Extended address generating apparatus and method | |
US4434464A (en) | Memory protection system for effecting alteration of protection information without intervention of control program | |
US3576544A (en) | Storage protection system | |
US4777588A (en) | General-purpose register file optimized for intraprocedural register allocation, procedure calls, and multitasking performance | |
US4432053A (en) | Address generating apparatus and method | |
US4866599A (en) | Call instruction, return instruction and trap procedure for ring crossing architecture | |
US5325496A (en) | Selectable pointer validation in a computer system | |
US4241396A (en) | Tagged pointer handling apparatus | |
EP1855226A1 (en) | Security system of flash memory and method thereof | |
US4623962A (en) | Register control processing system | |
EP0518479B1 (en) | Processing system and method including memory selection | |
EP0363882B1 (en) | Multiprocessor system using communication register having processor-associated storage locations | |
US4672538A (en) | Method of dynamically changing formation of addresses in memory of a data processing system | |
JP2001249848A (ja) | 先行特権レベルに基づく特権昇格 | |
US5261108A (en) | Multiprocessor communications register providing complete access in a full access mode, and mapped access in a partial access mode | |
JPS63245539A (ja) | デ−タ処理装置のメモリ制御方式 | |
US6311266B1 (en) | Instruction look-ahead system and hardware | |
EP0285309A2 (en) | Memory protection apparatus for use in an electronic calculator | |
GB1585960A (en) | Information flow security mechanisms for data processing systems | |
JPS6074059A (ja) | 記憶装置アクセス制御方式 | |
JPS62226367A (ja) | デイジタル計算機システム | |
JPH06309236A (ja) | メモリの不正書込み検出回路 | |
JPS6035694B2 (ja) | 主記憶保護方式 | |
JP2533931B2 (ja) | 動的割当て領域のデ―タ内容保護方式 | |
JP3140028B2 (ja) | サブルーチンの引数の受け渡し方式 |