JP2005301593A - マルチプロセッサシステム、プロセッサ装置 - Google Patents

マルチプロセッサシステム、プロセッサ装置 Download PDF

Info

Publication number
JP2005301593A
JP2005301593A JP2004115732A JP2004115732A JP2005301593A JP 2005301593 A JP2005301593 A JP 2005301593A JP 2004115732 A JP2004115732 A JP 2004115732A JP 2004115732 A JP2004115732 A JP 2004115732A JP 2005301593 A JP2005301593 A JP 2005301593A
Authority
JP
Japan
Prior art keywords
history information
information
multiprocessor system
mounting position
cpu
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
JP2004115732A
Other languages
English (en)
Inventor
Masafumi Kubo
雅史 久保
Takashi Chiba
隆 千葉
Hiroshi Koseki
浩史 小関
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
PFU Ltd
Original Assignee
Fujitsu Ltd
PFU 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, PFU Ltd filed Critical Fujitsu Ltd
Priority to JP2004115732A priority Critical patent/JP2005301593A/ja
Priority to US10/998,152 priority patent/US20050240830A1/en
Publication of JP2005301593A publication Critical patent/JP2005301593A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/006Identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • G06F11/0724Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU] in a multiprocessor or a multi-core unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】 マルチプロセッサシステムにおけるCPUボードの交換履歴に関する情報を正確かつ自動的に記録できるようにする。
【解決手段】 マルチプロセッサシステム1の初期化にあたり、履歴情報供給部108から供給されるCPUボード5の搭載位置を示す搭載位置情報を含んだ装置履歴情報を、装置履歴情報を複数格納可能なCPUボード5内の不揮発性の記憶部101に格納するようにして、CPUボード5の搭載位置情報を各CPUボード5に正確かつ自動的に記録し、CPUボード5の搭載位置に関する履歴をCPUボード5単位で記録及び管理することができるようにする。
【選択図】 図3

Description

