(58)【調査した分野】(Int.Cl.,DB名)
前記中継装置に前記拡張バスを介して第1の演算処理装置、第2の演算処理装置、第3の演算処理装置、第4の演算処理装置、第5の演算処理装置および第6の演算処理装置が接続され、前記中継装置が第1のスイッチ、第2のスイッチ、第3のスイッチ、第4のスイッチおよび第5のスイッチを備える場合、
前記第1のスイッチの前記第1の出力端子に前記第2のスイッチの前記入力端子が接続され、前記第1のスイッチの前記第2の出力端子に前記第5のスイッチの前記入力端子が接続され、
前記第2のスイッチの前記第1の出力端子に前記第3のスイッチの前記入力端子が接続され、前記第2のスイッチの前記第2の出力端子に前記第4のスイッチの前記入力端子が接続され、
前記第3のスイッチの前記第1の出力端子に前記第1の演算処理装置が接続され、前記第3のスイッチの前記第2の出力端子に前記第2の演算処理装置が接続され、
前記第4のスイッチの前記第1の出力端子に前記第3の演算処理装置が接続され、前記第4のスイッチの前記第2の出力端子に前記第4の演算処理装置が接続され、
前記第5のスイッチの前記第1の出力端子に前記第5の演算処理装置が接続され、前記第5のスイッチの前記第2の出力端子に前記第6の演算処理装置が接続される、
請求項1記載の情報処理システム。
前記制御部は、前記情報処理装置への前記ケーブルの接続状態を検出した場合は前記転送指示および前記データの出力を停止し、前記ケーブルの未接続状態を検出した場合は前記転送指示および前記データを出力する請求項5記載の情報処理システム。
前記中継制御部は、前記拡張バスで許容される通信インタフェースを有する第1の制御ラインで前記情報処理装置と接続し、前記通信インタフェースを有する第2の制御ラインで前記スイッチおよび前記スイッチ制御部と接続して、前記第1の制御ラインおよび前記第2の制御ラインを集線する集線部をさらに備える、
請求項1記載の情報処理システム。
複数の演算処理装置を含む演算処理装置群と、前記演算処理装置群のうちからデータ書き込み対象とする前記演算処理装置にデータ転送を行うための転送指示を出力してデータを転送する情報処理装置と、の通信を拡張バスを介して中継し、前記転送指示にもとづいて、単一または複数のスイッチのスイッチ制御を行って前記データの転送経路を設定する中継制御部、
を備え、
前記スイッチは、入力端子と、第1の出力端子と、第2の出力端子と、前記入力端子から入力された前記データを前記第1の出力端子または前記第2の出力端子から出力させる切替端子と、を有する1入力2出力のスイッチ構造を有し、
自中継装置に前記拡張バスを介して第1の演算処理装置と第2の演算処理装置とが接続され、前記自中継装置が1つの前記スイッチを備え、前記第1の出力端子に前記第1の演算処理装置が接続され、前記第2の出力端子に前記第2の演算処理装置が接続される場合、
前記中継制御部は、前記転送経路の設定時、
イネーブル信号および切替信号を前記スイッチに出力し、
前記イネーブル信号の第1のレベルにもとづいて、前記切替端子が前記第1の出力端子および前記第2の出力端子のいずれにも接続されない未接続状態に設定し、
前記切替信号のレベルにもとづいて、前記切替端子の前記第1の出力端子への接続、または前記第2の出力端子への接続を行ってスイッチ切替状態に設定し、
前記イネーブル信号の第2のレベルにもとづいて、設定した前記スイッチ切替状態を確定する、
中継装置。
【発明を実施するための形態】
【0011】
以下、本実施の形態について図面を参照して説明する。
[第1の実施の形態]
図1は第1の実施の形態の情報処理システムの一例を説明するための図である。情報処理システム1−1は、情報処理装置1a、中継装置1b、および演算処理装置1c−1、・・・、1c−nを含む演算処理装置群1cを備える。
【0012】
情報処理装置1aは、制御部1a1および記憶部1a2を含む。制御部1a1の機能は、情報処理装置1aが備える図示しないプロセッサが、所定の通信プログラムを実行することによって実現される。
【0013】
記憶部1a2は、演算処理装置群1cに転送すべきデータやシステム運用に関する制御情報等が格納されている。なお、演算処理装置群1cに転送すべきデータは、外部メモリから情報処理装置1aに与えられてもよい。
【0014】
中継装置1bは、情報処理装置1aおよび演算処理装置群1cとの間で拡張バスを介した中継通信を行う。また、中継装置1bは、単一または複数のスイッチ1b2およびスイッチ制御部1b1を含む。
【0015】
動作について説明する。
〔ステップS1〕制御部1a1は、演算処理装置群1cのうちからデータ書き込み対象とする演算処理装置(対象演算処理装置)にデータ転送を行うための転送指示を出力する。
〔ステップS2〕スイッチ制御部1b1は、制御部1a1からの転送指示にもとづいてスイッチ1b2のスイッチ制御を行ってスイッチ1b2をスイッチングし、データの転送経路を中継装置1b内に設定する。
【0016】
〔ステップS3〕制御部1a1は、データを出力する。制御部1a1から出力されたデータは、スイッチ1b2のスイッチングによって設定された転送経路を通じて、対象演算処理装置に転送される。
【0017】
このように、情報処理システム1−1では、演算処理装置群のうちからデータ書き込み対象とする演算処理装置にデータ転送を行うための転送指示にもとづいて、中継装置内のスイッチのスイッチ制御を行ってデータの転送経路を設定する。そして、設定した転送経路からデータ書き込み対象の演算処理装置にデータを転送する。
【0018】
これにより、情報処理装置から演算処理装置にデータを転送する場合、情報処理装置と演算処理装置とをケーブルで接続してケーブルを介してのデータ転送が不要になる。したがって、ケーブルレスでのデータ転送が可能になるので、作業効率の向上を図ることができる。
【0019】
図2、
図3はスイッチ接続状態の一例を示す図である。中継装置1bは、単一のスイッチ1b2−1を有しているものとする。スイッチ1b2−1は、入力端子a0、出力端子b01、b02および切替端子c0を備えて、1入力2出力のスイッチ構造を有している。また、中継装置1bには、2台の演算処理装置1c−1、1c−2が拡張バスを介して接続され、スイッチ1b2−1に対しては、演算処理装置1c−1は出力端子b01に接続され、演算処理装置1c−2は出力端子b02に接続されている。
【0020】
スイッチ制御部1b1は、スイッチ制御信号として、スイッチ1b2−1を未接続状態(切替端子がどの出力端子にも接続されない状態)にし、またスイッチ1b2−1のスイッチ切替状態を有効化するためのイネーブル信号OE0と、スイッチ1b2−1のスイッチングを制御するための切替信号SEL0とを有している。
【0021】
図2を用いて、演算処理装置1c−1を選択してデータ転送を行う場合について説明する。
〔ステップS1a〕スイッチ制御部1b1は、初期運用時、イネーブル信号OE0のレベルをHレベル(イネーブル信号の第1のレベル)にし、Hレベルのイネーブル信号OE0をスイッチ1b2−1に出力する。
【0022】
〔ステップS2a〕スイッチ1b2−1は、Hレベルのイネーブル信号OE0にもとづいて、未接続状態になる。すなわち、切替端子c0は、出力端子b01、b02のいずれにも接続していない状態になる。
【0023】
〔ステップS3a〕制御部1a1は、演算処理装置1c−1にデータ転送を行うための転送指示をスイッチ制御部1b1に送信する。
〔ステップS4a〕スイッチ制御部1b1は、転送指示にもとづいて、切替信号SEL0のレベルをLレベル(切替信号の第1のレベル)にし、Lレベルの切替信号SEL0をスイッチ1b2−1に出力する。
【0024】
〔ステップS5a〕スイッチ1b2−1は、切替端子c0を出力端子b01に接続するスイッチングを行う。
〔ステップS6a〕スイッチ制御部1b1は、イネーブル信号OE0のレベルをLレベル(イネーブル信号の第2のレベル)にして、Lレベルのイネーブル信号OE0をスイッチ1b2−1に出力し、ステップS5aでスイッチングしたスイッチ切替状態を確定する。
〔ステップS7a〕制御部1a1から出力されたデータは、演算処理装置1c−1に転送される。
【0025】
図3を用いて、演算処理装置1c−2を選択してデータ転送を行う場合について説明する。
〔ステップS1b〕スイッチ制御部1b1は、初期運用時、イネーブル信号OE0のレベルをHレベルにし、Hレベルのイネーブル信号OE0をスイッチ1b2−1に出力する。
【0026】
〔ステップS2b〕スイッチ1b2−1は、Hレベルのイネーブル信号OE0にもとづいて、未接続状態になる。
〔ステップS3b〕制御部1a1は、演算処理装置1c−2にデータ転送を行うための転送指示をスイッチ制御部1b1に送信する。
【0027】
〔ステップS4b〕スイッチ制御部1b1は、転送指示にもとづいて、切替信号SEL0のレベルをHレベル(切替信号の第2のレベル)にし、Hレベルの切替信号SEL0をスイッチ1b2−1に出力する。
〔ステップS5b〕スイッチ1b2−1は、切替端子c0を出力端子b02に接続するスイッチングを行う。
【0028】
〔ステップS6b〕スイッチ制御部1b1は、イネーブル信号OE0のレベルをLレベルにして、Lレベルのイネーブル信号OE0をスイッチ1b2−1に出力し、ステップS5bでスイッチングしたスイッチ切替状態を確定する。
〔ステップS7b〕制御部1a1から出力されたデータは、演算処理装置1c−2に転送される。
【0029】
このように、スイッチ制御部1b1は、制御部1a1からの転送指示にもとづいて、イネーブル信号OE0および切替信号SEL0をスイッチ1b2−1に出力し、イネーブル信号OE0の第1のレベル(Hレベル)にもとづいて、切替端子c0が出力端子b01および出力端子b02のいずれにも接続されない未接続状態に設定する。また、切替信号SEL0のレベルにもとづいて、切替端子c0の第1の出力端子b01への接続、または第2の出力端子b02への接続を行ってスイッチ切替状態に設定し、イネーブル信号OE0の第2のレベル(Lレベル)にもとづいて、設定したスイッチ切替状態を確定する。
【0030】
このようなスイッチ制御によって、スイッチ1b2−1に対して、未接続状態、スイッチ切替状態およびスイッチ切替状態確定が順に行われるので、複数の演算処理装置のうちから1台の所定の演算処理装置に対して転送経路を精度よく設定することができる。このため、例えば、電源が入っていない演算処理装置に不用意に転送経路が設定されてしまうといったような誤動作を防止することができる。
【0031】
一方、スイッチ制御部1b1は、制御部1a1から演算処理装置1c−1への転送指示を受けた場合、切替信号SEL0の第1のレベル(Lレベル)にもとづいて、切替端子c0を出力端子b01に接続して転送経路を設定する。また、演算処理装置1c−2への転送指示を受けた場合、切替信号SEL0の第2のレベル(Hレベル)にもとづいて、切替端子c0を出力端子b02に接続して転送経路を設定する。
【0032】
このような構成および制御により、少ないスイッチの個数で複数の演算処理装置のうちから所定の演算処理装置を効率よく選択することができ、また、回路実装規模の増加も抑制することができる。
【0033】
なお、上記では、初期運用時にスイッチ1b2−1をイネーブル信号OE0で未接続状態にする流れで動作を記載したが、制御部1a1から転送指示を受信した場合に、スイッチ1b2−1をイネーブル信号OE0で未接続状態にし、その後、スイッチ切替、スイッチ切替状態確定の流れで制御してもよい。
【0034】
[第2の実施の形態]
次に第2の実施の形態として、拡張バスの一例であるPCIeを用いた情報処理システムについて説明する。
【0035】
<機能ブロック>
図4、
図5は第2の実施の形態の情報処理システムの機能ブロックの一例を示す図である。情報処理システム1−2は、メインボード10、ブリッジボード20およびコプロボード30−1、・・・、30−6を備える。コプロボード30−1、・・・、30−6は6台としているが、任意の台数がブリッジボード20に接続可能である。
【0036】
なお、図中に示すメインボード10とコプロボード30−1を接続する破線は、ケーブル接続時におけるデータの転送経路を示し、ブリッジボード20内に示す点線は、ケーブル非接続時におけるデータの転送経路を示している。
【0037】
メインボード10とブリッジボード20は、1つのPCIeコネクタ4aを介して互いに接続される。ブリッジボード20とコプロボード30−1、・・・、30−6は、6個の各PCIeコネクタ(図では、PCIeコネクタ4bとして総称している)を介して互いに接続される。
【0038】
メインボード10は、
図1の情報処理装置1aの機能を実現するホストPC10aを備える。ホストPC10aは、制御部11、I/F(インタフェース)部11aおよび記憶部12を含む。制御部11は、
図1に示した制御部1a1の機能を実現し、記憶部12は、
図1に示した記憶部1a2の機能を実現する。
【0039】
また、メインボード10には、外部メモリとして、USB(Universal Serial Bus)メモリm0が接続されるコネクタCN1と、USBケーブルが接続されるコネクタCN2とが設けられており、コネクタCN1、CN2は、制御部11に接続されている。
【0040】
USBメモリm0には、例えば、OSイメージデータ(以下、単にイメージデータと呼ぶ場合がある)およびイメージデータをコプロボード側に書き込むためのソフトウェアが格納されている。
【0041】
ブリッジボード20は、
図1の中継装置1bの機能を実現する中継制御部20aを備える。中継制御部20aは、スイッチsw1、・・・、sw5、スイッチ制御部21、USBハブ22、USB/UART(Universal Asynchronous Receiver Transmitter)変換IC(Integrated Circuit)23および電源制御部24を含む。
なお、スイッチ制御部21は、
図1のスイッチ制御部1b1の機能を実現し、スイッチsw1、・・・、sw5は、
図1のスイッチ1b2の機能を実現する。また、ポートp1、・・・、p6は、コプロボード30−1、・・・、30−6にデータを転送するための出力ポートである。
【0042】
コプロボード30−1、・・・、30−6は、
図1の演算処理装置群1cの機能を実現する。コプロボード30−1、・・・、30−6は、コプロセッサである演算処理部31と、スイッチsw6とを含む。
【0043】
また、コプロボード30−1、・・・、30−6それぞれには、USBケーブルが接続されるコネクタCN3が設けられており、コネクタCN3は、スイッチsw6に接続される(
図5ではコプロボード30−1の内部構成のみを示しているが、コプロボード30−2、・・・、30−6も同様の構成である)。
【0044】
ホストPC10aにおいて、制御部11は、プロセッサ(コンピュータ)で実現され、ホストPC10aの動作およびシステム運用の主機能を担い、また、USBケーブルの接続状態または非接続状態それぞれのデータ転送制御を行う。I/F部11aは、制御部11とブリッジボード20内の電源制御部24とのインタフェース制御を行う。
【0045】
ここで、USBメモリm0には、イメージデータと、イメージデータを書き込むためのソフトウェアであるリカバリツールとが格納されている。リカバリツールは、コプロボード30−1、・・・、30−6内の演算処理部にイメージデータを書き込むためのツールである。
【0046】
例えば、コプロボード30−1、・・・、30−6内の演算処理部がUbuntu(商標)のOSでイメージデータを書き込む機構になっている場合は、リカバリツールとしてUbuntuがUSBメモリm0に格納される。そして、制御部11は、このリカバリツールを用いて、転送したイメージデータを演算処理部に書き込む。
【0047】
このように、制御部11は、コプロボード30−1、・・・、30−6内の演算処理部に対して、イメージデータを書き込む場合(演算処理部をリカバリする場合)、USBメモリm0から読み出したリカバリツールを実行して、USBメモリm0から読み出したイメージデータを所定のコプロボードに転送して、所定のコプロボード内の演算処理部に対してイメージデータを書き込む。
【0048】
制御部11は、USBケーブルがコネクタCN2に接続された場合、USBメモリm0からイメージデータおよびリカバリツールを読み出し、読み出したイメージデータを、USBケーブルを介して所定のコプロボードに転送する。または、制御部11は、USBケーブルがコネクタCN2に接続されていない場合、USBメモリm0からイメージデータおよびリカバリツールを読み出し、読み出したイメージデータを、ブリッジボード20を介して所定のコプロボードに転送する。
【0049】
なお、上記では、イメージデータおよびリカバリツールをUSBメモリm0に格納する構成としたが、あらかじめ記憶部12に格納しておいてもよい。この場合、制御部11は、USBケーブルがコネクタCN2に接続された場合、記憶部12からイメージデータおよびリカバリツールを読み出し、読み出したイメージデータを、USBケーブルを介して所定のコプロボードに転送する。
【0050】
または、制御部11は、USBケーブルがコネクタCN2に接続されていない場合、例えば、UI(User Interface)からの指示を契機に、記憶部12からイメージデータおよびリカバリツールを読み出し、読み出したイメージデータを、ブリッジボード20を介して所定のコプロボードに転送する。
【0051】
一方、制御部11は、ブリッジボード20内の各構成要素に対して起動オン/オフ指示を与える。この場合、制御部11は、起動信号en1にもとづいて、スイッチ制御部21を無効化状態(非起動状態)から有効化状態(起動状態)にする。また、制御部11は、起動信号en2にもとづいて、USB/UART変換IC23を無効化状態から有効化状態にする。
【0052】
さらに、制御部11は、リカバリの開始時(演算処理部へのイメージデータの転送・書き込みの開始時)、リカバリモード信号rmをオンにして、演算処理部に対してリカバリ開始指示を与える。
【0053】
ブリッジボード20において、スイッチsw1、・・・、sw5は、1入力2出力のスイッチ構造を有するスイッチICである。スイッチ制御部21は、起動信号en1にもとづいて起動し、制御部11から与えられた転送指示を、USBハブ22を通じて受信して、スイッチsw1、・・・、sw5のスイッチ制御を行う。
【0054】
この場合、スイッチ制御部21は、スイッチsw1、・・・、sw5のイネーブル信号である信号OE、およびスイッチsw1、・・・、sw5のスイッチングの切替信号である信号SEL1、SEL2、SEL3を出力してスイッチ制御を行う。なお、スイッチsw1、・・・、sw5のスイッチ制御の詳細動作については、
図7から
図14で後述する。
【0055】
USBハブ22(集線部)は、制御部11の信号線(第1の制御ライン)と、スイッチsw1の信号線およびスイッチ制御部21の信号線(第2の制御ライン)とを集線する。ここで、ホストPC10aとブリッジボード20間は、PCIeインタフェースで接続されるため、ホストPC10aとブリッジボード20との通信は、PCIeインタフェースで許容される通信インタフェースで行われることが求められる。
【0056】
また、PCIeインタフェースで許容される通信インタフェースの1つにUSBインタフェースがある。このため、USBハブ22をブリッジボード20側に設けて、ブリッジボード20内の構成要素がUSBハブ22を介してホストPC10a側の制御部11と通信できるような構成にしている。
【0057】
PCIeコネクタ4aで使用できるUSBインタフェースエリアは、PCIeインタフェースエリアよりも少ないが、上記のようなUSBハブ22を設けてメインボード10とブリッジボード20間を通信することで、少ないUSBインタフェースのリザーブドエリアを効率よく使用することができる。
【0058】
一方、USB/UART変換IC23は、起動信号en2にもとづいて起動し、制御部11とコプロボード30−1、・・・、30−6内の演算処理部との通信インタフェースを行う。また、通信インタフェースの変換としては、USBインタフェースからUARTインタフェースへの通信インタフェース変換、またはUARTインタフェースからUSBインタフェースへの通信インタフェース変換を行う。
【0059】
USB/UART変換IC23は、コプロボード30−1、・・・、30−6それぞれの演算処理部に対しては、UARTインタフェースの信号u1、・・・、u6による通信を行う。なお、コプロボードへのデータ転送後の状態チェック等の制御部11とコプロボード間の通信は、USB/UART変換IC23を介して行われる。
【0060】
電源制御部24は、スタンバイ電力にもとづいて駆動し、システム内の各構成デバイスに対する電力供給または電力停止制御を行う。例えば、電源制御部24は、電源ボタンの操作にもとづいて、ホストPC10aへのアクティブ電力の供給または電力供給停止の制御を行う。また、電源制御部24は、コプロボード30−1、・・・、30−6それぞれの演算処理部に対して電源起動信号s1、・・・、s6を送信する。
【0061】
コプロボード30−1、・・・30−6において、コプロボード30−1、・・・30−6それぞれは、電源制御部24からの電源起動信号s1、・・・、s6にもとづいて起動する。
【0062】
コプロボード30−1内の演算処理部31は、AI(Artificial Intelligence)推論処理や画像処理等の並列演算処理を行う演算プロセッサであり、例えば、GPU(Graphics Processing Unit)やFPGA(Field Programmable Gate Array)等が採用される。また、演算処理部31は、コプロボード30−1の運用制御を行う。なお、コプロボード30−2、・・・、30−6にも同様な機能を持つ演算処理部が含まれる。
【0063】
スイッチsw6は、コネクタCN3にUSBケーブルが接続されたときの電力の供給有無にもとづいてスイッチングを行う。具体的には、スイッチsw6は、Vbus(USBの信号線のうちの電源ライン)からの電力供給を受けられるように、コネクタCN3のVbusピンに接続されている。
【0064】
したがって、コネクタCN3にUSBケーブルが接続されてデータが転送された場合、スイッチsw6に対して電力が供給される。また、USBケーブルが非接続の場合は、スイッチsw6への電力供給は停止することになる。なお、スイッチsw6のスイッチ制御の詳細動作については、
図15から
図17で後述する。
【0065】
次に各構成要素を接続しているバスのインタフェースについて説明する。
図4中の<>記号にはバスインタフェースの名称を記載している。なお、<>記号がない場合は、Hレベル/Lレベルの制御線またはデータ線を示している。
【0066】
制御部11とUSBハブ22との接続インタフェースは、USBである。制御部11とI/F部11aとの接続インタフェースは、eSPI(enhanced Serial Peripheral Interface)であり、I/F部11aと電源制御部24との接続インタフェースはI
2C(Inter-Integrated Circuit:I
2Cは商標)である。
【0067】
USBハブ22とスイッチsw1との接続インタフェースおよびスイッチsw1、・・・、sw5間の接続インタフェースはUSBである。USBハブ22とスイッチ制御部21との接続インタフェースはUSBであり、USBハブ22とUSB/UART変換IC23との接続インタフェースはUSBである。USB/UART変換IC23と、演算処理部31との接続インタフェースは、UARTである。
【0068】
<ホストPCのハードウェア構成>
図6はホストPCのハードウェア構成の一例を示す図である。ホストPC10aは、制御部11の機能を有するプロセッサ(コンピュータ)100によって全体制御されている。
【0069】
プロセッサ100には、バス103を介して、メモリ101および複数の周辺機器が接続されている。プロセッサ100は、マルチプロセッサであってもよい。プロセッサ100は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、またはPLD(Programmable Logic Device)である。またプロセッサ100は、CPU、MPU、DSP、ASIC、PLDのうちの2以上の要素の組み合わせであってもよい。
【0070】
メモリ101は、ホストPC10aの記憶部12に相当し、例えば、主記憶装置として使用される。メモリ101には、プロセッサ100に実行させるOSのプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ101には、プロセッサ100による処理に要する各種データが格納される。
【0071】
また、メモリ101は、ホストPC10aの補助記憶装置としても使用され、OSのプログラム、アプリケーションプログラム、および各種データが格納される。メモリ101は、補助記憶装置として、フラッシュメモリやSSD(Solid State Drive)等の半導体記憶装置やHDD(Hard Disk Drive)等の磁気記録媒体を含んでもよい。
【0072】
バス103に接続されている周辺機器としては、入出力インタフェース102およびネットワークインタフェース104がある。入出力インタフェース102は、プロセッサ100からの命令に従ってホストPC10aの状態を表示する表示装置として機能するモニタ(例えば、LED(Light Emitting Diode)やLCD(Liquid Crystal Display)等)が接続できる。
【0073】
さらに、入出力インタフェース102は、キーボードやマウス等の情報入力装置を接続可能であって、情報入力装置から送られてくる信号をプロセッサ100に送信する。さらにまた、入出力インタフェース102は、周辺機器を接続するための通信インタフェースとしても機能する。
【0074】
例えば、入出力インタフェース102は、レーザ光等を利用して、光ディスクに記録されたデータの読み取りを行う光学ドライブ装置を接続することができる。光ディスクには、Blu−rayDisc(登録商標)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(Rewritable)等がある。
【0075】
また、入出力インタフェース102は、メモリ装置やメモリリーダライタを接続することができる。メモリ装置は、入出力インタフェース102との通信機能を搭載した記録媒体である。メモリリーダライタは、メモリカードへのデータの書き込み、またはメモリカードからのデータの読み出しを行う装置である。メモリカードは、カード型の記録媒体である。
【0076】
ネットワークインタフェース104は、ネットワークと接続してネットワークインタフェース制御を行い、例えば、NIC(Network Interface Card)、無線LAN(Local Area Network)カード等を使用することもできる。ネットワークインタフェース104で受信されたデータは、メモリ101やプロセッサ100に出力される。以上のようなハードウェア構成によって、ホストPC10aの処理機能を実現することができる。
【0077】
一方、ホストPC10aは、プロセッサ100がそれぞれ所定のプログラムを実行することで本発明の処理を行うことができる。ホストPC10aは、例えば、コンピュータで読み取り可能な記録媒体に記録されたプログラムを実行することにより、本発明の処理機能を実現する。ホストPC10aに実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。
【0078】
例えば、ホストPC10aに実行させるプログラムを補助記憶装置に格納しておくことができる。プロセッサ100は、補助記憶装置内のプログラムの少なくとも一部を主記憶装置にロードし、プログラムを実行する。
【0079】
また、光ディスク、メモリ装置、メモリカード等の可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えば、プロセッサ100からの制御により、補助記憶装置にインストールされた後、実行可能となる。またプロセッサ100が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
【0080】
<スイッチおよびスイッチ制御部の接続構成>
図7はスイッチおよびスイッチ制御部の接続構成の一例を示す図である。
図4に示したスイッチsw1、・・・、sw5およびスイッチ制御部21の接続構成を示している。スイッチsw1、・・・、sw5は、1入力2出力のスイッチであり、スイッチsw1、・・・、sw5はそれぞれ切替端子c1、・・・、c5を有する。
【0081】
スイッチsw1の入力端子a1は、USBハブ22に接続される。スイッチsw1の第1の出力端子b11は、スイッチsw2の入力端子a2に接続され、スイッチsw1の第2の出力端子b12は、スイッチsw5の入力端子a5に接続される。
スイッチsw2の第1の出力端子b21は、スイッチsw3の入力端子a3に接続され、スイッチsw2の第2の出力端子b22は、スイッチsw4の入力端子a4に接続される。
【0082】
スイッチsw3の第1の出力端子b31は、ポートp1に接続され、スイッチsw3の第2の出力端子b32は、ポートp2に接続される。スイッチsw4の第1の出力端子b41は、ポートp3に接続され、スイッチsw4の第2の出力端子b42は、ポートp4に接続される。スイッチsw5の第1の出力端子b51は、ポートp5接続され、スイッチsw5の第2の出力端子b52は、ポートp6に接続される。
【0083】
さらに、ポートp1は、PCIeコネクタ4bを介して、コプロボード30−1に接続され、ポートp2は、PCIeコネクタ4bを介して、コプロボード30−2に接続される。ポートp3は、PCIeコネクタ4bを介して、コプロボード30−3に接続され、ポートp4は、PCIeコネクタ4bを介して、コプロボード30−4に接続される。ポートp5は、PCIeコネクタ4bを介して、コプロボード30−5に接続され、ポートp6は、PCIeコネクタ4bを介して、コプロボード30−6に接続される。
【0084】
また、スイッチ制御部21は、スイッチsw1、・・・、sw5をスイッチ制御するための制御信号として、信号OE(イネーブル信号)、信号SEL1、SEL2、SEL3(切替信号)を有している。
【0085】
信号OEは、スイッチsw1、・・・、sw5に送信され、スイッチsw1、・・・、sw5を一括して未接続状態、またはスイッチ切替状態を確定するための信号である。具体的には、信号OEがHレベル(イネーブル信号が第1のレベル)のとき、スイッチsw1、・・・、sw5は未接続状態(無効化状態)になる。また、信号OEがLレベル(イネーブル信号が第2のレベル)のとき、スイッチsw1、・・・、sw5はスイッチ切替状態が確定される(有効化状態)。
【0086】
一方、信号SEL1は、スイッチsw1に送信され、信号SEL2は、スイッチsw2に送信され、信号SEL3は、スイッチsw3、sw4、sw5に送信される。信号SEL1、SEL2、SEL3は、スイッチsw1、・・・、sw5の切替端子を駆動する信号であり、Lレベルのとき、スイッチ内の切替端子は第1の出力端子(上側出力端子)に接続され、Hレベルのとき、スイッチ内の切替端子は第2の出力端子(下側出力端子)に接続される。
【0087】
上記のようなスイッチsw1、・・・、sw5の接続構成により、少ないスイッチの個数で効率よくコプロボード30−1、・・・、30−6のうちから1つのコプロボードを選択することができ、また回路実装規模の増加を抑制することができる。
【0088】
<ブリッジボード側のスイッチ制御>
次に
図8から
図14を用いて、ブリッジボード20側に配置されているスイッチsw1、・・・、sw5のスイッチ制御について説明する。
【0089】
図8は接続状態テーブルの一例を示す図である。接続状態テーブルT0は、コプロボード30−1、・・・、30−6に対するスイッチsw1、・・・、sw5の接続状態を示すテーブルであり、項目として、信号名およびスイッチ制御部21のGPIO(General Purpose Input Output)のピン番を有している。
【0090】
また、コプロボード30−1、・・・、30−6がブリッジボード20を介してホストPC10aと接続するときのスイッチ制御信号である(OE、SEL1、SEL2、SEL3)のレベル状態が示されている。接続状態テーブルT0のデータ構造は、例えば、記憶部12に格納される。
【0091】
信号OEはスイッチ制御部21のGPIOの6ピンから出力されることが示されている。また、信号SEL1はスイッチ制御部21のGPIOの7ピンから出力され、信号SEL2はスイッチ制御部21のGPIOの10ピンから出力され、信号SEL3はスイッチ制御部21のGPIOの11ピンから出力されることが示されている。なお、テーブル中の“−”は、信号SEL2はLレベルまたはHレベルのいずれでもよい不定であることを示している。
【0092】
図9から
図14はスイッチ接続状態の一例を示す図である。スイッチ制御部21は、スイッチ制御の開始時は、信号OEをHレベルにして、スイッチsw1、・・・、sw5のスイッチ状態を未接続状態にする。すなわち、各スイッチの切替端子はどの出力端子にも接続されない状態になる。そして、信号SEL1、SEL2、SEL3にもとづくスイッチ切替後に信号OEをLレベルにして、スイッチsw1、・・・、sw5のスイッチ切替状態を確定させる。
【0093】
図9は、ホストPC10aとコプロボード30−1とを接続する場合のスイッチ切替状態を示している。
図8の接続状態テーブルT0から、信号SEL1、SEL2、SEL3の状態は(SEL1、SEL2、SEL3)=(L、L、L)である。
【0094】
したがって、スイッチsw1は、信号SEL1がLレベルなので、切替端子c1が出力端子b11に接続される。スイッチsw2は、信号SEL2がLレベルなので、切替端子c2が出力端子b21に接続される。さらに、スイッチsw3は、信号SEL3がLレベルなので、切替端子c3が出力端子b31に接続される。
【0095】
その後、信号OEがLレベルに設定されることで、信号SEL1、SEL2、SEL3によって上記のように設定されたスイッチング状態で、スイッチsw1、sw2、sw3が有効化状態になる。このようなスイッチ制御によって、ホストPC10aとコプロボード30−1とがブリッジボード20を介して接続される転送経路r1が確立される。
【0096】
なお、信号SEL3がLレベルなので、スイッチsw4の切替端子c4は出力端子b41に接続され、スイッチsw5の切替端子c5は出力端子b51に接続される(スイッチsw4、sw5のスイッチングは、転送経路r1の設定には関係してこない)。
【0097】
このように、スイッチ制御部21は、制御部11からコプロボード30−1への転送指示を受けた場合、第1の切替信号(SEL1)の第1のレベル(Lレベル)にもとづいて第1のスイッチ(sw1)の第1の切替端子(c1)を第1のスイッチ(sw1)の第1の出力端子(b11)に接続する。また、第2の切替信号(SEL2)の第1のレベル(Lレベル)にもとづいて第2のスイッチ(sw2)の第2の切替端子(c2)を第2のスイッチ(sw2)の第1の出力端子(b21)に接続する。さらに、第3の切替信号(SEL3)の第1のレベル(Lレベル)にもとづいて第3のスイッチ(sw3)の第3の切替端子(c3)を第3のスイッチ(sw3)の第1の出力端子(b31)に接続して転送経路(r1)を設定する。このようなスイッチ制御により、少ないスイッチの個数でコプロボード30−1、・・・、30−6のうちからコプロボード30−1を効率よく選択することができる。
【0098】
図10は、ホストPC10aとコプロボード30−2とを接続する場合のスイッチ切替状態を示している。
図8の接続状態テーブルT0から、信号SEL1、SEL2、SEL3の状態は(SEL1、SEL2、SEL3)=(L、L、H)である。
【0099】
したがって、スイッチsw1は、信号SEL1がLレベルなので、切替端子c1が出力端子b11に接続される。また、スイッチsw2は、信号SEL2がLレベルなので、切替端子c2が出力端子b21に接続される。さらに、スイッチsw3は、信号SEL3がHレベルなので、切替端子c3が出力端子b32に接続される。
【0100】
その後、信号OEがLレベルに設定されることで、信号SEL1、SEL2、SEL3によって上記のように設定されたスイッチング状態で、スイッチsw1、sw2、sw3が有効化状態になる。このようなスイッチ制御によって、ホストPC10aとコプロボード30−2とがブリッジボード20を介して接続される転送経路r2が確立される。
【0101】
なお、信号SEL3がHレベルなので、スイッチsw4の切替端子c4は出力端子b42に接続され、スイッチsw5の切替端子c5は出力端子b52に接続される(スイッチsw4、sw5のスイッチングは、転送経路r2の設定には関係してこない)。
【0102】
このように、スイッチ制御部21は、制御部11からコプロボード30−2への転送指示を受けた場合、第1の切替信号(SEL1)の第1のレベル(Lレベル)にもとづいて第1のスイッチ(sw1)の第1の切替端子(c1)を第1のスイッチ(sw1)の第1の出力端子(b11)に接続する。また、第2の切替信号(SEL2)の第1のレベル(Lレベル)にもとづいて第2のスイッチ(sw2)の第2の切替端子(c2)を第2のスイッチ(sw2)の第1の出力端子(b21)に接続する。さらに、第3の切替信号(SEL3)の第2のレベル(Hレベル)にもとづいて第3のスイッチ(sw3)の第3の切替端子(c3)を第3のスイッチ(sw3)の第2の出力端子(b32)に接続して転送経路(r2)を設定する。このようなスイッチ制御により、少ないスイッチの個数でコプロボード30−1、・・・、30−6のうちからコプロボード30−2を効率よく選択することができる。
【0103】
図11は、ホストPC10aとコプロボード30−3とを接続する場合のスイッチ切替状態を示している。
図8の接続状態テーブルT0から、信号SEL1、SEL2、SEL3の状態は(SEL1、SEL2、SEL3)=(L、H、L)である。
【0104】
したがって、スイッチsw1は、信号SEL1がLレベルなので、切替端子c1が出力端子b11に接続される。また、スイッチsw2は、信号SEL2がHレベルなので、切替端子c2が出力端子b22に接続される。さらに、スイッチsw4は、信号SEL3がLレベルなので、切替端子c4が出力端子b41に接続される。
【0105】
その後、信号OEがLレベルに設定されることで、信号SEL1、SEL2、SEL3によって上記のように設定されたスイッチング状態で、スイッチsw1、sw2、sw4が有効化状態になる。このようなスイッチ制御によって、ホストPC10aとコプロボード30−3とがブリッジボード20を介して接続される転送経路r3が確立される。
【0106】
なお、信号SEL3がLレベルなので、スイッチsw3の切替端子c3は出力端子b31に接続され、スイッチsw5の切替端子c5は出力端子b51に接続される(スイッチsw3、sw5のスイッチングは、転送経路r3の設定には関係してこない)。
【0107】
このように、スイッチ制御部21は、制御部11からコプロボード30−3への転送指示を受けた場合、第1の切替信号(SEL1)の第1のレベル(Lレベル)にもとづいて第1のスイッチ(sw1)の第1の切替端子(c1)を第1のスイッチ(sw1)の第1の出力端子(b11)に接続する。また、第2の切替信号(SEL2)の第2のレベル(Hレベル)にもとづいて第2のスイッチ(sw2)の第2の切替端子(c2)を第2のスイッチ(sw2)の第2の出力端子(b22)に接続する。さらに、第3の切替信号(SEL3)の第1のレベル(Lレベル)にもとづいて第4のスイッチ(sw4)の第4の切替端子(c4)を第4のスイッチ(sw4)の第1の出力端子(b41)に接続して転送経路(r3)を設定する。このようなスイッチ制御により、少ないスイッチの個数でコプロボード30−1、・・・、30−6のうちからコプロボード30−3を効率よく選択することができる。
【0108】
図12は、ホストPC10aとコプロボード30−4とを接続する場合のスイッチ切替状態を示している。
図8の接続状態テーブルT0から、信号SEL1、SEL2、SEL3の状態は(SEL1、SEL2、SEL3)=(L、H、H)である。
【0109】
したがって、スイッチsw1は、信号SEL1がLレベルなので、切替端子c1が出力端子b11に接続される。また、スイッチsw2は、信号SEL2がHレベルなので、切替端子c2が出力端子b22に接続される。さらに、スイッチsw4は、信号SEL3がHレベルなので、切替端子c4が出力端子b42に接続される。
【0110】
その後、信号OEがLレベルに設定されることで、信号SEL1、SEL2、SEL3によって上記のように設定されたスイッチング状態で、スイッチsw1、sw2、sw4が有効化状態になる。このようなスイッチ制御によって、ホストPC10aとコプロボード30−4とがブリッジボード20を介して接続される転送経路r4が確立される。
【0111】
なお、信号SEL3がHレベルなので、スイッチsw3の切替端子c3は出力端子b32に接続され、スイッチsw5の切替端子c5は出力端子b52に接続される(スイッチsw3、sw5のスイッチングは、転送経路r4の設定には関係してこない)。
【0112】
このように、スイッチ制御部21は、制御部11からコプロボード30−4への転送指示を受けた場合、第1の切替信号(SEL1)の第1のレベル(Lレベル)にもとづいて第1のスイッチ(sw1)の第1の切替端子(c1)を第1のスイッチ(sw1)の第1の出力端子(b11)に接続する。また、第2の切替信号(SEL2)の第2のレベル(Hレベル)にもとづいて第2のスイッチ(sw2)の第2の切替端子(c2)を第2のスイッチ(sw2)の第2の出力端子(b22)に接続する。さらに、第3の切替信号(SEL3)の第2のレベル(Hレベル)にもとづいて第4のスイッチ(sw4)の第4の切替端子(c4)を第4のスイッチ(sw4)の第2の出力端子(b42)に接続して転送経路(r4)を設定する。このようなスイッチ制御により、少ないスイッチの個数でコプロボード30−1、・・・、30−6のうちからコプロボード30−4を効率よく選択することができる。
【0113】
図13は、ホストPC10aとコプロボード30−5とを接続する場合のスイッチ切替状態を示している。
図8の接続状態テーブルT0から、信号SEL1、SEL2、SEL3の状態は(SEL1、SEL2、SEL3)=(H、−、L)である。なお、信号SEL2はLレベルまたはHレベルのいずれでもよいが、ここではLレベルにしたとする。
【0114】
スイッチsw1は、信号SEL1がHレベルなので、切替端子c1が出力端子b12に接続される。また、スイッチsw5は、信号SEL3がLレベルなので、切替端子c5が出力端子b51に接続される。
【0115】
その後、信号OEがLレベルに設定されることで、信号SEL1、SEL3によって上記のように設定されたスイッチング状態で、スイッチsw1、sw5が有効化状態になる。このようなスイッチ制御によって、ホストPC10aとコプロボード30−5とがブリッジボード20を介して接続される転送経路r5が確立される。
【0116】
なお、信号SEL2がLレベルなので、スイッチsw2の切替端子c2は出力端子b21に接続される。また、信号SEL3がLレベルなので、スイッチsw3の切替端子c3は出力端子b31に接続され、スイッチsw4の切替端子c4は出力端子b41に接続される(スイッチsw2、sw3、sw4のスイッチングは、転送経路r5の設定には関係してこない)。
【0117】
このように、スイッチ制御部21は、制御部11からコプロボード30−5への転送指示を受けた場合、第1の切替信号(SEL1)の第2のレベル(Hレベル)にもとづいて第1のスイッチ(sw1)の第1の切替端子(c1)を第1のスイッチ(sw1)の第2の出力端子(b12)に接続する。また、第3の切替信号(SEL3)の第1のレベル(Lレベル)にもとづいて第5のスイッチ(sw5)の第5の切替端子(c5)を第5のスイッチ(sw5)の第1の出力端子(b51)に接続して転送経路(r5)を設定する。このようなスイッチ制御により、少ないスイッチの個数でコプロボード30−1、・・・、30−6のうちからコプロボード30−5を効率よく選択することができる。
【0118】
図14は、ホストPC10aとコプロボード30−6とを接続する場合のスイッチ切替状態を示している。
図8の接続状態テーブルT0から、信号SEL1、SEL2、SEL3の状態は(SEL1、SEL2、SEL3)=(H、−、H)である。なお、信号SEL2はLレベルまたはHレベルのいずれでもよいが、ここではLレベルにしたとする。
【0119】
スイッチsw1は、信号SEL1がHレベルなので、切替端子c1が出力端子b12に接続される。また、スイッチsw5は、信号SEL3がHレベルなので、切替端子c5が出力端子b52に接続される。
【0120】
その後、信号OEがLレベルに設定されることで、信号SEL1、SEL3によって上記のように設定されたスイッチング状態で、スイッチsw1、sw5が有効化状態になる。このようなスイッチ制御によって、ホストPC10aとコプロボード30−6とがブリッジボード20を介して接続される転送経路r6が確立される。
【0121】
なお、信号SEL2がLレベルなので、スイッチsw2の切替端子c2は出力端子b21に接続される。また、信号SEL3がHレベルなので、スイッチsw3の切替端子c3は出力端子b32に接続され、スイッチsw4の切替端子c4は出力端子b42に接続される(スイッチsw2、sw3、sw4のスイッチングは、転送経路r6の設定には関係してこない)。
【0122】
このように、スイッチ制御部21は、制御部11からコプロボード30−6への転送指示を受けた場合、第1の切替信号(SEL1)の第2のレベル(Hレベル)にもとづいて第1のスイッチ(sw1)の第1の切替端子(c1)を第1のスイッチ(sw1)の第2の出力端子(b12)に接続する。また、第3の切替信号(SEL3)の第2のレベル(Hレベル)にもとづいて第5のスイッチ(sw5)の第5の切替端子(c5)を第5のスイッチ(sw5)の第2の出力端子(b52)に接続して転送経路(r6)を設定する。このようなスイッチ制御により、少ないスイッチの個数でコプロボード30−1、・・・、30−6のうちからコプロボード30−6を効率よく選択することができる。
【0123】
上記のように、スイッチ制御部21は、制御部11からの転送指示にもとづいて、イネーブル信号OEおよび切替信号SEL1、SEL2、SEL3をスイッチsw1、・・・、sw5に出力し、イネーブル信号OEの第1のレベル(Hレベル)にもとづいて、切替端子c1、・・・、c5がすべての出力端子のいずれにも接続されない未接続状態に設定する。
【0124】
また、切替信号SEL1、SEL2、SEL3のレベルにもとづいて、切替端子c1、・・・、c5の第1の出力端子への接続、または第2の出力端子への接続を行ってスイッチ切替状態に設定し、イネーブル信号OEの第2のレベル(Lレベル)にもとづいて、設定したスイッチ切替状態を確定する。
【0125】
このようなスイッチ制御によって、スイッチsw1、・・・、sw5に対して、未接続状態、スイッチ切替状態およびスイッチ切替状態確定が順に行われるので、複数のコプロボード30−1、・・・、30−6のうちから1台の所定のコプロボードに対して転送経路を精度よく設定することができる。このため、例えば、電源が入っていないコプロボードに不用意に転送経路が設定されてしまうといったような誤動作を防止することができる。
【0126】
一方、スイッチ制御部21は、切替信号のレベルにもとづいて、切替端子を第1の出力端子または第2の出力端子に接続して転送経路を設定する。これにより、少ないスイッチの個数で複数のコプロボード30−1、・・・、30−6のうちから所定のコプロボードを効率よく選択することができ、また、回路実装規模の増加も抑制することができる。
【0127】
<コプロボード側のスイッチ制御>
次に
図15から
図17を用いて、コプロボード側に配置されているスイッチsw6(演算処理側スイッチ)のスイッチ制御について説明する。なお、図中の太実線は、データ転送が行われる転送経路を示している。
【0128】
図15はケーブル非接続時のスイッチ制御の一例を示す図である。コプロボード30−1に配置されるスイッチsw6は、2入力1出力のスイッチである。スイッチsw6の入力端子a61(第1の入力端子)は、PCIeコネクタ4bを介してブリッジボード20内のポートp1に接続され、入力端子a62(第2の入力端子)は、コネクタCN3に接続される。スイッチsw6の出力端子b6は、演算処理部31に接続される。
【0129】
また、スイッチsw6は、コネクタCN3からの電力供給にもとづくスイッチングを行う。具体的には、スイッチsw6は、コネクタCN3から電力供給を受けている場合は、スイッチsw6の切替端子c6は、入力端子a62に接続される。また、コネクタCN3から電力供給を受けない場合は、切替端子c6は、入力端子a61に接続される。
なお、
図15、
図16では、スイッチsw1、・・・、sw5およびスイッチ制御部21を含む構成ブロックをスイッチ部2と表記している。
【0130】
〔ステップS11〕USBメモリm0が、メインボード10に設置されているコネクタCN1に差し込まれる。USBメモリm0には、演算処理部31に書き込むべきデータ(イメージデータ)等が格納されている。
【0131】
〔ステップS12〕コネクタCN3には、メインボード10とコプロボード30−1とを接続するUSBケーブルがつながれておらず、システムはケーブル非接続状態にある。
〔ステップS13〕コネクタCN3はケーブル非接続状態にある。したがって、スイッチsw6に対して、ケーブルを通じて流れてくる電力の供給はなく、コネクタCN3からスイッチsw6への電力供給は停止している。
【0132】
〔ステップS14〕スイッチsw6は、コネクタCN3から電力供給を受けないため、切替端子c6が、入力端子a61に接続される。
〔ステップS15〕ブリッジボード20において、スイッチ部2によるスイッチ制御が行われて、
図9に示したような転送経路r1が確立する。
【0133】
〔ステップS16〕メインボード10内の制御部11は、コネクタCN1に挿入されたUSBメモリm0からデータを読み出し、データをブリッジボード20へ出力する。出力されたデータは、ブリッジボード20内の転送経路r1を流れて、コプロボード30−1内の演算処理部31に転送される。
【0134】
このように、ケーブル非接続状態の場合は、スイッチsw6の切替端子c6が入力端子a61に接続するスイッチングが行われる。このため、制御部11から出力されるデータは、ブリッジボード20内のスイッチ部2のスイッチ制御により確立された転送経路r1を介して、演算処理部31に転送されることになる。
【0135】
図16はケーブル接続時のスイッチ制御の一例を示す図である。USBケーブルCaをメインボード10とコプロボード30−1につなげてデータ転送を行う場合を示している。
〔ステップS21〕USBメモリm0が、メインボード10に設置されているコネクタCN1に差し込まれる。
【0136】
〔ステップS22〕USBケーブルCaの一端がメインボード10に設置されているコネクタCN2に接続され、USBケーブルCaの他端がコプロボード30−1に設置されているコネクタCN3に接続される。
【0137】
〔ステップS23〕コネクタCN3は、ケーブル接続状態にある。したがって、USBケーブルCaを通じて流れてくる電力が、コネクタCN3からスイッチsw6へ供給される。すなわち、スイッチsw6は、コネクタCN3のVbusピンから供給される電力を受信する。
【0138】
〔ステップS24〕スイッチsw6は、コネクタCN3から電力供給を受けるため、切替端子c6が、入力端子a62に接続される。
〔ステップS25〕メインボード10内の制御部11は、コネクタCN1に挿入されたUSBメモリm0からデータを読み出し、データをコネクタCN2へ出力する。出力されたデータは、USBケーブルCaを介してコプロボード30−1内の演算処理部31に転送される。
【0139】
このように、ケーブル接続状態の場合は、スイッチsw6の切替端子c6が入力端子a62に接続するスイッチングが行われる。このため、制御部11から出力されるデータは、外部接続されたUSBケーブルCaを介して、演算処理部31に転送されることになる。
【0140】
図17はケーブル接続時のスイッチ制御の一例を示す図である。USBケーブルCaを保守端末5(外部機器)とコプロボード30−1につなげて、保守端末5からデータ転送を行う場合を示している。
〔ステップS21a〕保守端末5で演算処理部31に書き込むべきデータ(イメージデータ)等が生成・格納される。
【0141】
〔ステップS22a〕USBケーブルCaの一端が保守端末5に接続され、USBケーブルCaの他端がコプロボード30−1に設置されているコネクタCN3に接続される。
〔ステップS23a〕コネクタCN3はケーブル接続状態にあるので、USBケーブルCaを通じて流れてくる電力が、コネクタCN3からスイッチsw6へ供給される。すなわち、スイッチsw6は、コネクタCN3のVbusピンから供給される電力を受信する。
【0142】
〔ステップS24a〕スイッチsw6は、コネクタCN3から電力供給を受けるため、切替端子c6が、入力端子a62に接続される。
〔ステップS25a〕保守端末5からUSBケーブルCaを介してコプロボード30−1内の演算処理部31にデータ転送が行われる。
【0143】
このように、システム内のホストPC10aを用いずに、任意の保守端末5からUSBケーブルCaを介して、コプロボード30−1内の演算処理部31にデータ転送を行うことができる。
【0144】
なお、上記では、コプロボード30−1内の演算処理部31へのデータ転送について説明したが、他のコプロボード30−2、・・・、30−6内の各演算処理部へのデータ転送も同様である。
【0145】
上記のように、コプロボード30−1、・・・、30−6は、コネクタCN3を備え、データが転送されるケーブル(USBケーブルCa)がコネクタCN3に接続された場合、ブリッジボード20を介さずにケーブルを介してホストPC10a(または保守端末5)から転送されたデータを受信する。
【0146】
これにより、コプロボード30−1、・・・、30−6へのイメージデータ書き込み処理時、ユーザはブリッジボード20を介しての自動設定、またはケーブルをつなげての手作業による設定のいずれかを適応的に選ぶことができるので、操作環境の柔軟性を高め利便性を向上させることができる。
【0147】
また、コプロボード30−1、・・・、30−6に配置される2入力1出力のスイッチsw6(演算処理側スイッチ)は、コネクタCN3に対してUSBケーブルCaが非接続状態であり、コネクタCN3を介してUSBケーブルCaを通じて流れる電力供給を受けない場合、切替端子c6を入力端子a61に接続して、ブリッジボード20で設定された転送経路からのデータを出力端子b6から出力する。
【0148】
さらにコネクタCN3に対してUSBケーブルCaが接続状態であり、コネクタCN3を介してUSBケーブルCaを通じて流れる電力供給を受ける場合、切替端子c6を入力端子a62に接続して、USBケーブルCaからのデータを出力端子b6から出力する。
【0149】
このように、ケーブル接続時に供給される電力にもとづいてスイッチングするスイッチsw6を用いることにより、ブリッジボード20側またはUSBケーブルCa側からのデータを精度よく選択して、コプロボード内の演算処理部に出力することができる。また、このような構成により、スイッチsw6をスイッチ制御するためのあらたな制御機能が不要であるため、回路実装規模の増加を抑制することができる。
【0150】
さらに、ケーブル接続時には、USBケーブルCaを介してのデータ転送が優先的に行われるので、ユーザの意図に沿った操作でデータ転送が可能になり、演算処理部へのイメージデータの書き込み作業の利便性を向上させることができる。
【0151】
なお、上記において、メインボード10のコネクタCN2にUSBケーブルCaが接続されたことを制御部11が検出した場合、制御部11は転送指示の出力を停止して、スイッチ制御を停止する。また、USBケーブルCaのコネクタCN2の接続を検出した場合は、制御部11は転送指示およびデータを出力してブリッジボード20からのデータ転送を行う。
【0152】
これにより、ケーブルでのデータ転送およびケーブルレスでのデータ転送が自動的に選択されるので操作性の向上を図ることができる。さらに、接続されたUSBケーブルCaを介してデータ転送が行われる場合は、ブリッジボード20内のスイッチ制御が停止するので、ブリッジボード20内の消費電力を抑制することができる。
【0153】
<動作シーケンス>
次に
図18から
図24を用いて、動作シーケンスについて説明する。
図18から
図21はブリッジボードを介してスイッチ制御を行う場合の動作シーケンスの一例を示す図である。なお、図では、コプロボード内の演算処理部として、コプロボード30−1の演算処理部31と、コプロボード30−2の演算処理部32を示している。
【0154】
〔ステップS31〕システムに電源が投入される。制御部11、およびコプロボード30−1、30−2それぞれに搭載されている演算処理部31、32が電源オンする。なお、スイッチ制御部21およびUSB/UART変換IC23それぞれに対しては、起動信号en1、en2が現段階で送信されていない。よって、スイッチ制御部21、USB/UART変換IC23およびスイッチsw1、・・・、sw5は無効化状態にある。
【0155】
〔ステップS32〕制御部11は、コプロボード30−1内の演算処理部31のリカバリ処理を開始する。
〔ステップS33〕制御部11は、リカバリモード信号rmをオン(例えば、Hレベル)にする。
〔ステップS33a〕Hレベルのリカバリモード信号rmが、制御部11からコプロボード30−1、・・・、30−6内の各演算処理部に送信される。
【0156】
〔ステップS34〕制御部11は、電源制御部24に対してコプロボード30−1の演算処理部31を再起動させる指示を与える。
〔ステップS34a〕制御部11の指示にもとづき、電源制御部24からコプロボード30−1の演算処理部31を起動させるための電源起動信号s1(
図4、
図5)が出力される。
【0157】
〔ステップS35〕演算処理部31は、電源起動信号s1にもとづいて、再起動する。
〔ステップS36〕演算処理部31は、再起動した後、Hレベルのリカバリモード信号rmの受信にもとづいて、リカバリモードに移行する。
【0158】
〔ステップS37〕制御部11は、スイッチ制御部21に起動指示を与える。
〔ステップS37a〕Hレベルの起動信号en1が、制御部11からスイッチ制御部21に送信される。
【0159】
〔ステップS38〕スイッチ制御部21は、Hレベルの起動信号en1の受信にもとづいて、有効化状態になる。
〔ステップS38a〕スイッチ制御部21は、有効化状態になったことの結果通知を制御部11に返信する。
【0160】
〔ステップS39〕制御部11は、スイッチ制御部21の起動を検出する。
〔ステップS40〕制御部11は、ブリッジボード20を介した、演算処理部31へのOSイメージデータ書き込みを開始する。制御部11は、USBハブ22を介して転送指示(選択対象のコプロボードの識別子等が含まれていてもよい)をスイッチ制御部21に出力する。
【0161】
〔ステップS41〕スイッチ制御部21は、制御部11からの転送指示にもとづいて、信号OEをHレベルにしてスイッチsw1、・・・、sw5を未接続状態に設定する。
〔ステップS42〕スイッチ制御部21は、信号SEL1、SEL2、SEL3を制御してコプロボード30−1が選択される転送経路を設定する。具体的には
図8、
図9で上述したように(SEL1、SEL2、SEL3)=(L、L、L)のレベル設定がなされて、ブリッジボード20内に転送経路r1が設定される。
【0162】
〔ステップS43〕スイッチ制御部21は、信号OEをLレベルにして、スイッチsw1、・・・、sw5のスイッチ切替状態を確定する。
〔ステップS44〕スイッチsw1、・・・、sw5は、転送経路r1が設定されるスイッチ切替状態で有効化状態になる。
【0163】
〔ステップS45〕制御部11は、転送経路r1を介した演算処理部31との通信の状態チェックを行う。
〔ステップS45a〕制御部11から演算処理部31へ転送経路r1を介した状態要求が送信され、演算処理部31は、状態チェック結果を制御部11に返信する。
【0164】
〔ステップS46〕制御部11は、転送経路r1を介した演算処理部31との通信に異常がないことを検出した場合、リカバリツールを実行する。
〔ステップS47〕制御部11は、ブリッジボード20内の転送経路r1を介して、演算処理部31にイメージデータの転送を開始する。
〔ステップS47a〕イメージデータがブリッジボード20内の転送経路r1を介して、演算処理部31に転送される。
【0165】
〔ステップS48〕制御部11は、イメージデータの転送完了後、電源制御部24に対してコプロボード30−1の演算処理部31を再起動させる指示を与える。
〔ステップS48a〕制御部11の指示にもとづき、電源制御部24からコプロボード30−1の演算処理部31を起動させるための電源起動信号s1が出力される。
【0166】
〔ステップS49〕演算処理部31は、電源起動信号s1にもとづいて、再起動する。
〔ステップS50〕演算処理部31は、リカバリしたイメージでOSを起動する。
〔ステップS51〕制御部11は、USB/UART変換IC23(図中の変換ICはUSB/UART変換IC23を指す)に起動指示を与える。
〔ステップS51a〕Hレベルの起動信号en2が、制御部11からUSB/UART変換IC23に送信される。
【0167】
〔ステップS52〕USB/UART変換IC23は、Hレベルの起動信号en2の受信にもとづいて、有効化状態になる。
〔ステップS52a〕USB/UART変換IC23は、有効化状態になった結果を制御部11に返信する。
【0168】
〔ステップS53〕制御部11は、USB/UART変換IC23を介して、演算処理部31にSSH(Secure Shell)接続を行う。SSHとは、通信内容を暗号化して遠隔コンピュータと通信するためのプロトコルである。
〔ステップS53a〕制御部11は、USB/UART変換IC23を介して、演算処理部31と通信を行い、イメージデータの書き込み状態や、演算処理部31の動作状態等を取得する。
【0169】
〔ステップS54〕制御部11は、演算処理部31の正常起動を確認する。
〔ステップS55〕制御部11は、演算処理部31の正常起動の確認次第、次のリカバリ対象であるコプロボード30−2内の演算処理部32のリカバリ処理を開始する。
【0170】
〔ステップS56〕制御部11は、リカバリモード信号rmをオンにする。
〔ステップS56a〕Hレベルのリカバリモード信号rmが、制御部11からコプロボード30−1、・・・、30−6内の各演算処理部に送信される。
【0171】
〔ステップS57〕制御部11は、電源制御部24に対してコプロボード30−2の演算処理部32を再起動させる指示を与える。
〔ステップS57a〕制御部11の指示にもとづき、電源制御部24からコプロボード30−2の演算処理部32を起動させるための電源起動信号s2(
図4、
図5)が出力される。
【0172】
〔ステップS58〕演算処理部32は、電源起動信号s2にもとづいて、再起動する。
〔ステップS59〕演算処理部32は、再起動した後、Hレベルのリカバリモード信号rmの受信にもとづいて、リカバリモードに移行する。
【0173】
以降、演算処理部32に対しても演算処理部31のリカバリ時と同様なシーケンスが行われる。すなわち、制御部11は、演算処理部31へのイメージデータの正常書き込み処理が終了次第、次のコプロボード30−2の演算処理部32に対するリカバリ処理を行って演算処理部32へのデータ転送制御を行う。他のコプロボードに対しても同様であり、すべての演算処理部に対するデータ転送制御が終了するまで上記動作が繰り返される。
【0174】
このように、コプロボード30−1、・・・、30−6のうちから選択したコプロボード30−1へのデータの転送後にコプロボード30−1からのデータの書き込み完了応答を受信すると、コプロボード30−2、・・・、30−6のうちからデータ転送が未完了のコプロボード30−2が選択されてデータ転送を行うためのスイッチ制御が行われ、コプロボード30−2にデータが転送される。このような処理をデータ転送が未完了のコプロボードがなくなるまで繰り返し行って(データ転送処理をコプロボード30−1、・・・、30−6の台数分行って)、コプロボード30−1、・・・、30−6へのデータ書き込みを実行する。
【0175】
このような制御により、すべてのコプロボード30−1、・・・、30−6に対して自動的にイメージデータが書き込まれることになり、作業効率を大幅に向上させることが可能になる。
【0176】
図22から
図24はケーブルを介してスイッチ制御を行う場合の動作シーケンスの一例を示す図である。なお、図では、コプロボード内の演算処理部として、コプロボード30−1の演算処理部31と、コプロボード30−2の演算処理部32を示している。
【0177】
〔ステップS61〕システムに電源が投入される。制御部11、およびコプロボード30−1、30−2それぞれに搭載されている演算処理部31、32が電源オンする。なお、USB/UART変換IC23に対しては、起動信号en2が現段階で送信されていないので、USB/UART変換IC23は無効化状態にある。
【0178】
〔ステップS62〕制御部11は、コプロボード30−1内の演算処理部31のリカバリ処理を開始する。
〔ステップS63〕制御部11は、リカバリモード信号rmをオンにする。
〔ステップS63a〕Hレベルのリカバリモード信号rmが、制御部11からコプロボード30−1、・・・、30−6内の各演算処理部に送信される。
【0179】
〔ステップS64〕制御部11は、電源制御部24に対してコプロボード30−1の演算処理部31を再起動させる指示を与える。
〔ステップS64a〕制御部11の指示にもとづき、電源制御部24からコプロボード30−1の演算処理部31を起動させるための電源起動信号s1(
図4、
図5)が出力される。
〔ステップS65〕演算処理部31は、電源起動信号s1にもとづいて、再起動する。
【0180】
〔ステップS66〕演算処理部31は、再起動した後、Hレベルのリカバリモード信号rmの受信にもとづいて、リカバリモードに移行する。
〔ステップS67〕メインボード10とコプロボード30−1が、手動によってUSBケーブルCaで接続される。
【0181】
〔ステップS68〕制御部11は、USBケーブルCaを介した演算処理部31との通信の状態チェックを行う。
〔ステップS68a〕制御部11から演算処理部31へUSBケーブルCaを介した状態要求が送信され、演算処理部31は、状態チェック結果を、USBケーブルCaを介して制御部11に返信する。
【0182】
〔ステップS69〕制御部11は、USBケーブルCaを介した演算処理部31との通信に異常がないことを検出した場合、リカバリツールを実行する。
〔ステップS70〕制御部11は、USBケーブルCaを介して、演算処理部31にイメージデータの転送を開始する。
〔ステップS70a〕イメージデータがUSBケーブルCaを介して、演算処理部31に転送される。
【0183】
〔ステップS71〕制御部11は、イメージデータの転送完了後、電源制御部24に対してコプロボード30−1の演算処理部31を再起動させる指示を与える。
〔ステップS71a〕制御部11の指示にもとづき、電源制御部24からコプロボード30−1の演算処理部31を起動させるための電源起動信号s1が出力される。
【0184】
〔ステップS72〕演算処理部31は、電源起動信号s1にもとづいて、再起動する。
〔ステップS73〕演算処理部31は、リカバリしたイメージでOSを起動する。
〔ステップS74〕制御部11は、USB/UART変換IC23(図中の変換ICはUSB/UART変換IC23を指す)に起動指示を与える。
〔ステップS74a〕Hレベルの起動信号en2が、制御部11からUSB/UART変換IC23に送信される。
【0185】
〔ステップS75〕USB/UART変換IC23は、Hレベルの起動信号en2の受信にもとづいて、有効化状態になる。
〔ステップS75a〕USB/UART変換IC23は、有効化状態になった結果を制御部11に返信する。
【0186】
〔ステップS76〕制御部11は、USB/UART変換IC23を介して、演算処理部31にSSH接続を行う。
〔ステップS76a〕制御部11は、USB/UART変換IC23を介して、演算処理部31と通信を行い、イメージデータの書き込み状態や、演算処理部31の動作状態等を取得する。
【0187】
〔ステップS77〕制御部11は、演算処理部31の正常起動を確認する。
〔ステップS78〕制御部11は、演算処理部31の正常起動の確認次第、次のリカバリ対象であるコプロボード30−2内の演算処理部32のリカバリ処理を開始する。
【0188】
〔ステップS79〕制御部11は、リカバリモード信号rmをオンにする。
〔ステップS79a〕Hレベルのリカバリモード信号rmが、制御部11からコプロボード30−1、・・・、30−6内の各演算処理部に送信される。
【0189】
〔ステップS80〕制御部11は、電源制御部24に対してコプロボード30−2の演算処理部32を再起動させる指示を与える。
〔ステップS80a〕制御部11の指示にもとづき、電源制御部24からコプロボード30−2の演算処理部32を起動させるための電源起動信号s2(
図4、
図5)が出力される。
【0190】
〔ステップS81〕演算処理部32は、電源起動信号s2にもとづいて、再起動する。
〔ステップS82〕演算処理部32は、再起動した後、Hレベルのリカバリモード信号rmの受信にもとづいて、リカバリモードに移行する。
〔ステップS83〕メインボード10とコプロボード30−2が、手動によってUSBケーブルCaで接続される。
【0191】
以降、演算処理部32に対しても演算処理部31のリカバリ時と同様なシーケンスが行われる。すなわち、演算処理部31へのイメージデータの正常書き込みを処理するとケーブルのつなぎ替えが行われ、次のコプロボード30−2の演算処理部32に対するリカバリ処理を行って演算処理部32へのデータ転送制御を行う。他のコプロボードに対しても同様であり、すべての演算処理部に対するデータ転送制御が終了するまで上記動作が繰り返される。
【0192】
以上説明したように、本発明によれば、ケーブルレスでのデータ転送を行うので作業効率の向上を図ることができる。また、従前では、ケーブルを手作業によってコプロボードの台数分つなぎ替えていたため、誤って別のコプロボードにケーブルを接続してOSイメージを書き込んでしまう可能性があった。これに対し、本発明では、ケーブルレスでのデータ転送が可能なので、このような書き込み作業ミスを防止することができる。
【0193】
さらに、本発明では、ケーブルを使用してのデータ転送と、ケーブルレスでのデータ転送との両方の機能を有し、ケーブルが接続されている場合は、ケーブルを介してのデータ転送が優先的に行われる構成にした。これにより、ユーザの意図に沿った操作でデータ転送が可能になるため、演算処理部へのイメージデータの書き込み作業の利便性を向上させることができる。
【0194】
上記で説明した情報処理システムおよび中継装置の処理機能は、コンピュータによって実現することができる。この場合、情報処理システムおよび中継装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
【0195】
処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリ等がある。磁気記憶装置には、ハードディスク装置(HDD)、フレキシブルディスク(FD)、磁気テープ等がある。光ディスクには、CD−ROM/RW等がある。光磁気記録媒体には、MO(Magneto Optical disk)等がある。
【0196】
プログラムを流通させる場合、例えば、そのプログラムが記録されたCD−ROM等の可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【0197】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。
【0198】
また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。また、上記の処理機能の少なくとも一部を、DSP、ASIC、PLD等の電子回路で実現することもできる。
【0199】
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の2以上の構成(特徴)を組み合わせたものであってもよい。
【解決手段】情報処理システム1−1は、情報処理装置1a、中継装置1b、および演算処理装置1c−1、・・・、1c−n含む演算処理装置群1cを備える。情報処理装置1aは、制御部1a1および記憶部1a2を含む。中継装置1bは、情報処理装置1aおよび演算処理装置群1cとの間で拡張バスを介した中継通信を行う。また、中継装置1bは、単一または複数のスイッチ1b2およびスイッチ制御部1b1を含む。制御部1a1は、演算処理装置群1cのうちからデータ書き込み対象とする演算処理装置にデータ転送を行うための転送指示を出力してデータを転送する。スイッチ制御部1b1は、転送指示にもとづいてスイッチ1b2のスイッチ制御を行ってデータの転送経路を設定する。