[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2988518B2 - マルチプロセッサ制御方式 - Google Patents

マルチプロセッサ制御方式

Info

Publication number
JP2988518B2
JP2988518B2 JP9083288A JP8328897A JP2988518B2 JP 2988518 B2 JP2988518 B2 JP 2988518B2 JP 9083288 A JP9083288 A JP 9083288A JP 8328897 A JP8328897 A JP 8328897A JP 2988518 B2 JP2988518 B2 JP 2988518B2
Authority
JP
Japan
Prior art keywords
processor
random number
multiprocessor
master
multiprocessor system
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 - Fee Related
Application number
JP9083288A
Other languages
English (en)
Other versions
JPH10260948A (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.)
NEC Corp
Original Assignee
Nippon Electric Co 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP9083288A priority Critical patent/JP2988518B2/ja
Publication of JPH10260948A publication Critical patent/JPH10260948A/ja
Application granted granted Critical
Publication of JP2988518B2 publication Critical patent/JP2988518B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Hardware Redundancy (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は複数のプロセッサを
有するマルチプロセッサシステムにおけるマルチプロセ
ッサ制御方式に関し、特にマスタプロセッサを指定して
マルチプロセッサシステムを立ち上げるマルチプロセッ
サシステムにおけるマルチプロセッサ制御方式に関す
る。
【0002】
【従来の技術】従来、マルチプロセッサシステムにおい
て、マスタプロセッサを決定する方法として、メインメ
モリの特定の領域にシステム構成テーブルを持ち、各プ
ロセッサが自プロセッサ番号に対応するビットをセット
し、最小のプロセッサ番号のプロセッサをマスタプロセ
ッサとして判別するという方法があった(例えば、特開
昭61−253551号公報,特開昭63−18276
8号公報等参照)。
【0003】
【発明が解決しようとする課題】第1の問題点は、従来
の技術において、各プロセッサ間で同期をとってメイン
メモリにビットを書き込むために長い制限時間が必要に
なるということである。その理由は、各プロセッサがメ
インメモリに自プロセッサ番号を書き込む処理は、ソフ
トウェア的に同期をとって行われなければ、それぞれの
プロセッサが自プロセッサをマスタプロセッサと誤認し
て誤動作する可能性があるからである。
【0004】第2の問題点は、従来の技術において、1
つのプロセッサの負荷を大きくする可能性があるという
ことである。その理由は、最小のプロセッサ番号のプロ
セッサがマスタプロセッサであると判別されるので、偏
ったプロセッサのみがマスタプロセッサとなるおそれが
あるからである。
【0005】第3の問題点は、従来の技術において、障
害発生後のマルチプロセッサシステムの再立ち上げ時に
システムストールが発生するするおそれがあるというこ
とである。その理由は、障害が発生したプロセッサが再
立ち上げ後にマスタプロセッサとなるおそれがあるから
である。
【0006】本発明の目的は、マスタプロセッサの認識
処理を行う際に時間制限を意識しないですむようにした
マルチプロセッサ制御方式を提供することにある。
【0007】また、本発明の他の目的は、偏ったプロセ
ッサのみがマスタプロセッサとなることを防止し、1つ
のプロセッサの負荷を大きくすることを避けるようにし
たマルチプロセッサ制御方式を提供することにある。
【0008】さらに、本発明の別の目的は、マスタプロ
セッサ番号の変更を可能とすることによって、マスタプ
ロセッサの故障によるシステムストールを避けるように
したマルチプロセッサ制御方式を提供することにある。
【0009】
【課題を解決するための手段】本発明のマルチプロセッ
サ制御方式は、複数のプロセッサを有するマルチプロセ
ッサシステムにおいて、バックアップメモリ上に設けら
れマルチプロセッサシステムに存在する有効な全てのプ
ロセッサ番号を記載するプロセッサ番号テーブルと、マ
ルチプロセッサシステムを立ち上げる毎に乱数を発生さ
せる乱数発生回路と、マルチプロセッサシステムの立ち
上げ時に各プロセッサ上で動作し前記乱数発生回路によ
り発生された乱数を取得して該乱数に基づくポインタを
用いることによって前記プロセッサ番号テーブルよりプ
ロセッサ番号を読み出し、該プロセッサ番号が自プロセ
ッサのプロセッサ番号と一致すれば自プロセッサをマス
タプロセッサとして立ち上げ、該プロセッサ番号が自プ
ロセッサ番号と一致しなければ自プロセッサをスレーブ
プロセッサとして立ち上げるシステム立ち上げ手段を備
える制御手段とを有する。
【0010】
【発明の実施の形態】次に、本発明の実施の形態につい
て図面を参照して詳細に説明する。
【0011】図1は、本発明の一実施の形態に係るマル
チプロセッサ制御方式の構成を示すブロック図である。
本実施の形態に係るマルチプロセッサ制御方式は、MP
U(Micro−Processing Unit)等
でなる複数(図示は4つ)のプロセッサ1,2,3,4
と、マルチプロセッサシステム上に存在する有効な全プ
ロセッサ番号を格納するための特定の領域であるプロセ
ッサ番号テーブル51を備えるバックアップメモリ5
と、マルチプロセッサシステムへの電源投入毎に乱数を
発生する乱数発生回路6と、プロセッサ1,2,3,
4,バックアップメモリ5および乱数発生回路6間を接
続するバス7とから、その主要部が構成されている。
【0012】プロセッサ1,2,3,4上では、システ
ム立ち上げ手段111,211,311,411および
障害処理手段112,212,312,412を備える
制御プログラム11,21,31,41がそれぞれ動作
するようになっている。制御プログラム11,21,3
1,41は、プロセッサ1,2,3,4上のEPROM
(Erasable Programable Rea
d Only Memory)に格納された立ち上げプ
ログラム等で実現される。また、プロセッサ1,2,
3,4には、バス7をハードウェア的に制御するバスコ
ントローラ12,22,32,42がそれぞれ設けられ
ている。さらに、プロセッサ1,2,3,4には、自プ
ロセッサ番号を設定するためのディップスイッチ1a,
2a,3a,4aがそれぞれ設けられている。
【0013】図2(a),(b)は、プロセッサ番号テ
ーブル51の内容を例示する図である。本例のプロセッ
サ番号テーブル51は、プロセッサ番号を格納するため
の9つのエントリを有しており、障害発生前の図2
(a)の状態では、上のエントリから順にプロセッサ番
号1,2,3,4がサイクリックに書き込まれている。
【0014】図3を参照すると、システム立ち上げ手段
111,211,311,411の処理は、乱数引き取
りステップA1と、剰余対応プロセッサ番号リードステ
ップA2と、自プロセッサ番号リードステップA3と、
一致判定ステップA4と、スレーブプロセッサ設定ステ
ップA5と、マスタプロセッサ設定ステップA6とから
なる。
【0015】図4を参照すると、障害処理手段112,
212,312,412の処理は、プロセッサ番号テー
ブル取得ステップB1と、プロセッサ番号テーブル再格
納ステップB2とからなる。
【0016】次に、このように構成された本実施の形態
に係るマルチプロセッサ制御方式の動作について説明す
る。
【0017】マルチプロセッサシステムへの電源投入時
に、乱数発生回路6は、1回だけ乱数を発生して、それ
を保持する。乱数発生回路6にて乱数を発生させるタイ
ミングをマルチプロセッサシステムへの電源投入時の1
回だけとしたことにより、これ以降、各プロセッサ1,
2,3,4が乱数発生回路6に乱数を引き取りにきても
かならず同一の値になる。
【0018】次に、各プロセッサ1,2,3,4では、
制御プログラム11,21,31,41のシステム立ち
上げ手段111,211,311,411が、バスコン
トローラ12,22,32,42を介してバス7の使用
権の競合を制御しながら乱数発生回路6より乱数を引き
取り(ステップA1)、この乱数をプロセッサ番号テー
ブル51のエントリ数”9”で除算した余りをポインタ
としてプロセッサ番号テーブル51を検索して該当する
プロセッサ番号を1つ読み出す(ステップA2)。な
お、バス7の使用権の調停がバスコントローラ12,2
2,32,42によりハードウェア的に行われるので、
ソフトウェア的な待合せ処理を考慮する必要がない。ま
た、ソフトウェア的な待合せ処理よりも、高速なアクセ
スが可能となる。
【0019】次に、システム立ち上げ手段111,21
1,311,411は、自プロセッサのディップスイッ
チ1a,2a,3a,4aから自プロセッサのプロセッ
サ番号をリードし(ステップA3)、リードしたプロセ
ッサ番号とプロセッサ番号テーブル51から読み出した
プロセッサ番号とを比較し(ステップA4)、一致した
場合には自プロセッサがマスタプロセッサであると認識
して(ステップA6)、立ち上げ処理に移行する。
【0020】一方、リードしたプロセッサ番号とプロセ
ッサ番号テーブル51から読み出したプロセッサ番号が
一致しなかった場合、システム立ち上げ手段111,2
11,311,411は、自プロセッサがスレーブプロ
セッサであると認識して(ステップA5)、立ち上げ処
理に移行する。
【0021】また、マルチプロセッサシステムの運用中
にスレーブプロセッサに障害が発生した場合には、マス
タプロセッサは、プロセッサ間通信によってスレーブプ
ロセッサにおける障害の発生を認識して、このスレーブ
プロセッサを縮退状態にして制御を渡さないようにする
とともに、障害処理手段を起動する。以後、マスタプロ
セッサがプロセッサ1で、障害が発生したスレーブプロ
セッサがプロセッサ2であるものとして説明する。
【0022】マスタプロセッサ1の障害処理手段112
は、バックアップメモリ5上のプロセッサ番号テーブル
51からプロセッサ番号の情報(図2(a)参照)をリ
ードし(ステップB1)、障害の発生したスレーブプロ
セッサ2のプロセッサ番号”2”を除いたプロセッサ番
号の情報(図2(b)参照)をプロセッサ番号テーブル
51に再書き込みする(ステップB2)。具体的には、
上のエントリから順にプロセッサ番号1,3,4がサイ
クリックに書き込まれる。
【0023】したがって、この後、マルチプロセッサシ
ステムが一旦停止されて再立ち上げされた際にも、障害
が発生したプロセッサ2がマスタプロセッサになること
はなく、システムストールが発生するおそれはない。な
お、プロセッサ2はマスタプロセッサによって障害の発
生が認識され、縮退状態で動作される。
【0024】また、マルチプロセッサシステムの運用中
にマスタプロセッサ1自身に障害が発生した場合には、
キャッシュや演算器等の障害で致命的でなければ、マス
タプロセッサ1は、障害処理手段112を起動して、ス
レーブプロセッサ2に障害が発生した場合と同様にし
て、プロセッサ番号テーブル51を書き換え、しかる後
にシステムダウンとする。ただし、致命的な障害の場合
には、プロセッサ番号テーブル51を書き換えることな
しに、システムダウンとなることはいうまでもない。
【0025】したがって、プロセッサ番号テーブル51
が書き換えられた場合には、マルチプロセッサシステム
の再立ち上げ時に、障害が発生したプロセッサ1がマス
タプロセッサになることはなく、システムストールが発
生するおそれはない。なお、プロセッサ1はマスタプロ
セッサによって障害の発生が認識され、縮退状態で動作
される。
【0026】ところで、上記実施の形態では、プロセッ
サの数が4つの場合を例にとって説明したが、プロセッ
サの数が3つ以下、および5つ以上の場合にも本発明が
同様に適用可能であることはいうまでもない。
【0027】また、プロセッサ番号テーブル51のエン
トリ数を9つとしたが、エントリ数が8つ以下、および
10以上の場合にも本発明が同様に適用可能であること
はいうまでもない。
【0028】さらに、乱数をプロセッサ番号テーブル5
1のエントリ数で除算した余りをポインタとした場合に
ついて説明したが、乱数からポインタを導出する演算が
この演算に限られないことはいうまでもない。
【0029】
【発明の効果】第1の効果は、マスタプロセッサの認識
処理を実行する際に時間制限を意識しないですむという
ことである。その理由は、待合せ処理等の同期を必要と
するソフトウェア処理がなくなったからである。
【0030】第2の効果は、偏ったプロセッサのみがマ
スタプロセッサとなり、負荷を大きくすることを避ける
ことができるということである。その理由は、乱数を発
生させることによって、各プロセッサがマスタプロセッ
サになる確率が平均化されるからである。
【0031】第3の効果は、マスタプロセッサの故障に
よるシステムストールを避けることができるということ
である。その理由は、障害が発生したプロセッサのプロ
セッサ番号を除くようにプロセッサ番号テーブルを書き
換えるので、マルチプロセッサシステムの再立ち上げ後
に障害が発生したプロセッサがマスタプロセッサとなる
ことがないからである。
【図面の簡単な説明】
【図1】本発明の一実施の形態に係るマルチプロセッサ
制御方式の構成を示すブロック図である。
【図2】(a)および(b)は図1中プロセッサ番号テ
ーブルの障害発生前および障害発生後の内容例をそれぞ
れ示す図である。
【図3】図1中のシステム立ち上げ手段の処理を示すフ
ローチャートである。
【図4】図1中の障害処理手段の処理を示すフローチャ
ートである。
【符号の説明】
1,2,3,4 プロセッサ 5 バックアップメモリ 6 乱数発生回路 7 バス 11,21,31,41 制御プログラム 12,22,32,42 バスコントローラ 51 プロセッサ番号テーブル 111,211,311,411 システム立ち上げ手
段 112,212,312,412 障害処理手段 A1 乱数引き取りステップ A2 剰余対応プロセッサ番号リードステップ A3 自プロセッサ番号リードステップ A4 一致判定ステップ A5 スレーブプロセッサ設定ステップ A6 マスタプロセッサ設定ステップ B1 プロセッサ番号テーブル取得ステップ B2 プロセッサ番号テーブル再格納ステップ
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 15/16 - 15/16 470 G06F 11/16 - 11/20 310

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数のプロセッサを有するマルチプロセ
    ッサシステムにおいて、 バックアップメモリ上に設けられマルチプロセッサシス
    テムに存在する有効な全てのプロセッサ番号を記載する
    プロセッサ番号テーブルと、 マルチプロセッサシステムを立ち上げる毎に乱数を発生
    させる乱数発生回路と、 マルチプロセッサシステムの立ち上げ時に各プロセッサ
    上で動作し、前記乱数発生回路により発生された乱数を
    取得して該乱数に基づくポインタを用いることによって
    前記プロセッサ番号テーブルよりプロセッサ番号を読み
    出し、該プロセッサ番号が自プロセッサのプロセッサ番
    号と一致すれば自プロセッサをマスタプロセッサとして
    立ち上げ、該プロセッサ番号が自プロセッサ番号と一致
    しなければ自プロセッサをスレーブプロセッサとして立
    ち上げるシステム立ち上げ手段を備える制御手段とを有
    することを特徴とするマルチプロセッサ制御方式。
  2. 【請求項2】 前記制御手段が、プロセッサの異常を検
    出した際に前記バックアップメモリ上のプロセッサ番号
    テーブルを書き換えることによって障害が発生したプロ
    セッサをマスタプロセッサと認識することを避ける障害
    処理手段を備える請求項1記載のマルチプロセッサ制御
    方式。
  3. 【請求項3】 前記システム立ち上げ手段が、前記乱数
    発生回路から取得した乱数を前記プロセッサ番号テーブ
    ルのエントリ数で除算した余りをポインタとする請求項
    1記載のマルチプロセッサ制御方式。
JP9083288A 1997-03-17 1997-03-17 マルチプロセッサ制御方式 Expired - Fee Related JP2988518B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9083288A JP2988518B2 (ja) 1997-03-17 1997-03-17 マルチプロセッサ制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9083288A JP2988518B2 (ja) 1997-03-17 1997-03-17 マルチプロセッサ制御方式

Publications (2)

Publication Number Publication Date
JPH10260948A JPH10260948A (ja) 1998-09-29
JP2988518B2 true JP2988518B2 (ja) 1999-12-13

Family

ID=13798211

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9083288A Expired - Fee Related JP2988518B2 (ja) 1997-03-17 1997-03-17 マルチプロセッサ制御方式

Country Status (1)

Country Link
JP (1) JP2988518B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070288738A1 (en) * 2006-06-09 2007-12-13 Dale Jason N System and method for selecting a random processor to boot on a multiprocessor system
US7594104B2 (en) * 2006-06-09 2009-09-22 International Business Machines Corporation System and method for masking a hardware boot sequence
US20070288740A1 (en) * 2006-06-09 2007-12-13 Dale Jason N System and method for secure boot across a plurality of processors

Also Published As

Publication number Publication date
JPH10260948A (ja) 1998-09-29

Similar Documents

Publication Publication Date Title
JP5119686B2 (ja) 情報処理装置および設定方法
JPH04133102A (ja) プログラマブル・コントローラ及びその制御方法
JP2007334403A (ja) 計算機システム障害対応方式及び計算機システム障害対応方法
JP2004046453A (ja) シングルチップマイクロコンピュータおよびそのブート領域切り替え方法
JP2988518B2 (ja) マルチプロセッサ制御方式
US8799706B2 (en) Method and system of exchanging information between processors
US10540222B2 (en) Data access device and access error notification method
JPH06324900A (ja) 計算機
JP2001256044A (ja) データ処理装置
JP2012173919A (ja) 情報処理装置、車両用電子制御ユニット、データ記憶方法
JP4853620B2 (ja) マルチプロセッサシステムと初期立ち上げ方法およびプログラム
JP2001051854A (ja) 情報管理システム
JP4137387B2 (ja) フェールセーフコンピュータシステム
JPS62168229A (ja) システム構成自動認識処理方法
JP2001256055A (ja) プログラムダウンロード方式
JPH08212093A (ja) フォールトトレラント計算機システム
JPH06250868A (ja) 計算機
JPH10161879A (ja) 計算機システム
JPS61117635A (ja) 仮想記憶制御方式
JP2847729B2 (ja) 情報処理装置
JP3729250B2 (ja) 情報処理装置及び電子機器
JPH05324593A (ja) マルチ・プロセッサシステムにおけるタスク管理方式
JP3405513B2 (ja) プログラマブルコントローラの二重化制御装置
JP3900097B2 (ja) マルチプロセッサシステム、コンピュータ性能調整プログラム
JPS63155330A (ja) マイクロプログラム制御装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees