JP2002366536A - プロセッサシステム - Google Patents

プロセッサシステム

Info

Publication number
JP2002366536A
JP2002366536A JP2002116062A JP2002116062A JP2002366536A JP 2002366536 A JP2002366536 A JP 2002366536A JP 2002116062 A JP2002116062 A JP 2002116062A JP 2002116062 A JP2002116062 A JP 2002116062A JP 2002366536 A JP2002366536 A JP 2002366536A
Authority
JP
Japan
Prior art keywords
program
processor
master
test
error
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
JP2002116062A
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 JP2002116062A priority Critical patent/JP2002366536A/ja
Publication of JP2002366536A publication Critical patent/JP2002366536A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Hardware Redundancy (AREA)

Abstract

(57)【要約】 【課題】 試験プログラムにおける再現テストを加速
し、早期に障害を発見する。 【解決手段】 CPU2,3〜4とメモリ5,6〜7を
有しマスタとして動作するマスタプロセッサ8とスレー
ブとして動作する複数のスレーブプロセッサ9,10を
並列に接続し、試験プログラム14〜16の実行中に障
害を発見するプロセッサシステムにおいて、マスタプロ
セッサ8にエラーが発生したときのシード値をスレーブ
プロセッサ9,10より収集するシード値収集手段(障
害早期発見プログラム74内に収容)と、次回の試験で
は収集したシード値をもとに前記試験プログラムを起動
する試験プログラム起動手段(障害早期発見プログラム
74内に収容)とを備えているため、試験プログラムが
シード値を基に起動され、再現テストが加速され、早期
に障害を発見できる。

Description

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

    【特許請求の範囲】
  1. 【請求項1】CPUとメモリを有しマスタとして動作す
    るマスタプロセッサとスレーブとして動作する複数のス
    レーブプロセッサを並列に接続し、試験プログラムをそ
    れぞれ実行して障害を発見するプロセッサシステムにお
    いて、 前記マスタプロセッサに、 エラーが発生したときのシード値を前記スレーブプロセ
    ッサより収集するシード値収集手段と、 次回の試験では収集したシード値をもとに前記試験プロ
    グラムを起動する試験プログラム起動手段と、を備えた
    ことを特徴とするプロセッサシステム。
  2. 【請求項2】CPUとメモリを有しマスタとして動作す
    るマスタプロセッサとスレーブとして動作する複数のス
    レーブプロセッサを並列に接続し、試験プログラムをそ
    れぞれ実行して障害を発見するプロセッサシステムにお
    いて、 前記マスタプロセッサに、 項目ごとに決められた回数と同一のシード値を設定する
    項目設定手段と、 設定された項目ごとに試験プログラムを起動する第3の
    試験プログラム起動手段と、 試験した結果発生したエラー回数を項目ごとに算出する
    エラー回数算出手段と、 算出された項目ごとのエラー回数を表示処理する表示処
    理手段と、を備えたことを特徴とするプロセッサシステ
    ム。
  3. 【請求項3】CPUとメモリを有しマスタとして動作す
    るマスタプロセッサとスレーブとして動作する複数のス
    レーブプロセッサを並列に接続し、試験プログラムをそ
    れぞれ実行して障害を発見するプロセッサシステムにお
    いて、 前記マスタプロセッサに、 試験プログラムを起動して所定の時間間隔でエラー回数
    を前記スレーブプロセッサごとに収集するエラー回数収
    集手段と、 収集したエラー回数の累積値を前記スレーブプロセッサ
    ごとに算出するエラー回数累積値算出手段と、 エラー回数累積値を前記スレーブプロセッサごとに表示
    処理するエラー回数累積表示処理手段と、を備えたこと
    を特徴とするプロセッサシステム。
JP2002116062A 2002-04-18 2002-04-18 プロセッサシステム Pending JP2002366536A (ja)

Priority Applications (1)

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

Applications Claiming Priority (1)

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

