JP5516402B2 - 情報処理装置及び情報処理装置の制御方法 - Google Patents

情報処理装置及び情報処理装置の制御方法 Download PDF

Info

Publication number
JP5516402B2
JP5516402B2 JP2010525527A JP2010525527A JP5516402B2 JP 5516402 B2 JP5516402 B2 JP 5516402B2 JP 2010525527 A JP2010525527 A JP 2010525527A JP 2010525527 A JP2010525527 A JP 2010525527A JP 5516402 B2 JP5516402 B2 JP 5516402B2
Authority
JP
Japan
Prior art keywords
control
control circuit
lsi
signal
command
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
JP2010525527A
Other languages
English (en)
Other versions
JPWO2010021040A1 (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.)
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
Publication of JPWO2010021040A1 publication Critical patent/JPWO2010021040A1/ja
Application granted granted Critical
Publication of JP5516402B2 publication Critical patent/JP5516402B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2005Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication controllers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Information Transfer Systems (AREA)
  • Multi Processors (AREA)
  • Hardware Redundancy (AREA)

Description

本発明は、システム制御装置と複数の制御回路とを備える情報処理装置及び情報処理装置の制御方法に関する。
複数の制御回路(以下、LSIとも記す)と、各LSIを管理及び制御するシステム制御装置(以下、SVP(Service Processor)とも記す)と備えるサーバが存在する。このようなサーバ等の情報処理装置は、SVPと各LSIをI2C(Inter−Integrated Circuit)等のシステム制御シリアルバスで接続し、SVPがシステム制御シリアルバスを介して各LSIを管理及び制御する。
なお、SVPと各プロセッサ間とが単純なシステムバスと診断バスからなる二重化バスで接続され、故障が発生したプロセッサの機能を二重化バスに接続された他のプロセッサがバックアップして処理を継続するマルチプロセッサシステムが知られている。
また、マルチノード情報処理装置において、SVPからクロスバに初期化命令を出力し、その出力後、クロスバから各ノードに初期化命令が出力され、それによりツリー状に初期化命令が出力される方法が知られている。
特開平6−52130号公報 特開2007−128285号公報
図16、図17は、それぞれ、本発明者が検討した第1の課題、第2の課題を示す図である。図16は、従来のシステム制御シリアルバスによる情報処理装置において、SVP400からアクセス不能のLSI500が発生した場合の動作を示す。また、図17は、図16と同システムにおいて、SVP400が複数のLSI500に同一設定を行う場合のアクセス動作を示す。
図16及び図17において、SVP400は、複数のLSI500とシリアルバス600を介して接続されている。すなわち、各々のLSI500がシリアルバス600を介して1台のSVP400と接続されている。さらに、各LSI500は、パケット送受信部501、Reg502、BusCtrl503を備えている。なお、LSI500は、LSI#0、LSI#1、LSI#2、LSI#3を代表して示す。
SVP400は、シリアルバス600を介して接続されている各LSI500を管理及び制御するシステム制御装置である。LSI500は、情報処理装置情報処理装置において、各種制御処理や演算処理等を行う制御回路である。パケット送受信部501は、他のLSI500のパケット送受信部501間とデータバス700を介して、パケットデータを送受信する機能部である。
Reg502は、LSI500内の各種制御の設定や制御情報等の読出しを行う制御用レジスタである。BusCtrl503は、シリアルバス600を介して、SVP400から送信される制御コマンドを受信し、SVP400へ応答信号等を送信するシリアルデータを送受信制御する。
以下に、図16、図17を参照して、第1の課題、第2の課題を説明する。
(1)第1の課題:制御回路(LSI500)のシリアルバスコントローラ(BusCtrl503)又はLSI500とLSI500とを接続するシリアルバス600が故障すると、システム制御装置(SVP400)が、LSI500に対して制御設定することができなくなる。具体的には、図16において、情報処理装置の電源パワーオン後、SVP400が、LSIの初期設定を行うために、LSI#0に対して、シリアルバス600を介して制御コマンドを送信する(T100を参照)。ここで、LSI#0のBusCtrl503が故障していると、SVP400は、上記制御コマンドによってLSI#0を制御設定することができない。また、図16に示す情報処理装置の構成例では、SVP400は、上記LSI#0以外のLSI500を経由してLSI#0に対して制御コマンドを送信することができない。従って、LSI#0が制御設定されなくなり、その結果、情報処理装置が起動停止等を招く異常を起こす場合がある。
(2)第2の課題:例えば、情報処理装置が備えるLSI500の数が多い等、情報処理装置のシステム規模が大きくなると、特に、SVP400が全てのLSI500に対して同じ内容の制御設定を実行する場合に、制御設定対象のLSI500の数に比例してSVP400の負荷が大きくなる。例えば、図17のT110乃至T113に示すように、SVP400がLSI#0乃至#3の各々に対して同じ内容の制御設定を行う際、従来技術では、SVP400は、シリアルバス600を介し、各LSI500のBusCtrl503に対して制御コマンドを送信して制御設定する。このように、従来技術では、SVP400が各々のLSIに対して個別に制御コマンドを送信するので、システム規模が大きくなると、SVP400の負荷が大きくなる。
本発明は、システム制御装置と制御回路とを接続するシリアルバス間のアクセス障害が発生した際に、システム制御装置が、アクセス可能な他の制御回路を介してアクセス障害が発生した制御回路にアクセスして制御設定することができる情報処理装置の提供を目的とする。
また、本発明は、システム制御装置が全ての制御回路に対して同じ内容の制御設定を行う際のシステム制御装置の負荷を低減することができる情報処理装置の提供を目的とする。
また、本発明は、システム制御装置と制御回路とを接続するシリアルバス間のアクセス障害が発生した際に、システム制御装置が、アクセス可能な他の制御回路を介してアクセス障害が発生した制御回路にアクセスして制御設定することができる情報処理装置の制御方法の提供を目的とする。
また、本発明は、システム制御装置が全ての制御回路に対して同じ内容の制御設定を行う際のシステム制御装置の負荷を低減することができる情報処理装置の制御方法の提供を目的とする。
本情報処理装置は、システム制御装置と複数の制御回路とを備える情報処理装置であって、前記システム制御装置が、各々の制御回路と第1の信号線を介して接続され、各々の制御回路が、自制御回路以外の他の制御回路と第2の信号線を介して接続され、前記システム制御装置が、前記第1の信号線を介して前記制御回路から受信した応答信号に基づいて、前記制御回路において異常が発生したかを判断する異常判断手段と、前記第1の信号線を介して、前記制御回路に対して、自制御回路以外の制御回路又は前記複数の制御回路の全てを制御設定するコマンドを含む制御信号を送信する制御信号送信手段とを備える。また、各々の制御回路が、前記第1の信号線を介して前記システム制御装置の前記制御信号送信手段から送信された制御信号を受信する信号受信手段と、前記受信された制御信号に含まれるコマンドを、前記第2の信号線を介して、制御設定対象の制御回路に対して転送する信号転送手段と、前記信号受信手段によって受信された制御信号に含まれるコマンド又は自制御回路以外の他の制御回路から転送されたコマンドに従って、自制御回路を制御設定する制御設定手段とを備える。前記制御信号送信手段が、前記異常判断手段によって異常が発生したと判断された制御回路を制御設定するコマンドと、当該コマンドを転送するための制御コマンドと、前記異常が発生したと判断された制御回路への宛先情報とを含む制御信号を、前記第1の信号線を介して、前記異常が発生したと判断された制御回路以外の他の制御回路に対して送信する。前記他の制御回路が備える信号転送手段が、前記システム制御装置の制御信号送信手段から送信された制御信号に含まれる前記宛先情報及び前記転送するための制御コマンドに基づいて、当該制御信号に含まれるコマンドを、前記第2の信号線を介して、前記異常が発生したと判断された制御回路に対して転送する。
また、本情報処理装置の制御方法は、システム制御装置と複数の制御回路とを備え、前記システム制御装置が各々の制御回路と第1の信号線を介して接続され、各々の制御回路が自制御回路以外の他の制御回路と第2の信号線を介して接続される情報処理装置の制御方法であって、前記システム制御装置が、前記第1の信号線を介して前記制御回路から受信した応答信号に基づいて、前記制御回路において異常が発生したかを判断し、前記システム制御装置が、異常が発生したと判断された制御回路を制御設定するコマンドと、当該コマンドを転送するための制御コマンドと、前記異常が発生したと判断された制御回路への宛先情報とを含む制御信号を、前記第1の信号線を介して、前記異常が発生したと判断された制御回路以外の他の制御回路に対して送信し、前記他の制御回路が、前記システム制御装置から送信された制御信号に含まれる前記宛先情報及び前記転送するための制御コマンドに基づいて、当該制御信号に含まれるコマンドを、前記第2の信号線を介して、前記異常が発生したと判断された制御回路に対して転送し、前記異常が発生したと判断された制御回路が、前記転送されたコマンドに従って、自制御回路を制御設定する。
本情報処理装置は、例えば、システム制御装置と制御回路のシリアルバス間のアクセス障害が発生したときに、システム制御装置が、アクセス可能な他の制御回路を介してアクセス障害が発生した制御回路にアクセスする。これにより、システム制御装置が、他の制御回路を介して制御設定対象の制御回路に対して制御コマンドを送信することができるので、アクセス障害が発生した制御回路の制御設定を行うことができる。その結果、本情報処理装置は、情報処理装置に重大な影響を及ぼす障害を回避することができ、情報処理装置の信頼性が向上する。
さらに、本情報処理装置は、例えば、システム制御装置が複数の制御回路の全ての制御設定対象の設定を行う際に、代表の制御回路を選択し、システム制御装置が代表の制御回路に制御コマンドを送信する。さらに、代表の制御回路が、その他の制御回路の制御設定に用いる制御コマンドを転送する。その結果、本情報処理装置は、システム制御装置の制御設定におけるコマンドやり取りの処理の負荷を低減することができ、また、制御回路の設定に要する時間を短縮することができる。
本情報処理装置の基本構成を示す図である。 本情報処理装置の第1の実施例及び第2の実施例の基本構成を示す図である。 SVPの基本構成を示す図である。 本情報処理装置の第1の実施例の処理フローを示す図である。 本情報処理装置の第1の実施例の動作を示す図である。 本情報処理装置の第2の実施例の処理フローを示す図である。 本情報処理装置の第2の実施例の動作を示す図である。 制御回路の詳細な回路構成の例を示す図である。 本情報処理装置の第3の実施例及び第4の実施例の基本構成を示す図である。 本情報処理装置の第3の実施例の処理フローを示す図である。 本情報処理装置の第3の実施例の動作を示す図である。 本情報処理装置の第4の実施例の処理フローを示す図である。 本情報処理装置の第4の実施例の動作を示す図である。 制御回路の詳細な回路構成の例を示す図である。 パケットデータのパケットフォーマット例を示す図である。 本発明者が検討した第1の課題を示す図である。 本発明者が検討した第2の課題を示す図である。
符号の説明
1 システム制御装置
2−0、2−1、2−2、2−3 制御回路
3 制御設定手段
4 信号送受信手段
5 信号転送手段
6 第1の信号線
7−0、7−1、7−2、7−3、7−4、7−5 第2の信号線
8 制御信号送信手段
9 応答信号受信手段
図1は、本情報処理装置の基本構成を示す図である。本情報処理装置は、システム制御装置1と複数の制御回路2とを備える。図1において、システム制御装置1は、各々の制御回路2(制御回路2−0、2−1、2−2、2−3)と信号線6(第1の信号線)を介して接続されている。また、各々の制御回路2は、第2の信号線である信号線7(信号線7−0、7−1、7−2、7−3、7−4、7−5)を介して自制御回路以外の他の制御回路と相互に接続されている。システム制御装置1は、制御信号送信手段8と応答信号受信手段9を備える。また、制御回路2は、制御設定手段3と信号送受信手段4と信号転送手段5とを備える。
システム制御装置1が備える制御信号送信手段8は、シリアルバスである信号線6を介して、各制御回路2に対して、制御回路2を制御設定するコマンド(以下、制御コマンドと記す)を含む制御信号を送信する。制御信号送信手段8は、例えば、制御回路2に対して、制御回路2以外の制御回路又は複数の制御回路2の全てを制御設定するコマンドを含む制御信号を送信する。また、応答信号受信手段9は、各制御回路2から送信される、上記制御信号に対する応答信号を受信する。
制御回路2が備える信号送受信手段4は、上記システム制御装置1の制御信号送信手段8から送信された制御信号を受信する。また、信号送受信手段4は、上記受信された制御信号に対する応答信号をシステム制御装置1の応答信号受信手段9に対して送信する。制御設定手段3は、上記信号送受信手段4によって受信された制御信号に含まれる制御コマンド又は自制御回路以外の他の制御回路から転送されたコマンドに従って、自制御回路を制御設定(例えば制御回路2の初期化設定等の制御設定)する。信号転送手段5は、制御設定手段3の指示に従い、信号線7を介して、上記信号送受信手段4によって受信された制御コマンドを含む信号を、制御設定対象の他の制御回路2の信号転送手段5に対して転送する。なお、信号線7が、シリアルバスやデータバス等に用いられる信号線であっても良い。
次に、図1に示す本情報処理装置の動作を説明する。システム制御装置1は、制御回路2に接続された信号線6を介して、制御回路2を制御設定(例えば、動作設定やログ情報収集等をする設定等)する制御コマンドを含む制御信号を制御回路2に送信する。上記制御信号は、さらに、制御コマンドを他の制御回路2へ転送することを指示する情報(転送指示情報)を含んでいる。制御回路2は、信号線6を介して、システム制御装置1から送信された、制御コマンドを含む制御信号を信号送受信手段4で受信する。その制御信号を受信した信号送受信手段4は、受信した制御信号に含まれる制御コマンドを制御設定手段3に送る。制御設定手段3は、信号送受信手段4から制御コマンドを受け取り、受け取った制御コマンドに従って、制御回路2の制御設定を行う。また、制御設定手段3は、上記制御信号に含まれる転送指示情報に従って、信号線7を介して、他の制御回路2に対して制御コマンドを転送する制御を行う。これにより、システム制御装置1は、信号線6を介して、例えば制御回路2−1、信号線7−0経由で制御回路2−0へ制御コマンドを転送することができる。すなわち、システム制御装置1は、信号線6、もしくは、信号線6及び信号線7を介した複数の通信ルートにより、各制御回路2に対して制御コマンドを送信することができる。
図2は、本情報処理装置の第1の実施例及び第2の実施例の基本構成を示す図であり、図3は、図2中のSVP10の基本構成を示す図である。以下、図2に示す基本構成について説明する。
SVP10は、複数のLSI20とシリアルバスであるSMBus11(以下、SMBus#0と記す)を介して接続されている。SMBus#0は、図1中の信号線6に対応する。さらに、LSI20は、複数のSMBusCtrl21、Reg22、SMB転送回路23を備えている。なお、図中の符号21は、SMBusCtrl#0、SMBusCtrl#1、SMBusCtrl#2、SMBusCtrl#3を代表して示す。また、LSI20のSMBusCtrl#n(nは0〜3の整数を表す)は、他のLSI20のSMBusCtrl#nに接続されている。
SMBusCtrl21は、SMBus11を介してSVP10へ応答信号を送信し、また、SVP10から送信される制御信号を受信する。例えば、SMBusCtrl#0は、SMBus#0を介して、SVP10から送信される制御コマンドを含む制御信号を受信し、SVP10へ応答信号を送信する。SMBusCtrl#1、SMBusCtrl#2及びSMBusCtrl#3は、対応するSMBus(SMBus#1乃至#6)を介して、他のLSI20のSMBusCtrl21と接続されており、他のLSI20との間でシリアルデータの送受信を行うことができる。
Reg22は、LSI20内の各種制御の設定や制御情報等の読出しを行う制御用レジスタである。Reg22は、制御コマンドを他のLSI20に転送するための制御設定を行うレジスタである間接アクセス用レジスタを含む。SMB転送回路23は、SMBusCtrl21から受信した制御コマンドを他のLSI20へ転送設定を行う機能を備える。なお、SMB転送回路がReg22を備えるようにしてもよい。
本情報処理装置が図2に示す構成をとることにより、SVP10が、1つの送信先のLSI20へ制御コマンドを送信する際、他のLSI20を介して、送信先のLSI20へ制御コマンドの転送を指示することができる。また、SVP10は、1つのLSI20を起点として、他の全てのLSI20へ制御コマンドの転送を指示することもできる。
SVP10は、図3に示すように、異常判断部100、制御信号送信部101、応答信号受信部102を備える。制御信号送信部101は、SVP10が制御信号の送信対象とするLSI20に対して、制御コマンドを含む制御信号を送信する。応答信号受信部102は、LSI20のSMBusCtrl21から送信される、制御コマンドに対する応答信号を受信する。異常判断部100は、LSI20とのアクセスに異常が発生したかを判断する。具体的には、異常判断部100は、LSI20のSMBusCtrl21から制御信号に対する応答信号が送信されないか、または、応答信号が送信された場合でも、その信号が異常であるかを判断し、LSI20のSMBusCtrl21から制御信号に対する応答信号が送信されないか、または、応答信号が異常を示している旨を判断した場合に、LSI20とのアクセスに異常が発生したと判断する。
ここで、図1に示す本情報処理装置と、図2及び図3に示す構成との対応関係を説明する。図2中のLSI20の各機能部は、図1の制御回路2の各手段に対応する。具体的には、Reg22及びSMB転送回路23が制御設定手段3に対応し、SMBusCtrl#0が信号送受信手段4に対応する。また、SMBusCtrl#1乃至#3及びSMB転送回路23が、信号転送手段5に対応する。また、図2、図3中のSVP10は、図1のシステム制御装置1に対応する。
図4は、本情報処理装置の第1の実施例の処理フローを示す図である。SVP10が各LSI20に対する制御処理を開始すると、SVP10が、SMBus11を介してLSI20に制御コマンドを送信する(ステップS1)。次に、SVP10が、LSI20とのアクセスに異常が発生したかを判断する(ステップS2)。SVP10が、LSI20とのアクセスに異常が発生したと判断した場合、SVP10が、このLSI(以下、対象LSI)20に制御コマンドを転送するLSI20を選択する(ステップS3)。また、SVP10が、LSI20とのアクセスが正常であると判断した場合には、LSI20は、SVP10から送信された制御コマンドに従って制御設定を行う(ステップS9)。
続いて、SVP10が、選択したLSI20に対して、対象LSI20へ転送するための制御コマンドを含む制御信号を送信する(ステップS4)。そして、SVP10に選択されたLSI20が、上記制御コマンドを含む制御信号を受信する(ステップS5)。SVP10に選択されたLSI20が、SMBus11を介して、上記制御コマンドを含む制御信号を対象LSI20へ送信する(ステップS6)。そして、対象LSI20が、上記選択されたLSI20から制御コマンドを含む制御信号を受信する(ステップS7)。対象LSI20は、受信した制御信号に含まれる制御コマンドに従って制御設定を行う(ステップS8)。
図5は、本情報処理装置の第1の実施例の動作を示す図である。なお、図5に示すシステム構成は、図2に示す構成と同様であり、動作説明に直接関係のない機能部の図示を省略している。図5では、SVP10がLSI#0のアクセス異常を検出した際、SVP10がLSI#0を制御設定する制御コマンドをLSI#1へ送信し、LSI#1がその制御コマンドをLSI#0に転送する場合の動作例を示す。なお、以降、図中の破線矢印T(T1乃至T8)が、動作の遷移状態を示している。
SVP10が、LSI#0に対して制御設定を行うため、SMBus#0を介して、制御コマンドを含む制御信号を送信したが、LSI#0がその制御信号に対する応答信号を送信できなかった(T1)。LSI#0がその制御信号に対する応答信号を送信できない場合として、例えば、SMBusCtrl#0に故障が発生した場合や、SMBus#0とLSI#0との間の信号線の接続異常等が発生した場合等が挙げられる。
SVP10の異常判断部100は、LSI#0から応答信号を受信できないので、LSI#0の応答異常を検知し、LSI#0に対して、SMBus#0を経由して直接には制御設定することができないと判断する。次に、異常判断部100が、他のLSI20(例えば、LSI#1)に対してLSI#0に転送されるべき制御コマンドを含む制御信号を送信するように制御信号送信部101に指示する。制御信号送信部101が、SMBus#0を介して、上記制御信号をLSI#1に送信する(T2)。
次に、上記制御信号を受信したLSI#1のSMBusCtrl#0が、制御信号に含まれる制御コマンドを取り出してSMB転送回路23へ送る(T3)。そして、SMB転送回路23が、制御コマンドをReg22へ送る(T4)。
続いて、SMB転送回路23が、LSI#0に制御コマンドを転送するようにSMBusCtrl#1に対して指示する(T5)。そして、SMB転送回路23の指示を受けたSMBusCtrl#1が、SMBus#1を介してLSI#0のSMBusCtrl#1に制御コマンドを含む制御信号を転送する(T6)。すなわち、LSI#1のSMBusCtrl#1は、SVP10の制御信号送信部101から送信された制御信号に含まれる制御コマンドを、シリアルバスであるSMBus#1を介して、異常が発生したと判断された制御回路であるLSI#0に対して転送する信号転送手段である。LSI#0のSMBusCtrl#1は、転送された制御コマンドを含む制御信号を受信し、受信した制御信号から制御コマンドを取り出してSMB転送回路23へ送る(T7)。SMB転送回路23は、制御コマンドをReg22へ送り(T8)、上記制御コマンドに従って、LSI#0の制御設定を行う。
なお、SVP10が、LSI#2又はLSI#3経由でLSI#0に対して制御コマンドを転送するようにしてもよい。
本情報処理装置が備えるSVP10は、シリアルバス上のアクセス異常のLSI20を検知すると、制御コマンドを送信可能ないずれかのLSI20を介して、制御設定対象の対象LSI20(図5ではLSI#0)に対して制御コマンドを送信する。これにより、SVP10が、アクセス異常の発生したLSI20へ制御コマンドを転送し、制御設定を行うことができる。その結果、情報処理装置に大きな障害が発生することを防止することができ、情報処理装置の信頼性が向上する。
図6は、本情報処理装置の第2の実施例の処理フローを示す図である。SVP10が、各LSI20に対して同じ内容の制御設定を行う際、以下に説明するブロードキャスト転送処理を開始する。ブロードキャスト転送処理は、SVP10が、代表LSI20を介して、全てのLSI20に同じ内容の制御設定をするための制御コマンドを送信する処理である。まず、SVP10が、複数のLSI20の中から1つの代表LSI20を選択する(ステップS10)。SVP10が、代表LSI20を選択した後、制御設定対象を全てのLSI20とする制御コマンドを含む制御信号を代表LSI20へ送信する(ステップS11)。代表LSI20が、送信された制御コマンドを含む制御信号を受信する(ステップS12)。
次に、代表LSI20が、受信した制御信号に従って、その制御信号に含まれる制御コマンドを他のLSI20に転送し(ステップS13)、他のLSI20が、転送された制御コマンドを受信する(ステップS14)。そして、各LSI20が、制御コマンドを実行する(ステップS15)。具体的には、代表LSI20が、上記ステップS12において受信した制御信号に含まれる制御コマンドに従って、代表LSI20の制御設定を実行し、他のLSI20が、上記ステップS14において受信した制御コマンドに従って、自LSIの制御設定を実行する。
図7は、本情報処理装置の第2の実施例の動作を示す図である。なお、図7に示すシステム構成は、図2に示す構成と同様であり、動作説明において、説明に直接関係のない機能部の図示を省略している。以下に、図7を参照して、SVP10が、LSI#0に対して制御コマンドを送信するとともに、LSI#0に対して、制御コマンドを他の全てのLSI20に対して転送(ブロードキャスト転送)することを指示する例について説明する。
SVP10が、例えばLSI#0を代表LSI20として選択する。SVP10の制御信号送信部101(図3を参照)が、LSI#0に対して、図7中のLSI20の全てを制御設定対象とする制御コマンドを含む制御信号を送信して、制御コマンドのブロードキャスト転送を指示する。そして、LSI#0が備える信号送受信手段であるSMBusCtrl#0が、制御コマンドを含む制御信号を受信する(T10)。次に、LSI#0が備える信号転送手段であるSMB転送回路23が、上記制御コマンドを含む制御信号をSMBusCtrl#0から受け取る(T11)。SMB転送回路23が、受け取った制御信号に含まれる、自LSI20に対する制御設定に関する制御コマンドをReg22に送る(T12)。また、SMB転送回路23は、ブロードキャスト転送の対象となる全てのLSI20に対して制御コマンドを転送する制御処理を実行する。具体的には、SMB転送回路23は、自LSI20以外の他のLSI20に制御コマンドを転送するため、SMBusCtrl#1乃至#3に制御コマンドを送る(T13、T14、T15)。
続いて、SMBusCtrl#1、#2、#3が、それぞれ、SMBus#1、SMBUS#2、SMBUS#3を介して、LSI#1、LSI#2、LSI#3に制御コマンドを含む制御信号を転送する(T16、T19、T22)。その制御信号を受信した各LSI20のSMBusCtrl21が、その制御コマンドを含む制御信号をSMB転送回路23へ送る(T17、T20、T23)。
次に、SMB転送回路23が、受け取った制御信号に含まれる制御コマンドをReg22へ送り(T18、T21、T24)、SMB転送回路23から送られた制御コマンドに従って自LSI20の制御設定を行う。
図7を参照して説明したように、SVP10が全てのLSI20に対して同じ内容の制御設定を行う際、SVP10が、選択した代表LSI20にブロードキャストの制御コマンドを送信し、代表LSI20が自LSI20以外の他の全てのLSI20に制御コマンドを転送する。従って、本情報処理装置によれば、SVP10が全てのLSI20に対して同じ内容の制御設定を行う際に、SVP10が、各々のLSI20に対して個別に制御コマンドを送信する必要がなくなる。その結果、SVP10の負荷を低減することができる。
図8は、図2を参照して前述したLSI20の詳細な回路構成の例を示す図である。LSI20は、SMBusCtrl21、Reg(例えばSMBusRegister)22、SMBus転送回路23を備える。また、SMBus転送回路23は、SMBus応答回路24、SMBus生成回路25を備える。以下に、SMBus転送回路23の詳細な構成について説明する。
SMBus応答回路24は、SMBusRegister22にアクセスする処理部である。すなわち、LSI20が複数のSMBusCtrl21を有するので、SMBus応答回路24は、SMBusCtrl21からのアクセスがSMBusRegister22に競合しないように、SMBusCtrl21を選択し、選択したSMBusCtrl21からのデータ送受信を制御する。
SMBus生成回路25は、SMBusSeq215、HardWired216と、複数の論理回路等とを備えている。以下に、SMBus生成回路25の内部構成について説明する。
SMBusSeq215は、SMBusCtrl21との間で転送データを送受信する機能部(転送シーケンスの機能部)である。SMBusCtrl21は、SMBusSeq215を介して、SMBusRegister22の対応するレジスタへの読み込みを行うことができる。一方、SMBusCtrl21からのSMBusRegister22への書き込みは、SMBus応答回路24を介して行う。
HardWired216は、自LSI20のアドレスを決定するハードワイヤである。SMBusRegister22は、OtherReg200、Valid201、Slave(Slv)Adr202、SMBusAdr203、Command204、Data205、Data206、Data207、Data208、BCEn209、Status210の複数のレジスタを備える。Data205はData#1&BCを示し、Data206はData#2を示し、Data207はData#3を示し、Data208はData#0を示す。Valid201、SlaveAdr202、SMBusAdr203、Command204、Data205、Data206、Data207、Data208、BCEn209、Status210は、SMBusCtrl21から受信した制御コマンドを他のLSI20へ転送するための制御設定を行うレジスタである間接アクセス用レジスタである。OtherReg200は、LSI#0自身を制御設定するレジスタである。
Valid201は、接続先のLSIに対応するビット(Valid Bit)に1がセットされると、接続先のLSI20に対してSMBusコマンドを発行する設定を行うレジスタである。
SMBusRegister22は、接続先のLSI20に対応するビットに“1”を設定(具体的には、SMBusSeq215を有効にするための設定)を行う前に、SlaveAdr202、SMBusAdr203、Command204、Data#1&BC、Data#2、Data#3、Data#0、BCEn209といったレジスタを設定する。なお、Valid201の接続先のLSI20に対応するビットに“0”が書き込まれた場合、SMBusSeq215がリセットされる。
SlaveAdr202は、SMBus#1、#2、#3の先に接続されているLSI20のスレーブアドレス(LSI#1、#2、#3のLSIを識別するアドレス)を設定するレジスタである。SMBusAdr203は、LSI20がアクセスするLSI20のSMBusアドレス(各LSI20内の各レジスタに割当てられたアドレス)を設定する。Command204は、アクセスするLSI(LSI#0乃至#3)のレジスタに対するコマンドを設定するレジスタである。
Data#1&BC205は、SMBus#1に対応する間接アクセス用レジスタ、すなわち、LSI#1へのコマンド転送に用いるレジスタである。また、Data#1&BC205は、ブロードキャスト転送用レジスタ、すなわち、全てのLSI20へのコマンド転送に用いるレジスタでもある。SMBusRegister22は、制御設定対象のLSI20(LSI#1又は全てのLSI20)内のレジスタへのアクセスが書き込みの場合、データをData#1&BC205に書き込む。また、SMBusRegister22は、レジスタへのアクセスが読み込みの場合、読み込んだデータをData#1&BC205に格納する。特に、Data#1&BC205は、ブロードキャスト転送による全てのLSI20へのライト(ブロードキャストライト)を行う際、Data#1&BC205に書き込んだデータをSMBus生成回路25に渡す。
Data#2は、SMBus#2に対応する間接アクセス用レジスタ、Data#3は、SMBus#3に対応する間接アクセス用レジスタである。SMBusRegister22は、LSI#2のレジスタ、LSI#3のレジスタへのアクセスが書き込みの場合、データをそれぞれData#2、Data#3に書き込む。SMBusRegister22は、LSI#2のレジスタ、LSI#3のレジスタへのアクセスが読み込みの場合、読み込んだデータをそれぞれData#2、Data#3に格納する。
また、SMBusRegister22は、ブロードキャストライトを行う場合、Data#2及びData#3に書き込まない。また、SMBusRegister22は、SNBus#2、#3を介して他のLSI20からデータを読み込んだ場合、読み込んだデータをData#2、Data#3に格納する。
Data#0は、自LSI20への間接アクセス用レジスタである。BCEn209は、同じSMBusアドレスのレジスタを持つ複数のLSI20に対し、同アドレスの同レジスタに同一データを書き込み又は読み込みを行う設定であるブロードキャスト設定を行うレジスタである。SVP10からの制御コマンドに含まれる制御信号がブロードキャスト設定を指示する場合、SMBusRegister22は、BCEn209の対応するビットを“1”(Enable)に設定する。
Status210は、間接アクセス状態(自LSI20及び他のLSI20へのアクセスの状態)を表すレジスタである。Status210は、“成功”、“アクセス中”又は“失敗”の状態を保持する。LSI20は、間接アクセスが成功したか否かを、本レジスタを参照して確認する。なお、LSI20は、SMBusCtrl(#0乃至#3)にアクセスする場合のみ、間接アクセス用レジスタにアクセス可能である。
以下に、図8に示すLSI20の第1の動作例について説明する。SVP10は、SMBus#0上でアクセス異常が発生していない場合、図8に示すSMBus#0を経由して各LSI20のレジスタへアクセスする。SMBus#0経由でアクセス不可になった場合、LSI20は以下の動作を実行する。
(1−1)LSI#1の回路が故障し、SMBus#0経由でアクセス不可となった場合、SVP10は、LSI#1からの応答のタイムアウト、もしくは、伝送符号の誤りを検出する。この際、SVP10は、LSI#1へのアクセスを所定回数のリトライした後、アクセス不可の場合には、LSI#1のアクセス異常または故障発生と判断する。
(1−2)SVP10は、LSI#1にLSI#0経由で間接アクセスするため、以下の処理を行う。すなわち、SVP10は、LSI#0のSlaveAdr202のSlvAdr#1にLSI#1のスレーブアドレスを書き込む。次に、SVP10は、LSI#0のSMBusAdr203にアクセスしたいLSI#1のレジスタのSMBusアドレス(レジスタに割当てられたアドレス)を書き込む。なお、本実施形態では、LSI20のレジスタへのアクセスをSMBusアクセスという。そして、SVP10は、LSI#0のCommand204にアクセス種別“Read”(データの読み込み)又は“Write”(データの書き込み)を書き込む。上記アクセス種別が“Write”の場合、SVP10は、LSI#0のData#1にデータを書き込む。SVP10は、LSI#0の、LSI#1に接続するSMBusCtrl#1に対応するValid201のビットに“1”を書き込む。
(1−3)LSI#0が、SMBusCtrl#1経由でSMBusコマンドを発行する(SMBusコマンドをLSI#1に対して送信する)。
(1−4)LSI#0は、実行したSMBus動作(SMBusコマンドの発行動作)の状態をLSI#0のStatus210に保持する。
(1−5)SVP10は、Status210を読み込み、アクセスの成功または失敗を確認する。また、SVP10は、Status210がアクセス中の状態を保持している場合は、一定時間待った後、再度アクセスを行う。SVP10は、所定回数リトライしてもアクセス中の場合は、失敗と判断する。
なお、LSI#0からSMBusコマンドを送信されたLSI#1は、そのSMBusコマンドに従って、LSI#1内のSMBusCtrl、SMBus応答回路を介して、OtherReg200を設定することによって、LSI#1を制御設定する。
次に、図8に示すLSI20の第2の動作例について説明する。SVP10が、LSI#0乃至#3に対して、同一のSMBusアドレスに同じ値を設定する際、SVP10は、以下のようにしてLSI#0を代表LSI20としてブロードキャスト転送を行う。
(2−1)SVP10が、SMBus#0を介して、LSI#0の間接アクセス用レジスタに対して以下の処理を行う。すなわち、SVP10は、LSI#0のSlvAdr#1、#2、#3に、それぞれ、LSI#1、#2、#3のスレーブアドレスを書き込む。次に、SVP10は、LSI#0のSMBusAdr203に、アクセスしたい全てのLSIのアクセス対象のレジスタのSMBusアドレスを書き込む。SVP10は、LSI#0のCommand204にアクセス種別(“Read”又は“Write”)を書き込む。SVP10は、上記アクセス種別が“Write”の場合、LSI#0のData#1にデータを書き込む。次に、SVP10は、LSI#0のBCEn209に“1”を書き込む。そして、SVP10は、LSI#0の、LSI#1、#2、#3にそれぞれ接続するSMBusCtrl21に対応するValid201のビットに“1”を書き込む。
(2−2)代表LSI20(LSI#0)が、SMBusCtrl#1、#2、#3経由でSMBusコマンドを他の全てのLSI20に発行する。また、SVP10は、LSI#0が他のLSI20のレジスタにアクセスをするのと同様に、LSI#0内のレジスタにアクセスして、LSI#0を制御設定する。
(2−3)LSI#0は、SMBusコマンドを発行した後のSMBus動作の状態をLSI#0のStatus210に保持する。
(2−4)SVP10は、Status210を読み込み、成功または失敗を確認する。また、SVP10は、Status210がアクセス中の状態を保持している場合は、一定時間待った後、再度アクセスを行う。SVP10が、所定の回数でリトライしてもアクセス中の場合は、失敗と判断する。
図9は、本情報処理装置の第3の実施例及び第4の実施例の基本構成を示す図である。なお、SVP10の基本構成は、図3に示す構成と同様である。
SVP10は、複数のLSI30とシリアルバスであるSMBus11(以下、SMBus#0とも記す)を介して接続されている。LSI30は、複数のSMBusCtrl31(SMBusCtrl#0とも記す)、Reg32、コマンド変換部33、パケット送受信部34、パケット生成部35を備えている。
SMBusCtrl#0は、前述した図1中の信号送受信手段4の機能を有する。具体的には、SMBusCtrl#0は、SMBus#0を介して、SVP10から送信される制御コマンドを含む制御信号を受信し、SVP10へ応答信号等を送信する。Reg32は、LSI30内の各種制御の設定や制御情報等の読出しを行う制御用レジスタである。また、Reg32は、制御コマンドを他のLSI30に転送するための制御設定を行うレジスタである間接アクセス用レジスタを含む。コマンド変換部33は、パケット送受信部34が受信した、制御コマンドを含むパケットデータを制御コマンドに変換し(パケットデータから制御コマンドを取り出し)、その制御コマンドをReg32へ送ってLSI30を制御設定する。
パケット送受信部34は、DataBus12(DataBus#1乃至#6)を介して、他のLSI30内のパケット送受信部34とパケットデータの送受信を行う。DataBus12は、各LSI30で処理されるパケットデータのデータバスである。パケット生成部35は、SMBusCtrl#0がSMBus#0を介してSVP10から受信した制御信号に基づいて、その制御コマンドを含むパケットデータを生成し、パケット送受信部34に送る。
本情報処理装置が図9に示す構成をとることによって、SVP10が、1つの送信先のLSI30へ制御コマンドを送信する際、他のLSI30を介して、送信先のLSI30へ制御コマンドの転送を指示することができる。また、SVP10は、1つのLSI30から他の全てのLSI30へ制御コマンドの転送を指示することもできる。
ここで、図1を参照して説明した本情報処理装置が備える各手段と、図9に示す各処理部との対応関係を説明する。図9中のLSI30の各処理部は、図1中の制御回路2の各手段に対応する。具体的には、Reg32及びコマンド変換部33が制御設定手段3に対応し、SMBusCtrl#0が信号送受信手段4に対応する。また、コマンド変換部33、パケット送受信部34、及びパケット生成部35が信号転送手段5に対応する。また、図9のSVP10が図1のシステム制御装置1に対応する。
図10は、本情報処理装置の第3の実施例の処理フローを示す図である。SVP10がLSI30に対する制御処理を開始すると、SVP10は、LSI30にSMBus11を介して制御コマンドを送信する(ステップS20)。次に、SVP10が、LSI30とのアクセスに異常が発生したかを判断する(ステップS21)。SVP10が、LSI30とのアクセスに異常が発生したと判断した場合は、SVP10は、このLSI(以下、対象LSI)30に制御コマンドを転送するLSI30を選択する(ステップS22)。また、SVP10が、LSI30とのアクセスが正常であると判断した場合には、LSI30が、SVP10から送信された制御コマンドに従って制御設定を行う(ステップS30)。
次に、SVP10が、選択したLSI30に対して、対象LSI30へ転送する制御コマンドを含む制御信号を送信する(ステップS23)。そして、SVP10に選択されたLSI30が、SVP10から送信された制御コマンドを受信する(ステップS24)。続いて、SVP10に選択されたLSI30が、対象LSI30へ転送する制御コマンドを含むパケットデータを生成し(ステップS25)、DataBus12を介して、そのパケットデータを対象LSI30へ送信する(ステップS26)。
次に、対象LSI30が、DataBus12を介して、パケットデータを受信する(ステップS27)。続いて、対象LSI30が、パケットデータを制御コマンドに変換する(ステップS28)。そして、対象LSI30が、制御コマンドに従い、制御設定を行う(ステップ29)。
図11は、本情報処理装置の第3の実施例の動作を示す図である。なお、図11に示す基本構成は、図9に示す構成と同様である。図11では、SVP10がLSI#0のアクセス異常を検出して、LSI#0に対する制御コマンドをLSI#1へ送信し、LSI#1がその制御コマンドをLSI#0に対して転送する処理を例にとって説明する。
SVP10が、LSI#0に対して制御設定を行うため、SMBus#0を介して、制御コマンドを含む制御信号を送信し、LSI#0がその信号に対する応答信号を送信できなかった(T30)。SVP10の異常判断部100は、LSI#0から応答信号を受信できないので、LSI#0の応答異常を検知し、LSI#0に対してSMBus#0を経由して直接には制御設定することができないと判断する。次に、異常判断部100が、制御信号送信部101に対して、他のLSI30(例えば、LSI#1)にLSI#0を制御設定する制御コマンドを含む制御信号を送信するように指示する。制御信号送信部101が、SMBus#0を介して、上記制御信号をLSI#1に送信する(T31)。なお、上記制御信号には、上記制御コマンドをLSI#0へ転送することを指示する情報が含まれている。次に、制御信号を受信したLSI#1のSMBusCtrl#0が、受信した制御信号をReg32に送り(T32)、Reg32が、制御信号に含まれる制御コマンドをパケット生成部35に送る(T33)。続いて、パケット生成部35が、Reg32から受け取った制御コマンドを含むパケットデータを生成し、パケット送受信部34にパケットデータを送る(T34)。そして、パケット送受信部34が、パケット生成部35からパケットデータを受け取り、DataBus#1を介してLSI#0にパケットデータを送信する(T35)。すなわち、パケット送受信部34は、パケット生成部35によって生成されたパケットデータをDataBus#1を介して、異常が発生したと判断された制御回路(LSI#0)に対して転送する信号転送手段である。
次に、LSI#0のパケット送受信部34が、LSI#1からパケットデータを受信し、そのパケットデータをコマンド変換部33に送る(T36)。コマンド変換部33が、パケットデータを制御コマンドに変換し、制御コマンドをReg32へ送って、LSI#0の制御設定を行う(T37)。すなわち、コマンド変換部33は、自制御回路(LSI#0)以外の他の制御回路(LSI#1)から転送されたパケットデータを自制御回路の制御設定に用いるコマンドに変換するコマンド変換手段である。
図11を参照して説明したように、本情報処理装置において、SVP10は、シリアルバス上でアクセス異常のLSI30を検知して、上記アクセス異常のLSI30を制御設定する制御コマンドを、他のLSI30と、LSI30間のデータバスとを介して、上記アクセス異常のLSI30に転送する。従って、本情報処理装置によれば、SVP10が、アクセス異常の発生したLSI30へ制御コマンドを転送し、制御設定を行うことができる。その結果、情報処理装置に大きな障害が発生することを防止することができ、情報処理装置の信頼性が向上する。
図12は、本情報処理装置の第4の実施例の処理フローを示す図である。SVP10が、各LSI30に対して同じ内容の制御設定を行う際、以下に説明するブロードキャスト転送処理を開始する。まず、SVP10が、複数のLSI30の中から1つの代表LSI30を選択する(ステップS31)。SVP10が、代表LSI30を選択した後、制御設定対象を全てのLSI30とする制御コマンドを含む制御信号を代表LSI30へ送信する(ステップS32)。代表LSI30が、送信された制御コマンドを含む制御信号を受信する(ステップS33)。
次に、代表LSI30が、受信した制御信号に含まれる制御コマンドを含むパケットデータを生成する(ステップS34)。そして、代表LSI30が、DataBus12を介して、そのパケットデータを他のLSI30へ送信する(ステップS35)。続いて、他のLSIが、そのパケットデータを受信し(ステップS36)、パケットデータを制御コマンドに変換する(ステップS37)。そして、各LSI30が、制御コマンドを実行する(ステップS38)。具体的には、代表LSI30が、上記ステップS33において受信した制御信号に含まれる制御コマンドに従って、代表LSI30の制御設定を実行し、他のLSI30が、上記ステップS37において変換された制御コマンドに従って、自LSI30の制御設定を実行する。
図13は、本情報処理装置の第4の実施例の動作を示す。なお、図13の基本構成は、図9の構成と同様であり、機能動作の説明において、説明に直接関係のない機能部は図示省略している。図13では、SVP10が、LSI#0に対してブロードキャスト転送を指示する例を示す。SVP10が、例えば、LSI#0を代表LSI30として選択する。SVP10は、SMBus#0を介して、LSI#0に対して、図13中の全てのLSI30を制御設定対象とする制御コマンドを含む制御信号を送信し、制御コマンドのブロードキャスト転送を指示する。LSI#0のSMBusCtrl#0が、制御コマンドを含む制御信号を受信する(T40)。Reg32は、送信された制御信号をSMBusCtrl#0から受け取る。Reg32は、その制御信号に従って、ブロードキャスト転送の対象となる全てのLSI30に対して制御信号に含まれる制御コマンドが転送されるようにする設定処理を行う(T41)。また、Reg32は、上記制御信号に含まれる制御コマンドをパケット生成部35に送る(T42)。パケット生成部35は、この制御コマンドを含むパケットデータを生成し、パケット送受信部34に送る(T43)。次に、パケット送受信部34が、DataBus#1を介して、生成されたパケットデータをLSI#1に対して送信し、LSI#1のパケット送受信部34が、そのパケットデータを受信する(T44)。
LSI#1のパケット送受信部34が、受信したパケットデータをコマンド変換部33に送る(T45)。次に、コマンド変換部33が、送られたパケットデータを制御コマンドに変換し、変換された制御コマンドをReg32に送り(T46)、制御コマンドに従って、LSI#1の制御設定を行う。すなわち、LSI#1のコマンド変換部33は、自制御回路(LSI#1)以外の他の制御回路(LSI#0)から転送されたパケットデータを自制御回路の制御設定に用いるコマンドに変換するコマンド変換手段である。
同様に、LSI#0からパケットデータを受信したLSI#2及びLSI#3は、上記パケットデータの変換によって得られた制御コマンドに従って、自LSI30の制御設定を行う(T47乃至T49、T50乃至T52)。
以上の説明のように、本情報処理装置においては、SVP10が、全てのLSI30に同じ内容の制御設定を行う際、選択した代表LSI30にブロードキャスト転送対象の制御コマンドを送信し、代表LSI30が、その他の全てのLSI30に制御コマンドを転送する。従って、本情報処理装置によれば、SVP10が全てのLSI30に対して同じ内容の制御設定を行う際に、SVP10が、各々のLSI30に対して個別に制御コマンドを送信する必要がなくなる。その結果、SVP10の負荷を低減することができる。
図14は、図9を参照して前述したLSI30の詳細な回路構成の例を示す図である。LSI30は、SMBusCtrl31、Reg(例えばSMBusRegister)32、コマンド変換部33、パケット送受信部34、パケット生成部35を備えている。
パケット生成部35は、複数のPacketGen315と、HardWire316と、複数の論理回路等を備えている。パケット送受信部34は、スレーブアクセス部340、マスターアクセス部341を備えている。以下に、パケット生成部35及びパケット送受信部34の内部構成について説明する。
PacketGen315は、パケット送受信部34との間でパケットデータのやり取りを行う機能部(転送シーケンスの機能部)である。HardWire316は、自LSI30のアドレスを決定するハードワイヤである。
自LSI30が他LSI30へ制御コマンドを転送する際や、自LSI30が代表LSI30として機能する際、パケット送受信部34は、PacketGen315を介して、SMBusRegister32の対応するレジスタからの転送データの読み込みを行う。具体的には、パケット送受信部34内のマスターアクセス部341が、パケット生成部35により生成されたパケットデータを他のLSI30へ送る。一方、他のLSI30から自LSI30へパケットデータが送られた際に、スレーブアクセス部340が、送られたパケットデータの中で制御コマンドに関するパケットデータをコマンド変換部33へ送る。
次に、図14に示すSMBusRegister32内の各レジスタの機能について説明する。
SMBusRegister32は、OtherReg300、Valid301、TargetID302、SMBusAdr303、Command304、Data305、Data306、Data307、Data308、BCEn309、Status310といった複数のレジスタを備える。Data305はData#1&BCを示し、Data306はData#2を示し、Data307はData#3を示し、Data308はData#0を示す。
SMBusAdr303、Command304、Data305、Data306、Data307、Data308、BCEn309、Status310は、基本的には、それぞれ、図8中のSMBusAdr203、Command204、Data205、Data206、Data207、Data208、BCEn209、Status210と同様の機能を有するので、詳細な説明は省略する。TargetID302は、TargetID#1、#2、#3を示し、パケット送信先に対応するLSI30のIDを格納するレジスタである。TargetID#1、#2、#3は、それぞれ、LSI#1、#2、#3のIDを格納するレジスタである。
図15は、図14に示す回路構成のLSIが使用するパケットデータのパケットフォーマットの一例である。図15において、パケット80のデータは、TID(Target ID)、SID(Source ID)、UID(Unique ID)、Command、Address、Dataを含む。TIDは、宛先のLSI#n(n=0〜3)のIDを示し、SIDは、送信元のLSI#m(m=0〜3)のIDを示す。また、UIDは、パケットのIDを示す。Commandは、メモリーの“Read”又は“Write”、SMBusの“Read”又は“Write”、SMBusアクセスをした場合のAck(Acknoledge)等を示すコマンド内容を示す。
Addressは、SMBusRegister32内のレジスタのSMBusアドレスを示す。Dataは、Command部のアクセス種別が“Write”の場合、書き込みデータを示し、また、アクセス種別が“Read”の場合、読み込みデータを示す。
以下に、図14に示すLSI30の第1の動作例について説明する。SVP10は、各LSI30のレジスタへのアクセスを図14中のSMBus#0を介して行う。SMBus#0経由でアクセス不可になった場合、SVP10及びLSI30は以下の動作を実行する。
(3−1)LSI#1の回路が故障し、SMBus#0経由でアクセス不可となった場合、SVP10は、LSI#1からの応答のタイムアウト、もしくは、伝送符号の誤りを検出する。この際、SVP10は、LSI#1へのアクセスを所定回数のリトライした後、アクセス不可の場合には、LSI#1のアクセス異常または故障発生と判断する。
(3−2)SVP10は、LSI#1に間接アクセスするため、SMBus#0を介してLSI#0の間接アクセス用レジスタに以下の処理を行う。すなわち、SVP10は、LSI#0のTargetTID#1にLSI#1のIDを書き込む。また、SVP10は、アクセスするLSI#1のレジスタのSMBusアドレスをSMBusAdr303に書き込む。また、SVP10は、LSI#0のCommand304にアクセス種別(“Read”又は“Write”)を書き込む。上記アクセス種別が“Write”の場合、SVP10は、LSI#0のData#1にデータを書き込む。また、SVP10は、LSI#0のLSI#1に接続するデータバスに対応するValid301のビットに“1”を書き込む。
(3−3)LSI#0のパケット生成部35が、レジスタに設定した値からパケット80を生成し、パケット送受信部34が、生成されたパケット80を送信パケットとして、パケット80のTID部に書かれたIDを持つLSI30に対して発行する。
パケット生成部35は、送信パケットの生成処理において、パケット80のTIDにLSI#1のID値、SIDにLSI#0のID値、UIDに、パケット80に固有のIDを設定する。さらに、パケット生成部35は、Commandに“Read”又は“Write”といったアクセス種別、Addressに、アクセスするレジスタのSMBusアドレスを設定する。また、パケット生成部35は、アクセス種別が“Write”の場合には、Dataに書き込むデータを設定する。
(3−4)パケットを受信したLSI#1は、パケットのTIDのIDと自LSI30のIDとを比較し、パケットのTIDのIDと自LSI30のIDとが一致した場合、自LSI30へのアクセスであると判断する。
(3−5)次に、LSI#1は、Commandをデコードし、アクセス種別が“Read”又は“Write”のいずれであるかを判断する。
(3−6)LSI#1は、アクセス種別が“Read”の場合、Addressに設定されたSMBusアドレスに対応するレジスタを読み込む。
(3−7)LSI#1のパケット生成部35が、応答パケットを生成する。パケット生成部35は、応答パケットの生成の処理において、送信されてきたパケット80のTIDとSIDを入れ替え、UID、Addressには、送信されてきたパケット80のUID、Addressと同じ値を設定する。パケット生成部35は、CommandにSMBus Read Ackを示す“1110”(図15を参照)を設定し、Dataにデータを設定しない。
(3−8)LSI#1は、アクセス種別が“Write”の場合、Addressに設定されたSMBusアドレスに対応するレジスタにDataのデータを書き込み、書き込み完了を伝えるための応答パケットを生成する。
パケット生成部35は、応答パケットの生成の処理において、送信されてきたパケットのTIDとSIDを入れ替える。UID、Addressには、送信されたきたパケットと同じ値を使用する。パケット生成部35は、CommandにSMBus Write Ackを設定する。Dataは付与しない。
(3−9)LSI#0は、実行したSMBus動作(LSI#1に対するパケットの送信動作)の状態をLSI#0のStatus310に保持する。
(3−10)SVP10は、Status310レジスタを読み込み、成功または失敗を確認する。また、SVP10は、Status310がアクセス中の状態を保持している場合は、一定時間待機した後、再度アクセスをする。SVP10が、所定回数リトライしてアクセス中の場合は、失敗と判断する。
次に、図14に示すLSI30の第2の動作例について説明する。SVP10は、LSI#0乃至#3に対して、同一のSMBusアドレスに同じ値を設定する際、以下の処理に従ってブロードキャスト転送の設定を行う。
(4−1)SVP10が、LSI#1に間接アクセスするために、LSI#0の間接アクセス用レジスタに対する設定処理を行う。すなわち、LSI#0が、TargetTID#1にLSI#1のID値を書き込む。また、LSI#0が、SMBusAdr303にアクセス先のLSI#1のレジスタのSMBusアドレスを書き込む。また、LSI#0が、Command304に上記アクセス種別(“Read”又は“Write”)を書き込む。また、LSI#0が、アクセス種別が“Write”である場合、LSI#0のData#1にデータを書き込む。また、LSI#0が、BCEn309の対応するビットに“1”を書き込む。また、LSI#0が、自LSI30に接続されているデータバスDataBus12(DatBus#0乃至#3)に対応するValid301の対応するビットに“1”を書き込む。
(4−2)LSI#0のパケット生成部35が、TargetID302に設定した値に基づいてパケットを生成し、パケット送受信部34が、生成されたパケットを、パケットのTIDに書かれたIDを持つ全てのLSI30に対して発行する。また、LSI#0は、自LSI#0に対してもパケットを生成し発行する。上記パケット発行後の各LSI30及びSVP10の処理は、前述した(3−4)乃至(3−10)の処理と同様であり、説明を省略する。
本情報処理装置は、システム制御装置と制御回路のシリアルバス間のアクセス障害が発生したときに、システム制御装置が、アクセス可能な他の制御回路を介してアクセス障害が発生した制御回路にアクセスすることができる。これにより、システム制御装置が、他の制御回路を介して制御コマンドを転送でき、アクセス障害の制御回路の制御設定を行うことができる。この結果、本情報処理装置は、情報処理装置に重大な影響を及ぼす障害を回避することができ、情報処理装置の信頼性が向上する。
さらに、本情報処理装置は、システム制御装置が複数の制御回路の全ての制御設定対象の設定を行う際、代表の制御回路を選択し、システム制御装置が代表の制御回路に制御コマンドを送信する。さらに、代表の制御回路が、その他の制御回路の制御設定に用いる制御コマンドを転送する。その結果、本情報処理装置は、システム制御装置の制御設定におけるコマンドやり取りの処理の負荷を低減することができ、また、制御回路の設定に要する時間を短縮することができる。

Claims (6)

  1. システム制御装置と複数の制御回路とを備える情報処理装置であって、
    前記システム制御装置が、各々の制御回路と第1の信号線を介して接続され、各々の制御回路が、自制御回路以外の他の制御回路と第2の信号線を介して接続され、
    前記システム制御装置が、
    前記第1の信号線を介して前記制御回路から受信した応答信号に基づいて、前記制御回路において異常が発生したかを判断する異常判断手段と、
    前記第1の信号線を介して、前記制御回路に対して、自制御回路以外の制御回路又は前記複数の制御回路の全てを制御設定するコマンドを含む制御信号を送信する制御信号送信手段とを備え、
    各々の制御回路が、
    前記第1の信号線を介して前記システム制御装置の前記制御信号送信手段から送信された制御信号を受信する信号受信手段と、
    前記受信された制御信号に含まれるコマンドを、前記第2の信号線を介して、制御設定対象の制御回路に対して転送する信号転送手段と、
    前記信号受信手段によって受信された制御信号に含まれるコマンド又は自制御回路以外の他の制御回路から転送されたコマンドに従って、自制御回路を制御設定する制御設定手段とを備え、
    前記制御信号送信手段が、前記異常判断手段によって異常が発生したと判断された制御回路を制御設定するコマンドと、当該コマンドを転送するための制御コマンドと、前記異常が発生したと判断された制御回路への宛先情報とを含む制御信号を、前記第1の信号線を介して、前記異常が発生したと判断された制御回路以外の他の制御回路に対して送信し、
    前記他の制御回路が備える信号転送手段が、前記システム制御装置の制御信号送信手段から送信された制御信号に含まれる前記宛先情報及び前記転送するための制御コマンドに基づいて、当該制御信号に含まれるコマンドを、前記第2の信号線を介して、前記異常が発生したと判断された制御回路に対して転送する
    ことを特徴とする情報処理装置。
  2. 前記第1の信号線及び前記第2の信号線がシリアルバスである
    ことを特徴とする請求項1記載の情報処理装置。
  3. 前記第1の信号線が、シリアルバスであり、前記第2の信号線が、前記制御回路で処理されるパケットデータのデータバスであり、
    前記システム制御装置が備える前記制御信号送信手段が、前記第1の信号線を介して、前記異常判断手段によって異常が発生したと判断された制御回路を制御設定するコマンドを含む制御信号を、前記異常が発生したと判断された制御回路以外の他の制御回路に対して送信し、
    前記制御回路が、前記システム制御装置の制御信号送信手段から送信された制御信号に含まれるコマンドを含むパケットデータを生成するパケット生成手段と、自制御回路以外の他の制御回路から転送されたパケットデータを自制御回路の制御設定に用いるコマンドに変換するコマンド変換手段とを備え、
    前記制御回路が備える前記信号転送手段が、前記パケット生成手段によって生成されたパケットデータを、前記第2の信号線を介して、前記異常が発生したと判断された制御回路に対して転送する
    ことを特徴とする請求項1記載の情報処理装置。
  4. 前記第1の信号線及び前記第2の信号線がシリアルバスであり、
    前記システム制御装置が備える制御信号送信手段が、前記第1の信号線を介して、前記複数の制御回路の全てを制御設定対象とするコマンドを含む制御信号をいずれか一の代表の制御回路に対して送信し、
    前記代表の制御回路の信号送受信手段が、前記コマンドを含む制御信号を受信し、前記代表の制御回路の信号転送手段が、前記第2の信号線を介して、前記制御設定対象の制御回路に対し、前記制御信号に含まれるコマンドを転送する
    ことを特徴とする請求項1記載の情報処理装置。
  5. 前記第1の信号線が、シリアルバスであり、前記第2の信号線が、前記制御回路で処理されるパケットデータのデータバスであり、
    前記制御回路が、前記システム制御装置の信号送信手段から送信された制御信号に含まれるコマンドを含むパケットデータを生成するパケット生成手段と、自制御回路以外の他の制御回路から転送されたパケットデータを自制御回路の制御設定に用いるコマンドに変換するコマンド変換手段とを備え、
    前記システム制御装置が備える制御信号送信手段が、前記第1の信号線を介して、前記複数の制御回路の全てを制御設定対象とするコマンドを含む制御信号をいずれか一の代表の制御回路に対して送信し、
    前記代表の制御回路の信号送受信手段が、前記コマンドを含む制御信号を受信し、前記代表の制御回路のパケット生成手段が、前記受信されたコマンドを含むパケットデータを生成し、前記代表の制御回路の信号転送手段が、前記第2の信号線を介して、前記制御設定対象の制御回路に対し、前記生成されたパケットデータを転送する
    ことを特徴とする請求項1記載の情報処理装置。
  6. システム制御装置と複数の制御回路とを備え、前記システム制御装置が各々の制御回路と第1の信号線を介して接続され、各々の制御回路が自制御回路以外の他の制御回路と第2の信号線を介して接続される情報処理装置の制御方法であって、
    前記システム制御装置が、前記第1の信号線を介して前記制御回路から受信した応答信号に基づいて、前記制御回路において異常が発生したかを判断し、
    前記システム制御装置が、異常が発生したと判断された制御回路を制御設定するコマンドと、当該コマンドを転送するための制御コマンドと、前記異常が発生したと判断された制御回路への宛先情報とを含む制御信号を、前記第1の信号線を介して、前記異常が発生したと判断された制御回路以外の他の制御回路に対して送信し、
    前記他の制御回路が、前記システム制御装置から送信された制御信号に含まれる前記宛先情報及び前記転送するための制御コマンドに基づいて、当該制御信号に含まれるコマンドを、前記第2の信号線を介して、前記異常が発生したと判断された制御回路に対して転送し、
    前記異常が発生したと判断された制御回路が、前記転送されたコマンドに従って、自制御回路を制御設定する
    ことを特徴とする情報処理装置の制御方法。
JP2010525527A 2008-08-21 2008-08-21 情報処理装置及び情報処理装置の制御方法 Expired - Fee Related JP5516402B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2008/064872 WO2010021040A1 (ja) 2008-08-21 2008-08-21 情報処理装置及び情報処理装置の制御方法

Publications (2)

Publication Number Publication Date
JPWO2010021040A1 JPWO2010021040A1 (ja) 2012-01-26
JP5516402B2 true JP5516402B2 (ja) 2014-06-11

Family

ID=41706936

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010525527A Expired - Fee Related JP5516402B2 (ja) 2008-08-21 2008-08-21 情報処理装置及び情報処理装置の制御方法

Country Status (3)

Country Link
US (1) US8423699B2 (ja)
JP (1) JP5516402B2 (ja)
WO (1) WO2010021040A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120066423A1 (en) * 2010-09-13 2012-03-15 Boon Siang Choo Inter-integrated circuit bus multicasting

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05134998A (ja) * 1991-11-15 1993-06-01 Mitsubishi Electric Corp マルチプロセツサシステム
JPH09160875A (ja) * 1995-12-08 1997-06-20 Nec Corp マルチエージェント相互バックアップ方式
JPH1168745A (ja) * 1997-08-11 1999-03-09 Nec Corp ネットワーク管理方式およびネットワーク管理方法
JP2004030151A (ja) * 2002-06-25 2004-01-29 Hitachi Ltd 組込み装置およびネットワーク構成方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5758053A (en) * 1992-07-22 1998-05-26 Hitachi, Ltd. Fault handling and recovery for system having plural processors
JPH0652130A (ja) 1992-07-30 1994-02-25 Mitsubishi Electric Corp マルチプロセッサシステム
JP3459056B2 (ja) * 1996-11-08 2003-10-20 株式会社日立製作所 データ転送システム
US5968189A (en) * 1997-04-08 1999-10-19 International Business Machines Corporation System of reporting errors by a hardware element of a distributed computer system
JP3977484B2 (ja) * 1997-05-08 2007-09-19 矢崎総業株式会社 状態情報の管理方法及び通信システム
US6295573B1 (en) * 1999-02-16 2001-09-25 Advanced Micro Devices, Inc. Point-to-point interrupt messaging within a multiprocessing computer system
JP2001256203A (ja) * 2000-03-09 2001-09-21 Nec Corp 冗長構成クロスバスイッチシステム
US6718421B1 (en) * 2001-06-19 2004-04-06 Webtv Networks, Inc. Interconnect bus
US7093154B2 (en) * 2001-10-25 2006-08-15 International Business Machines Corporation Critical adapter local error handling
US7281055B2 (en) * 2002-05-28 2007-10-09 Newisys, Inc. Routing mechanisms in systems having multiple multi-processor clusters
JP3988146B2 (ja) * 2004-07-27 2007-10-10 日本電気株式会社 マルチノードシステム、ノード間クロスバスイッチ、ノード、スイッチプログラム及びノードプログラム
JP4398386B2 (ja) * 2005-01-28 2010-01-13 富士通株式会社 複数の処理ノードをシリアルバスにより相互接続する装置
JP4640116B2 (ja) 2005-11-04 2011-03-02 日本電気株式会社 マルチノードコンピュータシステム、統合サービスプロセッサ、ステータス管理方法及びプログラム
JP4723470B2 (ja) * 2006-12-28 2011-07-13 株式会社日立製作所 計算機システムおよびそのチップセット
JP5136550B2 (ja) * 2007-06-01 2013-02-06 富士通株式会社 情報処理装置及び情報処理装置の再構成方法
US7734948B2 (en) * 2007-08-21 2010-06-08 International Business Machines Corporation Recovery of a redundant node controller in a computer system
US7788432B2 (en) * 2007-10-26 2010-08-31 International Business Machines Corporation System for performing a serial communication between a central control block and satellite components
WO2009062280A1 (en) * 2007-11-15 2009-05-22 Mosaid Technologies Incorporated Methods and systems for failure isolation and data recovery in a configuration of series-connected semiconductor devices

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05134998A (ja) * 1991-11-15 1993-06-01 Mitsubishi Electric Corp マルチプロセツサシステム
JPH09160875A (ja) * 1995-12-08 1997-06-20 Nec Corp マルチエージェント相互バックアップ方式
JPH1168745A (ja) * 1997-08-11 1999-03-09 Nec Corp ネットワーク管理方式およびネットワーク管理方法
JP2004030151A (ja) * 2002-06-25 2004-01-29 Hitachi Ltd 組込み装置およびネットワーク構成方法

Also Published As

Publication number Publication date
US20110145455A1 (en) 2011-06-16
US8423699B2 (en) 2013-04-16
JPWO2010021040A1 (ja) 2012-01-26
WO2010021040A1 (ja) 2010-02-25

Similar Documents

Publication Publication Date Title
JPH0347537B2 (ja)
CN107908589B (zh) I3c验证从设备、主从设备的通信验证系统及方法
JP4451837B2 (ja) データ転送装置およびデータ転送方法
US8055939B2 (en) Memory control device and methods thereof
JP4755050B2 (ja) データ処理装置、モード管理装置、及びモード管理方法
JP2021508871A (ja) システムオンチップシステムのビット単位書き込み装置
JP5516402B2 (ja) 情報処理装置及び情報処理装置の制御方法
US20020089940A1 (en) Duplexing apparatus and method in large scale system
KR101260313B1 (ko) 전자장치 및 그 데이터 송수신방법과, 슬레이브 장치 및복수의 장치 간의 통신방법
US20020174282A1 (en) Multiprocessor system
JP6960841B2 (ja) 半導体デバイス、電子機器、データ伝送方法、タイミングコントローラ、自動車
WO2013027297A1 (ja) 半導体装置、管理装置、及びデータ処理装置
US11455248B2 (en) Semiconductor device capable of performing software lock-step
JP4219784B2 (ja) 情報処理装置の拡張ユニット
JP2003081546A (ja) エレベータの情報伝送制御装置
JP2014232414A (ja) I2c通信スレーブ装置
KR102229931B1 (ko) 차량 모듈 업데이트 장치 및 방법
US11983443B2 (en) Multi-access memory modules
JP2013033314A (ja) Kvm切替器、および切替時のusb入力装置接続維持方法
WO2014118985A1 (ja) バスモジュール及びバスシステム
JP4666369B2 (ja) Usbデバイス
US20090240984A1 (en) Test apparatus for testing an information processing apparatus
JPH04152448A (ja) インタフェース変換方法およびインタフェース変換装置
JP5811544B2 (ja) 集積装置、情報処理システム、および、処理方法
CN115587061A (zh) 一种服务器及其axi互联装置和方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121030

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130604

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130801

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130903

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131203

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20131210

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140304

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140317

R150 Certificate of patent or registration of utility model

Ref document number: 5516402

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees