JP2016212516A - バス接続対象装置,ストレージ制御装置およびバス通信システム - Google Patents

バス接続対象装置,ストレージ制御装置およびバス通信システム Download PDF

Info

Publication number
JP2016212516A
JP2016212516A JP2015093426A JP2015093426A JP2016212516A JP 2016212516 A JP2016212516 A JP 2016212516A JP 2015093426 A JP2015093426 A JP 2015093426A JP 2015093426 A JP2015093426 A JP 2015093426A JP 2016212516 A JP2016212516 A JP 2016212516A
Authority
JP
Japan
Prior art keywords
bus
reset
pcie switch
connection
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.)
Granted
Application number
JP2015093426A
Other languages
English (en)
Other versions
JP6455302B2 (ja
Inventor
優貴 平野
Yuki Hirano
優貴 平野
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 JP2015093426A priority Critical patent/JP6455302B2/ja
Priority to US15/092,658 priority patent/US10268560B2/en
Publication of JP2016212516A publication Critical patent/JP2016212516A/ja
Application granted granted Critical
Publication of JP6455302B2 publication Critical patent/JP6455302B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display
    • 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/0745Error 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 in an input/output transactions management context
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2289Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by configuration test
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3027Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3034Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a storage system, e.g. DASD based or network based
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • 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
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • 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
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)
  • Bus Control (AREA)

Abstract

【課題】転送中のデータに異常を検出した場合においてその異常の伝播を阻止する。【解決手段】転送中のデータの異常を検出し、接続監視部22に対してエラー通知を発行する異常検出部211を備え、接続監視部22が、エラー通知を受信すると、バススイッチ21を経由する接続を切断する接続切断処理部221,224を備える。【選択図】図2

Description

