JP4603336B2 - Data transfer system, image forming system, and data transfer method - Google Patents

Data transfer system, image forming system, and data transfer method Download PDF

Info

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
Application number
JP2004324556A
Other languages
Japanese (ja)
Other versions
JP2005166029A (en
Inventor
純一 池田
泰之 進藤
幸治 押切
典之 寺尾
充弘 大泉
豊 米田
覚 沼倉
光冶 竹尾
徹 佐々木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2004324556A priority Critical patent/JP4603336B2/en
Priority to US11/125,207 priority patent/US20060114918A1/en
Publication of JP2005166029A publication Critical patent/JP2005166029A/en
Application granted granted Critical
Publication of JP4603336B2 publication Critical patent/JP4603336B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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 PCI Express system 200 sets a plurality of end nodes (end points) A, B, C, D,... Via the switches SW1, SW2, SW3,. Connected to a tree structure. Here, each of the switches SW1, SW2, SW3,... Has one upstream port (route node side) and a plurality of downstream ports (end node side), and other than the switches SW1, SW2, SW3,. Each of the devices A, B, C, D,... Has only one port, and the communication path between each device is uniquely determined by a tree structure.

また、ノード間、スイッチ間の接続線は、予めデータ転送に必要な速度に応じた接続線で接続しておくが、この際、各接続線は、各々性能の異なるもの(例えば、バス幅を示すレーン数が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 規格の概要”Interface誌、July’2003 里見尚志“Outline of PCI Express Standard” Interface, July’2003 Naoshi Satomi

ところが、このような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 route 202 from the root node 201 to the end node A and a route 203 from the end node C to the end node B are to be processed at the same time, two types of data transfer are attempted. As shown in an enlarged view in FIG. 23, the downstream port competes with the switch SW2 in the switch SW1. Therefore, when the packet of the route 202 and the packet of the route 203 are alternately output, the transfer rate is reduced to half and the transfer efficiency is lowered. In addition, it is possible to give priority to one path 202 or 203 by arbitration of the switch SW1, but the transfer efficiency of the other path 203 or 202 is further reduced.

図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 route 202 and the processing of the route 204 from the end node C to the end node D have to be processed at the same time, the same contention as in FIG. The rate will drop and it will not be an essential improvement.

このようなデータ転送レートの低下は、データ転送経路の競合時だけでなく、必要以上に多段のスイッチを経るデータ転送経路の場合も同様である。   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 claim 1 wherein is a communication channel of the send and receive independently as a data communications network according to a tree structure is established Lud over data transfer system, a first device located downstream in the tree structure upstream A plurality of endpoints including a first endpoint that can communicate with a first switch located on the side and a second endpoint that can communicate with a second switch located on the upstream side, and The second device located on the downstream side has a third endpoint capable of communicating with the first switch located on the upstream side and a fourth endpoint capable of communicating with the second switch located on the upstream side. And the first device performs independent data transfer to each of the first switch and the second switch. In the operation mode, the first endpoint that arbitrates an endpoint to be used among the plurality of endpoints of the first device so as to use the first endpoint and the second endpoint. An arbiter, and the second device is configured to operate the third endpoint and the fourth endpoint in an operation mode in which independent data transfer is performed for each of the first switch and the second switch. A second arbiter that adjusts an endpoint to be used among the plurality of endpoints of the second device so as to use the endpoint .

請求項2記載の発明は、請求項1記載のデータ転送システムにおいて、当該データ転送システムがPCI Expressシステムである。 The invention according to claim 2 is the data transfer system according to claim 1, wherein the data transfer system is a PCI Express system.

請求項記載の発明の画像形成システムは、請求項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.

請求項記載の発明は、請求項記載の画像形成システムにおいて、前記第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.

請求項記載の発明は、木構造によるデータ通信網として送受信独立の通信チャネルが確立され、記木構造における下流側に位置する第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 claim 5, wherein the communication channel transmission received independently by a data communications network according to a tree structure is established, first a first device located on the downstream side in the prior SL tree structure is located on the upstream side and having a plurality of endpoints, including a second endpoint capable of communicating with a second switch located on the first endpoint and the upstream capable of communicating with the switch, a position on the downstream side of the tree 2 A plurality of endpoints including a third endpoint capable of communicating with the first switch located upstream and a fourth endpoint capable of communicating with the second switch located upstream. having a data transfer method utilizing a data transfer system, the first device, each of the first switch and the second switch The end to be used among the plurality of end points of the first device so that the first end point and the second end point are used in the case of the operation mode in which independent data transfer is performed. When the second device is in an operation mode in which the second device performs independent data transfer to each of the first switch and the second switch, the third endpoint and the fourth device The end point to be used is arbitrated among the plurality of end points of the second device so as to use the end point .

請求項記載の発明は、請求項記載のデータ転送方法において、前記データ転送システムがPCI Expressシステムである。 The invention according to claim 6 is the data transfer method according to claim 5 , wherein the data transfer system is a PCI Express system.

本発明によれば、第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 Non-Patent Document 1. Explained with excerpts. Here, the high-speed serial bus means an interface capable of exchanging data at high speed (about 100 Mbps or more) by serial (serial) transmission using a single transmission line.

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 host bridge 103 to which the CPU 100, the AGP graphics 101, and the memory 102 are connected. Or a PCI bridge 105b to which the PCI devices 104c and 104d are connected and a PCI bridge 107 to which the PCI bus slot 106 is connected are connected via the PCI bridge 105c (tree structure). Yes.

これに対して、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 graphics 113 is connected by the PCI Express 114a to the root complex 112 to which the CPU 110 and the memory 111 are connected, and the endpoint 115a and the legacy endpoint 116a. The switch 117a connected by the PCI Express 114b is connected by the PCI Express 114c, and the PCI bridge 119 to which the switch 117b to which the end point 115b and the legacy end point 116b are connected by the PCI Express 114d and the PCI bus slot 118 are connected is a PCI. The switch 117c connected by the Express 114e has a tree structure (tree structure) connected by the PCI Express 114f.

実際に想定される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, graphics 125 is x16 with respect to a memory hub 124 (corresponding to a root complex) to which a CPU 121 is connected by a CPU host bus 122 and a memory 123 is connected. PCI Express 126a and an I / O hub 127 having a conversion function are connected by PCI Express 126b. For example, a storage 129 is connected to the I / O hub 127 by a Serial ATA 128, a local I / O 131 is connected by an LPC 130, and a USB 2.0 132 and a PCI bus slot 133 are connected. Furthermore, a switch 134 is connected to the I / O hub 127 by a PCI Express 126c. The switch 134 is connected to the mobile dock 135, Gigabit Ethernet (Ethernet is a registered trademark) 136, and an add-in by PCI Express 126d, 126e, and 126f, respectively. A card 137 is connected.

即ち、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 root complex 112 is located at the highest level of the I / O structure, and connects the CPU and the memory subsystem to the I / O. In a block diagram or the like, as shown in FIG. 3, it is often described as “memory hub”. The root complex 112 (or 124) has one or more PCI Express ports (root ports) (indicated by squares in the root complex 112 in FIG. 2), and each port is an independent I / O hierarchical domain. Form. The I / O hierarchical domain is a simple endpoint (for example, the example of the endpoint 115a side in FIG. 2), or is formed from a large number of switches and endpoints (for example, the endpoint in FIG. 2). 115b and switches 117b and 115c side).

C.エンドポイント(End Point)
エンドポイント115は、タイプ00hのコンフィグレーション空間ヘッダを持つデバイス(具体的には、ブリッジ以外のデバイス)で、レガシーエンドポイントとPCI Expressエンドポイントとに分けられる。両者の大きな違いは、PCI ExpressエンドポイントはBAR(ベースアドレスレジスタ)で基本的にI/Oポートリソースを要求せず、このためI/Oリクエストを要求しない。また、PCI Expressエンドポイントは、ロックリクエストもサポートしていない。
C. End point
The endpoint 115 is a device having a configuration space header of type 00h (specifically, a device other than a bridge), and is divided into a legacy endpoint and a PCI Express endpoint. The major difference between the two is that the PCI Express endpoint basically does not request I / O port resources in the BAR (base address register), and therefore does not request an I / O request. PCI Express endpoints also do not support lock requests.

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 transaction layer 153, a data link layer 154, and a physical layer 155 are provided between the uppermost software 151 and the lowermost mechanism (mechanical) unit 152. Thereby, the modularity of each layer is ensured, and it becomes possible to provide scalability and reuse the module. For example, when adopting a new signal coding method or transmission medium, it is possible to cope with only changing the physical layer without changing the data link layer or the transaction layer.

PCI Expressのアーキテクチャの中心となるのは、トランザクション層153、データリンク層154、物理層155であり、各々図8を参照して説明する以下のような役割を持つ。   The core of the PCI Express architecture is a transaction layer 153, a data link layer 154, and a physical layer 155, each having the following roles described with reference to FIG.

A.トランザクション層153
トランザクション層153は、最上位に位置し、トランザクションレイヤパケット(TLP)の組み立て、分解機能を持つ。トランザクションレイヤパケット(TLP)は、リード/ライト、各種イベントといったトランザクションの伝達に用いられる。また、トランザクション層153は、トランザクションレイヤパケット(TLP)のためのクレジットを用いたフロー制御を行う。各層153〜155におけるトランザクションレイヤパケット(TLP)の概要を図9に示す(詳細は、後述する)。
A. Transaction layer 153
The transaction layer 153 is located at the highest level and has a function of assembling and disassembling a transaction layer packet (TLP). The transaction layer packet (TLP) is used for transmission of transactions such as read / write and various events. The transaction layer 153 performs flow control using credits for transaction layer packets (TLP). An outline of a transaction layer packet (TLP) in each of the layers 153 to 155 is shown in FIG. 9 (details will be described later).

B.データリンク層154
データリンク層154の主な役割は、エラー検出/訂正(再送)によりトランザクションレイヤパケット(TLP)のデータ完全性を保証することと、リンク管理である。データリンク層154間では、リンク管理やフロー制御のためのパケットのやり取りを行う。このパケットは、トランザクションレイヤパケット(TLP)と区別するために、データリンクレイヤパケット(DLLP)と呼ばれる。
B. Data link layer 154
The main role of the data link layer 154 is to guarantee data integrity of the transaction layer packet (TLP) by error detection / correction (retransmission) and link management. Packets for link management and flow control are exchanged between the data link layers 154. This packet is called a data link layer packet (DLLP) to distinguish it from a transaction layer packet (TLP).

C.物理層155
物理層155は、ドライバ、入力バッファ、パラレル−シリアル/シリアル−パラレル変換器、PLL、インピーダンス整合回路といったインタフェース動作に必要な回路を含んでいる。また、論理的な機能としてインタフェースの初期化・保守の機能を持つ。物理層155は、データリンク層154/トランザクション層153を実際のリンクで使用される信号技術から独立させる役目も持っている。
C. Physical layer 155
The physical layer 155 includes circuits necessary for interface operations such as a driver, an input buffer, a parallel-serial / serial-parallel converter, a PLL, and an impedance matching circuit. It also has interface initialization / maintenance functions as logical functions. The physical layer 155 also serves to make the data link layer 154 / transaction layer 153 independent of the signaling technology used in the actual link.

なお、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 transaction layer 153, data link layer 154, and physical layer 155, which are the core of the PCI Express architecture, will be described in detail.

A.トランザクション層153
トランザクション層153の主な役割は、前述したように、上位のソフトウェア層151と下位のデータリンク層154との間でトランザクションレイヤパケット(TLP)の組み立てと分解を行うことである。
A. Transaction layer 153
The main role of the transaction layer 153 is to assemble and disassemble transaction layer packets (TLP) between the upper software layer 151 and the lower data link layer 154 as described above.

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. Data link layer 154
The main role of the data link layer 154 is to provide a reliable transaction layer packet (TLP) exchange function between two components on the link, as described above.

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 transaction layer 153, a 2-byte sequence number at the beginning and a 4-byte link CRC (LCRC) at the end are added to the physical layer. To 155 (see FIG. 9). The transaction layer packet (TLP) is stored in the retry buffer and retransmitted until a reception confirmation (ACK) is received from the partner. When the transmission of the transaction layer packet (TLP) continues to fail, it is determined that the link is abnormal, and the physical layer 155 is requested to retrain the link. If link training fails, the state of the data link layer 154 transitions to inactive.

物理層155から受け取ったトランザクションレイヤパケット(TLP)は、シーケンス番号とリンクCRC(LCRC)が検査され、正常であればトランザクション層153に渡され、エラーがあった場合は再送を要求する。   The transaction layer packet (TLP) received from the physical layer 155 is inspected for the sequence number and the link CRC (LCRC). If normal, the transaction layer packet (TLP) is passed to the transaction layer 153. If there is an error, a retransmission is requested.

b.データリンクレイヤパケット(DLLP)
データリンク層154が生成するパケットは、データリンクレイヤパケット(DLLP)と呼ばれ、データリンク層154間でやり取りされる。データリンクレイヤパケット(DLLP)には、
・Ack/Nak:TLPの受信確認、リトライ(再送)
・InitFC1/InitFC2/UpdateFC:フロー制御の初期化とアップデート
・電源管理のためのDLLP
なる種類がある。
b. Data link layer packet (DLLP)
A packet generated by the data link layer 154 is called a data link layer packet (DLLP), and is exchanged between the data link layers 154. Data link layer packet (DLLP)
-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-logical sub-block 156
The main role of the physical layer 155 in the logical sub-block 156 shown in FIG. 8 is to convert the packet received from the data link layer 154 into a format that can be transmitted by the electrical sub-block 157. It also has a function of controlling / managing the physical layer 155.

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.

Figure 0004603336
Figure 0004603336

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—Electric sub-block 157
The main role of the physical layer 155 in the electrical sub-block 157 is to transmit the data serialized in the logical sub-block 156 onto the lane, and to receive the data on the lane and pass it to the logical sub-block 156. is there.

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 root complex 3 that manages the whole is used as the apex, the most upstream switch 4 included in the root complex 3, and the plurality of switches 1A, A plurality of devices A, B, C, D,... Are connected downstream through 1B, 1C, 1D,..., But each device A, B, C, D,. For example, the device A has four data transfer paths connected to the downstream ports of the switches 1A, 1B, 1C, and 1D by the end points A1, A2, A3, and A4. Similarly, the device B has four data transfer paths connected to the downstream ports of the switches 1A, 1B, 1C, and 1D by the end points B1, B2, B3, and B4. Each having four data transfer paths connected to the downstream ports of the switches 1A, 1B, 1C, and 1D by the respective endpoints C1, C2, C3, and C4. In the device D, each endpoint D1 , D2, D3, D4 have four data transfer paths connected to the downstream ports of the switches 1A, 1B, 1C, 1D.

また、本実施の形態では、スイッチ4とスイッチ1A〜1Dとの間のデータ転送幅はx4リンク幅とされ、各スイッチ1A〜1Dと各デバイスA〜Dの各エンドポイントとの間のデータ転送幅はx1リンク幅とされている。   In the present embodiment, the data transfer width between the switch 4 and the switches 1A to 1D is the x4 link width, and the data transfer between each switch 1A to 1D and each end point of each device A to D is performed. The width is x1 link width.

このような構成において、当該データ転送システム内で複数の独立したデータ転送を並行して処理する動作モードの場合に、スイッチ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 switch 1. The arbiters 2A to 2D adjust the end points to be used.

例えば、デバイス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 arbiter 2C uses endpoint B1 for switch 1B Using C2, arbiter 2D arbitrates each endpoint to use endpoint D3 for switch 1C.

これにより、デバイス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) x1 link path 7 and device A (endpoint A3)- The path 1 of the x1 link of the switch 1C-device D (endpoint D3) is secured.

