JP2009163633A - 情報処理装置およびデータ通信方法 - Google Patents

情報処理装置およびデータ通信方法 Download PDF

Info

Publication number
JP2009163633A
JP2009163633A JP2008002474A JP2008002474A JP2009163633A JP 2009163633 A JP2009163633 A JP 2009163633A JP 2008002474 A JP2008002474 A JP 2008002474A JP 2008002474 A JP2008002474 A JP 2008002474A JP 2009163633 A JP2009163633 A JP 2009163633A
Authority
JP
Japan
Prior art keywords
devices
traffic
speed serial
physical layer
switch fabric
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2008002474A
Other languages
English (en)
Inventor
Koji Oshikiri
幸治 押切
Junichi Ikeda
純一 池田
Yosuke Kawamura
洋介 川村
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2008002474A priority Critical patent/JP2009163633A/ja
Publication of JP2009163633A publication Critical patent/JP2009163633A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Systems (AREA)

Abstract

【課題】エラー発生時においても正常デバイスの生産性を損なうことなく、生産性の低下を最小限に抑えることができる情報処理装置およびデータ通信方法を提供する。
【解決手段】複数のデバイス5,6に対するトラフィックを異なる仮想チャネルに割り当て、高速シリアルスイッチファブリック2と一のデバイス6との間の物理層のリンクダウンが生じていると判断した場合、ジョブが欠落しないように、他のデバイス5へのジョブの出力配分を再配分する。これにより、複数のデバイス5,6に対するトラフィックを異なる仮想チャネルに割り当てることができるので、一方のデバイス6がエラーによりデータ転送が停止したとしても、高速シリアルスイッチファブリック2内部における通信経路におけるデッドロックを回避しているため、全体での生産性の低下を可能な限り減らすことができる。
【選択図】 図28

Description