本発明は、CPUをそれぞれ有する複数のプロセッサ装置から構成されるマルチプロセッサシステムに関する。
一般に、計算機システムにおいて何らかの障害が発生した場合には、障害調査を行って故障部位を交換単位レベル(例えば、ボード単位)で特定し、特定された故障部位を正常に動作するものと交換することで、システム障害からの復旧作業が実施される。特定された故障部位は、交換後に障害の再現試験等により障害解析が行われ、故障箇所を部品レベルまで特定した上で当該故障部品が良品と交換される。このようなプロセスを経て、障害が発生したシステムから取り除かれた故障部位は、障害の原因となった故障部品が交換され、正常に動作することを確認した上で良品として再利用される。
計算機システムは、所定の出荷試験により動作確認を行った後に出荷し稼動しているため、システムにおいて稼動後に障害が発生する頻度は一般に小さい。しかし、稼動後に障害が発生した際の障害原因の特定は、高度なエラー検出、エラー訂正、エラーログ記録等のRAS(Reliability、Availability、Serviceability)機能をシステムが具備していない場合には、多大な労力や時間を要し困難であることが多い。
ここで、記録媒体を用いる一般的な情報検索システムにおいては、記録媒体の検索テーブルやコンピュータシステム内の検索テーブルに格納データの更新履歴を記憶するものがある(例えば、特許文献1参照。)。
特開平6−325095号公報
現在、一般のマイクロプロセッサは、上述したようなRAS機能を具備していないものが多い。そのため、マイクロプロセッサをCPUとして搭載しているシステムでは、障害原因の特定は非常に困難であり、故障部位を特定でき良品と交換したとしても、取り除かれた故障部位を用いた再現試験で障害が再現されないことがある。また、再現試験や障害解析が、障害が発生したときの実際のシステム稼働環境と同等の環境のもとで実行できることが少ないことも、障害の再現が困難な理由の1つである。
ここで、CPUとしてマイクロプロセッサがそれぞれ搭載された多数のCPUボードから構成され、かつ各CPUボードが筐体に設けられたスロット(搭載部)に対して挿抜可能なように構成されたマルチプロセッサシステムがある。このような多数のマイクロプロセッサ(CPUボード)を搭載する大規模なマルチプロセッサシステムにおいては、故障箇所の特定はより困難となる。
これは、システムのサイズが大きくなることで冷却能力に筐体内の位置バラツキが生じるとともに、キャリアボードのサイズが大きくなることで配線状態が変わることによる搭載位置依存性が生じるためである。これにより、システムの周囲温度などの設置環境が異なると障害を再現しなかったり、持ち帰った故障部位を対応する搭載位置とは異なる別の搭載位置に搭載すると障害を再現しなかったりするといったことがある。
障害が再現されない場合には、故障部位として持ち帰った物品は良品と判断して再利用されるため、再利用後に障害を再発するおそれがある。
また、システムのある特定の搭載位置のみで障害が繰り返し発生する場合には、故障部位として持ち帰った物品そのものには障害原因が存在せず、システム自体に障害原因があることも想定される。
このような問題を解決するには、CPUボードの交換履歴に関する情報を追跡することが重要であるが、ユーザによるCPUボードの出し入れ(交換)等が行われたりして交換履歴が不正確であると、却って障害解析に悪影響を与え混乱を招いてしまう。
本発明は、このような事情に鑑みてなされたものであり、マルチプロセッサシステムにおけるCPUボードの交換履歴に関する情報を正確かつ自動的に記録できるようにすることを目的とする。
本発明のマルチプロセッサシステムは、システムの初期化にあたり、上記プロセッサ装置に対して装置履歴情報を供給する履歴情報供給手段と、上記各プロセッサ装置が有し、上記装置履歴情報を複数格納可能であるとともに、不揮発性かつ書き換え可能な記憶手段とを備える。上記装置履歴情報は、マルチプロセッサシステムにてプロセッサ装置が搭載されている位置を示す搭載位置情報を含む。
上記構成によれば、システム初期化の際に供給されるマルチプロセッサシステムにおけるプロセッサ装置の搭載位置情報を各プロセッサ装置に正確かつ自動的に複数記録することができる。
また、履歴情報供給手段から供給される装置履歴情報の搭載位置情報と、記憶手段に既に格納されている最新の装置履歴情報の搭載位置情報との比較を行い、その結果、搭載位置情報が異なる場合に、供給された装置履歴情報を記憶手段に格納するようにしても良い。このようにした場合には、記憶手段に格納されている最新の装置履歴情報の搭載位置情報と異なる場合のみ、すなわち搭載位置が変わった場合のみ、供給された装置履歴情報を記憶手段に格納するので、記憶手段に効率良く装置履歴情報を格納することができるようになり、記憶手段に要求される記憶容量を低減することが可能となる。
本発明によれば、マルチプロセッサシステムにおけるプロセッサ装置の搭載位置を各プロセッサ装置に正確かつ自動的に複数記録し、プロセッサ装置の搭載位置に関する履歴をプロセッサ装置単位で記録及び管理することができる。これにより、システムにて障害が発生した場合に、障害が間欠的に発生する或いは再現しない場合等であっても、障害原因の搭載位置依存性やプロセッサ装置依存性を解析・検出でき、障害原因解析に要するコストを低減することができる。
以下、本発明の実施形態を図面に基づいて説明する。
図1は、本発明の一実施形態によるマルチプロセッサシステム1のシステム構成例を示すブロック図である。
マルチプロセッサシステム1は、中央演算処理装置であるCPU10−i、主記憶装置であるMSU(Main Storage Unit)20−i、フラッシュメモリ(Flash−ROM、以下「ROM」と称す。)30−i、ネットワークインタフェース(NIC:Network Interface Card)40−i、システムコントローラ50、クロック発生器60、及びコンソールポート(CP:Console-Port)70−iを備える。なお、iは添え字であり、図1に示した例ではi=0〜3の整数である(以下の説明でも同様。)。
CPU10−iは、プログラムを構成する命令の読み出し(フェッチ)、解釈(デコード)及び実行を行う。すなわち、各CPU10−iは、プログラムを読み出して実行することで、接続されているMSU20−i、ROM30−i、及びNIC40−i等の制御を行う。
各CPU10−iには、MSU20−iがメモリバス(メモリインタフェース)MBiを介して接続され、ROM30−i及びNIC40−i等がローカルバスLBiを介して接続されている。具体的には、CPU10−0には、メモリバスMB0を介してMSU20−0が接続され、ローカルバスLB0を介してROM30−0及びNIC40−0等が接続されている。CPU10−1〜10−3も同様に、それぞれ対応するMSU20−1〜20−3、ROM30−1〜30−3、NIC40−1〜40−3等が接続されている。
ここで、図1に示すように、1組のCPU10−i、MSU20−i、ROM30−i及びNIC40−i等により1つのCPUボード5−iがそれぞれ構成される。そして、各CPUボード5−iは、これを単位として、マルチプロセッサシステム1の筐体に設けられたスロット(搭載部)に対して挿抜可能、つまり交換可能となっている。
また、各CPU10−i(各CPUボード5−i)は、コンソールポート70−iに接続されている。
また、各CPU10−iには、リセット信号(システムリセット信号)SRST、クロック基準信号RCLK、クロックモード信号CMOD、及びブートモード信号BMODがシステムコントローラ50から供給され、クロックソース(クロック入力信号)SCLKがクロック発生器60から供給される。リセット信号SRSTがリセット入力端子<RST>より入力され、クロックソースSCLKがクロック入力端子<CLKIN>より入力される。また、クロック基準信号RCLK、クロックモード信号CMOD、及びブートモード信号BMODが、異なる汎用入出力端子<GPIO:General Purpose I/O>よりそれぞれ入力される。なお、各信号の詳細については後述する。
MSU20−iは、メモリ(例えば、SDRAMなどのRAM)等で構成され、OS(オペレーティングシステム)などのプログラムやデータ等を一時的に記憶する。MSU20−iは、CPU10−iが各種の制御を行う時に用いられ、CPU10−iのいわゆる主メモリあるいはワークエリア等として機能する。
ROM30−iには、自らを含み構成されるCPUボード5−iに関するボード情報が記憶されるとともに、マルチプロセッサシステム1にて搭載されたスロット(搭載位置)を示す搭載位置情報を含む装置履歴情報が記憶される。また、ROM30−iには、CPU10−iが実行するプログラム(ブートプログラム、又はブートプログラムとOS)やデータ等が記憶されている。なお、本実施形態においては、ROM30−iとしてフラッシュメモリを一例として示しているが、これに限定されるものではなく、書き換え可能な不揮発性メモリであれば良い。
NIC40−iは、ネットワーク(図1においては、LAN80)を介してCPU10−iと外部機器との間でデータ等を送受信するための通信インタフェースである。なお、本実施形態においては、LAN80をネットワークの一例として示しているが、これに限定されるものではなく、一般に用いられる任意のネットワークが適用可能である。
システムコントローラ50は、当該マルチプロセッサシステム1全体を制御するものであり、システム識別情報記憶部51を有し構成される。システムコントローラ50は、リセット信号SRST、クロック基準信号RCLK、クロックモード信号CMOD、及びブートモード信号BMODを出力する。
また、システムコントローラ50は、各コンソールポート70−iを介してCPU10−iと通信可能なように接続されており、システムの初期化時には各CPUボード5−iに装置履歴情報を供給する。システムコントローラ50は、オペレータ等が操作可能な外部コンソールに対しても通信可能なように接続されている。
システム識別情報記憶部51は、不揮発性記憶装置(不揮発性メモリ)により構成され、当該マルチプロセッサシステム1に付与されているシステム識別情報(例えば、当該システムが一意に識別可能な固有のシリアル番号)を保持している。システム識別情報記憶部51に保持されているシステム識別情報は、マルチプロセッサシステム1の初期化時に必要に応じ、各CPUボード5−iにコンソールポート70−iを介して供給される。
クロック発生器60は、クロックソースSCLKを生成し出力する。クロック発生器60にて生成し出力するクロックソースSCLKの周波数は、クロック発生器60を制御することにより任意に変更可能である。
コンソールポート70−iは、CPU10−iとシステムコントローラ50との間でデータ等を送受信するための入出力インタフェースである。コンソールポート70−iは、例えば、システムの初期化時にシステムコントローラ50からのCPUボード5−iに係る装置履歴情報やシステム識別情報をCPU10−iに送信する。また、例えば、オペレータに伝えるためにCPU10−iで稼動しているOSからのメッセージをシステムコントローラ50に送信したり、システムコントローラ50からのコマンドをCPU10−iに送信したりする。
ここで、リセット信号SRST、クロック基準信号RCLK、クロックモード信号CMOD、ブートモード信号BMOD、及びクロックソースSCLKについて説明する。
リセット信号SRSTは、マルチプロセッサシステム1を構成する各CPU10−iを初期化するための、いわゆるハードリセット信号である。
クロックソースSCLKは、動作クロック信号としてCPU10−iに供給されるクロック信号である。
クロック基準信号RCLKは、クロック調整用の固定された基準信号であり、一定のデューティ比(クロックデューティ)を有するとともに、クロックソースSCLKに対して比較的低い周波数の信号である。例えば、クロック基準信号RCLKの周波数は1MHzであり、クロックソースSCLKの周波数は37MHz〜66MHzである。なお、クロック基準信号RCLKについての情報は、CPU10−iに適宜供給され保持されている。
クロックモード信号CMODは、マルチプロセッサシステム1においてクロック調整を行うための、CPUの動作クロックと各種インタフェースの制御クロックとの周波数の関係、より詳しくは図2に示すCPUコア、メモリバス(メモリ)、及びローカルバスのクロック周波数の比を示す信号である。このクロックモード信号CMODにより示される値に応じて、CPUの動作クロックと各種インタフェースの制御クロックとの周波数の関係は一意に決定される。
ブートモード信号BMODは、ブートシーケンスを指示する信号である。
なお、図1においては、4つのCPUボード5−0〜5−3で構成されたマルチプロセッサシステムを一例として図示しているが、マルチプロセッサシステムが有するCPUボードの数は任意である。
図2は、CPU10−iの構成例を示すブロック図である。
なお、各CPU10−iの構成は同様であるので、図2においては1つのCPUのみ示している。したがって、図1で符号に付した添え字iについては付していない。また、図2において、図1に示したブロック等と同一の機能を有するブロック等には同一の符号を付し、重複する説明は省略する。
CPU10は、CPUコア11、メモリコントローラ12、バスコントローラ13、クロック制御回路14、タイマ15、及びSCC(シリアルコミュニケーションコントローラ)16を有する。
CPUコア11は、CPU10においてデータに演算や加工等を施す演算処理を実行するものである。
メモリコントローラ12は、メモリバスMBを介してMSU20に接続されており、CPUコア11からの指示に基づいてMSU20を制御する。すなわち、メモリコントローラ12は、CPUコア11からの指示に応じて、MSU20にデータを書き込んだり、MSU20からデータを読み出したりする。
バスコントローラ13は、CPUコア11からの指示に基づいてローカルバスLBに接続された周辺デバイスを制御する。また、バスコントローラ13は、タイマ15及びSCC16に対して接続されている。バスコントローラ13には、クロック基準信号RCLK及びブートモード信号BMODがシステムコントローラ50から供給される。
クロック制御回路14は、逓倍回路及びPLL(Phase Locked Loop)回路を含み構成される。クロック制御回路14は、クロックモード信号CMODを参照して、それにより示される値に応じた周波数比の各クロック信号CCK、MCK、BCK、TCKをクロックソースSCLKを用いて生成する。そして、クロック制御回路14は、生成したクロック信号CCK、MCK、BCK、TCKを、CPUコア11、メモリコントローラ12、バスコントローラ13、タイマ15にそれぞれ供給する。なお、図2においては、バスコントローラ13及びタイマ15に供給するクロック信号BCK、TCKは異なるクロック信号としているが、バスコントローラ13及びタイマ15に供給するクロック信号は同じクロック信号であっても良い。
タイマ15は、供給されるクロック信号TCKに基づいて計時動作を行うものである。
SCC16は、CPU10とシステムコントローラ50との間でコンソールポート70を介してデータをシリアル伝送するためのコントローラである。
次に、CPUボード5の機能的な構成について説明する。
図3は、CPUボード5の機能的な構成を示す機能ブロック図であり、ここでは、要素的特徴のみを示している。
本実施形態においては、例えば、CPU10及びROM30のブートプログラムから、以下の各機能部104、105、106、及び107が構成され、ROM30により記憶部101が構成される。
図3において、記憶部101は、CPUボード5の装置履歴情報を格納するものであり、最新値ポインタ102及び装置履歴情報103を記憶する。最新値ポインタ102は、記憶部101に記憶されている装置履歴情報103の格納順番を管理するためのものであり、最新の装置履歴情報の格納位置を示す。すなわち、最新値ポインタ102により示される記憶部101内のアドレスに最新の装置履歴情報が記憶されている。
履歴情報受信部104は、システムコントローラ50内の履歴情報供給部108から供給されるCPUボード5の装置履歴情報を受信し、それを情報比較部105に出力する。この受信する装置履歴情報には、上述したようにマルチプロセッサシステム1にてCPUボード5が搭載されているスロット(搭載位置)を示す搭載位置情報が含まれている。
情報比較部105は、履歴情報受信部104から供給される装置履歴情報と、記憶部101に既に格納されている最新の装置履歴情報とを比較し、比較結果を情報更新部106に通知する。具体的には、情報比較部105は、記憶部101に記憶されている最新値ポインタ102を参照し、それが示すアドレスから最新の装置履歴情報を読み出す。そして、情報比較部105は、履歴情報受信部104から供給される装置履歴情報の搭載位置情報と、記憶部101から読み出した最新の装置履歴情報の搭載位置情報とが一致するか否かを比較・判定し、その結果を情報更新部106に通知する。
情報更新部106は、情報比較部105により装置履歴情報の搭載位置情報が異なると判定された場合に、履歴情報受信部104にて受信した装置履歴情報を記憶部101に記憶させるとともに、最新値ポインタ102を更新する。
なお、履歴情報受信部104、情報比較部105、情報更新部106は、制御部107によりそれぞれ制御される。
次に、本実施形態におけるROM30について図4を参照し説明する。なお、上述したようにROM30には、ボード情報、装置履歴情報、プログラム及びデータ等が格納されるが、図4においては、プログラム及びデータ等が格納される領域については明示していない。
図4において、(a)は搭載位置情報を含む装置履歴情報の記録フォーマットの一例を示す図であり、(b)はROM内における装置固有情報記録領域の一例を示す図である。
図4(a)に示すように、1つの装置履歴情報は、バイトオフセット値00〜15に示されるように16バイト長のデータである。
バイトオフセット値00に対応する1バイト分のフィールドには、データフォーマット識別子が記録される。
バイトオフセット値01〜07に対応する7バイト分のフィールドには、搭載位置情報としてのMACアドレスが記録される。ここで、本実施形態ではMACアドレスの形式は、6バイトデータからなるMACアドレスベース部(MAC Address[0]〜MAC Address[5])と、1バイトデータからなる識別子(PE Identifier)とを結合したものとしている。識別子(PE Identifier)は、0〜127の値を持つものであり、この識別子(PE Identifier)の値によりマルチプロセッサシステム1内でのCPUボード5の搭載位置が一意に識別可能となっている。つまり、識別子(PE Identifier)の値とマルチプロセッサシステム1に設けられたCPUボードを接続可能な各スロットとは1対1の関係で対応している。なお、図4(a)に示す例では、識別子(PE Identifier)が取り得る値を0〜127、つまりスロットの数が128以下としているが、スロットの数が129以上の場合には、適宜装置履歴情報のデータ長を変更するなどして識別子(PE Identifier)のデータを拡張すれば良い。
バイトオフセット値08〜12に対応する5バイト分のフィールドには、当該装置履歴情報が供給時の時刻を示す時刻情報が記録される。なお、時刻情報は、ROM30に当該装置履歴情報を書き込む際の時刻を示す時刻情報であっても良い。
バイトオフセット値13〜14に対応する2バイト分のフィールドには、ブートパラメータが記録され、バイトオフセット値15に対応する1バイト分のフィールドには、当該装置履歴情報のデータについてエラー検出を行うためのチェックサムが記録される。
なお、図4(a)に示した記録フォーマット例では、システム識別情報を記録するためのフィールドを設けていないが、システムコントローラ50から搭載位置情報等とともにシステム識別情報を受けるようにして、システム識別情報を含む装置履歴情報を記録するようにシステム識別情報の記録フィールドを設けても良い。
ROM30は、図4(b)に示すように格納領域が設けられており、上述した装置履歴情報は、装置固有情報格納領域201内に格納される。この装置固有情報格納領域201は、ROM30のデータ容量やROM30における書き換え単位に応じて適宜変更可能であり、制御情報格納領域202と装置履歴情報格納領域204との2つの領域からなる。ただし、装置固有情報格納領域201の先頭アドレスは固定である。
制御情報格納領域202には、CPUボード5に対して付与されている装置シリアル番号、MSU20の記憶容量情報、各種領域のポインタ、及び各種領域の領域サイズが格納される。また、装置履歴情報格納領域204には、図4(a)に示した記録フォーマットに従って、搭載位置情報及び時刻情報を含み構成される装置履歴情報が格納される。
ここで、装置履歴情報格納領域204は、複数の装置履歴情報を格納可能な領域サイズを有しており、装置履歴情報格納領域204には、追記するようにして装置履歴情報が順次格納されるが、制御情報格納領域202内の固定アドレスに装置履歴情報を管理するための最新値ポインタ203と領域サイズとが格納されている。つまり、制御情報格納領域202に格納されている最新値ポインタ203の示すアドレスに装置履歴情報の最新値が格納されており、最新値ポインタ203を参照することで最新の装置履歴情報を容易に取得することができる。
次に、本実施形態によるマルチプロセッサシステム1の動作について説明する。
なお、以下の説明では、電源投入や外部からの指示に応じてシステムコントローラ50よりリセット信号SRSTが出力されてからOSによる動作を開始するまでの起動処理についてのみ説明し、他の動作は従来のマルチプロセッサシステムと同様であるので説明は省略する。
図5は、本実施形態によるマルチプロセッサシステム1の起動処理の一例を示すフローチャートである。
まず、システムコントローラ50が各CPU10に対してリセット信号SRSTを出力すると、当該リセット信号SRSTを受けた各CPU10は、ステップS1にて、内部レジスタ等を初期化するためのハードウェアリセットを実行する。
ステップS2にて、各CPU10は、ハードウェアリセット完了時にリセットトラップを自動的に発生し、リセットトラップ開始処理を行う。具体的には、各CPU10は、プログラムステータスワードに規定の値を設定するとともに、プログラムカウンタにリセットトラップ実行開始アドレス(Reset Vector)を設定する。ここで、システムブート用のブートプログラムはROM30の先頭アドレスから格納されており、リセットトラップ実行開始アドレスとしてROM30の先頭アドレスが設定される。
ステップS3にて、各CPU10は、ブートプログラムの実行を開始する。まず、各CPU10は、その後のプログラム実行の準備として、内部に備える汎用レジスタや他の制御レジスタ(タイマ15を含む。)を初期化するとともに、周辺デバイスのアドレス設定などバスの初期化を行う。さらに、レジスタやバスの初期化後、CPU10は、供給されるクロック基準信号RCLK、クロックソースSCLK及びクロックモード信号CMODに基づいて、バスに接続されたデバイスに係るウェイト数(ウェイト時間)などのクロック調整を行う。
ステップS4にて、各CPU10は、供給されているブートモード信号BMODを参照し、初期診断を実行するか否かを判定する。この判定の結果、ブートモード信号BMODにより初期診断の実行が指定されている場合には、ステップS5にて、CPU10及びMSU20等の初期診断を実行し、ステップS6に進む。一方、ブートモード信号BMODにより初期診断の実行が指定されていなければ、ステップS5をスキップしてステップS6に進む。
ステップS6にて、各CPU10は、図6に示す搭載位置履歴更新処理を行う。
図6は、搭載位置履歴更新処理の一例を示すフローチャートである。
まず、ステップS21にて、CPU10は、自らを含み構成されるCPUボード5の搭載位置情報(装置履歴情報)をシステムコントローラ50から受信する。
ステップS22にて、CPU10は、ROM30に既に格納されている搭載位置情報の中で最新の搭載位置情報をROM30から読み出す。具体的には、CPU30は、ROM30の制御情報格納領域202内に格納されている最新値ポインタ203を参照する。そして、最新値ポインタ203が示すアドレスから装置履歴情報を読み出し、それに含まれる搭載位置情報を抽出する。
ステップS23にて、CPU10は、ステップS21において受信した搭載位置情報とステップS22において読み出した搭載位置情報とを比較する。続いて、ステップS24にて、CPU10は、これら2つの搭載位置情報が一致しているか否かを判定する。
この判定の結果、ステップS21において受信した搭載位置情報とステップS22において読み出した搭載位置情報とが異なる場合には、ステップS25にて、CPU10は、ステップS21において受信した搭載位置情報をROM30の装置履歴情報格納領域204に書き込む。これにより、最新の搭載位置情報を含む装置履歴情報がROM30に追加記録される。
次に、ステップS26にて、CPU10は、ステップS25において装置履歴情報を書き込んだアドレスを示すように最新値ポインタ203の値を更新する。
一方、ステップS24での判定の結果、ステップS21において受信した搭載位置情報とステップS22において読み出した搭載位置情報とが一致した場合には、ステップS27にて、CPU10は、ステップS21において受信した搭載位置情報を破棄する。したがって、ROM30の装置履歴情報格納領域204に記録されている装置履歴情報は更新されない。
上述のようにして搭載位置履歴更新処理が終了すると、図5のステップS7に戻る。
図5に戻り、ステップS7にて、各CPU10は、ブートモード信号BMODを参照して、ROM30からOSをブートするか、LAN80(ネットワーク)経由でOSをブートするか、それともOSをブートせずに停止するかを判定する。
この判定の結果、ブートモード信号BMODによりROM30からのOSブートが指定されている場合には、ステップS8にて、CPU10は、ROM30からOSをロードしてブートしステップS10に進む。同様に、ブートモード信号BMODによりLAN80経由でのOSブートが指定されている場合には、ステップS9にて、CPU10は、LAN80を介して外部機器からOSをロードしてブートしステップS10に進む。
ステップS10にて、CPU10は、ブートしたOSに制御を移行し、OSによる運用を開始して起動処理を終了する。
上記ステップS7での判定の結果、ブートモード信号BMODにより停止が指定されている場合には、ステップS11にて、CPU10は、コンソールポート70及びシステムコントローラ50を介して外部コンソールに対してプロンプトを出力する。
次に、ステップS12にて、CPU10は、外部コンソールによりオペレータからの指示、すなわちコマンドが入力されるまで待機する。そして、外部コンソールを介して入力されたコマンドがシステムコントローラ50及びコンソールポート70を経由して供給されると、ステップS13にて、CPU10は、供給されたコマンドに応じた処理を実行する。その処理が終了すると、ステップS11に戻り、上述したステップS11〜S13の処理を繰り返す。なお、ステップS11〜S13の処理において、供給されるコマンドによりOSブートが指示された場合には、CPU10は、コマンドに従ってOSをロードしてブートし、上述したステップS10に進むようにしても良い。
以上、説明したように本実施形態によれば、マルチプロセッサシステムの初期化にあたり、システムコントローラ50から供給されるCPUボード5の搭載位置情報を含む装置履歴情報(時刻情報やシステム識別情報を含んでいても良い。)を受信し、受信した装置履歴情報の搭載位置情報とROM30に既に格納されている最新の装置履歴情報の搭載位置情報とを比較し、それらが異なる場合には、受信した装置履歴情報を最新の装置履歴情報としてROM30に追加して格納する。
これにより、CPUボート5の搭載位置を正確かつ自動的に、CPUボート5内のROM30に継続して記録することができ、マルチプロセッサシステム1におけるCPUボート5の搭載位置の履歴を記録及び管理することができる。したがって、マルチプロセッサシステム1にて障害が発生した場合に、障害原因の搭載位置依存性やプロセッサ装置依存性を容易に解析・検出できるようになり、障害原因解析に要するコストを低減することができる。
また、受信した装置履歴情報の搭載位置情報とROM30に既に格納されている最新の装置履歴情報の搭載位置情報とが異なる場合のみ、受信した装置履歴情報をROM30に格納することで、情報記憶に係る効率を向上させるとともにROM30に要求される記憶容量を低減し、少ない記憶容量でCPUボード5の搭載位置の履歴を記録し管理することができる。
なお、上述した実施形態では、1つのCPU10を有するCPUボード5で構成されるマルチプロセッサシステム1を一例として示したが、本発明はこれに限定されるものではない。例えば、図7に示すように、マルチプロセッサシステム1を構成する各CPUボード6が複数のCPU10を有するようにしても良い。このように構成した場合には、システムコントローラ50から供給される装置履歴情報を、例えば、予め定めた少なくとも1つのCPU10に対応するROM30(例えば、CPU10−0に接続されたROM30−0)に格納するようにしても良いし、CPUボード6内のすべてのROM30に格納するようにしても良い。
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
本発明の一実施形態によるマルチプロセッサシステムのシステム構成例を示すブロック図である。 本実施形態におけるCPUの構成例を示すブロック図である。 本実施形態におけるCPUボードの機能的な構成を示す機能ブロック図である。 (a)は本実施形態における装置履歴情報の記録フォーマットの一例を示す図であり、(b)はROM内における装置固有情報記録領域の一例を示す図である。 本実施形態によるマルチプロセッサシステムの起動処理の一例を示すフローチャートである。 搭載位置履歴更新処理の一例を示すフローチャートである。 本発明の実施形態によるマルチプロセッサシステムの他の構成例を示す図である。
符号の説明
1 マルチプロセッサシステム
5、6 CPUボード
10 CPU
20 主記憶装置(MSU)
30 フラッシュメモリ
40 ネットワークインタフェース
50 システムコントローラ
60 クロック発生器
101 記憶部
102 最新値ポインタ
103 装置履歴情報
104 履歴情報受信部
105 情報比較部
106 情報更新部
107 制御部
108 履歴情報供給部