このように動作モードに応じて各デバイス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 root complex 3 is configured as a controller and connected to the host CPU 5 and the memory 6.

このような構成において、例えば、デバイス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, arbiter 2C uses endpoint C2 for switch 1B, and arbiter 2D arbitrates each endpoint to use endpoint D3 for switch 1C.

これにより、デバイス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) x1 link path 7 and device A (endpoint A3)- The path 1 of the x1 link of the switch 1C-device D (endpoint D3) is secured. Therefore, the image processing of the read image data to the data transfer for memory storage can be performed between the devices A, B, and C by the x1 link, and at the same time, the data transfer between the devices A, B, and C is disturbed between the devices A and D. Therefore, it is possible to transfer data for copying that makes full use of the x1 link.

このように動作モードに応じて各デバイス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 host CPU 5 Is executed by referring to the path information written and set in each of the devices A to D. Setting of such path information is mainly performed according to the data transfer program installed in the host CPU 5. Executed.

そこで、このような経路情報の管理方法の一例について説明する。この例では、その前提として、各々のデバイス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 host CPU 5 executes processing control according to a data transfer program, that is, a flowchart schematically shown in FIG. That is, the host CPU 5 determines a path between devices that is optimal in the tree structure based on the device connection status in the system, information on each device function acquired from each device, and information on the endpoint. And setting means for writing and setting the path information determined for each device, and the arbiter 2 of each device refers to the path information set by the setting means and is used for accessing other devices. It is configured to arbitrate points.