本発明は、高速シリアルスイッチファブリックを介して複数のデバイスを接続した情報処理装置およびデータ通信方法に関する。
一般に、画像データやその他のデータを扱うデジタル複写機、複合機(MFP)等の情報処理装置では、デバイス間のインタフェースにPCIバスが使用されている。
しかし、パラレル方式のPCIバスでは、レーシングやスキューなどの問題があり、高速・高画質の画像形成装置に使用するには、転送レートが低い段階にきており、最近では、PCIバスのようなパラレル方式のインタフェースに代えて、IEEE1394やUSB等の高速シリアルインタフェースの使用が検討されている。例えば、特許文献1によれば、内部インタフェースとして、IEEE1394やUSB等の高速シリアルインタフェースを使用することが提案されている。
また、他の高速シリアルインタフェースとして、PCIバス方式の後継規格に当るPCI Express(登録商標)なるインタフェースも提案され、実用化の段階にきている(例えば、非特許文献1参照)。このPCI Expressシステムは、概略的には、例えば非特許文献1中の図1等に示されるようなルートコンプレックス−スイッチ(任意階層)−デバイス等のツリー構造(木構造)によるデータ通信網として構成されている。
さらに、近年においては、PCI Express アーキテクチャに基づく高速シリアルスイッチファブリックであるAdvanced Switching Interconnect規格も策定されている。このAdvanced Switching Interconnectは、PCI Expressの高速シリアル伝送の物理層とリンク層の技術をそのまま採用しつつ、より広範囲なアプリケーションに対応できるようにしたものであり、その接続対象はChip-to-Chip, Board-to-Boardを想定している。このAdvanced Switching Interconnectによれば、トラフィッククラスを仮想チャネルに対してマッピングすることにより、トラフィックの差別化(優先度をつける)を行うことができる。
そして、このような技術を基に、様々な性質の異なるトラフィックを持つデバイスを高速シリアルスイッチファブリックに対して自由に拡張することができるスイッチで接続されたプリンタやMFPも提案されている。(特許文献2、3、4参照)
特開2001−016382号公報 特開2004−005860号公報 特開2004−005937号公報 特開2004−014419号公報 "PCI Express 規格の概要"Interface誌、July’2003 里見尚志
ところが、複数のデバイスが接続されたスイッチベースのプリンタやMFPにおいて、1つのデバイスにエラーが発生した場合には、エラーが発生したデバイスへのトラフィックが正常なデバイスへのトラフィックの邪魔をすることになる。そして、最悪の場合には、正常なデバイスを含むシステム全体を再起動するという事態に陥るため、極端に生産性が低下するという問題がある。
本発明は、上記に鑑みてなされたものであって、エラー発生時においても正常デバイスの生産性を損なうことなく、生産性の低下を最小限に抑えることができる情報処理装置およびデータ通信方法を提供することを目的とする。
上述した課題を解決し、目的を達成するために、請求項1にかかる発明は、トラフィックの差別化を行うことができるトラフィッククラスを仮想チャネルに対してマッピング可能な高速シリアルスイッチファブリックを介して複数のデバイスを接続した情報処理装置において、前記複数のデバイスに対するトラフィックを異なる前記仮想チャネルに割り当てる仮想チャネル割当手段と、前記高速シリアルスイッチファブリックと一の前記デバイスとの間の物理層のリンクダウンが生じたか否かを判断する第1判断手段と、前記高速シリアルスイッチファブリックと一の前記デバイスとの間の物理層のリンクダウンが生じていると判断した場合、ジョブが欠落しないように、他の前記デバイスへのジョブの出力配分を再配分する第1再配分手段と、を備える。
また、請求項2にかかる発明は、請求項1記載の情報処理装置において、前記第1再配分手段は、一の前記デバイスに割り当てられていたジョブを、他の前記デバイスに対して投入する。
また、請求項3にかかる発明は、請求項1または2記載の情報処理装置において、前記高速シリアルスイッチファブリックと一の前記デバイスとの間の物理層のリンクが正常復帰したか否かを判断する第2判断手段と、前記高速シリアルスイッチファブリックと一の前記デバイスとの間の物理層のリンクが正常復帰したと判断した場合、他の前記デバイスへのジョブの出力配分を再配分する第2再配分手段と、を備える。
また、請求項4にかかる発明は、請求項3記載の情報処理装置において、前記第2再配分手段は、他の前記デバイス用に残存しているジョブの半分を、リンクが正常復帰した一の前記デバイスに割り当て、一の前記デバイスと他の前記デバイスに対して投入する。
また、請求項5にかかる発明は、トラフィックの差別化を行うことができるトラフィッククラスを仮想チャネルに対してマッピング可能な高速シリアルスイッチファブリックを介して複数のデバイスを接続した情報処理装置で実行されるデータ通信方法であって、前記情報処理装置は、制御部を備え、前記制御部において実行される、仮想チャネル割当手段が、前記複数のデバイスに対するトラフィックを異なる前記仮想チャネルに割り当てるステップと、第1判断手段が、前記高速シリアルスイッチファブリックと一の前記デバイスとの間の物理層のリンクダウンが生じたか否かを判断するステップと、第1再配分手段が、前記高速シリアルスイッチファブリックと一の前記デバイスとの間の物理層のリンクダウンが生じていると判断した場合、ジョブが欠落しないように、他の前記デバイスへのジョブの出力配分を再配分するステップと、含むことを特徴とする。
また、請求項6にかかる発明は、請求項5記載のデータ通信方法において、前記第1再配分手段は、一の前記デバイスに割り当てられていたジョブを、他の前記デバイスに対して投入する。
また、請求項7にかかる発明は、請求項5または6記載のデータ通信方法において、前記制御部において実行される、第2判断手段が、前記高速シリアルスイッチファブリックと一の前記デバイスとの間の物理層のリンクが正常復帰したか否かを判断するステップと、第2再配分手段が、前記高速シリアルスイッチファブリックと一の前記デバイスとの間の物理層のリンクが正常復帰したと判断した場合、他の前記デバイスへのジョブの出力配分を再配分するステップと、を含む。
また、請求項8にかかる発明は、請求項7記載のデータ通信方法において、前記第2再配分手段は、他の前記デバイス用に残存しているジョブの半分を、リンクが正常復帰した一の前記デバイスに割り当て、一の前記デバイスと他の前記デバイスに対して投入する。
請求項1,5にかかる発明によれば、複数のデバイスに対するトラフィックを異なる仮想チャネルに割り当て、高速シリアルスイッチファブリックと一のデバイスとの間の物理層のリンクダウンが生じていると判断した場合、ジョブが欠落しないように、他のデバイスへのジョブの出力配分を再配分することにより、複数のデバイスに対するトラフィックを異なる仮想チャネルに割り当てることができるので、一方のデバイスがエラーによりデータ転送が停止したとしても、高速シリアルスイッチファブリック内部における通信経路におけるデッドロックを回避しているため、全体での生産性の低下を可能な限り減らすことができる、という効果を奏する。
また、請求項2,6にかかる発明によれば、一のデバイスに割り当てられていたジョブを、他のデバイスに対して投入することにより、デバイスエラー発生時に、複数のデバイスへの出力配分を再配分する制御をおこない、当初、エラーが発生したデバイスに割り当てられていた作業を、必要に応じて正常動作しているデバイスに割り当てなおすことで、全体での生産性の低下を可能な限り減らすことができる、という効果を奏する。
また、請求項3,7にかかる発明によれば、高速シリアルスイッチファブリックと一のデバイスとの間の物理層のリンクが正常復帰したと判断した場合、他のデバイスへのジョブの出力配分を再配分することにより、デバイスエラー発生時に、複数のデバイスへの出力配分を再配分する制御をおこない、当初、エラーが発生したデバイスに割り当てられていた作業を、必要に応じて正常動作しているデバイスに割り当てなおし、更に、エラーが発生していたデバイスが正常状態に復帰した場合に、複数のデバイスへの出力配分を再配分する制御をおこない、復帰したデバイスに作業を割り当てなおすことで、全体での生産性の低下を可能な限り減らすことができる、という効果を奏する。
また、請求項4,8にかかる発明によれば、他のデバイス用に残存しているジョブの半分を、リンクが正常復帰した一のデバイスに割り当て、一のデバイスと他のデバイスに対して投入することにより、エラーが発生していた一のデバイスが正常状態に復帰した場合に、他のデバイス用に残存しているジョブの半分を、リンクが正常復帰した一のデバイスに割り当て、一のデバイスと他のデバイスに対して投入することで、全体での生産性の低下を可能な限り減らすことができる、という効果を奏する。
以下に添付図面を参照して、この発明にかかる情報処理装置およびデータ通信方法の最良な実施の形態を詳細に説明する。
[第1の実施の形態]
本発明を実施するための最良の形態について図面を参照して説明する。以下では、PCI Expressの詳細について、[PCI Express規格の概要]〜[PCI Express のアーキテクチャの詳細]の欄で説明し、PCI Expressの技術を活用したAdvanced Switch Interconnectについて、[Advanced Switch Interconnectとは]〜[Advanced Switch Interconnect技術の特徴]の欄で説明し、本実施の形態の情報処理装置について、[情報処理装置の構成]〜[動作例]の欄で説明する。
[PCI Express規格の概要]
まず、本実施の形態は高速シリアルバスの一つであるPCI Express(登録商標)を利用するものであり、本実施の形態の前提として当該PCI Express規格の概要について、非特許文献1の一部抜粋により説明する。ここに、高速シリアルバスとは、1本の伝送路を用いてシリアル(直列)伝送により高速(100Mbps程度以上)にデータをやり取りすることができるインタフェースを意味する。
PCI Expressは、PCIの後継規格としてコンピュータ全般に通用する標準拡張バスとして規格化されたバスであり、概略的には、低電圧差動信号伝送、ポイントツーポイントで送受信独立の通信チャネル、パケット化されたスプリットトランザクション、リンク構成の違いによる高いスケーラビリティなどの特徴を持つ。
図1に既存のPCIシステム、図2にPCI Expressシステムの各々の構成例を示す。既存のPCIシステムにあっては、CPU100やAGPグラフィックス101やメモリ102が接続されたホストブリッジ103に対して、PCI-X(PCIの上位互換規格)デバイス104a,104bがPCI-Xブリッジ105aを介して接続されたり、PCIデバイス104c,104dが接続されたPCIブリッジ105bやPCIバススロット106が接続されたPCIブリッジ107がPCIブリッジ105cを介して接続されたりしたツリー構造(木構造)とされている。
これに対して、PCI Expressシステムにあっては、CPU110やメモリ111が接続されたルートコンプレックス112に対して、PCI Expressグラフィックス113がPCI Express114aにより接続され、また、エンドポイント115aやレガシーエンドポイント116aがPCI Express114bにより接続されたスイッチ117aがPCI Express114cにより接続され、さらには、エンドポイント115bやレガシーエンドポイント116bがPCI Express114dにより接続されたスイッチ117bやPCIバススロット118が接続されたPCIブリッジ119がPCI Express114eにより接続されたスイッチ117cがPCI Express114fにより接続されたツリー構造(木構造)とされている。
実際に想定されるPCI Expressプラットホーム例を図3に示す。図示例は、デスクトップ/モバイルへの適用例を示し、CPU121がCPUホストバス122により接続され、メモリ123が接続されたメモリハブ124(ルートコンプレックスに相当する)に対して、例えば、グラフィックス125がx16のPCI Express126aにより接続され、また、変換機能を有するI/Oハブ127がPCI Express126bにより接続されている。このI/Oハブ127には、例えば、Serial ATA128によりストレージ129が接続され、LPC130によりローカルI/O131が接続され、USB 2.0132やPCIバススロット133が接続されている。さらには、I/Oハブ127には、PCI Express126cによりスイッチ134が接続され、このスイッチ134には、各々、PCI Express126d,126e,126fによりモバイルドック135、ギガビットイーサネット136(イーサネットは登録商標)、アドインカード137が接続されている。
即ち、PCI Expressシステムでは、従来のPCI,PCI-X,AGPといったバスがPCI Expressで置き換わり、既存のPCI/PCI-Xデバイスを接続するためにブリッジが使用される。チップセット間の接続もPCI Express接続となり、IEEE1394,Serial ATA,USB 2.0などの既存のバスはI/OハブによりPCI Expressに接続される。
[PCI Expressの構成要素]
A.ポート(Port)/レーン(Lane)/リンク(Link)
図4に物理層の構造を示す。ポートは、物理的には同一半導体内にあり、リンクを形成するトランスミッタ/レシーバの集合で、論理的にはコンポーネント・リンク間を1対1で接続(ポイント・ツー・ポイント)するインタフェースを意味する。転送レートは、例えば片方向2.5Gbpsとされている。レーンは、例えば0.8Vの差動信号ペアのセットで、送信側の信号ペア(2本)、受信側の信号ペア(2本)からなる。リンクは、2つのポートとその間を結ぶレーンの集まりであり、コンポーネント間のデュアルシンプレックス通信バスである。「xNリンク」はN本のレーンから構成され、現在の規格では、N=1,2,4,8,16,32が定義されている。図示例は、x4リンク例である。例えば、図5に示すように、デバイスA,B間を結ぶこのレーン幅Nを可変することにより、スケーラブルなバンド幅を構成することが可能となる。
B.ルートコンプレックス(Root Complex)
ルートコンプレックス112は、I/O構造の最上位に位置し、CPUやメモリサブシステムをI/Oに接続する。ブロック図などでは、図3に示すように、「メモリハブ」と記述されることが多い。ルートコンプレックス112(又は、124)は、1つ以上のPCI Expressポート(ルートポート)(図2中では、ルートコンプレックス112中の四角で示す)を持ち、各々のポートは独立したI/O階層ドメインを形成する。I/O階層ドメインは、単純なエンドポイントである場合(例えば、図2中のエンドポイント115a側の例)や、多数のスイッチやエンドポイントから形成される場合(例えば、図2中のエンドポイント115bやスイッチ117b,115c側の例)がある。
C.エンドポイント(End Point)
エンドポイント115は、タイプ00hのコンフィグレーション空間ヘッダを持つデバイス(具体的には、ブリッジ以外のデバイス)で、レガシーエンドポイントとPCI Expressエンドポイントとに分けられる。両者の大きな違いは、PCI ExpressエンドポイントはBAR(ベースアドレスレジスタ)でI/Oリソースを要求せず、このためI/Oリクエストを要求しない。また、PCI Expressエンドポイントは、ロックリクエストもサポートしていない。
D.スイッチ(Switch)
スイッチ117(又は、134)は、2つ以上のポートを結合し、ポート間でのパケットルーティングを行う。コンフィグレーションソフトウェアからは、当該スイッチは、図6に示すように、仮想PCI-PCIブリッジ141の集合体として認識される。図中、両矢印はPCI Expressリンク114(又は、126)を示し、142a〜142dはポートを示す。このうち、ポート142aはルートコンプレックスに近い方のアップストリームポートであり、ポート142b〜142dはルートコンプレックスから遠い方のダウンストリームポートである。
E.PCI Express114e−PCIブリッジ119
PCI ExpressからPCI/PCI-Xへの接続を提供する。これにより、既存のPCI/PCI-XデバイスをPCI Expressシステム上で使用することができる。
[階層アーキテクチャ]
従来のPCIのアーキテクチャは、図7−1に示すように、プロトコルとシグナリングが密接に関連する構造であり階層という考え方はなかったが、PCI Expressでは、図7−2に示すように、一般的な通信プロトコルやInfiniBandのように、独立した階層構造とされ、各層に分けて仕様が定義されている。即ち、最上位のソフトウェア151、最下位の機構(メカニカル)部152間に、トランザクション層153、データリンク層154、物理層155を持つ構造とされている。これにより、各層のモジュール性が確保され、スケーラビリティを持たせることやモジュールの再利用が可能となる。例えば、新たな信号コーディング方式や伝送媒体を採用する場合、物理層を変更するだけでデータリンク層やトランザクション層は変更せずに対応できる。
PCI Expressのアーキテクチャの中心となるのは、トランザクション層153、データリンク層154、物理層155であり、各々図8を参照して説明する以下のような役割を持つ。
A.トランザクション層153
トランザクション層153は、最上位に位置し、トランザクションレイヤパケット(TLP)の組み立て、分解機能を持つ。トランザクションレイヤパケット(TLP)は、リード/ライト、各種イベントといったトランザクションの伝達に用いられる。また、トランザクション層153は、トランザクションレイヤパケット(TLP)のためのクレジットを用いたフロー制御を行う。各層153〜155におけるトランザクションレイヤパケット(TLP)の概要を図9に示す(詳細は、後述する)。
B.データリンク層154
データリンク層154の主な役割は、エラー検出/訂正(再送)によりトランザクションレイヤパケット(TLP)のデータ完全性を保証することと、リンク管理である。データリンク層154間では、リンク管理やフロー制御のためのパケットのやり取りを行う。このパケットは、トランザクションレイヤパケット(TLP)と区別するために、データリンクレイヤパケット(DLLP)と呼ばれる。
C.物理層155
物理層155は、ドライバ、入力バッファ、パラレル−シリアル/シリアル−パラレル変換器、PLL、インピーダンス整合回路といったインタフェース動作に必要な回路を含んでいる。また、論理的な機能としてインタフェースの初期化・保守の機能を持つ。物理層155は、データリンク層154/トランザクション層153を実際のリンクで使用される信号技術から独立させる役目も持っている。
なお、PCI Expressのハードウェア構成上、エンベデッド・クロックという技術を採用しており、クロック信号はなく、クロックのタイミングはデータ信号中に埋め込まれており、受信側でデータ信号のクロス・ポイントを基にクロックを抽出する方式とされている。
[コンフィグレーション空間]
PCI Expressは、従来のPCIと同様にコンフィグレーション空間を持つが、その大きさは従来のPCIが256バイトであるのに対して、図10に示すように、4096バイトへと拡張されている。これにより、多数のデバイス固有レジスタセットを必要とするデバイス(ホストブリッジなど)に対しても、将来的に十分な空間が確保されている。PCI Expressでは、コンフィグレーション空間へのアクセスは、フラットなメモリ空間へのアクセス(コンフィグレーションリード/ライト)で行われ、バス/デバイス/機能/レジスタ番号はメモリアドレスにマップされている。
当該空間の先頭256バイトは、PCIコンフィグレーション空間として、BIOSや従来のOSからI/Oポートを使用した方法でもアクセスできる。従来のアクセスをPCI Expressでのアクセスに変換する機能は、ホストブリッジ上に実装される。00hから3FhまではPCI2.3互換のコンフィグレーションヘッダとなっている。これにより、PCI Expressで拡張された機能以外であれば、従来のOSやソフトウェアをそのまま使用することができる。即ち、PCI Expressにおけるソフトウェア層は、既存のPCIと互換性を保ったロード・ストア・アーキテクチャ(プロセッサが直接I/Oレジスタをアクセスする方式)を継承している。しかし、PCI Expressで拡張された機能(例えば、同期転送やRAS(Reliability,Availability and Serviceability)などの機能)を使用するには、4KバイトのPCI Express拡張空間にアクセスできるようにする必要がある。
なお、PCI Expressとしては様々なフォームファクタ(形状)が考えられるが、具体化している例としては、アドインカード、プラグインカード(Express Card)、Mini PCI Expressなどがある。
[PCI Express のアーキテクチャの詳細]
PCI Express のアーキテクチャの中心となっているトランザクション層153、データリンク層154、物理層155について、各々詳細に説明する。
A.トランザクション層153
トランザクション層153の主な役割は、前述したように、上位のソフトウェア層151と下位のデータリンク層154との間でトランザクションレイヤパケット(TLP)の組み立てと分解を行うことである。
a.アドレス空間とトランザクションタイプ
PCI Expressでは、従来のPCIでサポートされていたメモリ空間(メモリ空間とのデータ転送用)、I/O空間(I/O空間とのデータ転送用)、コンフィグレーション空間(デバイスのコンフィグレーションとセットアップ用)に加えて、メッセージ空間(PCI Expressデバイス間のインバンドでのイベント通知や一般的なメッセージ送信(交換)用…割り込み要求や確認は、メッセージを「仮想ワイヤ」として使用することにより伝達される)が追加され、4つのアドレス空間が定義されている。各々の空間に対してトランザクションタイプが定義されている(メモリ空間、I/O空間、コンフィグレーション空間は、リード/ライト、メッセージ空間は基本(ベンダ定義含む))。
b.トランザクションレイヤパケット(TLP)
PCI Expressは、パケット単位で通信を行う。図9に示したトランザクションレイヤパケット(TLP)のフォーマットにおいて、ヘッダのヘッダ長は3DW(DWはダブルワードの略;合計12バイト)又は4DW(16バイト)で、トランザクションレイヤパケット(TLP)のフォーマット(ヘッダ長とペイロードの有無)、トランザクションタイプ、トラフィッククラス(TC)、アトリビュートやペイロード長などの情報が含まれる。パケット内の最大ペイロード長は1024DW(4096バイト)である。
ECRCは、エンドツーエンドのデータ完全性を保証するためのもので、トランザクションレイヤパケット(TLP)部分の32ビットCRCである。これは、スイッチ内部などでトランザクションレイヤパケット(TLP)にエラーが発生した場合、LCRC(リンクCRC)ではエラーを検出できないためである(エラーとなったTLPでLCRCが再計算されるため)。
リクエストは、完了パケットが不要なものと必要なものとがある。
c.トラフィッククラス(TC)と仮想チャネル(VC)
上位のソフトウェアは、トラフィッククラス(TC)を使用することによりトラフィックの差別化(優先度をつける)を行うことができる。例えば、映像データをネットワークのデータよりも優先して転送する、といったことが可能となる。トラフィッククラス(TC)はTC0からTC7まで8つある。
仮想チャネル(VC:Virtual Channel)は、各々独立した仮想通信バス(同一のリンクを共用する複数の独立したデータ・フロー・バッファを使用するメカニズム)で、各々がリソース(バッファやキュー)を持ち、図11に示すように、独立したフロー制御を行う。これにより、1つの仮想チャネルのバッファが満杯の状態(full)になっても、他の仮想チャネルの転送を行うことができる。つまり、物理的には1つのリンクを仮想的な複数のチャネルに分けることで、有効に使用することができる。例えば、図11中に示すように、スイッチを経由してルートのリンクが複数のデバイスに分かれる場合、各デバイスのトラフィックの優先度を制御することができる。VC0は必須で、コストパフォーマンスのトレードオフに応じてその他の仮想チャネル(VC1〜VC7)が実装される。図11中の実線矢印は、デフォルト仮想チャネル(VC0)を示し、破線矢印はその他の仮想チャネル(VC1〜VC7)を示している。
トランザクション層内では、トラフィッククラス(TC)が仮想チャネル(VC)にマッピングされる。1つの仮想チャネル(VC)に対して1つ又は複数のトラフィッククラス(TC)をマッピングできる(仮想チャネル(VC)の数が少ない場合)。単純な例では、各トラフィッククラス(TC)から各仮想チャネル(VC)に1対1、全てのトラフィッククラス(TC)を仮想チャネルVC0にマッピングする、といったことが考えられる。TC0−VC0のマッピングは、必須/固定で、それ以外のマッピングは上位のソフトウェアから制御される。ソフトウェアはトラフィッククラス(TC)を利用することで、トランザクションの優先度を制御することが可能となる。
d.フロー制御
受信バッファのオーバーフローを避け、伝送順序を確立するためにフロー制御(FC:Flow Control)が行われる。フロー制御は、リンク間のポイントツーポイントで行われ、エンドツーエンドではない。従って、フロー制御により最終的な相手(コンプリータ)にパケットが届いたことを確認することはできない。
PCI Expressのフロー制御は、クレジット・ベースで行われる(データ転送を始める前に、受け取り側のバッファの空き状況を確認し、オーバーフロー、アンダフローが発生しないメカニズム)。即ち、受信側はリンク初期化時にバッファ容量(クレジット値)を送信側に通知し、送信側はクレジット値と送信するパケットの長さとを比較し、一定の残りがある場合のみパケットを送信する。このクレジットには6種類ある。
フロー制御の情報交換はデータリンク層のデータリンクレイヤパケット(DLLP)を使用して行われる。フロー制御はトランザクションレイヤパケット(TLP)のみに適用され、データリンクレイヤパケット(DLLP)には適用されない(DLLPは常時送受信可能)。
B.データリンク層154
データリンク層154の主な役割は、前述したように、リンク上の2つのコンポーネント間での信頼性の高いトランザクションレイヤパケット(TLP)交換機能を提供することである。
a.トランザクションレイヤパケット(TLP)の扱い
トランザクション層153から受け取ったトランザクションレイヤパケット(TLP)に対しては、先頭に2バイトのシーケンス番号、末尾に4バイトのリンクCRC(LCRC)を付加して、物理層155に渡す(図9参照)。トランザクションレイヤパケット(TLP)は、リトライバッファに保管され、相手から受信確認(ACK)が届くまで再送される。トランザクションレイヤパケット(TLP)の送信に失敗が続いた場合は、リンク異常であると判断して物理層155に対してリンクの再トレーニングを要求する。リンクのトレーニングが失敗した場合、データリンク層154の状態はインアクティブに遷移する。
物理層155から受け取ったトランザクションレイヤパケット(TLP)は、シーケンス番号とリンクCRC(LCRC)が検査され、正常であればトランザクション層153に渡され、エラーがあった場合は再送を要求する。
b.データリンクレイヤパケット(DLLP)
トランザクションレイヤパケット(TLP)は、物理層から送信されるときに自動的に図12に示すようなデータリンクレイヤパケット(DLLP)に分割されて各レーンに送信される。データリンク層154が生成するパケットは、データリンクレイヤパケット(DLLP)と呼ばれ、データリンク層154間でやり取りされる。データリンクレイヤパケット(DLLP)には、
・Ack/Nak:TLPの受信確認、リトライ(再送)
・InitFC1/InitFC2/UpdateFC:フロー制御の初期化とアップデート
・電源管理のためのDLLP
なる種類がある。
図12に示すように、データリンクレイヤパケット(DLLP)の長さは6バイトで、種類を示すDLLPタイプ(1バイト)、DLLPの種類で固有の情報(3バイト)、CRC(2バイト)から構成される。
C.物理層−論理サブブロック156
図8中に示す物理層155の論理サブブロック156での主な役割は、データリンク層154から受け取ったパケットを電気サブブロック157で送信できる形式に変換することである。また、物理層155を制御/管理する機能も有する。
a.データ符号化とパラレル−シリアル変換
PCI Expressは、連続した“0”や“1”が続かないように(長い期間、クロス・ポイントが存在しない状態が続かないようにするため)、データ符号化に8B/10B変換を用いる。変換されたデータは、図13中に示すように、シリアル変換され、LSBからレーン上に送信される。ここに、レーンが複数ある場合は(図13はx4リンクの場合を例示している)、符号化の前にデータがバイト単位で各レーンに割り振られる。この場合、一見パラレル・バスのようにみえるが、レーン毎に独立した転送を行うので、パラレル・バスで問題となるスキューが大幅に緩和される。
b.電源管理とリンクステート
リンクの消費電力を低く抑えるために、図14に示すように、L0/L0s/L1/L2というリンクステートが定義されている。
L0が通常モードで、L0sからL2へと低消費電力となるが、L0への復帰にも時間がかかるようになる。図15に示すように、ソフトウェアによる電源管理に加えて、アクティブステート電源管理を積極的に行うことにより、消費電力を極力小さくすることが可能となる。
D.物理層−電気サブブロック157
物理層155の電気サブブロック157での主な役割は、論理サブブロック156でシリアル化されたデータをレーン上に送信することと、レーン上のデータを受信して論理サブブロック156に渡すことである。
a.ACカップリング
リンクの送信側では、ACカップリング用のコンデンサが実装される。これにより、送信側と受信側のDCコモンモード電圧が同一である必要がなくなる。このため、送信側と受信側で異なる設計、半導体プロセス、電源電圧を使用することが可能となる。
b.デエンファシス
PCI Expressでは、前述したように、8B/10Bエンコーディングによってできるだけ連続した“0”や“1”が続かないように処理されるが、連続した“0”や“1”が続くこともある(最大5回)。この場合、送信側はデエンファシス転送を行わなければならないことが規定されている。同一極性のビットが連続する場合は、2つ目のビットからは差動電圧レベル(振幅)を3.5±0.5dB落とすことで、受信側で受け取る信号のノイズ・マージンを稼ぐ必要がある。これを、デエンファシスという。伝送路の周波数依存性減衰のため、変化するビットの場合は高周波成分が多く、減衰により受信側の波形が小さくなるが、変化しないビットの場合は高周波成分が少なく、相対的に受信側の波形が大きくなる。このため、受信側での波形を一定とするためにデエンファシスを行う。
[Advanced Switch Interconnectとは]
次に、本実施の形態は上述したPCI Expressの技術を活用したAdvanced Switch Interconnectを利用するものであり、本実施の形態の前提として当該Advanced Switch Interconnectの概要について説明する。
近年においては、ブロードバンドと半導体技術の進歩を背景としたコンピューティングと通信の融合が急速に進み、新たなアプリケーションシステムに幅広く対応できる規格の出現が望まれるようになってきている。そこで登場してきたのがPCI Expressの技術を活用したASI(Advanced Switching Interconnect)規格であり、コンピューティングから通信まで幅広いアプリケーションに適用することを想定している。ASI仕様の策定と普及は非営利団体であるASI-SIG(Advanced Switching Interconnect Special Interest Groupe)によって運営されている。
[Advanced Switch Interconnect技術の概要]
次に、Advanced Switch Interconnect技術の概要について説明する。
まず、PCI ExpressとASI(Advanced Switching Interconnect)の関係について説明する。図16に、PCI ExpressとASI(Advanced Switching Interconnect)のプロトコルスタックの関係を示す。ASI(Advanced Switching Interconnect)はPCI Expressの高速シリアル伝送の物理層とリンク層の技術をそのまま採用しつつ、より広範囲なアプリケーションに対応できるようにしたものであり、その接続対象はChip-to-Chip, Board-to-Boardを想定している。PCI Expressはコンピューティングで培われてきたPCIのトランザクションをそのまま継承しているが、ASI(Advanced Switching Interconnect)ではPCI Expressのトランザクション層を入れ替えて機能を拡張しており、より高度なデータフローとプロトコルに対応出来るようにしている。また、接続構造もPCI Expressのツリー構造から、より自由度の高いファブリック構造が出来るように拡張されており、マルチCPU環境にも対応している。ASI(Advanced Switching Interconnect)では、同様のファブリック構造が可能な他の規格(Ethernet(登録商標),InfiniBand等)よりもルーティング手法が格段に改善され、高速化が図られている。
図16に示すファブリック管理機能(AS Fabric Mngmnt)は、ソフトウェアで構成されるASI(Advanced Switching Interconnect)プロトコルの一部であり、接続セットアップや取り外し、イベント管理、パフォーマンスおよび稼動状況のモニタ、リダンダント・ルート、パスの無効化、リソース割り振り、負荷の平準化のような種々のサービスをサポートする。図17は、ファブリック管理機能における初期化シーケンスを示すものである。
ASI(Advanced Switching Interconnect)では、図18に示すように、各種プロトコルをカプセル化する手法を採用することで、より高度なプロトコル(TCP/IP,Fibre Channel等)サービスの高速化を実現しようとしている。ASI(Advanced Switching Interconnect)の上位層にはPEI(Protocol Encapsulation Interface)と呼ばれる部分があり、外部から到達した各種パケットにASIヘッダを付加し、ASIパケットに変換する機能をもっている。ASIファブリックを通過したパケットは受信側のPEIでASIヘッダがはずされ、元のパケットとして抽出される。上流のプロトコルインタフェースはPI(パイ)と呼ばれ、各種標準に対応できる他、AS Native,Vendor Specificプロトコルも実装できる仕組みを採用している。PCI ExpressとASI(Advanced Switching Interconnect)をブリッジで接続しPCI Expressプロトコルをカプセル化し転送するプロファイルは、PI-8として定義されている。
[Advanced Switch Interconnect技術の特徴]
ASI(Advanced Switching Interconnect)はPCI Expressの特徴である、高速性、バンド幅のスケーラビリティ、階層構造による物理層の拡張性、データの信頼性等に加えて、以下に示すようなASI(Advanced Switching Interconnect)独自の特徴がある。
・動画等のunreliable(lossy)パケット伝送への対応
・マルチキャスト、ブロードキャストパケットへの対応
・カプセル化によるマルチプロトコル伝送
・高速な独自のパスルーティング方式の採用
・輻輳管理機能のサポート
・ファブリック構造への対応
このような特徴により、図19に示すような複数デバイス間のストレージやIOリソースの共有が可能となる。また、これまでPCI,PCI-X,PCI Express,HyperTransport,RapidIO,StarFabricなどの規格は、同じロード/ストアプロトコルを使っていても物理層が異なるために複雑な接続手段が必要であったが、ASI(Advanced Switching Interconnect)技術を利用することで図20に示すような相互通信もシンプルに実現できるようになり、デバイス間の通信速度が高速化される。また、各種上位プロトコルをトンネルさせることにより、TCP/IP等の通信を通常のEthernet(登録商標)の処理よりも高速に実現する局所システムを構築することも可能となる。更に、ファブリック構造への対応などでシステムに冗長性を持たせてロバスト性を向上させたり、動的なルーティングパスの切り替えができるようになる。
加えて、Advanced Switching Interconnectは、PCI Expressの物理層およびデータリンク層を最適化されたトランザクション層と重ね合わせたもので、様々な機能を提供する。トランザクション層の特徴的な機能としては、マルチレベルのQoS(Quality of Service)がある。QoSは、20の仮想チャネル(VC:Virtual Channel)と8つのトラフィッククラス(TC)をサポートしている。
ASI(Advanced Switching Interconnect)を制御する上位のソフトウェアであるファブリック管理機能(AS Fabric Mngmnt)は、トラフィッククラス(TC)を使用することによりトラフィックの差別化(優先度をつける)を行うことができる。例えば、映像データをネットワークのデータよりも優先して転送する、といったことが可能となる。トラフィッククラス(TC)はTC0からTC7まで8つある。
仮想チャネル(VC:Virtual Channel)は、各々独立した仮想通信バス(同一のリンクを共用する複数の独立したデータ・フロー・バッファを使用するメカニズム)で、各々がリソース(バッファやキュー)を持ち、独立したフロー制御を行う。これにより、1つの仮想チャネルのバッファが満杯の状態(full)になっても、他の仮想チャネルの転送を行うことができる。つまり、物理的には1つのリンクを仮想的な複数のチャネルに分けることで、有効に使用することができる。
トランザクション層内では、トラフィッククラス(TC)が仮想チャネル(VC)にマッピングされる。1つの仮想チャネル(VC)に対して1つ又は複数のトラフィッククラス(TC)をマッピングできる(仮想チャネル(VC)の数が少ない場合)。単純な例では、各トラフィッククラス(TC)から各仮想チャネル(VC)に1対1、全てのトラフィッククラス(TC)を仮想チャネルVC0にマッピングする、といったことが考えられる。TC0−VC0のマッピングは、必須/固定で、それ以外のマッピングは上位のソフトウェアから制御される。ソフトウェアはトラフィッククラス(TC)を利用することで、トランザクションの優先度を制御することが可能となる。
また、ASIファブリック内では、過大なトラフィックが発生することによるCongestion状態が発生することがある。Congestion状態に陥ると、パケットの応答時間が長くなり、一定のサービスレベルが維持できなくなるという問題がある。そこで、ASI(Advanced Switching Interconnect)規格では、Congestion Management機能としてStatus-Based Flow Control(SBFC)を備えることにより、この問題の解決を図っている。
ここで、Congestion Managementについて具体的に説明する。図21−1に示すように、3つのスイッチにトラフィック1−3が存在している場合において、最初にトラフィック1とトラフィック2が、所望のデータ転送を行っていたとする。ここで、トラフィック3としてポートAの能力以上の過大なトラフィックが発生したとする。この影響は、同じ出力ポートAへのトラフィック2の減少となって現れる。また、トラフィック2のみならず、トラフィック2と同じリンクを経由するトラフィック1のトラフィックも減少してしまう。
そこで、図21−2に示すように、SBFCを用いてポートAが混んでいる事を隣のスイッチに伝えることにより、トラフィック2の出力を抑えることができるようになるので、トラフィック1がトラフィック2の影響を受けなくなる。
ところで、ASI(Advanced Switching Interconnect)の仮想チャネル(VC)には、下記に示すような3つのタイプがある。
BVC(Bypass Capable Unicast) : VC Ids 0−7
OVC(Ordered-Only Unicast) : VC Ids 8−15
MVC(Multicast) : VC Ids 16−19
BVC(Bypass Capable Unicast)は、図22に示すように、先に入力されたQueueをバイパスさせ、後から入力されたQueueがアービタ(調停回路)から抜けていくことを許しているものである。
OVC(Ordered-Only Unicast)は、図23に示すように、先に入力されたQueueがそのまま出力されるものである。
MVC(Multicast)は、図24に示すように、入力されたQueueがマルチキャスト出力されるものである。
[情報処理装置の構成]
図25は、本発明の第1の実施の形態の情報処理装置1の構成例を示す概略ブロック図である。本実施の形態にかかる情報処理装置1は、例えばMFP(Multi Function Peripheral)等の機器に適用されるもので、高速シリアルスイッチファブリックであるASI(Advanced Switching Interconnect)2を介して各種のエンドポイントデバイスやスイッチ出力ポート(以下、デバイスという)をそれぞれ接続している。ここでは、ASI2に接続される各種のデバイスとして、システムコントローラ3、画像入力デバイスであるスキャナ4、画像出力デバイスである第1のプロッタ5および第2のプロッタ6、記憶デバイスである画像メモリ7、画像処理ユニット8、外部I/O9、オペレーションパネル10を接続している。
システムコントローラ3は、インストールされているプログラム(ソフトウェア)に従い当該装置全体の制御を受け持つCPU(Central Processing Unit)等を含み、経路制御や経路判断等の処理を行うデバイス部分(プリンタコントローラ)を意味する。
スキャナ4とは、原稿画像等に基づく画像データを当該システム内に取り込むためのデバイスやユニット部分を示し、例えば、原稿画像を光電的に読み取って画像データを取得するスキャナエンジン等により構成されている。
第1のプロッタ5および第2のプロッタ6とは、画像データを紙などに印刷出力するデバイスやユニット部分を示し、例えば、電子写真方式のプロッタ(プリンタ)エンジン等により構成されている。なお、プロッタ5の印刷方式は、電子写真方式のほか、インクジェット方式、昇華型熱転写方式、銀塩写真方式、直接感熱記録方式、溶融型熱転写方式など、様々な方式を用いることができる。
画像メモリ7は、HDD(Hard Disk Drive)やRAM(Random Access Memory)などであり、スキャナ4で読み取った画像データなどを格納する。
画像処理ユニット8は、スキャナ4で読み取った画像データなどに対し、ユーザ指示に応じて、あるいは情報処理装置1の持つ特性に応じて各種画像処理を実行する。画像処理ユニット13は、処理後の画像データを第1のプロッタ5および第2のプロッタ6に出力する。
外部I/O9は、接続された他の機器との間で画像データや制御データ等のやり取りを行うものである。
オペレーションパネル10は、タッチパネルや表示パネルを備えており、装置に対する各種命令の入力を受け付ける。
ここで、本実施の形態の情報処理装置1が備える特徴的な機能について説明する。本実施の形態の情報処理装置1においては、複数のプロッタ(第1のプロッタ5および第2のプロッタ6)に対するトラフィックを別々の仮想チャネル(VC:Virtual Channel)に割り当てるようにしている。この点について、以下に詳述する。
図26は、情報処理装置1の構成を部分的に詳細に示すブロック図である。図26は、特に、システムコントローラ3と第1のプロッタ5と第2のプロッタ6を、ASI2を経由して接続した様子を示している。各デバイスの構成は、トランザクション層(TL),データリンク層(DL),物理層(PL)からなる通信コア20と、通信コア部分以外のデバイス固有の機能(システムコントローラ3におけるデータ蓄積部11およびプリンタジョブ制御部12、第1のプロッタ5:データ出力部13およびプロッタ制御部14、第2のプロッタ6:データ出力部15およびプロッタ制御部16)と、から構成される。
図26に示すように、システムコントローラ3の出力ポートの通信コア20におけるトランザクション層(TL)には、VC1とVC2の2種類の仮想チャネルが存在する。また、ASI2の入力ポートのトランザクション層(TL)には、VC1とVC2の2種類の仮想チャネルが存在する。加えて、ASI2の第1のプロッタ5向けの出力ポートのトランザクション層(TL)にはVC1が存在し、ASI2の第2のプロッタ6向けの出力ポートのトランザクション層(TL)にはVC2の仮想チャネルが存在する。さらに、第1のプロッタ5の入力ポートの通信コア20におけるトランザクション層(TL)にはVC1の仮想チャネルが存在し、第2のプロッタ6の入力ポートの通信コア20におけるトランザクション層(TL)にはVC2の仮想チャネルが存在する。
このような構成により、システムコントローラ3と第1のプロッタ5間のトラフィックは、VC1の仮想チャネルに割り当てられ、システムコントローラ3と第2のプロッタ6間のトラフィックは、VC2の仮想チャネルに割り当てられる。ここに、仮想チャネル割当手段が実現されている。
次に、システムコントローラ3から画像データが送信された場合における挙動について説明する。
システムコントローラ3のデータ蓄積部11に格納された第1のプロッタ5向けの画像データは、図26に示すように、トラフィック1−1,トラフィック1−2となってASI2に転送され、その後トラフィック1−3,トラフィック1−4となって、トラフィック1−5で第1のプロッタ5のデータ出力部13に入力され、データ出力部13から印刷される。同様に、システムコントローラ3のデータ蓄積部11に格納された第2のプロッタ6向けの画像データは、図26に示すように、トラフィック2−1,トラフィック2−2となってASI2に転送され、その後トラフィック2−3,トラフィック2−4となって、トラフィック2−5で第2のプロッタ6のデータ出力部15に入力され、データ出力部15から印刷される。つまり、ASI2の入力ポートまでは、第1のプロッタ5向けと第2のプロッタ6向けのトラフィックは同一のバッファを共有する。
ここで、図27はシステムコントローラ3が備えるプリンタジョブ制御部12における処理の流れを示すフローチャートである。図27に示すように、プリンタジョブ制御部12では、2つのプロッタ(第1のプロッタ5および第2のプロッタ6)に対するジョブの分配を決定し(ステップS1)、プリント動作を開始する(ステップS2)。その後、特にエラーが発生しなければ(ステップS3のNo)、ジョブの完了まで待ってプリント動作を終了する(ステップS4)。
一方、図28に示すように、ASI2と第2のプロッタ6との間の物理層のリンクダウンが生じた場合には、エラーが発生する。このような場合には、ASI2からシステムコントローラ3のプリンタジョブ制御部12に対して、リンクダウンが発生したことが通知される(トラフィック3−1)。このエラー通知を受信した場合には(ステップS3のYes:第1判断手段)、プリンタジョブ制御部12は、ジョブの再配分を行う(ステップS1:第1再分配手段)。なお、ジョブの再配分の方法としては各種の方法が考えられる。例えば、第2のプロッタ6に割り当てられていたジョブを、第1のプロッタ5に対して投入する、などである。
上述のように、ASI2の第2のプロッタ6向けの出力ポートのトランザクション層(TL)の送信バッファ(VC2)がデータで一杯になってしまったような場合であっても、システムコントローラ3と第1のプロッタ5間のトラフィックはVC1に割り当てられ、システムコントローラ3と第2のプロッタ6間のトラフィックはVC2に割り当てられており、第2のプロッタ6に割り当てられていたジョブの再配分を行うことにより、他方のトラフィックを滞らせることなく、かつ、ジョブを欠落させることなく、所望の出力を得ることができる。
このように本実施の形態によれば、複数のデバイスに対するトラフィックを異なる仮想チャネルに割り当て、高速シリアルスイッチファブリックと一のデバイスとの間の物理層のリンクダウンが生じていると判断した場合、ジョブが欠落しないように、他のデバイスへのジョブの出力配分を再配分する。これにより、複数のデバイスに対するトラフィックを異なる仮想チャネルに割り当てることができるので、一方のデバイスがエラーによりデータ転送が停止したとしても、高速シリアルスイッチファブリック内部における通信経路におけるデッドロックを回避しているため、全体での生産性の低下を可能な限り減らすことができる。
また、一のデバイスに割り当てられていたジョブを、他のデバイスに対して投入することにより、デバイスエラー発生時に、複数のデバイスへの出力配分を再配分する制御をおこない、当初、エラーが発生したデバイスに割り当てられていた作業を、必要に応じて正常動作しているデバイスに割り当てなおすことで、全体での生産性の低下を可能な限り減らすことができる。
[第2の実施の形態]
次に、本発明の第2の実施の形態を図29および図30に基づいて説明する。なお、前述した第1の実施の形態と同じ部分は同じ符号で示し説明も省略する。
本実施の形態は、第1の実施の形態で説明したようにASI2と第2のプロッタ6との間の物理層のリンクダウンが生じた後に、ASI2の第2のプロッタ6との間の物理層のリンクが正常復帰した場合について説明する。
ここで、図29は本発明の第2の実施の形態のシステムコントローラ3が備えるプリンタジョブ制御部12における処理の流れを示すフローチャートである。図29に示すように、プリンタジョブ制御部12では、2つのプロッタ(第1のプロッタ5および第2のプロッタ6)に対するジョブの分配を決定し(ステップS11)、プリント動作を開始する(ステップS12)。その後、特にエラーが発生しなければ(ステップS13のNo)、ジョブの完了まで待ってプリント動作を終了する(ステップS15)。
一方、図29に示すように、ASI2と第2のプロッタ6との間の物理層のリンクダウンが生じた場合には、エラーが発生する。このような場合には、ASI2からシステムコントローラ3のプリンタジョブ制御部12に対して、リンクダウンが発生したことが通知される(トラフィック3−1)。このエラー通知を受信した場合には(ステップS13のYes:第1判断手段)、プリンタジョブ制御部12は、ジョブの再配分を行う(ステップS11:第1再分配手段)。なお、ジョブの再配分の方法としては各種の方法が考えられる。例えば、第2のプロッタ6に割り当てられていたジョブを第1のプロッタ5に対して投入する、などである。
その後、スイッチとプロッタ2間の物理層のリンクが正常復帰した場合には、図30のトラフィック3−1に示すように、第2のプロッタ6のプロッタ制御部16からシステムコントローラ3のプリンタジョブ制御部12に対して、エラー復帰通知がおこなわれる。プリンタジョブ制御部12は、エラー復帰通知を受信すると(ステップS14のYes:第2判断手段)、ジョブの再配分を行う(ステップS11:第2再分配手段)。
なお、ジョブの再配分の方法としては各種の方法が考えられる。例えば、第1のプロッタ5用に残存しているジョブの半分を第2のプロッタ6に割り当て、第1のプロッタ5と第2のプロッタ6に対して投入する。これにより、最終的な生産性が向上し、所望の出力を得ることが出来る。
このように本実施の形態によれば、高速シリアルスイッチファブリックと一のデバイスとの間の物理層のリンクが正常復帰したと判断した場合、他のデバイスへのジョブの出力配分を再配分することにより、デバイスエラー発生時に、複数のデバイスへの出力配分を再配分する制御をおこない、当初、エラーが発生したデバイスに割り当てられていた作業を、必要に応じて正常動作しているデバイスに割り当てなおし、更に、エラーが発生していたデバイスが正常状態に復帰した場合に、複数のデバイスへの出力配分を再配分する制御をおこない、復帰したデバイスに作業を割り当てなおすことで、全体での生産性の低下を可能な限り減らすことができる。
既存PCIシステムの構成例を示すブロック図である。 PCI Expressシステムの構成例を示すブロック図である。 デスクトップ/モバイルでのPCI Expressプラットホームの構成例を示すブロック図である。 x4の場合の物理層の構造例を示す模式図である。 デバイス間のレーン接続例を示す模式図である。 スイッチの論理的構造例を示すブロック図である。 既存のPCIのアーキテクチャを示すブロック図である。 PCI Expressのアーキテクチャを示すブロック図である。 PCI Expressの階層構造を示すブロック図である。 トランザクションレイヤパケットのフォーマット例を示す説明図である。 PCI Expressのコンフィグレーション空間を示す説明図である。 仮想チャネルの概念を説明するための模式図である。 データリンクレイヤパケットのフォーマット例を示す説明図である。 x4リンクでのバイトストライピング例を示す模式図である。 L0/L0s/L1/L2というリンクステートの定義について説明する説明図である。 アクティブステート電源管理の制御例を示すタイムチャートである。 PCI ExpressアーキテクチャとAdvanced Switching Interconnectの関係を示す説明図である。 ファブリック管理機能における初期化シーケンスを示す説明図である。 Advanced Switching Interconnectにおけるプロトコルのカプセル化を示す説明図である。 Advanced Switching Interconnectによる複数デバイス間のストレージやIOリソースの共有を示す説明図である。 Advanced Switching Interconnectによる通信例を示す説明図である。 Congestion Managementについて示す説明図である。 Congestion Managementについて示す説明図である。 BVC(Bypass Capable Unicast)を説明するための模式図である。 OVC(Ordered-Only Unicast)を説明するための模式図である。 MVC(Multicast)を説明するための模式図である。 本発明の第1の実施の形態の情報処理装置の構成例を示す概略ブロック図である。 情報処理装置の構成を部分的に詳細に示すブロック図である。 プリンタジョブ制御部における処理の流れを示すフローチャートである。 ASIと第2のプロッタとの間の物理層のリンクダウンが生じた場合を示すブロック図である。 本発明の第2の実施の形態のプリンタジョブ制御部における処理の流れを示すフローチャートである。 ASIと第2のプロッタとの間の物理層のリンクが正常復帰した場合を示すブロック図である。
符号の説明
1 情報処理装置
2 高速シリアルスイッチファブリック
5,6 デバイス