Related Parent Applications (1)

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

Publications (1)

Publication Number Publication Date
JP2002366536A true JP2002366536A (ja) 2002-12-20

Family

ID=19194014

Family Applications (1)

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

Country Status (1)

Country Link
JP (1) JP2002366536A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7653768B2 (en) 2006-08-24 2010-01-26 Fanuc Ltd Method, system, and program for master and slave units connected in daisy chain wherein appended error code is transferred between the units
JP2011013953A (ja) * 2009-07-02 2011-01-20 Nec Corp 情報処理装置及びそのプロセッサ管理方法
KR101018373B1 (ko) 2008-10-03 2011-03-02 후지쯔 가부시끼가이샤 컴퓨터 장치, 프로세서 진단 방법 및 프로세서 진단 제어 프로그램을 저장하는 기억 매체
WO2013175576A1 (ja) * 2012-05-22 2013-11-28 富士通株式会社 値管理方法、情報処理装置及びプログラム
JP2016134049A (ja) * 2015-01-21 2016-07-25 日立オートモティブシステムズ株式会社 車両制御装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7653768B2 (en) 2006-08-24 2010-01-26 Fanuc Ltd Method, system, and program for master and slave units connected in daisy chain wherein appended error code is transferred between the units
EP1892872A3 (en) * 2006-08-24 2012-06-13 Fanuc Corporation Error check for master-slave data transfer
KR101018373B1 (ko) 2008-10-03 2011-03-02 후지쯔 가부시끼가이샤 컴퓨터 장치, 프로세서 진단 방법 및 프로세서 진단 제어 프로그램을 저장하는 기억 매체
JP2011013953A (ja) * 2009-07-02 2011-01-20 Nec Corp 情報処理装置及びそのプロセッサ管理方法
WO2013175576A1 (ja) * 2012-05-22 2013-11-28 富士通株式会社 値管理方法、情報処理装置及びプログラム
JP2016134049A (ja) * 2015-01-21 2016-07-25 日立オートモティブシステムズ株式会社 車両制御装置

Similar Documents

Publication Publication Date Title
US20240028445A1 (en) Automatic root cause analysis using ternary fault scenario representation
Melliar-Smith et al. Software reliability: The role of programmed exception handling
JP2547069B2 (ja) 故障診断方式
CN102736956B (zh) 线程通信和同步技术
JPH05108391A (ja) プログラムの実行を続行する方法
JPS61502223A (ja) 再構成可能なデュアル・プロセッサ・システム
KR100252250B1 (ko) 시스템복구장치
CN109254525A (zh) 用于运行两个冗余的***的方法和设施
JP2002366536A (ja) プロセッサシステム
US5835698A (en) Unilaterally-controlled, time-insensitive, data-link recovery apparatus and method
CN110489260A (zh) 故障识别方法、装置及bmc
JPH0721049A (ja) 障害処理システム
JPH1131090A (ja) プロセッサシステムおよび選択プログラムを記録した媒体
Weber et al. Diagnosis and repair of dependent failures in the control system of a mobile autonomous robot
Kim et al. Approaches to implementation of a repairable distributed recovery block scheme
US5280606A (en) Fault recovery processing for supercomputer
KR19980043103A (ko) 자동제어시스템에서 현장제어장치의 콘트롤러 이중화 제어방법및 그 장치
CN112306763B (zh) 一种对冗余数据源的选择方法及装置
JP2990008B2 (ja) プロセッサの自己診断方式
JPS58195257A (ja) 電子計算機の障害回復方式
JPH07334383A (ja) 監視診断機能付計算機
JP3488903B2 (ja) プログラマブルコントローラおよびそのプロセス故障監視方法
JPS6027423B2 (ja) 擬似間欠誤り検査符号発生装置
JPS5983438A (ja) プログラム異常検出方式
JPS61292457A (ja) 電子交換機の診断方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050607

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20051018