Claims (10)

  1. 複数の交換可能なプロセッサ装置で構成されるマルチプロセッサシステムであって、
    当該マルチプロセッサシステムの初期化にあたり、上記プロセッサ装置に対して上記マルチプロセッサシステムにて当該プロセッサ装置が搭載されている位置を示す搭載位置情報を含む装置履歴情報を供給する履歴情報供給手段と、
    上記各プロセッサ装置が有し、上記履歴情報供給手段から供給される装置履歴情報を格納する不揮発性かつ書き換え可能な記憶手段とを備え、
    上記記憶手段は、上記装置履歴情報を複数格納可能であることを特徴とするマルチプロセッサシステム。
  2. 上記履歴情報供給手段から供給される装置履歴情報の搭載位置情報と、上記記憶手段に既に格納されている最新の装置履歴情報の搭載位置情報とを比較する比較手段をさらに備え、
    上記比較手段による比較の結果、上記搭載位置情報が異なる場合には、上記履歴情報供給手段から供給される装置履歴情報を上記記憶手段に格納することを特徴とする請求項1記載のマルチプロセッサシステム。
  3. 上記記憶手段に格納されている装置履歴情報の格納順番を管理する管理手段をさらに備えることを特徴とする請求項1又は2記載のマルチプロセッサシステム。
  4. 上記管理手段は、上記記憶手段における最新の上記装置履歴情報の格納位置を示すポインタであることを特徴とする請求項3記載のマルチプロセッサシステム。
  5. 上記装置履歴情報は、当該装置履歴情報の供給時の時刻情報をさらに含むことを特徴とする請求項1〜4の何れか1項に記載のマルチプロセッサシステム。
  6. 上記装置履歴情報は、上記マルチプロセッサシステムを一意に識別可能なシステム識別情報をさらに含むことを特徴とする請求項1〜5の何れか1項に記載のマルチプロセッサシステム。
  7. 上記プロセッサ装置が複数のプロセッサを有することを特徴とする請求項1〜6の何れか1項に記載のマルチプロセッサシステム。
  8. 複数の交換可能なプロセッサ装置で構成されるマルチプロセッサシステムに搭載可能なプロセッサ装置であって、
    当該プロセッサ装置が搭載されている上記マルチプロセッサシステム内の位置を示す搭載位置情報を含む装置履歴情報を受信する履歴情報受信手段と、
    上記装置履歴情報を複数格納可能であるとともに、不揮発性かつ書き換え可能な記憶手段と、
    上記履歴情報受信手段にて受信した装置履歴情報の搭載位置情報と、上記記憶手段に既に格納されている最新の装置履歴情報の搭載位置情報とを比較する比較手段とを備え、
    上記比較手段による比較の結果、上記搭載位置情報が異なる場合に、上記履歴情報受信手段にて受信した装置履歴情報を上記記憶手段に格納することを特徴とするプロセッサ装置。
  9. 上記装置履歴情報の格納順番を管理する管理手段をさらに備えることを特徴とする請求項8記載のプロセッサ装置。
  10. 複数のプロセッサを有することを特徴とする請求項8又は9記載のプロセッサ装置。