まず、当該データ転送システム(画像形成システム)内のデバイス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. Routes 7 and 8 as shown in FIG. The process of step S3 is executed as a determination unit and a determination function.

このステップ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 host CPU 5. It is executed by doing. For example, arbitration is performed by the arbiter 2A to use the end points A1 and A3.

一方、このような経路情報の管理方法の他例について説明する。この例では、その前提として、各々のデバイス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 host CPU 5 that manages the system includes information management means that manages information related to device functions and endpoints of each device, device connection status in the system, and device functions that are managed by the information management means. A determination means for determining an optimum route between devices in the tree structure based on the information on the endpoint and the information on the endpoint, and a setting means for writing and setting the route information determined for each device. The arbiter 2 is configured to arbitrate an endpoint to be used when accessing another device with reference to the path information set by the setting means.

このような前提の下では、ホストCPU5はデータ転送用プログラムに従い、図18に概略的に示すようなフローチャートに従い、処理制御を実行する。まず、当該データ転送システム(画像形成システム)内のデバイスA〜Dの接続状態を確認するとともに(ステップS11)、管理している各々のデバイスA〜Dの機能に関する情報やエンドポイントに関する情報を取得し(S12)、かつ、行おうとしている動作モードに関する情報も取得し、デバイス接続状態、デバイス機能情報、エンドポイントに関する情報に基づき当該木構造中で最適となるデバイスA〜D間の経路を決定する(S13)。このステップS13の処理が決定手段、決定機能として実行される。このステップS13で決定された各デバイスA〜D毎の経路情報は、各々対応するデバイスA〜D中に書き込み設定される(S14)。このステップS14の処理が設定手段、設定機能として実行される。   Under such a premise, the host CPU 5 executes processing control according to the data transfer program and according to the flowchart schematically shown in FIG. First, the connection status of the devices A to D in the data transfer system (image forming system) is confirmed (step S11), and information about the functions of the managed devices A to D and information about the endpoints are acquired. (S12) and also obtains information about the operation mode to be performed, and determines the route between the devices A to D that is optimal in the tree structure based on the device connection status, device function information, and information on the endpoint. (S13). The process of step S13 is executed as a determination unit and a determination function. The path information for each of the devices A to D determined in step S13 is written and set in the corresponding devices A to D (S14). The processing in step S14 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 host CPU 5. It is executed by doing. For example, arbitration is performed by the arbiter 2A to use the end points A1 and A3.