本発明は、バス接続対象装置,ストレージ制御装置およびバス通信システムに関する。
複数のコントローラモジュール(Controller Module:以下CMと記す)を備え、これらのCMが、フロントエンドルータ(Front-End Router:以下FRTと記す)を経由して互いにPCIe(Peripheral Component Interconnect Express)バス(以下、PCIeバスと記す)を介して接続されるRAID(Redundant Arrays of Inexpensive Disks)装置が知られている。
CM間を接続する経路にはデータの冗長性を保つために多くのユーザーデータが流れる。仮に、そのデータが、LSI(Large Scale Integration)デバイス内部異常などの要因により化けて他のCMへ伝搬した場合に、正常なデータが喪失して冗長性を保持できなくなる。これにより、システムダウンに至るおそれがある。
図10は従来のRAID装置におけるPCIeスイッチにおいて異常検知された場合の処理を示す図である。図10に示す例においては、RAID装置100は、4つのCM200と、2つのサービスコントローラ(Service Controller:以下SVCと記す)300と4つのFRT400とを備える。
CM200は、監視FPGA(Field Programmable Gate Array)201,CPU202およびPCIeスイッチ203を備える。
PCIeスイッチ203はポート2031およびNTB(Non Transparent Bridge)ポート2032を備える。ポート2031は、PCIeスイッチ203が受信したデータを外部デバイスに転送するための中継を行なう。また、検出したエラー要因およびデータを転送するために必要なコンフィグレーション情報を格納するレジスタをポート2031毎に有する。
PCIeスイッチ203は、ポート2031を介してCPU202と接続されている。CPU202はCM200における種々の制御を行なうものであり、PCIeのルートコンプレックスに相当する。
また、PCIeスイッチ203は、NTBポート2032を介してFRT400のPCIeスイッチ401と接続されている。
NTBポート2032は、CM200間でデータを転送するに際して、自分が送信するデータのドメイン(アドレス)を相手が扱えるドメインに変換する。なお、NTBポート2032も前述したポート2031と同様のレジスタを有する。
監視FPGA201は、FPGA間通信制御ブロック2011とエラー検出ロジック2012とを備える。エラー検出ロジック2012にはFRT400のPCIeスイッチ401からエラー通知信号が入力される。
FPGA間通信制御ブロック2011は、SVC300の監視FPGA301のFPGA間通信制御ブロック3011とFPGA間通信データバスを介して接続されている。
これにより、各SVC300の監視FPGA301は全てのCM200の監視FPGA(監視デバイス)201とFPGA間通信データバスで接続される。また各CM200からのデータバスは、それぞれ2つのSVC300に分岐して接続され冗長バスを構成している。
SVC300は監視FPGA301を備える。監視FPGA301は、FPGA間通信制御ブロック3011と電源オフ制御機能3012とを備える。電源オフ制御機能3012は、指定されたFRT400のPCIeスイッチ401に対して電源オフ要求を通知することにより、このPCIeスイッチ401を電源オフにする制御を行なう。
FRT400はPCIeスイッチ401を備える。PCIeスイッチ401は複数のポート4011を備え、各ポート4011にCM200がそれぞれ接続される。
PCIeスイッチ401のポート4011もPCIeスイッチ203のポート2031と同様の機能・構成を備え、PCIeスイッチ401が受信したデータを外部デバイスに転送するための中継を行なう。
PCIeスイッチ401は、複数のポート4011を備える。なお、図10中においては簡便のため1つのポート4011のみを図示している。PCIeスイッチ401の各ポート4011には、CM200のPCIeスイッチ203のNTBポート2032がPCIeバスを介して接続される。これにより、CM200どうしの通信はFRT400を経由して行なわれる。
PCIeスイッチ401は、PCIeアンコレクタブルエラー(Uncorrectable Error)等の訂正不可能なデータ化け(いわゆる2ビット化け)となりうる異常を検出した場合に、エラー通知信号を出力することで、その異常を外部デバイスに通知する機能を有する。このエラー通知信号は、全CM200に入力される。
なお、前述したPCIeスイッチ203のNTBポート2032と同様のNTBポートをこのPCIeスイッチ401に、搭載することは可能であるが、NTBポートは1つしか持たせることができないというシステム上の制約がある。そのため、PCIeスイッチ401においてPCIeバスが接続される全てのポートにNTBポートを割り当てることはできない。
このように構成された従来のRAID装置において、FRT400のPCIeスイッチ401が異常を検出した場合の処理を以下に説明する。
PCIeスイッチ401が異常を検出すると(図10中の符号A1参照)、PCIeスイッチ401は、異常を検出したことを、エラー通知信号を発行することで全てのCM200の監視FPGA201に通知する(図10中の符号A2参照)。
エラー通知信号を受信した監視FPGA201は、エラー検出ロジック2012により、エラー通知信号の送信元をエラー要因として特定する。監視FPGA201は、FPGA間通信データ信号により、SVC300の監視FPGA301へ向けて、エラー要因であるPCIeスイッチ401の電源オフ要求を通知する(図10中の符号A3参照)。
エラー通知信号を受信したSVC300の監視FPGA301は、指定されたFRT400に対して動作電源オフ制御を発行する(図10中の符号A4参照)。
動作電源オフ制御を発行されたFRT400は動作電源がオフされ、CM200との間のPCIeバス通信が切断される(図10中の符号A5参照)。これにより、FRT400は全てのCM200から切り離される(図10中の符号A6参照)。
特開2005−293595号公報 特開平11−191073号公報
しかしながら、このような従来のRAID装置においては、特定のCM200からFRT400に向かってデータが転送されるケースにおいて、CM200のPCIeスイッチ203の内部でデータ化けが生じる異常が発生した場合に、そのデータを受信するFRT400のPCIeスイッチ401がエラーを検出する。
エラーを検知したPCIeスイッチ401は、外部デバイスに対してエラー通知信号を発行する。上述の如く、エラー通知信号を受信したSVC300の監視FPGA301は、指定されたFRT400に対して動作電源オフ制御を発行し、動作電源オフ制御を発行されたFRT400は動作電源がオフされ、全てのCM200から切り離される。
本来であれば、異常が発生したCM200だけを切り離すことで、エラー検出による影響を最小限に抑えることが望ましいが、上述した従来のRAID装置においては、結果としてPCIeスイッチ401を備えるFRT400に接続された全てのCM200に影響が拡大してしまうという課題がある。
1つの側面では、本発明は、転送中のデータに異常を検出した場合においてその異常の伝播を阻止することを目的とする。
このため、この通信システムは、第1のバススイッチを備える制御装置と、前記第1のバススイッチと接続される第2のバススイッチを備え前記制御装置と接続される通信装置と、前記制御装置と前記通信装置との通信を管理する管理装置とを備える通信システムであって、前記通信装置が、前記第2のバススイッチにおける転送中のデータの異常を検出し、前記管理装置に対してエラー通知を発行する異常検知部を備え、前記管理装置が、前記エラー通知を受信すると、前記制御装置に対して前記第1のバススイッチによる接続の切断要求を発行する接続切断要求処理部を備え、前記制御装置が、前記接続切断要求処理部からの切断要求に応じて、前記第1のバススイッチと前記第2のバススイッチとの接続を切断する接続切断処理部を備える。
一実施形態によれば、転送中のデータに異常を検出した場合においてその異常の伝播を阻止することができる。
実施形態の一例としてのストレージ装置におけるケーブル接続構成を例示する図である。 実施形態の一例としてのストレージ装置の機能構成を示す図である。 実施形態の一例としてのストレージ装置のFRTに備えられるPCIeスイッチにおけるバス接続状態を例示する図である。 実施形態の一例としてのストレージ装置においてCMのPCIeスイッチ内でデータ化けとなる異常が検出された場合の処理を説明するシーケンス図である。 実施形態の一例としてのストレージ装置においてCMのPCIeスイッチ内でデータ化けとなる異常が検出された場合における信号の流れを示す図である。 実施形態の一例としてのストレージ装置においてFRTのPCIeスイッチでデータ化けとなる異常が検出された場合の第1のエラー処理モードによる処理を説明するシーケンス図である。 実施形態の一例としてのストレージ装置においてFRTのPCIeスイッチ内でデータ化けとなる異常が検出された場合における信号の流れを示す図である。 実施形態の一例としてのストレージ装置においてFRTのPCIeスイッチ内でデータ化けとなる異常が検出された場合の第2のエラー処理モードによる処理を説明するシーケンス図である。 実施形態の一例としてのストレージ装置においてFRTのPCIeスイッチ内でデータ化けとなる異常が検出された場合における信号の流れを示す図である。 従来のRAID装置におけるPCIeスイッチにおいて異常検知された場合の処理を示す図である。
以下、図面を参照して本バス接続対象装置,ストレージ制御装置およびバス通信システムに係る実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形及び各変形例を組み合わせる等)して実施することができる。又、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
(A)構成
図1は実施形態の一例としてのストレージ装置1におけるケーブル接続構成を例示する図、図2はその機能構成を示す図である。
この図1に示す例においては、ストレージ装置1は、SVC3,ミッドプレーン5,複数(図1には2つを図示)のCM2−1,2−2及び複数(図1には2つを図示)のFRT4−1,4−2を備える。
以下、このようなストレージ装置1において複数のCM2−1,2−2とFRT4−1,4−2との間をPCIeの通信ケーブル8によって接続する例について示す。
ミッドプレーン5は、装置間のデータ通信を行なう回路基板装置であり、図示しない複数のコネクタを備え、これらのコネクタに接続された機器間でバス通信を行なう。
図1に示す例においては、ミッドプレーン5に、SVC3と2つのFRT4−1,4−2が接続されている。
FRT4−1,4−2は、複数のCM2−1,2−2間の通信(CM−CM間通信)を実現する通信装置である。FRT4−1,4−2は互いに同様の構成を有している。
なお、以下、FRT4−1をFRT#0と示す場合がある。同様に、FRT4−2をFRT#1と示す場合がある。
以下、FRTを示す符号としては、複数のFRTのうち1つを特定する必要があるときには符号4−1,4−2を用いるが、任意のFRTを指すときには符号4を用いる。
また、以下、CMを示す符号としては、複数のCMのうち1つを特定する必要があるときには符号2−1,2−2を用いるが、任意のCMを指すときには符号2を用いる。
[1]FRT
FRT4は、PCIeスイッチ41および複数(例えば24個)のコネクタ42を備える。なお、図1中においては、便宜上、各FRT4における一部のコネクタ42のみを図示している。
コネクタ42には、PCIe通信ケーブル(以下、単に通信ケーブルという)8の一端に取り付けられたコネクタ(図示省略)が脱着可能に実装される。また、通信ケーブル8の他端は、後述するCM2−1,2−2のコネクタ25に実装される。
各FRT4は、全てのCM2と通信ケーブル8によって接続される。すなわち、各CM2は、全てのFRT4とそれぞれ通信ケーブル8を介して接続される。
PCIeスイッチ41は、データの通信経路を切り替える回路装置であり、コネクタ42に入力されたデータを、そのデータの送信先(通信相手)に応じて他のコネクタ42等から出力させる。
図3は実施形態の一例としてのストレージ装置1のFRT4に備えられるPCIeスイッチ41におけるバス接続状態を例示する図である。この図3に例示するPCIeスイッチ41においては、その外周に沿って24個のポート(Port)412を備える。これらのポート412にはそれぞれコネクタ42が接続され(図3においては図示省略)、各コネクタ42に通信ケーブル8を介してCM2(CM#0〜23)が接続される。
また、PCIeスイッチ41は、図2に示すように、第2異常検出部411としての機能を備える。
第2異常検出部411は、FRT4からCM2に対してデータを転送する際に、PCIeスイッチ41内でデータ化けとなる異常を検出する。なお、このような異常の検出は既知の手法により実現することができ、その説明は省略する。
第2異常検出部411は、異常を検出すると、SVC3の監視FPGA31に対して異常が発生したことを通知するエラー通知信号を発行する。
また、各FRT4は、データバス9及びミッドプレーン5を介して、SVC3と接続されている。以下、これらのデータバス9及びミッドプレーン5によって各FRT4とSVC3とを接続するデータ通信路を第1データバス90という場合がある。
[2]CM
CM2は、ストレージ装置1における種々の制御を行なうものであり、図示しないホスト装置からのストレージアクセス要求に従って、図示しないHDD(Hard Disk Drive)等の記憶装置へのアクセス制御等、各種制御を行なう。また、各CM2は互いに同様の構成を有している。各CM2は図示しないコントローラエンクロージャ(Controller Enclosure:CE)に収納される。
図1に例示するCM2は、CPU23,コネクタ(oCN)24,監視FPGA22を備えるとともに、複数(図1に示す例では4つ)の、コネクタ(CN)25およびPCIeスイッチ21を備える。
コネクタ25には、通信ケーブル8の一端が脱着可能に実装される。また、通信ケーブル8の他端は、前述したFRT4のコネクタ42に実装される。各CM2はそれぞれ全てのFRT4と通信ケーブル8によって接続される。
コネクタ24には、監視用インタフェースケーブル70の一端が着脱可能に実装される。監視用インタフェースケーブル70の他端は、SVC3に備えられたコネクタ32に実装され、これにより、CM2は監視用インタフェースケーブル70を介してSVC3と通信可能に接続される。
各コネクタ25には、それぞれPCIeスイッチ21が接続されている。
PCIeスイッチ21は、図2に示すように、ポート212およびNTB(Non Transparent Bridge)ポート213を備える。
ポート212は、PCIeスイッチ21が受信したデータを外部デバイスに転送するための中継を行なう。
また、ポート212は、検出したエラー要因およびデータを転送するために必要なコンフィグレーション情報を格納するレジスタ(図示省略)を有する。
PCIeスイッチ21は、ポート212を介してCPU23と接続されている。
また、PCIeスイッチ21は、NTBポート213を介してFRT4のPCIeスイッチ41と接続されている。
NTBポート213は、CM2間でデータを転送するに際して、自身が送信するデータのドメイン(アドレス)を相手が扱えるドメインに変換する。なお、NTBポート213も前述したポート212と同様のレジスタを有する。
また、PCIeスイッチ21には、後述する監視FPGA22のリセット制御部224からNTBポートリセット信号が入力される。
NTBポートを備えたPCIeスイッチにおいては、チップに、ポートリセットを外部からポート単位で指示できるリセット端子(ポートリセット端子,NTBポートリセット端子)を備えるものがある。このようなPCIeスイッチのNTBポートは、ポート単独でリセットさせることができる。ポート単独でリセットを行なうことにより、他のポートを介した接続された通信に影響を与えることなく、最小限の影響範囲でシステムの復旧を実現することができる。
本システムにおいては、このようなNTBポートを、単独でリセット可能なポートとして取り扱う。また、NTBポートリセット信号は、NTBポートを単独でリセットさせるための指示信号として機能するものである。
PCIeスイッチ21においては、このNTBポートリセット信号が入力されるとNTBポート213のリセットが行なわれる。以下、NTBポート213をリセットすることをNTBポートリセットという場合がある。NTBポートリセットにより、NTBポート213は単独でリセットされる。
なお、NTBポートリセット信号は、例えばPCIeスイッチ21に備えられたNTBポートリセット端子(図示省略)に入力される。PCIeスイッチ21においては、このNTBポートリセット端子に信号入力が行なわれることで、NTBポート213のリセットが行なわれる。ただし、NTBポート213のリセットは、これに限定されるものではなく、他の種々の手法を用いて実現してもよい。例えば、NTBポート213のリセットを指示するなんらかの信号をPCIeスイッチ21の他の端子に入力してもよい。PCIeスイッチ21は、この信号を受信するとNTBポート213のリセットを行なう。
PCIeスイッチ21においてNTBポート213のリセットが行なわれると、PCIeスイッチ21における当該NTBポート213とFRT4とを接続するPCIeバスが切断される。
PCIeバスシステムにおいては、NTBポートと接続されるPCIeバスが期待外のバス速度や数で接続されてしまうことにより異常が生じた場合に、PCIeバスの状態を再構築(復旧)させるための手法としてNTBポートリセットが用いられる。本ストレージ装置1においては、CM2のPCIeスイッチ21にNTBポートリセットを行なうことで、PCIeスイッチ21とFRT4とを接続するPCIeバスを切断する。
前述の如く、PCIeバスシステムにおいては、PCIeスイッチには、NTBポートを1つしか持たせることができないというシステム上の制約がある。このため、上述したFRT4のPCIeスイッチ41のPCIeバスが接続される全てのポートにNTBポートを割り当てることはできない。このように、PCIeスイッチ41はNTBポートを複数持つことができないため、PCIeスイッチ41においてはNTBポートリセット機能は使用しない。
さらに、PCIeスイッチ21は、図2に示すように、第1異常検出部211としての機能を備える。
第1異常検出部(異常検出部,第2の異常検知部)211は、CM2からFRT4に対してデータを転送する際に、PCIeスイッチ21内でデータ化けとなる異常を検出する。例えば、第1異常検出部211は、PCIeアンコレクタブルエラー等の訂正不可能なデータ化け(いわゆる2ビット化け)となりうる異常を検出する。なお、このような異常の検出は既知の手法により実現することができ、その説明は省略する。
第1異常検出部211は、異常を検出すると、監視FPGA22に対して異常が発生したことを通知するエラー通知信号を発行する。
CPU23はCM2における種々の制御を行なうものであり、PCIeのルートコンプレックスに相当する。
監視FPGA22は、図2に示すように、エラー要因判断部221,FPGA間通信制御ブロック222,リセット制御部224,第1判断レジスタ225,第2判断レジスタ226およびエラー検出ロジック223としての機能を備える。これらの機能は、監視FPGA22において回路構成を設定して書き換えることにより実現される。
エラー検出ロジック223には、PCIeスイッチ21からエラー通知信号が入力される。エラー検出ロジック223は、このエラー通知信号の入力を検出することで、PCIeスイッチ21における異常の発生を検出する。
エラー要因判断部221は、外部(例えばPCIeスイッチ21)から入力されるエラー通知信号に基づきエラー要因を特定する。例えば、エラー要因判断部221は、エラー通知信号の送信元をエラー要因であると判断する。また、エラー通知信号にエラー要因を表す情報が含まれている場合には、エラー要因判断部221は、エラー通知信号からエラー要因を示す情報を読み出し、この情報に基づきエラー要因を特定する。
従って、PCIeスイッチ21から監視FPGA22にエラー通知信号が入力されると、エラー要因判断部221は、PCIeスイッチ21がエラー要因であると判断する。
また、エラー要因判断部221は、特定したエラー要因であるPCIeスイッチ21のNTBポート213をリセットさせる指示(NTBポートリセット指示)を、リセット制御部224に対して行なう。
すなわち、エラー要因判断部221は、PCIeスイッチ21からエラー通知信号を受信した場合に、PCIeスイッチ21のNTBポート213をリセットさせる指示(NTBポートリセット指示)を、リセット制御部224に対して行なう。
また、エラー要因判断部221は、後述するSVC3の監視FPGA31から、PCIeスイッチ21のNTBポート213をリセットさせる要求(NTBポートリセット要求)を受信した場合にも、PCIeスイッチ21のNTBポート213をリセットさせる指示(NTBポートリセット指示)を、リセット制御部224に対して行なう。
これらにより、エラー要因判断部221および後述するリセット制御部224は、異常検知を行なったPCIeスイッチ41やPCIeスイッチ21を経由する接続を切断する接続切断処理部(第3の接続切断処理部)として機能する。
第1判断レジスタ225には、PCIeスイッチ21からエラー通知信号を受信した場合において、上述の如きエラー要因判断部221によるNTBポート213のNTBポートリセット指示を発行する機能を有効にするか否かを表す設定値が格納される。
エラー要因判断部221は、この第1判断レジスタ225に設定された値に応じた処理を行なう。
例えば、この第1判断レジスタ225に“1”が設定されている場合には、PCIeスイッチ21からエラー通知信号を受信した場合に、エラー要因判断部221は、リセット制御部224に対してPCIeスイッチ21のNTBポート213をリセットさせるNTBポートリセット指示を発行する。NTBポートリセット指示を受信したリセット制御部224は、後述の如く、PCIeスイッチ21に対してNTBポートリセット信号を発行することで、NTBポート213をリセット(NTBポートリセット)させる。
一方、この第1判断レジスタ225に“0”が設定されている場合には、PCIeスイッチ21からエラー通知信号を受信した場合であっても、エラー要因判断部221は、PCIeスイッチ21のNTBポート213をリセットさせるNTBポートリセット指示を発行しない。すなわち、PCIeスイッチ21のNTBポート213をリセットさせる機能を無効にする。
第2判断レジスタ226には、後述するSVC3の監視FPGA31からPCIeスイッチ21のNTBポート213をリセットさせるNTBポートリセット要求を受信した場合において、上述の如きエラー要因判断部221によるNTBポート213のNTBポートリセット指示を発行する機能を有効にするか否かを表す設定値が格納される。
エラー要因判断部221は、この第2判断レジスタ226に設定された値に応じた処理を行なう。
例えば、この第2判断レジスタ226に“1”が設定されている場合には、SVC3の監視FPGA31からNTBポートリセット要求を受信した場合に、エラー要因判断部221は、リセット制御部224に対してPCIeスイッチ21のNTBポート213をリセットさせるNTBポートリセット指示を発行する。
一方、この第2判断レジスタ226に“0”が設定されている場合には、SVC3の監視FPGA31からNTBポートリセット要求を受信した場合でも、エラー要因判断部221は、リセット制御部224に対してNTBポートリセット指示を発行しない。すなわち、エラー要因判断部221は、PCIeスイッチ21のNTBポート213をリセットさせる機能(処理)を無効化する。
なお、第1判断レジスタ225および第2判断レジスタ226の各値は、“0”もしくは“1”のいずれかの値が初期値として予め設定され、また、ユーザが任意にその初期値を変更することができる。
FPGA間通信制御ブロック222は、SVC3のFPGA間通信制御ブロック312との間でFPGA間データ通信を行なう。例えば、FPGA間通信制御ブロック222は、SVC3の監視FPGA31のFPGA間通信制御ブロック312から送信されるNTBポートリセット指示を受信する。
リセット制御部224は、PCIeスイッチ21のNTBポート213をリセットさせる制御を行なう。
リセット制御部224は、エラー要因判断部221からNTBポートリセット指示を受信すると、PCIeスイッチ21に対して、PCIeスイッチ21のNTBポート213をリセットさせるNTBポートリセット信号を発行する。
PCIeスイッチ21においては、このNTBポートリセット信号が入力されるとNTBポート213のリセットが行なわれる。なお、NTBポートリセット信号は、例えばPCIeスイッチ21に備えられたNTBポートリセット端子(図示省略)に入力してもよい。PCIeスイッチ21においては、このNTBポートリセット端子に信号入力が行なわれることで、NTBポート213のリセットが行なわれる。ただし、NTBポート213のリセットは、これに限定されるものではなく、他の種々の手法を用いて実現してもよい。
PCIeスイッチ21においてNTBポート213のリセットが行なわれると、PCIeスイッチ21とFRT4とを接続するPCIeバスが切断される。
従って、CM2において、エラー要因判断部221とリセット制御部224とが、SVC3の監視FPGA31からの切断要求(NTBポートリセット要求)に応じて、PCIeスイッチ21とPCIeスイッチ41との接続を切断する接続切断処理部として機能する。
[3]SVC
SVC3は、本ストレージ装置1における各種監視を行なう監視装置であり、例えば、SVC3は、各CM2と通信してエラーステート情報を収集しエラーログを蓄積する。SVC3は、CM2とFRT4との通信を管理する管理装置としても機能する。
SVC3は、図1に示すように、監視FPGA31と複数(図1に示す例では2つを図示)のコネクタ(oCN)32を備える。コネクタ32には、監視用インタフェースケーブル70の一端が着脱可能に実装される。監視用インタフェースケーブル70の他端は、CM2に備えられたコネクタ(oCN)24に実装され、これにより、SVC3は監視用インタフェースケーブル70を介して各CM2と通信可能に接続され、これらのCM2を監視する。
図1に示す例においては、便宜上、2つのCM2及び2つのコネクタ32を図示しているが、3つ以上(例えば24個)のCM2及びコネクタ32を備えてもよく、種々変形して実施することができる。
監視FPGA31は回路構成を書き換え可能な集積回路である。この監視FPGA31は、図2に示すように、エラー要因判断部311,FPGA間通信制御ブロック312,リセット制御部314,第3判断レジスタ315およびエラー検出ロジック313としての機能を備える。これらの機能は、監視FPGA31において回路構成を設定して書き換えることにより実現される。
エラー検出ロジック313には、外部(例えばFRT4)からエラー通知信号が入力される。エラー検出ロジック313は、このエラー通知信号の入力を検出することで異常の発生を検出する。
エラー要因判断部311は、外部(例えばFRT4)から入力されるエラー通知信号に基づきエラー要因を特定する。例えば、エラー要因判断部311は、エラー通知信号の送信元をエラー要因として特定する。また、エラー通知信号にエラー要因を表す情報が含まれている場合には、エラー要因判断部311は、エラー通知信号からエラー要因を示す情報を読み出し、この情報に基づきエラー要因を特定する。
また、エラー要因判断部311は、エラー通知信号が入力された場合において、以下に示す(1)第1のエラー処理モードと(2)第2のエラー処理モードとのいずれかのモードで処理を行なう。
(1)第1のエラー処理モード
CM2からFRT4にデータが正常に転送された後、FRT4のPCIeスイッチ41でデータ化けとなる異常を検出したケースにおいて、その異常の検出を契機に、当該PCIeスイッチ41に接続された全てのCM2のPCIeスイッチ21に対してNTBポート213のポートリセットをそれぞれ行なう。
第1のエラー処理モードにおいては、エラー要因判断部311は、特定したエラー要因との接続に用いられているPCIeスイッチ21のNTBポート213をリセットさせる指示(NTBポートリセット指示)を、CM2の監視FPGA22に対してFPGA間通信制御ブロック312を介して通知する。
例えば、図2に示す例においては、PCIeスイッチ41がエラー要因であるものとする。第1のエラー処理モードにおいては、エラー要因判断部311は、CM2に対して、PCIeスイッチ41との接続に用いられているPCIeスイッチ21のNTBポート213をリセットさせるNTBポートリセット指示を、そのCM2の監視FPGA22に対して送信する。
このNTBポートリセット指示に応じて、監視FPGA22はPCIeスイッチ21に対してNTBポートリセット信号を発行し、NTBポート213をリセットする。当該FRT4に接続される各CM2においてNTBポート213のリセットを行なうことで、当該FRT4に接続される全てのPCIeバスが切断される。これにより、異常を検出したFRT4を経由する通信経路を遮断し、データ化けがCM2全体に伝搬するのを防止する事が可能となる。
すなわち、エラー要因判断部311は、FRT4からエラー通知信号を受信すると、CM2に対してPCIeスイッチ21による接続の切断要求(NTBポートリセット要求)を発行する接続切断要求処理部として機能する。
(2)第2のエラー処理モード
前述の第1のエラー処理モードにおいては、第2異常検出部411において異常検出が行なわれた場合に、CM2の監視FPGA22等を介してPCIeスイッチ21をポートリセットすることによりPCIeバスを遮断する。この場合、PCIeバスの遮断が間に合わずにPCIeスイッチ41において発生したデータ化けが伝搬してしまうおそれがある。
第2のエラー処理モードにおいては、エラー要因判断部311は、エラー通知信号の送信元であるFRT4のPCIeスイッチ41に対してデバイスリセットを行なう。すなわち、FRT4のPCIeスイッチ41において、データ化けとなる異常を検出したことを契機に、PCIeスイッチ41に対してデバイスリセットを行なう。PCIeスイッチ41のデバイスリセットを行なうことにより、当該FRT4と接続される全てのPCIeバスが切断される。これにより、異常を検出したFRT4を経由する通信経路を遮断し、データ化けがCM2全体に伝搬するのをより素早く防止する事が可能となる。
デバイスリセットが実施されると、PCIeスイッチ41がリセットされ、このPCIeスイッチ41と接続される全てのPCIeバスが切断される。FRT4上の電源としてはオン状態のままとなる。
なお、PCIeスイッチ41に対して発行されるデバイスリセット信号は、外部デバイスにPCIeスイッチ41のデバイスリセットをさせるための制御信号である。従来のストレージ装置においては、このようなデバイスリセットを装置動作に利用することは行なわれていない。
エラー要因判断部311は、第3判断レジスタ315に設定されている値に応じて、上述した第1のエラー処理モードと第2のエラー処理モードとのいずれかを選択して処理を行なう。
第3判断レジスタ315には、PCIeスイッチ41からエラー通知信号を受信した場合において、エラー要因判断部311が、第1のエラー処理モードと第2のエラー処理モードとのいずれのモードで処理を行なうかを表す設定値が格納される。
例えば、第3判断レジスタ315に“0”が設定されている場合には、第1のエラー処理モードで処理が行なわれる。すなわち、エラー要因判断部311は、FRT4上のPCIeスイッチ41からエラー通知信号を受信した場合に、FRT4のPCIeスイッチ41に対してデバイスリセットを発行せず、各CM2の監視FPGA22に対して、PCIeスイッチ21のNTBポート213をリセットさせるNTBポートリセット要求を通知する。
一方、第3判断レジスタ315に“1”が設定されている場合には、第2のエラー処理モードで処理が行なわれる。すなわち、エラー要因判断部311は、FRT4上のPCIeスイッチ41からエラー通知信号を受信した場合に、リセット制御部314に対してFRT4のPCIeスイッチ41をリセットさせるデバイスリセット指示を発行する。
このデバイスリセット指示を受信したリセット制御部314は、エラー通知信号の送信元であるFRT4のPCIeスイッチ41に対してデバイスリセットを発行する。なお、各CM2の監視FPGA22に対して、PCIeスイッチ21のNTBポート213をリセットさせるNTBポートリセット要求は通知しない。
FPGA間通信制御ブロック312は、CM2のFPGA間通信制御ブロック222との間でFPGA間データ通信を行なう。例えば、FPGA間通信制御ブロック312は、CM2の監視FPGA22のFPGA間通信制御ブロック222に向けて、NTBポートリセット指示を送信する。
リセット制御部314は、FRT4のPCIeスイッチ41に対してデバイスリセットを発行する。このリセット制御部314には、エラー要因判断部311からデバイスリセット指示が入力される。このデバイスリセット指示を受信したリセット制御部314は、FRT4のPCIeスイッチ41に対してデバイスリセットを発行する。
FRT4のPCIeスイッチ41がデバイスリセットされることにより、このFRT4と接続される全てのPCIeバスが切断される。これにより、このデバイスリセットが発行されたFRT4と接続される全てのPCIeバスが切断される。
すなわち、異常を検出したFRT4を経由する通信経路を遮断し、データ化けがCM2全体に伝搬するのをより素早く防止する事が可能となる。
そして、第2のエラー処理モードにおいて、エラー要因判断部311およびリセット制御部314が、異常検知を行なったPCIeスイッチ41を経由する接続を切断する接続切断処理部として機能する。また、第2のエラー処理モードにおいて、これらのエラー要因判断部311およびリセット制御部314が、エラー通知信号を受信すると、FRT4に対して、PCIeスイッチ41をリセット(デバイスリセット)することで、このPCIeスイッチ41を経由する接続を切断する第2の切断処理部として機能する。
なお、PCIeスイッチ41のデバイスリセットは既知の手法で実現することができ、その説明は省略する。
(B)動作
上述の如く構成された実施形態の一例としてのストレージ装置1における異常発生時の処理を説明する。
(a)CM2で異常検出された場合
先ず、CM2からFRT4に対してデータを転送する際に、CM2のPCIeスイッチ21内でデータ化けとなる異常が検出された場合の処理を、図5を参照しながら図4に示すシーケンス図(ステップS11〜S17)に従って説明する。図5はCM2からFRT4に対してデータを転送する際にPCIeスイッチ21内でデータ化けとなる異常が検出された場合における信号の流れを示す図である。
なお、図4に示すシーケンス図において、ステップS11,S12,S15〜S17はCM2のPCIeスイッチ21における処理を示し、ステップS13,S14はCM2の監視FPGA22における処理を示す。
本例においては、CM2のCPU23(ルートコンプレックス)からFRT4に対してデータが転送される過程において異常が検出される場合について示す(図5の矢印B1参照)。
CM2からFRT4に対してデータを転送する際に、PCIeスイッチ21において第1異常検出部211がPCIeスイッチ21内でデータ化けとなる異常を検出する(図4のステップS11,図5の符号B2参照)。
第1異常検出部211は、異常を検出すると、監視FPGA22に対してエラー通知信号を発行し(図4のステップS12,図5の符号B3参照)、監視FPGA22においてエラー検出ロジック223がこのエラー通知信号を受信する(図4のステップS13)。
監視FPGA22において、エラー要因判断部221は、第1判断レジスタ225を参照する。第1判断レジスタ225に“1”が設定されている場合に以降の処理が行なわれる。
すなわち、エラー要因判断部221は、PCIeスイッチ21のNTBポート213をリセットさせるNTBポートリセット指示をリセット制御部224に対して発行する。
リセット制御部224は、PCIeスイッチ21に対して、NTBポートリセット信号を発行する(図4のステップS14,図5の符号B4参照)。
PCIeスイッチ21は、このNTBポートリセット信号を受信し(図4のステップS15)、NTBポート213をリセットする(図4のステップS16,図5の符号B5参照)。
NTBポート213がリセットされることにより、PCIeスイッチ21とFRT4のPCIeスイッチ41との間のPCIeバス接続が切断される(図4のステップS17,図5の符号B6参照)。これにより、CM2において発生したデータ化けが(エラー)がFRT4に伝達されることを防止することができる。
(b)FRT4で異常検出された場合(第1のエラー処理モード)
次に、データの送信元のCM2からFRT4にデータが正常に転送された後、FRT4のPCIeスイッチ41でデータ化けとなる異常が検出された場合の第1のエラー処理モードによる処理を、図7を参照しながら図6に示すシーケンス図(ステップS21〜S29)に従って説明する。図7はFRT4からCM2に対してデータを転送する際にPCIeスイッチ41内でデータ化けとなる異常が検出された場合における信号の流れを示す図である。
なお、図6に示すシーケンス図において、ステップS21,S22,S29はFRT4のPCIeスイッチ41における処理を示し、ステップS23,S24はSVC3の監視FPGA31における処理を示す。また、ステップS25,S26はCM2の監視FPGA22における処理を示し、ステップS27,S28はCM2のPCIeスイッチ21における処理を示す。
本例においては、FRT4からCM2に対してデータが転送される過程において異常が検出される場合について示す(図7の矢印C1参照)。
FRT4からCM2に対してデータを転送する際に、PCIeスイッチ11において第2異常検出部411がPCIeスイッチ41内でデータ化けとなる異常を検出する(図6のステップS21,図7の符号C2参照)。
第2異常検出部411は、異常を検出すると、SVC3の監視FPGA31に対してエラー通知信号を発行する(図6のステップS22,図7の符号C3参照)。SVC3の監視FPGA31においてエラー検出ロジック313がこのエラー通知信号を受信する(図6のステップS23)。
監視FPGA31において、エラー要因判断部311は、第3判断レジスタ315を参照する。第3判断レジスタ315に“0”が設定されている場合に、エラー要因判断部311は、第1のエラー処理モードでの処理を行なう。すなわち、エラー要因判断部311は、各CM2の監視FPGA22に対して、PCIeスイッチ21のNTBポート213をリセットさせるNTBポートリセット要求を通知する(図6のステップS24,図7の符号C4参照)。このNTBポートリセット要求は、監視FPGA31のFPGA間通信制御ブロック312からCM2の監視FPGA22のFPGA間通信制御ブロック222に対してFPGA間通信により送信される。
CM2においては、監視FPGA22のFPGA間通信制御ブロック222がNTBポートリセット要求を受信する(図6のステップS25)。
監視FPGA22においては、エラー要因判断部221は、第2判断レジスタ226を参照する。
ここで、第2判断レジスタ226に “1”が設定されている場合に以下の処理が行なわれる。
すなわち、エラー要因判断部221は、リセット制御部224に対してPCIeスイッチ21のNTBポート213をリセットさせるNTBポートリセット指示を発行する。
リセット制御部224は、エラー要因判断部221からNTBポートリセット指示を受信すると、PCIeスイッチ21に対してNTBポートリセット信号を発行する(図6のステップS26,図7の符号C5参照)。
CM2のPCIeスイッチ21においては、NTBポートリセット信号が入力されると、NTBポート213がリセットされる(図6のステップS27,図7の符号C6参照)。PCIeスイッチ21においてNTBポート213のリセットが行なわれると、PCIeスイッチ21とFRT4のPCIeスイッチ41との間のPCIeバス接続が切断される(図6のステップS28,図7の符号C7参照)。各CM2において同様の処理が行なわれ、これにより、当該FRT4が全てのCM2から切り離される(図6のステップS29)。従って、FRT4において発生したデータ化けが(エラー)が各CM2に伝達されることを防止することができる(図7の符号C8参照)。
(c)FRT4で異常検出された場合(第2のエラー処理モード)
次に、データの送信元のCM2からFRT4にデータが正常に転送された後、FRT4のPCIeスイッチ41内でデータ化けとなる異常が検出された場合の第2のエラー処理モードによる処理を、図9を参照しながら図8に示すシーケンス図(ステップS31〜S36)に従って説明する。図9はFRT4からCM2に対してデータを転送する際にPCIeスイッチ41内でデータ化けとなる異常が検出された場合における信号の流れを示す図である。
なお、図8に示すシーケンス図において、ステップS31,S32,S35,S36はFRT4のPCIeスイッチ41における処理を示し、ステップS33,S34はSVC3の監視FPGA31における処理を示す。
本例においては、FRT4からCM2に対してデータが転送される過程において異常が検出される場合について示す(図9の符号D1参照)。
FRT4からCM2に対してデータを転送する際に、PCIeスイッチ11において第2異常検出部411がPCIeスイッチ41内でデータ化けとなる異常を検出する(図8のステップS31,図9の符号D2参照)。
第2異常検出部411は、異常を検出すると、SVC3の監視FPGA31に対してエラー通知信号を発行する(図8のステップS32,図9の符号D3参照)。SVC3の監視FPGA31においてエラー検出ロジック313がこのエラー通知信号を受信する(図8のステップS33)。
監視FPGA31において、エラー要因判断部311は、第3判断レジスタ315を参照する。第3判断レジスタ315に“1”が設定されている場合に、エラー要因判断部311は、第2のエラー処理モードでの処理を行なう。すなわち、エラー要因判断部311が、リセット制御部314に対してFRT4のPCIeスイッチ41をリセットさせるデバイスリセット指示を発行する。
このデバイスリセット指示を受信したリセット制御部314は、FRT4のPCIeスイッチ41に対してデバイスリセットを発行する(図8のステップS34,図9の符号D4参照)。
FRT4においては、PCIeスイッチ41がデバイスリセットされる(図8のステップS35)。PCIeスイッチ41がデバイスリセットされると、このFRT4と接続される全てのPCIeバスが切断される(図8のステップS36,図9の符号D5参照)。これにより、このデバイスリセットが発行されたFRT4と接続される全てのPCIeバスが切断される。従って、FRT4において発生したデータ化けが(エラー)が各CM2に伝達されることを防止することができる(図9の符号D6参照)。
(C)効果
このように、実施形態の一例としてのストレージ装置1によれば、CM2のPCIeスイッチ21において、第1異常検出部211がPCIeスイッチ21内でデータ化けとなる異常を検出した場合に、エラー通知信号を監視FPGA22に発行する。
そして、監視FPGA22のリセット制御部224がPCIeスイッチ21に対して、NTBポートリセット信号を発行する。PCIeスイッチ21においては、このNTBポートリセット信号を受信しNTBポート213をリセットすることで、PCIeスイッチ21とFRT4のPCIeスイッチ41との間のPCIeバス接続が切断される。
これにより、CM2において発生したデータ化けが(エラー)がFRT4に伝達されることを迅速に阻止することができ、信頼性を向上させることができる。
また、データの送信元のCM2からFRT4にデータが正常に転送された後、FRT4のPCIeスイッチ41でデータ化けとなる異常が検出された場合には、第1のエラー処理モードによる処理が行なわれる。
この第1のエラー処理モードにおいて、第2異常検出部411は、異常を検出すると、SVC3の監視FPGA31に対してエラー通知信号を発行する。
監視FPGA31において、エラー要因判断部311は、各CM2の監視FPGA22に対して、PCIeスイッチ21のNTBポート213をリセットさせるNTBポートリセット要求を通知する。
そして、CM2においては、監視FPGA22のリセット制御部224がPCIeスイッチ21に対してNTBポートリセット信号を発行し、CM2のPCIeスイッチ21においてNTBポート213のリセットが行なわれる。これにより、PCIeスイッチ21とFRT4のPCIeスイッチ41との間のPCIeバス接続が切断され、FRT4において発生したデータ化けが(エラー)が各CM2に伝達されることを阻止することができる。従って、信頼性を向上させることができる。
また、データの送信元のCM2からFRT4にデータが正常に転送された後、FRT4のPCIeスイッチ41でデータ化けとなる異常が検出された場合には、第2のエラー処理モードによる処理が行なわれる。
この第2のエラー処理モードにおいて、第2異常検出部411は、異常を検出すると、SVC3の監視FPGA31に対してエラー通知信号を発行する。
そして、監視FPGA31において、リセット制御部314が、FRT4のPCIeスイッチ41に対してデバイスリセットを発行し、これにより、FRT4のPCIeスイッチ41のデバイスリセットが行なわれる。
これにより、FRT4のPCIeスイッチ41と各CM2との間のPCIeバス接続が迅速に切断され、FRT4において発生したデータ化けが(エラー)が各CM2に伝達されることを迅速に阻止することができる。従って、信頼性を向上させることができる。
また、第3判断レジスタ315には、エラー要因判断部311が、第1のエラー処理モードと第2のエラー処理モードとのいずれのモードで処理を行なうかを表す設定値が格納される。そして、この第3判断レジスタ315の値をユーザが任意に変更することにより、システムを柔軟に運用することができ利便性が高い。
第1判断レジスタ225には、PCIeスイッチ21からエラー通知信号を受信した場合において、上述の如きエラー要因判断部221によるNTBポート213のNTBポートリセット指示を発行する機能を有効にするか否かを表す設定値が格納される。
また、第2判断レジスタ226には、SVC3の監視FPGA31からPCIeスイッチ21のNTBポート213をリセットさせるNTBポートリセット要求を受信した場合において、上述の如きエラー要因判断部221によるNTBポート213のNTBポートリセット指示を発行する機能を有効にするか否かを表す設定値が格納される。
そして、これらの第1判断レジスタ225や第2判断レジスタ226の値をユーザが任意に変更することにより、システムを柔軟に運用することができ利便性が高い。
(D)その他
開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。本実施形態の各構成及び各処理は、必要に応じて取捨選択することができ、あるいは適宜組み合わせてもよい。
例えば、監視FPGA22の構成はこれに限定されるものではなく、種々変形して実施することができる。例えば、監視FPGA22としての各機能を、CPU23がプログラムを実行することによって実現してもよい。
同様に、監視FPGA31としての各機能を、CPUがプログラムを実行することによって実現してもよい。
これらの機能を実現するためのプログラムは、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RW等),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD+R,DVD−RW,DVD+RW,HD DVD等),ブルーレイディスク,磁気ディスク,光ディスク,光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、その記憶装置から通信経路を介してコンピュータに提供するようにしてもよい。
そして各機能を実現する際には、メモリ等の内部記憶装置に格納されたプログラムがコンピュータのマイクロプロセッサ(例えばMPU(Micro-Processing Unit)やCPU)によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行するようにしてもよい。
また、本ストレージ装置1に備えられるCM2の数やFRT4の数は、上述した各実施形態に限定されるものではなく種々変形して実施することができる。
また、CM2に備えられるコネクタ21やFRT4に備えられるコネクタ41の数も同様に、上述した各実施形態に限定されるものではなく種々変形して実施することができる。
さらに、上述した実施形態においては、通信ケーブル8がPCIeケーブルであり、CM2とFRT4との間でPCIeによる通信を行なう例を示しているが、これに限定されるものではなく、PCIe以外の規格による通信に適用してもよい。
また、上述した実施形態においては、ストレージ装置1のCM2とFRT4との通信を行なう場合の例を示しているが、これに限定されるものではない。例えば、複数の情報処理装置を相互に接続するコンピュータシステム等に適用してもよく、種々変形して実施することができる。
さらに、上述した実施形態においては、第3判断レジスタ315の値に基づき、第1のエラー処理モードと第2のエラー処理モードが択一的に実行されるが、これに限定されるものではなく、第1のエラー処理モードと第2のエラー処理モードとの両方を実行してもよい。
また、上述した開示により本実施形態を当業者によって実施・製造することが可能である。
(E)付記
(付記1)
バススイッチと接続監視部とを備えるバス接続対象装置であって、
前記バススイッチが、
転送中のデータの異常を検出し、前記接続監視部に対してエラー通知を発行する異常検出部を備え、
前記接続監視部が、
前記エラー通知を受信すると、前記バススイッチを経由する接続を切断する接続切断処理部を備える
ことを特徴とする、バス接続対象装置。
(付記2)
前記バススイッチが単独リセット可能なポートを備え、
前記接続切断処理部が、前記データの異常を検出した前記バススイッチに対して、前単独リセット可能なポートをリセットすることで、前記バススイッチを経由する接続を切断することを特徴とする、付記1記載のバス接続対象装置。
(付記3)
バススイッチと接続監視部とを備え、記憶装置に対する制御を行なうストレージ制御装置であって、
前記バススイッチが、
転送中のデータの異常を検出し、前記接続監視部に対してエラー通知を発行する異常検出部を備え、
前記接続監視部が、
前記エラー通知を受信すると、前記バススイッチを経由する接続を切断する接続切断処理部を備える
ことを特徴とする、ストレージ制御装置。
(付記4)
前記バススイッチが単独リセット可能なポートを備え、
前記接続切断処理部が、前記データの異常を検出した前記バススイッチに対して、前記単独リセット可能なポートをリセットすることで、前記バススイッチを経由する接続を切断することを特徴とする、付記3記載のストレージ制御装置。
(付記5)
第1のバススイッチを備える制御装置と、前記第1のバススイッチと接続される第2のバススイッチを備え前記制御装置と接続される通信装置と、前記制御装置と前記通信装置との通信を管理する管理装置とを備える通信システムであって、
前記通信装置が、
前記第2のバススイッチにおける転送中のデータの異常を検出し、前記管理装置に対してエラー通知を発行する異常検知部を備え、
前記管理装置が、
前記エラー通知を受信すると、前記制御装置に対して前記第1のバススイッチによる接続の切断要求を発行する接続切断要求処理部を備え、
前記制御装置が、
前記接続切断要求処理部からの切断要求に応じて、前記第1のバススイッチと前記第2のバススイッチとの接続を切断する接続切断処理部を備える
ことを特徴とする、バス通信システム。
(付記6)
前記第1のバススイッチが単独リセット可能なポートを備え、
前記接続切断処理部が、前記第1のバススイッチに対して、前記単独リセット可能なポートをリセットすることで、前記第1のバススイッチと前記第2のバススイッチとの接続を切断することを特徴とする、付記5記載のバス通信システム。
(付記7)
前記管理装置が、
前記エラー通知を受信すると、前記通信装置に対して、前記第2のバススイッチをリセットすることで前記第2のバススイッチを経由する接続を切断する第2の切断処理部を備える
ことを特徴とする、付記5又は6記載のバス通信システム。
(付記8)
前記第1のバススイッチが、
転送中のデータの異常を検出し、前記接続監視部に対してエラー通知を発行する第2の異常検知部と、
前記エラー通知を受信すると、前記第1のバススイッチを経由する接続を切断する第3の接続切断処理部とを備える
ことを特徴とする、付記5〜7のいずれか1項に記載のバス通信システム。
(付記9)
前記第1のバススイッチが単独リセット可能なポートを備え、
前記第3の接続切断処理部が、前記単独リセット可能なポートをリセットすることで、前記第1のバススイッチを経由する接続を切断することを特徴とする、付記8記載のバス通信システム。
1 ストレージ装置
2−1,2−2,2 CM
21 PCIeスイッチ
211 第1異常検出部
212 ポート
213 NTBポート
22 監視FPGA
221 エラー要因判断部
222 FPGA間通信制御ブロック
223 エラー検出ロジック
224 リセット制御部
225 第1判断レジスタ
226 第2判断レジスタ
23 CPU
3 SVC
31 監視FPGA
32 コネクタ(oCN)
311 エラー要因判断部
312 FPGA間通信制御ブロック
313 エラー検出ロジック
314 リセット制御部
315 第3判断レジスタ
4−1,4−2,4 FRT
41 PCIeスイッチ
411 第2異常検出部
412 ポート
42 コネクタ
5 ミッドプレーン
8 通信ケーブル
9 データバス
70 監視用インタフェースケーブル
90 第1データバス