JP2004115732A 2004-04-09 2004-04-09 マルチプロセッサシステム、プロセッサ装置 Pending JP2005301593A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004115732A JP2005301593A (ja) 2004-04-09 2004-04-09 マルチプロセッサシステム、プロセッサ装置
US10/998,152 US20050240830A1 (en) 2004-04-09 2004-11-29 Multiprocessor system, processor device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004115732A JP2005301593A (ja) 2004-04-09 2004-04-09 マルチプロセッサシステム、プロセッサ装置

Publications (1)

Publication Number Publication Date
JP2005301593A true JP2005301593A (ja) 2005-10-27

Family

ID=35137876

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004115732A Pending JP2005301593A (ja) 2004-04-09 2004-04-09 マルチプロセッサシステム、プロセッサ装置

Country Status (2)

Country Link
US (1) US20050240830A1 (ja)
JP (1) JP2005301593A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007183837A (ja) * 2006-01-06 2007-07-19 Fujitsu Ltd 環境設定プログラム、環境設定システムおよび環境設定方法
JP2008084080A (ja) * 2006-09-28 2008-04-10 Nec Computertechno Ltd 障害情報格納システム、サービスプロセッサ、障害情報格納方法、及びプログラム
JP2009289234A (ja) * 2008-06-02 2009-12-10 Fujitsu Ltd 情報処理装置、エラー通知プログラム、エラー通知方法
JP2012128489A (ja) * 2010-12-13 2012-07-05 Nec Computertechno Ltd 情報処理装置、情報処理装置障害再現方法および情報処理装置障害再現プログラム

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007088605A1 (ja) * 2006-02-01 2007-08-09 Fujitsu Limited 部品情報復元方法、部品情報管理方法及び電子装置
JP5026102B2 (ja) * 2007-02-07 2012-09-12 株式会社日立製作所 ストレージ制御装置及びデータ管理方法
JP7053979B2 (ja) * 2018-06-29 2022-04-13 株式会社Pfu 情報処理装置、情報処理方法、及びプログラム
KR20220040695A (ko) * 2020-09-24 2022-03-31 삼성전자주식회사 전자장치 및 그 제어방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6883125B2 (en) * 2002-01-24 2005-04-19 International Business Machines Corporation Logging insertion/removal of server blades in a data processing system
US7028218B2 (en) * 2002-12-02 2006-04-11 Emc Corporation Redundant multi-processor and logical processor configuration for a file server

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007183837A (ja) * 2006-01-06 2007-07-19 Fujitsu Ltd 環境設定プログラム、環境設定システムおよび環境設定方法
JP2008084080A (ja) * 2006-09-28 2008-04-10 Nec Computertechno Ltd 障害情報格納システム、サービスプロセッサ、障害情報格納方法、及びプログラム
JP2009289234A (ja) * 2008-06-02 2009-12-10 Fujitsu Ltd 情報処理装置、エラー通知プログラム、エラー通知方法
JP2012128489A (ja) * 2010-12-13 2012-07-05 Nec Computertechno Ltd 情報処理装置、情報処理装置障害再現方法および情報処理装置障害再現プログラム