次に、このような経路情報の管理方法におけるタイミング制御の一例について図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 host CPU 5. Value).

その後は、当該システムの起動中における動作モードの変更の有無が監視される(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 host CPU 5 directly receives information related to the change in the operation mode (Y in S24), the host CPU 5 relates to the changed operation mode. Based on the information, and the device connection state (acquired from each device or managed by the host CPU 5), device function information, and information on the endpoint, the route between the devices A to D that is optimal in the tree structure is re-established. Determine (S25). The process of step S25 is executed as redetermination means and redetermination function. The path information for each of the devices A to D determined in step S25 is written and set in the corresponding devices A to D (S26). The processing in step S26 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 host CPU 5. It is executed by doing.

一方、動作モードの変更に関する情報をデバイス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 host CPU 5 to re-determine the route information (Message Transaction). ) Is issued (S27). The processing in step S27 is executed as a function of the transaction issuing means by the device. With the issuance of this message transaction, the host CPU 5 receives the information regarding the change of the operation mode by receiving the notification of the information regarding the change of the operation mode stored in the message transaction packet (S28). After receiving the information regarding this operation mode, the processing from step S25 is similarly performed.

なお、ステップ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 host CPU 5. Value).

その後は、当該システムの起動時からタイマを稼動させ(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 host CPU 5. It is executed by doing.

[効果についての考察]
まず、スイッチの出力ポート競合の影響について考察する。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 delay structures 1, 2, 3, the switch has two stages, the delay structures 1, 2, 3, the switch has three stages, and the delay structures 1, 2, 3, The case where there are four stages of delay structures 1, 2, 3 and five switches of delay structures 1, 2, 3 is shown. Each time the number of switches passing through increases by one, the packet transfer delay time is added. The larger the packet data size, the greater the delay. For this reason, it can be seen that when there are a plurality of stages of switches on the data transfer path, the data transfer rate decreases as the size of data transmitted in one packet increases. In this regard, according to the present embodiment, with respect to the plurality of end points A1 to A4, B1 to B4, C1 to C4, and D1 to D4, the number of stages of the switch 1 passing through each is the smallest in relation to the switches 1A to 1D. Since the end points to be used are arbitrated so as to be equal to one stage, it can be seen that a decrease in the data transfer rate can be suppressed.

既存PCIシステムの構成例を示すブロック図である。It is a block diagram which shows the structural example of the existing PCI system. PCI Expressシステムの構成例を示すブロック図である。FIG. 2 is a block diagram illustrating a configuration example of a PCI Express system. デスクトップ/モバイルでのPCI Expressプラットホームの構成例を示すブロック図である。It is a block diagram which shows the structural example of the PCI Express platform in desktop / mobile. x4の場合の物理層の構造例を示す模式図である。It is a schematic diagram which shows the structural example of the physical layer in the case of x4. デバイス間のレーン接続例を示す模式図である。It is a schematic diagram which shows the example of lane connection between devices. スイッチの論理的構造例を示すブロック図である。It is a block diagram which shows the logical structural example of a switch. (a)は既存のPCIのアーキテクチャを示すブロック図、(b)はPCI Expressのアーキテクチャを示すブロック図である。(A) is a block diagram showing an existing PCI architecture, and (b) is a block diagram showing a PCI Express architecture. PCI Expressの階層構造を示すブロック図である。It is a block diagram which shows the hierarchical structure of PCI Express. トランザクションレイヤパケットのフォーマット例を示す説明図である。It is explanatory drawing which shows the format example of a transaction layer packet. PCI Expressのコンフィグレーション空間を示す説明図である。It is explanatory drawing which shows the configuration space of PCI Express. 仮想チャネルの概念を説明するための模式図である。It is a schematic diagram for demonstrating the concept of a virtual channel. データリンクレイヤパケットのフォーマット例を示す説明図である。It is explanatory drawing which shows the format example of a data link layer packet. x4リンクでのバイトストライピング例を示す模式図である。It is a schematic diagram which shows the byte striping example in x4 link. アクティブステート電源管理の制御例を示すタイムチャートである。It is a time chart which shows the example of control of active state power management. 本実施の形態のデータ転送システムにおける木構造例を示す原理的な模式図である。It is a principle schematic diagram which shows the example of a tree structure in the data transfer system of this Embodiment. 本実施の形態の画像形成システムにおける木構造例を示す原理的な模式図である。It is a principle schematic diagram showing an example of a tree structure in the image forming system of the present embodiment. 本実施の形態の経路情報の管理方法の一例を示す概略フローチャートである。It is a schematic flowchart which shows an example of the management method of the route information of this Embodiment. 本実施の形態の経路情報の管理方法の他例を示す概略フローチャートである。It is a schematic flowchart which shows the other example of the management method of the route information of this Embodiment. 本実施の形態の経路情報の管理方法におけるタイミング制御の一例を示す概略フローチャートである。It is a schematic flowchart which shows an example of the timing control in the management method of the route information of this Embodiment. 本実施の形態の経路情報の管理方法におけるタイミング制御の他例を示す概略フローチャートである。It is a schematic flowchart which shows the other example of the timing control in the management method of the route information of this Embodiment. PCI Expressスイッチにおいて種類の異なる4つのトラフィックを同時に開始させ、転送速度に応じてデータ転送が順に終了していく場合の特性を示したグラフである。4 is a graph showing characteristics when four different types of traffic are simultaneously started in a PCI Express switch, and data transfer is sequentially terminated according to the transfer rate. データ転送経路において、経由するスイッチの個数(段数)をパラメータとして、ペイロードサイズと転送レートとの関係を示したグラフである。6 is a graph showing the relationship between the payload size and the transfer rate, with the number of switches (number of stages) passing through the data transfer path as a parameter. PCI Expressの通常の利用形態による木構造例を示す原理的な模式図である。It is a principle schematic diagram which shows the example of a tree structure by the normal usage form of PCI Express. その変形例を示す原理的な模式図である。It is a principle schematic diagram which shows the modification.

符号の説明Explanation of symbols

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.
当該データ転送システムがPCI Expressシステムである、ことを特徴とする請求項1記載のデータ転送システム。 The data transfer system according to claim 1, wherein the data transfer system is a PCI Express system. 請求項1又は2記載のデータ転送システムは、前記第1のデバイスおよび前記第2のデバイスを画像形成に関与するデバイスとすることを特徴とする画像形成システム。 3. The data transfer system according to claim 1, wherein the first device and the second device are devices involved in image formation. 前記第1のデバイスまたは前記第2のデバイスとして、少なくとも、画像入力用デバイスと画像出力用デバイスと画像処理用デバイスとストレージ用デバイスとを含む、ことを特徴とする請求項に記載の画像形成システム。 The image forming apparatus according to claim 3 , wherein the first device or the second device includes at least an image input device, an image output device, an image processing device, and a storage device. system. 木構造によるデータ通信網として送受信独立の通信チャネルが確立され、記木構造における下流側に位置する第1のデバイスが上流側に位置する第1のスイッチと通信可能な第1のエンドポイントおよび上流側に位置する第2のスイッチと通信可能な第2のエンドポイントを含む複数のエンドポイントを有するとともに、当該木構造における下流側に位置する第2のエンドポイントが上流側に位置する前記第1のスイッチと通信可能な第3のエンドポイントおよび上流側に位置する前記第2のスイッチと通信可能な第4のエンドポイントを含む複数のエンドポイントを有するデータ転送システムを利用するデータ転送方法であって、
前記第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.
前記データ転送システムがPCI Expressシステムである、ことを特徴とする請求項記載のデータ転送方法。 6. The data transfer method according to claim 5 , wherein the data transfer system is a PCI Express system.
JP2004324556A 2003-11-11 2004-11-09 Data transfer system, image forming system, and data transfer method Expired - Fee Related JP4603336B2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (3)

* Cited by examiner, † Cited by third party
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