JPH1131090A - プロセッサシステムおよび選択プログラムを記録した媒体 - Google Patents

プロセッサシステムおよび選択プログラムを記録した媒体

Info

Publication number
JPH1131090A
JPH1131090A JP9187907A JP18790797A JPH1131090A JP H1131090 A JPH1131090 A JP H1131090A JP 9187907 A JP9187907 A JP 9187907A JP 18790797 A JP18790797 A JP 18790797A JP H1131090 A JPH1131090 A JP H1131090A
Authority
JP
Japan
Prior art keywords
master
processor
program
error
test
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
JP9187907A
Other languages
English (en)
Inventor
Satoshi Sato
智 佐藤
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 JP9187907A priority Critical patent/JPH1131090A/ja
Publication of JPH1131090A publication Critical patent/JPH1131090A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】 マスタプロセッサが走行不能に陥った場合に
もプロセッサシステム全体が停止せず、試験を続行す
る。 【解決手段】 CPU2,3〜4とメモリ5,6〜7を
有しマスタとして動作するマスタプロセッサ8とスレー
ブとして動作する複数のスレーブプロセッサ9,10を
並列に接続し、試験プログラム14〜16の実行中にマ
スタプロセッサ8が走行不能となったとき次のマスタプ
ロセッサ8を選択するために、マスタプロセッサ8に、
マスタプロセッサ8が走行不能となるエラーを検出する
エラー検出処理手段23と、スレーブプロセッサ9,1
0の一つに、マスタプロセッサ8が走行不能となること
を監視する監視手段26と、マスタプロセッサ8内のマ
スタプログラム11をコピーしたマスタコピープログラ
ム27を設けた。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、CPUとメモリを
有するPE(プロセッサエレメント(以下、プロセッサ
という))を並列に接続したプロセッサシステムおよび
全プロセッサを監視するプロセッサが走行不能に陥った
とき次のプロセッサを選択する選択プログラムに関す
る。
【0002】プロセッサシステムとしては、共有メモリ
型のマルチプロセッサシステムと分散メモリ型のパラレ
ルプロセッサシステムがある。共有型のマルチプロセッ
サシステムは、複数のCPUが1つの共有のメモリにそ
れぞれ接続されている(図47、参照)。この共有メモ
リ型のマルチプロセッサシステムは、メモリが共有され
ていて、データのやりとりが容易であるが、反面独立性
が低い。
【0003】一方、分散型のパラレルプロセッサシステ
ムは、CPUとメモリから構成される複数のプロセッサ
が高速ネットワークに並列に接続された構成である(図
48、参照)。分散型のパラレルプロセッサシステム
は、共有メモリ型のマルチプロセッサと違い、プロセッ
サ間の独立性が高いが、反面各プロセッサが独立してメ
モリを有しているため、互いにメモリのデータを見るた
めには高速ネットワークを介して行わなくてはならない
ためにプログラミングが難しくなっている。
【0004】このようなパラレルプロセッサシステムに
おいて、試験プログラムを走行させ、監視する場合に
は、パラレルプロセッサシステムの1つのプロセッサが
全プロセッサを集中的に制御、監視するが、この制御、
監視するプロセッサが走行不能に陥った場合でも他のプ
ロセッサが試験プログラムの制御、監視を引き継ぎ、パ
ラレルプロセッサシステムが停止しないようにすること
が必要である。
【0005】
【従来の技術】従来のパラレルプロセッサシステムとし
ては、例えば図49に示すようなものがある。図49に
おいて、101は高速ネットワークであり、高速ネット
ワーク101にはCPU102,103,104とメモ
リ105,106,107を有する複数のプロセッサ1
08,109,110がそれぞれ接続されている。
【0006】マスタとなるマスタプロセッサ108のメ
モリ105にはマスタプログラム111と試験プログラ
ム112が格納されている。また、スレーブとなるスレ
ーブプロセッサ109,110のメモリ106,107
にはスレーブプログラム113,114と試験プログラ
ム115,116が格納されている。マスタプロセッサ
108、スレーブプロセッサ109,110はサービス
プロセッサ117を介して表示部を有する端末装置11
8に接続されている。
【0007】試験プログラム112,115,116
は、ランダムデータ列を生成し、ランダムデータ列から
命令列を作成し、命令列を実行することで自分自身を試
験する。試験プログラム112,115,116を監視
するときは、マスタプログラム111とスレーブプログ
ラム113,114がそれぞれ監視し、さらにマスタプ
ログラム111がスレーブプログラム113,114を
集中的に制御、監視する。すなわち、マスタプログラム
111は、スレーブプログラム113,114を管理
し、サービスプロセッサ117を介して端末装置118
にデータを表示する。また、データプログラム111に
はHMI(Human Machine Interface )を制御する図示
しない制御プログラムが設けられている。
【0008】
【発明が解決しようとする課題】しかしながら、このよ
うな従来のプロセッサシステムにあっては、マスタプロ
グラムが走行するプロセッサは、HMIを制御する制御
プログラムが走行できる環境が最低限保証できているこ
とを前提に構成されているため、マスタプログラムが走
行しているプロセッサに障害が生じて走行不能に陥った
場合、または他のプロセッサの障害の影響によってマス
タプログラムが走行不能に陥った場合には、プロセッサ
システム全体を制御することができなくなっている。ま
た、HMIを制御する制御プログラムが障害を含むマス
タプロセッサ上で走行されていて、これが停止した場
合、他の障害要因を保持していてもこれを伝達すること
でできないという問題もあった。
【0009】本発明は、このような従来の問題に鑑みて
なされたものであって、マスタプロセッサに障害が発生
し、マスタプロセッサが走行不能に陥った場合でもただ
1つのプロセッサの障害のためにプロセッサシステムを
停止させず、試験を続行することができ、また、HMI
制御プログラムが走行不能に陥った場合でも障害を伝達
することができるプロセッサシステムおよび選択プログ
ラムを記録した媒体を提供することを目的とする。
【0010】
【課題を解決するための手段】この目的を達成するため
に、本発明は、次のように構成する(図1、参照)。請
求項1の発明は、CPU2〜4とメモリ5〜7を有しマ
スタとして動作するマスタプロセッサ8とスレーブとし
て動作する複数のスレーブプロセッサ9,10を並列に
接続し、試験プログラムの実行中に前記マスタプロセッ
サ8が走行不能となったとき次のマスタプロセッサを選
択するプロセッサシステムにおいて、前記マスタプロセ
ッサ8に、マスタプロセッサ8が走行不能となるエラー
を検出するエラー検出処理手段23と、前記スレーブプ
ロセッサ9,10の一つに、前記マスタプロセッサ8が
走行不能となることを監視する監視手段26と、前記マ
スタプロセッサ8内のマスタプログラム11をコピーし
たマスタコピープログラム27を設けた。
【0011】請求項2の発明は、CPUとメモリを有し
マスタとして動作するマスタプロセッサとスレーブとし
て動作する複数のスレーブプロセッサを並列に接続し、
試験プログラムをそれぞれ実行するプロセッサシステム
において、前記スレーブプロセッサは、自己のエラー数
をカウントするエラー数カウント手段と、カウントした
エラー数を前記マスタプロセッサに通知するエラー数通
知手段と、マスタプロセッサからの指示によりマスタプ
ロセッサのマスタプログラムをコピーするマスタプログ
ラムコピー手段と、を備え、前記マスタプロセッサは、
前記スレーブプロセッサからのエラー数を受信し、自己
のカウントしたエラー数を含めてエラー数の少ないプロ
セッサを選択するプロセッサ選択手段と、自己のマスタ
プログラムをエラー数の少ないプロセッサに移動するマ
スタプログラム移動手段と、を備える。
【0012】請求項3の発明は、CPUとメモリを有し
マスタとして動作するマスタプロセッサとスレーブとし
て動作する複数のスレーブプロセッサを並列に接続し、
試験プログラムをそれぞれ実行して障害を発見するプロ
セッサシステムにおいて、前記マスタプロセッサに、エ
ラーが発生したときのシード値を前記スレーブプロセッ
サより収集するシード値収集手段と、次回の試験では収
集したシード値をもとに前記試験プログラムを起動する
試験プログラム起動手段と、を備える。
【0013】請求項4の発明は、CPUとメモリを有し
マスタとして動作するマスタプロセッサとスレーブとし
て動作する複数のスレーブプロセッサを並列に接続し、
試験プログラムをそれぞれ実行して障害を発見するプロ
セッサシステムにおいて、前記マスタプロセッサに、項
目ごとに決められた回数と同一のシード値を設定する項
目設定手段と、設定された項目ごとに試験プログラムを
起動する第3の試験プログラム起動手段と、試験した結
果発生したエラー回数を項目ごとに算出するエラー回数
算出手段と、算出された項目ごとのエラー回数を表示処
理する表示処理手段と、を備える。
【0014】請求項5の発明は、CPUとメモリを有し
マスタとして動作するマスタプロセッサとスレーブとし
て動作する複数のスレーブプロセッサを並列に接続し、
試験プログラムをそれぞれ実行して障害を発見するプロ
セッサシステムにおいて、前記マスタプロセッサに、試
験プログラムを起動して所定の時間間隔でエラー回数を
前記スレーブプロセッサごとに収集するエラー回数収集
手段と、収集したエラー回数の累積値を前記スレーブプ
ロセッサごとに算出するエラー回数累積値算出手段と、
エラー回数累積値を前記スレーブプロセッサごとに表示
処理するエラー回数累積表示処理手段と、を備える。
【0015】請求項6の発明は、CPUとメモリを有し
マスタとして動作するマスタプロセッサとスレーブとし
て動作する複数のスレーブプロセッサを並列に接続し、
試験プログラムの実行中に前記マスタプロセッサが走行
不能となったとき次のマスタプロセッサを選択するため
にスレーブプロセッサに設けられた選択プログラムを記
録した媒体において、前記マスタプロセッサが走行不能
となったことを監視する監視手段と、前記マスタプロセ
ッサ内のマスタプログラムをコピーしたマスタプログラ
ムを設けたことを特徴とする選択プログラムを記録した
媒体よりなる。
【0016】このような構成を備えた本発明によれば、
予めバックアップするプロセッサを1台決めておき、マ
スタプロセッサ、マスタプログラムが走行不能に陥った
場合には決めておいたプロセッサが処理を引き継ぐた
め、ただ1つのプロセッサの障害のためにプロセッサシ
ステム全体が停止せず、試験を続行することができる。
また、HMI制御プロセッサが走行不能になった場合に
も、それまでの状態を伝達することができる。
【0017】また、予めバックアップするプロセッサの
リストを決めておき、そのリストにしたがってバックア
ップするプロセッサを順次選択するため、複数のプロセ
ッサの障害のためにプロセッサシステム全体が停止する
ことがなく、試験を続行することができる。同様にHM
I制御プロセッサが走行不能になった場合にもそれまで
の状態を伝達することができる。
【0018】また、オペレータの指示によりバックアッ
プするプロセッサを決めるため、複数のプロセッサの障
害のためにプロセッサシステム全体が停止することがな
く、試験を続行することができる。同様にHMI制御プ
ログラムが走行不能のなった場合にもそれまでの状態を
伝達することができる。また、各プロセッサでエラー数
をカウントし、エラー数が少ないプロセッサを選択し
て、マスタプログラムを移動させるため、プロセッサシ
ステム全体の安定走行を図ることができ、繰り返して走
行する長時間ランニング試験に有効である。
【0019】また、エラーが発生したときのシード値を
収集し、次回の試験にこのシード値をもとに試験プログ
ラムを起動するため、再現テストを加速し、早期に障害
を発見することができる。また、次回の試験にシード値
の中からエラー回数が多いシード値の順に試験プログラ
ムを起動するため、再現テストをさらに加速し、早期に
障害を発見することができる。
【0020】また、項目ごとに決められ回数で同一のシ
ード値を設定して試験を行うため、どの項目が弱いか判
定することができる。さらに、一定時間間隔でプロセッ
サごとにエラー回数累積値を算出するため、品質が良い
プロセッサを判定することができ、特にメモリ試験に有
効である。
【0021】
【発明の実施の形態】図2は本発明の第1の実施形態を
示す全体構成図である。図2において、1は高速ネット
ワークであり、高速ネットワーク1にはCPU2とメモ
リ5を有し、マスタとして動作するマスタプロセッサ
8、CPU3とメモリ6を有し、スレーブとして動作す
る動作するスレーブプロセッサ9、CPU4とメモリ7
を有し、スレーブとして動作するスレーブプロセッサ1
0が並列に接続されている。スレーブプロセッサ9,1
0は図示していないがその他多数個高速ネットワーク1
に接続されている。マスタプロセッサ8、スレーブプロ
セッサ9,10は、サービスプロセッサ17を介して表
示部を有する端末装置18に接続されている。マスタプ
ロセッサ8が走行不能に陥った場合には、バックアップ
するプロセッサを1台、ここではバックアップするプロ
セッサとしてスレーブプロセッサ9を予め決めておき、
このスレーブプロセッサ9がマスタプロセッサ8の処理
を引き継ぐようにしている。
【0022】マスタプロセッサ8のCPU2内にはプロ
グラムカウンタ(PC)19が設けられている。このプ
ログラムカウンタ19は、制御レジスタであり、実行す
る命令アドレスが格納される。スレーブプロセッサ9,
10のCPU3,4にもプログラムカウンタ20,21
が設けられている。マスタプロセッサ8のメモリ5内に
はマスタプログラム11、PC格納領域16および試験
プログラム14がそれぞれ格納されている。
【0023】試験プログラム14は、ランダムデータ列
を生成し、命令列を生成し、命令列を実行することでマ
スタプロセッサ8の試験を行う。マスタプログラム11
は試験プログラム14の制御、監視を行うとともにスレ
ーブプログラム12,13の制御、監視を行う。マスタ
プログラム11内にはHMI制御プログラム22、エラ
ー検出処理ルーチン(エラー検出処理手段)としてのエ
ラー検出処理部23、割込み処理ルーチン(割込み処理
手段)としての割込み処理部24がそれぞれ格納されて
いる。
【0024】エラー検出処理部23がマスタプロセッサ
8の続行不可能なエラーを検出したら、現在のプログラ
ムカウンタデータ(ループする固定アドレス)をPC格
納領域25に格納する。また、割込み処理部24による
割込み処理の先頭でもプログラム暴走の検出のために割
込み元のプログラムカウンタデータをPC格納領域25
に格納する。
【0025】スレーブプロセッサ9,10のメモリ5,
6内にはスレーブプログラム12,13および試験プロ
グラム15,16がそれぞれ設けられている。試験プロ
グラム15,16は、ランダムデータ列を生成し、命令
列を作成し、命令列を実行することで自分自身の試験を
行う。スレーブプログラム12,13は試験プログラム
15,16の制御、監視を行う。スレーブプログラム1
2,13は、マスタプロセッサ8のマスタプログラム1
1により集中的に制御、監視される。
【0026】スレーブプロセッサ9,10のうちの一つ
のスレーブプロセッサ9のスレーブプログラム12には
監視手段としての監視部26およびマスタプログラム1
1をコピーしたマスタプログラム27が格納されてい
る。監視部26はマスタプロセッサ8のPC格納領域2
5を監視し、マスタプロセッサ8が走行不能に陥ったか
監視する。監視部26およびマスタプログラム27は、
マスタプロセッサ8が走行不能に陥ったとき次のマスタ
プロセッサを選択するための選択プログラム28を構成
している。
【0027】図3はエラー検出時の処理の説明図であ
る。図3において、マスタプログラム11の走行中にマ
スタプロセッサ8が走行不能となるようにエラーを検出
すると、エラーラベルに飛ぶ。このときのプログラムカ
ウンタ19のプログラムカウントデータ(PCデータ)
が例えば「100」であるとする。次の命令101でこ
のPCデータをPC格納領域25に格納するストア命令
を実行する。PC格納領域25には「101」が格納さ
れる。次の命令102でエラーラベルに分岐する命令を
実行する。したがって、無限ループが形成され、ループ
する固定アドレスとして例えば「101」がPC格納領
域25に格納されることになる。
【0028】図4はマスタプログラム11のエラー検出
処理部23の構成例を示す図である。図4において、エ
ラー検出処理部23は、エラー検出起動手段としてのエ
ラー検出起動部29、エラー検出実行手段としてのエラ
ー検出実行部30、エラー認識手段としてのエラー認識
部31およびPC格納処理手段としてのPC格納処理部
32により構成されている。
【0029】エラー検出起動部29は、エラー検出処理
ルーチンを起動し、エラー検出実行部30は、エラー検
出処理ルーチンを実行する。エラー認識部31は、何ら
かの要因でマスタプロセッサ8が走行不能の陥ったこ
と、またはHMI制御プログラムが走行不能に陥ったこ
とを認識する。エラーが認識されると、PC格納処理部
32は現在のプログラムカウンタデータ(PCデータ)
をPC格納領域25に格納する。
【0030】図5はマスタプログラム11の割込み処理
部24の構成例を示す図である。図5において、割込み
処理部24は、割込み処理起動手段と仕手の割込み処理
起動部33、割込み元PC格納処理手段としての割込み
元PC格納処理部34、割込み処理実行手段としての割
込み処理実行部35および割込み元復帰手段としての割
込み元復帰部36により構成されている。
【0031】割込み処理起動部33は割込み処理ルーチ
ンを起動し、割込み元PC格納処理部34は、割込み元
のプログラムカウンタデータ(PCデータ)、例えば
「200」をPC格納領域25に格納し、また、次の割
込み処理があったときは割込み元のプログラムカウンタ
データ、例えば「300」をPC格納領域21に格納す
る。割込み処理実行部35は割込み処理を実行し、プロ
グラムの暴走がなければ、割込み元復帰部36により割
込み元に復帰する。
【0032】図6はスレーブプログラム12の監視部2
6の構成例を示す図である。図6において、監視部26
は、PCデータ監視手段としてのPCデータ監視部3
7、データ正常異常判別手段としてのデータ正常異常判
別部38、およびマスタコピープログラム起動手段とし
てのマスタコピープログラム起動部39により構成され
ている。
【0033】PCデータ監視部37は、PC格納領域2
5内に格納されたPCデータを監視し、データ正常異常
判別部38はPC格納領域25に格納されたデータが正
常か異常か判別する。データ正常異常判別部38はPC
格納領域25内に格納されたデータが例えばループする
固定アドレスであるときは、エラー検出処理により検出
された異常データであると判別し、また、PC格納領域
25内に格納されたデータが変化しないようなときは、
割込み処理で生じたプログラム暴走による異常データで
あると判別する。
【0034】PCデータが異常なときは、マスタコピー
プログラム起動部39はマスタコピープログラム27を
起動する。図7はエラー検出処理部23の処理を説明す
るフローチャートである。図7において、まず、ステッ
プS1でPC格納領域25をクリアし、初期化し、ステ
ップS2でエラー検出処理ルーチンを起動し、ステップ
S3でエラー検出処理ルーチンを実行する。エラー検出
実行中にステップS5ではエラーが発生したか判別す
る。エラーが発生しないときは、エラー検出処理ルーチ
ンを終了とし、エラーの発生が認識されたときは、ステ
ップS5で所定のエラーラベルに飛ぶ。例えば、プログ
ラムカウンタ19のPCデータが「100」のエラーラ
ベルに飛ぶ。
【0035】次に、ステップS16で次の命令により現
在のプログラムカウントデータ、例えば「101」をP
C格納領域25に格納する。次に、ステップS7で次の
命令でPCデータ「100」のエラーラベルに分岐す
る。こうして、無限ループに入る(ステップS8)。こ
のように、エラーの発生が認識されたときは、PC格納
領域25内にはループする固定アドレス、例えば「10
1」が格納されることになる。
【0036】図8は割込み処理部23の処理を説明する
フローチャートである。図8において、まず、ステップ
S11で割込み処理ルーチンを起動し、この割込み処理
の先頭で現在の割込み元PCデータ、例えば「200」
をPC格納領域25内に格納する(ステップS12、参
照)。次に、ステップS13で割込み処理ルーチンを実
行し、例えばステップS14で割込み処理によりプログ
ラム暴走が発生していないときは、ステップS15で割
込み元に復帰する。ステップS14で割込み処理により
プログラム暴走が発生したようなときは、割込み元に復
帰できず、プログラム暴走が続く(ステップS16、参
照)。割込み元に復帰して、次の割込み処理ルーチンが
起動されると、PC格納領域25には割込み元PCデー
タ例えば「300」が格納される。一方、プログラム暴
走が発生したときは、PC格納領域25内のPCデータ
は変化しない、例えば「200」のままである。
【0037】図9はスレーブプログラム12の監視部2
6の処理を説明するフローチャートである。図9におい
て、まず、ステップS21でマスタプロセッサ8のPC
格納領域25内のプログラムカウントデータ(PCデー
タ)を監視し、ステップS22でPC格納領域25内の
データが正常データか異常データか判別する。PC格納
領域25内に格納されたデータがループしている固定ア
ドレスである場合には、エラー検出処理で検出された異
常データであると判別し、また、PC格納領域25内に
格納されたデータに変化がないときは、割込み処理によ
り生じたプログラム暴走による異常データであると判別
する。正常データのときは、ステップS21に戻ってP
Cデータの監視を続行し、異常データのときはステップ
S23でマスタコピープログラム27を起動する。こう
して、マスタプログラム11の処理をマスタコピープロ
グラム27で引き継ぐ。
【0038】このように、マスタプロセッサ8が走行不
能に陥った場合、マスタプロセッサ8に代って指定され
た1つのスレーブプロセッサ9が処理を引き継ぐため、
ただ一つのマスタプロセッサ8の障害のためにプロセッ
サシステム全体が停止せず、試験を続行することができ
る。また、HMI制御プログラム22が走行不能に陥っ
た場合にも障害状態を伝達することができる。
【0039】図10は本発明の第2の実施形態を示す全
体構成図である。図10において、図2に対して、スレ
ーブプロセッサ10のスレーブプログラム13には監視
部26A、マスタコピープログラム27Aおよびバック
リスト表示手段としてのバックリスト表示部40Aが追
加して設けられ、スレーブプロセッサ9のスレーブプロ
グラム12にはバックリスト表示手段としてのバックリ
スト表示部40が追加して設けられている。
【0040】すなわち、スレーブプロセッサ9,10の
スレーブプログラム12,13は監視部26,26A、
マスタコピープログラム27,27Aおよびバックリス
ト表示部40,41よりなる選択プログラム28A,2
8Bを有し、マスタプロセッサ8が走行不能に陥ったと
き、バックリスト表示部40,40Aに従って、続けて
順次バックアップする。バックアップ表示部40,40
Aには次にバックアップするプロセッサ番号が表示され
ており、表示されているプロセッサ番号の順番にバック
アップする。
【0041】図11はスレーブプロセッサ9,10の監
視部26,26Aの構成例を示す。図11において、図
6に対してバックリスト参照手段としてのバックリスト
参照部41が追加して設けられている。データ正常異常
判別部38で異常データを判別したとき、バックリスト
参照部41はバックリスト表示部40,40Aを参照し
て次にバックアップするプロセッサを決める。
【0042】図12はスレーブプロセッサ9,10の監
視部26,26Aの処理を説明するフローチャートであ
る。図12において、まず、ステップS21でPC格納
領域25内のPCデータを監視し、ステップS22でP
C格納領域25内のデータが正常データか異常データか
を判別し、正常データのときはステップS21に戻って
監視を続行し、異常データのときはステップS22Aで
バックリスト表示部40,40Aを参照して次にバック
アップするプロセッサを決める。次に、ステップS23
でバックアップするプロセッサのマスタコピープログラ
ム27,27Aを起動し、マスタプログラム11の処理
を引き継ぐ。また、引き継いだスレーブプロセッサ9,
10が走行不能になったときは、バックリスト表示部4
0,40Aを参照してさらに次にバックアップするプロ
セッサを決める。
【0043】このように、マスタプロセッサ8が走行不
能に陥った場合、マスタプロセッサ8に代ってバックリ
スト表示部40,40Aで表示されたプロセッサ番号の
順にスレーブプロセッサ9,10が処理を引き継ぐた
め、ただ一つのマスタプロセッサ8の障害や引き継いだ
スレーブプロセッサ9,10の障害のために、プロセッ
サシステム全体が停止せず、試験を続行することができ
る。また、HMI制御プログラム22が走行不能に陥っ
た場合にも続けて障害状態を伝達することができる。
【0044】図13は本発明の第3の実施形態を示す全
体構成図である。図13において、図2に対して、スレ
ーブプロセッサ10のスレーブプログラム13に監視部
26A、およびマスタコピープログラム27Aを追加し
て設け、マスタプロセッサ8のマスタプログラム11に
選択指示手段としての選択指示部42を設けた。なお、
選択部26Aおよびマスタコピープログラム27Aは選
択プログラム28Cを構成している。
【0045】選択指示部42は、マスタプロセッサ8の
走行前にオペレータ43からの指示によりバックアップ
するスレーブプロセッサ9,10の1つを選択してお
き、マスタプロセッサ8の異常が判別されたとき、走行
不能となる前にオペレータ43の指示により次にバック
アップするスレーブプロセッサ9,10の選択を指示す
る。
【0046】図14はスレーブプロセッサ9,10の監
視部26,26Aの構成例を示す図である。図14にお
いて、図6に対してオペレータ通知手段としてのオペレ
ータ通知部44が設けられている。オペレータ通知部4
4は、PC格納領域25内に格納されたPCデータが異
常データであるとき、オペレータ43に対して次にバッ
クアップするプロセッサを選択するよう通知する。
【0047】図15はマスタプログラム11の選択指示
部42の構成例を示す図である。図15において、選択
指示部42は、オペレータ指示受信手段としてのオペレ
ータ指示受信部45およびプロセッサ選択指示手段とし
てのプロセッサ選択指示部46により構成されている。
オペレータ指示受信部45は、オペレータ43から次に
選択するプロセッサの指示を受ける。プロセッサ選択指
示部46は、オペレータ43からの指示によりマスタプ
ロセッサ8の走行前にバックアップするプロセッサを1
つに選択しておき、PC格納領域25内に格納されたP
Cデータが異常データであると判別されたとき、オペレ
ータ43の指示により次にバックアップするプロセッサ
の選択を指示する。
【0048】図16はスレーブプロセッサ9,10の監
視部26,26Aの処理を説明するフローチャートであ
る。図16において、まずステップS21でPC格納領
域25のPCデータを監視し、ステップS22でPC格
納領域25内のPCデータが異常データであるときは、
ステップS22Bでオペレータ43に次にバックアップ
するプロセッサを選択するように通知する。次に、ステ
ップS23でマスタプログラム11の選択指示部42に
よりスレーブプロセッサ9,10が選択され、そのマス
タコピープログラム27,27Aを起動して、処理を引
き継ぐ。
【0049】図17は選択指示部42の処理を説明する
フローチャートである。まず、ステップS31でオペレ
ータ43によりマスタプログラム11を走行させる前に
最初の指示を受信すると、ステップS32でバックアッ
プする1つのプロセッサ、例えばスレーブプロセッサ9
を選択し、スレーブプロセッサ9にバックアップするよ
う指示する。次に、ステップS33でPC格納領域25
内のデータが異常データであることを判別したとき(こ
のときはマスタプログラム11はまだ停止していない状
態)、オペレータ43より次の指示を受信すると、ステ
ップS34で次のプロセッサ、例えばスレーブプロセッ
サ10を選択し、バックアップするよう指示する。
【0050】このように、マスタプロセッサ8に異常が
あると判別され、まだ停止にならない場合、マスタプロ
セッサ11に代ってオペレータ43の指示で例えば1つ
のスレーブプロセッサ9を選択し、オペレータ43の次
の指示で例えばスレーブプロセッサ10を選択して、処
理を引き継ぐため、ただ一つのマスタプロセッサ8の障
害のためにプロセッサシステム全体が停止せず、2つの
スレーブプロセッサ9,10で試験を続行することがで
きる。また、HMI制御プログラム22が走行不能に陥
った場合にも続けて障害状態を伝達することができる。
【0051】図18は本発明の第4の実施形態を示す全
体構成図である。図18において、51は高速ネットワ
ークであり、高速ネットワーク51には、マスタとして
動作するマスタプロセッサ52、スレーブとして動作す
るがマスタとして動作可能な複数のスレーブプロセッサ
53A〜53Gがそれぞれ接続されている。
【0052】マスタプロセッサ52は、CPU54とメ
モリ56を有し、メモリ56内にはマスタプログラム5
8と試験プログラム60がそれぞれ格納されている。ス
レーブプロセッサ53A〜53Gは、CPU55A〜5
5Gとメモリ57A〜57Gを有し、メモリ57A〜5
7G内にはスレーブプログラム59A〜59Gと試験プ
ログラム61A〜61Gがそれぞれ格納されている。
【0053】ここで、エラー数が最も少ないスレーブプ
ロセッサ、例えばスレーブプロセッサ53Eにはマスタ
プログラム58をコピーしたマスタコピープログラム6
2が作成され、格納される。各試験プログラム60,6
1A〜61Gはランダムデータ列を生成し、命令列を作
成して命令列を実行して自己自身のハードなどを試験す
る。マスタプログラム58およびスレーブプログラム5
9A〜59Gは、それぞれの試験プログラム60,60
A〜60Gを制御し、監視し、マスタプログラム58は
集中的にスレーブプログラム59A〜59Gを制御し、
監視する。
【0054】マスタプロセッサ52およびスレーブプロ
セッサ53A〜53Gはサービスプロセッサ63を介し
て表示部などを有する端末64にそれぞれ接続されてい
る。図19はスレーブプログラム59A〜59Gの構成
例を示す図である。図19において、スレーブプログラ
ム59A〜59Gは、エラー数カウント手段としてのエ
ラー数カウント部65、エラー数通知手段としてのエラ
ー数通知部66、マスタプログラムコピー手段としての
マスタプログラムコピー部67およびマスタコピープロ
グラム起動手段としてのマスタコピープログラム起動部
68を有する。
【0055】エラー数カウント部65は自己のスレーブ
プロセッサ53A〜53G内のエラー数をカウントす
る。すなわち、試験プログラム61A〜61Gを実行し
た結果、検出したエラー数をカウントする。マスタプロ
セッサ52およびスレーブプロセッサ53A〜53Gで
カウントしたエラー数の例を図21に示す。エラー数通
知部66はカウントしたエラー数をマスタプログラム5
8に通知する。マスタプログラムコピー部67は、マス
タプログラム58で選択したエラー数が最も少ないスレ
ーブプロセッサ、例えばスレーブプロセッサ54E内で
マスタプログラム58をコピーしてマスタコピープログ
ラム62を作成する。マスタコピープログラム起動部6
8は、作成したマスタコピープログラム62を起動す
る。
【0056】図20は、マスタプログラム58の構成例
を示す図である。図20において、マスタプログラム5
8は、エラー数カウント手段としてのエラー数カウント
部69、エラー数受信手段としてのエラー数受信部7
0、プロセッサ選択手段としてのプロセッサ選択部7
1、マスタプログラム移動手段としてのマスタプログラ
ム移動部72、およびスレーブプログラム起動手段とし
てのスレーブプログラム起動部73を有する。
【0057】エラー数カウント部69は、マスタプロセ
ッサ58のエラー数をカウントする。エラー数受信部7
0は、図21に示すような、自己のエラー数を含めたス
レーブプログラム53A〜53Gからのエラー数を受信
する。プロセッサ選択部71は、受信したエラー数のう
ちからエラー数が最も少ないプロセッサ、例えばスレー
ブプロセッサ53Eを選択する。マスタプログラム移動
部72はマスタプログラム58をエラー数が最も少ない
プロセッサ、例えばスレーブプロセッサ53Eにコピー
して移動する。スレーブプログラム起動部73は、自己
のスレーブプログラムになったプログラムを起動する。
【0058】図22はマスタプログラム58の処理を説
明するフローチャートである。まず、ステップS41で
自己のエラー数をカウントしておく。図21に示すよう
に、例えばマスタプロセッサ52のエラー数は「1」で
ある。次に、ステップS42でスレーブプロセッサ53
A〜53Gからのエラー数を受信し、ステップS43で
自己のエラー数およびスレーブプロセッサ53A〜53
Gからのエラー数からエラー数が最も少ないプロセッサ
を選択する。図21に示すように、スレーブプロセッサ
53Eのエラー数は「0」であり、このスレーブプロセ
ッサ53Eを選択する。次に、ステップS44で自分自
分のマスタプログラム58をエラー数の最も少ないプロ
セッサ、例えばスレーブプロセッサ53Eにコピーして
移動する。その後、ステップS45で自己のスレーブプ
ログラムとなったプログラムを起動する。
【0059】図23はスレーブプログラム59A〜59
Gの処理を説明するフローチャートである。図23にお
いて、まず、ステップS51で自己のスレーブプロセッ
サ53A〜53G内のエラー数をカウントする。例え
ば、図21に示すように、スレーブプロセッサ53Aの
エラー数は「02」、スレーブプロセッサ53Bのエラ
ー数は「01」、スレーブプロセッサ53Cのエラー数
は「01」、スレーブプロセッサ53Dのエラー数は
「01」、スレーブプロセッサ53Eのエラー数は「0
0」、スレーブプロセッサ53Fのエラー数は「0
1」、スレーブプロセッサ53Gのエラー数は「01」
である。
【0060】次に、ステップS52でカウントしたエラ
ー数をマスタプログラム58に通知する。次に、エラー
数が最も少ないスレーブプロセッサ53Eの場合には、
マスタプログラム58をコピーしてマスタコピープログ
ラム62を作成する。そして、ステップS54でマスタ
コピープログラム62を起動し、マスタプログラム59
の処理を引き継ぐ。
【0061】このように、スレーブプロセッサ53A〜
53Gでエラー数をカウントしてマスタプログラム58
に転送し、マスタプロセッサ52では自己のエラー数を
含めてエラー数が最も少ないプロセッサ、例えばエラー
数が「00」のスレーブプロセッサ53Eを選択して、
マスタプロセッサ52が停止する前にスレーブプロセッ
サ53Eにマスタプログラム58をコピーして移動させ
るため、プロセッサシステム全体が停止することがな
く、試験を続行することができる。こうして、プロセッ
サシステム全体を安定動作させることができ、繰り返し
走行する長時間ランニング試験などに有効である。
【0062】図24は本発明の第5の実施形態を示す全
体構成図である。図24は本実施形態の図2に対する適
用例を示しているが、これに限らず、本実施形態は図1
0、図13、図18および図49にも適用できる。ま
た、本実施形態に続く他の実施形態も同様である。図2
4において、図2に対して、マスタプロセッサ8のマス
タプログラム11には障害を早期に発見するための第1
の障害早期発見プログラム74が格納され、また、スレ
ーブプロセッサ9,10から収集したシード値75が格
納されている。また、スレーブプロセッサ9,10のス
レーブプログラム12,13にはエラー発生時のシード
値をマスタプログラム11に転送するシード値転送部7
6,77が設けられた第1の障害早期発見プログラム7
4と同様のプログラム78,79が格納されている。
【0063】ここで、試験プログラム14,15,16
としては、ランダム試験プログラムを使用する。ランダ
ム試験は、命令の組合せによる障害を検出する試験であ
り、命令の組合せは、各種パイプライン、メモリアクセ
ス干渉条件、レジスタ種類などすべての組合せを試験項
目にすると、莫大なテスト項目量になってしまうのであ
る程度項目を絞り、その項目の範囲内でランダムに条件
を組み合わせる方法をとる。その組合せを決める手段と
してランダムデータを用いる。
【0064】テクノロジ障害の早期発見として、このラ
ンダムデータの特徴を生かし、各プロセッサ8,9,1
0ごとのエラー時のシード値をマスタプログラムが管理
し、次回このシード値を用いることで、エラーの再現テ
スト、障害修正のレベルダウンを1回の試験で確認でき
る。また、生産ラインから出てきて最初に試験を実行す
る時なども、今まで収集した、エラーした時のシード値
を指定すれば、早期にテクノロジ障害が発見できる。
【0065】エラーした時のシード値を指定すれば、早
期にテクノロジ障害が発見できる項目は、工場から生産
されたマシンは一般的に、テクノロジ的に弱い箇所、強
い箇所といった偏りがあり、以前1度エラーした箇所
は、また次でもエラーしやすいといえるからである。た
とえば、10÷3の答を誤るマシンが生産されたとする
と、このマシンが生産された以降10÷3の答を誤るマ
シンが生産される可能性があるといえる。反対に、1+
1の答を誤るマシンが1台も生産されてこなかったとす
るとこれからも1+1の答を誤るマシンは生産される可
能性は低いということになる。
【0066】図25は試験プログラム14,15,16
の構成例を示す図である。図25において、試験プログ
ラム14,15,16は、ランダムデータ生成手段とし
てのランダムデータ生成部80、命令生成手段として命
令生成部81、命令実行手段としての命令実行部82お
よびデータ比較手段としてのデータ比較部83により構
成される。
【0067】ランダムデータ生成部80は、シード値か
らランダムデータ列を生成する。再現性があるので、類
似乱数データ列とも言える。命令生成部81はランダム
データ生成部80で生成されたランダムデータ列から命
令列を生成する。命令実行部82は命令生成部81で生
成した命令列を実行する。データ比較部83は命令実行
部82で実行して得られた結果と期待値を比較する。
【0068】図26はランダムデータから命令列を生成
する一例を説明する説明図である。図26において、ラ
ンダムデータ84からデータをマスクすることにより命
令列85を生成する。すなわち、命令生成部81ではラ
ンダムデータ84から命令になるように余分なビットを
マスクして命令列85を生成する。なお、図中0xは1
6進数を示す(以下、同様)。
【0069】図27はランダムデータから命令列を生成
する他の例を説明する説明図である。図27において、
ランダムデータ84を用いて命令テーブルから命令列8
5を選択して生成する。すなわち、命令生成部81は図
示しない命令テーブルから番号と命令を取り出し、ラン
ダムデータ84の順、0x07,0xdb,0x4f・
・・に命令を選択して命令列85を生成する。
【0070】図28はランダムデータ列を生成する関数
仕様を示す図である。図28において、ランダムデータ
列の生成ロジックをもつ関数は、以下の機能を備えてい
る。 (1)シード値により一度生成したランダムデータ列を
いつでも生成できる。 (2)一度生成したランダムデータ列の続きのランダム
データを生成できる。
【0071】図29はシード値でランダムデータ列を生
成する一例を示す図である。図29において、監視時の
シード値0x12345678で10個のランダムデー
タ列を生成している。ランダムデータ列が10個生成さ
れた終了時のランダムデータ列より終了時のシード値0
x62899937が得られる。この終了時のシード値
を使用すると、11個目からのランダムデータ列を生成
できる。
【0072】図30はシード値でランダムデータ列を生
成した他の例を示す図である。図30において、図29
と同じシード値0x12345678で20個のランダ
ムデータ列を生成している。ランダムデータ列の10個
目までは図29と同じランダムデータ列が生成される。
20個目の終了時ランダムデータ列より終了時のシード
値0x38fd703cが得られる。
【0073】図31はシード値でランダムデータ列を生
成した更に他の例を示す図である。図31において、図
29の終了時のシード値で10個のランダムデータ列を
生成している。開始のシード値は、0x6289993
7であり、終了時のシード値として0x38fd703
cが得られる。開始シード値として0x6289997
7を用いると、図30の11個目のランダムデータ列か
ら20個目のランダムデータ列と同じランダムデータ列
を生成できる。すなわち、ランダムデータ列の続きを生
成できる。したがって、エラー発生時のシード値を用い
て次のランダム試験を行うと、試験回数を大幅に減少さ
せることができ、再現テストを加速することができる。
【0074】図32は第1の障害早期発見プログラム7
4の構成例を示す図である。図32において、第1の障
害早期発見プログラム74は、試験プログラム組込み手
段としての試験プログラム組込み部86、シード値収集
手段としてのシード値収集部87および第1の試験プロ
グラム起動手段としての第1の試験プログラム起動部8
8により構成されている。
【0075】試験プログラム組込み部86は、ランダム
試験を行う試験プログラム14をマスタプログラム11
に組み込む。シード値収集部87はスレーブプロセッサ
9,10からエラーが発生したときのシード値を収集す
る。収集されたシード値は、例えば図33に示される。
図33中1〜9はエラー発生回数を示す。例えば、最初
にエラーが発生したときのシード値は、0x00000
000であり、9個目のエラー発生時のシード値は0x
00000020である。第1の試験プログラム起動部
88は、次回の試験のとき収集されたシード値をもとに
試験プログラム14を起動する。なお、スレーブプロセ
ッサ9,10の第1の障害早期発見プログラム74と同
様のプログラム78,79にはシード値収集部87の代
りにシード値をマスタプログラム11に転送するシード
値転送部76,77を設けている。
【0076】図34はマスタプログラム11の第1の障
害早期発見プログラム74の処理を説明するフローチャ
ートである。図34において、まず、ステップS61で
試験プログラム14をマスタプログラム11に組み込
み、ステップS62でエラー発生時のシード値をスレー
ブプロセッサ9,10から収集する。収集したシード値
75は、例えば、図33に示される。次に、ステップS
63で次回の試験のとき収集したシード値75をもとに
試験プログラム14を起動する。なお、スレーブプロセ
ッサ9,10においては、試験プログラム15,16を
スレーブプログラム12,13に組み込み、エラー発生
時のシード値をマスタプログラム11に転送し、マスタ
プログラム11からの指示により次回の試験のときはシ
ード値をもとに試験プログラム15,16を起動する。
【0077】このように、エラー発生時のシード値をも
とに次回の試験のとき試験プログラム14,15,16
を実行するため、再現テストを加速することができる。
その結果、障害を早期に発見することができる。図35
は本発明の第6の実施形態を示す全体構成図である。図
35において、図34に対して、マスタプログラム11
には第2の障害早期発見プログラム89が格納され、ま
た、エラーが発生したときのシード値のエラー回数90
が格納されている。エラーしたときのシード値として同
じシード値があればそのエラー回数90を演算して、エ
ラー発生頻度の高いシードから試験を実行する。
【0078】図36は第2の障害早期発見プログラム8
9の構成例を示す図である。図36において、図32に
対して試験プログラム組込み部86、シード値収集部8
7に追加してエラー回数演算手段としてのエラー回数演
算部91および第2の試験プログラム起動手段としての
第2の試験プログラム起動部92が設けられている。エ
ラー回数演算部91は、図37(A)に示すシード値収
集部87で収集したシード値75に基づいて図37
(B)に示すようにエラーしたシード値のエラー回数を
演算する。例えば、シード値が0x00000010の
ときエラー回数は5回で一番エラー回数が多い。第2の
試験プログラム起動部92は、エラー回数の多いシード
値から試験プログラム14を起動する。
【0079】図38はマスタプログラム11の第2の障
害早期発見プログラム89の処理を説明するフローチャ
ートである。図38において、まず、ステップS61で
試験プログラム14をマスタプログラム11に組み込
み、ステップS62でエラー発生時のシード値をスレー
ブプロセッサ12,13から収集する。収集したシード
値75の例を図37(A)に示す。ステップS62Aで
収集したシード値75から図37(B)に示すようにエ
ラーしたシード値のエラー回数を演算し、ステップS6
3でエラー回数90の多いシード値から順次試験プログ
ラム14を起動する。
【0080】なお、スレーブプロセッサ12,13の第
2の障害早期プログラム89と同様のプログラム78,
79においては、試験プログラム14,15をスレーブ
プログラム12,13に組み込み、エラー発生時のシー
ド値をマスタプログラム11に転送し、マスタプログラ
ム11からの指示によりエラー回数90の多いシード値
から順次試験プログラム15,16を起動する。
【0081】このように、エラーしたシード値のエラー
回数90が多いシード値から試験を実行するため、さら
に再現テストを加速することができる。したがって、障
害をさらに早期に発見することができる。図39は本発
明の第7の実施形態を示す全体構成図である。図39に
おいて、図2に対して、マスタプログラム11およびス
レーブプログラム12,13には第3の障害早期発見プ
ログラム93A,93B,93Cが格納され、また、図
41に示すように、項目ごとに決められた回数で同一の
シード値で試験を行うための項目94A,94B,94
Cおよび項目94A,94B,94Cごとのエラー回数
95A,95B,95Cがそれぞれ格納される。
【0082】ここで量産試験では、マージン試験を行う
が、そのマージン項目ごとに決められた回数で同一のシ
ード値で試験を行い、結果を集計することによって障害
の早期発見が可能となる。量産試験は工場で生産ライン
から生産されたマシンを対象として確認を行うために実
施される。
【0083】マージン試験は、量産試験の過程の中で行
われ、品質を向上させるため、わざと通常使用する環境
より悪い条件で試験を行う。マージン試験は以下の項目
がある。 電圧マージン試験:電圧を規定の±10%ぐらい変化さ
せ品質の確認を行う クロックマージン:マシンの動作クロック数を規定の±
10%ぐらい変化させ品質の確認を行う 温度マージン :常温より±10℃ぐらい変化させ品
質の確認を行う 図40はマスタプログラム11およびスレーブプログラ
ム12,13の第3の障害早期発見プログラム93A,
93B,93Cの構成例を示す図である。
【0084】図40において、第3の障害早期発見プロ
グラム93A,93B,93Cは試験プログラム組込み
手段としての試験プログラム組込み部96A、項目設定
手段としての項目設定部96B、第3の試験プログラム
起動手段としての第3の試験プログラム起動部96C、
エラー回数算出手段としてのエラー回数算出部96Dお
よびエラー回数表示処理手段としてのエラー回数表示処
理部96Eにより構成されている。
【0085】試験プログラム組込み部96Aは、試験プ
ログラム14,15,16をマスタプログラム11また
はスレーブプログラム12,13に組み込む。項目設定
部96Bは、図41(A)に示すように、例えば電圧マ
ージン試験の場合には、電圧マージンの項目94A〜9
4Cごとに試験の回数を設定し、同一のシード値を設定
する。
【0086】第3の試験プログラム起動部96Cは、項
目94A〜94Cごとに決められた回数で同一のシード
値で試験プログラム14,15,16を駆動する。エラ
ー回数算出部96Dは、項目94A〜94Cを試験した
結果生じたエラー回数95A〜95Cを算出する。エラ
ー回数表示処理部96Cは項目94A〜94Cごとに算
出したエラー回数95A〜95Cを表示処理する。
【0087】図42はマスタプログラム11およびスレ
ーブプログラム12,13の第3の障害早期発見プログ
ラム93A〜93Cの処理を説明するフローチャートで
ある。図42において、まず、ステップS71で試験プ
ログラム14をマスタプログラム11に組み込み、また
試験プログラム15,16をスレーブプログラム12,
13に組み込む。
【0088】次に、ステップS72で項目94A〜94
Cごとに決められた回数および同一のシード値を設定す
る。例えば、図41(A)に示すように、電圧マージン
+10%,+5%,0%,−5%,−10%の項目1〜
5に対して試験の回数として1000,500,10
0,500,1000を設定し、同一のシード値として
0x12345678をそれぞれ設定する。
【0089】次に、ステップS73でマスタプロセッサ
8で試験プログラム14を起動し、スレーブプロセッサ
9,10で試験プログラム15,16を起動する。項目
94A,94Cを試験した結果、ステップS74で発生
したエラー数95A〜95Cを算出する。算出した結果
を図41(B)に示す。項目1のエラー回数は10、項
目2のエラー回数は5、項目3のエラー回数は0、項目
4のエラー回数は1、項目5のエラー回数は2である。
【0090】次にステップS75で図41(B)に示す
エラー回数を表示処理する。表示により+方向のマージ
ンに弱いことがわかる。また、次回の試験ではエラー回
数95A〜95Cの多い順に試験を行うと、再現テスト
を加速することができる。したがって、障害を早期に発
見することができ、どの項目にエラーが多いかわかる。
【0091】図43は本発明の第8の実施形態を示す全
体構成図である。図43において、図2に対して、マス
タプロセッサ8のマスタプログラム11には第4の障害
早期発見プログラム97が格納され、また、図45に示
すように、時間別プロセッサ別のエラー回数累積値98
が格納されている。スレーブプロセッサ9,10のスレ
ーブプログラム12,13には、一定時間間隔でエラー
数をマスタプログラム11に転送するエラー回数転送部
99A,99Bがそれぞれ設けられている。一定の時間
間隔でプロセッサごとにエラー累積値98を算出し、表
示処理することによってテクノロジ強度を判定し、品質
の良いものを早期に判定する。
【0092】図44はマスタプログラム11の第4の障
害早期発見プログラム97の構成例を示す図である。図
44において、第4の障害早期発見プログラム97は試
験プログラム組込み手段としての試験プログラム組込み
部97A、第4の試験プログラム起動手段としての第4
の試験プログラム起動部97B、エラー回数収集手段と
してのエラー回数収集部97C、エラー回数累積算出手
段としてのエラー回数累積産出部97D、およびエラー
回数累積表示手段としてのエラー回数累積表示処理部9
7Eにより構成されている。
【0093】試験プログラム組込み部97Aは試験プロ
グラム14をマスタプログラム11に組み込む。第4の
試験プログラム起動部97Bは試験プログラム14を起
動する。なお、図示していないが、試験プログラム組込
み部、第4の試験プログラム起動部は、スレーブプログ
ラム12,13にも設けられており、スレーブプログラ
ム12,13は試験プログラム15,16をスレーブプ
ログラム12,13に組み込み、試験プログラム15,
16を起動する。
【0094】エラー回数収集部97Cは、スレーブプロ
グラム12,13のエラー回数転送部99A,99Bか
ら転送されてくるエラー回数を一定時間間隔で収集す
る。エラー回数累積算出部97Dは、図45に示すよう
に、一定時間間隔でプロセッサごとにエラー回数累積値
98を算出する。エラー回数累積表示処理部97Eは、
算出したエラー回数累積値98を一定時間間隔でプロセ
ッサごとに表示処理する。
【0095】図46は第4の障害早期発見プログラム9
7の処理を説明するフローチャートである。図46にお
いて、まず、ステップS81で試験プログラム14をマ
スタプログラム11に組み込み、ステップS82で試験
プログラム14を起動する。そして、ステップS82で
図45に示すように、例えば10分の時間間隔でスレー
ブプログラム12,13のエラー回数転送部99A,9
9Bから転送されてくるエラー回数を収集し、ステップ
S84でエラー回数累積値98を算出する。
【0096】図45に示すように、例えばマスタプロセ
ッサ8では120分のエラー回数累積値は「4」、スレ
ーブプロセッサ9の120分のエラー回数累積値は「1
1」、スレーブプロセッサ10の120分のエラー回数
累積値は「2」である。ステップS85で算出したエラ
ー回数累積値98を一定時間ごとプロセッサごとに表示
処理する。
【0097】表示処理された結果により、スレーブプロ
セッサ9が他のマスタプロセッサ8、スレーブプロセッ
サ10に比べてテクノロジが弱いことがわかる。この実
施形態においては、メモリ試験に有効である。1ビット
エラーなどはハードが自分自身修復可能であり、エラー
が発生しても、たいして問題にならない。しかし、頻繁
に1ビットエラーが発生すると、修復不能な2ビットエ
ラーが発生する可能性があり、メモリを取り替える必要
がある。この実施形態においては、プロセッサごとに比
較できるので、試験者は特に弱いプロセッサ、例えばス
レーブプロセッサ9を知ることができる。
【0098】
【発明の効果】以上説明してきたように、本発明によれ
ば、予めバックアップするプロセッサを1台決めておく
か、またはバックアップするプロセッサのリストを決め
ておくか、またはオペレータの指示によりバックアップ
するプロセッサを決めるため、マスタプロセッサ、マス
タプログラムが走行不能に陥った場合には決めておいた
プロセッサが処理を引き継ぐため、ただ1つのプロセッ
サの障害のためにプロセッサシステム全体が停止せず、
試験を続行することができる。また、HMI制御プロセ
ッサが走行不能になった場合にも、それまでの状態を伝
達することができる。
【0099】また、各プロセッサでエラー数をカウント
し、エラー数が少ないプロセッサを選択して、マスタプ
ログラムを移動させるため、プロセッサシステム全体の
安定走行を図ることができ、繰り返して走行する長時間
ランニング試験に有効である。また、エラーが発生した
ときのシード値を収集し、次回の試験にこのシード値を
もとに試験プログラムを起動するため、または、次回の
試験にシード値の中からエラー回数が多いシード値の順
に試験プログラムを起動するため、再現テストをさらに
加速し、早期に障害を発見することができる。
【0100】また、項目ごとに決められた回数で同一の
シード値を設定して試験を行うため、どの項目が弱いか
判定することができる。さらに、一定時間間隔でプロセ
ッサごとにエラー回数累積値を算出するため、品質が良
いプロセッサを判定することができ、特にメモリ試験に
有効である。
【図面の簡単な説明】
【図1】本発明の原理説明図
【図2】本発明の一実施形態を示す全体構成図
【図3】エラー検出処理の説明図
【図4】エラー検出処理部の構成例を示す図
【図5】割込み処理部の構成例を示す図
【図6】監視部の構成例を示す図
【図7】エラー検出処理部の処理を説明するフローチャ
ート
【図8】割込み処理部の処理を説明するフローチャート
【図9】監視部の処理を説明するフローチャート
【図10】本発明の第2の実施形態を示す全体構成図
【図11】図10の監視部の構成例を示す図
【図12】図10の監視部の処理を説明するフローチャ
ート
【図13】本発明の第3の実施形態を示す全体構成図
【図14】図13の監視部の構成例を示す図
【図15】図13の選択指示部の構成例を示す図
【図16】図13の監視部の処理を説明するフローチャ
ート
【図17】図13の選択指示部の処理を説明するフロー
チャート
【図18】本発明の第4の実施形態を示す全体構成図
【図19】スレーブプログラムの構成例を示す図
【図20】マスタプログラムの構成例を示す図
【図21】各プロセッサのエラー数を示す図
【図22】マスタプログラムの処理を説明するフローチ
ャート
【図23】スレーブプログラムの処理を説明するフロー
チャート
【図24】本発明の第5の実施形態を示す全体構成図
【図25】試験プログラムの構成例を示す図
【図26】ランダムデータによる命令列生成の説明図
(その一)
【図27】ランダムデータによる命令列生成の説明図
(その二)
【図28】ランダムデータ列生成の関数仕様を示す図
【図29】シード値によるランダムデータ列生成の説明
図(その一)
【図30】シード値によるランダムデータ列生成の説明
図(その二)
【図31】シード値によるランダムデータ列生成の説明
図(その三)
【図32】第1の障害早期発見プログラムの構成例を示
す図
【図33】収集したシード値を示す図
【図34】第1の障害早期発見プログラムの処理を説明
するフローチャート
【図35】本発明の第6の実施形態を示す全体構成図
【図36】第2の障害早期発見プログラムの構成例を示
す図
【図37】シード値とエラーしたシード値のエラー回数
を示す図
【図38】第2の障害早期発見プログラムの処理を説明
するフローチャート
【図39】本発明の第7の実施形態を示す全体構成図
【図40】第3の障害早期発見プログラムの構成例を示
す図
【図41】設定した項目とエラー回数を示す図
【図42】第3の障害早期発見プログラムの処理を説明
するフローチャート
【図43】本発明の第8の実施形態を示す全体構成図
【図44】第4の障害早期発見プログラムの構成例を示
す図
【図45】エラー回数累積値を示す図
【図46】第4の障害早期発見プログラムの処理を説明
するフローチャート
【図47】従来の共有メモリ型のマルチプロセッサシス
テムを示す図
【図48】従来の分散メモリ型のパラレルプロセッサシ
ステムを示す図
【図49】従来の全体構成図
【符号の説明】
1,51:高速ネットワーク 2〜4,54,55A〜55G:CPU 5〜7,56,57A〜57G:メモリ 8,52:マスタプロセッサ 9,10,53A〜53G:スレーブプロセッサ 11,58:マスタプログラム 12,13,59A〜59G:スレーブプログラム 14〜16,60,60A〜60G:試験プログラム 17,63:サービスプロセッサ 18,64:端末装置 19〜21:プログラムカウンタ 22:HMI制御プログラム 23:エラー検出処理部(エラー検出処理手段) 24:割込み処理部(割込み処理手段) 25:PC格納領域 26,26A:監視部(監視手段) 27,27A,62:マスタコピープログラム 28,28A〜28C:選択プログラム 29:エラー検出起動部 30:エラー検出実行部 31:エラー認識部(エラー認識手段) 32:PC格納処理部(PC格納処理手段) 33:割込み処理起動部 34:割込み元PC格納処理部 35:割込み処理実行部 36:割込み元復帰部 37:PCデータ監視部(PCデータ監視手段) 38:データ正常異常判別部(データ正常異常判別手
段) 39:マスタコピープログラム起動部(マスタコピープ
ログラム起動手段) 40,40A:バックリスト表示部(バックリスト表示
手段) 41:バックリスト参照部(バックリスト参照手段) 42:選択指示部(選択指示手段) 43:オペレータ 44:オペレータ通知部(オペレータ通知手段) 45:オペレータ指示受信部 46:プロセッサ選択指示部 65,69:エラー数カウント部(エラー数カウント手
段) 66:エラー数通知部(エラー数通知手段) 67:マスタプログラムコピー部(マスタプログラムコ
ピー手段) 68:マスタコピープログラム起動部(マスタコピープ
ログラム起動手段) 70:エラー数受信部 71:プロセッサ選択部(プロセッサ選択手段) 72:マスタプログラム移動部(マスタプログラム移動
手段) 73:スレーブプログラム起動部 74:第1の障害早期発見プログラム 75:シード値 76,77:シード値転送部 78,79:プログラム 80:ランダムデータ生成部 81:命令生成部 82:命令実行部 83:データ比較部 84:ランダムデータ 85:命令列 86,96A,97A:試験プログラム組込み部 87:シード値収集部(シード値収集手段) 88:第1の試験プログラム起動部(第1の試験プログ
ラム起動手段) 89:第2の障害早期発見プログラム 90,95A〜95C:エラー回数 91:エラー回数演算部(エラー回数演算手段) 92:第2の試験プログラム起動部 93A〜93C:第3の障害早期発見プログラム 94A〜94C:項目 96B:項目設定部(項目設定手段) 96C:第3の試験プログラム起動部 96D:エラー回数算出部(エラー回数算出手段) 96E:エラー回数表示処理部(エラー回数表示処理手
段) 97:第4の障害早期発見プログラム 98:エラー回数累積値 99A,99B:エラー回数転送部 97B:第4の試験プログラム起動部 97C:エラー回数収集部(エラー回数収集手段) 97D:エラー回数累積算出部(エラー回数累積算出手
段) 97E:エラー回数累積表示処理部(エラー回数累積表
示処理手段)

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】CPUとメモリを有しマスタとして動作す
    るマスタプロセッサとスレーブとして動作する複数のス
    レーブプロセッサを並列に接続し、試験プログラムの実
    行中に前記マスタプロセッサが走行不能となったとき次
    のマスタプロセッサを選択するプロセッサシステムにお
    いて、 前記マスタプロセッサに、マスタプロセッサが走行不能
    となるエラーを検出するエラー検出処理手段と、 前記スレーブプロセッサの一つに、前記マスタプロセッ
    サが走行不能となることを監視する監視手段と、 前記マスタプロセッサ内のマスタプログラムをコピーし
    たマスタコピープログラムを設けたことを特徴とするプ
    ロセッサシステム。
  2. 【請求項2】CPUとメモリを有しマスタとして動作す
    るマスタプロセッサとスレーブとして動作する複数のス
    レーブプロセッサを並列に接続し、試験プログラムをそ
    れぞれ実行するプロセッサシステムにおいて、 前記スレーブプロセッサは、 自己のエラー数をカウントするエラー数カウント手段
    と、 カウントしたエラー数を前記マスタプロセッサに通知す
    るエラー数通知手段と、 マスタプロセッサからの指示によりマスタプロセッサの
    マスタプログラムをコピーするマスタプログラムコピー
    手段と、を備え、 前記マスタプロセッサは、 前記スレーブプロセッサからのエラー数を受信し、自己
    のカウントしたエラー数を含めてエラー数の少ないプロ
    セッサを選択するプロセッサ選択手段と、 自己のマスタプログラムをエラー数の少ないプロセッサ
    に移動するマスタプログラム移動手段と、 を備えたことを特徴とするプロセッサシステム。
  3. 【請求項3】CPUとメモリを有しマスタとして動作す
    るマスタプロセッサとスレーブとして動作する複数のス
    レーブプロセッサを並列に接続し、試験プログラムをそ
    れぞれ実行して障害を発見するプロセッサシステムにお
    いて、 前記マスタプロセッサに、 エラーが発生したときのシード値を前記スレーブプロセ
    ッサより収集するシード値収集手段と、 次回の試験では収集したシード値をもとに前記試験プロ
    グラムを起動する試験プログラム起動手段と、を備えた
    ことを特徴とするプロセッサシステム。
  4. 【請求項4】CPUとメモリを有しマスタとして動作す
    るマスタプロセッサとスレーブとして動作する複数のス
    レーブプロセッサを並列に接続し、試験プログラムをそ
    れぞれ実行して障害を発見するプロセッサシステムにお
    いて、 前記マスタプロセッサに、 項目ごとに決められた回数と同一のシード値を設定する
    項目設定手段と、 設定された項目ごとに試験プログラムを起動する第3の
    試験プログラム起動手段と、 試験した結果発生したエラー回数を項目ごとに算出する
    エラー回数算出手段と、 算出された項目ごとのエラー回数を表示処理する表示処
    理手段と、を備えたことを特徴とするプロセッサシステ
    ム。
  5. 【請求項5】CPUとメモリを有しマスタとして動作す
    るマスタプロセッサとスレーブとして動作する複数のス
    レーブプロセッサを並列に接続し、試験プログラムをそ
    れぞれ実行して障害を発見するプロセッサシステムにお
    いて、 前記マスタプロセッサに、 試験プログラムを起動して所定の時間間隔でエラー回数
    を前記スレーブプロセッサごとに収集するエラー回数収
    集手段と、 収集したエラー回数の累積値を前記スレーブプロセッサ
    ごとに算出するエラー回数累積値算出手段と、 エラー回数累積値を前記スレーブプロセッサごとに表示
    処理するエラー回数累積表示処理手段と、を備えたこと
    を特徴とするプロセッサシステム。
  6. 【請求項6】CPUとメモリを有しマスタとして動作す
    るマスタプロセッサとスレーブとして動作する複数のス
    レーブプロセッサを並列に接続し、試験プログラムの実
    行中に前記マスタプロセッサが走行不能となったとき次
    のマスタプロセッサを選択するためにスレーブプロセッ
    サに設けられた選択プログラムを記録した媒体におい
    て、 前記マスタプロセッサが走行不能となったことを監視す
    る監視手段と、 前記マスタプロセッサ内のマスタプログラムをコピーし
    たマスタプログラムを設けたことを特徴とする選択プロ
    グラムを記録した媒体。
JP9187907A 1997-07-14 1997-07-14 プロセッサシステムおよび選択プログラムを記録した媒体 Pending JPH1131090A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9187907A JPH1131090A (ja) 1997-07-14 1997-07-14 プロセッサシステムおよび選択プログラムを記録した媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9187907A JPH1131090A (ja) 1997-07-14 1997-07-14 プロセッサシステムおよび選択プログラムを記録した媒体

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2002116062A Division JP2002366536A (ja) 2002-04-18 2002-04-18 プロセッサシステム

Publications (1)

Publication Number Publication Date
JPH1131090A true JPH1131090A (ja) 1999-02-02

Family

ID=16214300

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9187907A Pending JPH1131090A (ja) 1997-07-14 1997-07-14 プロセッサシステムおよび選択プログラムを記録した媒体

Country Status (1)

Country Link
JP (1) JPH1131090A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003248597A (ja) * 2002-02-25 2003-09-05 Nec Corp リグレッションテスト方法及びリグレッションテスト装置
JP2007128372A (ja) * 2005-11-04 2007-05-24 Hitachi Information & Communication Engineering Ltd コンピュータプログラムのテストプログラム生成方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05204689A (ja) * 1992-01-30 1993-08-13 Toshiba Corp 制御装置
JPH0836502A (ja) * 1994-07-25 1996-02-06 Fujitsu Ltd 情報処理システム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05204689A (ja) * 1992-01-30 1993-08-13 Toshiba Corp 制御装置
JPH0836502A (ja) * 1994-07-25 1996-02-06 Fujitsu Ltd 情報処理システム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003248597A (ja) * 2002-02-25 2003-09-05 Nec Corp リグレッションテスト方法及びリグレッションテスト装置
JP2007128372A (ja) * 2005-11-04 2007-05-24 Hitachi Information & Communication Engineering Ltd コンピュータプログラムのテストプログラム生成方法