Claims (8)

  1. トラフィックの差別化を行うことができるトラフィッククラスを仮想チャネルに対してマッピング可能な高速シリアルスイッチファブリックを介して複数のデバイスを接続した情報処理装置において、
    前記複数のデバイスに対するトラフィックを異なる前記仮想チャネルに割り当てる仮想チャネル割当手段と、
    前記高速シリアルスイッチファブリックと一の前記デバイスとの間の物理層のリンクダウンが生じたか否かを判断する第1判断手段と、
    前記高速シリアルスイッチファブリックと一の前記デバイスとの間の物理層のリンクダウンが生じていると判断した場合、ジョブが欠落しないように、他の前記デバイスへのジョブの出力配分を再配分する第1再配分手段と、
    を備えることを特徴とする情報処理装置。
  2. 前記第1再配分手段は、一の前記デバイスに割り当てられていたジョブを、他の前記デバイスに対して投入する、
    ことを特徴とする請求項1記載の情報処理装置。
  3. 前記高速シリアルスイッチファブリックと一の前記デバイスとの間の物理層のリンクが正常復帰したか否かを判断する第2判断手段と、
    前記高速シリアルスイッチファブリックと一の前記デバイスとの間の物理層のリンクが正常復帰したと判断した場合、他の前記デバイスへのジョブの出力配分を再配分する第2再配分手段と、
    を備えることを特徴とする請求項1または2記載の情報処理装置。
  4. 前記第2再配分手段は、他の前記デバイス用に残存しているジョブの半分を、リンクが正常復帰した一の前記デバイスに割り当て、一の前記デバイスと他の前記デバイスに対して投入する、
    ことを特徴とする請求項3記載の情報処理装置。
  5. トラフィックの差別化を行うことができるトラフィッククラスを仮想チャネルに対してマッピング可能な高速シリアルスイッチファブリックを介して複数のデバイスを接続した情報処理装置で実行されるデータ通信方法であって、
    前記情報処理装置は、制御部を備え、
    前記制御部において実行される、
    仮想チャネル割当手段が、前記複数のデバイスに対するトラフィックを異なる前記仮想チャネルに割り当てるステップと、
    第1判断手段が、前記高速シリアルスイッチファブリックと一の前記デバイスとの間の物理層のリンクダウンが生じたか否かを判断するステップと、
    第1再配分手段が、前記高速シリアルスイッチファブリックと一の前記デバイスとの間の物理層のリンクダウンが生じていると判断した場合、ジョブが欠落しないように、他の前記デバイスへのジョブの出力配分を再配分するステップと、
    を含むことを特徴とするデータ通信方法。
  6. 前記第1再配分手段は、一の前記デバイスに割り当てられていたジョブを、他の前記デバイスに対して投入する、
    ことを特徴とする請求項5記載のデータ通信方法。
  7. 前記制御部において実行される、
    第2判断手段が、前記高速シリアルスイッチファブリックと一の前記デバイスとの間の物理層のリンクが正常復帰したか否かを判断するステップと、
    第2再配分手段が、前記高速シリアルスイッチファブリックと一の前記デバイスとの間の物理層のリンクが正常復帰したと判断した場合、他の前記デバイスへのジョブの出力配分を再配分するステップと、
    を含むことを特徴とする請求項5または6記載のデータ通信方法。
  8. 前記第2再配分手段は、他の前記デバイス用に残存しているジョブの半分を、リンクが正常復帰した一の前記デバイスに割り当て、一の前記デバイスと他の前記デバイスに対して投入する、
    ことを特徴とする請求項7記載のデータ通信方法。
