JP3462001B2 - 計算機および計算機システム - Google Patents

計算機および計算機システム

Info

Publication number
JP3462001B2
JP3462001B2 JP10652596A JP10652596A JP3462001B2 JP 3462001 B2 JP3462001 B2 JP 3462001B2 JP 10652596 A JP10652596 A JP 10652596A JP 10652596 A JP10652596 A JP 10652596A JP 3462001 B2 JP3462001 B2 JP 3462001B2
Authority
JP
Japan
Prior art keywords
program
branch
interrupt
address
unit
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
JP10652596A
Other languages
English (en)
Other versions
JPH09293003A (ja
Inventor
賢二 小島
康晴 福島
三好  守
正年 斉藤
博之 中野
明男 戸田
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP10652596A priority Critical patent/JP3462001B2/ja
Publication of JPH09293003A publication Critical patent/JPH09293003A/ja
Application granted granted Critical
Publication of JP3462001B2 publication Critical patent/JP3462001B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)
  • Hardware Redundancy (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、制御プログラム
を実行してプラントの制御などを行う計算機に関 する
ので、特に処理性能の向上、メンテナンス性の向上など
の性能の向上を図るものある。
【0002】
【従来の技術】従来の技術1. 図37は例えば、特開平4−332002号公報に示さ
れた従来の計算機システムを示す構成図である。図にお
いて、1はプロセッサ(計算機)10の実行に必要な制
御プログラム5a及び制御データや起動管理テーブル等
の制御情報の開発と保守を行う保守ツールで、通常はパ
ソコンなどの端末器が用いられる。
【0003】1aは制御プログラム等の制御情報を格納
するハードディスク装置である。2はシステムバス、3
はシステムバス2によりプロセッサ10と接続されたI
Oインタフェース、4は制御対象機器のプラントシステ
ムである。
【0004】10はプロセッサ(計算機)であり次に示
す構成からなる。5はプロセッサ10のメモリ、5aは
制御プログラム、5bは制御プログラム5aをメモリ5
上に格納するときの管理情報を保持するページ管理テー
ブル、5cは分岐先論理アドレスを格納する分岐ブロッ
クであり、保守ツール1からの制御プログラム5a書き
換え要求で指定される分岐ブロック情報を保持する。
【0005】分岐ブロック情報は、制御プログラムの先
頭からの命令ステップ数を分岐先論理アドレスとして一
つまたは複数の分岐先論理アドレスを保持する情報であ
る。6は保守ツール1から送られてきた制御情報をプロ
セッサ10に登録する要求処理部、6aは保守ツール1
からの制御情報を受信する受信部、6bは制御情報を処
理した結果を保守ツール1に送信する送信部である。
【0006】6cは保守ツール1からの制御情報を制御
プログラム5aとして格納するための処理をするプログ
ラム書き換え処理部、7は制御プログラム5aを実行す
るプログラム実行部である。
【0007】また、図40は、従来の計算機システムの
ページ管理テーブル5の構成例であり、モジュール分割
された個々の制御プログラムの置かれているアドレス
(メモリ先頭からの物理オフセットアドレス)をプログ
ラム番号に対応させて保持する。
【0008】図41は、従来の計算機システムの分岐命
令の構成を示しており、そのオペランド部には、分岐ブ
ロックから分岐先論理アドレスを得るための識別子であ
る分岐先ブロック番号を保持している。
【0009】図42は、分岐処理を説明する図で、分岐
命令に基づいて分岐処理する場合を示している。図の左
のプログラム5がこの場合の処理対象の制御プログラム
を表し、このプログラムが図37に示すメモリ5上の制
御プログラム5aに格納される。
【0010】次に動作について図38及び図39のフロ
ーに従って説明する。先ず、図38のプログラム書き換
えが要求された際の処理のフローを説明する。(1)保
守ツール1から送られてきたプログラム書き換え処理要
求を、要求処理部6の受信部6aが受信し、プログラム
書き換え処理部6cに送る。
【0011】(2)プログラム書き換え処理部6cは、
指定されたモジュールの制御プログラム(図42では、
プログラム5)をメモリ部5の制御プログラム5a領域
に書き込むと共に(ST000)、
【0012】(3)制御プログラム5aへの書き込み位
置をメモリ部5の先頭からのオフセットアドレスである
物理アドレスで表現し、指定されたプログラム番号に対
応させてページ管理テーブル5bに登録する(ST00
1)。即ち、図42のようにページ管理テーブル5b
は、「プログラム1、プログラム2、・・・」の順に制
御プログラム5の各プログラムの先頭からの物理アドレ
スが「アドレス1、アドレス2、・・アドレス5、・・
・」と格納される。
【0013】(4)次に、指定されたモジュールの分岐
ブロック情報をメモリ部5の分岐ブロック5c領域に書
き込む(ST002)。分岐ブロック5cは、図42の
ように制御プログラム(プログラム5)内に「分岐命令
3」があると、その物理アドレスを分岐ブロック5cの
3番目にアドレス4として格納する。そして、このアド
レス4とページ管理プログラム5bのプログラム5の先
頭アドレス5とを加えたもの(図42のa)が「分岐先
物理アドレス」となり、制御プログラム5aの分岐先の
分岐プログラムの位置となる。
【0014】図39の分岐命令実行時の分岐命令処理の
フローを説明する。 (1)プログラム実行部7は、メモリ部5の制御プログ
ラム5aから命令を抽出し(ST005)、 (2)分岐命令であれば、例えば、図42の分岐命令3
であれば(ST006)、 (3)図41に示すオペランド部の分岐先ブロック番号
を識別子として使用し、分岐ブロック5c(図42のア
ドレス4)を参照して分岐先論理アドレスを取り出す
(ST007)。
【0015】(3)ページ管理テーブル5bの情報(図
42のアドレス5)を参照して分岐先論理アドレスを物
理アドレスに変換する(ST008)。 (4)変換された物理アドレス(図42のa)を用いて
プログラム実行部7は、分岐先の命令を実施する(ST
009)。
【0016】従来の技術2. 制御プログラムの実行の際、トレースを行いそのトレー
ス情報を収集する場合を説明する。図37において、プ
ログラム実行部7は、この中に図43の制御プログラム
実行のトレース機能を有している。
【0017】図43において、400はトレース情報を
格納するトレースメモリであり、401のトレースデー
タ収集部で収集されたトレースデータを格納する。
【0018】401のトレースデータ収集部は、401
aのトレース履歴レジスタにトレースした履歴を記録し
ながら、トレースデータを収集する。402は制御プロ
グラム実行のための制御プログラムアドレスで、実行し
た制御プログラムのアドレスが格納されている。この制
御アドレスはプログラムカウンタが用いられる。
【0019】403はアドレス一致検出部であり、40
2の制御プログラムアドレスを監視する。403aはア
ドレス一致開始レジスタ、403bはアドレス一致終了
レジスタである。404は、アドレス一致開始レジスタ
403aとアドレス一致終了レジスタ403bの間に制
御プログラムアドレス402があることを検出すると出
力するトレース要求信号である。
【0020】また、図44はトレース履歴レジスタ40
1aの構造図であり、トレース完了情報(この場合
「1」の情報)は、アドレス一致開始アドレスからの相
対番号に対応したビット位置に順次格納される。
【0021】次に図37の従来の計算機システムがトレ
ースデータを収集する動作について図45のフローチャ
ートに従って説明する。 (1)アドレス一致検出部403は、制御プログラムア
ドレス402を監視し、トレース開始アドレス403a
とトレース終了アドレス403bの間であると云うトレ
ースデータ収集条件を満たした時、トレース要求信号4
04を出力する。(ST400)
【0022】(2)トレース要求信号404が出力され
ると、トレースデータ収集部401がこれを検知し(S
T401)、 (3)トレース履歴レジスタ401aからトレースデー
タ収集済みか否かを判定する(ST402)。
【0023】(4)トレースデータ収集済みなら、その
回のトレース収集処理を終了し、トレースデータ未収集
なら、制御プログラムの実行結果、アクセスデータなど
のトレースデータを、トレースメモリ400の中の制御
プログラムアドレス402に対応した位置に格納する
(ST403)。 (5)トレースデータの収集完了後、トレース完了の情
報を、トレース履歴レジスタ401a内の制御プログラ
ムアドレス402に対応した位置に格納する(ST40
4)。 (6)この一連の動作を、検出されたアドレスがトレー
ス終了アドレスか否かを判定し、アドレス一致終了レジ
スタ403bに設定されたトレース終了アドレスのトレ
ースデータ収集が完了するまで行う(ST405)。
【0024】従来の技術3. 従来の計算機システムの制御プログラム書き換え処理の
動作について図46のフローチャートを用いて説明す
る。なお、構成は図37と同一である。 (1)保守ツール1から新たな制御プログラムが出力さ
れると、要求処理部6がこれを検知し(ST500)、
【0025】(2)プログラム実行部7に検知した旨を
知らせると共に、受信部6aがその新たな制御プログラ
ムを受信する(ST501)。 (3)受信部6aが変更に関わる制御プログラムが実行
中であるか否かを判定し(ST502)、
【0026】(4)実行停止ならプログラム書き換え処
理部6cに制御プログラム5aの書き換えを指示する
(ST503)。 (5)プログラム書き換え処理部6cは、指示を受けて
新たな制御プログラム及び管理情報に更新する(ST5
04)。
【0027】(6)必要であれば変更されたプログラム
を実行可能にする(ST505)。 (7)制御プログラムが実行途中で他の処理に一時移っ
ている等の実行中であれば実行完了まで待って(ST5
06)、制御プログラムが停止した後、制御プログラム
5aを書き換える。
【0028】従来の技術4. 計算機システムの割込処理について説明する。図47
は、例えば特開平7−141228号公報に示された従
来の計算機システムを示すブロック図である。
【0029】図において、3はプラントシステム4に接
続されている入出力インタフェース(IOインタフェー
ス)である。605はプラントシステム4からの割込を
検出する割込検出部であり、602は割込検出部605
が正常検出時に割込番号をセットする割込番号、603
は異常検出時にエラー番号をセットするエラー番号、6
01はIO割込またはエラーをプロセッサ10に通知す
る割込通知部である。
【0030】604は制御対象であるプラントシステム
4とプロセッサ10との間で入出力が行われるプラント
データである。600はIOインタフェース3からの割
込通知を受信するIO割込・エラー受信であり、プログ
ラム実行部7に、割込もしくはエラーに対応する制御プ
ログラム5aの起動を指示する。
【0031】従来の計算機システムにおけるIO割込通
知の動作について説明する。図48と図49は、従来の
IOインタフェース3の割込通知処理およびプロセッサ
10の割込受信処理のフローチャートであり、このフロ
ーチャートに従って説明する。
【0032】(1)割込検出部605がプラントシステ
ム4からの割込検出を行う(ST700)。 (2)割込が正常検出であれば(ST701)、 (3)割込番号602をセットし(ST702)、
【0033】(4)割込通知部601がプロセッサ10
にIO割込を通知する(ST703)。 (5)一方割込検出が正常検出でなければ、エラー番号
603をセットし(ST704)、 (6)割込通知部601がプロセッサ10にIOエラー
を通知する(ST705)。
【0034】(7)プロセッサ10では、IO割込・エ
ラー受信600がIOインタフェース3からの通知を受
信する(ST710)。 (8)IO割込通知であれば(ST711)、 (9)割込番号602の読み込みを行い(ST71
2)、
【0035】(10)読み出した割込番号の制御プログ
ラム5aを起動する(ST713)。 (11)一方IO割込通知でなければ(ST711)、
エラー番号603の読み込みを行い(ST714)、 (12)読み出したエラー番号の制御プログラム5aを
起動する(ST715)。
【0036】従来の技術5. 図50は、例えば、特開平5−12236号公報に示さ
れた従来の故障監視プロセッサの故障処理制御部であ
る。図において、2は各プロセッサ間を接続するシステ
ムバス、11は計算機システム全体の故障監視を行い外
部へ故障処理出力を行うと共にエラー履歴を残す故障監
視プロセッサ、10ー1〜10−Nは、演算を主機能と
するプロセッサである。
【0037】20は現在のシステムバスに接続されたカ
ード構成情報がある構成テーブル部であり図52にその
詳細を示す。21は書き換え可能な不揮発性メモリにマ
ッピングされた現在のシステムバスに接続されているカ
ード分の故障処理設定テーブル部であり各カードでの故
障発生時の処理方法を規定している。
【0038】22はプロセッサ10ー1〜10ーNから
システムバス2経由で通知される故障情報、23は22
の故障情報を元に故障状態を外部に出力する故障出力
部、24は構成テーブル部20の生成及び故障処理設定
テーブル部21の生成及び故障情報22の受信及び故障
出力部23を制御を処理する故障監視部である。
【0039】図51は従来の故障処理設定テーブル部2
1の内部構造である。図において、30−1はシステム
バス2に接続されたカード枚数、31−1〜31−Nは
プロセッサ10ー1〜10ーNが挿入されているスロッ
ト番号である。
【0040】32−1〜32−Nはスロット番号31ー
1〜31ーNに示されるスロットに挿入されているカー
ドの種類を判別するカード種別コード、 33−1〜3
3−Nはそのカードの故障処理の設定内容で構成されて
おり、スロットに挿入されているカード枚数分のみのテ
ーブルに圧縮される。
【0041】図52は従来の構成テーブル部20の内部
構造である。図において、30−1bはシステムバス2
に接続されたカード枚数、32−0b〜32−Nbはス
ロット0〜Nに対応したカードの種類を判別するカード
種別コードで構成されており、カード種別コードにデー
タ(0以外、例えば「1」)が入っていれば、そのスロ
ット番号が有効となる。
【0042】次に動作について説明する。あるプロセッ
サのカードにパリティエラー等の不具合があり、不良カ
ードを抜き取って、再立ち上げを行った場合、故障監視
部24の初期化処理において、現在のシステム構成と再
立ち上げ前のシステム構成に変更があるかをチェックす
る。
【0043】このチェックを行うために、構成テーブル
部20と前回まで使用されていた故障処理設定テーブル
部21のカード構成とを比較する。比較時に、カードを
抜き取りを行っている場合、現在の構成テーブル部20
と故障処理設定テーブル部21の情報が異なっているの
で、故障監視部24はシステムの再構築が行われたと判
断し、どの設定内容で稼働すればよいか判断できない。
【0044】この場合、前回されていた設定内容は無視
して、新規に予め用意していた、例えば、プロセッサの
状態が重故障であれば計算機システム状態も重故障とい
ったような標準の故障処理設定データ情報を故障処理設
定テーブル部21に上書きして動作していた。
【0045】構成テーブル部20と故障処理設定テーブ
ル部21との比較は、故障処理設定テーブル部内部の全
カード枚数30ー1と、挿入されているカードのスロッ
ト番号31ー1〜31ーNと、カード枚数番号毎のカー
ド種別コード32ー1〜32−Nが構成テーブル部の情
報と整合性が取れているかにより判断する。従来の比較
方法を以下図53のフローチャートに従って説明する。
【0046】(1)現在のシステムを構成するカード構
成が再立ち上げ前のシステムと同じ構成かをチェックす
るために、構成テーブル部20の全カード枚数30ー1
bを読み取り(ST700)、 (2)現在のシステム構成カード枚数が立ち上げ前のシ
ステム構成のカード枚数を示す故障処理設定テーブル部
21内の全カード枚数30ー1と一致するかどうか比較
する(ST701)。
【0047】(3)不一致であれば(ST702)、 (4)システム構成に変更があるため、予め用意してい
た標準の設定を故障処理設定テーブル部21に書き込む
(ST707)。
【0048】(5)システム構成カード枚数が一致して
いれば(ST702)、 (6)次に現在挿入されている有効スロット番号をチェ
ックするために、構成テーブル部20の有効カードのス
ロット番号が故障処理設定テーブル部21のスロット番
号31ー1と一致するか比較する(ST703)。
【0049】(7)不一致であれば(ST704)、 (8)標準値を故障処理設定テーブル部21に書き込む
(ST707)。
【0050】(9)一致していれば(ST704)、 (10)現在そのスロットに挿入されているカードの種
類をチェックするために、構成テーブル部20のカード
種別コード31ー2bが以前そのスロットに挿入されて
いたカードの種類を示す故障処理設定テーブル部21の
カード種別コード32ー1と一致するか比較する(ST
705)。
【0051】(11)不一致であれば(ST706)、 (12)予め用意していた標準値を、故障処理設定テー
ブル部21に書き込む(ST707)。
【0052】(13)一致すれば(ST706)、 (14)そのスロット番号に対してカード構成に変更が
ないため故障処理設定テーブル部21の設定内容33ー
1は書き換えない。 (15)上記処理を現在の全カード枚数30ー1b分繰
り返し行う(ST708)。
【0053】現在のシステム構成と再立ち上げ前のシス
テム構成に変更がなければ、故障処理設定テーブル部2
1を書き換えず、前回の値そのまま使用され、計算機シ
ステムの重/軽故障等の外部への故障出力を制御する条
件として使用される。
【0054】
【発明が解決しようとする課題】(1)従来の計算機シ
ステムは、以上のように構成されているので、分岐命令
実行のための分岐ブロック用のメモリ容量が必要であ
り、コストの上昇を招くと共に、メモリ管理が必要とな
るため、処理が複雑であり、かつ、制御プログラム実行
時の分岐命令で毎回、分岐ブロックの参照と分岐先物理
アドレスへの変換、および分岐先物理アドレスへの分岐
を行う必要があり、制御プログラムの実行性能の低下を
招くという問題があった。
【0055】この発明は、分岐命令にかかわる分岐ブロ
ック用メモリが不要となり、コスト低下させると共に、
制御プログラムの実行性能を向上させることを目的とす
る。
【0056】
【課題を解決するための手段】(1)この発明に係る計
算機は、プログラムの作成または書換え操作が計算機と
は別の保守ツールにて行われる計算機において、上記保
守ツールから転送されてくるプログラムの順序と、メモ
リ上の物理的なプログラム格納順序とが、必ずしも一致
していないシステムに対し、保守ツールから転送されて
きたプログラムをメモリ上に登録または書き換える際、
上記プログラム中の分岐命令のオペランドに格納されて
いる分岐先ブロック番号を、上記プログラムの先頭から
の命令ステップ数で示す分岐先論理アドレスに変換し、
分岐 命令のオペランドとして計算機のメモリ上に登録す
る手段と、上記分岐命令を実行する際、上記分岐命令の
オペランドの分岐先論理アドレスを分岐先物理アドレス
に変換して分岐命令を実行する手段とを備え、メモリ空
間を効率的に使用するものである。
【0057】(2)また、プログラムの作成または書換
え操作が計算機とは別の保守ツールにて行われる計算機
において、上記保守ツールから転送されてくるプログラ
ムの順序と、メモリ上の物理的なプログラム格納順序と
が、必ずしも一致していないシステムに対し、保守ツー
ルから転送されてきたプログラムをメモリ上に登録また
は書き換える際、上記プログラム中の分岐命令のオペラ
ンドに格納されている分岐先ブロック番号を、上記メモ
リ先頭からのオフセットアドレスで示す分岐先物理アド
レスに変換し、分岐命令のオペランドとして計算機のメ
モリ上に登録する手段と、上記分岐命令を実行する際、
上記分岐命令のオペランドの分岐先物理アドレスに基づ
いて分岐命令を実行する手段とを備え、メモリ空間を効
率的に使用するものである。
【0058】
【発明の実施の形態】実施の形態1. 以下、この発明の一実施の形態を図について説明する。
図1はこの発明の計算機システムのプログラム書換え時
を示す構成図であり、従来のものと同一符号は説明を省
略する。
【0059】図2及び図3はフローチャートで、図4は
命令オペランド構成図、図5は制御プログラム実行時の
アドレス変換処理を例示した図で、図6は制御プログラ
ムの分岐処理を実行時の説明図である。
【0060】図5について説明する。プログラム1,
2,3,・・・は、それぞれ複数のブロックから構成さ
れており、プログラム1では4ブロックに分けられ、そ
れぞれのブロックは、例えば128ステップの固定長に
している。各ブロックの先頭アドレスに対応する物理ア
ドレスの対象表をページ管理テーブル5bに登録し、こ
の内容によりプログラム1では、制御プログラムの0,
3,5,6の物理アドレスを先頭アドレスとするプログ
ラムを実行する。プログラム実行の際は、分岐アドレス
を従来の図37、図42に示す分岐ブロック5cを必要
としない。但し、プログラム書き換え時には、分岐ブロ
ックを必要とする。
【0061】図6で分岐処理実行時について説明する。
従来の図42と対比すると分かるように、プログラム実
行時は、分岐ブロックを無くして、プログラム5の「分
岐3」には図4のオペランドに直接プログラム先頭から
のステップ数を記述しておき、ページ管理テーブル5b
を参照してプログラム5の開始アドレスである「アドレ
ス5」に、上記オペランドのステップ数を加えたものが
分岐先物理アドレス(a)を表し、制御プログラム5a
のa番目のアドレスが分岐先となり、その位置のプログ
ラムから実行する。
【0062】次に動作について図2及び図3のフローチ
ャートと共に説明する。図2は分岐命令が含まれるプロ
グラム書換え処理の動作フローを示したものである。 (1)保守ツール1から送られてきたプログラム書き換
え処理要求を、要求処理部6の受信部6aが受信し、プ
ログラム書き換え処理部6cに送る(ST100)。
【0063】(2)プログラム書き換え処理部6cは、
制御プログラムをメモリ部5の制御プログラム5a領域
に書き込むと共に(ST101)、 (3)制御プログラム5aへの書き込み位置をメモリ部
5の先頭からのオフセットアドレスである物理アドレス
で表現し、指定されたプログラム番号に対応させてペー
ジ管理テーブル5bに登録する(ST102)。
【0064】(4)前記プログラム書き込みが完了する
と、プログラム書き換え処理部6cは、プログラム書き
換え処理要求のあったプログラムから分岐命令の分岐先
を抽出し、オペランドに保持されている分岐ブロック番
号を識別子として用いて分岐ブロック情報を参照し、プ
ログラムの先頭からの命令ステップ数である分岐先論理
アドレスを獲得する(ST103)。
【0065】(5)獲得した前記分岐先論理アドレス
を、分岐命令実行時に分岐先として知る必要があるた
め、図4に示すように前記分岐命令のオペランドとして
登録する(ST104)。
【0066】(6)上記ST103〜ST104をプロ
グラム中の分岐命令全てに対して行う(ST105)。
【0067】図3は分岐命令実行時の分岐命令処理の動
作フローを示したものである。 (1)プログラム実行部7は、メモリ部5の制御プログ
ラム5aから命令を抽出し(ST106)、 (2)分岐命令であれば(ST107)、図6では、プ
ログラム5の「分岐3」。 (3)ページ管理テーブル5bを参照して、該プログラ
ム番号に相当するメモリ5の先頭からの物理オフセット
アドレス(図6のアドレス5)と、図4に示す前記分岐
命令オペランドに格納された分岐先論理アドレス(図6
の分岐3の論理アドレス)とを加算し、分岐先物理アド
レスを得る(ST108)。
【0068】(4)プログラム実行部7は、算出した分
岐先物理アドレスに分岐し実行する(ST109)。 (5)ST106にて抽出した命令が分岐命令でなけれ
ば(ST107)、 (6)各命令に従い実行する(ST110)。 (7)プログラム中の全ての命令の実行が完了すれば
(ST111)、プログラム実行を終了する。
【0069】以上のように、命令実行時には分岐ブロッ
クを参照することなく、分岐先論理アドレスを物理アド
レスに変換し、指定された物理アドレスへ制御プログラ
ムの制御移行を行うことができるため、プログラム書き
換え後は分岐ブロック情報を保持する必要がなくなり、
分岐ブロックの削除により命令実行時に必要なバックア
ップメモリサイズが大幅に削減できるので、計算機のコ
ストを低下させ、制御プログラムの実行性能が向上す
る。従って計算機処理の性能向上が図れる。
【0070】なお、バックアップメモリは、通常、電源
OFFしても別電源がバックアップするメモリである
が、電源がバックアップしないメモリにも適用できる。
また、メモリの削減は、例えば25%程度削減できる。
【0071】実施の形態2. 図7は、プログラム実行時にページ管理テーブル5bを
参照し、分岐先論理アドレスを分岐先物理アドレスに変
換する処理を行う図1に対し、プログラム書き換え時
に、分岐先論理アドレスを分岐先物理アドレスに変換す
る処理を行い、分岐命令実行時には、ページ管理テーブ
ルを参照せず直接プログラムに記述された分岐先物理ア
ドレスに基づいて分岐処理を行うものである。
【0072】図7において、従来のものと同一符号は説
明を省略する。図8及び図9はフローチャートで、図1
0は命令オペランド構成図である。図11は分岐処理の
実行時の説明図である。
【0073】次に動作について図8及び図9のフローチ
ャートと共に説明する。図8は分岐命令が含まれるプロ
グラム書き換え処理の動作フローを示したものである。 (1)保守ツール1から送られてきたプログラム書き換
え処理要求を、要求処理部6の受信部6aが受信し、プ
ログラム書き換え処理部6cに送る(ST200)。
【0074】(2)プログラム書き換え処理部6cは、
制御プログラムをメモリ部5の制御プログラム5a領域
に書き込むと共に(ST201)、 (3)制御プログラム5aへの書き込み位置をメモリ部
5の先頭からのオフセットアドレスである物理アドレス
で表現し、指定されたプログラム番号に対応させてペー
ジ管理テーブル5bに登録する(ST202)。
【0075】(4)前記プログラム書き込みが完了する
と、プログラム書き換え処理部6cは、プログラム書き
換え処理要求のあったプログラムから分岐命令の分岐先
を抽出し、オペランドに保持されている分岐ブロック番
号を識別子として用いて分岐ブロック情報を参照し、プ
ログラムの先頭からの命令ステップ数である分岐先論理
アドレスを獲得する(ST203)。
【0076】(5)分岐先論理アドレスを獲得すると、
プログラム書換え部6cは、前記ページ管理テーブル5
bを参照して、該プログラム番号に相当するメモリ5の
先頭からの物理オフセットアドレスに分岐先論理アドレ
スを加算し、分岐先物理アドレスを得る(ST20
4)。
【0077】(6)分岐先物理アドレスを図10に示す
ように前記分岐命令オペランドに書き込む(ST20
5)。 (7)上記ST203〜ST205をプログラム中の分
岐命令全てに対して行う(ST206)。
【0078】図9は分岐命令実行時の分岐命令処理の動
作フローを示したものである。 (1)プログラム実行部7は、メモリ部5の制御プログ
ラム5a(図11ではプログラム5で説明)から命令を
抽出し(ST207)、
【0079】(2)分岐命令であれば(ST208)、
例えば図11の「分岐3」であれば、 (3)図10に示す分岐命令オペランドに格納された分
岐先物理アドレスに分岐実行する(ST209)。
【0080】(4)抽出した命令が前記分岐命令でなけ
れば、各命令に従い実行する(ST211)。 (5)プログラム中の全ての命令の実行が完了すれば
(ST210)、プログラム実行を終了する。
【0081】以上のように、命令実行時には分岐ブロッ
ク及びページ管理テーブル共に参照することなく、指定
された物理アドレスへ制御プログラムの制御移行を行う
ことができるため、プログラム書き換え後は分岐ブロッ
ク情報およびページ管理テーブルを保持する必要がなく
なり、分岐ブロックおよびページ管理テーブルの削除に
より命令実行時に必要なバックアップメモリサイズが大
幅に削減できて、計算機のコストを低下させ、また、制
御プログラムの実行性能が向上する。
【0082】更に、命令実行時に論理アドレスから物理
アドレスへ変換する処理が削除されるため、命令実行速
度を向上させるという効果がある。従って、計算機の処
理性能が向上する。
【0083】実施の形態3. この実施の形態はメンテナンス処理を効率的に行うもの
である。図12はその構成図で、6dは受信部6aで受
信した要求を処理するメンテナンス処理部、6fはメン
テナンス処理をキャンセルするキャンセル処理部、5d
はメンテナンス要求処理で使用する処理バッファであ
る。図13、図14、図15は処理動作のフローチャー
トである。
【0084】ここでメンテナンスとは、プログラムの変
更・修正、制御情報の変更や、トレース開始、トレース
データの読み出し等種々のものがある。キャンセルもメ
ンテナンスの一つであが、ここではキャンセルはメンテ
ナンスとは別にして説明する。また、パソコン等の保守
ツールからのメンテナンス要求は、メンテナンス要求そ
れ自身がプログラムの変更・修正内容である場合が多い
が、保守ツールからのメンテナンス要求(指令)に応じ
て、計算機側で所定のメンテナンス処理をする場合もあ
る。
【0085】次に動作について説明する。図13は実施
の形態3の計算機における要求受信処理の動作の流れを
示すフローチャートである。 (1)保守ツール1からのメンテナンス処理要求を受信
部6aが受信するとキャンセル要求かどうかを判定する
(ST300)。
【0086】(2)判定結果がキャンセル要求でなく、
メンテナンス処理要求であれば受信部6aはメンテナン
ス処理部6dに受信データを送り(ST301)、 (3)メンテナンス処理部6dは処理バッファ5dに受
信データを登録する(ST302)。 (4)判定結果がキャンセル要求であれば、キャンセル
処理部6fに受信データを送る(ST303)。
【0087】(5)キャンセル処理部6fは、図15の
フローチャートのように、処理バッファ5dで処理中の
メンテナンス処理が該保守ツール1からのコマンドかど
うかを判定し(ST304)、 (6)該保守ツール1からのコマンドであれば、該保守
ツール1のメンテナンス処理を登録している処理バッフ
ァ5dを削除する(ST305)。
【0088】また、図14は送信処理の流れを示すフロ
ーチャートである。 (1)メンテナンス処理の応答受信待ち状態(ST30
6)で、メンテナンス処理部6dからのメンテナンス処
理応答が無い場合は、受信待ちを続ける。 (2)メンテナンス処理部6dからの応答が来ると、保
守ツール1に対し応答を送る(ST307)。
【0089】(3)前記応答処理でタイムアウト等の保
守ツール1の接続断のエラーが検出されると(ST30
8)、 (4)再び応答をリトライし、規定されたリトライ回数
を越えるとリトライオーバ(ST309)として応答を
中止する(ST310)。
【0090】(5)このとき同じ保守ツール1からの他
の要求を終了させるためキャンセル要求のコマンドを生
成し、受信部6aに要求を送る(ST311)。 (6)受信部6aはこのキャンセル要求を受けて、該保
守ツールからの受けているコマンド処理のキャンセル処
理を図15のフローチャートで行う。
【0091】以上のように、保守ツールの接続が断とな
った場合、この保守ツールからのメンテナンス要求に対
する応答時のエラーが検出されるので、エラーが検出さ
れた保守ツールからの一つまたは複数のメンテナンス要
求に対応するメンテナンス処理が全てキャンセル処理さ
れるため、既に受け付けている他の保守ツールからのメ
ンテナンス処理はキャンセルされず、接続断となった保
守ツールのみのメンテナンスをキャンセルするので、他
の保守ツールからのメンテナンス処理要求が受け付け可
能となりメンテナンス処理を効率的に行える。従って計
算機処理の性能向上が図れる。
【0092】実施の形態4. この実施の形態は、制御プログラムのトレース処理の効
率化を図るものである。図16はこの発明の計算機シス
テムの実施の形態4を示すブロック図である。図におい
て、400はトレースメモリ、401はトレースデータ
収集部、402は制御プログラムアドレスで、実行した
制御プログラムのアドレスが格納される。この制御アド
レスはプログラムカウンタが用いられる。
【0093】403はアドレス一致検出部、404はト
レース要求信号である。405はアドレス書き換え部で
あり、次の制御プログラムアドレスを新たなアドレス一
致開始アドレスとして、アドレス一致開始レジスタ40
3aに格納する。
【0094】次に動作について図17のフローチャート
を用いて説明する。 (1)アドレス一致検出部403が制御プログラムアド
レス(プログラムカウンタ)402と、アドレス一致開
始レジスタ403aとのアドレス一致を検出し、トレー
ス要求信号404をトレースデータ収集部401へ出力
する(ST410)。
【0095】(2)トレースデータ収集部401はトレ
ース要求信号404を検知し(ST411)、 (3)アドレス一致が検出されたアドレスはトレースデ
ータ未収集であるか否かをトレース履歴レジスタ401
aによって判定する(ST412)。
【0096】(4)トレースデータ未収集の場合はトレ
ースデータを収集する(ST413)。 (5)トレースデータ収集完了後、トレース完了の情報
を、トレース履歴レジスタ401a内の制御プログラム
アドレス402に対応した位置に格納する(ST41
4)。
【0097】(6)アドレス書き換え部405が、制御
プログラムアドレス402に1加算したアドレスを新し
いトレース開始アドレスとして、アドレス一致検出部4
03のアドレス一致開始レジスタ403aに設定する
(ST415)。
【0098】(7)トレース収集後検出されたアドレス
が、トレース終了アドレスか否かを判定し、トレース終
了アドレスのデータ収集が完了するまで実行する(ST
416)。
【0099】従来のアドレス一致開始レジスタ403a
は、図44のようにトレースすべきアドレスを全て登録
しているが、この実施の形態では、図44のアドレス一
致開始レジスタ403aのトレース終了した開始アドレ
スは次のトレースすべき開始アドレスに書き換えられる
ので、トレース終了のアドレスまでトレースの要否を判
断する必要がなくなる。
【0100】以上のように、一度トレースデータを収集
した制御プログラムをトレース対象範囲から外すことに
より、トレースデータ収集済みの制御プログラムアドレ
スでアドレス一致を検出しないので無駄な判定処理をし
なくてよく、ループ制御などの繰り返し実行する部分で
のトレースデータ収集のオーバーヘッドが削減され、計
算機システムの負荷を軽減する。従って計算機処理の性
能向上が図れる。
【0101】実施の形態5. この実施の形態は、制御プログラムの書き換えを効率的
に行うものである。図18は、この発明の実施の形態5
を示す計算機システムの構成図である。図において、従
来のものと同一符号は同一又は相当部分を示し説明を省
略する。
【0102】6eは制御プログラムの実行完了を時間監
視する時間監視部で、他の処理を行うため一時処理を移
行している等の、実行中となっているモジュールに対し
て実行完了までの時間監視を行う。時間監視部6eが実
行完了のタイムアウトを出力すると、6gのプログラム
強制停止部がタイムアウトとなったプログラムを強制エ
ラー停止させる。
【0103】次に動作について図19のフローチャート
を用いて説明する。 (2)保守ツール1から新たな制御プログラムが出力さ
れると、要求処理部6がこれを検知し(ST510)、 (3)プログラム実行部7に検知した旨を知らせると共
に受信部6aがその新たな制御プログラムを受信する
(ST511)。
【0104】(4)受信部6aが更新に関わる制御プロ
グラムが実行中であるか否かを判定し(ST512)、 (5)実行停止なら、プログラム書き換え処理部6cに
制御プログラムの書き換えを指示する(ST513)。
【0105】(6)プログラム書き換え処理部6cは、
指示を受けて新たな制御プログラムに更新する(ST5
14)。 (7)制御プログラムが実行中であれば、時間監視部6
eに、例えば実行周期の3倍の時間の時間監視を指示
し、変更に係る制御プログラムの実行完了を監視する
(ST516)。
【0106】(8)一定時間経過しても実行完了しない
場合は、プログラム強制停止部6gがプログラム実行部
7に強制エラー停止を指示し、プログラムを停止させる
(ST517)。制御プログラムが停止した後、制御プ
ログラム5aを書き換える。
【0107】以上のように、実行中の制御プログラムに
対して書き換え要求があった場合、プログラム実行完了
までの時間監視を行い、一定時間内に完了しない時は、
強制エラー停止させて、プログラム書き換え可能な状態
にしてからプログラムを書き換えるようにしたので、長
時間待たされることなく一定時間内に制御プログラムの
書き換えを行い、メンテナンス性を向上させる効果があ
る。従って計算機処理の性能向上が図れる。
【0108】実施の形態6. この発明の実施の形態は複数の計算機で構成された計算
機システムにおいて、割込処理を効率的に行うものであ
る。図20は、この発明の実施の形態6を示す計算機シ
ステムの構成を示すブロック図である。図において、図
47に同一符号を付した従来のそれと同一、あるいは相
当部分の詳細な説明は省略する。
【0109】図20において、10−1〜10−Nはプ
ロセッサ(計算機)である。これらのプロセッサ10−
1〜10−Nはシステムバス2によって接続されてい
る。また、システムバス2によって各プロセッサ10−
1〜10−NはそれぞれIOインタフェース3に接続さ
れる。そして4はIOインタフェース3により接続され
るプラントシステムである。なお、ここでは各プロセッ
サ10−1〜10−NおよびIOインタフェース
【0110】3はスロットに挿入されるカードとして実
現する場合を例にとる。各プロセッサ10−2〜10−
Nもプロセッサ10−1と同一の構成であり、従来の図
47のプロセッサ10とも同一の構成をとる。606は
プラントシステム4からの各割込毎に、通知先プロセッ
サへの関係付け情報を保持する割込対応情報であり詳細
のデータ構造は図21に示す。
【0111】図21の割込対応情報の例では、割込番号
の値が0の時にはプロセッサ10−1へ通知し、割込番
号の値が1の時には何れのプロセッサにも通知しない、
割込番号の値が2の時にはプロセッサ10−Nへ通知す
ることを示す情報である。
【0112】次に動作について説明する。図22と図2
3は、IOインタフェース3の割込通知処理およびプロ
セッサ10−1〜10−Nの割込受信処理のフローチャ
ートであり、図22および図23のフローに従って説明
する。 (1)割込検出部605がプラントシステム4からの割
込検出を行う(ST600)。
【0113】(2)割込が正常検出であれば(ST60
1)、ステップST602へ行く。割込が正常か否か
は、例えば、割込番号の範囲をチェックして、範囲内で
あれば正常、範囲外であれば異常と判定する。 (3)割込通知部601が割込対応情報606の割込番
号に対応するプロセッサに、例えば、割込対応情報60
6の割込番号がプロセッサ10−1であれば、そのプロ
セッサに割込番号を通知する(ST602)。
【0114】(4)一方割込検出が正常検出でなけれ
ば、エラー番号603をセットし(ST604)、 (5)割込通知部601が、例えば、プロセッサ10−
1にIOエラーを通知する(ST605)。
【0115】(6)図23で、プロセッサ10では、I
O割込・エラー受信600がIOインタフェース3から
の通知を受信する(ST610)。 (7)IO割込通知であれば(ST611)、 (8)通知された割込番号の制御プログラム5aを起動
する(ST612)。
【0116】(9)一方IO割込通知でなければ(ST
611)、 (10)エラー番号603の読み込みを行い(ST61
4)、 (11)読み出したエラー番号の制御プログラム5aを
起動し、エラーに対応した処理を実行する(ST61
5)。
【0117】以上のように、計算機システムのIOイン
タフェースは、割込を検出すると、割込対応情報に指定
されたプロセッサのみに割込を通知し、指定されていな
いプロセッサには割込を通知しないため、割込の通知を
必要としないプロセッサのオーバヘッドが削減され、計
算機システムのスループットを向上させる。従って、計
算機システムの性能低下を防ぐことができる。
【0118】実施の形態7. この発明の実施の形態は複数の計算機で構成された計算
機システムにおいて、実施の形態6と同様の割込処理を
効率的に行うものである。図24は、この発明の実施の
形態7を示す計算機システムの構成を示すブロック図で
ある。
【0119】図24において、608はプラントシステ
ム4からの各割込毎に、通知先プロセッサへの関係付け
情報を保持する複数割込対応情報であり、その詳細は図
25に示す。また、実施の形態6の図20と同一符号は
詳細な説明は省略する。
【0120】図25は、割込対応情報のデータ構造を例
示するもので、割込番号の値が0の時にはプロセッサ1
0−1とプロセッサ10−5へ、割込番号の値が1の時
には何れのプロセッサにも通知せず、割込番号の値が2
の時にはプロセッサ10−2とプロセッサ10−3とプ
ロセッサ10−Nへ通知することを示す情報である。
【0121】次に動作について説明する。図26は、I
Oインタフェース3の割込通知処理のフローチャートで
ある。プロセッサ10−1〜10−Nの割込受信処理の
フローチャートは、実施の形態6の図23と同一である
ため省略する。
【0122】図26のフローに従って説明する。 (1)割込検出部605がプラントシステム4からの割
込検出を行う(ST620)。 (2)割込が正常検出であれば(ST621)、
【0123】(3)割込通知部601が、複数割込対応
情報608の割込番号に対応する一つまたは複数のプロ
セッサに割込番号を通知する(ST622)。 (4)一方割込検出が正常検出でなければ、エラー番号
603をセットし(ST624)、 (5)割込通知部601がプロセッサにIOエラーを通
知する(ST625)。以降の処理は、図23と同一で
ある。
【0124】以上のように、計算機システムのIOイン
タフェースは、割込を検出すると、割込対応情報に指定
された1つまたは複数のプロセッサへ割込を通知し、指
定されていないプロセッサには割込を通知しないため、
計算機システムの性能低下を防ぐことができる。また、
適切な設定により各プロセッサへの最適な負荷分散が可
能になるという効果がある。従って計算機処理の性能向
上が図れる。
【0125】実施の形態8. この発明の実施の形態は複数の計算機で構成された計算
機システムにおいて、割込処理を効率的に行うものであ
る。図27は、この発明の実施の形態8を示す計算機シ
ステムの構成を示すブロック図である。図において、従
来の図47と同一符号を付したものは同一部分であるの
で詳細な説明は省略する。
【0126】図において、10−1〜10−Nはプロセ
ッサである。これらのプロセッサ10−1〜10−Nは
システムバス2によって接続されている。また、システ
ムバス2によって各プロセッサ10−1〜10−Nはそ
れぞれIOインタフェース3に接続される。そして、I
Oインタフェース3はプラントシステム4に接続されて
いる。
【0127】なお、ここでは各プロセッサ10−1〜1
0−NおよびIOインタフェース3はスロットに挿入さ
れるカードとして実現する場合を例にとる。各プロセッ
サ10−2〜10−Nもプロセッサ10−1と同一の構
成であり、従来の図47のプロセッサ10とも同一の構
成をとる。
【0128】607はエラー番号毎に、通知先プロセッ
サへの関係付け情報を保持するエラー対応情報である。
【0129】また、図28は、例えば実施の形態8のエ
ラー対応情報のデータ構造を例示したもので、エラー番
号の値が0の時には、プロセッサ10−1とプロセッサ
10−5へ、エラー番号の値が1の時には、何れのプロ
セッサにも通知せず、エラー番号の値が2の時には、プ
ロセッサ10−2とプロセッサ10−3とプロセッサ1
0−Nへ通知することを示す情報である。
【0130】次に動作について説明する。図29と図3
0は、IOインタフェース3の割込通知処理およびプロ
セッサ10−1〜10−Nの割込受信処理のフローチャ
ートである。図29および図30のフローに従って説明
する。
【0131】(1)割込検出部605がプラントシステ
ム4からの割込検出を行う(ST630)。 (2)割込が正常検出であれば(ST631)、割込通
知部601が、例えば図28に示す割込対応情報606
の割込番号に対応する、一つまたは複数のプロセッサに
割込番号(図21または図25に示すプロセッサ)を通
知する(ST632)。
【0132】(3)一方割込検出が正常検出でなけれ
ば、割込通知部601がエラー対応情報607のエラー
番号に対応する一つまたは複数のプロセッサにエラー番
号を通知する(ST634)。 (4)プロセッサ10では、IO割込・エラー受信60
0がIOインタフェース3からの通知を受信する(ST
640)。
【0133】(5)IO割込通知であれば(ST64
1)、 (6)通知された割込番号の制御プログラム5aを起動
する(ST642)。 (7)一方IO割込通知でなければ(ST641)、 (8)通知されたエラー番号の制御プログラム5aを起
動し、エラーに対応した処理を実行する(ST64
4)。
【0134】以上のように、計算機システムのIOイン
タフェースは、割込検出動作でエラー検出時に、割込を
通知する代わりに、エラー要因毎のエラー対応情報で指
定された1つまたは複数のプロセッサにエラーを通知
し、指定されていないプロセッサにはエラーを通知しな
いため、計算機システムの性能低下を防ぐことができ
る。
【0135】また、プラントからの割込検出処理での各
エラーを、単一のプロセッサに通知することも、要因毎
に各プロセッサへ通知することも、全てのプロセッサへ
通知することも可能であり、このため、単一のプロセッ
サに通知することにより他のプロセッサにエラーの影響
を及ぼさないシステムや、全てのプロセッサへ通知する
ことにより同一の異常処理を行わせるシステム等の多様
なシステムの構築が可能になるという効果がある。従っ
て計算機処理の性能向上が図れる。
【0136】実施の形態9. この発明の実施の形態は複数の計算機で構成された計算
機システムにおいて、故障に対するバックアップを行う
ものである。図31は、この発明の実施の形態を示す計
算機システムの構成を示すブロック図である。
【0137】図において、653はプロセッサ内で発生
するエラーを検出し、このエラー情報を他プロセッサや
IOインタフェース3に通知する故障検出部、650は
プロセッサ10−1〜10−Nからの故障発生通知を受
けるプロセッサカード故障検出部、651はプロセッサ
の故障発生により、割込対応情報606やエラー対応情
報607を変更する割込/エラー対応情報更新部であ
る。
【0138】652は割込/エラー対応情報部651
が、故障プロセッサの変更の参照にするプロセッサ変更
カードテーブルであり、図33に詳細を示す。図33
は、例えばIOインタフェース3に接続される保守ツー
ルにより設定される。
【0139】次に動作について説明する。図32は、プ
ロセッサに故障が発生した場合の動作を示すフローチャ
ートである。 (1)プロセッサ10−1にメモリのパリティエラー等
の故障が発生したとすると、故障検出部653が認識し
(ST670)、
【0140】(2)他プロセッサ及びIOインタフェー
ス3に故障が発生したことを通知する(ST671)。 (3)IOインタフェース3のプロセッサカード故障検
出部650はプロセッサからの故障通知を認識する。
(ST672)
【0141】(4)プロセッサ故障カード検出部650
は割込/エラー対応情報更新部651に割込対応情報6
06とエラー対応情報607の通知先プロセッサの変更
が必要なことを通知する(ST673)。 (5)割込/エラー対応情報更新部651は、例えば図
33に示すプロセッサ変更カードテーブル652を参照
し(ST674)、
【0142】(6)故障となったプロセッサの変更プロ
セッサを得る(ST675)。図33では、例として、
プロセッサ10−1が故障の時はプロセッサ10−2、
プロセッサ10−(N−1)が故障の時は、プロセッサ
10−Nが対応する場合を示している。
【0143】(7)割込/エラー対応情報更新部651
は、割込対応情報606とエラー対応情報607を検索
し、故障となったプロセッサ番号が含まれているか否か
を調べる(ST676)。
【0144】(8)プロセッサ番号が含まれていれば
(ST677)、 (9)そのプロセッサ番号に対応する変更プロセッサ番
号により、割込対応情報606とエラー対応情報607
の故障となったプロセッサ番号を変更する(ST67
8)。 (10)プロセッサ番号が含まれていなければ(ST6
77)、割込対応情報606とエラー対応情報607は
そのままとしておく(ST679)。
【0145】以上のように、この計算機システムは、要
求先プロセッサが故障状態になった場合でも、該故障状
態を認識するプロセッサカード故障認識部と、割込検出
時/エラー検出時に、その通知先を変更する割込/エラ
ー対応処理更新部により、要求先プロセッサを変更する
ので、プロセッサ故障時でもプラントシステムからの要
求を処理できる。従って計算機システムの性能向上が図
れる。
【0146】実施の形態10. この発明の実施の形態は複数の計算機(プロセッサ)の
各々が各カード単位で構成された計算機システムにおい
て、計算機(プロセッサ)の故障などでカードを差し替
えたり、新たにカードを取り付けたりした場合に、カー
ドの設定内容を自動的に設定するものである。
【0147】図34はこの発明の実施の形態を示す図で
あり、この図は従来の図50の故障監視プロセッサ11
内にバックアップデータ情報エリア25を加えたもので
ある。このバックアップデータ情報エリア25は、故障
監視プロセッサ11内の書き換え可能な不揮発性メモリ
に設けられ、前回設定された故障処理設定テーブル部の
内容を格納するものである。
【0148】図35は、バックアップデータ情報エリア
25の詳細情報である。図において、32−0a〜32
−Naはカードの枚数の枚数番号に対応したカードの種
類を判別するカード種別コード、33−0a〜33−N
aはそのカードの設定内容で構成され、スロット毎の設
定情報となるためスロットに挿入されるカード枚数に係
わらずバックアップデータ情報エリアは固定長としてい
る。
【0149】また、構成テーブル部20のデータ構造は
従来の図52のデータ構造であり、また、故障処理設定
テーブル部21のデータ構造は従来の図51のデータ構
造である。図36は、故障監視部24の故障処理設定テ
ーブル部21の初期化処理における動作のフローチャー
トである。
【0150】次に動作について説明する。 (1)図34のように構成された故障監視プロセッサ1
1において、故障監視部24の初期化処理において、現
在のシステム構成が再立ち上げ前のシステム構成と同じ
かどうかチェックするために、構成テーブル部20から
カード種別コード32ー0b〜32−Nb(図52で図
示)が0以外であれば有効スロット番号とし、その有効
スロット番号に相当するカード種別コード32ー0b〜
32−Nbを読み取る(ST710)。
【0151】(2)前記のST710で得た有効スロッ
ト番号と再立ち上げ前のシステム構成で前回まで使用さ
れていた故障処理設定テーブル部21のスロット番号3
1ー1とが一致するかどうか比較する(ST713)。
【0152】(3)一致する場合(ST714)、 (4)そのスロットに挿入されているカードの種類をチ
ェックするために、ST710で得た該有効スロットの
カード種別コード32ー1b(図52で図示)が故障処
理設定テーブル部21(図51で図示)のカード種別コ
ード32ー1と比較し、立ち上げ前のカード種別かを判
断する(ST715)。
【0153】(5)一致する場合(ST716)、カー
ド構成に変更がないと判断し、前回設定された設定内容
33ー1がそのまま使用される。
【0154】(6)一方、図52の構成テーブル部20
の有効スロット番号と図53の故障処理設定テーブル部
21のスロット番号31ー1の比較(ST713)に
て、 (7)不一致が発生すると(ST714)、
【0155】(8)再立ち上げ前の設定で稼働させるた
め、以前設定されていた故障処理設定テーブル部21を
保存したバックアップデータ情報エリア25から設定内
容を採取するが、そのバックアップデータ情報エリア2
5の内容が現在のシステム構成を満たしているかをチェ
ックする。まず、該当スロットに対応する図35のバッ
クアップデータ情報エリア25のカード種別コード32
−0aと図52の構成テーブル20のカード種別コード
を比較する(ST719)。
【0156】(10)一致する場合(ST720)、 (11)該当スロットのバックアップデータ情報エリア
25の設定内容33−0aが前回設定されていた設定で
あるため、そのデータをを故障処理設定テーブル部21
の該当カード設定情報の設定内容33ー1に書き込む
(ST722)。
【0157】(12)一致しない場合(ST720)、 (13)以前にその該当スロットに設定したことのない
カードの種類が新規に挿入されたと判断し、予め用意し
ていた設定内容の標準値をバックアップデータ情報エリ
ア25の設定内容33−0aと、故障処理設定テーブル
部21の設定内容33ー1にそれぞれ書き込む(ST7
21)。
【0158】(14)上記処理をカード枚数分繰り返し
(ST723)行うことにより故障処理設定テーブル部
が有効となる。
【0159】例えば、あるプロセッサにてパリティエラ
ーが発生し、そのプロセッサを抜き取り、再立ち上げを
行った場合、抜き取った以外の挿入されている他のプロ
セッサに対しては、構成テーブル部20の有効スロット
番号のカード種別コード32ー1bとそのスロットに該
当する故障処理設定テーブル部21のカード種別コード
は一致するので、設定内容は変わらず処理される。
【0160】再び、不具合プロセッサと同じカード種別
を持つプロセッサをスロットに差し再立ち上げを行う
と、新たにスロットに差し込んだプロセッサの設定内容
のみをバックアップデータ情報エリア25から読み取
り、その設定内容を故障処理設定テーブルの該当エリア
に書き込む。
【0161】よって、新規カードに伴う人手による新た
な設定なしで不具合発生前の設定内容で、計算機システ
ムが稼働することができる。
【0162】一方、バックアップデータ情報エリア25
は、メンテナンスツール等から故障処理設定テーブルを
書き換えるときに、同時に設定された内容を各スロット
別に分類して書き込まれるため、設定値はその設定時点
で保存される。また、バックアップデータ情報エリア2
5にデータが全く設定されていない場合、予め用意して
いる標準値をバックアップメモリデータ情報エリアに書
き込み立ち上げを行う。
【0163】なお、故障処理プロセッサ11は、プロセ
ッサ10ー1〜10ーNのいずれかにその機能を持たせ
るようにしてもよい。
【0164】以上のように、この計算機システムは、故
障監視プロセッサにバックアップデータ情報エリアを設
け、カード構成の変更が発生しても故障処理設定テーブ
ル部の内容は前回使用されていた設定内容を使用でき、
また、現状あるS/Wとのインタフェースの互換を保つ
事ができ、H/Wの変更なしで実現できる。
【0165】それ故、スロットから一旦カードを抜き、
立ち上げ直しても、他のカードに設定されていた故障処
理設定テーブル部の変更はなく、また、同一カードを同
一スロットに差すと、前回そのカードに設定されていた
設定内容で動作可能となり、また、前回設定されていな
かったカードを差した場合、あるいは、前回設定されて
いなかったスロットにカードを差した場合、標準値等の
所定の設定データが故障処理設定テーブル部に格納さ
れ、その設定データを使用して外部出力、及び、ユニッ
ト制御を行うことが可能となる。
【0166】実施の形態11. この実施の形態10の変形例として、故障処理設定テー
ブル部21にバックアップデータ情報エリア25の機能
を持たせる例を説明する。
【0167】上記の実施の形態10では、例えば、現在
設定されている故障処理設定テーブル21の内容を保守
ツール等を用いて変更した後、トラブルなどによりカー
ドを抜き取って再立ち上げした時、故障処理設定テーブ
ル部21には、その抜き取ったカードの設定内容は削除
される。
【0168】その後、カードの修理、交換などにより再
びスロットに挿入して立ち上げると、前回設定していた
内容は、故障処理設定テーブル部21に入っていないた
め、バックアップエリアから前回の設定内容を取ってく
るようにしている。
【0169】この実施の形態11では、故障処理設定テ
ーブル部21のデータにフラグを設け、カードを抜き取
った場合は、「カードなし」のフラグを立てて、その設
定内容が削除されないようにする。そしてカードが挿入
された場合に、「カードあり」としてフラグを下ろし
て、故障処理設定テーブル部21の設定内容で挿入され
たカードを設定する。
【0170】このように実施の形態11は、実施の形態
10と同様の効果を有する。
【0171】
【発明の効果】(1)以上のように、この発明の計算機
によれば、分岐命令として、命令オペランドに分岐先の
論理アドレスを指示しているので、命令実行時に直接分
岐命令として扱うことができるため、それぞれの分岐先
のアドレスを格納しておく分岐ブロックを削除すること
が可能となり、命令実行時に必要なバックアップメモリ
サイズが大幅に削減できるという効果がある。また、プ
ログラムの実行性能が向上する。
【0172】(2)また、分岐命令として、命令オペラ
ンドに分岐先の物理アドレスを指示しているので、命令
実行時に直接分岐命令として扱うことができるため、そ
れぞれの分岐先のアドレスを格納しておく分岐ブロック
を削除することが可能となり、命令実行時に必要なバッ
クアップメモリサイズが大幅に削減できるという効果が
ある。また、命令実行時に論理アドレスから物理アドレ
スへ変換する処理が削除されるため、命令実行速度を向
上させるという効果がある。
【図面の簡単な説明】
【図1】 この発明の実施の形態1による計算機システ
ムを示す構成図である。
【図2】 図1の計算機システムのプログラム書換え部
の動作を示すフローチャートである。
【図3】 図1の計算機システムのプログラム実行部の
動作を示すフローチャートである。
【図4】 図1の計算機システムのオペランド構成図で
ある。
【図5】 この発明の実施の形態1による制御プログラ
ム実行時のアドレス変換処理を説明する図である。
【図6】 この発明の実施の形態1による分岐処理実行
時の説明図である。
【図7】 この発明の実施の形態2による計算機システ
ムを示す構成図である。
【図8】 図7の計算機システムのプログラム書換え部
の動作を示すフローチャートである。
【図9】 図7の計算機システムのプログラム実行部の
動作を示すフローチャートである。
【図10】 図7の計算機システムのオペランド作成の
図である。
【図11】 この発明の実施の形態2による分岐処理実
行時の説明図である。
【図12】 この発明の実施の形態3による計算機シス
テムを示す構成図である。
【図13】 図12の計算機システムの受信部の動作を
示すフローチャートである。
【図14】 図12の計算機システムの送信部の動作を
示すフローチャートである。
【図15】 図12の計算機システムのキャンセルコマ
ンド構造例である。
【図16】 この発明の実施の形態4による計算機シス
テムを示す構成図である。
【図17】 図16の計算機システムの動作を示すフロ
ーチャートである。
【図18】 この発明の実施の形態5による計算機シス
テムを示す構成図である。
【図19】 図18の計算機システムのプログラム書き
換え処理部の動作を示すフローチャートである。
【図20】 この発明の実施の形態6による計算機シス
テムを示すブロック図である。
【図21】 この発明の実施の形態6による割込対応情
報である。
【図22】 実施の形態6のIOインタフェースの割込
通知処理の流れを示すフローチャートである。
【図23】 この発明の実施の形態6によるプロセッサ
の割込受信処理の流れを示すフローチャートである。
【図24】 この発明の実施の形態7による計算機シス
テムを示すブロック図である。
【図25】 この発明の実施の形態7による割込対応情
報の図である。
【図26】 この発明の実施の形態7によるIOインタ
フェースの割込通知処理の流れを示すフローチャートで
ある。
【図27】 この発明の実施の形態8による計算機シス
テムを示すブロック図である。
【図28】 この発明の実施の形態8によるエラー対応
情報の図である。
【図29】 この発明の実施の形態8によるIOインタ
フェースの割込通知処理の流れを示すフローチャートで
ある。
【図30】 この発明の実施の形態8によるプロセッサ
の割込受信処理の流れを示すフローチャートである。
【図31】 この発明の実施の形態9による計算機シス
テムを示すブロック図である。。
【図32】 この発明の実施の形態9による処理を示す
フローチャートである。
【図33】 この実施の形態9によるプロセッサ変更カ
ードテーブルの構成図である。
【図34】 この発明の実施の形態10による計算機シ
ステムの構成図である。
【図35】 この発明の実施の形態10によるバックア
ップデータエリアの構成図である。
【図36】 この発明の実施の形態10による故障処理
設定テーブルの管理手段を示すフローチャートである。
【図37】 従来の計算機システムのブロック図であ
る。
【図38】 従来の計算機システムの書換処理部の動作
を示すフローチャートである。
【図39】 従来の計算機システムの命令実行部の動作
を示すフローチャートである。
【図40】 従来の計算機システムのページ管理テーブ
ルの構成図である。
【図41】 従来の計算機システムのオペランド構成図
である。
【図42】 従来の計算機システムの分岐処理の説明図
である。
【図43】 従来の計算機システムのプログラム実行部
のトレース機能のブロック図である。
【図44】 図43のトレース履歴レジスタのデータの
構成図である。
【図45】 従来の計算機システムのプログラム実行部
のトレース機能のフローチャートである。
【図46】 従来の計算機システムのプログラム書き換
え処理部の動作を示すフローチャートである。
【図47】 従来の計算機システムのIO割込通知機能
のブロック図である。
【図48】 図47のIOインタフェースの割込通知処
理の流れを示すフローチャートである。
【図49】 図47のプロセッサの割込受信処理の流れ
を示すフローチャートである。
【図50】 従来の計算機システムの構成図である。
【図51】 従来の故障処理設定テーブルの構成図であ
る。
【図52】 従来の構成テーブル部の構成図である。
【図53】 従来の故障処理設定テーブルの管理手段を
示すフローチャートである。
【符号の説明】
1 保守ツール、1a ハードディスク、2 システム
バス、4 プラント、 3 IOインタフェース、4
プラントシステム、5 メモリ、 5a 制御プログラ
ム、5b ページ管理テーブル、5c 分岐ブロック、
6 要求処理部、6a 受信部、6b 送信部、6c
プログラム書換え部、6d メンテナンス処理部、6e
時間監視部、 6f キャンセル処理部、6g プロ
グラム強制停止部、 7 プログラム実行部、8 IO
割込受信、10、10−1〜10−N プロセッサ、2
0 構成テーブル部、21 故障処理設定テーブル部、
22 各カードの故障情報、23 故障処理出力部、2
4 故障処理故障監視部、25 バックアップデータ情
報エリア、400 トレースメモリ、401 トレース
データ収集部、401a トレース履歴レジスタ、40
2 制御プログラムアドレス、403 アドレス一致検
出部、403a アドレス一致開始レジスタ、403b
アドレス一致終了レジスタ、404 トレース信号、
405 アドレス書き換え部、600 IO割込・エラ
ー受信、601 割込通知部、602 割込番号、60
3 エラー番号、604 プラントデータ、605 割
込検出部、606 割込対応情報、607 エラー対応
情報、608 複数割込対応情報、650 プロセッサ
カード故障検出部、651 割込/エラー対応情報更新
部、652 プロセッサ変更カードテーブル、653
故障検出部。
フロントページの続き (72)発明者 三好 守 兵庫県神戸市兵庫区浜山通6丁目1番2 号 三菱電機コントロールソフトウエア 株式会社内 (72)発明者 斉藤 正年 兵庫県神戸市兵庫区浜山通6丁目1番2 号 三菱電機コントロールソフトウエア 株式会社内 (72)発明者 中野 博之 東京都千代田区大手町二丁目6番2号 三菱電機エンジニアリング株式会社内 (72)発明者 戸田 明男 東京都千代田区丸の内二丁目2番3号 三菱電機株式会社内 (56)参考文献 特開 平4−90006(JP,A) 特開 平2−85944(JP,A) 特開 平2−125333(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 11/28 G06F 9/50 G06F 9/32

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 プログラムの作成または書換え操作が計
    算機とは別の保守ツールにて行われる計算機において、 上記保守ツールから転送されてくるプログラムの順序
    と、メモリ上の物理的なプログラム格納順序とが、必ず
    しも一致していないシステムに対し、保守ツールから転
    送されてきたプログラムをメモリ上に登録または書き換
    える際、上記プログラム中の分岐命令のオペランドに格
    納されている分岐先ブロック番号を、上記プログラムの
    先頭からの命令ステップ数で示す分岐先論理アドレスに
    変換し、分岐命令のオペランドとして計算機のメモリ上
    に登録する手段と、 上記分岐命令を実行する際、上記分岐命令のオペランド
    の分岐先論理アドレスを分岐先物理アドレスに変換して
    分岐命令を実行する手段とを備え、メモリ空間を効率的
    に使用することを特徴とする計算機。
  2. 【請求項2】 プログラムの作成または書換え操作が計
    算機とは別の保守ツールにて行われる計算機において、 上記保守ツールから転送されてくるプログラムの順序
    と、メモリ上の物理的なプログラム格納順序とが、必ず
    しも一致していないシステムに対し、保守ツールから転
    送されてきたプログラムをメモリ上に登録または書き換
    える際、上記プログラム中の分岐命令のオペランドに格
    納されている分岐先ブロック番号を、上記メモリ先頭か
    らのオフセットアドレスで示す分岐先物理アドレスに変
    換し、分岐命令のオペランドとして計算機のメモリ上に
    登録する手段と、 上記分岐命令を実行する際、上記分岐命令のオペランド
    の分岐先物理アドレスに基づいて分岐命令を実行する手
    段とを備え、メモリ空間を効率的に使用することを特徴
    とする計算機。
JP10652596A 1996-04-26 1996-04-26 計算機および計算機システム Expired - Lifetime JP3462001B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10652596A JP3462001B2 (ja) 1996-04-26 1996-04-26 計算機および計算機システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10652596A JP3462001B2 (ja) 1996-04-26 1996-04-26 計算機および計算機システム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2002196234A Division JP2003067218A (ja) 2002-07-04 2002-07-04 計算機および計算機システム

Publications (2)

Publication Number Publication Date
JPH09293003A JPH09293003A (ja) 1997-11-11
JP3462001B2 true JP3462001B2 (ja) 2003-11-05

Family

ID=14435820

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10652596A Expired - Lifetime JP3462001B2 (ja) 1996-04-26 1996-04-26 計算機および計算機システム

Country Status (1)

Country Link
JP (1) JP3462001B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100735552B1 (ko) 2005-09-23 2007-07-04 삼성전자주식회사 코드 메모리 상의 프로그램의 코드 크기를 줄이는 방법
JP2007226445A (ja) * 2006-02-22 2007-09-06 Toshiba Corp 分散制御システム

Also Published As

Publication number Publication date
JPH09293003A (ja) 1997-11-11

Similar Documents

Publication Publication Date Title
US5828823A (en) Method and apparatus for storing computer data after a power failure
US6574709B1 (en) System, apparatus, and method providing cache data mirroring to a data storage system
US5511164A (en) Method and apparatus for determining the source and nature of an error within a computer system
EP0945801B1 (en) External storage device and method for data saving, data backup
US5954822A (en) Disk array apparatus that only calculates new parity after a predetermined number of write requests
CN1139036C (zh) 防止对先前的故障设备完成加载或存储操作的方法及装置
US5889933A (en) Adaptive power failure recovery
US8838918B2 (en) Information processing apparatus and data backup method
US7100080B2 (en) Write cache recovery after loss of power
US20070055969A1 (en) System and method for updating firmware
US5528755A (en) Invalid data detection, recording and nullification
US7313682B2 (en) Method and system for updating boot memory that stores a fail-safe reset code and is configured to store boot code and boot updater code
CN100422945C (zh) 在信息存储和检索系统中提供故障恢复保护的设备和方法
US20060294299A1 (en) Techniques to verify storage of information
EP0608344A1 (en) System for backing-up data for rollback
US20060200500A1 (en) Method of efficiently recovering database
JP4080227B2 (ja) データ検証方法およびディスクアレイ装置
JP3472008B2 (ja) フラッシュメモリ管理方法
EP1477898B1 (en) A disk array system based on disks with a fixed-length unit of access
JP3851093B2 (ja) データ転送方法及びデータ処理システム
JP3462001B2 (ja) 計算機および計算機システム
US20060015769A1 (en) Program, method and apparatus for disk array control
US7257030B2 (en) Operating a storage component
US20080282239A1 (en) Apparatus and Method to Update Code in an Information Storage and Retrieval System while that System remains in Normal Operation
JP2002543521A (ja) 自動的にモジュールをコンピュータシステムに再び組み込む方法および装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070815

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080815

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080815

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090815

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090815

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100815

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110815

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110815

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120815

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120815

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130815

Year of fee payment: 10

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term