Claims (7)

  1. 第1のバススイッチを備える制御装置と、前記第1のバススイッチと接続される第2のバススイッチを備え前記制御装置と接続される通信装置と、前記制御装置と前記通信装置との通信を管理する管理装置とを備える通信システムであって、
    前記通信装置が、
    前記第2のバススイッチにおける転送中のデータの異常を検出し、前記管理装置に対してエラー通知を発行する異常検知部を備え、
    前記管理装置が、
    前記エラー通知を受信すると、前記制御装置に対して前記第1のバススイッチによる接続の切断要求を発行する接続切断要求処理部を備え、
    前記制御装置が、
    前記接続切断要求処理部からの切断要求に応じて、前記第1のバススイッチと前記第2のバススイッチとの接続を切断する接続切断処理部を備える
    ことを特徴とする、バス通信システム。
  2. 前記第1のバススイッチが単独リセット可能なポートを備え、
    前記接続切断処理部が、前記第1のバススイッチに対して、前記単独リセット可能なポートをリセットすることで、前記第1のバススイッチと前記第2のバススイッチとの接続を切断することを特徴とする、請求項1記載のバス通信システム。
  3. 前記管理装置が、
    前記エラー通知を受信すると、前記通信装置に対して、前記第2のバススイッチをリセットすることで前記第2のバススイッチを経由する接続を切断する第2の切断処理部を備える
    ことを特徴とする、請求項1又は2記載のバス通信システム。
  4. 前記第1のバススイッチが、
    転送中のデータの異常を検出し、前記接続監視部に対してエラー通知を発行する第2の異常検知部と、
    前記エラー通知を受信すると、前記第1のバススイッチを経由する接続を切断する第3の接続切断処理部とを備える
    ことを特徴とする、請求項1〜3のいずれか1項に記載のバス通信システム。
  5. 前記第1のバススイッチが単独リセット可能なポートを備え、
    前記第3の接続切断処理部が、前記単独リセット可能なポートをリセットすることで、前記第1のバススイッチを経由する接続を切断することを特徴とする、請求項4記載のバス通信システム。
  6. バススイッチと接続監視部とを備えるバス接続対象装置であって、
    前記バススイッチが、
    転送中のデータの異常を検出し、前記接続監視部に対してエラー通知を発行する異常検出部を備え、
    前記接続監視部が、
    前記エラー通知を受信すると、前記バススイッチを経由する接続を切断する接続切断処理部を備える
    ことを特徴とする、バス接続対象装置。
  7. バススイッチと接続監視部とを備え、記憶装置に対する制御を行なうストレージ制御装置であって、
    前記バススイッチが、
    転送中のデータの異常を検出し、前記接続監視部に対してエラー通知を発行する異常検出部を備え、
    前記接続監視部が、
    前記エラー通知を受信すると、前記バススイッチを経由する接続を切断する接続切断処理部を備える
    ことを特徴とする、ストレージ制御装置。