JP2008002474A 2008-01-09 2008-01-09 情報処理装置およびデータ通信方法 Pending JP2009163633A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008002474A JP2009163633A (ja) 2008-01-09 2008-01-09 情報処理装置およびデータ通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008002474A JP2009163633A (ja) 2008-01-09 2008-01-09 情報処理装置およびデータ通信方法

Publications (1)

Publication Number Publication Date
JP2009163633A true JP2009163633A (ja) 2009-07-23

Family

ID=40966155

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008002474A Pending JP2009163633A (ja) 2008-01-09 2008-01-09 情報処理装置およびデータ通信方法

Country Status (1)

Country Link
JP (1) JP2009163633A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140082630A (ko) * 2012-10-27 2014-07-02 후아웨이 테크놀러지 컴퍼니 리미티드 Pcie 스위칭 네트워크에서 패킷 전송을 실행하기 위한 방법, 장치, 시스템, 및 저장 매체
JP2019175424A (ja) * 2018-03-29 2019-10-10 廣達電腦股▲ふん▼有限公司Quanta Computer Inc. ケーブルのエラーをチェックする方法及びシステム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02253441A (ja) * 1989-03-28 1990-10-12 Nec Corp 計算機システムの装置切換方式
JPH1078894A (ja) * 1996-09-03 1998-03-24 Hitachi Ltd 計算機システムの障害回復支援方法
JP2002200828A (ja) * 2000-10-23 2002-07-16 Canon Inc 情報処理装置、制御方法及び記憶媒体
JP2006331179A (ja) * 2005-05-27 2006-12-07 Canon Inc 周辺装置制御システム、情報処理装置、情報処理装置の制御方法、プログラム
JP2007282187A (ja) * 2006-03-16 2007-10-25 Ricoh Co Ltd 情報処理装置、情報処理システムおよびデータ通信方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02253441A (ja) * 1989-03-28 1990-10-12 Nec Corp 計算機システムの装置切換方式
JPH1078894A (ja) * 1996-09-03 1998-03-24 Hitachi Ltd 計算機システムの障害回復支援方法
JP2002200828A (ja) * 2000-10-23 2002-07-16 Canon Inc 情報処理装置、制御方法及び記憶媒体
JP2006331179A (ja) * 2005-05-27 2006-12-07 Canon Inc 周辺装置制御システム、情報処理装置、情報処理装置の制御方法、プログラム
JP2007282187A (ja) * 2006-03-16 2007-10-25 Ricoh Co Ltd 情報処理装置、情報処理システムおよびデータ通信方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140082630A (ko) * 2012-10-27 2014-07-02 후아웨이 테크놀러지 컴퍼니 리미티드 Pcie 스위칭 네트워크에서 패킷 전송을 실행하기 위한 방법, 장치, 시스템, 및 저장 매체
JP2015503154A (ja) * 2012-10-27 2015-01-29 華為技術有限公司Huawei Technologies Co.,Ltd. Pcieスイッチング・ネットワークにおけるパケット伝送を実現する方法、装置、システム、及び記憶媒体
KR101579917B1 (ko) 2012-10-27 2015-12-23 후아웨이 테크놀러지 컴퍼니 리미티드 Pcie 스위칭 네트워크에서 패킷 전송을 실행하기 위한 방법, 장치, 시스템, 및 저장 매체
US9535867B2 (en) 2012-10-27 2017-01-03 Huawei Technologies Co., Ltd. Method, device, system and storage medium for implementing packet transmission in PCIE switching network
US9652426B2 (en) 2012-10-27 2017-05-16 Huawei Technologies Co., Ltd. Method, device, system and storage medium for implementing packet transmission in PCIE switching network
US10204070B2 (en) 2012-10-27 2019-02-12 Huawei Technologies Co., Ltd. Method, device, system and storage medium for implementing packet transmission in PCIE switching network
JP2019175424A (ja) * 2018-03-29 2019-10-10 廣達電腦股▲ふん▼有限公司Quanta Computer Inc. ケーブルのエラーをチェックする方法及びシステム

