JPS6228854A - メモリプロテクト方式 - Google Patents

メモリプロテクト方式

Info

Publication number
JPS6228854A
JPS6228854A JP16891785A JP16891785A JPS6228854A JP S6228854 A JPS6228854 A JP S6228854A JP 16891785 A JP16891785 A JP 16891785A JP 16891785 A JP16891785 A JP 16891785A JP S6228854 A JPS6228854 A JP S6228854A
Authority
JP
Japan
Prior art keywords
memory
address space
gate
cpu
interruption
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
JP16891785A
Other languages
English (en)
Inventor
Tsutomu Shimomura
勉 下村
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP16891785A priority Critical patent/JPS6228854A/ja
Publication of JPS6228854A publication Critical patent/JPS6228854A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明は、マルチタスク処理可能な比較的小形のコンピ
ュータシステムに用いて好適なメモリプロテクト方式に
関する。
〔発明の技術的背景とそり問題点〕
CPUが直接アクセスできるメモリ空間には制限が有シ
1例えば米国ザイログ社が供給する8ビツトマイクロプ
ロセツサz80では64にバイト、米国インテル社が供
給する16ビツトマイクログロセツテl8088では1
μ(メガ)バイトである。これらマイクロプロセッサが
通常良く知られている。これらのマイクロプロセッサを
使ったうえでメモリ空間を増やす方法には、メモリバン
ク切換えと称される方式の使用が一般的である。この方
式は、CPUがアクセスできるメモリ空間を多重化して
持つことでトータルのメモリ容量を大きくするもので、
 CPUから見えるアドレス空間はあくまでもそのCP
