JPH0675861A - メモリアクセス保護装置 - Google Patents

メモリアクセス保護装置

Info

Publication number
JPH0675861A
JPH0675861A JP4226223A JP22622392A JPH0675861A JP H0675861 A JPH0675861 A JP H0675861A JP 4226223 A JP4226223 A JP 4226223A JP 22622392 A JP22622392 A JP 22622392A JP H0675861 A JPH0675861 A JP H0675861A
Authority
JP
Japan
Prior art keywords
access
bus
signal
memory
memory device
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.)
Withdrawn
Application number
JP4226223A
Other languages
English (en)
Inventor
Kouki Katou
光幾 加藤
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 JP4226223A priority Critical patent/JPH0675861A/ja
Publication of JPH0675861A publication Critical patent/JPH0675861A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【目的】 バスに接続されたメモリの所定の記憶領域へ
の書込みを制御するメモリアクセス保護装置に関し、ア
クセス保護機能を内蔵していないデバイスがRAMアク
セスを行う場合にも、その保護を可能とすることを目的
とする。 【構成】 記憶保護設定手段104にメモリ装置102
のプログラム領域などの所定の記憶保護領域に対するラ
イトアクセスを許可する許可情報が設定されている場合
には、メモリアクセス装置103はメモリ装置102の
所定の記憶保護領域に書き込みを行うことができる。記
憶保護設定手段104にメモリ装置102の所定の記憶
保護領域に対するライトアクセスを禁止する禁止情報が
設定されている場合には、メモリアクセス装置103
が、メモリ装置102の所定の記憶保護領域をライトア
クセスしようとした場合には、アクセス制御手段105
がメモリ装置102へのアクセスを許可しない。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、バスに接続されたメモ
リの所定の記憶領域への書込みを制御するメモリアクセ
ス保護装置に関する。
【0002】
【従来の技術】プログラムのデバッグ中などにおいてプ
ログラムにバグが存在しCPUがRAM上の誤ったアド
レスにデータを書き込んでしまったり、バスに接続され
ているCPU以外のデバイスが何らかの理由によりRA
M上のプログラム領域にデータを書き込んでしまったり
するなどの原因により、RAM上のプログラム自体が書
き換ってしまい、システムが暴走することがある。
【0003】システムが暴走状態になってしばらく時間
が経過してから暴走状態が発見されるのでは、直接の原
因となった事象を発見することが困難になるため、RA
Mアクセスの異常を検出してプログラム領域への書込み
を禁止すると同時に、CPUに割込みをかけるなどする
ことにより、異常検出直後にプログラムの実行を停止し
原因を解析可能とする必要がある。
【0004】従来、RAMに対して書込み禁止領域を設
定するハードウエアをCPUが内蔵し、CPU自身がア
ドレスを判定してRAMアクセスの保護を行うようにし
た技術がある。
【0005】
【発明が解決しようとする課題】しかし、上述の従来例
の場合、CPU自身がRAMに出力するアドレスについ
ては監視を行うことができるが、CPU以外のデバイス
がRAMにアクセスする場合においてはそのアクセスの
保護を行うことはできないという問題点を有している。
【0006】本発明は、アクセス保護機能を内蔵してい
ないデバイスがRAMアクセスを行う場合にも、その保
護を可能とすることを目的とする。
【0007】
【課題を解決するための手段】図1は、本発明のブロッ
ク図である。本発明は、バス101にメモリ装置102
とそのメモリ装置102をアクセスするメモリアクセス
装置103が接続されたシステムを前提とする。
【0008】まず、バス101に接続され、メモリ装置
102のプログラム領域などの所定の記憶保護領域に対
するライトアクセスを許可する許可情報又はそのライト
アクセスを禁止する禁止情報を設定する記憶保護設定手
段104を有する。この記憶保護設定手段104の内容
は、例えばバス101に接続された所定のプロセッサか
ら設定可能なように構成することができる。
【0009】次に、バス101に接続され、バス101
に指定されるバスアクセス信号を監視することによっ
て、具体的には、データストローブ信号、アドレス信号
及びリード/ライト指定信号を監視することによって、
以下のような動作を行うアクセス制御手段105を有す
る。
【0010】即ち、アクセス制御手段105は、記憶保
護設定手段104に許可情報が設定されている場合であ
って、バスアクセス信号がメモリ装置102をリードア
クセス又はライトアクセスする信号である場合には、メ
モリ装置102へのアクセスを許可する信号をバス10
1及びメモリ装置102に出力する。具体的には、アク
セス制御手段105は、記憶保護設定手段104に許可
情報が設定されている場合であって、データストローブ
信号がアサートされた時点においてアドレス信号がメモ
リ装置102を指定する信号である場合には、データス
トローブ信号のアサートに対応してメモリ装置102に
アクセスストローブ信号をアサートすると共に、データ
ストローブ信号のアサート開始から所定時間経過後にバ
ス101にデータコンプリート信号をアサートする。
【0011】次に、アクセス制御手段105は、記憶保
護設定手段104に禁止情報が設定されている場合であ
って、バスアクセス信号がメモリ装置102の所定の記
憶保護領域をライトアクセスする信号である場合には、
メモリ装置102へのアクセスを許可する信号をバス1
01及びメモリ装置102に出力しない。具体的には、
アクセス制御手段105は、記憶保護設定手段104に
禁止情報が設定されている場合であって、データストロ
ーブ信号がアサートされた時点においてリード/ライト
指定信号がライトアクセスを指定しかつアドレス信号が
メモリ装置102の所定の記憶保護領域を指定する信号
である場合には、メモリ装置102にアクセスストロー
ブ信号をアサートしないと共にバス101にデータコン
プリート信号をアサートしない。
【0012】また、アクセス制御手段105は、記憶保
護設定手段104に禁止情報が設定されている場合であ
って、バスアクセス信号がメモリ装置102の所定の記
憶保護領域をリードアクセスする信号である場合又はバ
スアクセス信号がメモリ装置102の所定の記憶保護領
域以外の領域をリードアクセス若しくはライトアクセス
する信号である場合には、メモリ装置102へのアクセ
スを許可する信号をバス101及びメモリ装置102に
出力する。具体的には、アクセス制御手段105は、記
憶保護設定手段104に禁止情報が設定されている場合
であって、データストローブ信号がアサートされた時点
においてリード/ライト指定信号がリードアクセスを指
定しかつアドレス信号がメモリ装置102の所定の記憶
保護領域を指定する信号である場合又はデータストロー
ブ信号がアサートされた時点においてアドレス信号がメ
モリ装置102の所定の記憶保護領域以外の領域を指定
する信号である場合には、データストローブ信号のアサ
ートに対応してメモリ装置102にアクセスストローブ
信号をアサートすると共に、データストローブ信号のア
サート開始から所定時間経過後にバス101にデータコ
ンプリート信号をアサートする。
【0013】上述の本発明の構成において、バス101
に接続され、バス101にデータストローブ信号がアサ
ートされた後、所定時間内に、バス101にデータコン
プリート信号がアサートされたか否かを監視し、所定時
間内にアサートがなされなかった場合にメモリ装置10
2のアクセスの異常を検出するメモリアクセス異常検出
手段を更に有するように構成することができる。このメ
モリアクセス異常検出手段は、メモリ装置102のアク
セスの異常を検出した場合に、例えばバス101に接続
される所定のプロセッサに、インタラプトをかけること
によって異常を通知する。
【0014】
【作用】システム稼働開始時の初期プログラムロード時
などのように、バス101に接続されたプロセッサなど
は、まず、記憶保護設定手段104に、メモリ装置10
2のプログラム領域などの所定の記憶保護領域に対する
ライトアクセスを許可する許可情報を設定する。
【0015】これにより、プロセッサなどは、メモリ装
置102の所定の記憶保護領域に書き込みを行うことが
できる。その後、プロセッサなどは、記憶保護設定手段
104に、メモリ装置102の所定の記憶保護領域に対
するライトアクセスを禁止する禁止情報を設定する。
【0016】これにより、バス101に接続される各種
メモリアクセス装置103が、メモリ装置102の所定
の記憶保護領域をライトアクセスしようとした場合に
は、アクセス制御手段105がメモリ装置102へのア
クセスを許可しない。
【0017】アクセス制御手段105は、バス101に
接続される各種メモリアクセス装置103が、メモリ装
置102をリードアクセスしようとした場合又は所定の
記憶保護領域以外の領域をライトアクセス若しくはリー
ドアクセスしようとした場合には、メモリ装置102へ
のアクセスを許可する。
【0018】
【実施例】以下、図面を参照しながら本発明の実施例に
つき詳細に説明する。以下の実施例において、後述する
図3のメッセージ通信装置103内のI/Oコントロー
ラ315において、RAM317のアクセス保護を行う
部分が本発明に最も関連する。 <本発明の実施例の全体構成>図2は、本発明の実施例
が適用されるネットワークの構成図である。
【0019】光ファイバリング206を中心に構成され
るネットワーク201には、複数のノード202(図2
では、#000、#***、#%%%、などの番号で示されている)
が接続される。
【0020】ノード202において、プロセッサバス2
05には複数のプロセッサ204が接続され、プロセッ
サバス205はメッセージ通信装置203に収容され
る。メッセージ通信装置203は、プロセッサバス20
5を介してプロセッサ204が送信又は受信するメッセ
ージデータを処理し、また、光ファイバリング206に
対し入力又は出力されるメッセージデータが格納された
フレームを処理する。
【0021】次に、図3は、本発明の実施例における図
2のノード202内のメッセージ通信装置203の構成
図である。実メモリ307は、メッセージデータを一時
保持する通信バッファとして機能する。
【0022】制御メモリ308は、メッセージの通信に
使用される仮想記憶空間上の各仮想ページアドレス毎
に、その仮想ページアドレスが実メモリ307内の実ペ
ージアドレスに割り付けられている場合にはその実ペー
ジアドレスと、その仮想ページアドレスのページ状態
(通信状態)を示すデータを記憶する。
【0023】プロセッサバスインタフェース312は、
図2のプロセッサバス205を収容すると共に外部バス
301に接続され、図2のプロセッサ204からプロセ
ッサバス205を介して入力されるメッセージデータ等
を、外部バス301及びバーチャルメモリコントローラ
309を介して実メモリ307に出力し、逆に、実メモ
リ307からバーチャルメモリコントローラ309及び
外部バス301を介して入力されるメッセージデータ等
を、プロセッサバス205を介してプロセッサ204に
出力する。
【0024】また、プロセッサバスインタフェース31
2は、外部バス301、バス結合部311及びCPUバ
ス302を介して、CPU313との間で、通信制御デ
ータの授受を行う。
【0025】図2には明示してないが、図3では、プロ
セッサバス205は、1ノードあたり2本設けられてい
る。従って、プロセッサバスインタフェース312も、
各プロセッサバス205に対応して、#0と#1の2つが設
けられている。そして、#0のプロセッサバスインタフェ
ース312は、制御線319を用いて、#0と#1の各プロ
セッサバスインタフェース312が外部バス301をア
クセスする場合の競合制御を行う。更に、#0のプロセッ
サバスインタフェース312は、制御線321、322
を介して、後述するCPUバスアービタ314及びI/
Oコントローラ315との間でバスの使用に関する制御
データを授受しながら、外部バス301の競合制御を行
って、必要なときには制御線320を介してバス結合部
311の開閉制御を行う。
【0026】ネットワーク制御回路310は、フレーム
の送信時には、CPU313からCPUバス302、I
/Oコントローラ315、及びネットワーク命令/結果
バス303を介して入力される送信命令に基づいて、制
御メモリアクセスバス306を介して制御メモリ308
をアクセスしながら、実メモリ307からバーチャルメ
モリコントローラ309及びネットワークデータ送信バ
ス305を介して送信されるべきメッセージデータを読
み出し、それを含む送信フレームを構築し、それを光フ
ァイバリング206に送出し、その送信結果を、ネット
ワーク命令/結果バス303、I/Oコントローラ31
5、及びCPUバス302を介してCPU313に通知
する。
【0027】また、ネットワーク制御回路310は、光
ファイバリング206からのフレームの受信時には、制
御メモリアクセスバス306を介して制御メモリ308
をアクセスしながら、その受信フレームを他のノード2
02へ中継する。又は、その受信フレーム内のメッセー
ジデータを取り出し、ネットワークデータ受信バス30
4からバーチャルメモリコントローラ309を介して実
メモリ307に格納し、その受信結果を、ネットワーク
命令/結果バス303、I/Oコントローラ315、及
びCPUバス302を介してCPU313に通知する。
【0028】このCPU313は、CPUバス302、
バス結合部311、及び外部バス301を介して、プロ
セッサバスインタフェース312との間で、通信制御デ
ータの授受を行う。
【0029】また、CPU313は、フレームの送信時
には、CPUバス302、I/Oコントローラ315、
及びネットワーク命令/結果バス303を介して、送信
命令をネットワーク制御回路310へ出力し、その後、
ネットワーク制御回路310から、ネットワーク命令/
結果バス303、I/Oコントローラ315、及びCP
Uバス302を介して、送信結果通知を受け取る。逆
に、CPU313は、フレームの受信時には、ネットワ
ーク制御回路310から、ネットワーク命令/結果バス
303、I/Oコントローラ315、及びCPUバス3
02を介して、受信結果通知を受け取る。
【0030】更に、CPU313は、CPUバス302
を介して制御メモリ308内の各仮想ページアドレスの
ページ状態データ(通信状態を示すデータ)をアクセス
すると共に、CPUバス302及びバーチャルメモリコ
ントローラ309を介して制御メモリ308内の各仮想
ページアドレスの実ページアドレスデータ及び実メモリ
307をアクセスする。
【0031】ここで、CPU313の動作を制御するプ
ログラムは、CPUバス302に接続されるEPROM
316に記憶されており、制御プログラムは、システム
の稼働開始時に、EPROM316からCPUバス30
2に接続されるRAM317のプログラム領域に書き込
まれる。これ以後、CPU313は、RAM317のプ
ログラム領域に書き込まれた制御プログラムに従って動
作する。このRAM317のプログラム領域は、上述の
EPROM316から制御プログラムが書き込まれた以
後は、CPU313、外部バス301に接続されるプロ
セッサバスインタフェース312、又はCPUバス30
2に接続される特には図示しないデバイスなどによって
不当なデータの書込みが行われないよう、後述するI/
Oコントローラ315によって保護される。
【0032】また、RAM317は、上述のプログラム
領域のほか、システム動作時の様々なデータが書き込ま
れ又は読み出されるデータ領域を有している。I/Oコ
ントローラ315は、CPUバス302に接続され、外
部の周辺装置が接続される周辺装置バス318を収容す
る。
【0033】また、I/Oコントローラ315は、前述
したように、CPUバス302及びネットワーク命令/
結果バス303を介して、CPU313とネットワーク
制御回路310との間で授受される送信命令、送信結果
通知又は受信結果通知を中継する。
【0034】更に、I/Oコントローラ315は、CP
U313が外部バス301をアクセスするアドレスをC
PUバス302に対して指定した場合に、制御線322
を介して#0のプロセッサバスインタフェース312に、
外部バスアクセス要求を出力する。
【0035】加えて、I/Oコントローラ315は、C
PU313、外部バス301に接続されるプロセッサバ
スインタフェース312、又はCPUバス302に接続
される特には図示しないデバイスなどがRAM317を
アクセスする場合に、RAM317に図3の破線で示さ
れるアクセスストローブ信号ASを出力することによっ
て、RAM317のアクセス制御を行い、特に、RAM
317内のプログラム領域に不当なデータが書き込まれ
ないよう、そのプログラム領域を保護する。
【0036】CPUバスアービタ314は、プロセッサ
バスインタフェース312から制御線321を介してC
PUバスアクセス要求(バスグラント要求)を受け取っ
た場合に、CPU313に対して制御線323を介して
バス使用要求(バスグラント要求)を出力し、CPU3
13から制御線323を介してバス使用許可(バスグラ
ントアクノリッジ)を受け取り、それに基づいてCPU
バスアクセス許可(バスグラントアクノリッジ)を制御
線321を介して#0のプロセッサバスインタフェース3
12に返す。
【0037】バーチャルメモリコントローラ309は、
プロセッサバスインタフェース312と実メモリ307
との間で外部バス301を介して授受されるデータ、C
PU313と実メモリ307又は制御メモリ308との
間でCPUバス302を介して授受されるデータ、ネッ
トワーク制御回路310と実メモリ307との間でネッ
トワークデータ受信バス304又はネットワークデータ
送信バス305を介して授受されるデータのスイッチン
グ制御及び競合制御を行う。
【0038】以上の構成を有する本発明の実施例の動作
について説明する。 <プロセッサ間通信の全体動作>今、図2及び図3にお
いて、例えば#000のノード202内の1つのプロセッサ
204から、#***のノード202内の他の1つのプロセ
ッサ204にメッセージデータを送信する場合の全体動
作について説明する。
【0039】この場合に、#000のノード202内の1つ
のプロセッサ204から送信されるメッセージデータ
は、プロセッサバス205を介してそのノード内のメッ
セージ通信装置203(以下、#000のメッセージ通信装
置203と呼ぶ)の実メモリ307に転送された後に、
#***のノード202内のメッセージ通信装置203(以
下、#***のメッセージ通信装置203と呼ぶ)の実メモ
リ307に送られ、その後、その実メモリ307からプ
ロセッサバス205を介して宛て先のプロセッサ204
に転送される。即ち、各メッセージ通信装置203の実
メモリ307は、通信バッファとして機能する。メッセージ通信装置203間の通信方式 ここで、メッセージ通信装置203間のメッセージデー
タの通信には、ネットワーク仮想記憶方式という特別な
方式が適用される。
【0040】まず、図2のネットワーク201全体で、
仮想記憶空間が定義される。この仮想記憶空間は、複数
の仮想ページに分割され、メッセージデータの通信はこ
の仮想ページを介して行われる。例えば、仮想記憶空間
は、0000〜FFFFページ(16進数)までの仮想ページア
ドレスに分割される。1つの仮想ページは、メッセージ
データの1単位であるパケットを十分に収容可能な固定
長(例えば8キロバイト長)のデータ長を有する。な
お、以下特に言及しないときは、仮想ページアドレス及
び口述する実ページアドレスは、16進数で表現する。
【0041】次に、この仮想記憶空間の所定ページ数毎
例えば16ページ毎に、ネットワーク201に接続され
る各ノード202のメッセージ通信装置203が割り当
てられる。例えば、0000〜000Fページには#000番目のノ
ード202のメッセージ通信装置203が割り当てら
れ、0010〜001Fページには#001番目のノード202のメ
ッセージ通信装置203が割り当てられ、以下同様にし
て、***0〜***Fページ及び%%%0〜%%%Fページ(3桁の *
及び %はそれぞれ0〜 Fの16進数のうち任意の数)に
は、それぞれ#***番目及び#%%%番目の各ノード202の
メッセージ通信装置203が割り当てられる。
【0042】従って、上述の例では、ネットワーク20
1には、#000〜#FFFまでの最大で4096台のメッセー
ジ通信装置203が接続可能である。一方、各メッセー
ジ通信装置203内の実メモリ307は、それぞれが上
述の仮想ページと同じデータ長を有する複数の実ページ
に分割される。実メモリ307のページ容量は、仮想記
憶空間のページ容量よりはるかに小さくてよく、例えば
64〜256ページ程度でよい。
【0043】次に、各メッセージ通信装置203の制御
メモリ308にはそれぞれ、図4に示されるように、全
仮想ページアドレス分の制御データが記憶される。各仮
想ページアドレスの制御データは、図4に示されるよう
に、その仮想ページアドレスに対応付けられる自メッセ
ージ通信装置203内の実メモリ307の実ページアド
レスデータと、その仮想ページアドレスの通信状態を示
すページ状態データとから構成されている。
【0044】そして、初期状態として、各ノード202
内のメッセージ通信装置203の制御メモリ308にお
いて、そのノード202に割り当てられている仮想ペー
ジアドレスには、CPU313のネットワーク用受信制
御機能によって、自メッセージ通信装置203の実メモ
リ307内の任意の空きページに設けられるネットワー
ク用受信バッファの実ページアドレスと、ページ状態と
して受信バッファ割付状態VPが、それぞれ予め書き込ま
れている。なお、ネットワーク用受信制御機能は、CP
U313がRAM317のプログラム領域に記憶された
制御プログラムを実行することにより実現される。
【0045】例えば、#000のメッセージ通信装置203
の制御メモリ308において、自メッセージ通信装置2
03に割り当てられている0000,0001,・・・ ,000Fペー
ジの各仮想ページアドレスには、図4に示されるよう
に、実メモリ307内のs,q,・・・,pの各実ページアド
レスが書き込まれ、受信バッファ割付状態を示すページ
状態VPが書き込まれている。
【0046】また、#***のメッセージ通信装置203の
制御メモリ308において、自メッセージ通信装置20
3に割り当てられている***0,***1,・・・ ,***Fページ
の各仮想ページアドレスには、図4に示されるように、
実メモリ307内のv,u,・・・,tの各実ページアドレス
が書き込まれ、受信バッファ割付状態を示すページ状態
VPが書き込まれている。
【0047】同様に、#%%%のメッセージ通信装置203
の制御メモリ308において、自メッセージ通信装置2
03に割り当てられている%%%0,%%%1,・・・ ,%%%Fペー
ジの各仮想ページアドレスには、図4に示されるよう
に、実メモリ307内のy,w,・・・,xの各実ページアド
レスが書き込まれ、受信バッファ割付状態を示すページ
状態VPが書き込まれている。
【0048】今、後述する転送動作により、例えば#000
のメッセージ通信装置203の実メモリ307内の、実
ページアドレスがr であるネットワーク用送信バッファ
(後述する)に、#000のノード202内の1つのプロセ
ッサ204からメッセージデータが転送されているもの
とする。
【0049】CPU313のネットワーク用送信制御機
能は、CPUバス302及びバーチャルメモリコントロ
ーラ309を介して実メモリ307内のネットワーク用
送信バッファに格納されているメッセージデータのヘッ
ダ内の宛て先アドレス部を解析することによって、その
宛て先アドレスに対応するプロセッサ204が収容され
るノード202に割り当てられている仮想ページアドレ
スのうち、ページ状態がバッファ未割付状態NAとなって
いるものを決定する。図4の例では、例えば仮想ページ
アドレス***2が決定される。なお、ネットワーク用送信
制御機能は、CPU313がRAM317のプログラム
領域に記憶された制御プログラムを実行することにより
実現される。
【0050】次に、CPU313のネットワーク用送信
制御機能は、制御メモリ308内の上述の決定した仮想
ページアドレスに、上述のメッセージデータが格納され
ているネットワーク用送信バッファの実ページアドレス
を書き込み、ページ状態を、バッファ未割付状態NAから
送信状態SDに変更する。図4の例では、例えば仮想ペー
ジアドレス***2に実ページアドレスr と送信状態SDが設
定される。
【0051】そして、CPU313のネットワーク用送
信制御機能は、I/Oコントローラ315内の送信用F
IFOに、CPUバス302を介して、送信命令と共
に、上述の仮想ページアドレスと、上述のメッセージデ
ータの転送長を書き込む。
【0052】ネットワーク制御回路310は、I/Oコ
ントローラ315内の送信用FIFOから、ネットワー
ク命令/結果バス303を介して、上述の送信命令等を
読み出すと、その送信命令に付加されている仮想ページ
アドレスを、制御メモリアクセスバス306を介して制
御メモリ308に指定し、制御メモリ308から上述の
仮想ページアドレスに設定されている実ページアドレス
を読み出してバーチャルメモリコントローラ309内の
DMA転送用レジスタに設定する。
【0053】そして、ネットワーク制御回路310は、
バーチャルメモリコントローラ309に、送信されるべ
きメッセージデータが含まれる実メモリ307内の上記
実ページアドレスのページデータを、ネットワークデー
タ送信バス305を介してネットワーク制御回路310
にDMA転送させる。
【0054】ネットワーク制御回路310は、上述のペ
ージデータから送信命令に付加されているメッセージデ
ータの転送長に対応する分のメッセージデータを取り出
し、そのメッセージデータと送信命令に付加されている
仮想ページアドレス及びメッセージデータの転送長を含
む送信フレームを生成し、それを光ファイバリング20
6に送出する。なお、光ファイバリング206のフレー
ム伝送方式としては、トークンリングネットワーク方式
が採用され、ネットワーク制御回路310は、光ファイ
バリング206上を周回するフリートークンを獲得した
場合のみ送信フレームを送出することができる。
【0055】図4の例においては、#000のメッセージ通
信装置203から、仮想ページアドレス***2と実メモリ
307内の実ページアドレスr に格納されているメッセ
ージデータとを含む送信フレームが、光ファイバリング
206に送出される。
【0056】上述の送信フレームは、光ファイバリング
206に接続されている他のノード202(図2参照)
に順次転送される。各ノード202内のメッセージ通信
装置203のネットワーク制御回路310は、光ファイ
バリング206から上記送信フレームを取り込むと、そ
の送信フレームに格納されている仮想ページアドレスに
対応するページ状態を制御メモリアクセスバス306を
介して制御メモリ308から読み出し、そのページ状態
が受信バッファ割付状態VPであるか否か、即ち、その仮
想ページアドレスが自ノード202のメッセージ通信装
置203に割り当てられているか否か、又はそのページ
状態が送信状態SDであるか否か、即ち、その送信フレー
ムが自ネットワーク制御回路310が送出したものであ
るか否かを判別する。
【0057】ネットワーク制御回路310は、送信フレ
ームに格納されている仮想ページアドレスのページ状態
が受信バッファ割付状態VPであると判別した場合には、
送信フレームに格納されているメッセージデータを、以
下のようにして実メモリ307に取り込む。
【0058】即ち、ネットワーク制御回路310は、ま
ず、送信フレームに格納されている仮想ページアドレス
を、制御メモリアクセスバス306を介して制御メモリ
308に指定し、制御メモリ308から上述の仮想ペー
ジアドレスに設定されている実ページアドレスを読み出
してバーチャルメモリコントローラ309内のDMA転
送用レジスタに設定する。そして、ネットワーク制御回
路310は、バーチャルメモリコントローラ309に、
送信フレームに含まれるメッセージデータを、ネットワ
ークデータ受信バス304を介して実メモリ307内の
上述の実ページアドレスにDMA転送させる。
【0059】その後、ネットワーク制御回路310は、
送信フレームに格納されている仮想ページアドレスを、
制御メモリアクセスバス306を介して制御メモリ30
8に指定し、その仮想ページアドレスのページ状態を受
信バッファ割付状態VPから受信完了状態RDに変更する。
【0060】更に、ネットワーク制御回路310は、I
/Oコントローラ315内の受信用FIFOに、ネット
ワーク命令/結果バス303を介して、受信の成否を示
す結果コードと共に、送信フレームから抽出した仮想ペ
ージアドレスとメッセージデータの転送長を書き込む。
【0061】最後に、ネットワーク制御回路310は、
光ファイバリング206から受信した上述の送信フレー
ム中の応答領域に受信成功通知を書き込んだ後、その送
信フレームを再び光ファイバリング206に送出する。
【0062】例えば、図4の例では、#***のメッセージ
通信装置203のネットワーク制御回路310は、#000
のノード202からの送信フレームに格納されている仮
想ページアドレス***2の制御メモリ308上のページ状
態が受信バッファ割付状態VPであると判別することによ
り、その送信フレームに格納されているメッセージデー
タを、制御メモリ308の仮想ページアドレス***2に設
定されている実ページアドレスu を有する実メモリ30
7内のネットワーク用受信バッファに取り込んだ後、制
御メモリ308の仮想ページアドレス***2のページ状態
を受信バッファ割付状態VPから受信完了状態RDに変更す
る。
【0063】上述の受信結果通知は、CPU313によ
り、CPUバス302を介して受信される。即ち、CP
U313のネットワーク用受信制御機能は、CPUバス
302を介してI/Oコントローラ315内の受信用F
IFOから上述の受信結果通知を受け取ると、結果コー
ドが受信成功であるならば、受信結果通知の一部である
仮想ページアドレスをCPUバス302を介して制御メ
モリ308に指定し、そのページ状態と実ページアドレ
スを読み出す。
【0064】上述のページ状態が受信完了状態RDである
ならば、CPU313のネットワーク用受信制御機能
は、まず、CPUバス302及びバーチャルメモリコン
トローラ309を介して実メモリ307を制御して、上
述の実ページアドレスで指定される実ページをネットワ
ーク用受信バッファから切り離しプロセッサ用送信待ち
バッファキューに接続する。
【0065】その後、CPU313のネットワーク用受
信制御機能は、CPUバス302及びバーチャルメモリ
コントローラ309を介して実メモリ307を制御し
て、任意の空きページをネットワーク用受信バッファに
接続し、更に、上述の受信結果通知の一部である仮想ペ
ージアドレスでCPUバス302を介して制御メモリ3
08をアクセスし、その仮想ページアドレスに、上述の
空きページの実ページアドレスと、ページ状態として受
信バッファ割付状態VPを、それぞれ書き込む。
【0066】これ以後、実メモリ307内のプロセッサ
用送信待ちバッファキューに対する処理は、CPU31
3のネットワーク用受信制御機能から後述するプロセッ
サ用送信制御機能に引き渡される。
【0067】一方、ネットワーク制御回路310は、送
信フレームに格納されている仮想ページアドレスに対応
するページ状態を制御メモリ308から読み出した結
果、そのページ状態が受信バッファ割付状態VPでも送信
状態SDでもないと判別した場合には、その送信フレーム
をそのまま光ファイバリング206に送出する。
【0068】例えば、図4の例では、#%%%のメッセージ
通信装置203のネットワーク制御回路310は、#000
のノード202からの送信フレームに格納されている仮
想ページアドレス***2の制御メモリ308上のページ状
態が受信バッファ割付状態VPでも送信状態SDでもないと
判別することにより、その送信フレームをそのまま光フ
ァイバリング206に送出する。
【0069】上述のようにして光ファイバリング206
上を順次転送された送信フレームは、最後に送信元のノ
ード202内のメッセージ通信装置203のネットワー
ク制御回路310に戻る。
【0070】送信元のネットワーク制御回路310は、
送信フレームに格納されている仮想ページアドレスに対
応するページ状態を制御メモリ308から読み出した結
果、それが送信状態SDであると判別することによって、
その送信フレームが自ネットワーク制御回路310が送
出した送信フレームであることを判別する。
【0071】この場合に、ネットワーク制御回路310
は、受信した送信フレームの応答領域に受信成功通知が
書き込まれていることを確認した後に、制御メモリアク
セスバス306を介して、送信フレームに格納されてい
る仮想ページアドレスに対応する制御メモリ308のペ
ージ状態を、送信状態SDから送信完了状態SCに変更す
る。
【0072】そして、ネットワーク制御回路310は、
I/Oコントローラ315内の受信用FIFOに、ネッ
トワーク命令/結果バス303を介し、送信の成否を示
す結果コードと共に、送信フレームから抽出した仮想ペ
ージアドレスを書き込む。
【0073】上述の送信結果通知は、CPU313によ
り、CPUバス302を介して受信される。即ち、CP
U313のネットワーク用送信制御機能は、CPUバス
302を介してI/Oコントローラ315内の受信用F
IFOから上述の送信結果通知を受け取ると、結果コー
ドが送信成功であるならば、送信結果通知の一部である
仮想ページアドレスをCPUバス302を介して制御メ
モリ308に指定し、そのページ状態と実ページアドレ
スを読み出す。
【0074】上述のページ状態が送信完了状態SCである
ならば、CPU313のネットワーク用送信制御機能
は、まず、CPUバス302及びバーチャルメモリコン
トローラ309を介して実メモリ307を制御して、上
述の実ページアドレスで指定される実ページをネットワ
ーク用送信バッファから切り離し空きページとする。
【0075】その後、CPU313のネットワーク用送
信制御機能は、上述の送信結果通知の一部である仮想ペ
ージアドレスでCPUバス302を介して制御メモリ3
08をアクセスし、その仮想ページアドレスのページ状
態として、バッファ未割付状態NAを書き込む。
【0076】以上のように、ネットワーク201(図2
参照)上において、1つの仮想記憶空間が定義され、こ
の空間を構成する固定長のデータ長を有する仮想ページ
が各メッセージ通信装置203に割り当てられる。そし
て、メッセージ通信装置203間のメッセージデータの
通信は、この仮想ページを使用して行われる。この結
果、通常のパケット通信で行われているブロック化制
御、順序制御が不要となる。
【0077】また、光ファイバリング206上の各ノー
ド202内のメッセージ通信装置203のネットワーク
制御回路310は、送信フレームを受信すると、その送
信フレームに格納されている仮想ページアドレスで制御
メモリ308上のページ状態をアクセスすることによっ
て、受信した送信フレームを高速に処理することができ
る。
【0078】加えて、光ファイバリング206上を転送
される送信フレームには応答領域が設けられ、受信側の
ノード202内のメッセージ通信装置203のネットワ
ーク制御回路310は、送信フレームの受信結果を送信
フレームの応答領域に書き込み、それを再び光ファイバ
リング206に送出する。従って、この送信フレームが
光ファイバリング206上を転送され送信元に戻ってく
るまでに、メッセージデータの送信処理が完了すること
になり、受信側から送信元への応答を別のフレームを用
いて通知する必要がない。この結果、通信プロトコルを
簡略なものにすることができ、高速な応答処理が可能と
なる。
【0079】更に、メッセージ通信装置203間のメッ
セージデータの通信は、メッセージ通信装置203内の
ネットワーク制御回路310が制御メモリ308をアク
セスしながら実メモリ307を使用して行い、プロセッ
サ204とメッセージ通信装置203間のメッセージデ
ータの通信は、後述するように、メッセージ通信装置2
03内のプロセッサバスインタフェース312が、上述
のネットワーク制御回路310の動作とは独立して、実
メモリ307を使用して行う。更に、実メモリ307上
の実ページアドレスに格納されたメッセージデータと仮
想記憶空間上の仮想ページアドレスとの対応付けは、後
述するように、CPU313がメッセージデータに付加
されたヘッダ内の宛て先アドレスに基づいて行う。従っ
て、プロセッサ204とメッセージ通信装置203間、
メッセージ通信装置203とメッセージ通信装置203
間の処理を効率良く高速に実行することが可能となる。送信元におけるプロセッサ204からメッセージ通信装
置203へのメッセージデータの転送動作 次に、送信元のノード202(図4の例では#000のノー
ド202)内の1つのプロセッサ204からそのノード
内のメッセージ通信装置203の実メモリ307に、メ
ッセージデータが転送される場合の動作について説明す
る。
【0080】まず、CPU313のプロセッサ用受信制
御機能は、CPUバス302及びバーチャルメモリコン
トローラ309を介して実メモリ307をアクセスする
ことにより、実メモリ307において、プロセッサ用受
信バッファキューに空きバッファキューに接続されてい
る空きバッファを接続する。なお、プロセッサ用受信制
御機能は、CPU313がRAM317のプログラム領
域に記憶された制御プログラムを実行することにより実
現される機能である。
【0081】そして、CPU313のプロセッサ用受信
制御機能は、CPUバス302、バス結合部311、及
び外部バス301を介して、例えば#0のプロセッサバス
インタフェース312を起動すると共に、そのインタフ
ェース312に対して上述のプロセッサ用受信バッファ
キューの先頭アドレスを通知する。
【0082】プロセッサバスインタフェース312は、
プロセッサ204からプロセッサバス205を介して転
送されてきたメッセージデータを受信し、上記先頭アド
レスを受信開始アドレスとしてバッファアドレスを順次
更新しながら、上述の受信されたメッセージデータを、
外部バス301及びバーチャルメモリコントローラ30
9を介して、実メモリ307内のプロセッサ用受信バッ
ファキューに接続された空きバッファに、順次転送す
る。
【0083】プロセッサバスインタフェース312は、
プロセッサ用受信バッファキューに接続される空きバッ
ファがなくなると、自動的に停止し、その旨を外部バス
301、バス結合部311、及びCPUバス302を介
してCPU313に通知する。
【0084】CPU313のプロセッサ用受信制御機能
は、まず、CPUバス302及びバーチャルメモリコン
トローラ309を介して実メモリ307を制御して、上
述の受信済のバッファをプロセッサ用受信バッファキュ
ーから切り離しネットワーク用送信バッファに接続す
る。これ以後、実メモリ307内のネットワーク用送信
バッファに対する処理は、CPU313のプロセッサ用
受信制御機能から前述したネットワーク用送信制御機能
に引き渡され、前述したメッセージ通信装置203間の
通信方式に従って、送信元のノード202のメッセージ
通信装置203(図4の例では#000のメッセージ通信装
置203)内の実メモリ307から、宛て先のプロセッ
サ204が収容されるノード202のメッセージ通信装
置203(図4の例では#***のメッセージ通信装置20
3)内の実メモリ307への、メッセージデータの転送
動作が実行される。受信側におけるメッセージ通信装置203からプロセッ
サ204へのメッセージデータの転送動作 次に、受信側のノード202(図4の例では#***のノー
ド202)内のメッセージ通信装置203の実メモリ3
07からそのノード202内の1つのプロセッサ204
に、メッセージデータが転送される場合の動作について
説明する。
【0085】ネットワーク制御回路310が送信フレー
ムの受信に成功すると、前述したように、CPU313
のネットワーク用受信制御機能が、受信されたメッセー
ジデータを実メモリ307内のプロセッサ用送信待ちバ
ッファキューに接続する。
【0086】これに対して、CPU313のプロセッサ
用送信制御機能は、CPUバス302、バス結合部31
1、及び外部バス301を介して、例えば#0のプロセッ
サバスインタフェース312を起動すると共に、そのイ
ンタフェース312に対して上述のプロセッサ用送信待
ちバッファキューの先頭アドレスを通知する。
【0087】プロセッサバスインタフェース312は、
上記先頭アドレスを送信開始アドレスとしてバッファア
ドレスを順次更新しながら、外部バス301及びバーチ
ャルメモリコントローラ309を介して、実メモリ30
7内のプロセッサ用送信待ちバッファキューに接続され
たバッファに格納されているメッセージデータを順次読
み出して、そのメッセージデータのヘッダ内の宛て先ア
ドレス部を解析しながら、そのメッセージデータをプロ
セッサバス205を介して宛て先のプロセッサ204に
転送する。 <I/OコントローラのRAM317のアクセス保護を
行う部分の説明>次に、I/Oコントローラ315のR
AM317のアクセス保護を行う部分の構成について、
図5の構成図に沿って説明する。
【0088】図5では、I/Oコントローラ315のR
AM317のアクセス保護を行う部分の構成と、CPU
バス302周辺の構成が示されている。図5において、
デバイス(DEVICE)501は、CPUバス302
に接続される図3には特には図示しない種々の制御装
置、又は図3のバス結合部311と外部バス301を介
して接続されるプロセッサバスインタフェース312を
意味している。
【0089】まず、I/Oコントローラ315は、CP
U313又はデバイス501からデータストローブ信号
(DS信号)、アドレス信号(ADRS信号)、データ
信号(DATA信号)、及びリード/ライト信号(R/
W信号)を入力し、RAM317へアクセスストローブ
信号(AS信号)を出力し、CPU313又はデバイス
501へデータコンプリート信号(DC信号)を出力す
る。
【0090】ここで、R/W信号は、RAM317から
のデータの読出しを指定している場合には値“1”をと
り、RAM317へのデータの書込みを指定している場
合には値“0”をとる。
【0091】RAM317は、I/Oコントローラ31
5からAS信号がアサートされている(出力されてい
る)間、CPU313又はデバイス501から指定され
るADRS信号とR/W信号に応じて、データを出力又
は入力する。
【0092】CPU313又はデバイス501は、RA
M317などをアクセスする場合、DS信号をアサート
した後、DC信号がアサートされるまで待ってDS信号
のアサートを終了する。
【0093】I/Oコントローラ315において、Dフ
リップフロップ(D−FF)503には、CPU313
からCPUバス302を介して入力されるDATA信号
によって、RAM317内のプログラム領域への書込み
を許可するか否かを示す1ビットの信号がセットされ
る。この信号は、プログラム領域への書込みを許可する
モードのときには値“1”をとり、プログラム領域への
書込みを禁止するモードのときには値“0”をとる。
【0094】I/Oコントローラ315内のアドレスデ
コーダ502は、D−FF503の出力と、CPU31
3又はデバイス501からのADRS信号及びR/W信
号を入力することにより、RAM317へのアクセスを
許可するか否かを示す1ビットの信号を生成し、その信
号によってAS生成回路504及びDC生成回路505
を起動する。
【0095】アドレスデコーダ502において、データ
領域アクセス判定回路506は、CPU313又はデバ
イス501から入力されるADRS信号がRAM317
のデータ領域のアドレスを指定している場合には値
“0”を出力し、RAM317のデータ領域以外のアド
レスを指定している場合には値“1”を出力する。
【0096】プログラム領域アクセス判定回路507
は、CPU313又はデバイス501から入力されるA
DRS信号がRAM317のプログラム領域のアドレス
を指定している場合には値“0”を出力し、RAM31
7のプログラム領域以外のアドレスを指定している場合
には値“1”を出力する。
【0097】OR回路508は、D−FF503の出力
とR/W信号の論理和を演算し、OR回路510は、O
R回路508の出力をインバータ509で反転した信号
とプログラム領域アクセス判定回路507の出力の論理
和を演算する。
【0098】AND回路511は、データ領域アクセス
判定回路506の出力とOR回路510の出力との論理
積を演算する。AND回路511の出力は、RAM31
7へのアクセスを許可するか否かを示す1ビットの信号
として、AS生成回路504及びDC生成回路505を
起動する。この信号は、RAM317へのアクセスが許
可される場合には値“0”をとり、RAM317へのア
クセスが禁止される場合には値“1”をとる。
【0099】I/Oコントローラ315内のAS生成回
路504は、CPU313又はデバイス501によって
DS信号がアサートされているときに、アドレスデコー
ダ502の出力が“0”ならAS信号をアサートし、ア
ドレスデコーダ502の出力が“1”ならAS信号をア
サートしない。
【0100】I/Oコントローラ315内のDC生成回
路505は、CPU313又はデバイス501によって
DS信号がアサートされた以後、アドレスデコーダ50
2の出力が“0”である場合に、タイマ512によって
一定時間のタイミングをとった後にDC信号をアサート
する。アドレスデコーダ502の出力が“1”である場
合にはDC信号はアサートしない。
【0101】一方、CPUバス302に接続されるタイ
ムアウト検出回路513は、図3には特には図示しない
が、CPU313又はデバイス501によってDS信号
がアサートされた後、I/Oコントローラ315内のD
C生成回路505によってDC信号がアサートされるま
での時間を、タイマ514によって計測しており、その
時間が一定時間を越えた場合、DC信号がアサートされ
ずCPU313又はデバイス501からRAM317へ
の異常アクセスが発生したと判定して、CPU313に
インタラプト信号INTを出力する。
【0102】上述した図5の構成の動作について、以下
に説明する。まず、本実施例では、RAM317の記憶
領域は、プログラム領域とデータ領域とに分けられ、プ
ログラム領域には読出しのみが可能な制御プログラムが
格納され、データ領域には読出し及び書込みが可能なデ
ータが格納される。プログラム領域への書込みが許可される場合 今、システムの稼働開始時には、CPU313は、EP
ROM316に記憶されている初期ロードプログラムを
実行することにより、EPROM316に記憶されてい
る制御プログラムをRAM317のプログラム領域に書
き込む。
【0103】この場合、CPU313は、まず、I/O
コントローラ315内のD−FF503に、DATA信
号としてRAM317のプログラム領域への書込みを許
可するモードを示す値“1”を設定する。
【0104】その後、CPU313は、DS信号をアサ
ートすると共に、R/W信号としてライト動作を指示す
る値“0”をアサートし、更に、RAM317のプログ
ラム領域を示すADRS信号をアサートする。
【0105】この場合、D−FF503の出力はRAM
317のプログラム領域への書込みを許可するモードを
示す値“1”であるため、インバータ509の出力は
“0”となる。また、プログラム領域アクセス判定回路
507の出力はRAM317のプログラム領域へのアク
セスを示す値“0”となる。従って、OR回路510の
出力は“0”となり、AND回路511の出力はRAM
317へのアクセスが許可される値“0”となる。
【0106】この結果、AS生成回路504は、DS信
号に基づいてAS信号をアサートし、DC生成回路50
5はDS信号のアサートから一定時間経過後にDC信号
をアサートする。
【0107】このようにして、CPU313は、EPR
OM316に記憶されている制御プログラムをRAM3
17のプログラム領域に書き込むことが可能となる。プログラム領域への書込みが禁止される場合 CPU313は、システム稼働開始時にEPROM31
6に記憶されている制御プログラムをRAM317のプ
ログラム領域に書き込んだ後は、I/Oコントローラ3
15内のD−FF503に、DATA信号としてRAM
317のプログラム領域への書込みを禁止するモードを
示す値“0”を設定する。これにより、CPU313又
はデバイス501がRAM317のプログラム領域へデ
ータを書き込むことが禁止される。
【0108】即ち、CPU313又はデバイス501
が、何らかの誤った動作に基づきRAM317のプログ
ラム領域への書込みを行おうとした場合、D−FF50
3の出力がRAM317のプログラム領域への書込みを
禁止するモードを示す値“0”であり、R/W信号がラ
イト動作を指示する値“0”となるため、OR回路50
8の出力が“0”となり、インバータ509の出力が
“1”となり、OR回路510の出力が“1”となる。
また、データ領域アクセス判定回路506の出力がRA
M317のデータ領域以外へのアクセスを示す値“1”
となる。従って、AND回路511の出力がRAM31
7へのアクセスが禁止される値“1”となる。
【0109】この結果、AS生成回路504はAS信号
をアサートせず、DC生成回路505もDC信号をアサ
ートしないため、RAM317へのアクセスが禁止され
る。この場合、DS信号がアサートされた後にDC信号
がアサートされないことがタイムアウト検出回路513
によって検出され、CPU313にインタラプト信号I
NTによるインタラプトがかかるため、異常アクセスが
発生したことがCPU313によって検知される。
【0110】一方、CPU313がRAM317のプロ
グラム領域に格納されている制御プログラムを読み出す
ような場合は、R/W信号がリード動作を指示する値
“1”となるため、OR回路508の出力が“1”とな
り、インバータ509の出力が“0”となる。また、プ
ログラム領域アクセス判定回路507の出力がRAM3
17のプログラム領域へのアクセスを示す値“0”とな
る。従って、OR回路510の出力が“0”となり、A
ND回路511の出力がRAM317へのアクセスが許
可される値“0”となる。
【0111】この結果、AS生成回路504は、DS信
号に基づいてAS信号をアサートし、DC生成回路50
5はDS信号のアサートから一定時間経過後にDC信号
をアサートする。
【0112】このようにして、CPU313は、RAM
317のプログラム領域の制御プログラムを読み出すこ
とが可能となる。更に、CPU313又はデバイス50
1が、RAM317のデータ領域に対してデータの読出
し又は書込みを行う場合には、データ領域アクセス判定
回路506の出力がRAM317のデータ領域へのアク
セスを示す値“0”となるため、AND回路511の出
力がRAM317へのアクセスが許可される値“0”と
なる。
【0113】この結果、AS生成回路504は、DS信
号に基づいてAS信号をアサートし、DC生成回路50
5はDS信号のアサートから一定時間経過後にDC信号
をアサートする。
【0114】このようにして、CPU313又はデバイ
ス501は、RAM317のデータ領域に対してデータ
を読み出し又は書き込むことが可能となる。RAM317のアドレス領域以外がアクセスされた場合 CPU313又はデバイス501が、RAM317のア
ドレス領域以外の領域をアクセスした場合には、データ
領域アクセス判定回路506の出力がRAM317のデ
ータ領域以外へのアクセスを示す値“1”となると共
に、プログラム領域アクセス判定回路507の出力がR
AM317のプログラム領域以外へのアクセスを示す値
“1”となる。従って、AND回路511の出力はRA
M317へのアクセスが禁止される値“1”となる。
【0115】この結果、AS生成回路504はAS信号
をアサートせず、DC生成回路505もDC信号をアサ
ートしないため、RAM317へのアクセスが禁止され
る。この場合には、他のデバイスがアクセスされており
そのデバイスによってDC信号が出力されるため、タイ
ムアウト検出回路513はインタラプト信号INTを出
力せず、そのアクセスは正常に終了する。 <他の実施例>以上説明した実施例では、RAM317
上のプログラム領域とデータ領域は固定されているが、
例えば図5のデータ領域アクセス判定回路506とプロ
グラム領域アクセス判定回路507のそれぞれに領域指
定用のレジスタを備え、そのレジスタをCPU313か
ら設定可能なように構成すれば、RAM317上でアク
セス保護すべき領域を可変にすることができる。
【0116】また、上述の実施例では、RAM317が
プログラム領域とデータ領域に分けられ、特定の場合に
プログラム領域へのライトアクセスが禁止されるように
動作するが、本発明はこれに限られるものではない。即
ち、対象となるメモリをプログラム領域とデータ領域の
両方を含むライトアクセスが禁止される領域と、その他
の領域とに分け、そのどちらの領域がアクセスされたか
によってアクセス保護を行うようにしてもよい。
【0117】
【発明の効果】本発明によれば、記憶保護設定手段10
4にメモリ装置102の所定の記憶保護領域に対するラ
イトアクセスを禁止する禁止情報が設定されている場合
に、バス101に接続される各種メモリアクセス装置1
03がメモリ装置102の所定の記憶保護領域をライト
アクセスしようとした場合に、メモリ装置102へのア
クセスを適切に禁止することが可能となる。
【0118】この結果、システムの暴走を未然に防止す
ることが可能となる。また、そのような異常アクセスを
メモリアクセス異常検出手段によって検出することによ
り、システムの動作異常の解析を容易に行うことが可能
となる。
【0119】なお、記憶保護設定手段104にメモリ装
置102の所定の記憶保護領域に対するライトアクセス
を許可する許可情報を設定することにより、システム稼
働開始時の初期プログラムロードなどに対処することが
可能となる。
【図面の簡単な説明】
【図1】本発明のブロック図である。
【図2】本発明の実施例が適用されるネットワークの構
成図である。
【図3】本発明の実施例におけるメッセージ通信装置の
構成図である。
【図4】メッセージ通信の説明図である。
【図5】I/Oコントロ−ラのメモリアクセス保護を行
う部分を中心とする構成図である。
【符号の説明】
101 バス 102 メモリ装置 103 メモリアクセス装置 104 記憶保護設定手段 105 アクセス制御手段

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 バス(101)にメモリ装置(102)
    と該メモリ装置をアクセスするメモリアクセス装置(1
    03)が接続されたシステムにおいて、 前記バス(101)に接続され、前記メモリ装置(10
    2)の所定の記憶保護領域に対するライトアクセスを許
    可する許可情報又は該ライトアクセスを禁止する禁止情
    報を設定する記憶保護設定手段(104)と、 前記バス(101)に接続され、前記バス(101)に
    指定されるバスアクセス信号を監視し、前記記憶保護設
    定手段(104)に前記許可情報が設定されている場合
    であって、前記バスアクセス信号が前記メモリ装置(1
    02)をリードアクセス又はライトアクセスする信号で
    ある場合には、前記メモリ装置(102)へのアクセス
    を許可する信号を前記バス(101)及び前記メモリ装
    置(102)に出力し、前記記憶保護設定手段(10
    4)に前記禁止情報が設定されている場合であって、前
    記バスアクセス信号が前記メモリ装置(102)の前記
    所定の記憶保護領域をライトアクセスする信号である場
    合には、前記メモリ装置(102)へのアクセスを許可
    する信号を前記バス(101)及び前記メモリ装置(1
    02)に出力せず、前記記憶保護設定手段(104)に
    前記禁止情報が設定されている場合であって、前記バス
    アクセス信号が前記メモリ装置(102)の前記所定の
    記憶保護領域をリードアクセスする信号である場合又は
    前記バスアクセス信号が前記メモリ装置(102)の前
    記所定の記憶保護領域以外の領域をリードアクセス若し
    くはライトアクセスする信号である場合には、前記メモ
    リ装置(102)へのアクセスを許可する信号を前記バ
    ス(101)及び前記メモリ装置(102)に出力する
    アクセス制御手段(105)と、 を有することを特徴とするメモリアクセス保護装置。
  2. 【請求項2】 バス(101)にメモリ装置(102)
    と該メモリ装置をアクセスするメモリアクセス装置が接
    続されたシステムにおいて、 前記バス(101)に接続され、前記メモリ装置(10
    2)の所定の記憶保護領域に対するライトアクセスを許
    可する許可情報又は該ライトアクセスを禁止する禁止情
    報を設定する記憶保護設定手段(104)と、 前記バス(101)に接続され、前記バス(101)に
    指定されるデータストローブ信号、アドレス信号及びリ
    ード/ライト指定信号を監視し、前記記憶保護設定手段
    (104)に前記許可情報が設定されている場合であっ
    て、前記データストローブ信号がアサートされた時点に
    おいて前記アドレス信号が前記メモリ装置(102)を
    指定する信号である場合には、前記データストローブ信
    号のアサートに対応して前記メモリ装置(102)にア
    クセスストローブ信号をアサートすると共に、前記デー
    タストローブ信号のアサート開始から所定時間経過後に
    前記バス(101)にデータコンプリート信号をアサー
    トし、前記記憶保護設定手段(104)に前記禁止情報
    が設定されている場合であって、前記データストローブ
    信号がアサートされた時点において前記リード/ライト
    指定信号がライトアクセスを指定しかつ前記アドレス信
    号が前記メモリ装置(102)の前記所定の記憶保護領
    域を指定する信号である場合には、前記メモリ装置(1
    02)に前記アクセスストローブ信号をアサートしない
    と共に前記バス(101)に前記データコンプリート信
    号をアサートせず、前記記憶保護設定手段(104)に
    前記禁止情報が設定されている場合であって、前記デー
    タストローブ信号がアサートされた時点において前記リ
    ード/ライト指定信号がリードアクセスを指定しかつ前
    記アドレス信号が前記メモリ装置(102)の前記所定
    の記憶保護領域を指定する信号である場合又は前記デー
    タストローブ信号がアサートされた時点において前記ア
    ドレス信号が前記メモリ装置(102)の前記所定の記
    憶保護領域以外の領域を指定する信号である場合には、
    前記データストローブ信号のアサートに対応して前記メ
    モリ装置(102)にアクセスストローブ信号をアサー
    トすると共に、前記データストローブ信号のアサート開
    始から所定時間経過後に前記バス(101)にデータコ
    ンプリート信号をアサートするアクセス制御手段(10
    5)と、 を有することを特徴とするメモリアクセス保護装置。
  3. 【請求項3】 前記バスに接続され、前記バスに前記デ
    ータストローブ信号がアサートされた後、所定時間内
    に、前記バスにデータコンプリート信号がアサートされ
    たか否かを監視し、所定時間内にアサートがなされなか
    った場合に前記メモリ装置のアクセスの異常を検出する
    メモリアクセス異常検出手段を更に有する、 ことを特徴とする請求項2に記載のメモリアクセス保護
    装置。
  4. 【請求項4】 前記メモリアクセス異常検出手段は、前
    記メモリ装置のアクセスの異常を検出した場合に、前記
    バスに接続される所定のプロセッサに、インタラプトを
    かけることによって前記異常を通知する、 ことを特徴とする請求項3に記載のメモリアクセス保護
    装置。
  5. 【請求項5】 前記記憶保護設定手段の内容は、前記バ
    スに接続された所定のプロセッサから設定可能である、 ことを特徴とする請求項1乃至4の何れか1項に記載の
    メモリアクセス保護装置。
JP4226223A 1992-08-25 1992-08-25 メモリアクセス保護装置 Withdrawn JPH0675861A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4226223A JPH0675861A (ja) 1992-08-25 1992-08-25 メモリアクセス保護装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4226223A JPH0675861A (ja) 1992-08-25 1992-08-25 メモリアクセス保護装置

Publications (1)

Publication Number Publication Date
JPH0675861A true JPH0675861A (ja) 1994-03-18

Family

ID=16841829

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4226223A Withdrawn JPH0675861A (ja) 1992-08-25 1992-08-25 メモリアクセス保護装置

Country Status (1)

Country Link
JP (1) JPH0675861A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6606707B1 (en) 1999-04-27 2003-08-12 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card
GB2422695A (en) * 2005-01-27 2006-08-02 Toshiba Kk Protecting an area of memory against rewriting
JP2007501477A (ja) * 2003-05-29 2007-01-25 フリースケール セミコンダクター インコーポレイテッド アクセス許可を決定するための方法および装置
US7555627B2 (en) 2005-06-30 2009-06-30 Hitachi, Ltd. Input-output control apparatus, input-output control method, process control apparatus and process control method
JP2021507362A (ja) * 2017-12-15 2021-02-22 シー−スカイ マイクロシステムズ カンパニー,リミテッド 間接アクセスメモリコントローラ向けの保護機能を追加するための機器
JP2021507361A (ja) * 2017-12-15 2021-02-22 シー−スカイ マイクロシステムズ カンパニー,リミテッド 間接アクセスメモリコントローラ用のメモリ保護装置

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7996914B2 (en) 1999-04-27 2011-08-09 Panasonic Corporation Semiconductor memory card and data reading apparatus, and data reading/reproducing apparatus
US6789192B2 (en) 1999-04-27 2004-09-07 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card, data reading apparatus, and data reading/reproducing apparatus
US7062652B2 (en) 1999-04-27 2006-06-13 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card, data reading apparatus and data reading/reproducing apparatus
US6606707B1 (en) 1999-04-27 2003-08-12 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card
US8661553B2 (en) 1999-04-27 2014-02-25 Panasonic Corporation Semiconductor memory card and data reading apparatus, and data reading/reproducing apparatus
US8127368B2 (en) 1999-04-27 2012-02-28 Panasonic Corporation Semiconductor memory card and data reading apparatus, and data reading/reproducing apparatus
JP2007501477A (ja) * 2003-05-29 2007-01-25 フリースケール セミコンダクター インコーポレイテッド アクセス許可を決定するための方法および装置
GB2422695A (en) * 2005-01-27 2006-08-02 Toshiba Kk Protecting an area of memory against rewriting
GB2422695B (en) * 2005-01-27 2007-04-18 Toshiba Kk Control apparatus for protecting an area of memory against rewriting
US7555627B2 (en) 2005-06-30 2009-06-30 Hitachi, Ltd. Input-output control apparatus, input-output control method, process control apparatus and process control method
JP2021507362A (ja) * 2017-12-15 2021-02-22 シー−スカイ マイクロシステムズ カンパニー,リミテッド 間接アクセスメモリコントローラ向けの保護機能を追加するための機器
JP2021507361A (ja) * 2017-12-15 2021-02-22 シー−スカイ マイクロシステムズ カンパニー,リミテッド 間接アクセスメモリコントローラ用のメモリ保護装置
US11726675B2 (en) 2017-12-15 2023-08-15 C-Sky Microsystems Co., Ltd. Memory protective apparatus for indirect access memory controller

Similar Documents

Publication Publication Date Title
KR101403233B1 (ko) 정보 처리 장치 및 부정 액세스 방지 방법
US4783731A (en) Multicomputer system having dual common memories
JP3807250B2 (ja) クラスタシステム、コンピュータ及びプログラム
JPH1055337A (ja) マルチマスタバスシステムのバス回復装置及び方法
JPH0666821B2 (ja) デ−タ通信コントロ−ラ
JP3889879B2 (ja) 仮想メモリ変換を制御する方法
JPH11338734A (ja) コンピュ―タシステムおよびこのコンピュ―タシステムを動作させる方法
US4038641A (en) Common polling logic for input/output interrupt or cycle steal data transfer requests
JPS6155743A (ja) エラ−検出、分離および回復装置
WO2008030727A2 (en) Access control of memory space in microprocessor systems
JP2587190B2 (ja) システム間チャネルページング機構
JPH0675861A (ja) メモリアクセス保護装置
JP2001333137A (ja) 自主動作通信制御装置及び自主動作通信制御方法
JPS634209B2 (ja)
CN101169767B (zh) 访问控制设备及访问控制方法
JP2005505858A (ja) 通信バスを持つコンピュータシステム
KR100223096B1 (ko) 내부 메모리 맵 레지스터를 관측하는 방법 및 장치
KR20070080307A (ko) Cpu의 성능 향상을 위한 버스 구조를 갖는 시스템과성능 향상방법
JP3536219B2 (ja) 分散メモリ保護管理装置
JPH0675796A (ja) パリティエラー記録装置
JPH0619857A (ja) コンピュータ間のデータ一致装置
JPS59117658A (ja) マルチマイクロプロセツサシステムにおける共通バスアクセス管理装置
JPH0619855A (ja) メッセージのキューイング方法とその装置
JPH064462A (ja) バス結合方式
JPH064464A (ja) 周辺装置アクセス装置

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19991102