Similar Documents

Publication Publication Date Title
JP4928732B2 (ja) データ転送システム及び電子機器
JP5108261B2 (ja) 情報処理装置およびデータ通信装置
JP2006195871A (ja) 通信装置、電子機器、及び画像形成装置
JP2007087082A (ja) 情報処理装置およびオプションデバイス共有方法
JP4564855B2 (ja) データ転送システム及び電子機器
JP2006201909A (ja) データ転送システム及び電子機器
JP2008172727A (ja) 制御装置および画像処理システム
JP4308680B2 (ja) 画像形成装置
JP5151176B2 (ja) データ通信装置、画像処理システムおよびデータ通信方法
JP4777723B2 (ja) 情報処理システム、プログラムおよびデータ転送方法
JP4287325B2 (ja) 画像システム
JP4564740B2 (ja) 画像機器システム
JP2005321921A (ja) シリアルデータ転送装置、画像出力装置、画像入力装置及び画像形成装置
JP4828899B2 (ja) 情報処理装置および記憶デバイス共有方法
JP5176764B2 (ja) データ通信システム、画像処理システム、及びデータ通信方法
JP5218377B2 (ja) 画像形成システム
JP2005354658A (ja) 画像形成システム
JP2007282187A (ja) 情報処理装置、情報処理システムおよびデータ通信方法
JP2009163633A (ja) 情報処理装置およびデータ通信方法
JP2007226494A (ja) データ転送システム
JP4824422B2 (ja) 制御装置、画像処理システムおよびデータ転送経路切替方法
JP2007272871A (ja) 情報処理装置およびデータ通信方法
JP4607706B2 (ja) 画像処理システム、プログラムおよびジョブ実行方法
JP4476088B2 (ja) データ転送装置及び画像形成システム
JP2005332316A (ja) データ分配装置、データ転送装置及び画像処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100902

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120724

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120924

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130205

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130709