Uがもつ最大空間(Z80では64にバイト、1808
6では1Mバイト)である。このために後述するような
いろいろな不都合が生じる。
第3図にCPUがtso86(I Mバイトのアドレス
空間を持つ)で上位512にバイト(アドレス8000
0 H−FFFFFH)を多重化した実施例におけるア
ドレスマツプが示されている。この例では、メモリバン
ク0〜3を設け、トータルメモリ容量を3Mバイトとし
ている。ここで0〜7FFF’FH番地はどのメモリバ
ンクでも共通にアクセスできる空間で、メモリバンクの
切換えルーチンは必ずこの共通のメモリ空間に置くより
にプログラミングするのが普通のメモリ空間に置くよう
にプログラミングするのが普通である。
つまp、メモリバンクの切換えは出力命令によシ行うも
のとして、このメモリバンクの切換エコマントを実行す
るとただちにメモリバンクを切換えてしまい、CPU内
の命令キューの内容とメモリ内の内容が異なるといった
不都合があるためである。また1割込みの処理ルーチン
が入出カドライバール−チンもこの共通アドレス空間に
プログラミングするとソフトウェアが作シ易くなるので
、CPUがアクセスできるアドレス空間ナベてを多重化
するのではなく、一部分はすべてのバンクで共通にアク
セスできるアドレス空間を設ける方法がとられる。
ところで、多重化された空間が単なるデータエリアとし
て使れる場合には何の問題も発生しないが夫々Qメモリ
バンクで異ったプログラムが実行されると、ハードウェ
ア、またはソフトウェアの誤シによシ共通のアドレス空
間にあるメモリの内容を破壊してしまうという不都合が
発生スる。パソコンレベルのコンピュータシステムにお
いてもマルチタスク処理が要求され。
上記Qようなケースもしばしば発生している。
〔発明の目的〕
本発明は上述した事情に基づいてなされたものであ夛、
小量のハードウェアを付加することによシメモリ内容の
破壊を防止し、且つセキュリティを得ることの出来るメ
モリプロテクト方式を提供することを目的とする。
〔発明の概要〕
本発明は、多重化したアドレス空間で実行中のプログラ
ムが共通のアドレス空間をアクセスするときには割込み
を発し、あらかじめ定めであるチェックを実施すること
でメモリ内容の破壊を防止し、又、アクセスされたくな
いアドレスであればそのメモリアクセスを7ボートする
ことでセキュリティが得られる様に構成したものである
。このため、多重化したメモリアドレス空間にプログラ
ムがブランチするときにセットされ、その割込み処理に
先立らセットされるスリップ70ツブと、このフリップ
フロップが示す状態情報により、そのメモリアクセスt
−許可もしくは禁止するゲートと、スリップ70ツブが
セットされ、且つ特定のメモリアドレス空間をアクセス
するときに割込みを要求する手段とを付加した。
このことによシ、メモリプロテクトを行なうと共にシス
テムのセキュリティを確保することが出来る。
〔発明の実施例〕
以下1図面を使用して本発明実施例に関し詳細に説明す
る。第1図に1本発明実施例におけるハードウェア構成
がブロック図で示されている。ここで、1はインテル社
製16ビツトcPU18086(以下、単にμCP(J
Jと称する)である。
2はアドレスラッチ及びアドレス生成回路である。3〜
7はメモリであシ、そのアドレスマツプは第3図に示さ
れたものと同様である。3はアドレス空間O〜7FF″
FFHを持つメモリ、4は多重化されたアドレス空間8
0000 H−FFFFFHを持つメモリ、4は多重化
されたアドレス空間80000 H−FFFFF Hを
持つ/< y りOCD ) モ!J *5は同じアド
レス空間(80000H−FFFFFH)  ヲ持つバ
ンク1のメモリ、6は同じアドレス空間(80000H
5−FFFFFH)を持つバンク2のメモリ、7は同じ
アドレス空間(80000H−FFF’F’FH)を持
つバンク3のメモリである。これらメモリ3.4,5,
6.7に対する制御信号(応Q。
CAS及びWE )は、メモリコントロール回路IQよ
りメモリコントロールk 号MC,、MC,。
MC,、MC,、MC,として供給される。
8は16ビツト幅Qデータバスで、μCPUz及び上記
各メモ’)3+4p5p6p7はこのバスに共通接続さ
れる。11は8ビツトの入出力デバイスを接続するため
に設けられる16ビツトバスと8ビツトバスのバス変換
回路で6る。
9は、8ビツト幅の入出力デバイス用のバス。
12は割込みコントローラであり1本発明実施例では、
インテル社製の18259  が使用され、少くとも割
込み入力の1つにメモリコントロール回路10の出力ん
iCより が接続される。131〜13nはその他の入
出力デバイスを示す。
冑1図中、  INT−REQは割込みコントローラ1
2からμCPU 2に割込み要求する割込信号を示す。
第2図は第1図に示したメモリコントロール回路10の
詳細を示したブロック図である。図においてk 101
及び102はアンドゲート。
104〜106はフリップフロップ、(F/F)1θ3
Fiフリツプ70ツブ105 、106出力を入力とす
るデコーダ回路を含むメモリ制御信号発生回路でアシ、
その田方はメモリコントロール信号MC,、MC,、M
Cs 、 MCyとしてそれぞれのメモリバンク4,5
,6.7へ供給される。
同$A、$B、$CはμCPU1が実行する出力(OU
T)命令によって生成される信号であp、入出力ボート
としてA−B−03つのアドレスが定義される。又、ア
ンドゲート101にはアドレスの最上位ビット(ADR
19)、メモリリード、今イト信号(MRD + MW
R,) 、そして7リツグフロツプ104のQ出力が入
力として供給され、ここで論理積条件のとられた出力は
MC1Rとして割込みコントローラ12へ通知される。
又、アンドゲート102にはアドレスの最上位ビット(
ADR19)及びフリップフロップ104のQ出力が供
給され、ここで論理積条件のとられた結果はメモリコン
トロール(8号MC,としてメモリ3へ供給される。
以下1本発明実施例の動作につき詳細に説明する。通常
1g2図に示すクリップ70ツブ104〜106はリセ
ット状態にちゃ、メモリコントロール信号MC,及びM
C,が活性化されている。即ち、μCPUz  はメモ
リ3,4のトータル1メガバイト容量のメモリアクセス
が可能でちる。μCPUJがメモリバック切換えコマン
ド(出力命令)を実行することで。フリップ70ツブ1
05,106のクロック信号($C)を発生させると、
このときのアキエムレータの内容がデータバス9に出力
されているから、ビットl及びビット0によジ、7リツ
プ70ッグ105゜106がそれぞれセット、リセット
する。今。
7リツプ70ツグ106のみをセクトしたとする。ここ
でメモ’) ftflJ御信号発生回W51θ3は以下
に示す論理でデコードするものとする。
MC,=xos△106△A D R,。
MC,=1os△106△A、DR,,9MC,=xo
s△106△ADR,。
Mc、 = J o s△106△ADR,。
上述した場合においては、メモリコントロール信号MC
5が活性となり、μCP[JJ  はメモリ3及び5の
1Mバイトのアクセスが可能となる。
プログラムの実行が0〜7EEFFHのアドレス空間だ
けであればこの状態のままでμCPUJは80000H
〜F F F B’ F Hまで自由にアクセスできる
。プログラムの実行を多重化されたアドレス空間800
00 H−FF’FFFHに移すとき、ブランチ命令の
直前にフリップフロップ104をセットする。(出力命
令によリセット信号$Aを発生)フリップフロップ10
4がセットされると、アンドゲート102が閉じ、メモ
リコントロール信号MC,は不活性とな)、メモリ3は
アクセス不可能になる。μCPUJ  が全バンク共通
のアドレス空間をアクセスしようとすると、アンドゲー
ト10ノが開き1割込みコントローラ12に対し割込み
要求信号MCxRを発生する。割込みコントローラ12
はμCPUz  に対し割込み要求(INT−REQ 
)を行う。
μCPUz  は割込みアクノリッジサイクルで7リツ
プ70ツブ104のリセット信号($B)を発生し、フ
リップフロップ104をリセットする。これによル共通
のアドレス空間にプログラムされた割込み処理ルーチ/
は正常に実行でき。
アクセスチェックが可能となる。メモリバンク切換ルー
チンを含む共通のドライバルーチンる)の呼び出しはン
7トウエア割込み命令(INT、h)により行う、この
ときはアクセスチェックは行わずに単に7リツブ7oツ
ブ1θ4のリセット信号$Bの発生だけを行う、いずれ
の場合も多重化されたアドレス空間にリターンするとき
には、フリップフロップ104をセットしてからリター
ンする。
以上のように、 lfiりて全バンク共通のアドレス空
間をアドレスした場合には割込みを発生することでアク
セスチェックを行い、約束どおpソフトウェア割込み命
令によってアクセスした場合にはアクセスチェックを行
わずにアクセスを許可することでマルチタスクシステム
等におけるセキエリチーを確保することが可能になる。
〔発明の効果〕
以上説明の様に、メモリの1部アドレス空間を多重化し
て持つ(メモリバンク方式)ことでメモリ容量を大きく
したシステムにおいて、多重化していないアドレス空間
に共通のサービスルーチン(BIO8等)をプログラミ
ングし、多重化したアドレス空間には夫々に異ったアプ
リケージ鄭ンプログラムをロードし笑行する(マルチタ
スク&マルチジ!ブ処理)ときに、ハードウェアまたは
ン7トウエアの娯pにより所定0手続きを踏まずに共通
のアドレス空間をアクセスしようとしたとき割込+を発
生することによシ、メモリQ保護を行うとともにシステ
ムのセキエリチーを確保することが出来る。
【図面の簡単な説明】
第1図は木兄BAが採用されるコンピュータシステムの
構成例を示すブロック図、第2図は本発明Q爽施例を示
すブロック図、第3図は木兄IHIcおいて使用される
メモリのアドレスマツプを示す図である。 1・・・マイクロブロセツ?(μCPU)、 、?・・
・アドレスラッチ色アドレス生成回路、3〜7・・・メ
モリ% IQ・・・メモリ二ントロール回路、1θ1゜
1θ2・・・アンドゲート、103・・・メモリ制御信
号発生回路、104〜106・・・7リツブ70ツブ。