Similar Documents

Publication Publication Date Title
US4991174A (en) Fault diagnostic distributed processing method and system
US6618805B1 (en) System and method for simplifying and managing complex transactions in a distributed high-availability computer system
JPH05108391A (ja) プログラムの実行を続行する方法
US5951686A (en) Method and system for reboot recovery
JPS61502223A (ja) 再構成可能なデュアル・プロセッサ・システム
JPH01267742A (ja) 故障診断方式
JP2002123402A (ja) 正常なコンピュータ処理を継続する方法、マルチスレッド・コンピュータ・システム、及びプログラム製品
EP0102434B1 (fr) Dispositif pour signaler à l'unité de commande centrale d'un équipement de traitement de données, les erreurs se produisant dans les adaptateurs
US7178056B2 (en) Rolling software upgrades for fault tolerant systems
JPH0950424A (ja) ダンプ採取装置およびダンプ採取方法
US5835698A (en) Unilaterally-controlled, time-insensitive, data-link recovery apparatus and method
JP2002366536A (ja) プロセッサシステム
US20050033952A1 (en) Dynamic scheduling of diagnostic tests to be performed during a system boot process
JPH0721049A (ja) 障害処理システム
US5280606A (en) Fault recovery processing for supercomputer
CN110399258B (zh) 一种服务器系统的稳定性测试方法、系统及装置
JP2990008B2 (ja) プロセッサの自己診断方式
CN119675652B (zh) 状态恢复电路及其方法、装置、电子设备和存储介质
CN112306763B (zh) 一种对冗余数据源的选择方法及装置
JPH08339335A (ja) 冗長系切替監視制御装置
CN121658293A (zh) 设备切换方法、装置、设备及存储介质
JPH0579952A (ja) プラント異常診断装置
JPS6026588A (ja) エレベ−タのデ−タ収録装置
JPS60198649A (ja) ル−プ検出制御方式
JPH1063531A (ja) 演算異常検知装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20020514