JP2015093426A 2015-04-30 2015-04-30 バス通信システム Active JP6455302B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015093426A JP6455302B2 (ja) 2015-04-30 2015-04-30 バス通信システム
US15/092,658 US10268560B2 (en) 2015-04-30 2016-04-07 Bus connection target device, storage control device and bus communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015093426A JP6455302B2 (ja) 2015-04-30 2015-04-30 バス通信システム

Publications (2)

Publication Number Publication Date
JP2016212516A true JP2016212516A (ja) 2016-12-15
JP6455302B2 JP6455302B2 (ja) 2019-01-23

Family

ID=57205696

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015093426A Active JP6455302B2 (ja) 2015-04-30 2015-04-30 バス通信システム

Country Status (2)

Country Link
US (1) US10268560B2 (ja)
JP (1) JP6455302B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110309092A (zh) * 2018-03-27 2019-10-08 精工爱普生株式会社 电路装置、电子设备以及线缆束
US11704208B2 (en) 2021-05-12 2023-07-18 Fujitsu Limited Storage system and information processing method

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10884758B2 (en) * 2017-05-05 2021-01-05 Intel Corporation Method, apparatus, and system for propagating PCIe hot reset across a non-transparent bridge on a PCIe add-in card
US10462161B2 (en) * 2017-06-21 2019-10-29 GM Global Technology Operations LLC Vehicle network operating protocol and method
CN108845907A (zh) * 2018-08-14 2018-11-20 郑州云海信息技术有限公司 一种基于IPMITool分析CPU运行异常的测试方法
CN110968443B (zh) * 2018-09-28 2023-04-11 阿里巴巴集团控股有限公司 设备异常的检测方法及装置
CN111666231B (zh) * 2019-03-05 2023-02-10 佛山市顺德区顺达电脑厂有限公司 于丛集式系统中维持存储器共享方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11331374A (ja) * 1998-05-20 1999-11-30 Nec Corp クロスバスイッチ装置及びその冗長化方法
JP2006146685A (ja) * 2004-11-22 2006-06-08 Nec Corp マルチノードシステム及び障害復旧方法
JP2008021153A (ja) * 2006-07-13 2008-01-31 Nec Computertechno Ltd コンピュータシステム
JP2010231340A (ja) * 2009-03-26 2010-10-14 Hitachi Ltd 計算機およびその障害処理方法
US20140075083A1 (en) * 2012-09-11 2014-03-13 International Business Machines Corporation Concurrent repair of the pcie switch units in a tightly-coupled, multi-switch, multi-adapter, multi-host distributed system
WO2014115257A1 (ja) * 2013-01-23 2014-07-31 株式会社 日立製作所 PCI-Express接続ソリッドステートドライブを適用したストレージ装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11191073A (ja) 1997-12-25 1999-07-13 Mitsubishi Electric Corp Pciバス処理装置
US20050228943A1 (en) * 2004-04-02 2005-10-13 Decenzo David P Multipath redundant storage system architecture and method
JP2006155387A (ja) * 2004-11-30 2006-06-15 Yamaha Corp コンピュータシステム
CA2592908A1 (en) * 2006-06-30 2007-12-30 Hitachi, Ltd. Line diagnostic device, bus system, line diagnostic method, bus system control method, and line diagnostic program
US8775846B2 (en) * 2009-07-10 2014-07-08 Protonex Technology Corporation Portable power manager having one or more device ports for connecting with external power loads
JP6003350B2 (ja) * 2012-07-30 2016-10-05 富士通株式会社 監視装置、情報処理装置、及び監視方法
TW201423409A (zh) * 2012-12-06 2014-06-16 Hon Hai Prec Ind Co Ltd 板卡管理裝置及使用其的板卡管理系統和控制卡

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11331374A (ja) * 1998-05-20 1999-11-30 Nec Corp クロスバスイッチ装置及びその冗長化方法
JP2006146685A (ja) * 2004-11-22 2006-06-08 Nec Corp マルチノードシステム及び障害復旧方法
JP2008021153A (ja) * 2006-07-13 2008-01-31 Nec Computertechno Ltd コンピュータシステム
JP2010231340A (ja) * 2009-03-26 2010-10-14 Hitachi Ltd 計算機およびその障害処理方法
US20140075083A1 (en) * 2012-09-11 2014-03-13 International Business Machines Corporation Concurrent repair of the pcie switch units in a tightly-coupled, multi-switch, multi-adapter, multi-host distributed system
WO2014115257A1 (ja) * 2013-01-23 2014-07-31 株式会社 日立製作所 PCI-Express接続ソリッドステートドライブを適用したストレージ装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110309092A (zh) * 2018-03-27 2019-10-08 精工爱普生株式会社 电路装置、电子设备以及线缆束
CN110309092B (zh) * 2018-03-27 2023-04-25 精工爱普生株式会社 电路装置、电子设备以及线缆束
US11704208B2 (en) 2021-05-12 2023-07-18 Fujitsu Limited Storage system and information processing method