Claims (1)

    【特許請求の範囲】
  1. メモリアドレス空間の1部を多重化することによりトー
    タルメモリ容量を拡大使用するコンピュータシステムに
    おいて、上記多重化したメモリアドレス空間にプログラ
    ムがブランチするときにセットされ、その割込み処理に
    先立ちリセットされるフリップフロップと、このフリッ
    プフロップが示す状態情報によりそのメモリアクセスを
    許可、もしくは禁止する第1のゲートと、上記フリップ
    フロップ出力ならびに特定のアドレス信号を入力として
    得、特定のメモリアドレス空間をアクセスするとき割込
    みを要求する第2のゲートとを具備して成ることを特徴
    とするメモリプロテクト方式。
JP16891785A 1985-07-31 1985-07-31 メモリプロテクト方式 Pending JPS6228854A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP16891785A JPS6228854A (ja) 1985-07-31 1985-07-31 メモリプロテクト方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16891785A JPS6228854A (ja) 1985-07-31 1985-07-31 メモリプロテクト方式

Publications (1)

Publication Number Publication Date
JPS6228854A true JPS6228854A (ja) 1987-02-06

Family

ID=15876950

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16891785A Pending JPS6228854A (ja) 1985-07-31 1985-07-31 メモリプロテクト方式

Country Status (1)

Country Link
JP (1) JPS6228854A (ja)

Similar Documents

Publication Publication Date Title
US5991858A (en) Multi-user data processing system with storage protection
JP2727520B2 (ja) メモリカード及びその作動方法
US7631160B2 (en) Method and apparatus for securing portions of memory
US4038645A (en) Non-translatable storage protection control system
US6754793B2 (en) Method for flashing ESCD and variables into a ROM
KR940003325B1 (ko) 가상 입력/출력 지령의 변환장치 및 방법
US5305460A (en) Data processor
US5907862A (en) Method and apparatus for the sharing of a memory device by multiple processors
JP4945053B2 (ja) 半導体装置、バスインターフェース装置、およびコンピュータシステム
US4184201A (en) Integrating processor element
US4050094A (en) Translator lookahead controls
EP0109504A2 (en) Protection system for storage and input/output facilities and the like
US4794515A (en) Protection of data in a multiprogramming data processing system
JP3072706B2 (ja) データ保護装置及びコンピュータ・システム
US4493025A (en) Digital data processing system using unique means for comparing operational results and locations at which such results are to be stored
US20050108488A1 (en) Programme-controlled unit
CA1075366A (en) System for controlling address keys under interrupt conditions
EP1713000A1 (en) Memory protection system
JPS62245353A (ja) Eepromのデ−タ書換え防止回路
JPS6228854A (ja) メモリプロテクト方式
JPS62160554A (ja) メモリの不正アクセス防止装置
JPH03141446A (ja) メモリ保護回路
JPS6250863B2 (ja)
JPS595496A (ja) メモリプロテクト方式
KR920002829B1 (ko) 메모리 액세스 제어 시스템