JP4603336B2 - Data transfer system, image forming system, and data transfer method - Google Patents
Data transfer system, image forming system, and data transfer method Download PDFInfo
- Publication number
- JP4603336B2 JP4603336B2 JP2004324556A JP2004324556A JP4603336B2 JP 4603336 B2 JP4603336 B2 JP 4603336B2 JP 2004324556 A JP2004324556 A JP 2004324556A JP 2004324556 A JP2004324556 A JP 2004324556A JP 4603336 B2 JP4603336 B2 JP 4603336B2
- Authority
- JP
- Japan
- Prior art keywords
- endpoint
- switch
- data transfer
- data
- pci express
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Transfer Systems (AREA)
- Communication Control (AREA)
- Bus Control (AREA)
Description
本発明は、データ転送システム、特に、各種画像データを扱い各種の処理を行う複合機(MFP)等の画像形成システム及びデータ転送方法に関する。 The present invention relates to a data transfer system, and more particularly to an image forming system such as a multifunction peripheral (MFP) that handles various image data and performs various processes, and a data transfer method.
一般に、画像データその他のデータを扱う機器・システムでは、デバイス間のインタフェースにPCIバスが使用されている。しかし、パラレル方式のPCIバスでは、レーシングやスキューなどの問題があり、高速・高画質の画像機器に使用するには、転送レートが低い段階にきており、最近では、PCIバスのようなパラレル方式のインタフェースに代えて、高速シリアルインタフェースの使用が検討されている。従来、一般的に広く用いられているシリアルインタフェースとしてIEEE1394やUSB等の規格があるが、PCIと比較した場合は転送レートが不足しており、さらにスケーラブルなバス幅確保が困難等の不具合がある。このため、他の高速シリアルインタフェースとして、PCIバス方式の後継規格に当るPCI Express(登録商標)なるインタフェースの使用が検討されている。 Generally, in a device / system that handles image data and other data, a PCI bus is used as an interface between devices. However, the parallel PCI bus has problems such as racing and skew, and the transfer rate has been low for use in high-speed and high-quality image equipment. The use of a high-speed serial interface is being considered in place of the system interface. Conventionally, there are standards such as IEEE1394 and USB as a widely used serial interface, but there are problems such as insufficient transfer rate and difficulty in securing a scalable bus width compared to PCI. . For this reason, the use of an interface called PCI Express (registered trademark) corresponding to a successor standard of the PCI bus system is being studied as another high-speed serial interface.
このPCI Expressシステムは、詳細は後述するが、概略的には、例えば、非特許文献1中の図1等に示されるようなツリー構造(木構造)によるデータ通信網として構成されている。 Although details will be described later, this PCI Express system is schematically configured as a data communication network having a tree structure (tree structure) as shown in FIG.
その一例を単純化して図23に示す。即ち、PCI Expressシステム200は、管理するルートノード(ルートコンプレックス)201を頂点として、スイッチSW1,SW2,SW3,…を介して複数のエンドノード(エンドポイント)A,B,C,D,…をツリー構造に接続してなる。ここに、各スイッチSW1,SW2,SW3,…は、上流ポート(ルートノード側)を1つ持ち、下流ポート(エンドノード側)を複数持つ構成とされ、スイッチSW1,SW2,SW3,…以外のデバイスA,B,C,D,…は、何れも1つのみのポートを有しており、各デバイス間の通信経路は、ツリー構造によって一意に決まる構成とされている。
An example of this is simplified and shown in FIG. That is, the
また、ノード間、スイッチ間の接続線は、予めデータ転送に必要な速度に応じた接続線で接続しておくが、この際、各接続線は、各々性能の異なるもの(例えば、バス幅を示すレーン数がx8,x4.x2等)を使用可能とされている。また、スイッチSW1,SW2,SW3,…は、各ポートにプライオリティを設定することにより、複数のデータ転送を並行して処理する場合(競合が起きている際)に、転送速度を調整することができる。 The connection lines between nodes and switches are connected in advance according to the speed required for data transfer. At this time, each connection line has a different performance (for example, a bus width). The number of lanes shown is x8, x4.x2, etc.). Further, the switches SW1, SW2, SW3,... Can adjust the transfer speed when a plurality of data transfers are processed in parallel (when contention occurs) by setting priority to each port. it can.
ところが、このようなPCI Expressシステムを単純に利用した場合、通信経路が固定されているため、複数の独立したデータ転送を並行して処理する場合、データ転送経路の競合が生じ、転送効率が低下してしまう不都合がある。 However, when such a PCI Express system is simply used, the communication path is fixed, so when multiple independent data transfers are processed in parallel, contention of the data transfer path occurs and transfer efficiency decreases. There is an inconvenience.
例えば、図23に示した例で説明すると、ルートノード201からエンドノードAへの経路202とエンドノードCからエンドノードBへの経路203とで、2種類のデータ転送を同時に処理しようとする場合、図23中に拡大して示すように、スイッチSW1中のスイッチSW2に対する下流ポートの競合が生じてしまう。よって、経路202のパケットと経路203のパケットとを交互に出力すると、転送レートが半分に落ち、転送効率が低下する。また、スイッチSW1のアービトレーションにより、一方の経路202又は203を優先させることは可能であるが、他方の経路203又は202の転送効率はさらに低下してしまう。
For example, in the example shown in FIG. 23, when a
図23に示すような競合が生じないようにするためには、例えば、図24に示すように、予めスイッチSW2,SW2に対するエンドノードA,B,C,Dの接続を変えておけばよいが、別の並行処理動作において、経路202の処理と、エンドノードCからエンドノードDへの経路204の処理とを同時に処理しなければならない場合は、図23の場合と同様の競合が生じ、転送レートが低下してしまい、本質的な改善とはならない。
In order to prevent the competition shown in FIG. 23 from occurring, for example, as shown in FIG. 24, the connections of the end nodes A, B, C, and D to the switches SW2 and SW2 may be changed in advance. In another parallel processing operation, when the processing of the
このようなデータ転送レートの低下は、データ転送経路の競合時だけでなく、必要以上に多段のスイッチを経るデータ転送経路の場合も同様である。 Such a decrease in the data transfer rate is the same not only when the data transfer path competes but also in the case of a data transfer path that passes through more switches than necessary.
本発明の目的は、複数の独立したデータ転送を並行して処理する場合のデータ転送経路の競合や、必要以上に多段のスイッチを経るデータ転送経路を避けることによりデータ転送効率の向上を図ることである。 An object of the present invention is to improve data transfer efficiency by avoiding data transfer path contention when a plurality of independent data transfers are processed in parallel or a data transfer path that passes through more than necessary switches. It is.
請求項1記載の発明は、木構造によるデータ通信網として送受信独立の通信チャネルが確立されるデータ転送システムであって、前記木構造における下流側に位置する第1のデバイスは上流側に位置する第1のスイッチと通信可能な第1のエンドポイントおよび上流側に位置する第2のスイッチと通信可能な第2のエンドポイントを含む複数のエンドポイントを有するとともに、当該木構造における下流側に位置する第2のデバイスは上流側に位置する前記第1のスイッチと通信可能な第3のエンドポイントおよび上流側に位置する前記第2のスイッチと通信可能な第4のエンドポイントを含む複数のエンドポイントを有し、前記第1のデバイスは、前記第1のスイッチおよび前記第2のスイッチのそれぞれに独立したデータ転送を実行する動作モードの場合に、前記第1のエンドポイントおよび前記第2のエンドポイントを使用するように、当該第1のデバイスが有する前記複数のエンドポイントのうちで使用するエンドポイントを調停する第1のアービタを有し、前記第2のデバイスは、前記第1のスイッチおよび前記第2のスイッチのそれぞれに独立したデータ転送を実行する動作モードの場合に、前記第3のエンドポイントおよび前記第4のエンドポイントを使用するように、当該第2のデバイスが有する前記複数のエンドポイントのうちで使用するエンドポイントを調整する第2のアービタを有する。
The invention of
請求項2記載の発明は、請求項1記載のデータ転送システムにおいて、当該データ転送システムがPCI Expressシステムである。
The invention according to
請求項3記載の発明の画像形成システムは、請求項1又は2記載のデータ転送システムは、前記第1のデバイスおよび前記第2のデバイスを画像形成に関与するデバイスとする。 According to a third aspect of the present invention, in the data transfer system according to the first or second aspect , the first device and the second device are devices involved in image formation.
請求項4記載の発明は、請求項3記載の画像形成システムにおいて、前記第1のデバイスまたは前記第2のデバイスとして、少なくとも、画像入力用デバイスと画像出力用デバイスと画像処理用デバイスとストレージ用デバイスとを含む。 According to a fourth aspect of the present invention, in the image forming system according to the third aspect , at least an image input device, an image output device, an image processing device, and a storage device are used as the first device or the second device . Including devices.
請求項5記載の発明は、木構造によるデータ通信網として送受信独立の通信チャネルが確立され、前記木構造における下流側に位置する第1のデバイスが上流側に位置する第1のスイッチと通信可能な第1のエンドポイントおよび上流側に位置する第2のスイッチと通信可能な第2のエンドポイントを含む複数のエンドポイントを有するとともに、当該木構造における下流側に位置する第2のエンドポイントが上流側に位置する前記第1のスイッチと通信可能な第3のエンドポイントおよび上流側に位置する前記第2のスイッチと通信可能な第4のエンドポイントを含む複数のエンドポイントを有するデータ転送システムを利用するデータ転送方法であって、前記第1のデバイスが、前記第1のスイッチおよび前記第2のスイッチのそれぞれに独立したデータ転送を実行する動作モードの場合に、前記第1のエンドポイントおよび前記第2のエンドポイントを使用するように、当該第1のデバイスが有する前記複数のエンドポイントのうちで使用するエンドポイントを調停し、前記第2のデバイスが、前記第1のスイッチおよび前記第2のスイッチのそれぞれに独立したデータ転送を実行する動作モードの場合に、前記第3のエンドポイントおよび前記第4のエンドポイントを使用するように、当該第2のデバイスが有する前記複数のエンドポイントのうちで使用するエンドポイントを調停する。
The invention of
請求項6記載の発明は、請求項5記載のデータ転送方法において、前記データ転送システムがPCI Expressシステムである。
The invention according to
本発明によれば、第1のデバイスに第1のスイッチと通信可能な第1のエンドポイントおよび第2のスイッチと通信可能な第2のエンドポイントを含む複数のエンドポイントを持たせるとともに、第2のデバイスに第1のスイッチと通信可能な第3のエンドポイントおよび第2のスイッチと通信可能な第4のエンドポイントを含む複数のエンドポイントを持たせ、第1のスイッチおよび第2のスイッチのそれぞれに独立したデータ転送を実行する動作モードの場合に、第1のデバイスが第1のエンドポイントおよび第2のエンドポイントを使用し、第2のデバイスが第3のエンドポイントおよび第4のエンドポイントを使用するように、使用するエンドポイントを調整することにより、木構造を動的に変更することができ、よって、複数の独立したデータ転送を並行して処理する場合でも独立したデータ転送経路の確保によりデータ転送経路の競合を避け、或いは、必要以上に多段のスイッチを経るデータ転送経路を避けることができ、データ転送効率の向上を図ることができる。 According to the present invention, the first device to have multiple endpoints comprising a first switch and the second endpoint can communicate with the first endpoint of the possible communication and a second switch Rutotomoni, The second device has a plurality of endpoints including a third endpoint that can communicate with the first switch and a fourth endpoint that can communicate with the second switch, the first switch and the second The first device uses the first endpoint and the second endpoint, and the second device uses the third endpoint and the fourth endpoint in an operation mode that performs independent data transfer to each of the switches. to use the endpoint, by adjusting the end point used, it is possible to dynamically change the tree structure, therefore, a plurality of Germany Even when parallel data transfers are processed in parallel, it is possible to avoid data transfer path contention by securing independent data transfer paths, or to avoid data transfer paths that require more than a multi-stage switch. Improvements can be made.
本発明を実施するための最良の形態について図面を参照して説明する。 The best mode for carrying out the present invention will be described with reference to the drawings.
[PCI Express規格の概要]
まず、本実施の形態は高速シリアルバスの一つであるPCI Express(登録商標)を利用するものであり、本実施の形態の前提として当該PCI Express規格の概要について、非特許文献1の一部抜粋により説明する。ここに、高速シリアルバスとは、1本の伝送路を用いてシリアル(直列)伝送により高速(100Mbps程度以上)にデータをやり取りすることができるインタフェースを意味する。
[Outline of PCI Express standard]
First, this embodiment uses PCI Express (registered trademark), which is one of high-speed serial buses. As an assumption of this embodiment, an outline of the PCI Express standard is a part of
PCI Expressは、PCIの後継規格としてコンピュータ全般に通用する標準拡張バスとして規格化されたバスであり、概略的には、低電圧差動信号伝送、ポイントツーポイントで送受信独立の通信チャネル、パケット化されたスプリットトランザクション、リンク構成の違いによる高いスケーラビリティなどの特徴を持つ。 PCI Express is a standardized expansion bus that can be used for all computers as a successor to PCI. In general, low-voltage differential signal transmission, point-to-point independent communication channels, and packetization Split transactions and high scalability due to differences in link configuration.
図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を介して接続されたりしたツリー構造(木構造)とされている。
FIG. 1 shows a configuration example of an existing PCI system, and FIG. 2 shows a configuration example of a PCI Express system. In the existing PCI system, PCI-X (PCI upward compatible standard) devices 104a and 104b connect the PCI-X bridge 105a to the
これに対して、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により接続されたツリー構造(木構造)とされている。
On the other hand, in the PCI Express system, the PCI Express
実際に想定される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が接続されている。
An example of an actually assumed PCI Express platform is shown in FIG. The illustrated example shows an application example to desktop / mobile. For example,
即ち、PCI Expressシステムでは、従来のPCI,PCI-X,AGPといったバスがPCI Expressで置き換わり、既存のPCI/PCI-Xデバイスを接続するためにブリッジが使用される。チップセット間の接続もPCI Express接続となり、IEEE1394,Serial ATA,USB 2.0などの既存のバスはI/OハブによりPCI Expressに接続される。 That is, in the PCI Express system, the conventional PCI, PCI-X, AGP bus is replaced with PCI Express, and a bridge is used to connect an existing PCI / PCI-X device. Connection between chipsets is also PCI Express connection, and existing buses such as IEEE1394, Serial ATA, and USB 2.0 are connected to PCI Express by an I / O hub.
[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を可変することにより、スケーラブルなバンド幅を構成することが可能となる。
[Components of PCI Express]
A. Port / Lane / Link
FIG. 4 shows the structure of the physical layer. A port is a set of transmitters / receivers that are physically in the same semiconductor and form a link, and logically means an interface that connects components one-to-one (point-to-point). The transfer rate is, for example, 2.5 Gbps in one direction. The lane is, for example, a set of 0.8 V differential signal pairs, and includes a transmission-side signal pair (two) and a reception-side signal pair (two). A link is a collection of lanes connecting two ports and the two ports, and is a dual simplex communication bus between components. The “xN link” is composed of N lanes, and N = 1, 2, 4, 8, 16, 32 are defined in the current standard. The illustrated example is an x4 link example. For example, as shown in FIG. 5, by changing the lane width N connecting the devices A and B, a scalable bandwidth can be configured.
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側の例)がある。
B. Root Complex
The
C.エンドポイント(End Point)
エンドポイント115は、タイプ00hのコンフィグレーション空間ヘッダを持つデバイス(具体的には、ブリッジ以外のデバイス)で、レガシーエンドポイントとPCI Expressエンドポイントとに分けられる。両者の大きな違いは、PCI ExpressエンドポイントはBAR(ベースアドレスレジスタ)で基本的にI/Oポートリソースを要求せず、このためI/Oリクエストを要求しない。また、PCI Expressエンドポイントは、ロックリクエストもサポートしていない。
C. End point
The
D.スイッチ(Switch)
スイッチ117(又は、134)は、2つ以上のポートを結合し、ポート間でのパケットルーティングを行う。コンフィグレーションソフトウェアからは、当該スイッチは、図6に示すように、仮想PCI-PCIブリッジ141の集合体として認識される。図中、両矢印はPCI Expressリンク114(又は、126)を示し、142a〜142dはポートを示す。このうち、ポート142aはルートコンプレックスに近い方のアップストリームポートであり、ポート142b〜142dはルートコンプレックスから遠い方のダウンストリームポートである。
D. Switch
The switch 117 (or 134) couples two or more ports and performs packet routing between the ports. From the configuration software, the switch is recognized as a collection of virtual PCI-PCI bridges 141 as shown in FIG. In the figure, double-headed arrows indicate PCI Express links 114 (or 126), and 142a to 142d indicate ports. Of these, the port 142a is an upstream port closer to the root complex, and the ports 142b to 142d are downstream ports farther from the root complex.
E.PCI Express114e−PCIブリッジ117
PCI ExpressからPCI/PCI-Xへの接続を提供する。これにより、既存のPCI/PCI-XデバイスをPCI Expressシステム上で使用することができる。
E. PCI Express 114e-PCI bridge 117
Provides connection from PCI Express to PCI / PCI-X. Thereby, an existing PCI / PCI-X device can be used on the PCI Express system.
[階層アーキテクチャ]
従来のPCIのアーキテクチャは、図7(a)に示すように、プロトコルとシグナリングが密接に関連する構造であり階層という考え方はなかったが、PCI Expressでは、図7(b)に示すように、一般的な通信プロトコルやInfiniBandのように、独立した階層構造とされ、各層に分けて仕様が定義されている。即ち、最上位のソフトウェア151、最下位の機構(メカニカル)部152間に、トランザクション層153、データリンク層154、物理層155を持つ構造とされている。これにより、各層のモジュール性が確保され、スケーラビリティを持たせることやモジュールの再利用が可能となる。例えば、新たな信号コーディング方式や伝送媒体を採用する場合、物理層を変更するだけでデータリンク層やトランザクション層は変更せずに対応できる。
[Hierarchical architecture]
As shown in FIG. 7A, the conventional PCI architecture has a structure in which protocols and signaling are closely related and has no concept of hierarchy. In PCI Express, as shown in FIG. 7B, Like general communication protocols and InfiniBand, it has an independent hierarchical structure, and specifications are defined for each layer. In other words, a
PCI Expressのアーキテクチャの中心となるのは、トランザクション層153、データリンク層154、物理層155であり、各々図8を参照して説明する以下のような役割を持つ。
The core of the PCI Express architecture is a
A.トランザクション層153
トランザクション層153は、最上位に位置し、トランザクションレイヤパケット(TLP)の組み立て、分解機能を持つ。トランザクションレイヤパケット(TLP)は、リード/ライト、各種イベントといったトランザクションの伝達に用いられる。また、トランザクション層153は、トランザクションレイヤパケット(TLP)のためのクレジットを用いたフロー制御を行う。各層153〜155におけるトランザクションレイヤパケット(TLP)の概要を図9に示す(詳細は、後述する)。
The
B.データリンク層154
データリンク層154の主な役割は、エラー検出/訂正(再送)によりトランザクションレイヤパケット(TLP)のデータ完全性を保証することと、リンク管理である。データリンク層154間では、リンク管理やフロー制御のためのパケットのやり取りを行う。このパケットは、トランザクションレイヤパケット(TLP)と区別するために、データリンクレイヤパケット(DLLP)と呼ばれる。
B.
The main role of the
C.物理層155
物理層155は、ドライバ、入力バッファ、パラレル−シリアル/シリアル−パラレル変換器、PLL、インピーダンス整合回路といったインタフェース動作に必要な回路を含んでいる。また、論理的な機能としてインタフェースの初期化・保守の機能を持つ。物理層155は、データリンク層154/トランザクション層153を実際のリンクで使用される信号技術から独立させる役目も持っている。
The
なお、PCI Expressのハードウェア構成上、エンベデッド・クロックという技術を採用しており、クロック信号はなく、クロックのタイミングはデータ信号中に埋め込まれており、受信側でデータ信号のクロスポイントを基にクロックを抽出する方式とされている。 The PCI Express hardware configuration uses a technology called embedded clock, there is no clock signal, the clock timing is embedded in the data signal, and the receiving side is based on the crosspoint of the data signal. The clock is extracted.
[コンフィグレーション空間]
PCI Expressは、従来のPCIと同様にコンフィグレーション空間を持つが、その大きさは従来のPCIが256バイトであるのに対して、図10に示すように、4096バイトへと拡張されている。これにより、多数のデバイス固有レジスタセットを必要とするデバイス(ホストブリッジなど)に対しても、将来的に十分な空間が確保されている。PCI Expressでは、コンフィグレーション空間へのアクセスは、フラットなメモリ空間へのアクセス(コンフィグレーションリード/ライト)で行われ、バス/デバイス/機能/レジスタ番号はメモリアドレスにマップされている。
[Configuration space]
PCI Express has a configuration space like conventional PCI, but its size is expanded to 4096 bytes as shown in FIG. 10, whereas conventional PCI has 256 bytes. As a result, sufficient space is secured in the future even for devices (such as host bridges) that require a large number of device-specific register sets. In PCI Express, the configuration space is accessed by accessing a flat memory space (configuration read / write), and the bus / device / function / register number is mapped to a memory address.
当該空間の先頭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拡張空間にアクセスできるようにする必要がある。 The first 256 bytes of the space can be accessed as a PCI configuration space by a method using an I / O port from a BIOS or a conventional OS. The function of converting the conventional access to the access by PCI Express is implemented on the host bridge. From 00h to 3Fh, it is a PCI2.3 compatible configuration header. As a result, a conventional OS and software can be used as they are except for functions extended by PCI Express. That is, the software layer in PCI Express inherits a load / store architecture (a method in which a processor directly accesses an I / O register) that is compatible with the existing PCI. However, in order to use functions expanded by PCI Express (for example, functions such as synchronous transfer and RAS (Reliability, Availability and Serviceability)), it is necessary to make it possible to access a 4 Kbyte PCI Express expansion space.
なお、PCI Expressとしては様々なフォームファクタ(形状)が考えられるが、具体化している例としては、アドインカード、プラグインカード(Express Card)、Mini PCI Expressなどがある。 Various form factors (shapes) are conceivable as PCI Express. Examples of specific examples include add-in cards, plug-in cards (Express Cards), and Mini PCI Express.
[PCI Express のアーキテクチャの詳細]
PCI Express のアーキテクチャの中心となっているトランザクション層153、データリンク層154、物理層155について、各々詳細に説明する。
[PCI Express architecture details]
The
A.トランザクション層153
トランザクション層153の主な役割は、前述したように、上位のソフトウェア層151と下位のデータリンク層154との間でトランザクションレイヤパケット(TLP)の組み立てと分解を行うことである。
The main role of the
a.アドレス空間とトランザクションタイプ
PCI Expressでは、従来のPCIでサポートされていたメモリ空間(メモリ空間とのデータ転送用)、I/O空間(I/O空間とのデータ転送用)、コンフィグレーション空間(デバイスのコンフィグレーションとセットアップ用)に加えて、メッセージ空間(PCI Expressデバイス間のインバンドでのイベント通知や一般的なメッセージ送信(交換)用…割り込み要求や確認は、メッセージを「仮想ワイヤ」として使用することにより伝達される)が追加され、4つのアドレス空間が定義されている。各々の空間に対してトランザクションタイプが定義されている(メモリ空間、I/O空間、コンフィグレーション空間は、リード/ライト、メッセージ空間は基本(ベンダ定義含む))。
a. Address space and transaction type
In PCI Express, memory space (for data transfer with memory space), I / O space (for data transfer with I / O space), and configuration space (device configuration and setup) supported by conventional PCI In addition to message space (in-band event notification between PCI Express devices and general message transmission (exchange) ... Interrupt requests and confirmations are communicated by using the message as a "virtual wire" And four address spaces are defined. Transaction types are defined for each space (memory space, I / O space, configuration space is read / write, and message space is basic (including vendor definition)).
b.トランザクションレイヤパケット(TLP)
PCI Expressは、パケット単位で通信を行う。図9に示したトランザクションレイヤパケット(TLP)のフォーマットにおいて、ヘッダのヘッダ長は3DW(DWはダブルワードの略;合計12バイト)又は4DW(16バイト)で、トランザクションレイヤパケット(TLP)のフォーマット(ヘッダ長とペイロードの有無)、トランザクションタイプ、トラフィッククラス(TC)、アトリビュートやペイロード長などの情報が含まれる。パケット内の最大ペイロード長は1024DW(4096バイト)である。
b. Transaction layer packet (TLP)
PCI Express performs communication in units of packets. In the transaction layer packet (TLP) format shown in FIG. 9, the header length of the header is 3DW (DW is an abbreviation of double word; total 12 bytes) or 4DW (16 bytes), and the transaction layer packet (TLP) format ( Information such as header length and presence / absence of payload), transaction type, traffic class (TC), attribute, and payload length are included. The maximum payload length in the packet is 1024 DW (4096 bytes).
ECRCは、エンドツーエンドのデータ完全性を保証するためのもので、トランザクションレイヤパケット(TLP)部分の32ビットCRCである。これは、スイッチ内部などでトランザクションレイヤパケット(TLP)にエラーが発生した場合、LCRC(リンクCRC)ではエラーを検出できないためである(エラーとなったTLPでLCRCが再計算されるため)。 ECRC is an end-to-end data integrity guarantee and is a 32-bit CRC of the transaction layer packet (TLP) portion. This is because when an error occurs in the transaction layer packet (TLP) inside the switch or the like, the LCRC (link CRC) cannot detect the error (because the LCRC is recalculated with the TLP in error).
リクエストは、完了パケットが不要なものと必要なものとがある。 Some requests do not require a completion packet, and some requests.
c.トラフィッククラス(TC)と仮想チャネル(VC)
上位のソフトウェアは、トラフィッククラス(TC)を使用することによりトラフィックの差別化(優先度をつける)を行うことができる。例えば、映像データをネットワークのデータよりも優先して転送する、といったことが可能となる。トラフィッククラス(TC)はTC0からTC7まで8つある。
c. Traffic class (TC) and virtual channel (VC)
Upper software can differentiate (prioritize) traffic by using a traffic class (TC). For example, video data can be transferred with priority over network data. There are eight traffic classes (TC) from TC0 to TC7.
仮想チャネル(VC:Vertual Channel)は、各々独立した仮想通信バス(同一のリンクを共用する複数の独立したデータ・フロー・バッファを使用するメカニズム)で、各々がリソース(バッファやキュー)を持ち、図11に示すように、独立したフロー制御を行う。これにより、1つの仮想チャネルのバッファが満杯の状態(full)になっても、他の仮想チャネルの転送を行うことができる。つまり、物理的には1つのリンクを仮想的な複数のチャネルに分けることで、有効に使用することができる。例えば、図11中に示すように、スイッチを経由してルートのリンクが複数のデバイスに分かれる場合、各デバイスのトラフィックの優先度を制御することができる。VC0は必須で、コストパフォーマンスのトレードオフに応じてその他の仮想チャネル(VC1〜VC7)が実装される。図11中の実線矢印は、デフォルト仮想チャネル(VC0)を示し、破線矢印はその他の仮想チャネル(VC1〜VC7)を示している。 A virtual channel (VC) is an independent virtual communication bus (a mechanism that uses a plurality of independent data flow buffers sharing the same link), each having resources (buffers and queues) As shown in FIG. 11, independent flow control is performed. Thereby, even if the buffer of one virtual channel becomes full (full), the transfer of another virtual channel can be performed. In other words, it can be used effectively by physically dividing one link into a plurality of virtual channels. For example, as shown in FIG. 11, when a route link is divided into a plurality of devices via a switch, the priority of traffic of each device can be controlled. VC0 is indispensable, and other virtual channels (VC1 to VC7) are mounted in accordance with the cost performance trade-off. The solid line arrow in FIG. 11 indicates the default virtual channel (VC0), and the broken line arrow indicates the other virtual channels (VC1 to VC7).
トランザクション層内では、トラフィッククラス(TC)が仮想チャネル(VC)にマッピングされる。1つの仮想チャネル(VC)に対して1つ又は複数のトラフィッククラス(TC)をマッピングできる(仮想チャネル(VC)の数が少ない場合)。単純な例では、各トラフィッククラス(TC)から各仮想チャネル(VC)に1対1、全てのトラフィッククラス(TC)を仮想チャネルVC0にマッピングする、といったことが考えられる。TC0−VC0のマッピングは、必須/固定で、それ以外のマッピングは上位のソフトウェアから制御される。ソフトウェアはトラフィッククラス(TC)を利用することで、トランザクションの優先度を制御することが可能となる。 Within the transaction layer, a traffic class (TC) is mapped to a virtual channel (VC). One or more traffic classes (TC) can be mapped to one virtual channel (VC) (when the number of virtual channels (VC) is small). In a simple example, it can be considered that each traffic class (TC) is mapped to each virtual channel (VC) on a one-to-one basis, and all traffic classes (TC) are mapped to the virtual channel VC0. The mapping of TC0-VC0 is essential / fixed, and the other mappings are controlled from the upper software. The software can control the priority of the transaction by using the traffic class (TC).
d.フロー制御
受信バッファのオーバフローを避け、伝送順序を確立するためにフロー制御(FC:Flow Control)が行われる。フロー制御は、リンク間のポイントツーポイントで行われ、エンドツーエンドではない。従って、フロー制御により最終的な相手(コンプリータ)にパケットが届いたことを確認することはできない。
d. Flow control Flow control (FC) is performed to avoid the overflow of the reception buffer and establish the transmission order. Flow control is done point-to-point between links, not end-to-end. Therefore, it cannot be confirmed that the packet has reached the final partner (completer) by flow control.
PCI Expressのフロー制御は、クレジット・ベースで行われる(データ転送を始める前に、受け取り側のバッファの空き状況を確認し、オーバフロー、アンダフローが発生しないメカニズム)。即ち、受信側はリンク初期化時にバッファ容量(クレジット値)を送信側に通知し、送信側はクレジット値と送信するパケットの長さとを比較し、一定の残りがある場合のみパケットを送信する。このクレジットには6種類ある。 PCI Express flow control is performed on a credit basis (a mechanism that confirms the buffer availability on the receiving side before starting data transfer and prevents overflow and underflow). That is, the receiving side notifies the transmitting side of the buffer capacity (credit value) at the time of link initialization, and the transmitting side compares the credit value with the length of the packet to be transmitted, and transmits the packet only when there is a certain remaining. There are six types of credits.
フロー制御の情報交換はデータリンク層のデータリンクレイヤパケット(DLLP)を使用して行われる。フロー制御はトランザクションレイヤパケット(TLP)のみに適用され、データリンクレイヤパケット(DLLP)には適用されない(DLLPは常時送受信可能)。 Flow control information exchange is performed using data link layer packets (DLLP) in the data link layer. The flow control is applied only to the transaction layer packet (TLP) and not to the data link layer packet (DLLP) (DLLP can always be transmitted / received).
B.データリンク層154
データリンク層154の主な役割は、前述したように、リンク上の2つのコンポーネント間での信頼性の高いトランザクションレイヤパケット(TLP)交換機能を提供することである。
B.
The main role of the
a.トランザクションレイヤパケット(TLP)の扱い
トランザクション層153から受け取ったトランザクションレイヤパケット(TLP)に対しては、先頭に2バイトのシーケンス番号、末尾に4バイトのリンクCRC(LCRC)を付加して、物理層155に渡す(図9参照)。トランザクションレイヤパケット(TLP)は、リトライバッファに保管され、相手から受信確認(ACK)が届くまで再送される。トランザクションレイヤパケット(TLP)の送信に失敗が続いた場合は、リンク異常であると判断して物理層155に対してリンクの再トレーニングを要求する。リンクのトレーニングが失敗した場合、データリンク層154の状態はインアクティブに遷移する。
a. Handling of transaction layer packet (TLP) For the transaction layer packet (TLP) received from the
物理層155から受け取ったトランザクションレイヤパケット(TLP)は、シーケンス番号とリンクCRC(LCRC)が検査され、正常であればトランザクション層153に渡され、エラーがあった場合は再送を要求する。
The transaction layer packet (TLP) received from the
b.データリンクレイヤパケット(DLLP)
データリンク層154が生成するパケットは、データリンクレイヤパケット(DLLP)と呼ばれ、データリンク層154間でやり取りされる。データリンクレイヤパケット(DLLP)には、
・Ack/Nak:TLPの受信確認、リトライ(再送)
・InitFC1/InitFC2/UpdateFC:フロー制御の初期化とアップデート
・電源管理のためのDLLP
なる種類がある。
b. Data link layer packet (DLLP)
A packet generated by the
-Ack / Nak: TLP reception confirmation, retry (retransmission)
-InitFC1 / InitFC2 / UpdateFC: Flow control initialization and update-DLLLP for power management
There are different types.
図12に示すように、データリンクレイヤパケット(DLLP)の長さは6バイトで、種類を示すDLLPタイプ(1バイト)、DLLPの種類で固有の情報(3バイト)、CRC(2バイト)から構成される。 As shown in FIG. 12, the length of the data link layer packet (DLLP) is 6 bytes. From the DLLP type (1 byte) indicating the type, the information specific to the type of DLLP (3 bytes), and CRC (2 bytes) Composed.
C.物理層−論理サブブロック156
図8中に示す物理層155の論理サブブロック156での主な役割は、データリンク層154から受け取ったパケットを電気サブブロック157で送信できる形式に変換することである。また、物理層155を制御/管理する機能も有する。
C. Physical layer-
The main role of the
a.データ符号化とパラレル−シリアル変換
PCI Expressは、連続した“0”や“1”が続かないように(長い期間、クロス・ポイントが存在しない状態が続かないようにするため)、データ符号化に8B/10B変換を用いる。変換されたデータは、図13中に示すように、シリアル変換され、LSBからレーン上に送信される。ここに、レーンが複数ある場合は(図13はx4リンクの場合を例示している)、符号化の前にデータがバイト単位で各レーンに割り振られる。この場合、一見パラレル・バスのようにみえるが、レーン毎に独立した転送を行うので、パラレル・バスで問題となるスキューが大幅に緩和される。
a. Data encoding and parallel-serial conversion
PCI Express uses 8B / 10B conversion for data encoding so that consecutive “0” s and “1” s do not continue (in order not to maintain a state where there is no cross point for a long period of time). The converted data is serial-converted and transmitted from the LSB onto the lane as shown in FIG. Here, when there are a plurality of lanes (FIG. 13 illustrates the case of x4 link), data is allocated to each lane in units of bytes before encoding. In this case, it looks like a parallel bus at first glance, but since the transfer is performed independently for each lane, the skew which is a problem with the parallel bus is greatly reduced.
b.電源管理とリンクステート
リンクの消費電力を低く抑えるために、表1に示すように、L0/L0s/L1/L2というリンクステートが定義されている。
b. Power management and link state As shown in Table 1, a link state of L0 / L0s / L1 / L2 is defined in order to keep the power consumption of the link low.
L0が通常モードで、L0sからL2へと低消費電力となるが、L0への復帰にも時間がかかるようになる。図14に示すように、ソフトウェアによる電源管理に加えて、アクティブステート電源管理を積極的に行うことにより、消費電力を極力小さくすることが可能となる。 L0 is a normal mode, and power consumption is reduced from L0s to L2, but it takes time to return to L0. As shown in FIG. 14, by actively performing active state power management in addition to software power management, it is possible to reduce power consumption as much as possible.
D.物理層−電気サブブロック157
物理層155の電気サブブロック157での主な役割は、論理サブブロック156でシリアル化されたデータをレーン上に送信することと、レーン上のデータを受信して論理サブブロック156に渡すことである。
D. Physical layer—
The main role of the
a.ACカップリング
リンクの送信側では、ACカップリング用のコンデンサが実装される。これにより、送信側と受信側のDCコモンモード電圧が同一である必要がなくなる。このため、送信側と受信側で異なる設計、半導体プロセス、電源電圧を使用することが可能となる。
a. AC coupling On the transmission side of the link, a capacitor for AC coupling is mounted. This eliminates the need for the DC common mode voltage on the transmission side and the reception side to be the same. For this reason, it is possible to use different designs, semiconductor processes, and power supply voltages on the transmission side and the reception side.
b.デエンファシス
PCI Expressでは、前述したように、8B/10Bエンコーディングによってできるだけ連続した“0”や“1”が続かないように処理されるが、連続した“0”や“1”が続くこともある(最大5回)。この場合、送信側はデエンファシス転送を行わなければならないことが規定されている。同一極性のビットが連続する場合は、2つ目のビットからは差動電圧レベル(振幅)を3.5±0.5dB落とすことで、受信側で受け取る信号のノイズ・マージンを稼ぐ必要がある。これを、デエンファシスという。伝送路の周波数依存性減衰のため、変化するビットの場合は高周波成分が多く、減衰により受信側の波形が小さくなるが、変化しないビットの場合は高周波成分が少なく、相対的に受信側の波形が大きくなる。このため、受信側での波形を一定とするためにデエンファシスを行う。
b. De-emphasis
In PCI Express, as described above, processing is performed so that continuous “0” and “1” do not continue as much as possible by 8B / 10B encoding, but continuous “0” and “1” may continue (maximum). 5 times). In this case, it is specified that the transmission side must perform de-emphasis transfer. When bits of the same polarity are consecutive, it is necessary to increase the noise margin of the signal received on the receiving side by dropping the differential voltage level (amplitude) from the second bit by 3.5 ± 0.5 dB. . This is called de-emphasis. Due to the frequency-dependent attenuation of the transmission line, there are many high-frequency components in the case of changing bits, and the waveform on the receiving side becomes small due to attenuation. Becomes larger. For this reason, de-emphasis is performed in order to make the waveform on the receiving side constant.
[データ転送システム;画像形成システム]
本実施の形態のデータ転送システムは、前述したようなPCI Expressシステムを利用する上で、特に、その木構造について改良を加えて利用するようにしたものである。
[Data transfer system; Image forming system]
The data transfer system according to the present embodiment uses the PCI Express system as described above, particularly with the tree structure improved.
図15は、本実施の形態のデータ転送システムにおける木構造例を示す原理的な模式図である。前述のPCI Expressシステムの仕様によれば、その木構造の下流側(末端側)に位置する各種デバイスは各々1つのエンドポイントを持つ構成とされているが、本実施の形態では、各々のデバイスA,B,C,D,…について複数のエンドポイントA1,A2,…,A4,B1,…,B4,C1,…,C4,D1,…,D4,…を持たせて各々上流側のスイッチ1A,1B,1C,1Dの下流側ポートに接続するとともに、各デバイスA,B,C,D,…に、当該画像形成システムの動作モードに応じて使用するエンドポイントを調停するアービタ2A,2B,2C,2D,…を持たせるようにしたものである。 FIG. 15 is a principle schematic diagram showing an example of a tree structure in the data transfer system of the present embodiment. According to the specifications of the PCI Express system described above, each device located on the downstream side (terminal side) of the tree structure is configured to have one endpoint, but in this embodiment, each device A, B, C, D,..., A4, B1,..., B4, C1,..., C4, D1,. Arbiters 2A and 2B that connect to the downstream ports of 1A, 1B, 1C, and 1D and mediate the endpoints to be used according to the operation mode of the image forming system to each device A, B, C, D,. , 2C, 2D,...
従って、本実施の形態の画像形成システムの木構造においては、全体を管理するルートコンプレックス3を頂点として、このルートコンプレックス3中に含まれる最上流のスイッチ4、中流に位置する複数のスイッチ1A,1B,1C,1D,…を介して下流に複数のデバイスA,B,C,D,…が接続された木構造であるが、各々のデバイスA,B,C,D,…が各々複数のエンドポイントを有するため、例えば、デバイスAにあっては各々のエンドポイントA1,A2,A3,A4によりスイッチ1A,1B,1C,1Dの下流側ポートに接続された4つのデータ転送経路を有する。同様に、デバイスBにあっては各々のエンドポイントB1,B2,B3,B4によりスイッチ1A,1B,1C,1Dの下流側ポートに接続された4つのデータ転送経路を有し、デバイスCにあっては各々のエンドポイントC1,C2,C3,C4によりスイッチ1A,1B,1C,1Dの下流側ポートに接続された4つのデータ転送経路を有し、デバイスDにあっては各々のエンドポイントD1,D2,D3,D4によりスイッチ1A,1B,1C,1Dの下流側ポートに接続された4つのデータ転送経路を有する。
Therefore, in the tree structure of the image forming system according to the present embodiment, the
また、本実施の形態では、スイッチ4とスイッチ1A〜1Dとの間のデータ転送幅はx4リンク幅とされ、各スイッチ1A〜1Dと各デバイスA〜Dの各エンドポイントとの間のデータ転送幅はx1リンク幅とされている。
In the present embodiment, the data transfer width between the
このような構成において、当該データ転送システム内で複数の独立したデータ転送を並行して処理する動作モードの場合に、スイッチ1を通るデータ転送経路に競合が生じないように、各デバイスA〜Dのアービタ2A〜2Dは使用するエンドポイントを調停する。
In such a configuration, in the operation mode in which a plurality of independent data transfers are processed in parallel in the data transfer system, the devices A to D are configured so that no conflict occurs in the data transfer path passing through the
例えば、デバイスAからの画像データをデバイスBで処理してデバイスCにデータ転送する処理と並行して、デバイスAからの画像データをデバイスDで出力するデータ転送処理を同時に行う場合には、アービタ2AはデバイスAにおいてスイッチ1Aに対するエンドポイントA1、スイッチ1Cに対するエンドポイントA3を使用し、アービタ2BはデバイスBにおいてスイッチ1A,1Bに対するエンドポイントB1,B2を使用し、アービタ2Cはスイッチ1Bに対するエンドポイントC2を使用し、アービタ2Dはスイッチ1Cに対するエンドポイントD3を使用するように各々のエンドポイントを調停する。
For example, in the case where the image data from the device A is processed by the device B and transferred to the device C in parallel with the data transfer processing for outputting the image data from the device A by the device D at the same time, the arbiter 2A uses endpoint A1 for switch 1A in device A, endpoint A3 for switch 1C, arbiter 2B uses endpoints B1 and B2 for switches 1A and 1B in device B, and
これにより、デバイスA(エンドポイントA1)−スイッチ1A−デバイスB(エンドポイントB1,B2)−スイッチ1B−デバイスC(エンドポイントC2)のx1リンクの経路7と、デバイスA(エンドポイントA3)−スイッチ1C−デバイスD(エンドポイントD3)のx1リンクの経路8とが確保される。
Thus, device A (endpoint A1) -switch 1A-device B (endpoints B1, B2) -switch 1B-device C (endpoint C2)
このように動作モードに応じて各デバイスA〜Dについて使用するエンドポイントを調停することにより、木構造を動的に変更することができ、よって、複数の独立したデータ転送を並行して処理する場合でも、独立したデータ転送経路の確保によりデータ転送経路の競合を避けることができ、データ転送効率の向上を図ることができる。 In this way, by adjusting the endpoints used for each of the devices A to D according to the operation mode, the tree structure can be dynamically changed, and thus a plurality of independent data transfers are processed in parallel. Even in this case, by securing independent data transfer paths, contention of data transfer paths can be avoided and data transfer efficiency can be improved.
本実施の形態のようなデータ転送システムの好適例としては、図16に示すような画像形成システムを挙げることができる。当該画像形成システムは、例えば、デバイスAは原稿画像を光電変換して読み取るスキャナエンジン等による画像入力用デバイス、デバイスBは画像データに対して変倍、回転等の各種画像処理を施す画像処理用デバイス、デバイスCは画像データを保存するメモリ、HDD等のストレージ用デバイス、デバイスDは画像データ等に基づき用紙に印刷出力するプリンタエンジン等による画像出力用デバイスとされ、少なくともこれらのデバイスを含む構成とされている。また、ルートコンプレックス3は画像形成システムにあっては、コントローラとして構成され、ホストCPU5やメモリ6に接続されている。
A preferred example of the data transfer system as in this embodiment is an image forming system as shown in FIG. In the image forming system, for example, device A is an image input device using a scanner engine or the like that photoelectrically converts and reads a document image, and device B is an image processing device that performs various image processing such as scaling and rotation on image data. Device, device C is a memory for storing image data, a storage device such as an HDD, and device D is an image output device by a printer engine or the like that prints out paper on the basis of image data or the like, and includes at least these devices It is said that. In the image forming system, the
このような構成において、例えば、デバイスAで読み込んだ画像データをデバイスBで画像処理してデバイスCに保存するデータ転送処理と並行して、デバイスAで読み込んだ画像データをデバイスDで印刷出力するデータ転送処理を同時に行う場合には、アービタ2AはデバイスAにおいてスイッチ1Aに対するエンドポイントA1、スイッチ1Cに対するエンドポイントA3を使用し、アービタ2BはデバイスBにおいてスイッチ1A,1Bに対するエンドポイントB1,B2を使用し、アービタ2Cはスイッチ1Bに対するエンドポイントC2を使用し、アービタ2Dはスイッチ1Cに対するエンドポイントD3を使用するように各々のエンドポイントを調停する。
In such a configuration, for example, the image data read by the device A is printed out by the device D in parallel with the data transfer processing in which the image data read by the device A is processed by the device B and stored in the device C. When data transfer processing is performed simultaneously, the arbiter 2A uses the endpoint A1 for the switch 1A and the endpoint A3 for the switch 1C in the device A, and the arbiter 2B uses the endpoints B1 and B2 for the switches 1A and 1B in the device B. In use,
これにより、デバイスA(エンドポイントA1)−スイッチ1A−デバイスB(エンドポイントB1,B2)−スイッチ1B−デバイスC(エンドポイントC2)のx1リンクの経路7と、デバイスA(エンドポイントA3)−スイッチ1C−デバイスD(エンドポイントD3)のx1リンクの経路8とが確保される。よって、デバイスA,B,C間でx1リンクにより読み込み画像データの画像処理〜メモリ保存用のデータ転送を行えると同時に、デバイスA,D間ではデバイスA,B,C間のデータ転送に邪魔されることなく、x1リンクをフルに活用したコピー用のデータ転送が可能となる。
Thus, device A (endpoint A1) -switch 1A-device B (endpoints B1, B2) -switch 1B-device C (endpoint C2)
このように動作モードに応じて各デバイスA〜Dについて使用するエンドポイントを調停することにより、木構造を動的に変更することができ、よって、複数の独立したデータ転送を並行して処理する場合でも、独立したデータ転送経路の確保によりデータ転送経路の競合を避けることができ、データ転送効率の向上を図ることができる。 In this way, by adjusting the endpoints used for each of the devices A to D according to the operation mode, the tree structure can be dynamically changed, and thus a plurality of independent data transfers are processed in parallel. Even in this case, by securing independent data transfer paths, contention of data transfer paths can be avoided and data transfer efficiency can be improved.
[経路情報の管理]
ところで、上述したような各デバイスA〜Dのアービタ2A〜2DによるエンドポイントA1〜A4,…,D1〜D4の調停(他のデバイスへアクセスする際に使用するエンドポイントの決定)は、ホストCPU5により各々のデバイスA〜D中に書き込み設定された経路情報を参照することにより実行されるものであり、このような経路情報の設定は、主に、ホストCPU5にインストールされたデータ転送用プログラムに従い実行される。
[Manage routing information]
By the way, the arbitration of the end points A1 to A4,..., D1 to D4 by the arbiters 2A to 2D of each of the devices A to D (determination of the end points used when accessing other devices) is performed by the
そこで、このような経路情報の管理方法の一例について説明する。この例では、その前提として、各々のデバイスA〜Dが、自己の持つデバイス機能に関する情報はもちろん、エンドポイントに関する情報(例えば、エンドポイントの数…図示例では4つ、エンドポイント毎のレーン数…図示例ではx1、接続先…例えば、エンドポイントA1であればスイッチ1Aの下流ポートなど)が、ホストCPU5からアクセス可能にメモリ領域に保持されているものとする(情報保持手段)。 Therefore, an example of such a route information management method will be described. In this example, the premise is that each of the devices A to D has not only information on the device function that it has, but also information on the endpoint (for example, the number of endpoints ... 4 in the illustrated example, the number of lanes for each endpoint) (X1 in the illustrated example, connection destination, for example, the downstream port of the switch 1A in the case of the end point A1) is held in the memory area so as to be accessible from the host CPU 5 (information holding means).
このような前提の下では、ホストCPU5はデータ転送用プログラム、即ち、図17に概略的に示すようなフローチャートに従い、処理制御を実行する。即ち、当該ホストCPU5は、当該システム内のデバイス接続状態、各々のデバイスから取得される各デバイス機能に関する情報、エンドポイントに関する情報に基づきツリー構造中で最適となるデバイス間の経路を決定する決定手段と、各デバイスに決定された当該経路情報を書き込み設定する設定手段とを有し、各デバイスのアービタ2は、設定手段により設定された経路情報を参照して他のデバイスに対するアクセスに際して使用するエンドポイントを調停するように構成されている。
Under such a premise, the
まず、当該データ転送システム(画像形成システム)内のデバイスA〜Dの接続状態を確認するとともに(ステップS1)、接続されている各々のデバイスA〜Dにアクセスして各々のデバイスA〜Dの機能に関する情報やエンドポイントに関する情報を取得する(S2)。また、行おうとしている動作モードに関する情報も取得し、デバイス接続状態、デバイス機能情報、エンドポイントに関する情報に基づき当該木構造中で最適となるデバイスA〜D間の経路を決定する(S3)。ここに、「最適となるデバイス間の経路」とは、複数の経路間で競合を生じないようにスイッチを選択(複数の経路間で重なりを生じない)することを意味し、例えば、図15中で示したような経路7,8のような経路である。このステップS3の処理が決定手段、決定機能として実行される。
First, the connection states of the devices A to D in the data transfer system (image forming system) are confirmed (step S1), and the connected devices A to D are accessed to check the connection states of the devices A to D. Information on functions and information on endpoints are acquired (S2). Also, information on the operation mode to be performed is acquired, and the route between the devices A to D that is optimal in the tree structure is determined based on the device connection state, device function information, and information on the endpoint (S3). Here, “optimum path between devices” means that a switch is selected (no overlap occurs between a plurality of paths) so as not to cause a competition between a plurality of paths. For example, FIG.
このステップS3で決定された各デバイスA〜D毎の経路情報は、各々対応するデバイスA〜D中に書き込み設定される(S4)。このステップS4の処理が設定手段、設定機能として実行される。 The path information for each device A to D determined in step S3 is written and set in the corresponding device A to D (S4). The processing in step S4 is executed as setting means and a setting function.
この後は、各デバイスA〜Dのアービタ2A〜2DによるエンドポイントA1〜A4,…,D1〜D4の調停は、ホストCPU5により各々のデバイスA〜D中に書き込み設定された当該経路情報を参照することにより実行される。例えば、アービタ2AによりエンドポイントA1,A3を使用するように調停される。
After this, the arbitration of the end points A1 to A4,..., D1 to D4 by the arbiters 2A to 2D of the devices A to D refers to the path information written and set in the devices A to D by the
一方、このような経路情報の管理方法の他例について説明する。この例では、その前提として、各々のデバイスA〜Dに関して、各々が持つデバイス機能に関する情報はもちろん、エンドポイントに関する情報(例えば、エンドポイントの数…図示例では4つ、エンドポイント毎のレーン数…図示例ではx1、接続先…例えば、エンドポイントA1であればスイッチ1Aの下流ポートなど)を、ホストCPU5で直接的に管理するようにしたものである(情報管理手段)。即ち、当該システムを管理するホストCPU5は、各デバイスの持つデバイス機能に関する情報、エンドポイントに関する情報を管理する情報管理手段と、当該システム内のデバイス接続状態、情報管理手段により管理される各デバイス機能に関する情報、エンドポイントに関する情報に基づきツリー構造中で最適となるデバイス間の経路を決定する決定手段と、各デバイスに決定された当該経路情報を書き込み設定する設定手段とを有し、各デバイスのアービタ2は、設定手段により設定された経路情報を参照して他のデバイスに対するアクセスに際して使用するエンドポイントを調停するように構成されている。
On the other hand, another example of such a route information management method will be described. In this example, as a premise, for each of the devices A to D, not only the information on the device function of each but also the information on the endpoint (for example, the number of endpoints ... 4 in the illustrated example, the number of lanes for each endpoint) In the illustrated example, x1, connection destination, for example, the downstream port of the switch 1A in the case of the endpoint A1, etc.) are directly managed by the host CPU 5 (information management means). That is, the
このような前提の下では、ホストCPU5はデータ転送用プログラムに従い、図18に概略的に示すようなフローチャートに従い、処理制御を実行する。まず、当該データ転送システム(画像形成システム)内のデバイスA〜Dの接続状態を確認するとともに(ステップS11)、管理している各々のデバイスA〜Dの機能に関する情報やエンドポイントに関する情報を取得し(S12)、かつ、行おうとしている動作モードに関する情報も取得し、デバイス接続状態、デバイス機能情報、エンドポイントに関する情報に基づき当該木構造中で最適となるデバイスA〜D間の経路を決定する(S13)。このステップS13の処理が決定手段、決定機能として実行される。このステップS13で決定された各デバイスA〜D毎の経路情報は、各々対応するデバイスA〜D中に書き込み設定される(S14)。このステップS14の処理が設定手段、設定機能として実行される。
Under such a premise, the
この後は、各デバイスA〜Dのアービタ2A〜2DによるエンドポイントA1〜A4,…,D1〜D4の調停は、ホストCPU5により各々のデバイスA〜D中に書き込み設定された当該経路情報を参照することにより実行される。例えば、アービタ2AによりエンドポイントA1,A3を使用するように調停される。
After this, the arbitration of the end points A1 to A4,..., D1 to D4 by the arbiters 2A to 2D of the devices A to D refers to the path information written and set in the devices A to D by the
次に、このような経路情報の管理方法におけるタイミング制御の一例について図19に示す概略フローチャートを参照して説明する。まず、当該システムが起動する際(S21のY)、各々のデバイスA〜Dに対して経路情報が書き込み設定される(S22)。ここに、「システムが起動する際」とは、起動時から多少時間が経った時点までを含む意味であり、起動する時点のみに限定されるものではない。また、この起動に際しての経路情報の書き込み設定としては、予め設定されている標準仕様なるデフォルト値が用いられる。このステップS21のY,S22の処理が設定手段、設定機能として実行される。 Next, an example of timing control in such a route information management method will be described with reference to a schematic flowchart shown in FIG. First, when the system is activated (Y in S21), path information is written and set to each of the devices A to D (S22). Here, “when the system starts up” means to include a point in time from when the system is started up, and is not limited to the point in time of starting up. In addition, a default value that is a preset standard specification is used as the path information writing setting at the time of activation. The processes of Y and S22 in step S21 are executed as setting means and setting functions.
この後は、各デバイスA〜Dのアービタ2A〜2DによるエンドポイントA1〜A4,…,D1〜D4の調停は、ホストCPU5により各々のデバイスA〜D中に書き込み設定された当該経路情報(デフォルト値)を参照することにより実行される。
After this, the arbitration of the end points A1 to A4,..., D1 to D4 by the arbiters 2A to 2D of the devices A to D is performed by the route information (default) written and set in each of the devices A to D by the
その後は、当該システムの起動中における動作モードの変更の有無が監視される(S23)。そして、動作モードの変更があった場合(S23のY)、その動作モードの変更に関する情報を当該ホストCPU5が直接受け取った場合には(S24のY)、ホストCPU5は、変更される動作モードに関する情報、並びに、(各デバイスから取得した又はホストCPU5が管理している)デバイス接続状態、デバイス機能情報、エンドポイントに関する情報に基づき当該木構造中で最適となるデバイスA〜D間の経路を再決定する(S25)。このステップS25の処理が再決定手段、再決定機能として実行される。このステップS25で決定された各デバイスA〜D毎の経路情報は、各々対応するデバイスA〜D中に書き込み設定される(S26)。このステップS26の処理が設定手段、設定機能として実行される。
Thereafter, it is monitored whether or not the operation mode is changed during the activation of the system (S23). When the operation mode is changed (Y in S23) and the
この後は、各デバイスA〜Dのアービタ2A〜2DによるエンドポイントA1〜A4,…,D1〜D4の調停は、ホストCPU5により各々のデバイスA〜D中に書き込み設定された当該経路情報を参照することにより実行される。
After this, the arbitration of the end points A1 to A4,..., D1 to D4 by the arbiters 2A to 2D of the devices A to D refers to the path information written and set in the devices A to D by the
一方、動作モードの変更に関する情報をデバイスA〜Dが受け取った場合には(S24のN)、これらのデバイスA〜DはホストCPU5に対して経路情報の再決定を要求するメッセージトランザクション(Message Transaction)を発行する(S27)。このステップS27の処理がデバイスによるトランザクション発行手段の機能として実行される。ホストCPU5ではこのメッセージトランザクションの発行に伴い、当該メッセージトランザクションパケット中に格納されている動作モードの変更に関する情報の通知を受けることにより、動作モードの変更に関する情報を受ける(S28)。この動作モードに関する情報を受けた後は、ステップS25以降の処理を同様に行なう。
On the other hand, when the devices A to D receive information regarding the change of the operation mode (N in S24), these devices A to D request the
なお、ステップS28の処理に代えて、メッセージトランザクションパケットの受け取りにより当該デバイス中に記録された動作モードの変更に関する情報を参照して、動作モードの変更に関する情報を受けるようにしてもよい。 Instead of the processing in step S28, the information regarding the change of the operation mode may be received by referring to the information regarding the change of the operation mode recorded in the device by receiving the message transaction packet.
次に、このような経路情報の管理方法におけるタイミング制御の他例について図20に示す概略フローチャートを参照して説明する。まず、図19で説明した場合と同じく、当該システムが起動する際(S21のY)、各々のデバイスA〜Dに対して経路情報(デフォルト値)が書き込み設定される(S22)。 Next, another example of timing control in such a route information management method will be described with reference to a schematic flowchart shown in FIG. First, as in the case described with reference to FIG. 19, when the system is activated (Y in S21), path information (default value) is written and set to each of the devices A to D (S22).
この後は、各デバイスA〜Dのアービタ2A〜2DによるエンドポイントA1〜A4,…,D1〜D4の調停は、ホストCPU5により各々のデバイスA〜D中に書き込み設定された当該経路情報(デフォルト値)を参照することにより実行される。
After this, the arbitration of the end points A1 to A4,..., D1 to D4 by the arbiters 2A to 2D of the devices A to D is performed by the route information (default) written and set in each of the devices A to D by the
その後は、当該システムの起動時からタイマを稼動させ(S31)、一定時間が経過するかを監視し(S32)、一定時間が経過する毎に定期的に(S32のY)、その時点の動作モードに関する情報、並びに、(各デバイスから取得した又はホストCPU5が管理している)デバイス接続状態、デバイス機能情報、エンドポイントに関する情報に基づき当該木構造中で最適となるデバイスA〜D間の経路を再決定する(S33)。このステップS33の処理が再決定手段、再決定機能として実行される。このステップS33で決定された各デバイスA〜D毎の経路情報は、各々対応するデバイスA〜D中に書き込み設定される(S34)。このステップS34の処理が設定手段、設定機能として実行される。 Thereafter, the timer is started from the time of starting the system (S31), and it is monitored whether a certain time has passed (S32), and every time the certain time has passed (Y of S32), the operation at that time The route between the devices A to D that is optimal in the tree structure based on the information on the mode, the device connection state (obtained from each device or managed by the host CPU 5), device function information, and information on the endpoint Is re-determined (S33). The processing in step S33 is executed as redetermination means and redetermination function. The path information for each device A to D determined in step S33 is written and set in the corresponding device A to D (S34). The processing in step S34 is executed as setting means and a setting function.
この後は、各デバイスA〜Dのアービタ2A〜2DによるエンドポイントA1〜A4,…,D1〜D4の調停は、ホストCPU5により各々のデバイスA〜D中に書き込み設定された当該経路情報を参照することにより実行される。
After this, the arbitration of the end points A1 to A4,..., D1 to D4 by the arbiters 2A to 2D of the devices A to D refers to the path information written and set in the devices A to D by the
[効果についての考察]
まず、スイッチの出力ポート競合の影響について考察する。PCI Expressスイッチにおいて出力ポートに競合が生ずると、データ転送レートが低下する。図21は、PCI Expressスイッチにおいて4つの入力ポートに対して出力ポートが1つで競合が生ずる条件下で、種類の異なる4つのトラフィックを同時に開始させ、転送速度に応じてデータ転送が順に終了していく場合の特性を示したグラフである。図において、横軸は転送時間、縦軸は各ポートのデータ転送量(積算値)であり、各グラフの傾きが転送レートを示している。なお、ペイロードサイズ(パケットデータ全体のサイズのうち、ヘッダ情報以外のデータ部分のサイズを意味する)は、4種類とも64byte固定の条件での測定例とする。また、データ転送のアルゴリズムは、PCI Express規格におけるウエイテッドラウンドロビン(WRR)であり、4種類に関して1:2:4:8の比率でデータ転送させるように設定した場合の特性例を示し、1つのトラフィッククラスのデータ転送が終了すると、残りのトラフィッククラスについて8:4:2、さらには、8:4の如く、比率を変遷させながらデータ転送させるアルゴリズムである。
[Discussion about effects]
First, consider the effect of switch output port contention. When a conflict occurs in the output port in the PCI Express switch, the data transfer rate is lowered. FIG. 21 shows that under the condition where there is one output port for four input ports in a PCI Express switch, four different types of traffic are started at the same time, and data transfer is completed in order according to the transfer rate. It is the graph which showed the characteristic in the case of going. In the figure, the horizontal axis represents the transfer time, the vertical axis represents the data transfer amount (integrated value) of each port, and the slope of each graph represents the transfer rate. Note that the payload size (meaning the size of the data portion other than the header information out of the total packet data size) is a measurement example under the condition that all four types are fixed to 64 bytes. The data transfer algorithm is a weighted round robin (WRR) in the PCI Express standard, and shows an example of characteristics when data transfer is set at a ratio of 1: 2: 4: 8 for four types. When the data transfer of one traffic class is completed, the algorithm is to transfer data while changing the ratio, such as 8: 4: 2 and further 8: 4 for the remaining traffic classes.
図21では、左側から順に、4つの転送が競合、3つの転送が競合、2つの転送が競合、競合なしと変遷しているのが判る。ここに、競合するトラフィックの数が減るに従って、各々のグラフの傾き、即ち、転送レートが急峻となり、データ転送レートが向上するのが判る。この点、前述したような本実施の形態によれば、複数のエンドポイントA1〜A4,B1〜B4,C1〜C4,D1〜D4に関して、スイッチを通るデータ転送経路に競合が生じないように、動作モードに応じて使用するエンドポイントを調停するようにしているので、データ転送レートを向上させ得るのが判る。 In FIG. 21, it can be seen that, from the left side, four transfers are in conflict, three transfers are in conflict, two transfers are in conflict, and there is no conflict. Here, it can be seen that as the number of competing traffics decreases, the slope of each graph, that is, the transfer rate becomes steep, and the data transfer rate improves. In this regard, according to the present embodiment as described above, with respect to the plurality of end points A1 to A4, B1 to B4, C1 to C4, and D1 to D4, there is no competition in the data transfer path passing through the switch. Since the end point to be used is adjusted according to the operation mode, it can be seen that the data transfer rate can be improved.
次に、経由するスイッチの段数の影響について考察する。データを一定量ずつ区切って転送する場合(例えば、画像形成システム中のプロッタに対して、画像データを主走査方向の1ラインずつに区切って転送する場合など)、パケットデータが発信元から送信先へ到達する、初期遅延の影響が経由するスイッチ段数とともに大きくなる。 Next, consider the effect of the number of switch stages. When data is divided and transferred by a certain amount (for example, when image data is transferred to a plotter in the image forming system by dividing it into one line in the main scanning direction), the packet data is transmitted from the transmission source to the transmission destination. The influence of the initial delay that reaches the point becomes larger with the number of switch stages through which it passes.
図22は、データ転送経路において、経由するスイッチの個数(段数)をパラメータとして、ペイロードサイズと転送レートとの関係を示したグラフであり、経由するスイッチの個数(段数)の転送レートに対する影響が判る。図では、上から順に、タイミング制約なし、スイッチが1段で遅延構造1,2,3、スイッチが2段で遅延構造1,2,3、スイッチが3段で遅延構造1,2,3、スイッチが4段で遅延構造1,2,3、スイッチが5段で遅延構造1,2,3の場合を各々示している。経由するスイッチの段数が1段増える毎に、パケット転送の遅延時間が加算され、その遅延はパケットデータのサイズが大きいほど、大きな遅延が発生してしまう。このため、データ転送経路上に複数段のスイッチが存在すると、1つのパケットで送るデータのサイズが大きくなるほど、データ転送レートが低下してしまうのが判る。この点、本実施の形態によれば、複数のエンドポイントA1〜A4,B1〜B4,C1〜C4,D1〜D4に関して、スイッチ1A〜1Dとの関係では、各々経由するスイッチ1の段数が最小=1段となるように、使用するエンドポイントを調停しているので、データ転送レートの低下を抑制し得るのが判る。
FIG. 22 is a graph showing the relationship between the payload size and the transfer rate, using the number of switches (number of stages) passed through as a parameter in the data transfer path, and the influence of the number of switches (stage number) passed through on the transfer rate. I understand. In the figure, in order from the top, there is no timing constraint, the switch has one stage, the
1A〜1D スイッチ
2A〜2D アービタ
A〜D デバイス
A1〜A4,〜,D1〜D4 エンドポイント
1A to 1D switch 2A to 2D arbiter A to D device A1 to A4 to D1 to D4 endpoint
Claims (6)
前記木構造における下流側に位置する第1のデバイスは上流側に位置する第1のスイッチと通信可能な第1のエンドポイントおよび上流側に位置する第2のスイッチと通信可能な第2のエンドポイントを含む複数のエンドポイントを有するとともに、当該木構造における下流側に位置する第2のデバイスは上流側に位置する前記第1のスイッチと通信可能な第3のエンドポイントおよび上流側に位置する前記第2のスイッチと通信可能な第4のエンドポイントを含む複数のエンドポイントを有し、
前記第1のデバイスは、前記第1のスイッチおよび前記第2のスイッチのそれぞれに独立したデータ転送を実行する動作モードの場合に、前記第1のエンドポイントおよび前記第2のエンドポイントを使用するように、当該第1のデバイスが有する前記複数のエンドポイントのうちで使用するエンドポイントを調停する第1のアービタを有し、前記第2のデバイスは、前記第1のスイッチおよび前記第2のスイッチのそれぞれに独立したデータ転送を実行する動作モードの場合に、前記第3のエンドポイントおよび前記第4のエンドポイントを使用するように、当該第2のデバイスが有する前記複数のエンドポイントのうちで使用するエンドポイントを調整する第2のアービタを有することを特徴とするデータ転送システム。 A communication channel transmission received independently by a data communications network according to a tree structure is established Lud over data transfer system,
The first device located on the downstream side in the tree structure has a first end point capable of communicating with the first switch located upstream and a second end point capable of communicating with the second switch located upstream. A second device having a plurality of end points including a point and located on the downstream side in the tree structure is located on the third end point and the upstream side capable of communicating with the first switch located on the upstream side A plurality of endpoints including a fourth endpoint capable of communicating with the second switch;
The first device uses the first endpoint and the second endpoint in an operation mode in which independent data transfer is performed for each of the first switch and the second switch. As described above, the first device includes a first arbiter that arbitrates an endpoint to be used among the plurality of endpoints included in the first device, and the second device includes the first switch and the second switch. Among the plurality of endpoints included in the second device, the third endpoint and the fourth endpoint are used in an operation mode in which data transfer is performed independently for each of the switches. A data transfer system comprising a second arbiter that adjusts an endpoint used in the network.
前記第1のデバイスが、前記第1のスイッチおよび前記第2のスイッチのそれぞれに独立したデータ転送を実行する動作モードの場合に、前記第1のエンドポイントおよび前記第2のエンドポイントを使用するように、当該第1のデバイスが有する前記複数のエンドポイントのうちで使用するエンドポイントを調停し、前記第2のデバイスが、前記第1のスイッチおよび前記第2のスイッチのそれぞれに独立したデータ転送を実行する動作モードの場合に、前記第3のエンドポイントおよび前記第4のエンドポイントを使用するように、当該第2のデバイスが有する前記複数のエンドポイントのうちで使用するエンドポイントを調停する、
ことを特徴とするデータ転送方法。 Communication channel transmission received independently by a data communications network according to a tree structure is established, the first positioned on the downstream side in the prior SL tree device first capable of communicating with the first switch located on the upstream side A plurality of end points including a second end point capable of communicating with the end point and the second switch located on the upstream side, and the second end point located on the downstream side in the tree structure is located on the upstream side Data utilizing a data transfer system having a plurality of endpoints including a third endpoint that can communicate with the first switch and a fourth endpoint that can communicate with the second switch located upstream A transfer method,
The first endpoint and the second endpoint are used when the first device is in an operation mode in which independent data transfer is performed for each of the first switch and the second switch. As described above, the second device arbitrates an endpoint to be used among the plurality of endpoints of the first device, and the second device has independent data for each of the first switch and the second switch. In the case of the operation mode in which the transfer is performed, the endpoint to be used among the plurality of endpoints of the second device is arbitrated so that the third endpoint and the fourth endpoint are used. To
A data transfer method characterized by the above.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004324556A JP4603336B2 (en) | 2003-11-11 | 2004-11-09 | Data transfer system, image forming system, and data transfer method |
US11/125,207 US20060114918A1 (en) | 2004-11-09 | 2005-05-10 | Data transfer system, data transfer method, and image apparatus system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003381192 | 2003-11-11 | ||
JP2004324556A JP4603336B2 (en) | 2003-11-11 | 2004-11-09 | Data transfer system, image forming system, and data transfer method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005166029A JP2005166029A (en) | 2005-06-23 |
JP4603336B2 true JP4603336B2 (en) | 2010-12-22 |
Family
ID=34741632
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004324556A Expired - Fee Related JP4603336B2 (en) | 2003-11-11 | 2004-11-09 | Data transfer system, image forming system, and data transfer method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4603336B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4607706B2 (en) * | 2005-08-24 | 2011-01-05 | 株式会社リコー | Image processing system, program, and job execution method |
JP4824422B2 (en) * | 2005-08-30 | 2011-11-30 | 株式会社リコー | Control device, image processing system, and data transfer path switching method |
JP4690828B2 (en) * | 2005-08-30 | 2011-06-01 | 株式会社リコー | Information processing system, program, and packet communication method |
JP4782591B2 (en) * | 2006-03-10 | 2011-09-28 | 富士通セミコンダクター株式会社 | Reconfigurable circuit |
JP4878185B2 (en) * | 2006-03-17 | 2012-02-15 | 株式会社リコー | Data communication circuit and arbitration method |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000194649A (en) * | 1998-12-28 | 2000-07-14 | Toshiba Corp | Method and apparatus for electronic device connection |
JP2000209287A (en) * | 1999-01-20 | 2000-07-28 | Fujitsu Ltd | Network system |
JP2001016382A (en) * | 1999-04-27 | 2001-01-19 | Ricoh Co Ltd | Digital copying machine and digital copying machine system |
-
2004
- 2004-11-09 JP JP2004324556A patent/JP4603336B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000194649A (en) * | 1998-12-28 | 2000-07-14 | Toshiba Corp | Method and apparatus for electronic device connection |
JP2000209287A (en) * | 1999-01-20 | 2000-07-28 | Fujitsu Ltd | Network system |
JP2001016382A (en) * | 1999-04-27 | 2001-01-19 | Ricoh Co Ltd | Digital copying machine and digital copying machine system |
Also Published As
Publication number | Publication date |
---|---|
JP2005166029A (en) | 2005-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4878185B2 (en) | Data communication circuit and arbitration method | |
JP4928732B2 (en) | Data transfer system and electronic device | |
JP5108261B2 (en) | Information processing apparatus and data communication apparatus | |
JP4704050B2 (en) | Data transfer system and electronic device | |
JP2006195871A (en) | Communication device, electronic equipment and image forming device | |
JP4564855B2 (en) | Data transfer system and electronic device | |
JP2008172727A (en) | Control apparatus and image processing system | |
JP4308680B2 (en) | Image forming apparatus | |
JP4287325B2 (en) | Imaging system | |
JP4928715B2 (en) | Serial data transfer device, image output device, image input device, and image forming device | |
JP4564740B2 (en) | Imaging equipment system | |
JP4777723B2 (en) | Information processing system, program, and data transfer method | |
JP4425766B2 (en) | Image forming system | |
JP4603336B2 (en) | Data transfer system, image forming system, and data transfer method | |
JP2006092286A (en) | Data transfer device and image forming system | |
JP5218377B2 (en) | Image forming system | |
JP4603335B2 (en) | Data transfer system, image forming system, and data transfer method | |
JP4476088B2 (en) | Data transfer apparatus and image forming system | |
JP4271558B2 (en) | Data transfer system, image forming system, and data transfer program | |
JP4824422B2 (en) | Control device, image processing system, and data transfer path switching method | |
JP2007226494A (en) | Data transfer system | |
JP4690828B2 (en) | Information processing system, program, and packet communication method | |
JP2005346629A (en) | Image processing apparatus | |
JP2007282187A (en) | Information processor, information processing system, and data communication method | |
JP2006113798A (en) | Data transfer system, reception buffer device, method for setting specification of data transfer system and image formation system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20051021 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20071031 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20080111 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100518 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100716 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100928 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20101001 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131008 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |