(57)【要約】【課題】  ＳＡＳコントローラが単一で故障した場合でもデータの損失なく継続的にデバイス機器が使用可能となるバス変換装置を提供する。【解決手段】  第１バス上の第１形式データと第２バス上の第２形式データとを互いに変換するＳＡＳコントローラ３、４を有するバス変換装置であって、第１バスから受信した第１形式データをＳＡＳコントローラ３、４に分配して入力させるＰＣＩｅ冗長制御部２と、第２バスから受信した第２形式データをＳＡＳコントローラ３、４に分配して入力させるＳＡＳ冗長制御部６と、ＳＡＳコントローラ３が変換した第１形式データとＳＡＳコントローラ４が変換した第１形式データのうち、いずれかを選択して第１バスに出力するＰＣＩｅセレクタ１と、ＳＡＳコントローラ３が変換した第２形式データとＳＡＳコントローラ４が変換した第２形式データのうち、いずれかを選択して第２バスに出力するＳＡＳセレクタ５を備えた。【選択図】図２
2010205216.tif 000002
【特許請求の範囲】
【請求項１】
第１のバスと第２のバスの間を接続するとともに、前記第１のバス上の第１の形式のデータと前記第２のバス上の第２の形式のデータを互いに変換するバス変換装置において、
入力された前記第１の形式のデータを前記第２の形式のデータに変換して出力するとともに、入力された前記第２の形式のデータを、前記第１の形式のデータに変換して出力することにより、前記第１の形式のデータと前記第２の形式のデータを互いに変換する第１のバス変換回路と、
入力された前記第１の形式のデータを前記第２の形式のデータに変換して出力するとともに、入力された前記第２の形式のデータを、前記第１の形式のデータに変換して出力することにより、前記第１の形式のデータと前記第２の形式のデータを互いに変換する第２のバス変換回路と、
前記第１のバスと前記第１及び第２のバス変換回路にそれぞれ接続されるとともに、前記第１のバスから受信した前記第１の形式のデータを、前記第１及び第２のバス変換回路に分配して入力させる第１の分配回路と、
前記第２のバスと前記第１及び第２のバス変換回路にそれぞれ接続されるとともに、前記第２のバスから受信した前記第２の形式のデータを、前記第１及び第２のバス変換回路に分配して入力させる第２の分配回路と、
前記第１及び第２のバス変換回路と前記第１のバスにそれぞれ接続されるとともに、前記第１のバス変換回路が変換した前記第１の形式のデータと前記第２のバス変換回路が変換した前記第１の形式のデータのうち、いずれかを選択して前記第１のバスに出力する第１の選択回路と、
前記第１及び第２のバス変換回路と前記第２のバスにそれぞれ接続されるとともに、前記第１のバス変換回路が変換した前記第２の形式のデータと前記第２のバス変換回路が変換した前記第２の形式のデータのうち、いずれかを選択して前記第２のバスに出力する第２の選択回路を有することを特徴とするバス変換装置。
【請求項２】
前記第１の選択回路は、
前記第１のバス変換回路が変換した前記第１の形式のデータと前記第２のバス変換回路が変換した前記第１の形式のデータのうち、前記選択された第１の形式のデータが有するエラーを検出するエラー検出部を有するとともに、
前記エラー検出部が、前記選択された一のバス変換回路が出力する第１の形式のデータが有するエラーを検出した場合には、前記エラーが検出された一のバス変換回路とは異なる他のバス変換回路が出力する第１の形式のデータを選択することを特徴とする請求項１記載のバス変換装置。
【請求項３】
前記第１の選択回路が有する前記エラー検出部は、
前記選択された一のバス変換回路が出力する第１の形式のデータが有するエラーを検出した場合には、前記エラーが検出された一のバス変換回路とは異なる他のバス変換回路が出力する第１の形式のデータを選択する旨を前記第２の選択回路に通知するとともに、
前記第２の選択回路は、
前記エラーが検出された一のバス変換回路とは異なる他のバス変換回路が出力する第２の形式のデータを選択することを特徴とする請求項２記載のバス変換装置。
【請求項４】
前記第２の選択回路は、
前記第１のバス変換回路が変換した前記第２の形式のデータと前記第２のバス変換回路が変換した前記第２の形式のデータのうち、前記選択された第２の形式のデータが有するエラーを検出するエラー検出部を有するとともに、
前記エラー検出部が、前記選択された一のバス変換回路が出力する第２の形式のデータが有するエラーを検出した場合には、前記エラーが検出された一のバス変換回路とは異なる他のバス変換回路が出力する第２の形式のデータを選択することを特徴とする請求項１記載のバス変換装置。
【請求項５】
前記第２の選択回路が有する前記エラー検出部は、
前記選択された一のバス変換回路が出力する第２の形式のデータが有するエラーを検出した場合には、前記エラーが検出された一のバス変換回路とは異なる他のバス変換回路が出力する第２の形式のデータを選択する旨を前記第１の選択回路に通知するとともに、
前記第１の選択回路は、
前記エラーが検出された一のバス変換回路とは異なる他のバス変換回路が出力する第１の形式のデータを選択することを特徴とする請求項４記載のバス変換装置。
【請求項６】
演算処理装置と、
記憶装置と、
入出力装置と、を有し、
前記入出力装置は、第１のバスと第２のバスの間を接続するとともに、前記第１のバス上の第１の形式のデータと前記第２のバス上の第２の形式のデータを互いに変換するバス変換装置を有し、
前記バス変換装置は、
入力された前記第１の形式のデータを前記第２の形式のデータに変換して出力するとともに、入力された前記第２の形式のデータを、前記第１の形式のデータに変換して出力することにより、前記第１の形式のデータと前記第２の形式のデータを互いに変換する第１のバス変換回路と、
入力された前記第１の形式のデータを前記第２の形式のデータに変換して出力するとともに、入力された前記第２の形式のデータを、前記第１の形式のデータに変換して出力することにより、前記第１の形式のデータと前記第２の形式のデータを互いに変換する第２のバス変換回路と、
前記第１のバスと前記第１及び第２のバス変換回路にそれぞれ接続されるとともに、前記第１のバスから受信した前記第１の形式のデータを、前記第１及び第２のバス変換回路に分配して入力させる第１の分配回路と、
前記第２のバスと前記第１及び第２のバス変換回路にそれぞれ接続されるとともに、前記第２のバスから受信した前記第２の形式のデータを、前記第１及び第２のバス変換回路に分配して入力させる第２の分配回路と、
前記第１及び第２のバス変換回路と前記第１のバスにそれぞれ接続されるとともに、前記第１のバス変換回路が変換した前記第１の形式のデータと前記第２のバス変換回路が変換した前記第１の形式のデータのうち、いずれかを選択して前記第１のバスに出力する第１の選択回路と、
前記第１及び第２のバス変換回路と前記第２のバスにそれぞれ接続されるとともに、前記第１のバス変換回路が変換した前記第２の形式のデータと前記第２のバス変換回路が変換した前記第２の形式のデータのうち、いずれかを選択して前記第２のバスに出力する第２の選択回路を有することを特徴とする情報処理装置。
【請求項７】
前記第１の選択回路は、
前記第１のバス変換回路が変換した前記第１の形式のデータと前記第２のバス変換回路が変換した前記第１の形式のデータのうち、前記選択された第１の形式のデータが有するエラーを検出するエラー検出部を有するとともに、
前記エラー検出部が、前記選択された一のバス変換回路が出力する第１の形式のデータが有するエラーを検出した場合には、前記エラーが検出された一のバス変換回路とは異なる他のバス変換回路が出力する第１の形式のデータを選択することを特徴とする請求項６記載のバス変換装置。
【請求項８】
前記第１の選択回路が有する前記エラー検出部は、
前記選択された一のバス変換回路が出力する第１の形式のデータが有するエラーを検出した場合には、前記エラーが検出された一のバス変換回路とは異なる他のバス変換回路が出力する第１の形式のデータを選択する旨を前記第２の選択回路に通知するとともに、
前記第２の選択回路は、
前記エラーが検出された一のバス変換回路とは異なる他のバス変換回路が出力する第２の形式のデータを選択することを特徴とする請求項７記載の情報処理装置。
【請求項９】
前記第２の選択回路は、
前記第１のバス変換回路が変換した前記第２の形式のデータと前記第２のバス変換回路が変換した前記第２の形式のデータのうち、前記選択された第２の形式のデータが有するエラーを検出するエラー検出部を有するとともに、
前記エラー検出部が、前記選択された一のバス変換回路が出力する第２の形式のデータが有するエラーを検出した場合には、前記エラーが検出された一のバス変換回路とは異なる他のバス変換回路が出力する第２の形式のデータを選択することを特徴とする請求項６記載の情報処理装置。
【請求項１０】
前記第２の選択回路が有する前記エラー検出部は、
前記選択された一のバス変換回路が出力する第２の形式のデータが有するエラーを検出した場合には、前記エラーが検出された一のバス変換回路とは異なる他のバス変換回路が出力する第２の形式のデータを選択する旨を前記第１の選択回路に通知するとともに、
前記第１の選択回路は、
前記エラーが検出された一のバス変換回路とは異なる他のバス変換回路が出力する第１の形式のデータを選択することを特徴とする請求項８記載の情報処理装置。
【請求項１１】
第１のバスと第２のバスの間を接続するとともに、前記第１のバス上の第１の形式のデータと前記第２のバス上の第２の形式のデータを互いに変換するバス変換装置を制御する制御方法であって、
前記バス変換装置は、
入力された前記第１の形式のデータを前記第２の形式のデータに変換して出力するとともに、入力された前記第２の形式のデータを、前記第１の形式のデータに変換して出力することにより、前記第１の形式のデータと前記第２の形式のデータを互いに変換する第１のバス変換回路と、
入力された前記第１の形式のデータを前記第２の形式のデータに変換して出力するとともに、入力された前記第２の形式のデータを、前記第１の形式のデータに変換して出力することにより、前記第１の形式のデータと前記第２の形式のデータを互いに変換する第２のバス変換回路と、を有し、
前記制御方法は、
前記第１のバスから受信した前記第１の形式のデータを、前記第１及び第２のバス変換回路に分配して入力させる第１の分配ステップと、
前記第１のバス変換回路によって変換された前記第２の形式のデータと前記第２のバス変換回路によって変換された前記第２の形式のデータのうち、いずれかを選択して前記第２のバスに出力する第１の選択ステップと、
前記第２のバスから受信した前記第２の形式のデータを、前記第１及び第２のバス変換回路に分配して入力させる第２の分配ステップと、
前記第１のバス変換回路によって変換された前記第１の形式のデータと前記第２のバス変換回路によって変換された前記第１の形式のデータのうち、いずれかを選択して前記第１のバスに出力する第２の選択ステップと、
を実行することを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、磁気ディスク装置等のデバイスとコンピュータとの接続を可能にするバス変換装置、およびバス変換装置を備えた情報処理装置、バス変換装置の制御方法に関する。
【背景技術】
【０００２】
コンピュータとＨＤＤ（Hard Disk Drive）等との接続インターフェイスとしてＳＡＳ(Serial Attached SCSI)がある。
【０００３】
図６は、従来のＳＡＳインタフェースを有する機器の接続を示すブロック図である。ＳＡＳコントローラ５００は、ＰＣＩ−Ｅｘｐｒｅｓｓバス（第１のバス）のインタフェースとＳＡＳインタフェース（第２のバス）を備え、ＰＣＩ−Ｅｘｐｒｅｓｓバス上で使用されるデータ形式（第１の形式）のデータとＳＡＳインタフェース上で使用されるデータ形式（第２の形式）のデータとを変換するとともに、ＨＤＤ等のＳＡＳデバイス機器６００を制御するコントローラである。
【０００４】
ＳＡＳコントローラ５００は、ＰＣＩ−Ｅｘｐｒｅｓｓバスから受けたコマンドに応じてＳＡＳデバイス機器６００に対しコマンドを発行し、ＳＡＳデバイス機器６００を制御している。ＳＡＳデバイス機器６００は、ＨＤＤをはじめ、ＲＡＩＤ（Redundant Arrays of Inexpensive Disks）装置やＴａｐｅ装置などの記憶装置であり、制御するインタフェースにＳＡＳインタフェースを持つ機器である。
【０００５】
ＰＣＩ−Ｅｘｐｒｅｓｓバスとは、パソコン機器やサーバシステムなどで使用されている拡張用の汎用インタフェースである。またＳＡＳインタフェースとは、パソコン機器やサーバシステムなどでＨＤＤやＴａｐｅ装置等のデバイスを接続するための汎用インタフェースである。
【０００６】
図６で示すようなＳＡＳコントローラによって、パソコン機器やサーバシステムは、ＨＤＤをはじめＳＡＳデバイス機器とデータの送受信を行う。
【０００７】
尚、関連ある技術として、以下の文献が開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００６−１０７１５１号公報
【特許文献２】特開２００６−３０９３７５号公報
【特許文献３】特開２００７−１４８６２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
現在はＳＡＳデバイス機器を汎用的に冗長化する方法(ＲＡＩＤ機能など)はあるが、ＳＡＳコントローラ自体を冗長化した装置は無く、よってＳＡＳコントローラ自体が故障すると故障時のデータが保証されない。またＳＡＳコントローラに冗長性が無いため、ＳＡＳコントローラに故障が生じた場合、接続されているＳＡＳデバイス機器が使用不能となる。特に、オペレーティングシステムがＨＤＤ等のＳＡＳデバイス機器に格納されている場合、システムを継続的に運用することができなくなる。
【００１０】
尚、ドライバやアプリケーションなどのソフトウェアを使用して、エラーをソフトウェアが認識した上で切り替える手段はあるが、ソフトウェアが意識することなくＳＡＳコントローラを冗長化する方法は無い。また、ソフトウェアを使用することによるバスを二重化する方法は機器を揃えることから大掛かりな構成となり、コストも高価となる。また、一時的なエラーが発生した場合において、リトライ処理を行う必要がある。
【００１１】
本発明は上述した問題点を解決するためになされたものであり、ＳＡＳコントローラを冗長化することができるバス変換装置、情報処理装置、およびバス変換装置の制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
バス変換装置は、第１のバスと第２のバスの間を接続するとともに、前記第１のバス上の第１の形式のデータと前記第２のバス上の第２の形式のデータを互いに変換するバス変換装置において、入力された前記第１の形式のデータを前記第２の形式のデータに変換して出力するとともに、入力された前記第２の形式のデータを、前記第１の形式のデータに変換して出力することにより、前記第１の形式のデータと前記第２の形式のデータを互いに変換する第１のバス変換回路と、入力された前記第１の形式のデータを前記第２の形式のデータに変換して出力するとともに、入力された前記第２の形式のデータを、前記第１の形式のデータに変換して出力することにより、前記第１の形式のデータと前記第２の形式のデータを互いに変換する第２のバス変換回路と、前記第１のバスと前記第１及び第２のバス変換回路にそれぞれ接続されるとともに、前記第１のバスから受信した前記第１の形式のデータを、前記第１及び第２のバス変換回路に分配して入力させる第１の分配回路と、前記第２のバスと前記第１及び第２のバス変換回路にそれぞれ接続されるとともに、前記第２のバスから受信した前記第２の形式のデータを、前記第１及び第２のバス変換回路に分配して入力させる第２の分配回路と、前記第１及び第２のバス変換回路と前記第１のバスにそれぞれ接続されるとともに、前記第１のバス変換回路が変換した前記第１の形式のデータと前記第２のバス変換回路が変換した前記第１の形式のデータのうち、いずれかを選択して前記第１のバスに出力する第１の選択回路と、前記第１及び第２のバス変換回路と前記第２のバスにそれぞれ接続されるとともに、前記第１のバス変換回路が変換した前記第２の形式のデータと前記第２のバス変換回路が変換した前記第２の形式のデータのうち、いずれかを選択して前記第２のバスに出力する第２の選択回路を有することを特徴とする。
【００１３】
また、情報処理装置は、演算処理装置と、記憶装置と、入出力装置と、を有し、前記入出力装置は、第１のバスと第２のバスの間を接続するとともに、前記第１のバス上の第１の形式のデータと前記第２のバス上の第２の形式のデータを互いに変換するバス変換装置を有し、前記バス変換装置は、入力された前記第１の形式のデータを前記第２の形式のデータに変換して出力するとともに、入力された前記第２の形式のデータを、前記第１の形式のデータに変換して出力することにより、前記第１の形式のデータと前記第２の形式のデータを互いに変換する第１のバス変換回路と、入力された前記第１の形式のデータを前記第２の形式のデータに変換して出力するとともに、入力された前記第２の形式のデータを、前記第１の形式のデータに変換して出力することにより、前記第１の形式のデータと前記第２の形式のデータを互いに変換する第２のバス変換回路と、前記第１のバスと前記第１及び第２のバス変換回路にそれぞれ接続されるとともに、前記第１のバスから受信した前記第１の形式のデータを、前記第１及び第２のバス変換回路に分配して入力させる第１の分配回路と、前記第２のバスと前記第１及び第２のバス変換回路にそれぞれ接続されるとともに、前記第２のバスから受信した前記第２の形式のデータを、前記第１及び第２のバス変換回路に分配して入力させる第２の分配回路と、前記第１及び第２のバス変換回路と前記第１のバスにそれぞれ接続されるとともに、前記第１のバス変換回路が変換した前記第１の形式のデータと前記第２のバス変換回路が変換した前記第１の形式のデータのうち、いずれかを選択して前記第１のバスに出力する第１の選択回路と、前記第１及び第２のバス変換回路と前記第２のバスにそれぞれ接続されるとともに、前記第１のバス変換回路が変換した前記第２の形式のデータと前記第２のバス変換回路が変換した前記第２の形式のデータのうち、いずれかを選択して前記第２のバスに出力する第２の選択回路を有することを特徴とする。
【００１４】
制御方法は、第１のバスと第２のバスの間を接続するとともに、前記第１のバス上の第１の形式のデータと前記第２のバス上の第２の形式のデータを互いに変換するバス変換装置の制御方法であって、前記バス変換装置は、入力された前記第１の形式のデータを前記第２の形式のデータに変換して出力するとともに、入力された前記第２の形式のデータを、前記第１の形式のデータに変換して出力することにより、前記第１の形式のデータと前記第２の形式のデータを互いに変換する第１のバス変換回路と、入力された前記第１の形式のデータを前記第２の形式のデータに変換して出力するとともに、入力された前記第２の形式のデータを、前記第１の形式のデータに変換して出力することにより、前記第１の形式のデータと前記第２の形式のデータを互いに変換する第２のバス変換回路と、を有し、前記制御方法は、前記第１のバスから受信した前記第１の形式のデータを、前記第１及び第２のバス変換回路に分配して入力させる第１の分配ステップと、前記第１のバス変換回路によって変換された前記第２の形式のデータと前記第２のバス変換回路によって変換された前記第２の形式のデータのうち、いずれかを選択して前記第２のバスに出力する第１の選択ステップと、前記第２のバスから受信した前記第２の形式のデータを、前記第１及び第２のバス変換回路に分配して入力させる第２の分配ステップと、前記第１のバス変換回路によって変換された前記第１の形式のデータと前記第２のバス変換回路によって変換された前記第１の形式のデータのうち、いずれかを選択して前記第１のバスに出力する第２の選択ステップと、を実行する。
【発明の効果】
【００１５】
第１のバス変換回路、第２のバス変換回路が単一で故障した場合においても、データの損失がなく、継続的にデバイス機器が使用可能となる。
【図面の簡単な説明】
【００１６】
【図１】本実施の形態に係る情報処理装置のハードウェア構成の一例を示す図である。
【図２】本実施の形態に係るバス変換装置の構成の一例を示す図である。
【図３】本実施の形態に係るＳＡＳ冗長制御部６、ＳＡＳセレクタ５の構成の一例を示す図である。
【図４】本実施の形態に係るＰＣＩｅ冗長制御部、ＰＣＩｅセレクタの構成の一例を示す図である。
【図５】本実施の形態に係るバス変換装置の動作の一例を示すフローチャートである。
【図６】従来のＳＡＳインタフェースを有する機器の接続を示すブロック図である。
【発明を実施するための形態】
【００１７】
図１に、本実施の形態における情報処理装置のハードウェア構成を示す。情報処理装置１００は、演算処理装置であるＣＰＵ１０１、データを保持する記憶装置であるメモリ１０２を有し、さらに、ＣＰＵ１０１、メモリ１０２と接続されたメインボードであるシステムボード１０３を有する。また情報処理装置１００は、ＬＡＮボードやハードディスクなどの機器を備える入出力装置であるＩＯ部１０５、およびシステムボード１０３とＩＯ部１０５とを相互結合するクロスバー１０４を有する。
【００１８】
ＩＯ部１０５は、ＦＬＩ１５１、ＦＬＰ１５２、ＰＸＨ１５３、ＬＡＮボード１５４、マネジメントボード１５５、バス変換装置２００、ＳＡＳデバイス２０１を備える。
【００１９】
ＦＬＩ１５１は、クロスバー１０４とＦＬＰ１５２とのインタフェースを制御するＬＳＩである。ＦＬＰ１５２は、ＦＬＩ１５１とＰＸＨ１５３、マネジメントボード１５５のインタフェースを制御するＬＳＩであり、ＰＣＩ−Ｅｘｐｒｅｓｓバスを持ち制御することができる。
【００２０】
ＰＸＨ１５３は、ＰＣＩ−ＥｘｐｒｅｓｓバスとＰＣＩバスの変換を制御するためのＬＳＩである。ＬＡＮボード１５４は、外部の情報処理装置との間でＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を形成するためのボードであり、マネジメントボード１５５は、外部の装置、または情報処理装置１００内部の電源、温度、電圧等を監視するためのボードである。
【００２１】
バス変換装置２００は、従来のＳＡＳコントローラの冗長化を可能にした装置であり、ＰＸＨ１５３とＳＡＳデバイス２０１との接続を可能にする。ＳＡＳデバイス２０１は、ＳＡＳインタフェースを有し、ＳＡＳでの接続を可能にしたデバイスであり、本実施の形態では磁気ディスク装置とする。尚、バス変換装置２００以外の上述の各装置、各ＬＳＩは既知、既存のものである。
【００２２】
ここで、バス変換装置２００の構成について、図２を参照しつつ説明する。尚、以下に説明するバス変換装置２００内の各ユニットは、ＬＳＩで実装されている。
【００２３】
バス変換装置２００は、ＳＡＳコントローラ３（第１のバス変換回路）、ＳＡＳコントローラ４（第２のバス変換回路）、ＰＣＩｅ冗長制御部２（第１の分配回路）、ＳＡＳセレクタ５（第２の選択回路）、ＳＡＳ冗長制御部６（第２の分配回路）、ＰＣＩｅセレクタ１（第１の選択回路）を備える。
【００２４】
ＳＡＳコントローラ３、ＳＡＳコントローラ４は、ＰＣＩ−ＥｘｐｒｅｓｓバスのインタフェースとＳＡＳインタフェースを持ち、ＳＡＳデバイス２０１を制御するコントローラである。ＳＡＳコントローラ３、ＳＡＳコントローラ４は、ＰＣＩ−Ｅｘｐｒｅｓｓバスから受けたコマンドに応じてＳＡＳデバイス２０１に対してコマンドを発行し、ＳＡＳデバイス２０１を制御する。尚、ＳＡＳコントローラ３、ＳＡＳコントローラ４は上述図６で開示した既知のＳＡＳコントローラであり、本実施の形態では、ＳＡＳコントローラを冗長構成にするためにＳＡＳコントローラ３、ＳＡＳコントローラ４の２つが用意されている。
【００２５】
ＰＣＩｅ冗長制御部２は、ＰＣＩ−ＥｘｐｒｅｓｓバスからＳＡＳコントローラ３、ＳＡＳコントローラ４の送信信号の途中に位置するもので、ＰＣＩ−Ｅｘｐｒｅｓｓバスの送信信号をＳＡＳコントローラ３、ＳＡＳコントローラ４に分配する機能を持つ。
【００２６】
ＳＡＳセレクタ５は、ＳＡＳコントローラ３、ＳＡＳコントローラ４からＳＡＳデバイス２０１の送信信号の途中に位置するもので、送信信号の切り替えを行う。ＳＡＳセレクタ５にはエラー検出部があり、エラーが検出された時にＳＡＳコントローラ３と、ＳＡＳコントローラ４との切り替えを行うことができる。
【００２７】
ＳＡＳ冗長制御部６は、ＳＡＳデバイス２０１からＳＡＳコントローラ３、ＳＡＳコントローラ４への送信信号の途中に位置するもので、ＳＡＳデバイス２０１からの送信信号をＳＡＳコントローラ３、ＳＡＳコントローラ４に分配する機能を持つ。
【００２８】
ＰＣＩｅセレクタ１は、ＳＡＳコントローラ３、ＳＡＳコントローラ４からＰＣＩ−Ｅｘｐｒｅｓｓバスの送信信号の途中に位置するもので、ＰＣＩ−Ｅｘｐｒｅｓｓバス信号の切り替えを行う。ＰＣＩｅセレクタ１にはエラー検出部があり、エラー検出時にＳＡＳコントローラ３と、ＳＡＳコントローラ４との切り替えを行うことができる。
【００２９】
尚、ＰＣＩｅセレクタ１とＳＡＳセレクタ５とは連動しており、どちらかがエラーを検出して切り替えた場合に、同期して切り替えが行われる。
【００３０】
次に、バス変換装置２００の動作について説明する。ＰＣＩ−Ｅｘｐｒｅｓｓ側から送信されたデータをＰＣＩｅ冗長制御部２がＳＡＳコントローラ３とＳＡＳコントローラ４へ同じデータを送信する。ＳＡＳコントローラ３、ＳＡＳコントローラ４を経由したデータはＳＡＳセレクタ５内に一旦バッファされ、ＳＡＳセレクタ５は双方からのデータが来たことをチェックする。このことにより双方からのデータがＳＡＳセレクタ５によって同期する。ＳＡＳセレクタ５でセレクトされている側のデータがＳＡＳデバイス２０１へ送信される。
【００３１】
ＳＡＳデバイス２０１が処理したデータをＳＡＳ冗長制御部６が受け取り、ＳＡＳ冗長制御部６がＳＡＳコントローラ３とＳＡＳコントローラ４へ同じデータを送信する。ＳＡＳコントローラ３、ＳＡＳコントローラ４を経由したデータはＰＣＩｅセレクタ１内に一旦バッファされ、ＰＣＩｅセレクタ１は双方からデータが来たことをチェックする。ＰＣＩｅセレクタ１でセレクトされている側のデータがＰＣＩ−Ｅｘｐｒｅｓｓバスを経由してＰＸＨ１５３に出力される。
【００３２】
図３、図４にＰＣＩｅセレクタ１、ＰＣＩｅ冗長制御部２、ＳＡＳセレクタ５、ＳＡＳ冗長制御部６の内部を示すとともに、各ユニットの処理の詳細を説明する。尚、図３（Ａ）にＳＡＳ冗長制御部６、図３（Ｂ）にＳＡＳセレクタ５の内部構成を示し、図４（Ａ）にＰＣＩｅ冗長制御部２、図４（Ｂ）にＰＣＩｅセレクタ１の内部構成を示す。
【００３３】
まず、ＳＡＳ冗長制御部６の詳細について、図３（Ａ）に基づき説明する。ＳＡＳ冗長制御部６には、ＳＡＳコントローラ３及びＳＡＳコントローラ４との接続ポート及びＳＡＳデバイス２０１に対する接続ポートがある。通常、信号送受部６２によってＳＡＳデバイス２０１からの信号がＳＡＳコントローラ３及びＳＡＳコントローラ４に送信される。ここで、ＳＡＳコントローラ３及びＳＡＳコントローラ４と接続するポートにおけるリンク切断、ＣＲＣエラーのいずれか、または両方をエラー検出部６１が検知した場合、セレクタとの通信部６３は、ＳＡＳセレクタ５に対し切替信号を送信し、ＰＣＩｅセレクタ１、ＳＡＳセレクタ５はそれぞれＳＡＳコントローラ３からのデータ信号を採用すべきかＳＡＳコントローラ４からのデータ信号を採用すべきかを切り替える。
【００３４】
ＳＡＳ冗長制御部６は、両系が稼動している状態でＳＡＳコントローラ３との接続ポートで異常が検知された場合、ＳＡＳコントローラ４のみにＳＡＳデバイス２０１からの信号を送信する。一方、両系が稼動している状態でＳＡＳコントローラ４との接続ポートで異常が検知された場合、ＳＡＳ冗長制御部６は異常を検知したことを記録する。
【００３５】
ＳＡＳコントローラ３、ＳＡＳコントローラ４の切替信号は、ＳＡＳ冗長制御部６とＳＡＳセレクタ５とを直結する信号線（図２の一点鎖線）を経由してＳＡＳセレクタ５に通知される。また、切り替え信号は、ＳＡＳセレクタ５とＰＣＩｅセレクタ１を直結する信号線（図２の二点鎖線）を経由してＰＣＩｅセレクタ１に通知され、またＰＣＩｅセレクタ１とＰＣＩｅ冗長制御部２を直結する信号線（図２の一点鎖線）を経由してＰＣＩｅ冗長制御部２に通知される。
【００３６】
既に片側の接続ポートで異常が発生している状態で反対側のポートで異常が検知された場合は従来技術と同じ動作となる。すなわち、ソフトウェアの監視機能によりＳＡＳデバイス機器が閉塞される。
【００３７】
次に、ＳＡＳセレクタ５の詳細について図３（Ｂ）に基づき説明する。ＳＡＳセレクタ５には、ＳＡＳコントローラ３及びＳＡＳコントローラ４との接続ポート及びＳＡＳデバイス２０１に対する接続ポートがある。ＳＡＳコントローラ３及びＳＡＳコントローラ４の両方が正常である場合、信号送受／コマンド比較部５３によってＳＡＳコントローラ３からのデータとＳＡＳコントローラ４からのデータとが一旦バッファ５２に保持され、チェックされた後、ＳＡＳコントローラ３からの信号がＳＡＳデバイス２０１に送信される。
【００３８】
ＳＡＳコントローラ３及びＳＡＳコントローラ４と接続するポートで、エラー検出／セレクト部５１（エラー検出部）によってリンク切断、ＣＲＣエラーのいずれかまたは両方のエラーがされた場合が、セレクタの切り替え条件となる。
【００３９】
例えば両系が稼動している状態でＳＡＳコントローラ３との接続ポートで異常が検知された場合、ＳＡＳコントローラ３からのパケットは捨てられ、ＳＡＳコントローラ４から受信したデータがＳＡＳデバイス２０１に送信される。一方、両系が稼動している状態でＳＡＳコントローラ４との接続ポートで異常が検知された場合、ＳＡＳセレクタ５は異常を検知したことを例えばバッファ５２に記録する。
【００４０】
ＳＡＳコントローラ３、ＳＡＳコントローラ４の切替信号は、ＳＡＳセレクタ５とＰＣＩｅセレクタ１を直結する信号線を経由してＰＣＩｅセレクタ１に通知され、さらにＰＣＩｅ冗長制御部２にもＰＣＩｅセレクタ１とＰＣＩｅ冗長制御部２とを直結する信号線を経由して通知される。また切り替え信号は、ＳＡＳセレクタ５とＳＡＳ冗長制御部６を直結する信号線を経由してＳＡＳ冗長制御部６に通知される。
【００４１】
既に片側の接続ポートで異常が発生している状態で反対側のポートで異常が検知された場合は従来技術と同じ動作となる。すなわち、ソフトウェアの監視機能によりＳＡＳデバイス２０１が閉塞される。
【００４２】
次に、ＰＣＩｅ冗長制御部２の詳細について、図４（Ａ）に基づき説明する。ＰＣＩｅ冗長制御部２は、ＳＡＳコントローラ３及びＳＡＳコントローラ４との接続ポート及びＰＣＩ−Ｅｘｐｒｅｓｓバスに対する接続ポートがある。
【００４３】
通常は、信号送受部２２によってＰＣＩ−Ｅｘｐｒｅｓｓバスからの信号がＳＡＳコントローラ３及びＳＡＳコントローラ４に送信される。
【００４４】
ＳＡＳコントローラ３及びＳＡＳコントローラ４と接続するポートで、リンク切断、ＣＲＣエラーの事象のうちいずれかまたは両方をエラー検出部２１が検知した場合、セレクタとの通信部２３を介して切替信号が発信され、ＰＣＩｅセレクタ１、ＳＡＳセレクタ５はそれぞれＳＡＳコントローラ３からのデータ信号を採用すべきかＳＡＳコントローラ４からのデータ信号を採用すべきかを切り替える。
【００４５】
例えば両系が稼動している状態でＳＡＳコントローラ３との接続ポートで異常が検知された場合、信号送受部２２はＳＡＳコントローラ４のみにＰＣＩ−Ｅｘｐｒｅｓｓバスからの信号を送信する。一方、両系が稼動している状態でＳＡＳコントローラ４との接続ポートで異常が検知された場合、信号送受部２２はＳＡＳコントローラ４の接続で異常を検知したことを記録する。
【００４６】
ＳＡＳコントローラ３、ＳＡＳコントローラ４の切替信号はＰＣＩｅ冗長制御部２とＰＣＩｅセレクタ１を直結する信号線を経由してＰＣＩｅセレクタ１に通知される。また切替信号は、ＰＣＩｅセレクタ１とＳＡＳセレクタ５を直結する信号線を経由してＳＡＳセレクタ５に通知され、さらにＳＡＳセレクタ５とＳＡＳ冗長制御部６を直結する信号線を経由してＳＡＳ冗長制御部６に通知される。
【００４７】
既に片側の接続ポートで異常が発生している状態で反対側のポートで異常が検知された場合は従来技術と同じ動作となる。すなわち、ソフトウェアの監視機能によりＳＡＳデバイス２０１が閉塞される。
【００４８】
次に、ＰＣＩｅセレクタ１の詳細について、図４（Ｂ）に基づき説明する。ＰＣＩｅセレクタ１には、ＳＡＳコントローラ３及びＳＡＳコントローラ４との接続ポート及びＰＣＩ−Ｅｘｐｒｅｓｓバスに対する接続ポートがある。
【００４９】
通常は、信号送受／コマンド比較部１３によってＳＡＳコントローラ３からのデータとＳＡＳコントローラ４からのデータとが一旦バッファ１２に保持され、チェックされた後、ＳＡＳコントローラ３からの信号がＰＣＩ−Ｅｘｐｒｅｓｓバスに送信される。
【００５０】
ＳＡＳコントローラ３及びＳＡＳコントローラ４と接続するポートで、エラー検出／セレクト部１１（エラー検出部）によってリンク切断、ＣＲＣエラーのいずれかまたは両方のエラーがされた場合が、セレクタの切り替え条件となる。
【００５１】
例えば両系が稼動している状態でＳＡＳコントローラ３との接続ポートで異常が検知された場合、ＳＡＳコントローラ３からのパケットは捨てられ、ＳＡＳコントローラ４から受信したデータがＰＣＩ−Ｅｘｐｒｅｓｓバスに送信される。一方、両系が稼動している状態でＳＡＳコントローラ４との接続ポートで異常が検知された場合は異常を検知したことを記録する。
【００５２】
ＳＡＳコントローラ３、ＳＡＳコントローラ４の切替信号は、ＰＣＩｅセレクタ１とＳＡＳセレクタ５を直結する信号線を経由してＳＡＳセレクタ５に通知され、さらにＳＡＳ冗長制御部６にもＳＡＳセレクタ５とＳＡＳ冗長制御部６とを直結する信号線を経由して通知される。また切替信号は、ＰＣＩｅセレクタ１とＰＣＩｅ冗長制御部２を直結する信号線を経由してＰＣＩｅ冗長制御部２に通知される。
【００５３】
既に片側の接続ポートで異常が発生している状態で反対側のポートで異常が検知された場合は従来技術と同じ動作となる。すなわち、ソフトウェアの監視機能によりＳＡＳデバイス２０１が閉塞される。
【００５４】
尚、上述のＣＲＣエラーは、それぞれのアーキテクチャ(本実施の形態ではＰＣＩ−Ｅｘｐｒｅｓｓバス、ＳＡＳインターフェイス)のルールに従った計算方法が採用される。
【００５５】
次に、バス変換装置２００の動作について、図５のフローチャートを参照しつつ説明する。
【００５６】
例えばユーザからのＳＡＳデバイス２０１への書き込み指示、読み出し指示等、上位でコマンドが実行されることで（Ｓ１）、ＰＸＨ１５３より実行されたコマンドに応じたコマンドが発行される（Ｓ２）。ここで、ＰＣＩｅ冗長制御部２がＳＡＳコントローラ３、ＳＡＳコントローラ４のエラーを検出している場合（Ｓ３、Ｙｅｓ）、ＰＣＩｅ冗長制御部２は、ＰＣＩｅセレクタ１へエラーを検出した方のバス（上述の切替信号）を通知する（Ｓ５）。ＰＣＩｅセレクタ１は、エラーが発生しているバスをＳＡＳセレクタ５へ通知する（Ｓ６）。ＳＡＳセレクタ５とＰＣＩｅセレクタ１は、それぞれ同期してエラーの発生していないバスに切り替える（Ｓ７）。ＰＣＩｅ冗長制御部２は、エラーの発生していないＳＡＳコントローラへ上位からのコマンドを発行する（Ｓ８）。
【００５７】
一方、Ｓ３にてＰＣＩｅ冗長制御部２がＳＡＳコントローラのエラーを検出していない場合（Ｓ３、Ｎｏ）、ＰＣＩｅ冗長制御部２は、ＳＡＳコントローラ３、ＳＡＳコントローラ４へ上位からのコマンドを発行する（Ｓ４）。
【００５８】
コマンドが発行されたＳＡＳコントローラは、ＳＡＳセレクタ５へコマンドを発行する（Ｓ９）。ここで、コマンドを受けたＳＡＳセレクタ５は、ＳＡＳセレクタ５自身でＳＡＳコントローラのエラーを検出しているかを判定する（Ｓ１０）。エラーを検出している場合（Ｓ１０、Ｙｅｓ）、ＳＡＳセレクタ５は、ＰＣＩｅセレクタ１へエラー検出バスを通知し（Ｓ１２）、ＳＡＳセレクタ５およびＰＣＩｅセレクタ１は、互いに同期してエラーの発生していないバスに切り替える（Ｓ１３）。ＳＡＳセレクタ５は、エラーの発生していないＳＡＳコントローラからのコマンドをＳＡＳデバイス２０１へ発行する（Ｓ１４）。
【００５９】
一方、ＳＡＳセレクタ５にてエラーが検出されていない場合（Ｓ１０、Ｎｏ）、ＳＡＳセレクタ５は、ＳＡＳコントローラ３、ＳＡＳコントローラ４から受けたコマンドを同期させ、コマンドを比較してＳＡＳデバイス２０１へ発行する（Ｓ１１）。
【００６０】
ＳＡＳデバイス２０１は、受けたコマンドを処理してＳＡＳ冗長制御部６へレスポンスを返信する（Ｓ１５）。ここで、ＳＡＳ冗長制御部６は、自身がＳＡＳコントローラのエラーを検出しているかを判定する（Ｓ１６）。ここで、エラーを検出している場合（Ｓ１６、Ｙｅｓ）、ＳＡＳ冗長制御部６は、ＳＡＳセレクタ５へエラー検出バスを通知する（Ｓ１８）。ＳＡＳセレクタ５は、エラーが発生しているバスをＰＣＩｅセレクタ１へ通知することで（Ｓ１９）、ＰＣＩｅセレクタ１、ＳＡＳセレクタ５はそれぞれ同期してエラーの発生していないＳＡＳコントローラのバスに切り替える（Ｓ２０）。ＳＡＳ冗長制御部６は、エラーの発生していないＳＡＳコントローラへＳＡＳデバイス２０１からのレスポンスを発行する（Ｓ２１）。
【００６１】
一方、Ｓ１６にてＳＡＳ冗長制御部６がエラーを検出していない場合（Ｓ１６、Ｎｏ）、ＳＡＳ冗長制御部６は、ＳＡＳコントローラ３、ＳＡＳコントローラ４の両方へＳＡＳデバイス２０１から受けたレスポンスを発行し（Ｓ１７）、レスポンスを受けたＳＡＳコントローラは、ＰＣＩｅセレクタ１にレスポンスを発行する。
【００６２】
ＰＣＩｅセレクタ１は、自身がＳＡＳコントローラのエラーを検出しているかを判定する（Ｓ２２）。ここで、エラーが検出されている場合（Ｓ２２、Ｙｅｓ）、ＰＣＩｅセレクタ１はＳＡＳセレクタ５へエラー検出バスを通知し（Ｓ２５
）、ＳＡＳセレクタ５とＰＣＩｅセレクタ１は互いに同期してエラーの発生していないＳＡＳコントローラのバスに切り替える（Ｓ２６）。ＰＣＩｅセレクタ１は、エラーの発生していないＳＡＳコントローラから受け取ったレスポンスをＰＸＨ１５３へ発行する（Ｓ２７）。
【００６３】
一方、Ｓ２２にてエラーが検出されていない場合（Ｓ２２、Ｎｏ）、ＳＡＳコントローラ３、ＳＡＳコントローラ４は、ＰＣＩｅセレクタ１へレスポンスを発行し（Ｓ２３）、ＰＣＩｅセレクタ１は、ＳＡＳコントローラ３、ＳＡＳコントローラ４から受けたレスポンスを同期させ、比較した後にどちらか一方のレスポンスをＰＸＨ１５３へ発行する（Ｓ２４）。
【００６４】
ＰＸＨ１５３は、レスポンスを上位へ発行することで、上位でレスポンスの処理が実行される（Ｓ２８）。
【００６５】
本実施の形態の情報処理装置１００、バス変換装置２００は、以下の効果を奏することができる。
【００６６】
本実施の形態の情報処理装置１００、バス変換装置２００は、ＯＳやマルチパス用のドライバ、アプリケーションが介入することなく、ＳＡＳコントローラの冗長化を行うことができる。また冗長性を持たせたことにより、ＳＡＳコントローラの単一故障に対して、データの損失がなく、継続的にＳＡＳデバイスが使用可能となる。
【００６７】
一時的なエラーが発生した場合においてもリトライ処理を行わず、正常なデータを送信することで処理を早めることができる。
【００６８】
使用機器が少なく、大掛かりな仕掛けを必要としないためコストも安価である。
【符号の説明】
【００６９】
１  ＰＣＩｅセレクタ、２  ＰＣＩｅ冗長制御部、３、４  ＳＡＳコントローラ、５  ＳＡＳセレクタ、６  ＳＡＳ冗長制御部、１００  情報処理装置、１０１  ＣＰＵ、１０２  メモリ、１０５  ＩＯ部、２００  バス変換装置、２０１  ＳＡＳデバイス。
【図１】
2010205216.tif 000003
【図２】
2010205216.tif 000004
【図３】
2010205216.tif 000005
【図４】
2010205216.tif 000006
【図５】
2010205216.tif 000007
【図６】
2010205216.tif 000008