Also Published As

Publication number Publication date
US10268560B2 (en) 2019-04-23
US20160321155A1 (en) 2016-11-03
JP6455302B2 (ja) 2019-01-23

Similar Documents

Publication Publication Date Title
JP6455302B2 (ja) バス通信システム
JP6011210B2 (ja) ストレージ制御装置,プログラマブル論理回路の復旧処理方法及び制御プログラム
US8443237B2 (en) Storage apparatus and method for controlling the same using loopback diagnosis to detect failure
US7568119B2 (en) Storage control device and storage control device path switching method
JP6307847B2 (ja) 情報処理装置,制御装置及び制御プログラム
JP2006338626A (ja) ディスクアレイ装置及びその制御方法
US8583863B2 (en) Storage system
US20170139605A1 (en) Control device and control method
US8725923B1 (en) BMC-based communication system
JP2017010390A (ja) ストレージ制御装置、ストレージ制御プログラム、およびストレージ制御方法
US8095820B2 (en) Storage system and control methods for the same
US8099634B2 (en) Autonomic component service state management for a multiple function component
US20110093625A1 (en) Storage system, control device, and diagnosis method
US8938569B1 (en) BMC-based communication system
JP6582523B2 (ja) ストレージ装置、制御装置、制御プログラム
JP7244551B2 (ja) ストレージシステム及びストレージシステムの稼働モードを切り替えるための方法
JP6244970B2 (ja) ストレージシステム、制御装置及び制御プログラム
US8352661B1 (en) Data storage systems having seamless software upgrades
JP6578731B2 (ja) 通信システム,制御装置および管理装置
US10454757B2 (en) Control apparatus, storage apparatus, and non-transitory computer-readable recording medium having stored therein control program
JP5736875B2 (ja) ストレージ装置およびストレージ装置の制御方法
JP2016212514A (ja) 電源制御装置およびストレージ装置
JP6398727B2 (ja) 制御装置,ストレージ装置及び制御プログラム
TWI462691B (zh) 伺服器機櫃及其管理方法
JP6930153B2 (ja) パス切替装置、パス切替方法及びパス切替プログラム、並びに、コンピュータシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180911

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180912

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181107

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: 20181120

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181203

R150 Certificate of patent or registration of utility model

Ref document number: 6455302

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150