Nothing Special   »   [go: up one dir, main page]

JPH029372B2 - - Google Patents

Info

Publication number
JPH029372B2
JPH029372B2 JP58211201A JP21120183A JPH029372B2 JP H029372 B2 JPH029372 B2 JP H029372B2 JP 58211201 A JP58211201 A JP 58211201A JP 21120183 A JP21120183 A JP 21120183A JP H029372 B2 JPH029372 B2 JP H029372B2
Authority
JP
Japan
Prior art keywords
access
key
data
error
storage
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
Application number
JP58211201A
Other languages
Japanese (ja)
Other versions
JPS60103465A (en
Inventor
Kazuhiro Hara
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP58211201A priority Critical patent/JPS60103465A/en
Publication of JPS60103465A publication Critical patent/JPS60103465A/en
Publication of JPH029372B2 publication Critical patent/JPH029372B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (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

【発明の詳細な説明】 (a) 発明の技術分野 本発明は、電子計算機中央処理装置による主記
憶装置へのアクセスに対する記憶保護等の制御を
行うキイデータを記憶する記憶部(以下キイイン
ストレージという)からのデータを緩衝記憶する
キイバツフアストレージに関する。
[Detailed Description of the Invention] (a) Technical Field of the Invention The present invention relates to a storage unit (hereinafter referred to as key-in storage) that stores key data that controls storage protection etc. for access to a main storage device by a computer central processing unit. ) related to key buffer storage that buffers and stores data from files.

(b) 技術の背景 近年の電子計算機では制御プログラムやユーザ
プログラムが多重処理されており、一つのプログ
ラムのエラーが他のプログラムの実行を中断させ
たり誤つた結果を出力させたりしないよう、ま
た、重要なデータを故意に取り出されたり参照さ
れたりしないように電子計算機に記憶保護機能を
付与する必要がある。
(b) Background of the technology In modern electronic computers, control programs and user programs are multi-processed, and it is necessary to prevent errors in one program from interrupting the execution of other programs or outputting erroneous results. It is necessary to provide computers with a memory protection function to prevent important data from being intentionally retrieved or referenced.

記憶保護にはいくつかの方法があるが、一般に
キイ方式が多く用いられている。キイ方式は、主
記憶装置(又はメインストレージ、以下MSとい
う)を、例えば2048バイトのブロツクに分割し、
ブロツク毎に主記憶装置の記憶保護制御及び参
照、変更の記録を行うキイデータを記憶するキイ
インストレージ(以下KSという)を設け、中央
処理装置(以下CPUという)がプログラムに従
つてMSにアクセスするとき、KSを読出して命
令実行の順序制御、及びプログラムに関連する計
算機システムの状態表示を行うプログラム状態語
(program status word:以下PSWという)に設
けられた保護キイと照合することによつて、当該
ブロツクへのアクセスを許可又は禁止すると共
に、アクセスを許可した場合には当該ブロツクへ
のアクセスが読出しか格納かの別をKSに記憶す
る方式である。
There are several methods for memory protection, but the key method is generally used. The key method divides the main storage (or main storage, hereinafter referred to as MS) into blocks of, for example, 2048 bytes.
A key-in storage (hereinafter referred to as KS) is provided for each block to store key data that controls the storage protection of the main memory and records references and changes, and the central processing unit (hereinafter referred to as CPU) accesses the MS according to the program. At this time, by reading the KS and comparing it with a protection key provided in a program status word (hereinafter referred to as PSW) that controls the order of instruction execution and displays the status of the computer system related to the program, This method allows or prohibits access to the block and, if access is permitted, stores in the KS whether the access to the block is for reading or storing.

CPUのプログラム処理の高速化を図るため、
プログラム及びオペランドを、処理に先行して
MSから高速なバツフアメモリに転送しておいて
使用する、所謂バツフアメモリ方式が広く用いら
れているが、本発明に成るキイバツフアストレー
ジ(以下KBSという)も同様に、KSのキイデー
タの中、使用される可能性の比較的高いデータを
バツフアに保持しておくことにより、CPUの記
憶保護処理を高速に実行させることを可能にする
ものである。
In order to speed up CPU program processing,
program and operands prior to processing
The so-called buffer memory method, in which key data is transferred from the MS to a high-speed buffer memory, is widely used, but the key buffer storage (hereinafter referred to as KBS) according to the present invention is also used in the key data of the KS. By holding data that is relatively likely to be lost in a buffer, it is possible to execute memory protection processing by the CPU at high speed.

(c) 従来技術と問題点 以下、KBSから読出されたデータにエラーが
検出された場合のエラーの修正方法の一例は、デ
ータに付加したエラー訂正用の冗長符号
(errorcorrecting code:以下ECCという)によ
つて訂正する方法であるが、1語当りのビツト数
が少ない場合はECCに要するビツト数の割合が
大きく、高速で高価なメモリ素子及び訂正回路を
多量に必要として不経済であるのみならず、訂正
に時間を要するのでマシンサイクルが長くなり
CPUの処理能力の低下を来すという問題点があ
つた。他の例は、MSの複数ブロツク分のキイデ
ータを記憶するKBSと、その写しを記憶する代
替用のKBSとを別々のメモリ素子で構成し、エ
ラー発生時に切替えて使用する方法であるが、こ
の場合も二重化構成とすることによりメモリ素子
及び周辺回路が増加するという問題点があつた。
(c) Prior art and problems Below, an example of a method for correcting an error when an error is detected in data read from the KBS is to use a redundant code (errorcorrecting code: hereinafter referred to as ECC) for error correction added to the data. However, if the number of bits per word is small, the ratio of the number of bits required for ECC is large, and it is not only uneconomical as it requires a large amount of high-speed and expensive memory elements and correction circuits. Since it takes time to correct the problem, the machine cycle becomes longer.
There was a problem that the processing power of the CPU decreased. Another example is to configure a KBS that stores key data for multiple MS blocks and an alternative KBS that stores a copy of the data in separate memory elements, and switch between them when an error occurs. In this case as well, there was a problem in that the duplex configuration increased the number of memory elements and peripheral circuits.

(d) 発明の目的 上述の問題点に鑑み、本発明は、メモリ素子数
を減少して、高速かつ効率的なKBSを実現する
ことを目的とする。
(d) Object of the Invention In view of the above-mentioned problems, an object of the present invention is to reduce the number of memory elements and realize a high-speed and efficient KBS.

(e) 発明の構成 主記憶装置の所定容量ブロツクに対応してアク
セスの制御情報及び実行されたアクセスの種類情
報を記憶するキイインストレージと、その一部を
中央処理装置に対して緩衝記憶するキイバツフア
ストレージとを有し、主記憶装置へのアクセス時
に該キイバツフアストレージを読出してアクセス
の制御及び記録を行う装置において、前記キイイ
ンストレージからのアクセスの制御及び種類情報
に誤り制御ビツトを付加してアドレスの深さ方向
に下位及び上位領域に2分割された領域に2重に
記憶すると共に、主記憶装置へのアクセス時に対
応する該下位領域からアクセスの制御及び種類情
報を読出す前記キイバツフアストレージと、前記
アクセス時にアクセスの種類に従つて該下位領域
のアクセスの種類情報を更新する手段と、前記ア
クセス時に読出しエラーが検出されたとき前記誤
り制御ビツト及び対応する上位領域の内容に基い
てエラーを訂正し該下位領域に格納してエラーを
訂正する手段とを設け、主記憶装置へのアクセス
の制御及び記憶を行うことを特徴とするキイバツ
フアストレージであつて、本発明により前述の目
的は十分達成される。
(e) Structure of the Invention Key-in storage that stores access control information and access type information corresponding to a predetermined capacity block of the main storage device, and a part of the key-in storage that stores it as a buffer for the central processing unit. In a device that has a key buffer storage and controls access and records by reading the key buffer storage when accessing the main memory, an error control bit is included in the access control and type information from the key buffer storage. is added and stored twice in an area divided into lower and upper areas in the depth direction of the address, and access control and type information are read from the corresponding lower area when accessing the main storage device. the key buffer storage; means for updating the access type information of the lower area according to the access type at the time of the access; and means for updating the error control bit and the corresponding upper area when a read error is detected during the access. A key buffer storage characterized by controlling access to a main storage device and storing data by correcting errors based on the contents and storing the errors in the lower area. The invention satisfactorily achieves the above objectives.

(f) 発明の実施例 第1図はメモリ素子に対するKBSの二重化の
構成例図、第2図はKBSのデータ構成例図、第
3図は本発明の実施例を示すブロツク図である。
(f) Embodiments of the Invention FIG. 1 is a diagram showing an example of the configuration of duplication of KBS for a memory element, FIG. 2 is a diagram of an example of the data configuration of KBS, and FIG. 3 is a block diagram showing an embodiment of the invention.

第3図において、KS1は図示省略するMSの、
例えば2048バイトのブロツクへのCPUによる侵
害に対する保護(記憶保護)制御を行うキイデー
タを記憶するキイインストレージ(KS)である。
accは図示省略するPSWの保護キイと照合するこ
とによつて当該MSブロツクへのアクセスの許可
又は禁止の判定用に使用され、fは当該MSブロ
ツクに対して格納動作に加えて読出し動作に対し
ても記憶保護検査を行うことを指示し、rは当該
MSブロツクに対して読出し又は格納なる参照が
行われたことを示し、cは格納が行われたことを
示す。
In FIG. 3, KS1 is an MS (not shown).
For example, it is a key-in storage (KS) that stores key data that controls protection (memory protection) against attacks by the CPU on 2048-byte blocks.
acc is used to determine permission or prohibition of access to the relevant MS block by comparing it with a PSW protection key (not shown), and f is used to determine whether access to the relevant MS block is permitted or prohibited, and f is used to perform read operations in addition to storage operations for the relevant MS block. r indicates that a memory protection test be performed even if the
This indicates that a read or store reference has been made to the MS block, and c indicates that a store has been made.

第1図において、KBSは256ワードのランダム
アクセスメモリ(以下RAMという)から構成さ
れ、アドレス0〜127の領域(以下プライマリイ
という)とアドレス128〜255の領域(以下オルタ
ナテイブという)とに2等分され、夫々、128の
キイデータを記憶する。通常はプライマリイが使
用され、オルタナテイブはプライマリイのバツク
アツプ用に使用される。
In Figure 1, the KBS consists of 256 words of random access memory (hereinafter referred to as RAM), and is divided into an area from addresses 0 to 127 (hereinafter referred to as primary) and an area from addresses 128 to 255 (hereinafter referred to as alternative). Each section stores 128 key data. Normally, the primary is used, and the alternative is used for backing up the primary.

第2図はKBSのデータ構成を示し、ADRSは
当該キイデータが記憶されているKSのアドレス
15ビツトの上位8ビツトを記憶し、CPUによつ
て指定されるMSアドレスPA6〜PA13と照合
することによつて当該キイデータが目的のデータ
か否かの判定に使用される。ACC,F、及びR
はKSのacc,f,rに対応する。C,C′,C″は
KSのcに対応する誤り訂正コードとし、全“0”
又は“1”にセツトして使用することにより1ビ
ツトの読出しエラー検出時には3ビツトによる多
数決論理により訂正可能とする。KVは本キイデ
ータが有効であることを示す。符号にPが付され
たビツトは夫々の符号に対するパリテイビツトを
示す。
Figure 2 shows the data structure of KBS, and ADRS is the address of KS where the key data is stored.
The upper 8 bits of the 15 bits are stored and used to determine whether the key data is the desired data by comparing it with the MS addresses PA6 to PA13 designated by the CPU. ACC, F, and R
correspond to acc, f, r of KS. C, C′, C″ are
The error correction code corresponds to c of KS, and all “0”
Alternatively, by setting it to "1" and using it, when a 1-bit read error is detected, it can be corrected using 3-bit majority logic. KV indicates that this key data is valid. The bits with P appended to the codes indicate parity bits for the respective codes.

また、第3図において、KS1は前述のデータ
構成を有する32K(K=1024)語のメモリであつ
て、CPUによつて指定されるMSアドレスPA6
(MSB)〜PA31(LSB)の中のPA6〜PA2
0によつてアドレス指定される。KBS2は256ビ
ツト容量のRAMから構成され、夫々、128語の
キイデータを記憶するプライマリイ(PRMと略
する)とオルタナテイブ(ALTと略する)に2
分割され、1ビツトのラツチLによつてPRM又
はALTが選択されると共に、CPUがMSを指定
するアドレスのPA14〜PA20によつて1語の
キイデータが指定される。キイバツフアレジスタ
(以下KBRという)4は、KBS2の同様のデー
タ構成を有し、KBS2から読出されたデータ、
KBS2に書込むデータ等の保持を行う。従つて、 KSからキイデータをKBS2にロードすると
き:PA6〜PA20によつてアドレス指定され
て読出されたKSのキイデータは、acc,f及び
rはそのまま、cは3ビツトに拡張され、各パ
リテイビツトを付加してKBR4の対応するビ
ツト位置にセツトされる。またアドレスPA6
〜PA13もパリテイビツトを付加して同様に
KBR4にセツトされ、然る後、ラツチL及び
PA14〜PA20によつてアドレス指定し、か
つラツチLを0、次に1に切替えることによつ
てKBS2のPRM及びALTの両領域に格納す
る。
Further, in FIG. 3, KS1 is a 32K (K=1024) word memory having the data structure described above, and has an MS address PA6 specified by the CPU.
(MSB) ~ PA6 ~ PA2 in PA31 (LSB)
Addressed by 0. KBS2 consists of a RAM with a capacity of 256 bits, and has two primary (PRM) and alternative (ALT) areas that each store 128 words of key data.
PRM or ALT is selected by a 1-bit latch L, and one word of key data is specified by addresses PA14 to PA20 at which the CPU specifies MS. The key buffer register (hereinafter referred to as KBR) 4 has a data configuration similar to that of KBS2, and stores data read from KBS2,
Holds data etc. to be written to KBS2. Therefore, when loading key data from KS to KBS2: The key data of KS addressed and read by PA6 to PA20 has acc, f, and r as they are, c is expanded to 3 bits, and each parity bit is It is added and set in the corresponding bit position of KBR4. Also address PA6
~PA13 also adds parity bit and does the same
KBR4 is set, and then the latch L and
Addressed by PA14-PA20 and stored in both the PRM and ALT areas of KBS2 by switching latch L to 0 and then to 1.

CPUによるMSブロツクへのアクセスに伴つ
てKBS2からキイデータを読出す通常動作時
は:ラツチLを0としてPRMの、PA14〜
PA20によつて指定されるアドレスからキイ
データを読出してKBR4にセツトすると共に、
読出されたADRS部とCPUが指定するMSアド
レスPA6〜PA13とを比較回路(以下
COMPという)3によつて照合し、一致した
ときは当該キイデータが目的とするデータであ
るとしてKBR4から図示省略する記憶保護検
査部に出力して記憶保護検査を行う。またMS
参照の有無及び種類(読出し又は格納)に従つ
てアツプデート回路5によりR,C,C′,
C″をKBR4上で更新してPRMの元の位置に格
納する。前記照合により不一致のときは目的の
キイデータがKBS2に存在しないことを示し、
KBR4のACC,F,R及びCをPA14〜PA
20の上位にADRSの値を付して構成されるア
ドレスで指定されるKS1の記憶位置へ格納し
て追出すと共に、アドレスPA6〜PA20で指
定されるKS1の記憶位置からキイデータを読
出し、以降はと同様にしてKBS2のPRM及
びALTの両方の領域に格納する。
During normal operation, key data is read from KBS2 when the CPU accesses the MS block: Set latch L to 0 and read PRM's PA14 to
Reads the key data from the address specified by PA20 and sets it in KBR4,
A comparison circuit (hereinafter referred to as
(referred to as COMP) 3, and if they match, the key data is determined to be the target data and is output from the KBR 4 to a memory protection inspection unit (not shown) for memory protection inspection. Also MS
R, C, C',
C″ is updated on KBR4 and stored in the original position of PRM. If there is a mismatch in the above verification, it indicates that the target key data does not exist in KBS2,
KBR4 ACC, F, R and C from PA14 to PA
At the same time, the key data is stored in the storage location of KS1 specified by the address configured by adding the value of ADRS to the upper part of 20 and deleted, and the key data is read from the storage location of KS1 specified by addresses PA6 to PA20. Similarly, store it in both the PRM and ALT areas of KBS2.

前記の読出し動作において、パリテイチエ
ツク回路(以下PCという)6によつてエラー
が検出されたとき:ラツチLを0から1に切替
えて代わりにALT側の対応する記憶位置から
キイデータをKBR4に読出して記憶保護検査
部へ出力する。次に訂正部7は、ADRS,
ACC及びFはALTから読出されたデータを、
Rは(当然MSへの参照があつたとして)1
を、またC,C′及びC″は先にPRMから読出し
たデータから多数決論理により訂正した値を
PRMの元の位置に格納することによつてエラ
ーを修復する。
In the above read operation, when an error is detected by the parity check circuit (hereinafter referred to as PC) 6: The latch L is switched from 0 to 1 and the key data is read from the corresponding storage location on the ALT side to KBR4 instead. and outputs it to the memory protection inspection unit. Next, the correction unit 7 performs ADRS,
ACC and F read data from ALT,
R is 1 (assuming there is a reference to MS of course)
, and C, C', and C'' are the values corrected by majority logic from the data previously read from PRM.
Repair the error by storing the PRM in its original location.

(g) 発明の効果 以上説明したように本発明によれば、バツクア
ツプ用に設けたオルタナテイブ及びMS参照によ
り更新されるアクセス種別データ部に付加された
誤り訂正コードによつてエラーデータを修復する
ことができるので、通常動作におけるKBS読出
し時にはプライマリイのみを使用して処理可能と
なり、記憶保護及びアクセス種別データの更新処
理を高速に実行することができる。またメモリ素
子をアドレスの深さ方向に分割して使用するので
メモリ素子及び周辺回路が半減され、本発明によ
り低コストで効率の良いキイバツフアストレージ
を実現することができるという効果がある。
(g) Effects of the Invention As explained above, according to the present invention, error data can be repaired by the error correction code added to the access type data section updated by the alternative provided for backup and MS reference. Therefore, when reading the KBS in normal operation, it is possible to use only the primary to perform processing, and storage protection and access type data update processing can be executed at high speed. Furthermore, since the memory element is divided in the address depth direction, the number of memory elements and peripheral circuits can be halved, and the present invention has the effect that a low-cost and highly efficient key buffer storage can be realized.

【図面の簡単な説明】[Brief explanation of drawings]

第1図はメモリ素子に対するKBSの二重化の
構成例図、第2図はKBSのデータ構成例図、第
3図は本発明の実施例を示すブロツク図である。 第3図において、1はキイインストレージ、2
はキイバツフアストレージ、3は比較回路、4は
キイバツフアレジスタ、5はアツプデート回路、
6はパリテイチエツク回路、7は訂正部、Lはラ
ツチを示す。
FIG. 1 is a diagram showing a configuration example of duplication of KBS for a memory element, FIG. 2 is a diagram showing an example data configuration of KBS, and FIG. 3 is a block diagram showing an embodiment of the present invention. In Figure 3, 1 is key-in storage, 2
is a key buffer storage, 3 is a comparison circuit, 4 is a key buffer register, 5 is an update circuit,
6 is a parity check circuit, 7 is a correction section, and L is a latch.

Claims (1)

【特許請求の範囲】 1 主記憶装置の所定容量ブロツクに対応してア
クセスの制御情報及び実行されたアクセスの種類
情報を記憶するキイインストレージと、その一部
を中央処理装置に対して緩衝記憶するキイバツフ
アストレージとを有し、主記憶装置へのアクセス
時に該キイバツフアストレージを読出してアクセ
スの制御及び記録を行う装置において、 前記キイインストレージからのアクセスの制御
及び種類情報に誤り制御ビツトを付加してアドレ
スの深さ方向に下位及び上位領域に2分割された
領域に2重に記憶すると共に、主記憶装置へのア
クセス時に対応する該下位領域からアクセスの制
御及び種類情報を読出す前記キイバツフアストレ
ージと、 前記アクセス時にアクセスの種類に従つて該下
位領域のアクセスの種類情報を更新する手段と、 前記アクセス時に読出しエラーが検出されたと
き前記誤り制御ビツト及び対応する上位領域の内
容に基いてエラーを訂正し該下位領域に格納して
エラーを訂正する手段とを設け、 主記憶装置へのアクセスの制御及び記録を行う
ことを特徴とするキイバツフアストレージ。
[Scope of Claims] 1. A key-in storage that stores access control information and access type information corresponding to a predetermined capacity block of the main storage device, and a buffer memory for a part of the access control information for the central processing unit. In a device that has a key buffer storage and controls access and records by reading the key buffer storage when accessing the main memory, the apparatus includes error control for controlling access from the key buffer storage and for type information. Bits are added to the address to store it twice in an area divided into lower and upper areas in the depth direction, and access control and type information are read from the corresponding lower area when accessing the main memory. means for updating the access type information of the lower area according to the access type at the time of the access; and means for updating the error control bit and the corresponding upper area when a read error is detected during the access. A key buffer storage device comprising means for correcting an error based on the content of the data and storing it in the lower area to correct the error, and controlling access to and recording the main storage device.
JP58211201A 1983-11-10 1983-11-10 Key buffer storage Granted JPS60103465A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58211201A JPS60103465A (en) 1983-11-10 1983-11-10 Key buffer storage

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58211201A JPS60103465A (en) 1983-11-10 1983-11-10 Key buffer storage

Publications (2)

Publication Number Publication Date
JPS60103465A JPS60103465A (en) 1985-06-07
JPH029372B2 true JPH029372B2 (en) 1990-03-01

Family

ID=16602034

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58211201A Granted JPS60103465A (en) 1983-11-10 1983-11-10 Key buffer storage

Country Status (1)

Country Link
JP (1) JPS60103465A (en)

Also Published As

Publication number Publication date
JPS60103465A (en) 1985-06-07

Similar Documents

Publication Publication Date Title
US7849382B2 (en) Memory control circuit, nonvolatile storage apparatus, and memory control method
US5502732A (en) Method for testing ECC logic
US7376887B2 (en) Method for fast ECC memory testing by software including ECC check byte
US7921339B2 (en) Flash storage device with data correction function
JP2830308B2 (en) Information processing device
US3898443A (en) Memory fault correction system
WO2007088597A1 (en) Error correction code generation method and memory management device
US20210326202A1 (en) Non-volatile memory
JPS59214952A (en) Processing system of fault
JPH029372B2 (en)
KR860002027B1 (en) Key memory error processing system
JPS6129024B2 (en)
JPH03142800A (en) Electrically erasable and writable programmable read only memory
JPS63257854A (en) Lru memory fault detecting circuit
JPH0756640B2 (en) Storage device
US7831889B2 (en) Method and device for error detection for a cache memory and corresponding cache memory
JPS63278162A (en) Error correction device in information processor
JP3041007B2 (en) Non-volatile memory management method
JPS58184656A (en) Program storage system
JPH06139152A (en) Input/output circuit for storage device
JPS58213349A (en) Information processor
JPH0520215A (en) Information processor
JPH0373014B2 (en)
JPS61253565A (en) Storage device
JPS63271555A (en) Storage control system