(57)【要約】【課題】必要最小限の仮想チャネルを用いて目的とする複数のパケットデータ間での優先順位を指定することができ、必要な情報を必要な時に送ることができるデータ通信装置および画像形成システムを提供する。【解決手段】複数発行された各パケットデータのトラフィックの性質に基づいて仮想チャネルを割り当て、パケットデータが割り当てられた各仮想チャネルの優先順位を指定する。これにより、必要最小限の仮想チャネルを用いて目的とする複数のパケットデータ間での優先順位を指定することができ、必要な情報を必要な時に送ることができる。【選択図】        図１８
2007241882.tif 000002
【特許請求の範囲】
【請求項１】
シリアルバスを仮想チャネル単位で時分割に使い分けて複数トラフィックのパケットデータを伝送する仮想チャネル手段と、前記仮想チャネル毎に前記パケットデータを発行する優先度を調停するアービトレーション手段と、を有するデータ通信装置において、
前記アービトレーション手段は、複数発行された前記各パケットデータのトラフィックの性質に基づいて前記仮想チャネルを割り当て、パケットデータが割り当てられた前記各仮想チャネルの優先順位を指定する、
ことを特徴とするデータ通信装置。
【請求項２】
発生するトラフィックを画像データとシステム制御用のコマンドデータとに分類し、それぞれに対して前記仮想チャネルを割り当てる、
ことを特徴とする請求項１記載のデータ通信装置。
【請求項３】
転送方向の異なる複数の前記画像データに対して同一の前記仮想チャネルを割り当てる、
ことを特徴とする請求項２記載のデータ通信装置。
【請求項４】
前記システム制御用のコマンドデータの転送に、デフォルトで使用可能な仮想チャネルを用いる、
ことを特徴とする請求項２記載のデータ通信装置。
【請求項５】
前記システム制御用のコマンドデータの転送に、独立した仮想チャネルを用いる、
ことを特徴とする請求項２記載のデータ通信装置。
【請求項６】
前記仮想チャネル間で、前記システム制御用のコマンドデータのデータ転送に用いる仮想チャネルに高い優先順位を与える、
ことを特徴とする請求項２記載のデータ通信装置。
【請求項７】
前記仮想チャネル間で、前記画像データのデータ転送に用いる仮想チャネルに高い優先順位を与える、
ことを特徴とする請求項２記載のデータ通信装置。
【請求項８】
前記アービトレーション手段は、システム起動時に接続された機器および接続形態の情報を収集し、前記仮想チャネルの割り当てや前記仮想チャネル間の優先順位の設定を行う優先順位設手段を備える、
ことを特徴とする請求項１記載のデータ通信装置。
【請求項９】
前記アービトレーション手段は、異なる優先順位が予め設定されている複数のアービトレーションテーブルを有しており、前記優先順位設定手段からの指示によって前記アービトレーションテーブルを変更する、
ことを特徴とする請求項８記載のデータ通信装置。
【請求項１０】
画像入力エンジンと、画像出力エンジンと、これらの前記画像入力エンジンおよび前記画像出力エンジンを制御駆動するコントローラと、これらのコントローラと前記画像入力エンジン並びに前記画像出力エンジンとの間を接続する請求項１ないし９の何れか一記載のデータ通信装置によるインタフェースと、を備えることを特徴とする画像形成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ通信装置および画像形成システムに関する。
【背景技術】
【０００２】
一般に、画像データその他のデータを扱うデジタル複写機、複合機（ＭＦＰ）等の情報処理装置では、デバイス間のインタフェースにＰＣＩバスが使用されている。しかし、パラレル方式のＰＣＩバスでは、レーシングやスキューなどの問題があり、高速・高画質の画像形成装置に使用するには、転送レートが低い段階にきており、最近では、ＰＣＩバスのようなパラレル方式のインタフェースに代えて、IEEE1394やUSB等の高速シリアルインタフェースの使用が検討されている。例えば、特許文献１によれば、内部インタフェースとして、IEEE1394やUSB等の高速シリアルインタフェースを使用することが提案されている。
【０００３】
このような高速シリアルインタフェース上で画像データとコマンドデータを分離して転送する手法としては、IEEE1394規格やUSB規格で定められたIsochronous転送モードとasynchronous転送モードを利用する方法がある。
【０００４】
しかしながら、Isochronous転送モードとasynchronous転送モードを利用してトラフィックを分離する手法では、複数の画像データがある場合などに、画像データ間での優先順位を設定することが困難である。
【０００５】
また、他の高速シリアルインタフェースとして、ＰＣＩバス方式の後継規格に当るPCI Express（登録商標）なるインタフェースも提案され、実用化の段階にきている（例えば、非特許文献１参照）。このPCI Expressシステムは、概略的には、例えば非特許文献１中の図１等に示されるようなルートコンプレックス−スイッチ（任意階層）−デバイス等のツリー構造（木構造）によるデータ通信網として構成されている。
【０００６】
このようなPCI Express規格によれば、シリアルバスを仮想チャネル（Virtual Channel）単位で時分割に使い分けることで複数トラフィックのパケットデータを伝送する仮想チャネル機能と、仮想チャネル毎にパケットデータを発行する優先度を調停するアービトレーション機能とを有しており、シリアルバスを用いてデータ転送の優先度が異なる複数トラフィックのパケットデータを同時転送させたい場合に、転送レートの調整が可能となっている。
【０００７】
より詳細には、PCI Express規格の仮想チャネルのアービトレーションのアルゴリズムでは、仮想チャネルＶＣ毎に均等な頻度でパケットデータを発行させるラウンドロビン（Round Robin）方式、仮想チャネルＶＣ毎に任意に指定可能なテーブルに従った重み付けされた頻度でパケットデータを発行させるウエイテッドラウンドロビン（Weighted Round robin）方式、仮想チャネルＶＣ毎に固定の優先順でパケットデータを発行させるストリクト（Strict）方式があり、シリアルバス上に転送するパケットを、トランザクション単位で優先度の調整が可能である。
【０００８】
【特許文献１】特開２００１−０１６３８２号公報
【非特許文献１】“PCI Express 規格の概要”Interface誌、July’2003 里見尚志
【発明の開示】
【発明が解決しようとする課題】
【０００９】
ところが、PCI Express規格で用意されている仮想チャネルを用いた場合でも、発生するトラフィックの性質（例えば、方向性や転送レートなど）を考慮せずに仮想チャネルの割当てを行うと、多数の仮想チャネルが必要となるという問題がある。
【００１０】
本発明は、上記に鑑みてなされたものであって、必要最小限の仮想チャネルを用いて目的とする複数のパケットデータ間での優先順位を指定することができ、必要な情報を必要な時に送ることができるデータ通信装置および画像形成システムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するために、請求項１にかかる発明のデータ通信装置は、シリアルバスを仮想チャネル単位で時分割に使い分けて複数トラフィックのパケットデータを伝送する仮想チャネル手段と、前記仮想チャネル毎に前記パケットデータを発行する優先度を調停するアービトレーション手段と、を有するデータ通信装置において、前記アービトレーション手段は、複数発行された前記各パケットデータのトラフィックの性質に基づいて前記仮想チャネルを割り当て、パケットデータが割り当てられた前記各仮想チャネルの優先順位を指定する。
【００１２】
また、請求項２にかかる発明は、請求項１記載のデータ通信装置において、発生するトラフィックを画像データとシステム制御用のコマンドデータとに分類し、それぞれに対して前記仮想チャネルを割り当てる。
【００１３】
また、請求項３にかかる発明は、請求項２記載のデータ通信装置において、転送方向の異なる複数の前記画像データに対して同一の前記仮想チャネルを割り当てる。
【００１４】
また、請求項４にかかる発明は、請求項２記載のデータ通信装置において、前記システム制御用のコマンドデータの転送に、デフォルトで使用可能な仮想チャネルを用いる。
【００１５】
また、請求項５にかかる発明は、請求項２記載のデータ通信装置において、前記システム制御用のコマンドデータの転送に、独立した仮想チャネルを用いる。
【００１６】
また、請求項６にかかる発明は、請求項２記載のデータ通信装置において、前記仮想チャネル間で、前記システム制御用のコマンドデータのデータ転送に用いる仮想チャネルに高い優先順位を与える。
【００１７】
また、請求項７にかかる発明は、請求項２記載のデータ通信装置において、前記仮想チャネル間で、前記画像データのデータ転送に用いる仮想チャネルに高い優先順位を与える。
【００１８】
また、請求項８にかかる発明は、請求項１記載のデータ通信装置において、前記アービトレーション手段は、システム起動時に接続された機器および接続形態の情報を収集し、前記仮想チャネルの割り当てや前記仮想チャネル間の優先順位の設定を行う優先順位設手段を備える。
【００１９】
また、請求項９にかかる発明は、請求項８記載のデータ通信装置において、前記アービトレーション手段は、異なる優先順位が予め設定されている複数のアービトレーションテーブルを有しており、前記優先順位設定手段からの指示によって前記アービトレーションテーブルを変更する。
【００２０】
また、請求項１０にかかる発明の画像形成システムは、画像入力エンジンと、画像出力エンジンと、これらの前記画像入力エンジンおよび前記画像出力エンジンを制御駆動するコントローラと、これらのコントローラと前記画像入力エンジン並びに前記画像出力エンジンとの間を接続する請求項１ないし９の何れか一記載のデータ通信装置によるインタフェースと、を備える。
【発明の効果】
【００２１】
請求項１にかかる発明によれば、複数発行された各パケットデータのトラフィックの性質に基づいて仮想チャネルを割り当て、パケットデータが割り当てられた各仮想チャネルの優先順位を指定することにより、必要最小限の仮想チャネルを用いて目的とする複数のパケットデータ間での優先順位を指定することができ、必要な情報を必要な時に送ることができるという効果を奏する。
【００２２】
また、請求項２にかかる発明によれば、発生するトラフィックを画像データとシステム制御用のコマンドデータとに分類し、それぞれに対して仮想チャネルを割り当てることにより、高いデータ転送レートと等時性が要求されるトラフィック画像データと、データ量が少なく等時性の制約が弱いコマンドデータとの転送に、別の仮想チャネルを用いることができるという効果を奏する。
【００２３】
また、請求項３にかかる発明によれば、転送方向の異なる複数の画像データに対して同一の仮想チャネルを割り当てることにより、例えばスキャナデータとプロッタデータとではトラフィックの方向依存性が異なり、逆方向のトラフィック間では仮想チャネル間のシリアルバスの競合が発生しないため、２本のトラフィックを１本の仮想チャネルにまとめて割り当てることで、双方が高い伝送性能を得ることができるとともに、必要となる仮想チャネルの数を減らすことができるという効果を奏する。
【００２４】
また、請求項４にかかる発明によれば、システム制御用のコマンドデータの転送に、デフォルトで使用可能な仮想チャネルを用いることにより、新たにソフトウェアを追加する必要がなくなるという効果を奏する。
【００２５】
また、請求項５にかかる発明によれば、システム制御用のコマンドデータの転送に、独立した仮想チャネルを用いることにより、画像データよりも必要とされる転送性能が低いコマンドチャネルがあれば、画像データ転送用とは別の仮想チャネルに割り当てることができるという効果を奏する。
【００２６】
また、請求項６にかかる発明によれば、仮想チャネル間で、システム制御用のコマンドデータのデータ転送に用いる仮想チャネルに高い優先順位を与えることにより、コマンドチャネルの重みを大きく設定すれば、仮想チャネルのコマンドデータが、画像データよりも優先されるという効果を奏する。
【００２７】
また、請求項７にかかる発明によれば、仮想チャネル間で、画像データのデータ転送に用いる仮想チャネルに高い優先順位を与えることにより、データチャネルの重みを大きく設定すれば、データチャネルの画像データが、システム制御用のコマンドデータよりも優先されて、高い帯域を確保することができるという効果を奏する。
【００２８】
また、請求項８にかかる発明によれば、システム起動時に接続された機器および接続形態の情報を収集し、仮想チャネルの割り当てや仮想チャネル間の優先順位の設定を行う優先順位設手段を備えることにより、動作中に仮想チャネル間の優先順位を変更することができるという効果を奏する。
【００２９】
また、請求項９にかかる発明によれば、異なる優先順位が予め設定されている複数のアービトレーションテーブルを有しており、優先順位設定手段からの指示によってアービトレーションテーブルを変更することにより、動作中に仮想チャネル間の優先順位を変更することができるという効果を奏する。
【００３０】
また、請求項１０にかかる発明によれば、複数発行された各パケットデータのトラフィックの性質に基づいて仮想チャネルを割り当て、パケットデータが割り当てられた各仮想チャネルの優先順位を指定することにより、必要最小限の仮想チャネルを用いて目的とする複数のパケットデータ間での優先順位を指定することができ、必要な情報を必要な時に送ることができるという効果を奏する。
【発明を実施するための最良の形態】
【００３１】
以下に添付図面を参照して、この発明にかかるデータ通信装置および画像形成システムの最良な実施の形態を詳細に説明する。
【００３２】
［第１の実施の形態］
本発明の第１の実施の形態を図１ないし図１８に基づいて説明する。以下では、PCI Expressの詳細について、［PCI Express規格の概要］〜［PCI Express のアーキテクチャの詳細］の欄で説明し、その後、本実施の形態のデータ通信装置および画像形成システムについて、［画像形成システム］の欄で説明する。
【００３３】
［PCI Express規格の概要］
まず、本実施の形態は高速シリアルバスの一つであるPCI Express（登録商標）を利用するものであり、本実施の形態の前提として当該PCI Express規格の概要について、非特許文献１の一部抜粋により説明する。ここに、高速シリアルバスとは、１本の伝送路を用いてシリアル（直列）伝送により高速（１００Ｍｂｐｓ程度以上）にデータをやり取りすることができるインタフェースを意味する。
【００３４】
PCI Expressは、PCIの後継規格としてコンピュータ全般に通用する標準拡張バスとして規格化されたバスであり、概略的には、低電圧差動信号伝送、ポイントツーポイントで送受信独立の通信チャネル、パケット化されたスプリットトランザクション、リンク構成の違いによる高いスケーラビリティなどの特徴を持つ。
【００３５】
図１に既存のPCIシステム、図２にPCI Expressシステムの各々の構成例を示す。既存のPCIシステムにあっては、ＣＰＵ１００やＡＧＰグラフィックス１０１やメモリ１０２が接続されたホストブリッジ１０３に対して、PCI-X（PCIの上位互換規格）デバイス１０４ａ，１０４ｂがPCI-Xブリッジ１０５ａを介して接続されたり、PCIデバイス１０４ｃ，１０４ｄが接続されたPCIブリッジ１０５ｂやPCIバススロット１０６が接続されたPCIブリッジ１０７がPCIブリッジ１０５ｃを介して接続されたりしたツリー構造（木構造）とされている。
【００３６】
これに対して、PCI Expressシステムにあっては、ＣＰＵ１１０やメモリ１１１が接続されたルートコンプレックス１１２に対して、PCI Expressグラフィックス１１３がPCI Express１１４ａにより接続され、また、エンドポイント１１５ａやレガシーエンドポイント１１６ａがPCI Express１１４ｂにより接続されたスイッチ１１７ａがPCI Express１１４ｃにより接続され、さらには、エンドポイント１１５ｂやレガシーエンドポイント１１６ｂがPCI Express１１４ｄにより接続されたスイッチ１１７ｂやPCIバススロット１１８が接続されたPCIブリッジ１１９がPCI Express１１４ｅにより接続されたスイッチ１１７ｃがPCI Express１１４ｆにより接続されたツリー構造（木構造）とされている。
【００３７】
実際に想定されるPCI Expressプラットホーム例を図３に示す。図示例は、デスクトップ／モバイルへの適用例を示し、ＣＰＵ１２１がＣＰＵホストバス１２２により接続され、メモリ１２３が接続されたメモリハブ１２４（ルートコンプレックスに相当する）に対して、例えば、グラフィックス１２５がｘ１６のPCI Express１２６ａにより接続され、また、変換機能を有するＩ／Ｏハブ１２７がPCI Express１２６ｂにより接続されている。このＩ／Ｏハブ１２７には、例えば、Serial ATA１２８によりストレージ１２９が接続され、LPC１３０によりローカルＩ／Ｏ１３１が接続され、USB 2.0１３２やPCIバススロット１３３が接続されている。さらには、Ｉ／Ｏハブ１２７には、PCI Express１２６ｃによりスイッチ１３４が接続され、このスイッチ１３４には、各々、PCI Express１２６ｄ，１２６ｅ，１２６ｆによりモバイルドック１３５、ギガビットイーサネット１３６（イーサネットは登録商標）、アドインカード１３７が接続されている。
【００３８】
即ち、PCI Expressシステムでは、従来のPCI，PCI-X，AGPといったバスがPCI Expressで置き換わり、既存のPCI／PCI-Xデバイスを接続するためにブリッジが使用される。チップセット間の接続もPCI Express接続となり、IEEE1394，Serial ATA，USB 2.0などの既存のバスはＩ／ＯハブによりPCI Expressに接続される。
【００３９】
［PCI Expressの構成要素］
Ａ．ポート（Port）／レーン（Lane）／リンク（Link）
図４に物理層の構造を示す。ポートは、物理的には同一半導体内にあり、リンクを形成するトランスミッタ／レシーバの集合で、論理的にはコンポーネント・リンク間を１対１で接続（ポイント・ツー・ポイント）するインタフェースを意味する。転送レートは、例えば片方向２．５Ｇｂｐｓとされている。レーンは、例えば０．８Ｖの差動信号ペアのセットで、送信側の信号ペア（２本）、受信側の信号ペア（２本）からなる。リンクは、２つのポートとその間を結ぶレーンの集まりであり、コンポーネント間のデュアルシンプレックス通信バスである。「ｘＮリンク」はＮ本のレーンから構成され、現在の規格では、Ｎ＝１，２，４，８，１６，３２が定義されている。図示例は、ｘ４リンク例である。例えば、図５に示すように、デバイスＡ，Ｂ間を結ぶこのレーン幅Ｎを可変することにより、スケーラブルなバンド幅を構成することが可能となる。
【００４０】
Ｂ．ルートコンプレックス（Root Complex）
ルートコンプレックス１１２は、Ｉ／Ｏ構造の最上位に位置し、ＣＰＵやメモリサブシステムをＩ／Ｏに接続する。ブロック図などでは、図３に示すように、「メモリハブ」と記述されることが多い。ルートコンプレックス１１２（又は、１２４）は、１つ以上のPCI Expressポート（ルートポート）（図２中では、ルートコンプレックス１１２中の四角で示す）を持ち、各々のポートは独立したＩ／Ｏ階層ドメインを形成する。Ｉ／Ｏ階層ドメインは、単純なエンドポイントである場合（例えば、図２中のエンドポイント１１５ａ側の例）や、多数のスイッチやエンドポイントから形成される場合（例えば、図２中のエンドポイント１１５ｂやスイッチ１１７ｂ，１１５ｃ側の例）がある。
【００４１】
Ｃ．エンドポイント（End Point）
エンドポイント１１５は、タイプ００ｈのコンフィグレーション空間ヘッダを持つデバイス（具体的には、ブリッジ以外のデバイス）で、レガシーエンドポイントとPCI Expressエンドポイントとに分けられる。両者の大きな違いは、PCI ExpressエンドポイントはＢＡＲ（ベースアドレスレジスタ）でＩ／Ｏリソースを要求せず、このためＩ／Ｏリクエストを要求しない。また、PCI Expressエンドポイントは、ロックリクエストもサポートしていない。
【００４２】
Ｄ．スイッチ（Switch）
スイッチ１１７（又は、１３４）は、２つ以上のポートを結合し、ポート間でのパケットルーティングを行う。コンフィグレーションソフトウェアからは、当該スイッチは、図６に示すように、仮想PCI-PCIブリッジ１４１の集合体として認識される。図中、両矢印はPCI Expressリンク１１４（又は、１２６）を示し、１４２ａ〜１４２ｄはポートを示す。このうち、ポート１４２ａはルートコンプレックスに近い方のアップストリームポートであり、ポート１４２ｂ〜１４２ｄはルートコンプレックスから遠い方のダウンストリームポートである。
【００４３】
Ｅ．PCI Express１１４ｅ−PCIブリッジ１１９
PCI ExpressからPCI／PCI-Xへの接続を提供する。これにより、既存のPCI／PCI-XデバイスをPCI Expressシステム上で使用することができる。
【００４４】
［階層アーキテクチャ］
従来のＰＣＩのアーキテクチャは、図７−１に示すように、プロトコルとシグナリングが密接に関連する構造であり階層という考え方はなかったが、PCI Expressでは、図７−２に示すように、一般的な通信プロトコルやInfiniBandのように、独立した階層構造とされ、各層に分けて仕様が定義されている。即ち、最上位のソフトウェア１５１、最下位の機構（メカニカル）部１５２間に、トランザクション層１５３、データリンク層１５４、物理層１５５を持つ構造とされている。これにより、各層のモジュール性が確保され、スケーラビリティを持たせることやモジュールの再利用が可能となる。例えば、新たな信号コーディング方式や伝送媒体を採用する場合、物理層を変更するだけでデータリンク層やトランザクション層は変更せずに対応できる。
【００４５】
PCI Expressのアーキテクチャの中心となるのは、トランザクション層１５３、データリンク層１５４、物理層１５５であり、各々図８を参照して説明する以下のような役割を持つ。
【００４６】
Ａ．トランザクション層１５３
トランザクション層１５３は、最上位に位置し、トランザクションレイヤパケット（ＴＬＰ）の組み立て、分解機能を持つ。トランザクションレイヤパケット（ＴＬＰ）は、リード／ライト、各種イベントといったトランザクションの伝達に用いられる。また、トランザクション層１５３は、トランザクションレイヤパケット（ＴＬＰ）のためのクレジットを用いたフロー制御を行う。各層１５３〜１５５におけるトランザクションレイヤパケット（ＴＬＰ）の概要を図９に示す（詳細は、後述する）。
【００４７】
Ｂ．データリンク層１５４
データリンク層１５４の主な役割は、エラー検出／訂正（再送）によりトランザクションレイヤパケット（ＴＬＰ）のデータ完全性を保証することと、リンク管理である。データリンク層１５４間では、リンク管理やフロー制御のためのパケットのやり取りを行う。このパケットは、トランザクションレイヤパケット（ＴＬＰ）と区別するために、データリンクレイヤパケット（ＤＬＬＰ）と呼ばれる。
【００４８】
Ｃ．物理層１５５
物理層１５５は、ドライバ、入力バッファ、パラレル−シリアル／シリアル−パラレル変換器、ＰＬＬ、インピーダンス整合回路といったインタフェース動作に必要な回路を含んでいる。また、論理的な機能としてインタフェースの初期化・保守の機能を持つ。物理層１５５は、データリンク層１５４／トランザクション層１５３を実際のリンクで使用される信号技術から独立させる役目も持っている。
【００４９】
なお、PCI Expressのハードウェア構成上、エンベデッド・クロックという技術を採用しており、クロック信号はなく、クロックのタイミングはデータ信号中に埋め込まれており、受信側でデータ信号のクロス・ポイントを基にクロックを抽出する方式とされている。
【００５０】
［コンフィグレーション空間］
PCI Expressは、従来のPCIと同様にコンフィグレーション空間を持つが、その大きさは従来のPCIが２５６バイトであるのに対して、図１０に示すように、４０９６バイトへと拡張されている。これにより、多数のデバイス固有レジスタセットを必要とするデバイス（ホストブリッジなど）に対しても、将来的に十分な空間が確保されている。PCI Expressでは、コンフィグレーション空間へのアクセスは、フラットなメモリ空間へのアクセス（コンフィグレーションリード／ライト）で行われ、バス／デバイス／機能／レジスタ番号はメモリアドレスにマップされている。
【００５１】
当該空間の先頭２５６バイトは、PCIコンフィグレーション空間として、ＢＩＯＳや従来のＯＳからＩ／Ｏポートを使用した方法でもアクセスできる。従来のアクセスをPCI Expressでのアクセスに変換する機能は、ホストブリッジ上に実装される。００ｈから３ＦｈまではPCI2.3互換のコンフィグレーションヘッダとなっている。これにより、PCI Expressで拡張された機能以外であれば、従来のＯＳやソフトウェアをそのまま使用することができる。即ち、PCI Expressにおけるソフトウェア層は、既存のPCIと互換性を保ったロード・ストア・アーキテクチャ（プロセッサが直接Ｉ／Ｏレジスタをアクセスする方式）を継承している。しかし、PCI Expressで拡張された機能（例えば、同期転送やＲＡＳ（Reliability,Availability and Serviceability）などの機能）を使用するには、４ＫバイトのPCI Express拡張空間にアクセスできるようにする必要がある。
【００５２】
なお、PCI Expressとしては様々なフォームファクタ（形状）が考えられるが、具体化している例としては、アドインカード、プラグインカード（Express Card）、Mini PCI Expressなどがある。
【００５３】
［PCI Express のアーキテクチャの詳細］
PCI Express のアーキテクチャの中心となっているトランザクション層１５３、データリンク層１５４、物理層１５５について、各々詳細に説明する。
【００５４】
Ａ．トランザクション層１５３
トランザクション層１５３の主な役割は、前述したように、上位のソフトウェア層１５１と下位のデータリンク層１５４との間でトランザクションレイヤパケット（ＴＬＰ）の組み立てと分解を行うことである。
【００５５】
ａ．アドレス空間とトランザクションタイプ
PCI Expressでは、従来のPCIでサポートされていたメモリ空間（メモリ空間とのデータ転送用）、Ｉ／Ｏ空間（Ｉ／Ｏ空間とのデータ転送用）、コンフィグレーション空間（デバイスのコンフィグレーションとセットアップ用）に加えて、メッセージ空間（PCI Expressデバイス間のインバンドでのイベント通知や一般的なメッセージ送信（交換）用…割り込み要求や確認は、メッセージを「仮想ワイヤ」として使用することにより伝達される）が追加され、４つのアドレス空間が定義されている。各々の空間に対してトランザクションタイプが定義されている（メモリ空間、Ｉ／Ｏ空間、コンフィグレーション空間は、リード／ライト、メッセージ空間は基本（ベンダ定義含む））。
【００５６】
ｂ．トランザクションレイヤパケット（ＴＬＰ）
PCI Expressは、パケット単位で通信を行う。図９に示したトランザクションレイヤパケット（ＴＬＰ）のフォーマットにおいて、ヘッダのヘッダ長は３ＤＷ（ＤＷはダブルワードの略；合計１２バイト）又は４ＤＷ（１６バイト）で、トランザクションレイヤパケット（ＴＬＰ）のフォーマット（ヘッダ長とペイロードの有無）、トランザクションタイプ、トラフィッククラス（ＴＣ）、アトリビュートやペイロード長などの情報が含まれる。パケット内の最大ペイロード長は１０２４ＤＷ（４０９６バイト）である。
【００５７】
ＥＣＲＣは、エンドツーエンドのデータ完全性を保証するためのもので、トランザクションレイヤパケット（ＴＬＰ）部分の３２ビットＣＲＣである。これは、スイッチ内部などでトランザクションレイヤパケット（ＴＬＰ）にエラーが発生した場合、ＬＣＲＣ（リンクＣＲＣ）ではエラーを検出できないためである（エラーとなったＴＬＰでＬＣＲＣが再計算されるため）。
【００５８】
リクエストは、完了パケットが不要なものと必要なものとがある。
【００５９】
ｃ．トラフィッククラス（ＴＣ）と仮想チャネル（ＶＣ）
上位のソフトウェアは、トラフィッククラス（ＴＣ）を使用することによりトラフィックの差別化（優先度をつける）を行うことができる。例えば、映像データをネットワークのデータよりも優先して転送する、といったことが可能となる。トラフィッククラス（ＴＣ）はＴＣ０からＴＣ７まで８つある。
【００６０】
仮想チャネル（ＶＣ：Vertual Channel）は、各々独立した仮想通信バス（同一のリンクを共用する複数の独立したデータ・フロー・バッファを使用するメカニズム）で、各々がリソース（バッファやキュー）を持ち、図１１に示すように、独立したフロー制御を行う。これにより、１つの仮想チャネルのバッファが満杯の状態（full）になっても、他の仮想チャネルの転送を行うことができる。つまり、物理的には１つのリンクを仮想的な複数のチャネルに分けることで、有効に使用することができる。例えば、図１１中に示すように、スイッチを経由してルートのリンクが複数のデバイスに分かれる場合、各デバイスのトラフィックの優先度を制御することができる。ＶＣ０は必須で、コストパフォーマンスのトレードオフに応じてその他の仮想チャネル（ＶＣ１〜ＶＣ７）が実装される。図１１中の実線矢印は、デフォルト仮想チャネル（ＶＣ０）を示し、破線矢印はその他の仮想チャネル（ＶＣ１〜ＶＣ７）を示している。
【００６１】
トランザクション層内では、トラフィッククラス（ＴＣ）が仮想チャネル（ＶＣ）にマッピングされる。１つの仮想チャネル（ＶＣ）に対して１つ又は複数のトラフィッククラス（ＴＣ）をマッピングできる（仮想チャネル（ＶＣ）の数が少ない場合）。単純な例では、各トラフィッククラス（ＴＣ）から各仮想チャネル（ＶＣ）に１対１、全てのトラフィッククラス（ＴＣ）を仮想チャネルＶＣ０にマッピングする、といったことが考えられる。ＴＣ０−ＶＣ０のマッピングは、必須／固定で、それ以外のマッピングは上位のソフトウェアから制御される。ソフトウェアはトラフィッククラス（ＴＣ）を利用することで、トランザクションの優先度を制御することが可能となる。
【００６２】
ｄ．フロー制御
受信バッファのオーバーフローを避け、伝送順序を確立するためにフロー制御（ＦＣ：Flow Control）が行われる。フロー制御は、リンク間のポイントツーポイントで行われ、エンドツーエンドではない。従って、フロー制御により最終的な相手（コンプリータ）にパケットが届いたことを確認することはできない。
【００６３】
PCI Expressのフロー制御は、クレジット・ベースで行われる（データ転送を始める前に、受け取り側のバッファの空き状況を確認し、オーバーフロー、アンダフローが発生しないメカニズム）。即ち、受信側はリンク初期化時にバッファ容量（クレジット値）を送信側に通知し、送信側はクレジット値と送信するパケットの長さとを比較し、一定の残りがある場合のみパケットを送信する。このクレジットには６種類ある。
【００６４】
フロー制御の情報交換はデータリンク層のデータリンクレイヤパケット（ＤＬＬＰ）を使用して行われる。フロー制御はトランザクションレイヤパケット（ＴＬＰ）のみに適用され、データリンクレイヤパケット（ＤＬＬＰ）には適用されない（ＤＬＬＰは常時送受信可能）。
【００６５】
Ｂ．データリンク層１５４
データリンク層１５４の主な役割は、前述したように、リンク上の２つのコンポーネント間での信頼性の高いトランザクションレイヤパケット（ＴＬＰ）交換機能を提供することである。
【００６６】
ａ．トランザクションレイヤパケット（ＴＬＰ）の扱い
トランザクション層１５３から受け取ったトランザクションレイヤパケット（ＴＬＰ）に対しては、先頭に２バイトのシーケンス番号、末尾に４バイトのリンクＣＲＣ（ＬＣＲＣ）を付加して、物理層１５５に渡す（図９参照）。トランザクションレイヤパケット（ＴＬＰ）は、リトライバッファに保管され、相手から受信確認（ＡＣＫ）が届くまで再送される。トランザクションレイヤパケット（ＴＬＰ）の送信に失敗が続いた場合は、リンク異常であると判断して物理層１５５に対してリンクの再トレーニングを要求する。リンクのトレーニングが失敗した場合、データリンク層１５４の状態はインアクティブに遷移する。
【００６７】
物理層１５５から受け取ったトランザクションレイヤパケット（ＴＬＰ）は、シーケンス番号とリンクＣＲＣ（ＬＣＲＣ）が検査され、正常であればトランザクション層１５３に渡され、エラーがあった場合は再送を要求する。
【００６８】
ｂ．データリンクレイヤパケット（ＤＬＬＰ）
トランザクションレイヤパケット（ＴＬＰ）は、物理層から送信されるときに自動的に図１２に示すようなデータリンクレイヤパケット（ＤＬＬＰ）に分割されて各レーンに送信される。データリンク層１５４が生成するパケットは、データリンクレイヤパケット（ＤＬＬＰ）と呼ばれ、データリンク層１５４間でやり取りされる。データリンクレイヤパケット（ＤＬＬＰ）には、
・Ack／Nak：ＴＬＰの受信確認、リトライ（再送）
・InitFC1／InitFC2／UpdateFC：フロー制御の初期化とアップデート
・電源管理のためのＤＬＬＰ
なる種類がある。
【００６９】
図１２に示すように、データリンクレイヤパケット（ＤＬＬＰ）の長さは６バイトで、種類を示すＤＬＬＰタイプ（１バイト）、ＤＬＬＰの種類で固有の情報（３バイト）、ＣＲＣ（２バイト）から構成される。
【００７０】
Ｃ．物理層−論理サブブロック１５６
図８中に示す物理層１５５の論理サブブロック１５６での主な役割は、データリンク層１５４から受け取ったパケットを電気サブブロック１５７で送信できる形式に変換することである。また、物理層１５５を制御／管理する機能も有する。
【００７１】
ａ．データ符号化とパラレル−シリアル変換
PCI Expressは、連続した“０”や“１”が続かないように（長い期間、クロス・ポイントが存在しない状態が続かないようにするため）、データ符号化に８Ｂ／１０Ｂ変換を用いる。変換されたデータは、図１３中に示すように、シリアル変換され、ＬＳＢからレーン上に送信される。ここに、レーンが複数ある場合は（図１３はｘ４リンクの場合を例示している）、符号化の前にデータがバイト単位で各レーンに割り振られる。この場合、一見パラレル・バスのようにみえるが、レーン毎に独立した転送を行うので、パラレル・バスで問題となるスキューが大幅に緩和される。
【００７２】
ｂ．電源管理とリンクステート
リンクの消費電力を低く抑えるために、図１４に示すように、Ｌ０／Ｌ０ｓ／Ｌ１／Ｌ２というリンクステートが定義されている。
【００７３】
Ｌ０が通常モードで、Ｌ０ｓからＬ２へと低消費電力となるが、Ｌ０への復帰にも時間がかかるようになる。図１５に示すように、ソフトウェアによる電源管理に加えて、アクティブステート電源管理を積極的に行うことにより、消費電力を極力小さくすることが可能となる。
【００７４】
Ｄ．物理層−電気サブブロック１５７
物理層１５５の電気サブブロック１５７での主な役割は、論理サブブロック１５６でシリアル化されたデータをレーン上に送信することと、レーン上のデータを受信して論理サブブロック１５６に渡すことである。
【００７５】
ａ．ＡＣカップリング
リンクの送信側では、ＡＣカップリング用のコンデンサが実装される。これにより、送信側と受信側のＤＣコモンモード電圧が同一である必要がなくなる。このため、送信側と受信側で異なる設計、半導体プロセス、電源電圧を使用することが可能となる。
【００７６】
ｂ．デエンファシス
PCI Expressでは、前述したように、８Ｂ／１０Ｂエンコーディングによってできるだけ連続した“０”や“１”が続かないように処理されるが、連続した“０”や“１”が続くこともある（最大５回）。この場合、送信側はデエンファシス転送を行わなければならないことが規定されている。同一極性のビットが連続する場合は、２つ目のビットからは差動電圧レベル（振幅）を３．５±０．５ｄＢ落とすことで、受信側で受け取る信号のノイズ・マージンを稼ぐ必要がある。これを、デエンファシスという。伝送路の周波数依存性減衰のため、変化するビットの場合は高周波成分が多く、減衰により受信側の波形が小さくなるが、変化しないビットの場合は高周波成分が少なく、相対的に受信側の波形が大きくなる。このため、受信側での波形を一定とするためにデエンファシスを行う。
【００７７】
［画像形成システム］
本実施の形態の画像形成システムは、プリンタのような画像出力装置やスキャナのような画像入力装置、さらには、これらを併せ持つデジタル複写機、ＭＦＰ（Multi Function Peripheral）のような画像形成装置等の画像形成システムに適用されるものであって、前述したようなPCI Express規格に準拠する高速シリアルバスを利用するものである。
【００７８】
本実施の形態の画像形成システムの一例を図１６を参照して説明する。図１６は、本実施の形態の画像形成システムの各機器・デバイス等の接続の概要を示すブロック図である。当該画像形成システム１は、シリアルデータ転送にPCI Express規格のバスシステムを用いている。即ち、画像形成システム１の各部を集中的に制御するＣＰＵ１１と、ＣＰＵ１１の作業エリアとなるメモリ１２がPCI Express規格のルートコンプレックス（Root Complex）１３に接続されている。また、ルートコンプレックス１３とPCI Express規格のスイッチ（或いはスイッチ網）１４とがPCI Express規格のシリアルバス１５を介して接続されている。PCI Express規格のスイッチ（或いはスイッチ網）１４には、PCI Express規格のエンドポイント（End Point）となる各種機器・デバイスが接続されている。即ち、画像データなどを記憶するハードディスク（ＨＤＤ）ユニット２１、画像メモリユニット２２、及び、メモリユニット２３、各種の画像処理を行なう画像処理ユニット２４、外部のネットワークなどと通信を行なう高速ネットワーク２５、画像入力エンジンとしてのスキャナ２６、画像出力エンジンとしてのプロッタ２７、画像入力エンジン、画像出力エンジンを併せ持つ他のＭＦＰ２８などである。
【００７９】
このような構成によれば、高速シリアルバスであるPCI Expressシステムを利用しているので、基本的にデータ転送の高速化を図れるが、それに加えて、PCI Express規格のエンドポイント（End Point）となる各種機器・デバイス２１〜２７間でのデータ転送の一層の高速化を図ることができる。即ち、各種機器・デバイス２１〜２７間のPCI Expressシステムはルートコンプレックス１３を介することなくPCI Express規格のスイッチ（或いはスイッチ網）１４を最上位とする木構造で接続されており、各種機器・デバイス２１〜２７間でのデータ転送がルートコンプレックス１３を経ることなく行われるため、高速処理が可能となる。
【００８０】
［アービトレーションに関する規格］
このような画像形成システムでは、各々の機器・デバイスに必要とされるデータ転送レートが異なるため、精度の高いデータ転送レート調整が必要となる。このための規格として、前述したようなシリアルバスを仮想チャネルＶＣ単位で時分割に使い分けて複数トラフィックのパケットデータを伝送する仮想チャネル手段を利用し、仮想チャネルＶＣ毎にパケットデータを発行する優先度を調停する機能（アービトレーション手段）がある。
【００８１】
図１７は、PCI Express規格のアービトレーション機能に従い構成されたデータ通信装置であるスイッチ１４の構成例を示す概略ブロック図である。図示例は、最大８チャネルの仮想チャネルＶＣのうち、４チャネル構成に規定された例を示している。シリアル送信回路３１は、デバイスからチャネル毎のデータ１〜４を受け取り、パケットデータ１〜４を生成するパケット生成回路３２と、生成されたパケットデータ１〜４を仮想チャネルＶＣ毎に一時蓄える仮想チャネルバッファ（仮想チャネル手段）３３ａ〜３３ｄと、仮想チャネルバッファ３３ａ〜３３ｄに蓄えられたパケットデータ１〜４を仮想チャネルＶＣ毎にＶＣアービトレーションテーブルによって予め規定されている優先度に従い調停してシリアル出力バッファ３４を介して信号出力回路３５に出力するアービトレーション回路（アービトレーション手段）３６と、により構成されている。
【００８２】
図示例は、仮想チャネルＶＣ毎に均等な頻度でパケットデータを発行させるアービトレーションのアルゴリズムによる場合を例示しており、上記アービトレーションに従い、シリアル送信回路３１の信号出力回路３５からシリアルバス上にはパケットデータ１〜４が図示の如く均等に出力される。
【００８３】
ところが、PCI Express規格で用意されている仮想チャネルＶＣを用いた場合でも、発生するトラフィックの性質（例えば、方向性や転送レートなど）を考慮せずに仮想チャネルの割当てを行うと、多数の仮想チャネルが必要となるという問題がある。
【００８４】
そこで、本実施の形態においては、発生するトラフィックの性質（例えば、方向性や転送レートなど）に基づいて仮想チャネルを割り当てることで、必要最小限の仮想チャネルを用いて目的とする複数の画像データ間、あるいは画像データとシステム制御コマンドデータとの間などでの優先順位の設定を可能にするようにしたものである。
【００８５】
ここで、図１８は発生するトラフィックの性質に基づいて仮想チャネルを割り当てるようにした例を示す模式図である。図１８に示す例は、発生するトラフィックをプロッタデータ、スキャナデータ、システム制御コマンドデータに分類し、それぞれに対して仮想チャネルを割り当てたものである。ここで、スキャナデータおよびプロッタデータは、高いデータ転送レートと等時性が要求されるトラフィックであり、システム制御コマンドデータは、データ量が少なく、等時性の制約が弱いものとする。
【００８６】
図１８は、コントローラを構成するＣＰＵ１１→スイッチ（或いはスイッチ網）１４→プロッタ２７方向に転送されるプロッタデータのトラフィックをＶＣ２に割り当て、スキャナ２６→スイッチ（或いはスイッチ網）１４→コントローラを構成するＣＰＵ１１方向に転送されるスキャナデータのトラフィックにＶＣ３を割り当て、コントローラを構成するＣＰＵ１１→スイッチ（或いはスイッチ網）１４→スキャナ２６および コントローラを構成するＣＰＵ１１→スイッチ（或いはスイッチ網）１４→プロッタ２７方向に流れるシステム制御コマンドデータのトラフィックをともにＶＣ１に割り当てた例である。
【００８７】
なお、スキャナデータとプロッタデータとで仮想チャネルＶＣを分けたのは、スキャナデータとプロッタデータとでは、トラフィックの方向依存性が異なるからである。
【００８８】
このような場合、ＶＣアービトレーションテーブルをＷＲＲ（Weighted Round Robin）モードを用いて、
ＶＣ１：ＶＣ２：ＶＣ３＝１：２：２
というように、データチャネルであるＶＣ２およびＶＣ３の重みを大きく設定すれば、図１８に示すように、ＶＣ２のスキャナデータおよびＶＣ３のプロッタデータが、システム制御コマンドデータよりも優先されて、高い帯域を確保することができる。
【００８９】
図１８の中央のPhy Ｃｈに、ＶＣアービトレーション後のパケットデータの流れを示す。ＶＣ１のコマンドデータパケット１個に対して、ＶＣ２，ＶＣ３のデータパケットはそれぞれ２個、シリアル伝送路を通過している。
【００９０】
このように本実施の形態によれば、複数発行された各パケットデータのトラフィックの性質に基づいて仮想チャネルを割り当て、パケットデータが割り当てられた各仮想チャネルの優先順位を指定することにより、必要最小限の仮想チャネルを用いて目的とする複数のパケットデータ間での優先順位を指定することができ、必要な情報を必要な時に送ることができる。
【００９１】
なお、本実施の形態においては、システム制御コマンドデータの転送に、独立した仮想チャネルＶＣ１を用いるようにしたが、これに限るものではなく、システム制御コマンドデータの転送に、デフォルトで使用可能な仮想チャネルＶＣ０を用いるようにしても良い。これにより、新たにソフトウェアを追加する必要がなくなる。
【００９２】
また、本実施の形態においては、仮想チャネル間でデータ転送に用いる仮想チャネルＶＣ２，ＶＣ３に高い優先順位を与えているが、これに限るものではなく、仮想チャネル間でシステム制御コマンドデータの転送に用いる仮想チャネルＶＣ１に高い優先順位を与えるようにしても良い。
【００９３】
［第２の実施の形態］
次に、本発明の第２の実施の形態を図１９に基づいて説明する。なお、前述した第１の実施の形態と同じ部分は同じ符号で示し説明も省略する。
【００９４】
第１の実施の形態においては、発生するトラフィックをプロッタデータ、スキャナデータ、システム制御コマンドデータに分類し、それぞれに対して仮想チャネルを割り当てるようにした。これに対し、本実施の形態は、トラフィックの方向依存性が異なるスキャナデータとプロッタデータとを同じ仮想チャネルＶＣにまとめるようにしたものである。
【００９５】
図１９は、コントローラを構成するＣＰＵ１１→スイッチ（或いはスイッチ網）１４→プロッタ２７方向に転送されるプロッタデータのトラフィックと、プロッタデータとは逆のスキャナ２６→スイッチ（或いはスイッチ網）１４→コントローラを構成するＣＰＵ１１方向に転送されるスキャナデータのトラフィックを、ＶＣ３を割り当てた例である。逆方向のトラフィック間では、仮想チャネルＶＣ間のシリアル通信路の競合が発生しないため、２本のトラフィックを１本のＶＣ３にまとめて割り当てることで、双方が高い伝送性能を得ることができる。
【００９６】
このような場合も、スキャナデータ、プロッタデータよりも、必要とされる転送性能が低いコマンドチャネルがあれば、第１の実施の形態と同様に、データ転送用とは別のＶＣ（図１９では、ＶＣ１）に割り当てれば良い。
【００９７】
この場合、ＶＣアービトレーションテーブルをＷＲＲ（Weighted Round Robin）モードを用いて、
ＶＣ１：ＶＣ３＝１：２
というように、データチャネルであるＶＣ３の重みを大きく設定すれば、図１９に示すように、ＶＣ３のプロッタデータが、同方向のシステム制御コマンドデータよりも優先されて、高い帯域を確保することができる。
【００９８】
図１９の中央のPhy Ｃｈに、ＶＣアービトレーション後のパケットデータの流れを示す。ＶＣ１のコマンドデータパケット１個に対して、ＶＣ３のデータパケットは２個、シリアル伝送路を通過している。
【００９９】
このように本実施の形態によれば、転送方向の異なる複数の画像データに対して同一の仮想チャネルを割り当てることにより、例えばスキャナデータとプロッタデータとではトラフィックの方向依存性が異なり、逆方向のトラフィック間では仮想チャネル間のシリアルバスの競合が発生しないため、２本のトラフィックを１本の仮想チャネルにまとめて割り当てることで、双方が高い伝送性能を得ることができるとともに、必要となる仮想チャネルの数を減らすことができる。
【０１００】
［第３の実施の形態］
次に、本発明の第３の実施の形態を図２０に基づいて説明する。なお、前述した第１の実施の形態または第２の実施の形態と同じ部分は同じ符号で示し説明も省略する。
【０１０１】
本実施の形態は、システムの起動時に接続された機器及び接続形態の情報を収集し、仮想チャネルの割当てや仮想チャネル間の優先順位の設定を自動的に行うようにしたものである。
【０１０２】
図２０は、PCI Express規格のアービトレーション機能に従い構成されたスイッチ１４の構成例を示す概略ブロック図である。本実施の形態のスイッチ１４は、図１７で説明した構成に加えて、優先順位設定部４０が付加されている。
【０１０３】
この優先順位設定部４０は、システムの起動時に、接続された機器及び接続形態の情報を収集し、仮想チャネルの割り当てや仮想チャネル間の優先順位の設定を自動的に行うものである。より具体的には、優先順位設定部４０は、システムの起動時に、接続された機器及び接続形態の情報を収集し、これらの情報に従ったＶＣアービトレーションテーブルをアービトレーション回路３６に出力する。なお、優先順位設定部４０による優先順位設定処理としては、ＣＰＵによるプログラム処理により実現するようにしても良い。
【０１０４】
ここで、図２１は優先順位設定部４０における優先順位設定処理の流れを示すフローチャートである。図２１に示すように、優先順位設定部４０は、デバイス情報（接続ポート、デバイスタイプ、使用帯域、使用頻度）を設定し（ステップＳ１）、通信方向別に使用帯域、使用頻度を基に算出した評価値でデバイスを整列する（ステップＳ２）。
【０１０５】
続くステップＳ３では、使用できる仮想チャネルＶＣの数とデバイス数を比較し、使用できる仮想チャネルＶＣの数がデバイス数と同数または多い場合には（ステップＳ３のＹｅｓ）、１：１に仮想チャネルＶＣを割り当て（ステップＳ４）、使用できる仮想チャネルＶＣの数がデバイス数よりも少ない場合には（ステップＳ３のＮｏ）、通信方向別に評価値の高い順に仮想チャネルＶＣを割り当て、低い評価値のデバイスは仮想チャネルＶＣを共有させる（ステップＳ５）。
【０１０６】
その後、それぞれの通信方向で評価値の高いものから順にペアを組ませ、ＶＣ Ｎｏ.を割り当て（ステップＳ６）、割り当てたＶＣ Ｎｏ.間でデバイスの帯域、使用頻度を基にＶＣアービトレーションテーブルを生成する（ステップＳ７）。ＶＣアービトレーションテーブルは、帯域により、割り当てるスロット数、使用頻度によりスロットの配置（まとめて配置するか、分散して配置するか）を決定する。
【０１０７】
このように本実施の形態によれば、システム起動時に、接続された機器および接続形態の情報を収集し、仮想チャネルの割り当てや仮想チャネル間の優先順位の設定を行う優先順位設定部４０を備えることにより、動作中に仮想チャネル間の優先順位を変更することができる。
【０１０８】
なお、アービトレーション回路３６は複数のアービトレーションテーブルを有するようにし、優先順位設定部４０からの指示によってアービトレーションテーブルを変更することで、動作中に仮想チャネル間の優先順位を変更することができるようにしても良い。
【図面の簡単な説明】
【０１０９】
【図１】既存PCIシステムの構成例を示すブロック図である。
【図２】PCI Expressシステムの構成例を示すブロック図である。
【図３】デスクトップ／モバイルでのPCI Expressプラットホームの構成例を示すブロック図である。
【図４】ｘ４の場合の物理層の構造例を示す模式図である。
【図５】デバイス間のレーン接続例を示す模式図である。
【図６】スイッチの論理的構造例を示すブロック図である。
【図７−１】既存のPCIのアーキテクチャを示すブロック図である。
【図７−２】PCI Expressのアーキテクチャを示すブロック図である。
【図８】PCI Expressの階層構造を示すブロック図である。
【図９】トランザクションレイヤパケットのフォーマット例を示す説明図である。
【図１０】PCI Expressのコンフィグレーション空間を示す説明図である。
【図１１】仮想チャネルの概念を説明するための模式図である。
【図１２】データリンクレイヤパケットのフォーマット例を示す説明図である。
【図１３】ｘ４リンクでのバイトストライピング例を示す模式図である。
【図１４】Ｌ０／Ｌ０ｓ／Ｌ１／Ｌ２というリンクステートの定義について説明する説明図である。
【図１５】アクティブステート電源管理の制御例を示すタイムチャートである。
【図１６】本発明の第１の実施の形態の画像形成システムの各機器・デバイス等の接続の概要を示すブロック図である。
【図１７】PCI Express規格のアービトレーション機能に従い構成されたスイッチの構成例を示す概略ブロック図である。
【図１８】発生するトラフィックの性質に基づいて仮想チャネルを割り当てるようにした例を示す模式図である。
【図１９】本発明の第２の実施の形態の画像形成システムにおいて発生するトラフィックの性質に基づいて仮想チャネルを割り当てるようにした例を示す模式図である。
【図２０】本発明の第３の実施の形態のPCI Express規格のアービトレーション機能に従い構成されたスイッチの構成例を示す概略ブロック図である。
【図２１】優先順位設定部における優先順位設定処理の流れを示すフローチャートである。
【符号の説明】
【０１１０】
１      画像形成システム
１１      コントローラ
１４      データ通信装置
２６      画像入力エンジン
２７      画像出力エンジン
３３ａ〜３３ｄ    仮想チャネル手段
３６      アービトレーション手段
【図１】
2007241882.tif 000003
【図２】
2007241882.tif 000004
【図３】
2007241882.tif 000005
【図４】
2007241882.tif 000006
【図５】
2007241882.tif 000007
【図６】
2007241882.tif 000008
【図７−１】
2007241882.tif 000009
【図７−２】
2007241882.tif 000010
【図８】
2007241882.tif 000011
【図９】
2007241882.tif 000012
【図１０】
2007241882.tif 000013
【図１１】
2007241882.tif 000014
【図１２】
2007241882.tif 000015
【図１３】
2007241882.tif 000016
【図１４】
2007241882.tif 000017
【図１５】
2007241882.tif 000018
【図１６】
2007241882.tif 000019
【図１７】
2007241882.tif 000020
【図１８】
2007241882.tif 000021
【図１９】
2007241882.tif 000022
【図２０】
2007241882.tif 000023
【図２１】
2007241882.tif 000024