Also Published As

Publication number Publication date
US20050240830A1 (en) 2005-10-27

Similar Documents

Publication Publication Date Title
WO2022198972A1 (zh) 一种服务器启动过程中的故障定位方法、***及装置
JP5540155B2 (ja) プラットフォーム独立メモリ論理の提供
TWI521441B (zh) 運用rfid之多插槽伺服器管理技術
KR20140055938A (ko) 랙 및 기본 입출력 시스템을 동시에 업데이트하는 랙 방법
JP2008097369A (ja) Plc
JP2009244999A (ja) 仮想マシン管理プログラム及び管理サーバ装置
JP2005301593A (ja) マルチプロセッサシステム、プロセッサ装置
JP6461207B2 (ja) 部品実装ラインの管理システム及び管理方法
US6401201B2 (en) Arrangements offering firmware support for different input/output (I/O) types
JP2007122151A (ja) ブート制御装置およびブート制御方法
TWI501090B (zh) 伺服器系統與節點偵測方法
JP2004302731A (ja) 情報処理装置および障害診断方法
JP6835423B1 (ja) 情報処理システム及びその初期化方法
CN115129345A (zh) 一种固件升级方法、装置、设备及存储介质
JP2020101889A (ja) モジュール及びこれを備える情報処理装置、並びにモジュールのプログラムデータを更新するプログラムデータ更新方法
TWI789983B (zh) 電源管理方法及電源管理裝置
CN111913551A (zh) 重置基板管理控制器的控制方法
JP7411471B2 (ja) 情報処理装置及び通信システム
CN111078237B (zh) 同步方法
TWI777664B (zh) 嵌入式系統的開機方法
JP2004126658A (ja) プロセッサシステム
US11169740B1 (en) Simultaneous initiation of multiple commands for configuring multi-mode DIMMS using a BMC
CN106502863A (zh) 一种软件版本提示方法和装置
JP3421511B2 (ja) クロック遅延制御装置
CN117873797A (zh) 数字电路芯片故障确认方法及相关装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061020

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080731

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091110

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100309