情報処理システム、プログラムおよびデータ転送方法
【課題】大量の部数を出力する場合における処理の高速化を図ることができるようにする。
【解決手段】画像データを複数部数プリントする場合、ルートコンプレックス6が、スイッチ7の下位に位置する少なくとも2以上の画像形成装置9に対して、スイッチ7を介して同一タイミングで複数部数の画像データを送信することにより、全ての画像形成装置9における同一の画像データについての同時印刷、すなわち、多部数を同時に印刷することができるので、印刷時間を短縮することができ、大量の部数を出力する場合における処理の高速化を図ることができるとともに、メッセージパケットによりブロードキャスト送信することにより、PCI Express規格による高速シリアルバス8,10のリンクのレーン数は各々“x1”で良いことから、上流側のリンクでは画像形成装置9の台数分のリンクのレーン数が不要となり、リンクのレーン数を減らすことができる。
【解決手段】画像データを複数部数プリントする場合、ルートコンプレックス6が、スイッチ7の下位に位置する少なくとも2以上の画像形成装置9に対して、スイッチ7を介して同一タイミングで複数部数の画像データを送信することにより、全ての画像形成装置9における同一の画像データについての同時印刷、すなわち、多部数を同時に印刷することができるので、印刷時間を短縮することができ、大量の部数を出力する場合における処理の高速化を図ることができるとともに、メッセージパケットによりブロードキャスト送信することにより、PCI Express規格による高速シリアルバス8,10のリンクのレーン数は各々“x1”で良いことから、上流側のリンクでは画像形成装置9の台数分のリンクのレーン数が不要となり、リンクのレーン数を減らすことができる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システム、プログラムおよびデータ転送方法に関する。
【背景技術】
【0002】
近年、高速シリアルインタフェースとして、PCIバス方式の後継規格に当るPCI Express(登録商標)なるインタフェースも提案され、実用化の段階にきている(例えば、非特許文献1参照)。このPCI Expressシステムは、概略的には、例えば非特許文献1中の図1等に示されるようなルートコンプレックス−スイッチ(任意階層)−デバイス等のツリー構造(木構造)によるデータ通信網として構成されている。
【0003】
【非特許文献1】“PCI Express 規格の概要”Interface誌、July’2003 里見尚志
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、非特許文献1に記載されているようなPCI Express規格では、ルートコンプレックス−スイッチ(任意階層)−デバイス等のツリー構造(木構造)によるデータ通信網として構成されているが、そのツリー構造(木構造)の根元に位置するルートコンプレックス(Root complex)を経る経路を利用して大量のデータの伝送を行なうと、データ転送の高速化を図れず、大量の部数を出力する場合における処理の高速化を図ることができない場合がある。
【0005】
本発明は、上記に鑑みてなされたものであって、大量の部数を出力する場合における処理の高速化を図ることができるようにすることを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するために、請求項1にかかる発明の情報処理システムは、画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置と、これらの画像形成装置を高速シリアルバスによりそれぞれ接続しているスイッチと、このスイッチの上位に位置して当該スイッチを高速シリアルバスにより接続し、前記画像データを、前記スイッチに対して送信するルートコンプレックスと、を備える。
【0007】
また、請求項2にかかる発明は、請求項1記載の情報処理システムにおいて、ルートコンプレックスを多段階に設け、高速シリアルバスでスイッチを接続する。
【0008】
また、請求項3にかかる発明は、請求項1または2記載の情報処理システムにおいて、前記高速シリアルバスは、PCI Express 規格の高速シリアルバスである。
【0009】
また、請求項4にかかる発明は、請求項3記載の情報処理システムにおいて、前記ルートコンプレックスは、前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットを生成し、前記データパケットをPCI Express規格のブロードキャストモードを用いて前記スイッチに対して送信し、前記スイッチは、上流ポートから送られてきた前記データパケットについてブロードキャスト送信が指定されている場合、前記データパケットの前記画像データをコピーし、下流の全ポートに送信する。
【0010】
また、請求項5にかかる発明は、請求項4記載の情報処理システムにおいて、前記ルートコンプレックスは、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットをブロードキャスト送信する際、PCI Express規格のTLP(Transaction Layer Packet)ヘッダの構成を、
Fmt: 11 (MsgD)
Type: 10011(broadcast)
Code: 0111 1110あるいは0111 1111 (Vendor-Defined)
Length: Data Payloadのサイズ
とし、Data Payloadに送信する前記画像データを含むような前記メッセージパケットを生成する。
【0011】
また、請求項6にかかる発明は、請求項3記載の情報処理システムにおいて、前記ルートコンプレックスは、前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記入力部より読み取った前記画像データを前記各画像形成装置のアドレスに振り分ける。
【0012】
また、請求項7にかかる発明は、請求項1ないし6のいずれか一記載の情報処理システムにおいて、前記各画像形成装置として高速のプリンタを用いる。
【0013】
また、請求項8にかかる発明は、請求項1ないし6のいずれか一記載の情報処理システムにおいて、前記各画像形成装置として低速のプリンタを用いる。
【0014】
また、請求項9にかかる発明のプログラムは、画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置をPCI Express規格の高速シリアルバスによりそれぞれ接続しているスイッチに対して、PCI Express規格の高速シリアルバスにより接続されているコントローラに設けられたコンピュータを動作させるプログラムであって、前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットを生成し、前記データパケットをPCI Express規格のブロードキャストモードを用いて前記スイッチに対して送信する。
【0015】
また、請求項10にかかる発明は、請求項9記載のプログラムにおいて、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットをブロードキャスト送信する際、PCI Express規格のTLP(Transaction Layer Packet)ヘッダの構成を、
Fmt: 11 (MsgD)
Type: 10011(broadcast)
Code: 0111 1110あるいは0111 1111 (Vendor-Defined)
Length: Data Payloadのサイズ
とし、Data Payloadに送信する前記画像データを含むような前記メッセージパケットを生成する。
【0016】
また、請求項11にかかる発明のプログラムは、画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置をPCI Express規格の高速シリアルバスによりそれぞれ接続しているスイッチに対して、PCI Express規格の高速シリアルバスにより接続されているコントローラに設けられたコンピュータを動作させるプログラムであって、前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを前記各画像形成装置のアドレスに振り分ける。
【0017】
また、請求項12にかかる発明のデータ転送方法は、画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置をPCI Express規格の高速シリアルバスによりそれぞれ接続しているスイッチに対して、PCI Express規格の高速シリアルバスにより接続されているコントローラにおけるデータ転送方法であって、前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットを生成し、前記データパケットをPCI Express規格のブロードキャストモードを用いて前記スイッチに対して送信する。
【0018】
また、請求項13にかかる発明は、請求項12記載のデータ転送方法において、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットをブロードキャスト送信する際、PCI Express規格のTLP(Transaction Layer Packet)ヘッダの構成を、
Fmt: 11 (MsgD)
Type: 10011(broadcast)
Code: 0111 1110あるいは0111 1111 (Vendor-Defined)
Length: Data Payloadのサイズ
とし、Data Payloadに送信する前記画像データを含むような前記メッセージパケットを生成する。
【0019】
また、請求項14にかかる発明のデータ転送方法は、画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置をPCI Express規格の高速シリアルバスによりそれぞれ接続しているスイッチに対して、PCI Express規格の高速シリアルバスにより接続されているコントローラにおけるデータ転送方法であって、前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを前記各画像形成装置のアドレスに振り分ける。
【発明の効果】
【0020】
請求項1にかかる発明によれば、画像データを複数部数プリントする場合、ルートコンプレックスが、スイッチの下位に位置する少なくとも2以上の画像形成装置に対して、スイッチを介して同一タイミングで複数部数の画像データを送信することにより、全ての画像形成装置における同一の画像データについての同時印刷、すなわち、多部数を同時に印刷することができるので、印刷時間を短縮することができ、大量の部数を出力する場合における処理の高速化を図ることができるという効果を奏する。
【0021】
また、請求項2にかかる発明によれば、ルートコンプレックスを多段階に設け、高速シリアルバスでスイッチを接続することにより、システムを拡張することができるという効果を奏する。
【0022】
また、請求項3にかかる発明によれば、高速シリアルバスは、PCI Express 規格の高速シリアルバスであることにより、低電圧差動信号伝送、ポイントツーポイントで送受信独立の通信チャネル、パケット化されたスプリットトランザクション、リンク構成の違いによる高いスケーラビリティなどの特徴を有するという効果を奏する。
【0023】
また、請求項4にかかる発明によれば、メッセージパケットによりブロードキャスト送信することにより、PCI Express規格による高速シリアルバスのリンクのレーン数は各々“x1”で良いことから、上流側のリンクでは画像形成装置の台数分のリンクのレーン数が不要となり、リンクのレーン数を減らすことができるという効果を奏する。
【0024】
また、請求項5にかかる発明によれば、ルートコンプレックスから全てのエンドポイントである画像形成装置宛の画像データを送信することができるという効果を奏する。
【0025】
また、請求項6にかかる発明によれば、スイッチの上流側のリンクのレーン数が、スイッチの下流にあるリンクのレーン数分(すなわち、画像形成装置の台数分のリンクのレーン数)だけ必要にはなるが、大量の部数を出力する場合における処理の高速化を図ることができるという効果を奏する。
【0026】
また、請求項7にかかる発明によれば、画像形成装置として高速のプリンタを用いることにより、さらなる高速化を図ることができるという効果を奏する。
【0027】
また、請求項8にかかる発明によれば、画像形成装置として低速のプリンタを用いることにより、全ての低速プリンタにおける同一の画像データについての同時印刷、すなわち、多部数を同時に印刷することで、低速のプリンタであっても高速化を図ることができるという効果を奏する。
【0028】
また、請求項9にかかる発明によれば、全ての画像形成装置における同一の画像データについての同時印刷、すなわち、多部数を同時に印刷することができるので、印刷時間を短縮することができ、大量の部数を出力する場合における処理の高速化を図ることができるとともに、メッセージパケットによりブロードキャスト送信することにより、PCI Express規格による高速シリアルバスのリンクのレーン数は各々“x1”で良いことから、上流側のリンクでは画像形成装置の台数分のリンクのレーン数が不要となり、リンクのレーン数を減らすことができるという効果を奏する。
【0029】
また、請求項10にかかる発明によれば、ルートコンプレックスから全てのエンドポイントである画像形成装置宛の画像データを送信することができるという効果を奏する。
【0030】
また、請求項11にかかる発明によれば、スイッチの上流側のリンクのレーン数が、スイッチの下流にあるリンクのレーン数分(すなわち、画像形成装置の台数分のリンクのレーン数)だけ必要にはなるが、大量の部数を出力する場合における処理の高速化を図ることができるという効果を奏する。
【0031】
また、請求項12にかかる発明によれば、全ての画像形成装置における同一の画像データについての同時印刷、すなわち、多部数を同時に印刷することができるので、印刷時間を短縮することができ、大量の部数を出力する場合における処理の高速化を図ることができるとともに、メッセージパケットによりブロードキャスト送信することにより、PCI Express規格による高速シリアルバスのリンクのレーン数は各々“x1”で良いことから、上流側のリンクでは画像形成装置の台数分のリンクのレーン数が不要となり、リンクのレーン数を減らすことができるという効果を奏する。
【0032】
また、請求項13にかかる発明によれば、ルートコンプレックスから全てのエンドポイントである画像形成装置宛の画像データを送信することができるという効果を奏する。
【0033】
また、請求項14にかかる発明によれば、スイッチの上流側のリンクのレーン数が、スイッチの下流にあるリンクのレーン数分(すなわち、画像形成装置の台数分のリンクのレーン数)だけ必要にはなるが、大量の部数を出力する場合における処理の高速化を図ることができるという効果を奏する。
【発明を実施するための最良の形態】
【0034】
以下に添付図面を参照して、この発明にかかる情報処理システム、プログラムおよびデータ転送方法の最良な実施の形態を詳細に説明する。
【0035】
[第1の実施の形態]
本発明の第1の実施の形態を図1ないし図23に基づいて説明する。以下では、PCI Expressの詳細について、[PCI Express規格の概要]〜[PCI Express のアーキテクチャの詳細]の欄で説明し、その後、本実施の形態の情報処理システムについて、[情報処理システム]の欄で説明する。
【0036】
[PCI Express規格の概要]
まず、本実施の形態は高速シリアルバスの一つであるPCI Express(登録商標)を利用するものであり、本実施の形態の前提として当該PCI Express規格の概要について、非特許文献1の一部抜粋により説明する。ここに、高速シリアルバスとは、1本の伝送路を用いてシリアル(直列)伝送により高速(100Mbps程度以上)にデータをやり取りすることができるインタフェースを意味する。
【0037】
PCI Expressは、PCIの後継規格としてコンピュータ全般に通用する標準拡張バスとして規格化されたバスであり、概略的には、低電圧差動信号伝送、ポイントツーポイントで送受信独立の通信チャネル、パケット化されたスプリットトランザクション、リンク構成の違いによる高いスケーラビリティなどの特徴を持つ。
【0038】
図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を介して接続されたりしたツリー構造(木構造)とされている。
【0039】
これに対して、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により接続されたツリー構造(木構造)とされている。
【0040】
実際に想定される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が接続されている。
【0041】
即ち、PCI Expressシステムでは、従来のPCI,PCI-X,AGPといったバスがPCI Expressで置き換わり、既存のPCI/PCI-Xデバイスを接続するためにブリッジが使用される。チップセット間の接続もPCI Express接続となり、IEEE1394,Serial ATA,USB 2.0などの既存のバスはI/OハブによりPCI Expressに接続される。
【0042】
[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を可変することにより、スケーラブルなバンド幅を構成することが可能となる。
【0043】
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側の例)がある。
【0044】
C.エンドポイント(End Point)
エンドポイント115は、タイプ00hのコンフィグレーション空間ヘッダを持つデバイス(具体的には、ブリッジ以外のデバイス)で、レガシーエンドポイントとPCI Expressエンドポイントとに分けられる。両者の大きな違いは、PCI ExpressエンドポイントはBAR(ベースアドレスレジスタ)でI/Oリソースを要求せず、このためI/Oリクエストを要求しない。また、PCI Expressエンドポイントは、ロックリクエストもサポートしていない。
【0045】
D.スイッチ(Switch)
スイッチ117(又は、134)は、2つ以上のポートを結合し、ポート間でのパケットルーティングを行う。コンフィグレーションソフトウェアからは、当該スイッチは、図6に示すように、仮想PCI-PCIブリッジ141の集合体として認識される。図中、両矢印はPCI Expressリンク114(又は、126)を示し、142a〜142dはポートを示す。このうち、ポート142aはルートコンプレックスに近い方のアップストリームポートであり、ポート142b〜142dはルートコンプレックスから遠い方のダウンストリームポートである。
【0046】
E.PCI Express114e−PCIブリッジ119
PCI ExpressからPCI/PCI-Xへの接続を提供する。これにより、既存のPCI/PCI-XデバイスをPCI Expressシステム上で使用することができる。
【0047】
[階層アーキテクチャ]
従来のPCIのアーキテクチャは、図7−1に示すように、プロトコルとシグナリングが密接に関連する構造であり階層という考え方はなかったが、PCI Expressでは、図7−2に示すように、一般的な通信プロトコルやInfiniBandのように、独立した階層構造とされ、各層に分けて仕様が定義されている。即ち、最上位のソフトウェア151、最下位の機構(メカニカル)部152間に、トランザクション層153、データリンク層154、物理層155を持つ構造とされている。これにより、各層のモジュール性が確保され、スケーラビリティを持たせることやモジュールの再利用が可能となる。例えば、新たな信号コーディング方式や伝送媒体を採用する場合、物理層を変更するだけでデータリンク層やトランザクション層は変更せずに対応できる。
【0048】
PCI Expressのアーキテクチャの中心となるのは、トランザクション層153、データリンク層154、物理層155であり、各々図8を参照して説明する以下のような役割を持つ。
【0049】
A.トランザクション層153
トランザクション層153は、最上位に位置し、トランザクションレイヤパケット(TLP)の組み立て、分解機能を持つ。トランザクションレイヤパケット(TLP)は、リード/ライト、各種イベントといったトランザクションの伝達に用いられる。また、トランザクション層153は、トランザクションレイヤパケット(TLP)のためのクレジットを用いたフロー制御を行う。各層153〜155におけるトランザクションレイヤパケット(TLP)の概要を図9に示す(詳細は、後述する)。
【0050】
B.データリンク層154
データリンク層154の主な役割は、エラー検出/訂正(再送)によりトランザクションレイヤパケット(TLP)のデータ完全性を保証することと、リンク管理である。データリンク層154間では、リンク管理やフロー制御のためのパケットのやり取りを行う。このパケットは、トランザクションレイヤパケット(TLP)と区別するために、データリンクレイヤパケット(DLLP)と呼ばれる。
【0051】
C.物理層155
物理層155は、ドライバ、入力バッファ、パラレル−シリアル/シリアル−パラレル変換器、PLL、インピーダンス整合回路といったインタフェース動作に必要な回路を含んでいる。また、論理的な機能としてインタフェースの初期化・保守の機能を持つ。物理層155は、データリンク層154/トランザクション層153を実際のリンクで使用される信号技術から独立させる役目も持っている。
【0052】
なお、PCI Expressのハードウェア構成上、エンベデッド・クロックという技術を採用しており、クロック信号はなく、クロックのタイミングはデータ信号中に埋め込まれており、受信側でデータ信号のクロス・ポイントを基にクロックを抽出する方式とされている。
【0053】
[コンフィグレーション空間]
PCI Expressは、従来のPCIと同様にコンフィグレーション空間を持つが、その大きさは従来のPCIが256バイトであるのに対して、図10に示すように、4096バイトへと拡張されている。これにより、多数のデバイス固有レジスタセットを必要とするデバイス(ホストブリッジなど)に対しても、将来的に十分な空間が確保されている。PCI Expressでは、コンフィグレーション空間へのアクセスは、フラットなメモリ空間へのアクセス(コンフィグレーションリード/ライト)で行われ、バス/デバイス/機能/レジスタ番号はメモリアドレスにマップされている。
【0054】
当該空間の先頭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拡張空間にアクセスできるようにする必要がある。
【0055】
なお、PCI Expressとしては様々なフォームファクタ(形状)が考えられるが、具体化している例としては、アドインカード、プラグインカード(Express Card)、Mini PCI Expressなどがある。
【0056】
[PCI Express のアーキテクチャの詳細]
PCI Express のアーキテクチャの中心となっているトランザクション層153、データリンク層154、物理層155について、各々詳細に説明する。
【0057】
A.トランザクション層153
トランザクション層153の主な役割は、前述したように、上位のソフトウェア層151と下位のデータリンク層154との間でトランザクションレイヤパケット(TLP)の組み立てと分解を行うことである。
【0058】
a.アドレス空間とトランザクションタイプ
PCI Expressでは、従来のPCIでサポートされていたメモリ空間(メモリ空間とのデータ転送用)、I/O空間(I/O空間とのデータ転送用)、コンフィグレーション空間(デバイスのコンフィグレーションとセットアップ用)に加えて、メッセージ空間(PCI Expressデバイス間のインバンドでのイベント通知や一般的なメッセージ送信(交換)用…割り込み要求や確認は、メッセージを「仮想ワイヤ」として使用することにより伝達される)が追加され、4つのアドレス空間が定義されている。各々の空間に対してトランザクションタイプが定義されている(メモリ空間、I/O空間、コンフィグレーション空間は、リード/ライト、メッセージ空間は基本(ベンダ定義含む))。
【0059】
b.トランザクションレイヤパケット(TLP)
PCI Expressは、パケット単位で通信を行う。図9に示したトランザクションレイヤパケット(TLP)のフォーマットにおいて、ヘッダのヘッダ長は3DW(DWはダブルワードの略;合計12バイト)又は4DW(16バイト)で、トランザクションレイヤパケット(TLP)のフォーマット(ヘッダ長とペイロードの有無)、トランザクションタイプ、トラフィッククラス(TC)、アトリビュートやペイロード長などの情報が含まれる。パケット内の最大ペイロード長は1024DW(4096バイト)である。
【0060】
ECRCは、エンドツーエンドのデータ完全性を保証するためのもので、トランザクションレイヤパケット(TLP)部分の32ビットCRCである。これは、スイッチ内部などでトランザクションレイヤパケット(TLP)にエラーが発生した場合、LCRC(リンクCRC)ではエラーを検出できないためである(エラーとなったTLPでLCRCが再計算されるため)。
【0061】
リクエストは、完了パケットが不要なものと必要なものとがある。
【0062】
c.トラフィッククラス(TC)と仮想チャネル(VC)
上位のソフトウェアは、トラフィッククラス(TC)を使用することによりトラフィックの差別化(優先度をつける)を行うことができる。例えば、映像データをネットワークのデータよりも優先して転送する、といったことが可能となる。トラフィッククラス(TC)はTC0からTC7まで8つある。
【0063】
仮想チャネル(VC:Vertual Channel)は、各々独立した仮想通信バス(同一のリンクを共用する複数の独立したデータ・フロー・バッファを使用するメカニズム)で、各々がリソース(バッファやキュー)を持ち、図11に示すように、独立したフロー制御を行う。これにより、1つの仮想チャネルのバッファが満杯の状態(full)になっても、他の仮想チャネルの転送を行うことができる。つまり、物理的には1つのリンクを仮想的な複数のチャネルに分けることで、有効に使用することができる。例えば、図11中に示すように、スイッチを経由してルートのリンクが複数のデバイスに分かれる場合、各デバイスのトラフィックの優先度を制御することができる。VC0は必須で、コストパフォーマンスのトレードオフに応じてその他の仮想チャネル(VC1〜VC7)が実装される。図11中の実線矢印は、デフォルト仮想チャネル(VC0)を示し、破線矢印はその他の仮想チャネル(VC1〜VC7)を示している。
【0064】
トランザクション層内では、トラフィッククラス(TC)が仮想チャネル(VC)にマッピングされる。1つの仮想チャネル(VC)に対して1つ又は複数のトラフィッククラス(TC)をマッピングできる(仮想チャネル(VC)の数が少ない場合)。単純な例では、各トラフィッククラス(TC)から各仮想チャネル(VC)に1対1、全てのトラフィッククラス(TC)を仮想チャネルVC0にマッピングする、といったことが考えられる。TC0−VC0のマッピングは、必須/固定で、それ以外のマッピングは上位のソフトウェアから制御される。ソフトウェアはトラフィッククラス(TC)を利用することで、トランザクションの優先度を制御することが可能となる。
【0065】
d.フロー制御
受信バッファのオーバーフローを避け、伝送順序を確立するためにフロー制御(FC:Flow Control)が行われる。フロー制御は、リンク間のポイントツーポイントで行われ、エンドツーエンドではない。従って、フロー制御により最終的な相手(コンプリータ)にパケットが届いたことを確認することはできない。
【0066】
PCI Expressのフロー制御は、クレジット・ベースで行われる(データ転送を始める前に、受け取り側のバッファの空き状況を確認し、オーバーフロー、アンダフローが発生しないメカニズム)。即ち、受信側はリンク初期化時にバッファ容量(クレジット値)を送信側に通知し、送信側はクレジット値と送信するパケットの長さとを比較し、一定の残りがある場合のみパケットを送信する。このクレジットには6種類ある。
【0067】
フロー制御の情報交換はデータリンク層のデータリンクレイヤパケット(DLLP)を使用して行われる。フロー制御はトランザクションレイヤパケット(TLP)のみに適用され、データリンクレイヤパケット(DLLP)には適用されない(DLLPは常時送受信可能)。
【0068】
B.データリンク層154
データリンク層154の主な役割は、前述したように、リンク上の2つのコンポーネント間での信頼性の高いトランザクションレイヤパケット(TLP)交換機能を提供することである。
【0069】
a.トランザクションレイヤパケット(TLP)の扱い
トランザクション層153から受け取ったトランザクションレイヤパケット(TLP)に対しては、先頭に2バイトのシーケンス番号、末尾に4バイトのリンクCRC(LCRC)を付加して、物理層155に渡す(図9参照)。トランザクションレイヤパケット(TLP)は、リトライバッファに保管され、相手から受信確認(ACK)が届くまで再送される。トランザクションレイヤパケット(TLP)の送信に失敗が続いた場合は、リンク異常であると判断して物理層155に対してリンクの再トレーニングを要求する。リンクのトレーニングが失敗した場合、データリンク層154の状態はインアクティブに遷移する。
【0070】
物理層155から受け取ったトランザクションレイヤパケット(TLP)は、シーケンス番号とリンクCRC(LCRC)が検査され、正常であればトランザクション層153に渡され、エラーがあった場合は再送を要求する。
【0071】
b.データリンクレイヤパケット(DLLP)
トランザクションレイヤパケット(TLP)は、物理層から送信されるときに自動的に図12に示すようなデータリンクレイヤパケット(DLLP)に分割されて各レーンに送信される。データリンク層154が生成するパケットは、データリンクレイヤパケット(DLLP)と呼ばれ、データリンク層154間でやり取りされる。データリンクレイヤパケット(DLLP)には、
・Ack/Nak:TLPの受信確認、リトライ(再送)
・InitFC1/InitFC2/UpdateFC:フロー制御の初期化とアップデート
・電源管理のためのDLLP
なる種類がある。
【0072】
図12に示すように、データリンクレイヤパケット(DLLP)の長さは6バイトで、種類を示すDLLPタイプ(1バイト)、DLLPの種類で固有の情報(3バイト)、CRC(2バイト)から構成される。
【0073】
C.物理層−論理サブブロック156
図8中に示す物理層155の論理サブブロック156での主な役割は、データリンク層154から受け取ったパケットを電気サブブロック157で送信できる形式に変換することである。また、物理層155を制御/管理する機能も有する。
【0074】
a.データ符号化とパラレル−シリアル変換
PCI Expressは、連続した“0”や“1”が続かないように(長い期間、クロス・ポイントが存在しない状態が続かないようにするため)、データ符号化に8B/10B変換を用いる。変換されたデータは、図13中に示すように、シリアル変換され、LSBからレーン上に送信される。ここに、レーンが複数ある場合は(図13はx4リンクの場合を例示している)、符号化の前にデータがバイト単位で各レーンに割り振られる。この場合、一見パラレル・バスのようにみえるが、レーン毎に独立した転送を行うので、パラレル・バスで問題となるスキューが大幅に緩和される。
【0075】
b.電源管理とリンクステート
リンクの消費電力を低く抑えるために、図14に示すように、L0/L0s/L1/L2というリンクステートが定義されている。
【0076】
L0が通常モードで、L0sからL2へと低消費電力となるが、L0への復帰にも時間がかかるようになる。図15に示すように、ソフトウェアによる電源管理に加えて、アクティブステート電源管理を積極的に行うことにより、消費電力を極力小さくすることが可能となる。
【0077】
D.物理層−電気サブブロック157
物理層155の電気サブブロック157での主な役割は、論理サブブロック156でシリアル化されたデータをレーン上に送信することと、レーン上のデータを受信して論理サブブロック156に渡すことである。
【0078】
a.ACカップリング
リンクの送信側では、ACカップリング用のコンデンサが実装される。これにより、送信側と受信側のDCコモンモード電圧が同一である必要がなくなる。このため、送信側と受信側で異なる設計、半導体プロセス、電源電圧を使用することが可能となる。
【0079】
b.デエンファシス
PCI Expressでは、前述したように、8B/10Bエンコーディングによってできるだけ連続した“0”や“1”が続かないように処理されるが、連続した“0”や“1”が続くこともある(最大5回)。この場合、送信側はデエンファシス転送を行わなければならないことが規定されている。同一極性のビットが連続する場合は、2つ目のビットからは差動電圧レベル(振幅)を3.5±0.5dB落とすことで、受信側で受け取る信号のノイズ・マージンを稼ぐ必要がある。これを、デエンファシスという。伝送路の周波数依存性減衰のため、変化するビットの場合は高周波成分が多く、減衰により受信側の波形が小さくなるが、変化しないビットの場合は高周波成分が少なく、相対的に受信側の波形が大きくなる。このため、受信側での波形を一定とするためにデエンファシスを行う。
【0080】
[情報処理システム]
本実施の形態のデジタル複写機やMFP等の情報処理システムは、その内部インタフェースに前述したようなPCI Express規格の高速シリアルバスを利用するようにしたものである。
【0081】
図16は、本実施の形態の情報処理システムの構成例を示す概略ブロック図である。本実施の形態の情報処理システム1は、例えばMFP等の機器に適用されるもので、その構成要素として、コントローラ2と、画像入力部である入力部3と画像出力部である出力部4とデータ保存部5とを備える。
【0082】
コントローラ2は、インストールされているプログラム(ソフトウェア)に従い当該システム全体の制御を受け持つCPU等を含み、経路制御や経路判断等の処理を行うデバイス部分(プリンタコントローラ)を意味する。また、コントローラ2は、画像データに対して拡大・縮小、回転等の画像処理、圧縮、伸長、データ変換処理(プリンタ言語の展開、拡大、縮小)、メモリ管理などの処理を行う。
【0083】
入力部3とは、原稿画像等に基づく画像データを当該システム内に取り込むためのデバイスやユニット部分を示し、例えば、原稿画像を光電的に読み取って画像データを取得するスキャナエンジン等により構成されている。
【0084】
出力部4とは、画像データを紙などに印刷出力するデバイスやユニット部分を示し、例えば、電子写真方式のプロッタ(プリンタ)エンジン等により構成されている。なお、出力部4の印刷方式は、電子写真方式のほか、インクジェット方式、昇華型熱転写方式、銀塩写真方式、直接感熱記録方式、溶融型熱転写方式など、様々な方式を用いることができる。
【0085】
データ保存部5とは、画像データを保存するメモリやHDD等を含むデバイスやユニット部分である。
【0086】
このような構成において、コントローラ2による制御の下、入力部3から取り込まれた画像データは必要に応じてコントローラ2による画像処理を経た後、データ保存部5に転送され、データ保存部5に一旦保存される。その後、データ保存部5に保存された画像データはコントローラ2に取り込まれ必要に応じて画像処理を経た後、出力部4に転送され、印刷出力等がなされる。
【0087】
加えて、コントローラ2には、スイッチ(Switch)7をPCI Express規格による高速シリアルバス8により接続するPCI Express規格のルートコンプレックス(Root Complex)6が備えられている。スイッチ7の下位には、PCI Express規格のエンドポイント(End Point)として、画像データに基づいて用紙などの媒体上に画像形成する画像形成装置である複数のプリンタ9が、PCI Express規格による高速シリアルバス10でそれぞれ接続されている。なお、プリンタ9は、それぞれ同一の性能を有しているものとする。ここで、高速シリアルバス8のリンクのレーン数は“x1”、高速シリアルバス10のリンクのレーン数は各々“x1”とする。
【0088】
ここで、本実施の形態の情報処理システム1が備える特徴的な機能について説明する。本実施の形態の情報処理システム1においては、入力部3より読み取った画像データを複数部数プリントする場合、複数部数の画像データをスイッチ7の下位に位置する複数のプリンタ9に対して、同一タイミングで送信する。この場合、ルートコンプレックス6は、データパケットをPCI Express規格のメッセージパケット(Message Packet)により、下流側へPCI Express規格のブロードキャスト(Broadcast)モードを用いて送信する。この点について、「PCI Express Base Specification Revision 1.0a」(http://www.pcisig.com/)の一部抜粋により、以下に詳述する。
【0089】
PCI Express規格のTLP(Transaction Layer Packet)の種類は、Memory Read / Write, IO Read / Write, Config Read / Write, Message, Completionなどに大別される。TLPのフォーマットは、図17に示すように、TLP Header, Data Payload, TLP Digestの3つのセクションにより、構成される。なお、TLPの種類により、Data Payloadが無い場合もある。また、TLP Digestについてもオプションであり、必ずつくわけではない。
【0090】
さらに、TLP Headerは、図18に示すような構成とされており、FmtとTypeの組み合わせにより、図19に示すテーブルにしたがって種類が判別される。
【0091】
通常のデータ転送には、図19に示すMemory Read Request(MRd)およびCompletion with Data(CplD)やMemory Write Request(MWr)のTLPが使用される。
【0092】
ここで、メッセージパケットについて説明する。メッセージパケットには、図19に示すように、Data Payloadを含まないMsgと、Data Payloadを含むMsgDの2種類がある。Msg及びMsgDにおいては、図20に示すテーブルに従うことにより、r[2:0]の部分でメッセージパケットのルーティング方式を決めることができる。図20に示すように、メッセージパケットでは、r[2:0]を011にすることにより、ルートコンプレックス(RootComplex)からすべてのエンドポイント(Endpoint)に対するブロードキャスト(Broadcast)パケットを送信することが可能である。図21は、メッセージリクエストヘッダのデータ構成を示す説明図である。r[2:0]は、図21ではTypeフィールドの下位3bitに指定される。このようなメッセージパケットは、基本的には、割り込み通達、パワーマネジメント、エラー通達、ロックトランザクション、スロットパワー制限、ホットプラグなど、特定のメッセージを送信する用途で用いられる。しかしながら、PCI Express規格においては、Vendor#Defined Messagesも規定されており、あらかじめ規格で決められた用途以外のデータを送るために使用することも可能になっている。Vendor#Degined Messageを使用するには、MessageCode のフィールドを、図22に示すType0,1のいずれかを指定すればよい。そして、Broadcastでパケットを送信する場合は、図22に示すRouting r[2:0]の部分で011を指定する。
【0093】
このようなメッセージパケットによってData Payloadを送る場合は、Fmtのフィールドを11にする。また、Datapayloadを含む場合、TLPのLengthフィールドにはDatapayloadサイズを指定する。
【0094】
以上、Message TLPによるBroadcast送信でベンダー定義のデータを送るためには、TLPヘッダの構成を、
Fmt: 11 (MsgD)
Type: 10011(broadcast)
Code: 0111 1110あるいは0111 1111 (Vendor-Defined)
Length: Data Payloadのサイズ
とし、Data Payloadに送信するデータを含むようなメッセージパケットを生成すれば、Rootcomplexから全てのEndpoint宛のデータを送信することができる。
【0095】
このようにbroadcastが指定されているパケットは、スイッチにおいて上流ポートから送られてきたデータがコピーされ、下流の全ポートに送信される。
【0096】
このように本実施の形態によれば、コントローラ2において画像データを含むメッセージパケットを生成し、ルートコンプレックス6からスイッチ7を介して全てのプリンタ9に対し、メッセージパケットをブロードキャストモードを用いて送信することにより、全てのプリンタ9における同一の画像データについての同時印刷、すなわち、多部数を同時に印刷することができるので、印刷時間を短縮することができ、大量の部数を出力する場合における処理の高速化を図ることができる。もちろん、プリンタ9として高速のプリンタを用いることにより、さらなる高速化を図ることができる。また、プリンタ9として低速のプリンタを用いた場合であっても、全ての低速プリンタにおける同一の画像データについての同時印刷、すなわち、多部数を同時に印刷することで、低速のプリンタであっても高速化を図ることができる。
【0097】
また、メッセージパケットによりブロードキャスト送信する場合には、PCI Express規格による高速シリアルバス8,10のリンクのレーン数は各々“x1”で良いことから、上流側のリンクではプリンタ9の台数分のリンクのレーン数が不要となり、リンクのレーン数を減らすことができる。
【0098】
なお、図23に示すように、図16に示した構成に対して、ルートコンプレックス11を多段階に設け、PCI Express規格による高速シリアルバス13でスイッチ12を接続することにより、システムを拡張することができる。
【0099】
このように本実施の形態によれば、画像データを複数部数プリントする場合、ルートコンプレックス6が、スイッチ7の下位に位置する少なくとも2以上のプリンタ9に対して、スイッチ7を介して同一タイミングで複数部数の画像データを送信することにより、全てのプリンタ9における同一の画像データについての同時印刷、すなわち、多部数を同時に印刷することができるので、印刷時間を短縮することができ、大量の部数を出力する場合における処理の高速化を図ることができる。
【0100】
また、メッセージパケットによりブロードキャスト送信することにより、PCI Express規格による高速シリアルバス8,10のリンクのレーン数は各々“x1”で良いことから、上流側のリンクではプリンタ9の台数分のリンクのレーン数が不要となり、リンクのレーン数を減らすことができる。
【0101】
[第2の実施の形態]
次に、本発明の第2の実施の形態を図24に基づいて説明する。なお、前述した第1の実施の形態と同じ部分は同じ符号で示し説明も省略する。
【0102】
第1の実施の形態においては、画像データを含むメッセージパケットを複数のプリンタ9に対しブロードキャスト送信することにより、多部数を同時に印刷するようにしたが、本実施の形態においては、アドレスを振り分けて下流のプリンタへ出力するようにしたものである。
【0103】
図24は、本実施の形態の情報処理システムの構成例を示す概略ブロック図である。本実施の形態の情報処理システム1は、構成的には、高速シリアルバス8のリンクのレーン数が“x4”である点が第1の実施の形態と異なっている。すなわち、本実施の形態においては、スイッチ7の上流側のリンクのレーン数が、スイッチ7の下流にあるリンクのレーン数分(すなわち、プリンタ9の台数分のリンクのレーン数)だけ必要になっている。
【0104】
つまり、本実施の形態においては、ルートコンプレックス6で画像データを各プリンタ9のアドレスに振り分けるようにしている。
【0105】
このように本実施の形態によれば、スイッチ7の上流側のリンクのレーン数が、スイッチ7の下流にあるリンクのレーン数分(すなわち、プリンタ9の台数分のリンクのレーン数)だけ必要にはなるが、大量の部数を出力する場合における処理の高速化を図ることができる。
【図面の簡単な説明】
【0106】
【図1】既存PCIシステムの構成例を示すブロック図である。
【図2】PCI Expressシステムの構成例を示すブロック図である。
【図3】デスクトップ/モバイルでのPCI Expressプラットホームの構成例を示すブロック図である。
【図4】x4の場合の物理層の構造例を示す模式図である。
【図5】デバイス間のレーン接続例を示す模式図である。
【図6】スイッチの論理的構造例を示すブロック図である。
【図7−1】既存のPCIのアーキテクチャを示すブロック図である。
【図7−2】PCI Expressのアーキテクチャを示すブロック図である。
【図8】PCI Expressの階層構造を示すブロック図である。
【図9】トランザクションレイヤパケットのフォーマット例を示す説明図である。
【図10】PCI Expressのコンフィグレーション空間を示す説明図である。
【図11】仮想チャネルの概念を説明するための模式図である。
【図12】データリンクレイヤパケットのフォーマット例を示す説明図である。
【図13】x4リンクでのバイトストライピング例を示す模式図である。
【図14】L0/L0s/L1/L2というリンクステートの定義について説明する説明図である。
【図15】アクティブステート電源管理の制御例を示すタイムチャートである。
【図16】本発明の第1の実施の形態の情報処理システムの構成例を示す概略ブロック図である。
【図17】PCI Express規格のTLPのデータフォーマットを示す説明図である。
【図18】TLP Headerを示す説明図である。
【図19】TLPの種類を示すテーブルである。
【図20】メッセージパケットのルーティング方式を示すテーブルである。
【図21】メッセージリクエストヘッダのデータ構成を示す説明図である。
【図22】MessageCode のフィールドを示す説明図である。
【図23】情報処理システムの構成の変形例を示す概略ブロック図である。
【図24】本発明の第2の実施の形態の情報処理システムの構成例を示す概略ブロック図である。
【符号の説明】
【0107】
1 情報処理システム
6,11 ルートコンプレックス
7,12 スイッチ
8,10,13 高速シリアルバス
9 画像形成装置
【技術分野】
【0001】
本発明は、情報処理システム、プログラムおよびデータ転送方法に関する。
【背景技術】
【0002】
近年、高速シリアルインタフェースとして、PCIバス方式の後継規格に当るPCI Express(登録商標)なるインタフェースも提案され、実用化の段階にきている(例えば、非特許文献1参照)。このPCI Expressシステムは、概略的には、例えば非特許文献1中の図1等に示されるようなルートコンプレックス−スイッチ(任意階層)−デバイス等のツリー構造(木構造)によるデータ通信網として構成されている。
【0003】
【非特許文献1】“PCI Express 規格の概要”Interface誌、July’2003 里見尚志
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、非特許文献1に記載されているようなPCI Express規格では、ルートコンプレックス−スイッチ(任意階層)−デバイス等のツリー構造(木構造)によるデータ通信網として構成されているが、そのツリー構造(木構造)の根元に位置するルートコンプレックス(Root complex)を経る経路を利用して大量のデータの伝送を行なうと、データ転送の高速化を図れず、大量の部数を出力する場合における処理の高速化を図ることができない場合がある。
【0005】
本発明は、上記に鑑みてなされたものであって、大量の部数を出力する場合における処理の高速化を図ることができるようにすることを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するために、請求項1にかかる発明の情報処理システムは、画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置と、これらの画像形成装置を高速シリアルバスによりそれぞれ接続しているスイッチと、このスイッチの上位に位置して当該スイッチを高速シリアルバスにより接続し、前記画像データを、前記スイッチに対して送信するルートコンプレックスと、を備える。
【0007】
また、請求項2にかかる発明は、請求項1記載の情報処理システムにおいて、ルートコンプレックスを多段階に設け、高速シリアルバスでスイッチを接続する。
【0008】
また、請求項3にかかる発明は、請求項1または2記載の情報処理システムにおいて、前記高速シリアルバスは、PCI Express 規格の高速シリアルバスである。
【0009】
また、請求項4にかかる発明は、請求項3記載の情報処理システムにおいて、前記ルートコンプレックスは、前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットを生成し、前記データパケットをPCI Express規格のブロードキャストモードを用いて前記スイッチに対して送信し、前記スイッチは、上流ポートから送られてきた前記データパケットについてブロードキャスト送信が指定されている場合、前記データパケットの前記画像データをコピーし、下流の全ポートに送信する。
【0010】
また、請求項5にかかる発明は、請求項4記載の情報処理システムにおいて、前記ルートコンプレックスは、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットをブロードキャスト送信する際、PCI Express規格のTLP(Transaction Layer Packet)ヘッダの構成を、
Fmt: 11 (MsgD)
Type: 10011(broadcast)
Code: 0111 1110あるいは0111 1111 (Vendor-Defined)
Length: Data Payloadのサイズ
とし、Data Payloadに送信する前記画像データを含むような前記メッセージパケットを生成する。
【0011】
また、請求項6にかかる発明は、請求項3記載の情報処理システムにおいて、前記ルートコンプレックスは、前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記入力部より読み取った前記画像データを前記各画像形成装置のアドレスに振り分ける。
【0012】
また、請求項7にかかる発明は、請求項1ないし6のいずれか一記載の情報処理システムにおいて、前記各画像形成装置として高速のプリンタを用いる。
【0013】
また、請求項8にかかる発明は、請求項1ないし6のいずれか一記載の情報処理システムにおいて、前記各画像形成装置として低速のプリンタを用いる。
【0014】
また、請求項9にかかる発明のプログラムは、画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置をPCI Express規格の高速シリアルバスによりそれぞれ接続しているスイッチに対して、PCI Express規格の高速シリアルバスにより接続されているコントローラに設けられたコンピュータを動作させるプログラムであって、前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットを生成し、前記データパケットをPCI Express規格のブロードキャストモードを用いて前記スイッチに対して送信する。
【0015】
また、請求項10にかかる発明は、請求項9記載のプログラムにおいて、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットをブロードキャスト送信する際、PCI Express規格のTLP(Transaction Layer Packet)ヘッダの構成を、
Fmt: 11 (MsgD)
Type: 10011(broadcast)
Code: 0111 1110あるいは0111 1111 (Vendor-Defined)
Length: Data Payloadのサイズ
とし、Data Payloadに送信する前記画像データを含むような前記メッセージパケットを生成する。
【0016】
また、請求項11にかかる発明のプログラムは、画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置をPCI Express規格の高速シリアルバスによりそれぞれ接続しているスイッチに対して、PCI Express規格の高速シリアルバスにより接続されているコントローラに設けられたコンピュータを動作させるプログラムであって、前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを前記各画像形成装置のアドレスに振り分ける。
【0017】
また、請求項12にかかる発明のデータ転送方法は、画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置をPCI Express規格の高速シリアルバスによりそれぞれ接続しているスイッチに対して、PCI Express規格の高速シリアルバスにより接続されているコントローラにおけるデータ転送方法であって、前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットを生成し、前記データパケットをPCI Express規格のブロードキャストモードを用いて前記スイッチに対して送信する。
【0018】
また、請求項13にかかる発明は、請求項12記載のデータ転送方法において、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットをブロードキャスト送信する際、PCI Express規格のTLP(Transaction Layer Packet)ヘッダの構成を、
Fmt: 11 (MsgD)
Type: 10011(broadcast)
Code: 0111 1110あるいは0111 1111 (Vendor-Defined)
Length: Data Payloadのサイズ
とし、Data Payloadに送信する前記画像データを含むような前記メッセージパケットを生成する。
【0019】
また、請求項14にかかる発明のデータ転送方法は、画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置をPCI Express規格の高速シリアルバスによりそれぞれ接続しているスイッチに対して、PCI Express規格の高速シリアルバスにより接続されているコントローラにおけるデータ転送方法であって、前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを前記各画像形成装置のアドレスに振り分ける。
【発明の効果】
【0020】
請求項1にかかる発明によれば、画像データを複数部数プリントする場合、ルートコンプレックスが、スイッチの下位に位置する少なくとも2以上の画像形成装置に対して、スイッチを介して同一タイミングで複数部数の画像データを送信することにより、全ての画像形成装置における同一の画像データについての同時印刷、すなわち、多部数を同時に印刷することができるので、印刷時間を短縮することができ、大量の部数を出力する場合における処理の高速化を図ることができるという効果を奏する。
【0021】
また、請求項2にかかる発明によれば、ルートコンプレックスを多段階に設け、高速シリアルバスでスイッチを接続することにより、システムを拡張することができるという効果を奏する。
【0022】
また、請求項3にかかる発明によれば、高速シリアルバスは、PCI Express 規格の高速シリアルバスであることにより、低電圧差動信号伝送、ポイントツーポイントで送受信独立の通信チャネル、パケット化されたスプリットトランザクション、リンク構成の違いによる高いスケーラビリティなどの特徴を有するという効果を奏する。
【0023】
また、請求項4にかかる発明によれば、メッセージパケットによりブロードキャスト送信することにより、PCI Express規格による高速シリアルバスのリンクのレーン数は各々“x1”で良いことから、上流側のリンクでは画像形成装置の台数分のリンクのレーン数が不要となり、リンクのレーン数を減らすことができるという効果を奏する。
【0024】
また、請求項5にかかる発明によれば、ルートコンプレックスから全てのエンドポイントである画像形成装置宛の画像データを送信することができるという効果を奏する。
【0025】
また、請求項6にかかる発明によれば、スイッチの上流側のリンクのレーン数が、スイッチの下流にあるリンクのレーン数分(すなわち、画像形成装置の台数分のリンクのレーン数)だけ必要にはなるが、大量の部数を出力する場合における処理の高速化を図ることができるという効果を奏する。
【0026】
また、請求項7にかかる発明によれば、画像形成装置として高速のプリンタを用いることにより、さらなる高速化を図ることができるという効果を奏する。
【0027】
また、請求項8にかかる発明によれば、画像形成装置として低速のプリンタを用いることにより、全ての低速プリンタにおける同一の画像データについての同時印刷、すなわち、多部数を同時に印刷することで、低速のプリンタであっても高速化を図ることができるという効果を奏する。
【0028】
また、請求項9にかかる発明によれば、全ての画像形成装置における同一の画像データについての同時印刷、すなわち、多部数を同時に印刷することができるので、印刷時間を短縮することができ、大量の部数を出力する場合における処理の高速化を図ることができるとともに、メッセージパケットによりブロードキャスト送信することにより、PCI Express規格による高速シリアルバスのリンクのレーン数は各々“x1”で良いことから、上流側のリンクでは画像形成装置の台数分のリンクのレーン数が不要となり、リンクのレーン数を減らすことができるという効果を奏する。
【0029】
また、請求項10にかかる発明によれば、ルートコンプレックスから全てのエンドポイントである画像形成装置宛の画像データを送信することができるという効果を奏する。
【0030】
また、請求項11にかかる発明によれば、スイッチの上流側のリンクのレーン数が、スイッチの下流にあるリンクのレーン数分(すなわち、画像形成装置の台数分のリンクのレーン数)だけ必要にはなるが、大量の部数を出力する場合における処理の高速化を図ることができるという効果を奏する。
【0031】
また、請求項12にかかる発明によれば、全ての画像形成装置における同一の画像データについての同時印刷、すなわち、多部数を同時に印刷することができるので、印刷時間を短縮することができ、大量の部数を出力する場合における処理の高速化を図ることができるとともに、メッセージパケットによりブロードキャスト送信することにより、PCI Express規格による高速シリアルバスのリンクのレーン数は各々“x1”で良いことから、上流側のリンクでは画像形成装置の台数分のリンクのレーン数が不要となり、リンクのレーン数を減らすことができるという効果を奏する。
【0032】
また、請求項13にかかる発明によれば、ルートコンプレックスから全てのエンドポイントである画像形成装置宛の画像データを送信することができるという効果を奏する。
【0033】
また、請求項14にかかる発明によれば、スイッチの上流側のリンクのレーン数が、スイッチの下流にあるリンクのレーン数分(すなわち、画像形成装置の台数分のリンクのレーン数)だけ必要にはなるが、大量の部数を出力する場合における処理の高速化を図ることができるという効果を奏する。
【発明を実施するための最良の形態】
【0034】
以下に添付図面を参照して、この発明にかかる情報処理システム、プログラムおよびデータ転送方法の最良な実施の形態を詳細に説明する。
【0035】
[第1の実施の形態]
本発明の第1の実施の形態を図1ないし図23に基づいて説明する。以下では、PCI Expressの詳細について、[PCI Express規格の概要]〜[PCI Express のアーキテクチャの詳細]の欄で説明し、その後、本実施の形態の情報処理システムについて、[情報処理システム]の欄で説明する。
【0036】
[PCI Express規格の概要]
まず、本実施の形態は高速シリアルバスの一つであるPCI Express(登録商標)を利用するものであり、本実施の形態の前提として当該PCI Express規格の概要について、非特許文献1の一部抜粋により説明する。ここに、高速シリアルバスとは、1本の伝送路を用いてシリアル(直列)伝送により高速(100Mbps程度以上)にデータをやり取りすることができるインタフェースを意味する。
【0037】
PCI Expressは、PCIの後継規格としてコンピュータ全般に通用する標準拡張バスとして規格化されたバスであり、概略的には、低電圧差動信号伝送、ポイントツーポイントで送受信独立の通信チャネル、パケット化されたスプリットトランザクション、リンク構成の違いによる高いスケーラビリティなどの特徴を持つ。
【0038】
図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を介して接続されたりしたツリー構造(木構造)とされている。
【0039】
これに対して、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により接続されたツリー構造(木構造)とされている。
【0040】
実際に想定される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が接続されている。
【0041】
即ち、PCI Expressシステムでは、従来のPCI,PCI-X,AGPといったバスがPCI Expressで置き換わり、既存のPCI/PCI-Xデバイスを接続するためにブリッジが使用される。チップセット間の接続もPCI Express接続となり、IEEE1394,Serial ATA,USB 2.0などの既存のバスはI/OハブによりPCI Expressに接続される。
【0042】
[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を可変することにより、スケーラブルなバンド幅を構成することが可能となる。
【0043】
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側の例)がある。
【0044】
C.エンドポイント(End Point)
エンドポイント115は、タイプ00hのコンフィグレーション空間ヘッダを持つデバイス(具体的には、ブリッジ以外のデバイス)で、レガシーエンドポイントとPCI Expressエンドポイントとに分けられる。両者の大きな違いは、PCI ExpressエンドポイントはBAR(ベースアドレスレジスタ)でI/Oリソースを要求せず、このためI/Oリクエストを要求しない。また、PCI Expressエンドポイントは、ロックリクエストもサポートしていない。
【0045】
D.スイッチ(Switch)
スイッチ117(又は、134)は、2つ以上のポートを結合し、ポート間でのパケットルーティングを行う。コンフィグレーションソフトウェアからは、当該スイッチは、図6に示すように、仮想PCI-PCIブリッジ141の集合体として認識される。図中、両矢印はPCI Expressリンク114(又は、126)を示し、142a〜142dはポートを示す。このうち、ポート142aはルートコンプレックスに近い方のアップストリームポートであり、ポート142b〜142dはルートコンプレックスから遠い方のダウンストリームポートである。
【0046】
E.PCI Express114e−PCIブリッジ119
PCI ExpressからPCI/PCI-Xへの接続を提供する。これにより、既存のPCI/PCI-XデバイスをPCI Expressシステム上で使用することができる。
【0047】
[階層アーキテクチャ]
従来のPCIのアーキテクチャは、図7−1に示すように、プロトコルとシグナリングが密接に関連する構造であり階層という考え方はなかったが、PCI Expressでは、図7−2に示すように、一般的な通信プロトコルやInfiniBandのように、独立した階層構造とされ、各層に分けて仕様が定義されている。即ち、最上位のソフトウェア151、最下位の機構(メカニカル)部152間に、トランザクション層153、データリンク層154、物理層155を持つ構造とされている。これにより、各層のモジュール性が確保され、スケーラビリティを持たせることやモジュールの再利用が可能となる。例えば、新たな信号コーディング方式や伝送媒体を採用する場合、物理層を変更するだけでデータリンク層やトランザクション層は変更せずに対応できる。
【0048】
PCI Expressのアーキテクチャの中心となるのは、トランザクション層153、データリンク層154、物理層155であり、各々図8を参照して説明する以下のような役割を持つ。
【0049】
A.トランザクション層153
トランザクション層153は、最上位に位置し、トランザクションレイヤパケット(TLP)の組み立て、分解機能を持つ。トランザクションレイヤパケット(TLP)は、リード/ライト、各種イベントといったトランザクションの伝達に用いられる。また、トランザクション層153は、トランザクションレイヤパケット(TLP)のためのクレジットを用いたフロー制御を行う。各層153〜155におけるトランザクションレイヤパケット(TLP)の概要を図9に示す(詳細は、後述する)。
【0050】
B.データリンク層154
データリンク層154の主な役割は、エラー検出/訂正(再送)によりトランザクションレイヤパケット(TLP)のデータ完全性を保証することと、リンク管理である。データリンク層154間では、リンク管理やフロー制御のためのパケットのやり取りを行う。このパケットは、トランザクションレイヤパケット(TLP)と区別するために、データリンクレイヤパケット(DLLP)と呼ばれる。
【0051】
C.物理層155
物理層155は、ドライバ、入力バッファ、パラレル−シリアル/シリアル−パラレル変換器、PLL、インピーダンス整合回路といったインタフェース動作に必要な回路を含んでいる。また、論理的な機能としてインタフェースの初期化・保守の機能を持つ。物理層155は、データリンク層154/トランザクション層153を実際のリンクで使用される信号技術から独立させる役目も持っている。
【0052】
なお、PCI Expressのハードウェア構成上、エンベデッド・クロックという技術を採用しており、クロック信号はなく、クロックのタイミングはデータ信号中に埋め込まれており、受信側でデータ信号のクロス・ポイントを基にクロックを抽出する方式とされている。
【0053】
[コンフィグレーション空間]
PCI Expressは、従来のPCIと同様にコンフィグレーション空間を持つが、その大きさは従来のPCIが256バイトであるのに対して、図10に示すように、4096バイトへと拡張されている。これにより、多数のデバイス固有レジスタセットを必要とするデバイス(ホストブリッジなど)に対しても、将来的に十分な空間が確保されている。PCI Expressでは、コンフィグレーション空間へのアクセスは、フラットなメモリ空間へのアクセス(コンフィグレーションリード/ライト)で行われ、バス/デバイス/機能/レジスタ番号はメモリアドレスにマップされている。
【0054】
当該空間の先頭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拡張空間にアクセスできるようにする必要がある。
【0055】
なお、PCI Expressとしては様々なフォームファクタ(形状)が考えられるが、具体化している例としては、アドインカード、プラグインカード(Express Card)、Mini PCI Expressなどがある。
【0056】
[PCI Express のアーキテクチャの詳細]
PCI Express のアーキテクチャの中心となっているトランザクション層153、データリンク層154、物理層155について、各々詳細に説明する。
【0057】
A.トランザクション層153
トランザクション層153の主な役割は、前述したように、上位のソフトウェア層151と下位のデータリンク層154との間でトランザクションレイヤパケット(TLP)の組み立てと分解を行うことである。
【0058】
a.アドレス空間とトランザクションタイプ
PCI Expressでは、従来のPCIでサポートされていたメモリ空間(メモリ空間とのデータ転送用)、I/O空間(I/O空間とのデータ転送用)、コンフィグレーション空間(デバイスのコンフィグレーションとセットアップ用)に加えて、メッセージ空間(PCI Expressデバイス間のインバンドでのイベント通知や一般的なメッセージ送信(交換)用…割り込み要求や確認は、メッセージを「仮想ワイヤ」として使用することにより伝達される)が追加され、4つのアドレス空間が定義されている。各々の空間に対してトランザクションタイプが定義されている(メモリ空間、I/O空間、コンフィグレーション空間は、リード/ライト、メッセージ空間は基本(ベンダ定義含む))。
【0059】
b.トランザクションレイヤパケット(TLP)
PCI Expressは、パケット単位で通信を行う。図9に示したトランザクションレイヤパケット(TLP)のフォーマットにおいて、ヘッダのヘッダ長は3DW(DWはダブルワードの略;合計12バイト)又は4DW(16バイト)で、トランザクションレイヤパケット(TLP)のフォーマット(ヘッダ長とペイロードの有無)、トランザクションタイプ、トラフィッククラス(TC)、アトリビュートやペイロード長などの情報が含まれる。パケット内の最大ペイロード長は1024DW(4096バイト)である。
【0060】
ECRCは、エンドツーエンドのデータ完全性を保証するためのもので、トランザクションレイヤパケット(TLP)部分の32ビットCRCである。これは、スイッチ内部などでトランザクションレイヤパケット(TLP)にエラーが発生した場合、LCRC(リンクCRC)ではエラーを検出できないためである(エラーとなったTLPでLCRCが再計算されるため)。
【0061】
リクエストは、完了パケットが不要なものと必要なものとがある。
【0062】
c.トラフィッククラス(TC)と仮想チャネル(VC)
上位のソフトウェアは、トラフィッククラス(TC)を使用することによりトラフィックの差別化(優先度をつける)を行うことができる。例えば、映像データをネットワークのデータよりも優先して転送する、といったことが可能となる。トラフィッククラス(TC)はTC0からTC7まで8つある。
【0063】
仮想チャネル(VC:Vertual Channel)は、各々独立した仮想通信バス(同一のリンクを共用する複数の独立したデータ・フロー・バッファを使用するメカニズム)で、各々がリソース(バッファやキュー)を持ち、図11に示すように、独立したフロー制御を行う。これにより、1つの仮想チャネルのバッファが満杯の状態(full)になっても、他の仮想チャネルの転送を行うことができる。つまり、物理的には1つのリンクを仮想的な複数のチャネルに分けることで、有効に使用することができる。例えば、図11中に示すように、スイッチを経由してルートのリンクが複数のデバイスに分かれる場合、各デバイスのトラフィックの優先度を制御することができる。VC0は必須で、コストパフォーマンスのトレードオフに応じてその他の仮想チャネル(VC1〜VC7)が実装される。図11中の実線矢印は、デフォルト仮想チャネル(VC0)を示し、破線矢印はその他の仮想チャネル(VC1〜VC7)を示している。
【0064】
トランザクション層内では、トラフィッククラス(TC)が仮想チャネル(VC)にマッピングされる。1つの仮想チャネル(VC)に対して1つ又は複数のトラフィッククラス(TC)をマッピングできる(仮想チャネル(VC)の数が少ない場合)。単純な例では、各トラフィッククラス(TC)から各仮想チャネル(VC)に1対1、全てのトラフィッククラス(TC)を仮想チャネルVC0にマッピングする、といったことが考えられる。TC0−VC0のマッピングは、必須/固定で、それ以外のマッピングは上位のソフトウェアから制御される。ソフトウェアはトラフィッククラス(TC)を利用することで、トランザクションの優先度を制御することが可能となる。
【0065】
d.フロー制御
受信バッファのオーバーフローを避け、伝送順序を確立するためにフロー制御(FC:Flow Control)が行われる。フロー制御は、リンク間のポイントツーポイントで行われ、エンドツーエンドではない。従って、フロー制御により最終的な相手(コンプリータ)にパケットが届いたことを確認することはできない。
【0066】
PCI Expressのフロー制御は、クレジット・ベースで行われる(データ転送を始める前に、受け取り側のバッファの空き状況を確認し、オーバーフロー、アンダフローが発生しないメカニズム)。即ち、受信側はリンク初期化時にバッファ容量(クレジット値)を送信側に通知し、送信側はクレジット値と送信するパケットの長さとを比較し、一定の残りがある場合のみパケットを送信する。このクレジットには6種類ある。
【0067】
フロー制御の情報交換はデータリンク層のデータリンクレイヤパケット(DLLP)を使用して行われる。フロー制御はトランザクションレイヤパケット(TLP)のみに適用され、データリンクレイヤパケット(DLLP)には適用されない(DLLPは常時送受信可能)。
【0068】
B.データリンク層154
データリンク層154の主な役割は、前述したように、リンク上の2つのコンポーネント間での信頼性の高いトランザクションレイヤパケット(TLP)交換機能を提供することである。
【0069】
a.トランザクションレイヤパケット(TLP)の扱い
トランザクション層153から受け取ったトランザクションレイヤパケット(TLP)に対しては、先頭に2バイトのシーケンス番号、末尾に4バイトのリンクCRC(LCRC)を付加して、物理層155に渡す(図9参照)。トランザクションレイヤパケット(TLP)は、リトライバッファに保管され、相手から受信確認(ACK)が届くまで再送される。トランザクションレイヤパケット(TLP)の送信に失敗が続いた場合は、リンク異常であると判断して物理層155に対してリンクの再トレーニングを要求する。リンクのトレーニングが失敗した場合、データリンク層154の状態はインアクティブに遷移する。
【0070】
物理層155から受け取ったトランザクションレイヤパケット(TLP)は、シーケンス番号とリンクCRC(LCRC)が検査され、正常であればトランザクション層153に渡され、エラーがあった場合は再送を要求する。
【0071】
b.データリンクレイヤパケット(DLLP)
トランザクションレイヤパケット(TLP)は、物理層から送信されるときに自動的に図12に示すようなデータリンクレイヤパケット(DLLP)に分割されて各レーンに送信される。データリンク層154が生成するパケットは、データリンクレイヤパケット(DLLP)と呼ばれ、データリンク層154間でやり取りされる。データリンクレイヤパケット(DLLP)には、
・Ack/Nak:TLPの受信確認、リトライ(再送)
・InitFC1/InitFC2/UpdateFC:フロー制御の初期化とアップデート
・電源管理のためのDLLP
なる種類がある。
【0072】
図12に示すように、データリンクレイヤパケット(DLLP)の長さは6バイトで、種類を示すDLLPタイプ(1バイト)、DLLPの種類で固有の情報(3バイト)、CRC(2バイト)から構成される。
【0073】
C.物理層−論理サブブロック156
図8中に示す物理層155の論理サブブロック156での主な役割は、データリンク層154から受け取ったパケットを電気サブブロック157で送信できる形式に変換することである。また、物理層155を制御/管理する機能も有する。
【0074】
a.データ符号化とパラレル−シリアル変換
PCI Expressは、連続した“0”や“1”が続かないように(長い期間、クロス・ポイントが存在しない状態が続かないようにするため)、データ符号化に8B/10B変換を用いる。変換されたデータは、図13中に示すように、シリアル変換され、LSBからレーン上に送信される。ここに、レーンが複数ある場合は(図13はx4リンクの場合を例示している)、符号化の前にデータがバイト単位で各レーンに割り振られる。この場合、一見パラレル・バスのようにみえるが、レーン毎に独立した転送を行うので、パラレル・バスで問題となるスキューが大幅に緩和される。
【0075】
b.電源管理とリンクステート
リンクの消費電力を低く抑えるために、図14に示すように、L0/L0s/L1/L2というリンクステートが定義されている。
【0076】
L0が通常モードで、L0sからL2へと低消費電力となるが、L0への復帰にも時間がかかるようになる。図15に示すように、ソフトウェアによる電源管理に加えて、アクティブステート電源管理を積極的に行うことにより、消費電力を極力小さくすることが可能となる。
【0077】
D.物理層−電気サブブロック157
物理層155の電気サブブロック157での主な役割は、論理サブブロック156でシリアル化されたデータをレーン上に送信することと、レーン上のデータを受信して論理サブブロック156に渡すことである。
【0078】
a.ACカップリング
リンクの送信側では、ACカップリング用のコンデンサが実装される。これにより、送信側と受信側のDCコモンモード電圧が同一である必要がなくなる。このため、送信側と受信側で異なる設計、半導体プロセス、電源電圧を使用することが可能となる。
【0079】
b.デエンファシス
PCI Expressでは、前述したように、8B/10Bエンコーディングによってできるだけ連続した“0”や“1”が続かないように処理されるが、連続した“0”や“1”が続くこともある(最大5回)。この場合、送信側はデエンファシス転送を行わなければならないことが規定されている。同一極性のビットが連続する場合は、2つ目のビットからは差動電圧レベル(振幅)を3.5±0.5dB落とすことで、受信側で受け取る信号のノイズ・マージンを稼ぐ必要がある。これを、デエンファシスという。伝送路の周波数依存性減衰のため、変化するビットの場合は高周波成分が多く、減衰により受信側の波形が小さくなるが、変化しないビットの場合は高周波成分が少なく、相対的に受信側の波形が大きくなる。このため、受信側での波形を一定とするためにデエンファシスを行う。
【0080】
[情報処理システム]
本実施の形態のデジタル複写機やMFP等の情報処理システムは、その内部インタフェースに前述したようなPCI Express規格の高速シリアルバスを利用するようにしたものである。
【0081】
図16は、本実施の形態の情報処理システムの構成例を示す概略ブロック図である。本実施の形態の情報処理システム1は、例えばMFP等の機器に適用されるもので、その構成要素として、コントローラ2と、画像入力部である入力部3と画像出力部である出力部4とデータ保存部5とを備える。
【0082】
コントローラ2は、インストールされているプログラム(ソフトウェア)に従い当該システム全体の制御を受け持つCPU等を含み、経路制御や経路判断等の処理を行うデバイス部分(プリンタコントローラ)を意味する。また、コントローラ2は、画像データに対して拡大・縮小、回転等の画像処理、圧縮、伸長、データ変換処理(プリンタ言語の展開、拡大、縮小)、メモリ管理などの処理を行う。
【0083】
入力部3とは、原稿画像等に基づく画像データを当該システム内に取り込むためのデバイスやユニット部分を示し、例えば、原稿画像を光電的に読み取って画像データを取得するスキャナエンジン等により構成されている。
【0084】
出力部4とは、画像データを紙などに印刷出力するデバイスやユニット部分を示し、例えば、電子写真方式のプロッタ(プリンタ)エンジン等により構成されている。なお、出力部4の印刷方式は、電子写真方式のほか、インクジェット方式、昇華型熱転写方式、銀塩写真方式、直接感熱記録方式、溶融型熱転写方式など、様々な方式を用いることができる。
【0085】
データ保存部5とは、画像データを保存するメモリやHDD等を含むデバイスやユニット部分である。
【0086】
このような構成において、コントローラ2による制御の下、入力部3から取り込まれた画像データは必要に応じてコントローラ2による画像処理を経た後、データ保存部5に転送され、データ保存部5に一旦保存される。その後、データ保存部5に保存された画像データはコントローラ2に取り込まれ必要に応じて画像処理を経た後、出力部4に転送され、印刷出力等がなされる。
【0087】
加えて、コントローラ2には、スイッチ(Switch)7をPCI Express規格による高速シリアルバス8により接続するPCI Express規格のルートコンプレックス(Root Complex)6が備えられている。スイッチ7の下位には、PCI Express規格のエンドポイント(End Point)として、画像データに基づいて用紙などの媒体上に画像形成する画像形成装置である複数のプリンタ9が、PCI Express規格による高速シリアルバス10でそれぞれ接続されている。なお、プリンタ9は、それぞれ同一の性能を有しているものとする。ここで、高速シリアルバス8のリンクのレーン数は“x1”、高速シリアルバス10のリンクのレーン数は各々“x1”とする。
【0088】
ここで、本実施の形態の情報処理システム1が備える特徴的な機能について説明する。本実施の形態の情報処理システム1においては、入力部3より読み取った画像データを複数部数プリントする場合、複数部数の画像データをスイッチ7の下位に位置する複数のプリンタ9に対して、同一タイミングで送信する。この場合、ルートコンプレックス6は、データパケットをPCI Express規格のメッセージパケット(Message Packet)により、下流側へPCI Express規格のブロードキャスト(Broadcast)モードを用いて送信する。この点について、「PCI Express Base Specification Revision 1.0a」(http://www.pcisig.com/)の一部抜粋により、以下に詳述する。
【0089】
PCI Express規格のTLP(Transaction Layer Packet)の種類は、Memory Read / Write, IO Read / Write, Config Read / Write, Message, Completionなどに大別される。TLPのフォーマットは、図17に示すように、TLP Header, Data Payload, TLP Digestの3つのセクションにより、構成される。なお、TLPの種類により、Data Payloadが無い場合もある。また、TLP Digestについてもオプションであり、必ずつくわけではない。
【0090】
さらに、TLP Headerは、図18に示すような構成とされており、FmtとTypeの組み合わせにより、図19に示すテーブルにしたがって種類が判別される。
【0091】
通常のデータ転送には、図19に示すMemory Read Request(MRd)およびCompletion with Data(CplD)やMemory Write Request(MWr)のTLPが使用される。
【0092】
ここで、メッセージパケットについて説明する。メッセージパケットには、図19に示すように、Data Payloadを含まないMsgと、Data Payloadを含むMsgDの2種類がある。Msg及びMsgDにおいては、図20に示すテーブルに従うことにより、r[2:0]の部分でメッセージパケットのルーティング方式を決めることができる。図20に示すように、メッセージパケットでは、r[2:0]を011にすることにより、ルートコンプレックス(RootComplex)からすべてのエンドポイント(Endpoint)に対するブロードキャスト(Broadcast)パケットを送信することが可能である。図21は、メッセージリクエストヘッダのデータ構成を示す説明図である。r[2:0]は、図21ではTypeフィールドの下位3bitに指定される。このようなメッセージパケットは、基本的には、割り込み通達、パワーマネジメント、エラー通達、ロックトランザクション、スロットパワー制限、ホットプラグなど、特定のメッセージを送信する用途で用いられる。しかしながら、PCI Express規格においては、Vendor#Defined Messagesも規定されており、あらかじめ規格で決められた用途以外のデータを送るために使用することも可能になっている。Vendor#Degined Messageを使用するには、MessageCode のフィールドを、図22に示すType0,1のいずれかを指定すればよい。そして、Broadcastでパケットを送信する場合は、図22に示すRouting r[2:0]の部分で011を指定する。
【0093】
このようなメッセージパケットによってData Payloadを送る場合は、Fmtのフィールドを11にする。また、Datapayloadを含む場合、TLPのLengthフィールドにはDatapayloadサイズを指定する。
【0094】
以上、Message TLPによるBroadcast送信でベンダー定義のデータを送るためには、TLPヘッダの構成を、
Fmt: 11 (MsgD)
Type: 10011(broadcast)
Code: 0111 1110あるいは0111 1111 (Vendor-Defined)
Length: Data Payloadのサイズ
とし、Data Payloadに送信するデータを含むようなメッセージパケットを生成すれば、Rootcomplexから全てのEndpoint宛のデータを送信することができる。
【0095】
このようにbroadcastが指定されているパケットは、スイッチにおいて上流ポートから送られてきたデータがコピーされ、下流の全ポートに送信される。
【0096】
このように本実施の形態によれば、コントローラ2において画像データを含むメッセージパケットを生成し、ルートコンプレックス6からスイッチ7を介して全てのプリンタ9に対し、メッセージパケットをブロードキャストモードを用いて送信することにより、全てのプリンタ9における同一の画像データについての同時印刷、すなわち、多部数を同時に印刷することができるので、印刷時間を短縮することができ、大量の部数を出力する場合における処理の高速化を図ることができる。もちろん、プリンタ9として高速のプリンタを用いることにより、さらなる高速化を図ることができる。また、プリンタ9として低速のプリンタを用いた場合であっても、全ての低速プリンタにおける同一の画像データについての同時印刷、すなわち、多部数を同時に印刷することで、低速のプリンタであっても高速化を図ることができる。
【0097】
また、メッセージパケットによりブロードキャスト送信する場合には、PCI Express規格による高速シリアルバス8,10のリンクのレーン数は各々“x1”で良いことから、上流側のリンクではプリンタ9の台数分のリンクのレーン数が不要となり、リンクのレーン数を減らすことができる。
【0098】
なお、図23に示すように、図16に示した構成に対して、ルートコンプレックス11を多段階に設け、PCI Express規格による高速シリアルバス13でスイッチ12を接続することにより、システムを拡張することができる。
【0099】
このように本実施の形態によれば、画像データを複数部数プリントする場合、ルートコンプレックス6が、スイッチ7の下位に位置する少なくとも2以上のプリンタ9に対して、スイッチ7を介して同一タイミングで複数部数の画像データを送信することにより、全てのプリンタ9における同一の画像データについての同時印刷、すなわち、多部数を同時に印刷することができるので、印刷時間を短縮することができ、大量の部数を出力する場合における処理の高速化を図ることができる。
【0100】
また、メッセージパケットによりブロードキャスト送信することにより、PCI Express規格による高速シリアルバス8,10のリンクのレーン数は各々“x1”で良いことから、上流側のリンクではプリンタ9の台数分のリンクのレーン数が不要となり、リンクのレーン数を減らすことができる。
【0101】
[第2の実施の形態]
次に、本発明の第2の実施の形態を図24に基づいて説明する。なお、前述した第1の実施の形態と同じ部分は同じ符号で示し説明も省略する。
【0102】
第1の実施の形態においては、画像データを含むメッセージパケットを複数のプリンタ9に対しブロードキャスト送信することにより、多部数を同時に印刷するようにしたが、本実施の形態においては、アドレスを振り分けて下流のプリンタへ出力するようにしたものである。
【0103】
図24は、本実施の形態の情報処理システムの構成例を示す概略ブロック図である。本実施の形態の情報処理システム1は、構成的には、高速シリアルバス8のリンクのレーン数が“x4”である点が第1の実施の形態と異なっている。すなわち、本実施の形態においては、スイッチ7の上流側のリンクのレーン数が、スイッチ7の下流にあるリンクのレーン数分(すなわち、プリンタ9の台数分のリンクのレーン数)だけ必要になっている。
【0104】
つまり、本実施の形態においては、ルートコンプレックス6で画像データを各プリンタ9のアドレスに振り分けるようにしている。
【0105】
このように本実施の形態によれば、スイッチ7の上流側のリンクのレーン数が、スイッチ7の下流にあるリンクのレーン数分(すなわち、プリンタ9の台数分のリンクのレーン数)だけ必要にはなるが、大量の部数を出力する場合における処理の高速化を図ることができる。
【図面の簡単な説明】
【0106】
【図1】既存PCIシステムの構成例を示すブロック図である。
【図2】PCI Expressシステムの構成例を示すブロック図である。
【図3】デスクトップ/モバイルでのPCI Expressプラットホームの構成例を示すブロック図である。
【図4】x4の場合の物理層の構造例を示す模式図である。
【図5】デバイス間のレーン接続例を示す模式図である。
【図6】スイッチの論理的構造例を示すブロック図である。
【図7−1】既存のPCIのアーキテクチャを示すブロック図である。
【図7−2】PCI Expressのアーキテクチャを示すブロック図である。
【図8】PCI Expressの階層構造を示すブロック図である。
【図9】トランザクションレイヤパケットのフォーマット例を示す説明図である。
【図10】PCI Expressのコンフィグレーション空間を示す説明図である。
【図11】仮想チャネルの概念を説明するための模式図である。
【図12】データリンクレイヤパケットのフォーマット例を示す説明図である。
【図13】x4リンクでのバイトストライピング例を示す模式図である。
【図14】L0/L0s/L1/L2というリンクステートの定義について説明する説明図である。
【図15】アクティブステート電源管理の制御例を示すタイムチャートである。
【図16】本発明の第1の実施の形態の情報処理システムの構成例を示す概略ブロック図である。
【図17】PCI Express規格のTLPのデータフォーマットを示す説明図である。
【図18】TLP Headerを示す説明図である。
【図19】TLPの種類を示すテーブルである。
【図20】メッセージパケットのルーティング方式を示すテーブルである。
【図21】メッセージリクエストヘッダのデータ構成を示す説明図である。
【図22】MessageCode のフィールドを示す説明図である。
【図23】情報処理システムの構成の変形例を示す概略ブロック図である。
【図24】本発明の第2の実施の形態の情報処理システムの構成例を示す概略ブロック図である。
【符号の説明】
【0107】
1 情報処理システム
6,11 ルートコンプレックス
7,12 スイッチ
8,10,13 高速シリアルバス
9 画像形成装置
【特許請求の範囲】
【請求項1】
画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置と、
これらの画像形成装置を高速シリアルバスによりそれぞれ接続しているスイッチと、
このスイッチの上位に位置して当該スイッチを高速シリアルバスにより接続し、前記画像データを、前記スイッチに対して送信するルートコンプレックスと、
を備えることを特徴とする情報処理システム。
【請求項2】
ルートコンプレックスを多段階に設け、高速シリアルバスでスイッチを接続する、
ことを特徴とする請求項1記載の情報処理システム。
【請求項3】
前記高速シリアルバスは、PCI Express 規格の高速シリアルバスである、
ことを特徴とする請求項1または2記載の情報処理システム。
【請求項4】
前記ルートコンプレックスは、前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットを生成し、前記データパケットをPCI Express規格のブロードキャストモードを用いて前記スイッチに対して送信し、
前記スイッチは、上流ポートから送られてきた前記データパケットについてブロードキャスト送信が指定されている場合、前記データパケットの前記画像データをコピーし、下流の全ポートに送信する、
ことを特徴とする請求項3記載の情報処理システム。
【請求項5】
前記ルートコンプレックスは、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットをブロードキャスト送信する際、PCI Express規格のTLP(Transaction Layer Packet)ヘッダの構成を、
Fmt: 11 (MsgD)
Type: 10011(broadcast)
Code: 0111 1110あるいは0111 1111 (Vendor-Defined)
Length: Data Payloadのサイズ
とし、Data Payloadに送信する前記画像データを含むような前記メッセージパケットを生成する、
ことを特徴とする請求項4記載の情報処理システム。
【請求項6】
前記ルートコンプレックスは、前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記入力部より読み取った前記画像データを前記各画像形成装置のアドレスに振り分ける、
ことを特徴とする請求項3記載の情報処理システム。
【請求項7】
前記各画像形成装置として高速のプリンタを用いる、
ことを特徴とする請求項1ないし6のいずれか一記載の情報処理システム。
【請求項8】
前記各画像形成装置として低速のプリンタを用いる、
ことを特徴とする請求項1ないし6のいずれか一記載の情報処理システム。
【請求項9】
画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置をPCI Express規格の高速シリアルバスによりそれぞれ接続しているスイッチに対して、PCI Express規格の高速シリアルバスにより接続されているコントローラに設けられたコンピュータを動作させるプログラムであって、
前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットを生成し、前記データパケットをPCI Express規格のブロードキャストモードを用いて前記スイッチに対して送信する、
ことを特徴とするプログラム。
【請求項10】
前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットをブロードキャスト送信する際、PCI Express規格のTLP(Transaction Layer Packet)ヘッダの構成を、
Fmt: 11 (MsgD)
Type: 10011(broadcast)
Code: 0111 1110あるいは0111 1111 (Vendor-Defined)
Length: Data Payloadのサイズ
とし、Data Payloadに送信する前記画像データを含むような前記メッセージパケットを生成する、
ことを特徴とする請求項9記載のプログラム。
【請求項11】
画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置をPCI Express規格の高速シリアルバスによりそれぞれ接続しているスイッチに対して、PCI Express規格の高速シリアルバスにより接続されているコントローラに設けられたコンピュータを動作させるプログラムであって、
前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを前記各画像形成装置のアドレスに振り分ける、
ことを特徴とするプログラム。
【請求項12】
画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置をPCI Express規格の高速シリアルバスによりそれぞれ接続しているスイッチに対して、PCI Express規格の高速シリアルバスにより接続されているコントローラにおけるデータ転送方法であって、
前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットを生成し、前記データパケットをPCI Express規格のブロードキャストモードを用いて前記スイッチに対して送信する、
ことを特徴とするデータ転送方法。
【請求項13】
前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットをブロードキャスト送信する際、PCI Express規格のTLP(Transaction Layer Packet)ヘッダの構成を、
Fmt: 11 (MsgD)
Type: 10011(broadcast)
Code: 0111 1110あるいは0111 1111 (Vendor-Defined)
Length: Data Payloadのサイズ
とし、Data Payloadに送信する前記画像データを含むような前記メッセージパケットを生成する、
ことを特徴とする請求項12記載のデータ転送方法。
【請求項14】
画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置をPCI Express規格の高速シリアルバスによりそれぞれ接続しているスイッチに対して、PCI Express規格の高速シリアルバスにより接続されているコントローラにおけるデータ転送方法であって、
前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを前記各画像形成装置のアドレスに振り分ける、
ことを特徴とするデータ転送方法。
【請求項1】
画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置と、
これらの画像形成装置を高速シリアルバスによりそれぞれ接続しているスイッチと、
このスイッチの上位に位置して当該スイッチを高速シリアルバスにより接続し、前記画像データを、前記スイッチに対して送信するルートコンプレックスと、
を備えることを特徴とする情報処理システム。
【請求項2】
ルートコンプレックスを多段階に設け、高速シリアルバスでスイッチを接続する、
ことを特徴とする請求項1記載の情報処理システム。
【請求項3】
前記高速シリアルバスは、PCI Express 規格の高速シリアルバスである、
ことを特徴とする請求項1または2記載の情報処理システム。
【請求項4】
前記ルートコンプレックスは、前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットを生成し、前記データパケットをPCI Express規格のブロードキャストモードを用いて前記スイッチに対して送信し、
前記スイッチは、上流ポートから送られてきた前記データパケットについてブロードキャスト送信が指定されている場合、前記データパケットの前記画像データをコピーし、下流の全ポートに送信する、
ことを特徴とする請求項3記載の情報処理システム。
【請求項5】
前記ルートコンプレックスは、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットをブロードキャスト送信する際、PCI Express規格のTLP(Transaction Layer Packet)ヘッダの構成を、
Fmt: 11 (MsgD)
Type: 10011(broadcast)
Code: 0111 1110あるいは0111 1111 (Vendor-Defined)
Length: Data Payloadのサイズ
とし、Data Payloadに送信する前記画像データを含むような前記メッセージパケットを生成する、
ことを特徴とする請求項4記載の情報処理システム。
【請求項6】
前記ルートコンプレックスは、前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記入力部より読み取った前記画像データを前記各画像形成装置のアドレスに振り分ける、
ことを特徴とする請求項3記載の情報処理システム。
【請求項7】
前記各画像形成装置として高速のプリンタを用いる、
ことを特徴とする請求項1ないし6のいずれか一記載の情報処理システム。
【請求項8】
前記各画像形成装置として低速のプリンタを用いる、
ことを特徴とする請求項1ないし6のいずれか一記載の情報処理システム。
【請求項9】
画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置をPCI Express規格の高速シリアルバスによりそれぞれ接続しているスイッチに対して、PCI Express規格の高速シリアルバスにより接続されているコントローラに設けられたコンピュータを動作させるプログラムであって、
前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットを生成し、前記データパケットをPCI Express規格のブロードキャストモードを用いて前記スイッチに対して送信する、
ことを特徴とするプログラム。
【請求項10】
前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットをブロードキャスト送信する際、PCI Express規格のTLP(Transaction Layer Packet)ヘッダの構成を、
Fmt: 11 (MsgD)
Type: 10011(broadcast)
Code: 0111 1110あるいは0111 1111 (Vendor-Defined)
Length: Data Payloadのサイズ
とし、Data Payloadに送信する前記画像データを含むような前記メッセージパケットを生成する、
ことを特徴とする請求項9記載のプログラム。
【請求項11】
画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置をPCI Express規格の高速シリアルバスによりそれぞれ接続しているスイッチに対して、PCI Express規格の高速シリアルバスにより接続されているコントローラに設けられたコンピュータを動作させるプログラムであって、
前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを前記各画像形成装置のアドレスに振り分ける、
ことを特徴とするプログラム。
【請求項12】
画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置をPCI Express規格の高速シリアルバスによりそれぞれ接続しているスイッチに対して、PCI Express規格の高速シリアルバスにより接続されているコントローラにおけるデータ転送方法であって、
前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットを生成し、前記データパケットをPCI Express規格のブロードキャストモードを用いて前記スイッチに対して送信する、
ことを特徴とするデータ転送方法。
【請求項13】
前記画像データを含むPCI Express規格のメッセージパケットを用いたデータパケットをブロードキャスト送信する際、PCI Express規格のTLP(Transaction Layer Packet)ヘッダの構成を、
Fmt: 11 (MsgD)
Type: 10011(broadcast)
Code: 0111 1110あるいは0111 1111 (Vendor-Defined)
Length: Data Payloadのサイズ
とし、Data Payloadに送信する前記画像データを含むような前記メッセージパケットを生成する、
ことを特徴とする請求項12記載のデータ転送方法。
【請求項14】
画像データに基づいて用紙などの媒体上に画像形成可能な少なくとも2以上の画像形成装置をPCI Express規格の高速シリアルバスによりそれぞれ接続しているスイッチに対して、PCI Express規格の高速シリアルバスにより接続されているコントローラにおけるデータ転送方法であって、
前記画像データを少なくとも2以上の前記画像形成装置で画像形成する場合、前記画像データを前記各画像形成装置のアドレスに振り分ける、
ことを特徴とするデータ転送方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7−1】
【図7−2】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7−1】
【図7−2】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【公開番号】特開2007−62076(P2007−62076A)
【公開日】平成19年3月15日(2007.3.15)
【国際特許分類】
【出願番号】特願2005−249172(P2005−249172)
【出願日】平成17年8月30日(2005.8.30)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
【公開日】平成19年3月15日(2007.3.15)
【国際特許分類】
【出願日】平成17年8月30日(2005.8.30)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
[ Back to top ]