JP2007067634A - Information processing system, program, and packet communication system - Google Patents
Information processing system, program, and packet communication system Download PDFInfo
- Publication number
- JP2007067634A JP2007067634A JP2005249171A JP2005249171A JP2007067634A JP 2007067634 A JP2007067634 A JP 2007067634A JP 2005249171 A JP2005249171 A JP 2005249171A JP 2005249171 A JP2005249171 A JP 2005249171A JP 2007067634 A JP2007067634 A JP 2007067634A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- payload size
- curve
- information processing
- processing system
- 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.)
- Granted
Links
Images
Abstract
Description
本発明は、例えば各種画像を扱い各種の処理を行う複合機(MFP)等の情報処理システム、プログラムおよびパケット通信方法に関する。 The present invention relates to an information processing system such as a multifunction peripheral (MFP) that handles various images and performs various processes, a program, and a packet communication method.
一般に、画像データその他のデータを扱うデジタル複写機、複合機(MFP)等の画像形成システムでは、デバイス間のインタフェースにPCIバスが使用されている。しかし、パラレル方式のPCIバスでは、レーシングやスキューなどの問題があり、高速・高画質の画像形成装置に使用するには、転送レートが低い段階にきており、最近では、PCIバスのようなパラレル方式のインタフェースに代えて、IEEE1394やUSB等の高速シリアルインタフェースの使用が検討されている。例えば、特許文献1によれば、内部インタフェースとして、IEEE1394やUSB等の高速シリアルインタフェースを使用することが提案されている。
In general, in an image forming system such as a digital copying machine or a multifunction peripheral (MFP) 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 forming apparatuses. The use of a high-speed serial interface such as IEEE1394 or USB is being considered in place of the parallel interface. For example, according to
また、他の高速シリアルインタフェースとして、PCIバス方式の後継規格に当るPCI Express(登録商標)なるインタフェースも提案され、実用化の段階にきている(例えば、非特許文献1参照)。このPCI Expressシステムは、概略的には、例えば非特許文献1中の図1等に示されるようなルートコンプレックス−スイッチ(任意階層)−デバイス等のツリー構造(木構造)によるデータ通信網として構成されている。 As another high-speed serial interface, an interface called PCI Express (registered trademark), which is a successor to the PCI bus system, has been proposed and has been put to practical use (for example, see Non-Patent Document 1). This PCI Express system is schematically configured as a data communication network having a tree structure (tree structure) such as a root complex-switch (arbitrary hierarchy) -device as shown in FIG. Has been.
ところが、特許文献1の場合、複数の画像データの転送を同時に行う際の問題については言及されていない。
However, in the case of
また、シリアルであり自由度の高いシステムを構築できるようになるため、複数のトラフィックが発生するようになるが、経路遅延のばらつき等の影響については言及されていない。 In addition, since a serial and highly flexible system can be constructed, a plurality of traffics are generated, but there is no mention of influences such as variations in path delay.
本発明は、上記に鑑みてなされたものであって、スケーラビリティが高い等の特徴を有するPCI Express規格の高速シリアルバスを有効に活用することにより、経路遅延の影響とプロトコルのオーバーヘッドの影響とをバランス良く考慮した高速データ転送を実現することを目的とする。 The present invention has been made in view of the above, and by effectively utilizing a PCI Express standard high-speed serial bus having features such as high scalability, the effects of path delay and protocol overhead can be reduced. The purpose is to realize high-speed data transfer in a balanced manner.
上述した課題を解決し、目的を達成するために、請求項1にかかる発明は、ポイントツーポイント接続または複数のポイントツーポイント接続を木構造で構成した通信網を介して送受信独立の通信チャネルが確立される高速シリアルバスにより、パケット単位で通信を行う情報処理システムにおいて、リクエストパケットの送信開始時刻から当該リクエストパケットに対応するコンプリッションパケットの先頭が到着する時刻までの時間差T1と、リクエストパケットの送信開始時刻から目的とする全データの最後のコンプリッションパケットの受信完了時刻までの時間差T2とに基づいてコンプリッションパケットのペイロードサイズに対する比(T1/T2)を求めた曲線1を検出する手段と、コンプリッションパケットのヘッダサイズAと、コンプリッションパケットのペイロードサイズBに基づいてコンプリッションパケットのペイロードサイズに対する比(A/(A+B))を求めた曲線2を検出する手段と、前記曲線1と前記曲線2とに基づいて、転送レートの理論値に対するロスが少ないパケット転送のペイロードサイズを決定する手段と、を備える。
In order to solve the above-described problems and achieve the object, the invention according to
また、請求項2にかかる発明は、請求項1記載の情報処理システムにおいて、決定される前記ペイロードサイズは、前記曲線1と前記曲線2との交点以下である。
According to a second aspect of the present invention, in the information processing system according to the first aspect, the determined payload size is equal to or less than an intersection of the
また、請求項3にかかる発明は、請求項1記載の情報処理システムにおいて、決定される前記ペイロードサイズは、前記曲線1と前記曲線2の交点のペイロードサイズを中心として1/4から4倍のペイロードサイズである。
According to a third aspect of the present invention, in the information processing system according to the first aspect, the determined payload size is 1/4 to 4 times the payload size at the intersection of the
また、請求項4にかかる発明は、請求項1ないし3のいずれか一記載の情報処理システムにおいて、経路の遅延量に応じて前記ペイロードサイズを変更可能にする。 According to a fourth aspect of the present invention, in the information processing system according to any one of the first to third aspects, the payload size can be changed according to a delay amount of a path.
また、請求項5にかかる発明は、請求項1ないし3のいずれか一記載の情報処理システムにおいて、経路のスイッチ段数に応じて前記ペイロードサイズを変更可能にする。 According to a fifth aspect of the present invention, in the information processing system according to any one of the first to third aspects, the payload size can be changed according to the number of switch stages of the route.
また、請求項6にかかる発明は、請求項4または5記載の情報処理システムにおいて、前記ペイロードサイズの変更は、前記高速シリアルバスの再コンフィグレーションの際に実施する。 According to a sixth aspect of the present invention, in the information processing system according to the fourth or fifth aspect, the payload size is changed when the high-speed serial bus is reconfigured.
また、請求項7にかかる発明は、請求項1ないし6のいずれか一記載の情報処理システムにおいて、リクエストパケットの送信開始時刻から当該リクエストパケットに対応するコンプリッションパケットの先頭が到着する時刻までの時間差T1及びリクエストパケットの送信開始時刻から目的とする全データの最後のコンプリッションパケットの受信完了時刻までの時間差T2を、計測する時間差計測手段を更に備え、前記時間差計測手段により計測した時間差T1及び時間差T2に基づいて曲線1を検出する。
According to a seventh aspect of the present invention, in the information processing system according to any one of the first to sixth aspects, from the transmission start time of the request packet to the time at which the head of the compression packet corresponding to the request packet arrives And a time difference measuring means for measuring the time difference T2 from the transmission start time of the request packet to the reception completion time of the last completion packet of all the target data, and the time difference measured by the time difference measuring means
また、請求項8にかかる発明は、請求項7記載の情報処理システムにおいて、前記時間差計測手段は、計測用パケットを発生する計測用パケット発生部と、この計測用パケット発生部で発生した計測用パケットの出力時刻とエンドポイントからの戻りパケットの受信時刻を元に遅延量を検出する遅延量検出部と、この遅延量検出部により検出された遅延量を記憶する遅延量記憶部と、を備えている。 According to an eighth aspect of the present invention, in the information processing system according to the seventh aspect, the time difference measuring means includes a measurement packet generator that generates a measurement packet, and a measurement packet generated by the measurement packet generator. A delay amount detection unit that detects a delay amount based on a packet output time and a reception time of a return packet from the end point; and a delay amount storage unit that stores a delay amount detected by the delay amount detection unit. ing.
また、請求項9にかかる発明は、請求項8記載の情報処理システムにおいて、前記計測用パケットとしては、ペイロードサイズを振った複数のパケットを用いる。 According to a ninth aspect of the present invention, in the information processing system according to the eighth aspect, as the measurement packet, a plurality of packets having different payload sizes are used.
また、請求項10にかかる発明は、請求項1ないし9のいずれか一記載の情報処理システムにおいて、前記高速シリアルバスは、PCI Express 規格の高速シリアルバスである。 According to a tenth aspect of the present invention, in the information processing system according to any one of the first to ninth aspects, the high-speed serial bus is a PCI Express standard high-speed serial bus.
また、請求項11にかかる発明は、ポイントツーポイント接続または複数のポイントツーポイント接続を木構造で構成した通信網を介して送受信独立の通信チャネルが確立される高速シリアルバスによるパケット単位での通信処理をコンピュータに実行させるプログラムであって、リクエストパケットの送信開始時刻から当該リクエストパケットに対応するコンプリッションパケットの先頭が到着する時刻までの時間差T1と、リクエストパケットの送信開始時刻から目的とする全データの最後のコンプリッションパケットの受信完了時刻までの時間差T2とに基づいてコンプリッションパケットのペイロードサイズに対する比(T1/T2)を求めた曲線1を検出する機能と、コンプリッションパケットのヘッダサイズAと、コンプリッションパケットのペイロードサイズBに基づいてコンプリッションパケットのペイロードサイズに対する比(A/(A+B))を求めた曲線2を検出する機能と、前記曲線1と前記曲線2とに基づいて、転送レートの理論値に対するロスが少ないパケット転送のペイロードサイズを決定する機能と、を前記コンピュータに実行させる。
According to the eleventh aspect of the present invention, communication in packet units by a high-speed serial bus is established in which a communication channel independent of transmission and reception is established through a communication network in which point-to-point connection or a plurality of point-to-point connections are configured in a tree structure. A program for causing a computer to execute processing, which is based on a time difference T1 from a request packet transmission start time to a arrival time of a completion packet corresponding to the request packet, and a request packet transmission start time. A function for detecting a
また、請求項12にかかる発明は、請求項11記載のプログラムにおいて、決定される前記ペイロードサイズは、前記曲線1と前記曲線2との交点以下である。
According to a twelfth aspect of the present invention, in the program according to the eleventh aspect, the determined payload size is equal to or less than an intersection of the
また、請求項13にかかる発明は、請求項11記載のプログラムにおいて、決定される前記ペイロードサイズは、前記曲線1と前記曲線2の交点のペイロードサイズを中心として1/4から4倍のペイロードサイズである。
According to a thirteenth aspect of the present invention, in the program according to the eleventh aspect, the payload size to be determined is 1/4 to 4 times the payload size centered on the payload size at the intersection of the
また、請求項14にかかる発明は、ポイントツーポイント接続または複数のポイントツーポイント接続を木構造で構成した通信網を介して送受信独立の通信チャネルが確立される高速シリアルバスにより、パケット単位で通信を行う情報処理システムにおけるパケット通信方法おいて、リクエストパケットの送信開始時刻から当該リクエストパケットに対応するコンプリッションパケットの先頭が到着する時刻までの時間差T1と、リクエストパケットの送信開始時刻から目的とする全データの最後のコンプリッションパケットの受信完了時刻までの時間差T2とに基づいてコンプリッションパケットのペイロードサイズに対する比(T1/T2)を求めた曲線1を検出し、コンプリッションパケットのヘッダサイズAと、コンプリッションパケットのペイロードサイズBに基づいてコンプリッションパケットのペイロードサイズに対する比(A/(A+B))を求めた曲線2を検出し、前記曲線1と前記曲線2とに基づいて、転送レートの理論値に対するロスが少ないパケット転送のペイロードサイズを決定する。
According to the fourteenth aspect of the present invention, communication is performed in units of packets by a high-speed serial bus in which a communication channel independent of transmission and reception is established through a communication network in which point-to-point connections or a plurality of point-to-point connections are configured in a tree structure. In the packet communication method in the information processing system, the time difference T1 from the transmission start time of the request packet to the arrival time of the beginning of the completion packet corresponding to the request packet, and the purpose from the transmission start time of the request packet The
また、請求項15にかかる発明は、請求項14記載のパケット通信方法において、決定される前記ペイロードサイズは、前記曲線1と前記曲線2との交点以下である。
According to a fifteenth aspect of the present invention, in the packet communication method according to the fourteenth aspect, the determined payload size is equal to or less than an intersection of the
また、請求項16にかかる発明は、請求項14記載のパケット通信方法において、決定される前記ペイロードサイズは、前記曲線1と前記曲線2の交点のペイロードサイズを中心として1/4から4倍のペイロードサイズである。
The invention according to
請求項1にかかる発明によれば、コンプリッションパケットのペイロードサイズに対するT1/T2の比を求めた曲線1と、コンプリッションパケットのペイロードサイズに対するA/(A+B)の比を求めた曲線2とに基づいて、転送レートの理論値に対するロスが少ないパケット転送のペイロードサイズを決定することにより、経路遅延の影響とプロトコルのオーバーヘッドの影響とをバランス良く考慮した高速データ転送を実現することができるという効果を奏する。
According to the first aspect of the present invention, the
また、請求項2にかかる発明によれば、決定されるペイロードサイズは、曲線1と曲線2との交点以下であることにより、経路遅延のばらつきの影響を受けないシステムを構築でき、拡張性が格段に良くなるという効果を奏する。
Further, according to the invention of
また、請求項3にかかる発明によれば、決定されるペイロードサイズは、曲線1と曲線2の交点のペイロードサイズを中心として1/4から4倍のペイロードサイズであることにより、1/4から4倍の外では2割以上の低下となり使用するペイロードサイズとしてはあまり実用的な範囲ではないため、経路遅延のばらつきの影響とプロトコルのオーバーヘッドの影響とをバランスよく考慮した高速データ転送を実現することができるという効果を奏する。
According to the invention of
また、請求項4にかかる発明によれば、経路の遅延量に応じてペイロードサイズを変更可能にすることにより、遅延量の動的な変動があった場合でも常に最速の高速データ転送を実現できるという効果を奏する。
According to the invention of
また、請求項5にかかる発明によれば、経路のスイッチ段数に応じてペイロードサイズを変更可能にすることにより、スイッチ段数の動的な変動があった場合でも常に最速の高速データ転送を実現できるという効果を奏する。
Further, according to the invention of
また、請求項6にかかる発明によれば、経路の遅延量や経路のスイッチ段数に応じてペイロードサイズを変更可能にすることができるという効果を奏する。
According to the invention of
また、請求項7にかかる発明によれば、計測された時間差T1及び時間差T2に従って、曲線1を検出することにより、経路の遅延量や経路のスイッチ段数の動的な変動があった場合でも常に実測値を元に曲線1を検出することができるという効果を奏する。
According to the invention of
また、請求項8にかかる発明によれば、時間差T1及び時間差T2を、確実に計測することができるという効果を奏する。
Moreover, according to the
また、請求項9にかかる発明によれば、計測用パケットとしてペイロードサイズを振った複数のパケットを用いることにより、2曲線の交点を自動的に予測することができるという効果を奏する。 Moreover, according to the invention concerning Claim 9, there exists an effect that the intersection of 2 curves can be automatically estimated by using the several packet which changed the payload size as a packet for a measurement.
また、請求項10にかかる発明によれば、スケーラビリティが高い等の特徴を有するPCI Express規格の高速シリアルバスを有効に活用することにより、経路遅延のばらつきの影響があっても、高速な画像データ出力や同時転送を行うことができるという効果を奏する。
Further, according to the invention of
また、請求項11にかかる発明によれば、コンプリッションパケットのペイロードサイズに対するT1/T2の比を求めた曲線1と、コンプリッションパケットのペイロードサイズに対するA/(A+B)の比を求めた曲線2とに基づいて、転送レートの理論値に対するロスが少ないパケット転送のペイロードサイズを決定することにより、経路遅延の影響とプロトコルのオーバーヘッドの影響とをバランス良く考慮した高速データ転送を実現することができるという効果を奏する。
According to the invention of claim 11, the
また、請求項12にかかる発明によれば、決定されるペイロードサイズは、曲線1と曲線2との交点以下であることにより、経路遅延のばらつきの影響を受けないシステムを構築でき、拡張性が格段に良くなるという効果を奏する。
According to the invention of claim 12, since the determined payload size is equal to or less than the intersection of the
また、請求項13にかかる発明によれば、決定されるペイロードサイズは、曲線1と曲線2の交点のペイロードサイズを中心として1/4から4倍のペイロードサイズであることにより、1/4から4倍の外では2割以上の低下となり使用するペイロードサイズとしてはあまり実用的な範囲ではないため、経路遅延のばらつきの影響とプロトコルのオーバーヘッドの影響とをバランスよく考慮した高速データ転送を実現することができるという効果を奏する。
According to the invention of claim 13, the payload size to be determined is 1/4 to 4 times the payload size centered on the payload size at the intersection of the
また、請求項14にかかる発明によれば、コンプリッションパケットのペイロードサイズに対するT1/T2の比を求めた曲線1と、コンプリッションパケットのペイロードサイズに対するA/(A+B)の比を求めた曲線2とに基づいて、転送レートの理論値に対するロスが少ないパケット転送のペイロードサイズを決定することにより、経路遅延の影響とプロトコルのオーバーヘッドの影響とをバランス良く考慮した高速データ転送を実現することができるという効果を奏する。
According to the fourteenth aspect of the present invention, the
また、請求項15にかかる発明によれば、決定されるペイロードサイズは、曲線1と曲線2との交点以下であることにより、経路遅延のばらつきの影響を受けないシステムを構築でき、拡張性が格段に良くなるという効果を奏する。
According to the invention of
また、請求項16にかかる発明によれば、決定されるペイロードサイズは、曲線1と曲線2の交点のペイロードサイズを中心として1/4から4倍のペイロードサイズであることにより、1/4から4倍の外では2割以上の低下となり使用するペイロードサイズとしてはあまり実用的な範囲ではないため、経路遅延のばらつきの影響とプロトコルのオーバーヘッドの影響とをバランスよく考慮した高速データ転送を実現することができるという効果を奏する。
According to the invention of
以下に添付図面を参照して、この発明にかかる情報処理システム、プログラムおよびパケット通信方法の最良な実施の形態を詳細に説明する。 Exemplary embodiments of an information processing system, a program, and a packet communication method according to the present invention are explained in detail below with reference to the accompanying drawings.
本発明を実施するための最良の形態について図面を参照して説明する。以下では、PCI Expressの詳細について、[PCI Express規格の概要]〜[PCI Express のアーキテクチャの詳細]の欄で説明し、その後、本実施の形態の情報処理システムについて、[情報処理システム]の欄で説明する。 The best mode for carrying out the present invention will be described with reference to the drawings. In the following, details of PCI Express will be described in the columns [Outline of PCI Express Standard] to [Details of Architecture of PCI Express], and then the information processing system according to the present embodiment will be described in the [Information Processing System] column. I will explain it.
[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 an existing PCI system, PCI-X (PCI upward compatible standard)
これに対して、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プラットホーム例を図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 component links in a one-to-one relationship (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 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 does not request I / O 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 arrows indicate the PCI Express link 114 (or 126), and 142a to 142d indicate ports. Among these, the
E.PCI Express114e−PCIブリッジ119
PCI ExpressからPCI/PCI-Xへの接続を提供する。これにより、既存のPCI/PCI-XデバイスをPCI Expressシステム上で使用することができる。
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−1に示すように、プロトコルとシグナリングが密接に関連する構造であり階層という考え方はなかったが、PCI Expressでは、図7−2に示すように、一般的な通信プロトコルや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 there is no concept of hierarchy. In PCI Express, as shown in FIG. Like the standard communication protocol 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 employs 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 cross-point of the data signal. The system extracts the clock.
[コンフィグレーション空間]
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 extended 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 in order to avoid 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 (mechanism to check the buffer availability on the receiving side before starting data transfer and prevent 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)
トランザクションレイヤパケット(TLP)は、物理層から送信されるときに自動的に図12に示すようなデータリンクレイヤパケット(DLLP)に分割されて各レーンに送信される。データリンク層154が生成するパケットは、データリンクレイヤパケット(DLLP)と呼ばれ、データリンク層154間でやり取りされる。データリンクレイヤパケット(DLLP)には、
・Ack/Nak:TLPの受信確認、リトライ(再送)
・InitFC1/InitFC2/UpdateFC:フロー制御の初期化とアップデート
・電源管理のためのDLLP
なる種類がある。
b. Data link layer packet (DLLP)
The transaction layer packet (TLP) is automatically divided into data link layer packets (DLLP) as shown in FIG. 12 and transmitted to each lane when transmitted from the physical layer. 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.電源管理とリンクステート
リンクの消費電力を低く抑えるために、図14に示すように、L0/L0s/L1/L2というリンクステートが定義されている。
b. Power Management and Link State In order to keep the power consumption of the link low, a link state of L0 / L0s / L1 / L2 is defined as shown in FIG.
L0が通常モードで、L0sからL2へと低消費電力となるが、L0への復帰にも時間がかかるようになる。図15に示すように、ソフトウェアによる電源管理に加えて、アクティブステート電源管理を積極的に行うことにより、消費電力を極力小さくすることが可能となる。 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. 15, 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.
[情報処理システム]
本実施の形態のデジタル複写機やMFP等の情報処理システムは、その内部インタフェースに前述したようなPCI Express規格の高速シリアルバスを利用するようにしたものである。
[Information processing system]
An information processing system such as a digital copying machine or MFP according to the present embodiment uses a PCI Express standard high-speed serial bus as described above for its internal interface.
図16は、本実施の形態の情報処理システムの構成例を示す概略ブロック図である。本実施の形態の情報処理システム1は、例えばMFP等の機器に適用されるもので、その構成要素として、制御部2と画像入力部である入力部3と画像出力部である出力部4と画像処理部である処理部5と記憶部6とを備える。ここに、制御部2は、インストールされているプログラム(ソフトウェア)に従い当該システム全体の制御を受け持つCPU等を含み、経路制御や経路判断等の処理を行うデバイス部分(プリンタコントローラ)を意味する。入力部3とは、原稿画像等に基づく画像データを当該システム内に取り込むためのデバイスやユニット部分を示し、例えば、原稿画像を光電的に読み取って画像データを取得するスキャナエンジン等により構成されている。出力部4とは、画像データを紙などに印刷出力するデバイスやユニット部分を示し、例えば、電子写真方式のプロッタ(プリンタ)エンジン等により構成されている。処理部5とは、画像データに対して拡大・縮小、回転等の何らかの画像処理を施すデバイスやユニット部分を示し、例えば、変倍器、回転器、圧縮/伸長器等を含む構成とされている。記憶部6とは、画像データを保存するメモリやHDD等を含むデバイスやユニット部分であるが、本実施の形態の場合、例えばプリンタコントローラにより当該記憶部6が構成されている。
FIG. 16 is a schematic block diagram illustrating a configuration example of the information processing system according to the present embodiment. The
このような情報処理システム(MFP)の構成要素に関して、本実施の形態では、例えば処理部5が入力部3と出力部4とを一体に有する構成とされ、かつ、記憶部6(プリンタコントローラ)が制御部2を有する構成とされ、かつ、処理部5と記憶部6とのデバイス間が上述したようなPCI Express規格による高速シリアルバス7により接続されている(従って、処理部5、記憶部6はポートを有する)。
With respect to the components of such an information processing system (MFP), in the present embodiment, for example, the
このような構成において、制御部2による制御の下、入力部3から取り込まれた画像データは必要に応じて処理部5による画像処理を経て後、高速シリアルバス7を介して記憶部6に転送され、記憶部6内のメモリに一旦保存される。その後、記憶部6のメモリに保存された画像データは高速シリアルバス7を介して処理部5に取り込まれ必要に応じて画像処理を経た後、出力部4に転送され、印刷出力等がなされる。
In such a configuration, the image data captured from the
本実施の形態の場合、MFP等の情報処理システム1の内部でPCI Express規格による高速シリアルバス7により処理部5と記憶部6とを接続しているので、処理部5側と記憶部6側とで各々のデバイスの電気系を別個の基板上に実装して構成することができ、高速性を損なうことなく、設計上の自由度を大幅に拡張することができ、基板面積低減によるコストダウンも図ることができる。
In the case of the present embodiment, the
なお、図16に示した本実施の形態は、一例を示すに過ぎず、例えば、以下に示すような各種態様により構成することができる。 Note that the present embodiment shown in FIG. 16 is merely an example, and can be configured in various aspects as shown below, for example.
図17に示す構成例は、制御部2を処理部5内に持たせたものである。
In the configuration example shown in FIG. 17, the
図18に示す構成例は、入力部3、処理部5、出力部4、記憶部6を制御部2に各々高速シリアルバス7a〜7dにより個別に接続することにより、制御部2を独立させ、入力部3、処理部5、出力部4、記憶部6を等価的に取り扱えるようにしたものである。従って、この場合の制御部2としては、例えばPCI Expressシステムの木構造において根元に位置するルートコンプレックスを用いることで容易に実現できる。
The configuration example shown in FIG. 18 makes the
これにより、例えば入力部3により取り込まれた画像データを高速シリアルバス7aを経て制御部2内に転送し、高速シリアルバス7bを経て処理部5に転送して必要な画像処理を施し、さらに高速シリアルパス7b,7dを経て記憶部6に転送させ、一旦メモリに保存させることができる。これと並行して、記憶部6のメモリに保存された画像データを高速シリアルバス7d,7bを経て処理部5に転送して必要な画像処理を施し、さらに高速シリアルパス7b,7cを経て出力部4に転送させ、印刷出力等に供することができる。
Thus, for example, the image data captured by the
図19に示す構成例は、制御部2を有する記憶部6に対して、入力部3、処理部5、出力部4を各々高速シリアルバス7a〜7cにより個別に接続し、記憶部6が入力部3、処理部5、出力部4を等価的に取り扱えるようにしたものである。この場合の制御部2も、図18の場合と同様に、例えばPCI Expressシステムの木構造において根元に位置するルートコンプレックスを用いることができる。
In the configuration example shown in FIG. 19, the
これにより、例えば入力部3により取り込まれた画像データを高速シリアルバス7aを経て記憶部6内に転送し、高速シリアルバス7bを経て処理部5に転送して必要な画像処理を施し、さらに高速シリアルパス7bを経て記憶部6に転送させ、一旦メモリに保存させることができる。これと並行して、記憶部6のメモリに保存された画像データを高速シリアルバス7cを経て出力部4に転送させ、印刷出力等に供することができる。
As a result, for example, image data captured by the
図20に示す構成例は、図19との対比では、入力部3と記憶部6とを入れ替えたものである。図21に示す構成例は、図19との対比では、処理部5と記憶部6とを入れ替えたものである。図22に示す構成例は、図19との対比では、出力部4と記憶部6とを入れ替えたものである。
In the configuration example shown in FIG. 20, the
図23に示す構成例は、図18に示した構成において、制御部2よりも下流側にPCI Expressシステムの木構造におけるスイッチ8を高速シリアルバス7eを介して介在させ、入力部3、処理部5、出力部4、記憶部6をスイッチ8の下流側ポートに各々高速シリアルバス7a〜7dにより接続したものである。
In the configuration example shown in FIG. 23, in the configuration shown in FIG. 18, the
図24ないし図27は、各々図19ないし図22に示した構成において、同様に、PCI Expressシステムの木構造におけるスイッチ8を介在させた構成としたものである。
FIGS. 24 to 27 are the same as the configurations shown in FIGS. 19 to 22, respectively, with the
ところで、PCI Expressシステムの木構造におけるスイッチをPCI Express規格の高速シリアルバス経路上に介在させて拡張性と高速性とを両立させる場合の情報処理システムの最適構成例について図28を参照して説明する。図28に示す情報処理システムの構成例は、前述したMFPのような単体構成の情報処理システム例ではなく、複数の機器を接続することにより構築される情報処理システム例である。その基本として、まず、出力部に相当するプロッタ(又は、プリンタ)11と記憶部に相当する画像メモリ12,13とが、PCI Express規格の高速シリアルバス14a,14b,14c及び1段のみのPCI Express規格のスイッチ15を介して近傍で接続されている。ここに、画像メモリ12,13は、例えばプロッタ11で印字出力するための最終ドットデータを格納する専用メモリが用いられている。もっとも、必ずしも最終ドットデータである必要はなく、途中経路上にリアルタイムの圧縮伸長器等がある場合には、圧縮データを格納するメモリであってもよい。このようにプロッタ11と画像メモリ12,13とを1段のスイッチ15で近傍接続する基本構成に加えて、CPU16やシステムメモリ17が接続されて制御部に相当するルートコンプレックス18を接続する場合にはスイッチ15の上流側にPCI Express規格の高速シリアルバス14dで接続すればよい。さらに、タイミング制約のないもの、或いは、遅くてもよいもの、例えば入力部としてのスキャナ19や処理部としての画処理演算ユニット20などを接続する場合には、スイッチ15の下流側に拡張用のPCI Express規格のスイッチ21を介在させて、PCI Express規格の高速シリアルバス14e,14f,14gで接続すればよい。即ち、スイッチ15を介在させることにより、当該スイッチ15の有する拡張性に基づきシステムを任意に構成することができるとともに、ライン同期信号に同期させて画像データを転送させる必要がある等、高速処理上のタイミング制御の厳しいプロッタ11と画像メモリ12,13とを近傍で接続しているので、データ転送の遅延を抑え、画像メモリ12又は13からプロッタ11への高速データ転送に対処し得る。
By the way, an example of the optimum configuration of an information processing system in the case where a switch in a tree structure of a PCI Express system is interposed on a PCI Express standard high-speed serial bus path to achieve both expandability and high speed will be described with reference to FIG. To do. The configuration example of the information processing system shown in FIG. 28 is an example of an information processing system constructed by connecting a plurality of devices, not an example of an information processing system having a single configuration like the MFP described above. Basically, first, a plotter (or printer) 11 corresponding to an output unit and image memories 12 and 13 corresponding to a storage unit include a PCI Express standard high-speed
なお、図28に示すシステム構成例では、インタフェースが共通なため、入力部としてのスキャナと出力部としてのプロッタとを併有するMFP22も、プロッタ11と同様に、スイッチ15に対してPCI Express規格の高速シリアルバス14hを介して接続されている例を示している。この場合も、MFP22中のプロッタと画像メモリ12,13とは1段のスイッチ15を介して近傍で接続された構成となっており、画像メモリ12又は13から当該プロッタへのライン同期信号に同期した画像データの転送を遅延なく行わせることができる。
In the system configuration example shown in FIG. 28, since the interface is common, the
これらの構成例におけるデータ転送について、さらに説明する。例えば、入力部3から記憶部6に直接的にデータ転送可能で、かつ、記憶部6から出力部4に直接的にデータ転送可能な図16、図17、図19、図23ないし図27の構成例に適用可能なデータ転送例としては、高速シリアルバス7により、ライン同期信号に同期して画像データを入力部3から記憶部6に転送させるとともに、ライン同期信号に同期して画像データを記憶部6から出力部4に転送させることを基本とする。
Data transfer in these configuration examples will be further described. For example, FIG. 16, FIG. 17, FIG. 19 and FIG. 23 to FIG. 27 can transfer data directly from the
図29はコマンド発行順を示す模式的なタイミングチャートである。図29はライン同期信号XLDSYNCに同期して画像データのリードリクエストコマンドMemReadReq.とライトリクエストコマンドMemWriteReq.とにプライオリティを設定せずに高速シリアルバス7を利用して送信するとともにリードリクエストコマンドMemReadReq.に従いリードデータMemReadComp.を受信する場合の動作例である。
FIG. 29 is a schematic timing chart showing the order of command issuance. In FIG. 29, the image data read request command MemReadReq. And the write request command MemWriteReq. Are transmitted using the high-speed
ところが、図29に示すようなコマンド発行を行った場合において、経路遅延の影響のばらつき(接続構成の変更によるばらつき、競合データ転送によるタイミングばらつき、など)の影響により画像データ転送が正常に行えない場合がある。すなわち、経路遅延の影響のばらつきの影響により、図30に示すように、リードデータMemReadComp.をライン有効期間XLGATE内に受信できないケースが生じてしまう場合がある。 However, when a command is issued as shown in FIG. 29, image data transfer cannot be performed normally due to variations in the influence of path delay (variations due to changes in connection configuration, timing variations due to competing data transfer, etc.). There is a case. That is, there may be a case where the read data MemReadComp. Cannot be received within the line valid period XLGATE as shown in FIG.
図31は、コマンド発行時におけるリクエストパケットと対応したコンプリッションパケットとの関係を示す説明図である。図31においては、送信されたリードリクエストパケットに対応したコンプリッションパケットが戻ってくる様子を示している。コンプリッションパケットは、ヘッダ部とペイロード部とから構成されている。図31に示すように、リードリクエストパケット(リードリクエストコマンドMemReadReq.)とコンプリッションパケット(リードデータMemReadComp.)との経路遅延の影響がばらつくことにより、リードデータMemReadComp.をライン有効期間XLGATE内に受信できないケースが生じてしまうことになる。 FIG. 31 is an explanatory diagram showing a relationship between a request packet and a corresponding completion packet when a command is issued. FIG. 31 shows a state where a completion packet corresponding to the transmitted read request packet is returned. The completion packet is composed of a header part and a payload part. As shown in FIG. 31, the influence of the path delay between the read request packet (read request command MemReadReq.) And the completion packet (read data MemReadComp.) Varies, so that the read data MemReadComp. There will be cases where it cannot be received.
ここで、図32は、スイッチを経由した場合と経由しない場合とにおける遅延の影響を例示的に示す特性図である。図32に示すように、経路中における遅延要素の1つであるスイッチを経由した場合に、スイッチ内部の実装方式(例えば、メモリ実装方式)の違い(構造1−3)により遅延が異なり、そのばらつきにより特性が変化していることがわかる。ここで、メモリ実装方式の違いとは、デュアルポートメモリか、シングルポートメモリであるか、などである。 Here, FIG. 32 is a characteristic diagram exemplarily showing the influence of delay in the case of passing through a switch and in the case of not passing through a switch. As shown in FIG. 32, when passing through a switch which is one of the delay elements in the path, the delay differs depending on the difference in the mounting method (for example, memory mounting method) inside the switch (structure 1-3). It can be seen that the characteristics change due to the variation. Here, the difference in the memory mounting method is whether it is a dual port memory or a single port memory.
また、図33は、スイッチを経由した場合における段数の変化による遅延の影響を例示的に示す特性図である。図33に示すように、経路中における遅延要素の1つであるスイッチの段数を変えることにより、さらに特性のばらつきが大きくなることがわかる。 FIG. 33 is a characteristic diagram exemplarily showing the influence of delay due to the change in the number of stages when passing through a switch. As shown in FIG. 33, it can be seen that the variation in characteristics is further increased by changing the number of switch stages, which is one of the delay elements in the path.
すなわち、従来においては、システム拡張することで最適なペイロードサイズ(ペイロード長)が変動する為、拡張性がなかった。また、経路遅延の影響により、ペイロードサイズを大きくしてもシステムとしての転送レートが確保できない。そこで、本実施の形態においては、以下に示す方法によりペイロードサイズを決定するようにした。 That is, in the prior art, since the optimum payload size (payload length) fluctuates by system expansion, there was no expandability. Also, due to the influence of path delay, the transfer rate as a system cannot be secured even if the payload size is increased. Therefore, in this embodiment, the payload size is determined by the following method.
まず、図31に示すように、リードリクエストパケットの送信開始時刻から対応するコンプリッションパケットの先頭が到着する時刻までの時間差(経路遅延)をT1、リードリクエストパケットの送信開始時刻から目的とする全データの最後のコンプリッションの受信完了時刻までの時間差(転送時間)をT2とする。また、コンプリッションパケットのヘッダサイズをA[Byte]、コンプリッションパケットのペイロードサイズをB[Byte]とする。 First, as shown in FIG. 31, the time difference (path delay) from the start time of transmission of the read request packet to the time of arrival of the head of the corresponding completion packet is set as T1, and the target from the start time of transmission of the read request packet. The time difference (transfer time) until the reception completion time of the last compression of all data is T2. Further, the header size of the compression packet is A [Byte], and the payload size of the compression packet is B [Byte].
次に、コンプリッションパケットのペイロードサイズに対するT1/T2の比を求めた曲線を、経路遅延オーバーヘッドを示す曲線1とする。一方、コンプリッションパケットのペイロードサイズに対するA/(A+B)の比を求めた曲線を、ヘッダオーバーヘッドを示す曲線2とする。ここで、図34は要因別のロス特性を示す特性図である。図34に示すように、曲線1と曲線2との交点が128Byteと256Byte間にある。そして、図34に示すように、曲線1と曲線2との交点以下のペイロードサイズでは、転送レートの理論値に対するロスが少ないことが分かる。したがって、本実施の形態においては、このような曲線1と曲線2との交点以下のペイロードサイズで転送を行うようにする。このように、コンプリッションパケットのペイロードサイズに対するT1/T2の比を求めた曲線を曲線1と、コンプリッションパケットのペイロードサイズに対するA/(A+B)の比を求めた曲線2との交点以下のペイロードサイズで転送を行うようにすることにより、経路遅延の影響とプロトコルのオーバーヘッドの影響とをバランス良く考慮した高速データ転送を実現することができる。
Next, a curve obtained by calculating a ratio of T1 / T2 to the payload size of the compression packet is defined as a
ここで、図32に示すように、遅延量が大きいほどピークのペイロードサイズが小さくなり、遅延量が小さいほどピークのペイロードサイズが大きくなっていることが分かる。このようなピークのペイロードサイズが、図34における2曲線の交点に相当する。つまり、遅延量が大きいほど交点のペイロードサイズが小さくなり、遅延量が小さいほど交点のペイロードサイズが大きくなる。すなわち、経路の遅延量に応じてペイロードサイズを変更することが望ましい。このように経路の遅延量に応じてペイロードサイズを変更可能にすることにより、遅延量の動的な変動があった場合でも常に最速の高速データ転送を実現できる。 Here, as shown in FIG. 32, it can be seen that the larger the delay amount, the smaller the peak payload size, and the smaller the delay amount, the larger the peak payload size. The payload size of such a peak corresponds to the intersection of the two curves in FIG. That is, the larger the delay amount, the smaller the payload size at the intersection point, and the smaller the delay amount, the larger the payload size at the intersection point. That is, it is desirable to change the payload size according to the delay amount of the route. In this way, by making the payload size changeable according to the delay amount of the path, the fastest high-speed data transfer can always be realized even when the delay amount dynamically fluctuates.
また、図33に示すように、スイッチ段数が多いほどピークのペイロードサイズが小さくなり、スイッチ段数が小さいほどピークのペイロードサイズが大きくなっていることが分かる。すなわち、経路のスイッチ段数に応じてペイロードサイズを変更することが望ましい。このように経路のスイッチ段数に応じてペイロードサイズを変更可能にすることにより、スイッチ段数の動的な変動があった場合でも常に最速の高速データ転送を実現できる。 Further, as shown in FIG. 33, it can be seen that the peak payload size decreases as the number of switch stages increases, and the peak payload size increases as the number of switch stages decreases. That is, it is desirable to change the payload size according to the number of switch stages in the route. In this way, by making the payload size changeable according to the number of switch stages in the path, the fastest high-speed data transfer can always be realized even when there is a dynamic change in the number of switch stages.
経路の遅延量や経路のスイッチ段数に応じたペイロードサイズの変更は、コンフィグレーション空間のレジスタをソフトウェアで設定することで実施可能である(図10参照)。このように経路の遅延量や経路のスイッチ段数が変化するのは通常は接続を変えた場合である。すなわち、経路の遅延量や経路のスイッチ段数に応じたペイロードサイズの変更は、PCI Expressの再コンフィグレーションの際に実施するようにすれば良い。 The payload size can be changed according to the delay amount of the path and the number of switch stages of the path by setting the configuration space register with software (see FIG. 10). In this way, the delay amount of the path and the number of switch stages of the path change usually when the connection is changed. In other words, the payload size may be changed according to the path delay amount and the path switch stage number at the time of PCI Express reconfiguration.
なお、曲線1と曲線2の交点のペイロードサイズを中心として、1/4から4倍のペイロードサイズを用いて転送を行うようにしても良い。図34に示すように、1/4から4倍の外では2割以上の低下となり、使用するペイロードサイズとしてはあまり実用的な範囲ではないからである。この場合には、経路遅延の影響とヘッダのオーバーヘッドをバランスよく考慮しており、高速データ転送を実現できる。
The transfer may be performed using a payload size that is 1/4 to 4 times the center of the payload size at the intersection of the
ところで、リードリクエストパケットの相隣開始時刻から対応するコンプリッションパケットの先頭が到着する時刻までの時間差T1及びリードリクエストパケットの送信開始時刻から目的とする全データの最後のコンプリッションパケットの受信完了時刻までの時間差T2は、図35に示すようなCPU30が接続された制御部に相当するルートコンプレックス(時間差計測手段)31によって計測することができる。図35に示すように、CPU30が接続された制御部に相当するルートコンプレックス(時間差計測手段)31には、計測用パケット発生部である計測用パケット発生回路31aと遅延量検出部である遅延量検出回路31bと遅延量記憶部である遅延量記憶回路31cとが備えられている。遅延量検出回路31bでは、計測用パケット発生回路31aで発生した計測用パケットの出力時刻とエンドポイント32からの戻りパケットの受信時刻を元に時間差T1及び時間差T2を検出する。検出された時間差T1及び時間差T2は、遅延量記憶回路31cに記憶される。なお、計測用パケットとしては、ペイロードサイズを振った複数のパケットを用いてもかまわない。これにより、実測値を元に2曲線の交点を自動的に予測できるようになる。
By the way, the time difference T1 from the adjacent start time of the read request packet to the time when the head of the corresponding compression packet arrives and the reception of the last completion packet of all the target data from the read start time of the read request packet. The time difference T2 until the completion time can be measured by a route complex (time difference measuring means) 31 corresponding to the control unit to which the
1 情報処理システム
7 高速シリアルバス
31 時間差計測手段
31a 計測用パケット発生部
31b 遅延量検出部
31c 遅延量記憶部
DESCRIPTION OF
Claims (16)
リクエストパケットの送信開始時刻から当該リクエストパケットに対応するコンプリッションパケットの先頭が到着する時刻までの時間差T1と、リクエストパケットの送信開始時刻から目的とする全データの最後のコンプリッションパケットの受信完了時刻までの時間差T2とに基づいてコンプリッションパケットのペイロードサイズに対する比(T1/T2)を求めた曲線1を検出する手段と、
コンプリッションパケットのヘッダサイズAと、コンプリッションパケットのペイロードサイズBに基づいてコンプリッションパケットのペイロードサイズに対する比(A/(A+B))を求めた曲線2を検出する手段と、
前記曲線1と前記曲線2とに基づいて、転送レートの理論値に対するロスが少ないパケット転送のペイロードサイズを決定する手段と、
を備えることを特徴とする情報処理システム。 In an information processing system that performs communication in units of packets by a high-speed serial bus in which a communication channel independent of transmission and reception is established through a communication network configured by a tree structure of point-to-point connections or multiple point-to-point connections
The time difference T1 from the request packet transmission start time to the arrival time of the beginning of the compression packet corresponding to the request packet, and the reception of the last compression packet of all target data from the request packet transmission start time Means for detecting a curve 1 in which a ratio (T1 / T2) to a payload size of a completion packet is obtained based on a time difference T2 until completion time;
Means for detecting a curve 2 in which a ratio (A / (A + B)) to the payload size of the completion packet is obtained based on the header size A of the completion packet and the payload size B of the completion packet;
Means for determining a payload size of packet transfer based on the curve 1 and the curve 2 with less loss with respect to a theoretical transfer rate;
An information processing system comprising:
ことを特徴とする請求項1記載の情報処理システム。 The determined payload size is less than or equal to the intersection of the curve 1 and the curve 2;
The information processing system according to claim 1.
ことを特徴とする請求項1記載の情報処理システム。 The payload size to be determined is a payload size that is 1/4 to 4 times the payload size at the intersection of the curve 1 and the curve 2;
The information processing system according to claim 1.
ことを特徴とする請求項1ないし3のいずれか一記載の情報処理システム。 The payload size can be changed according to the delay amount of the route.
The information processing system according to any one of claims 1 to 3, wherein
ことを特徴とする請求項1ないし3のいずれか一記載の情報処理システム。 The payload size can be changed according to the number of switch stages in the route.
The information processing system according to any one of claims 1 to 3, wherein
ことを特徴とする請求項4または5記載の情報処理システム。 The payload size change is performed during reconfiguration of the high-speed serial bus.
6. The information processing system according to claim 4 or 5, wherein
前記時間差計測手段により計測した時間差T1及び時間差T2に基づいて曲線1を検出する、
ことを特徴とする請求項1ないし6のいずれか一記載の情報処理システム。 Time difference T1 from the start time of transmission of the request packet to the time of arrival of the head of the compression packet corresponding to the request packet, and reception of the last compression packet of all the target data from the start time of transmission of the request packet It further comprises time difference measuring means for measuring the time difference T2 until the time,
The curve 1 is detected based on the time difference T1 and the time difference T2 measured by the time difference measuring means.
The information processing system according to claim 1, wherein the information processing system is an information processing system.
ことを特徴とする請求項7記載の情報処理システム。 The time difference measuring means calculates a delay amount based on a measurement packet generation unit that generates a measurement packet, an output time of the measurement packet generated by the measurement packet generation unit, and a reception time of a return packet from the end point. A delay amount detection unit to detect, and a delay amount storage unit to store the delay amount detected by the delay amount detection unit,
The information processing system according to claim 7.
ことを特徴とする請求項8記載の情報処理システム。 As the measurement packet, a plurality of packets having a payload size are used.
The information processing system according to claim 8.
ことを特徴とする請求項1ないし9のいずれか一記載の情報処理システム。 The high-speed serial bus is a PCI Express standard high-speed serial bus.
An information processing system according to any one of claims 1 to 9, wherein
リクエストパケットの送信開始時刻から当該リクエストパケットに対応するコンプリッションパケットの先頭が到着する時刻までの時間差T1と、リクエストパケットの送信開始時刻から目的とする全データの最後のコンプリッションパケットの受信完了時刻までの時間差T2とに基づいてコンプリッションパケットのペイロードサイズに対する比(T1/T2)を求めた曲線1を検出する機能と、
コンプリッションパケットのヘッダサイズAと、コンプリッションパケットのペイロードサイズBに基づいてコンプリッションパケットのペイロードサイズに対する比(A/(A+B))を求めた曲線2を検出する機能と、
前記曲線1と前記曲線2とに基づいて、転送レートの理論値に対するロスが少ないパケット転送のペイロードサイズを決定する機能と、
を前記コンピュータに実行させることを特徴とするプログラム。 A program for causing a computer to execute communication processing in units of packets by a high-speed serial bus in which a communication channel independent of transmission and reception is established through a communication network in which point-to-point connection or a plurality of point-to-point connections are configured in a tree structure. ,
The time difference T1 from the request packet transmission start time to the arrival time of the beginning of the compression packet corresponding to the request packet, and the reception of the last compression packet of all target data from the request packet transmission start time A function of detecting a curve 1 in which a ratio (T1 / T2) to a payload size of a completion packet is obtained based on a time difference T2 until a completion time;
A function of detecting a curve 2 in which a ratio (A / (A + B)) to the payload size of the completion packet is obtained based on the header size A of the completion packet and the payload size B of the completion packet;
A function for determining a payload size for packet transfer based on the curve 1 and the curve 2 and having a small loss with respect to a theoretical transfer rate;
That causes the computer to execute the program.
ことを特徴とする請求項11記載のプログラム。 The determined payload size is less than or equal to the intersection of the curve 1 and the curve 2;
12. The program according to claim 11, wherein:
ことを特徴とする請求項11記載のプログラム。 The payload size to be determined is a payload size that is 1/4 to 4 times the payload size at the intersection of the curve 1 and the curve 2;
12. The program according to claim 11, wherein:
リクエストパケットの送信開始時刻から当該リクエストパケットに対応するコンプリッションパケットの先頭が到着する時刻までの時間差T1と、リクエストパケットの送信開始時刻から目的とする全データの最後のコンプリッションパケットの受信完了時刻までの時間差T2とに基づいてコンプリッションパケットのペイロードサイズに対する比(T1/T2)を求めた曲線1を検出し、
コンプリッションパケットのヘッダサイズAと、コンプリッションパケットのペイロードサイズBに基づいてコンプリッションパケットのペイロードサイズに対する比(A/(A+B))を求めた曲線2を検出し、
前記曲線1と前記曲線2とに基づいて、転送レートの理論値に対するロスが少ないパケット転送のペイロードサイズを決定する、
ことを特徴とするパケット通信方法。 A packet communication method in an information processing system that performs communication in units of packets by a high-speed serial bus in which a communication channel independent of transmission and reception is established through a communication network in which point-to-point connections or a plurality of point-to-point connections are configured in a tree structure And
The time difference T1 from the request packet transmission start time to the arrival time of the beginning of the compression packet corresponding to the request packet, and the reception of the last compression packet of all target data from the request packet transmission start time Detecting a curve 1 in which the ratio (T1 / T2) to the payload size of the completion packet is calculated based on the time difference T2 until the completion time,
A curve 2 is obtained that is obtained by calculating a ratio (A / (A + B)) to the payload size of the compression packet based on the header size A of the compression packet and the payload size B of the compression packet.
Based on the curve 1 and the curve 2, the payload size of the packet transfer with a small loss with respect to the theoretical value of the transfer rate is determined.
And a packet communication method.
ことを特徴とする請求項14記載のパケット通信方法。 The determined payload size is less than or equal to the intersection of the curve 1 and the curve 2;
The packet communication method according to claim 14.
ことを特徴とする請求項14記載のパケット通信方法。 The payload size to be determined is a payload size that is 1/4 to 4 times the payload size at the intersection of the curve 1 and the curve 2;
The packet communication method according to claim 14.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005249171A JP4690828B2 (en) | 2005-08-30 | 2005-08-30 | Information processing system, program, and packet communication method |
US11/511,477 US7536489B2 (en) | 2005-08-30 | 2006-08-29 | Information processing system for determining payload size based on packet-to-payload size ratio |
EP08152051A EP1930813A3 (en) | 2005-08-30 | 2006-08-30 | Information processing system, data transfer method, and computer product |
EP06119776A EP1764704A3 (en) | 2005-08-30 | 2006-08-30 | Information processing system, data transfer method, and computer product |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005249171A JP4690828B2 (en) | 2005-08-30 | 2005-08-30 | Information processing system, program, and packet communication method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007067634A true JP2007067634A (en) | 2007-03-15 |
JP4690828B2 JP4690828B2 (en) | 2011-06-01 |
Family
ID=37929358
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005249171A Expired - Fee Related JP4690828B2 (en) | 2005-08-30 | 2005-08-30 | Information processing system, program, and packet communication method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4690828B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010532607A (en) * | 2007-06-29 | 2010-10-07 | インターナショナル・ビジネス・マシーンズ・コーポレーション | PCI Express packet digest modification device, system and method |
CN113132256A (en) * | 2019-12-30 | 2021-07-16 | 深圳Tcl新技术有限公司 | Data transmission method, terminal and storage medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0779250A (en) * | 1993-09-07 | 1995-03-20 | Fujitsu Ltd | Delay control system for packet communication |
JPH0983775A (en) * | 1995-09-19 | 1997-03-28 | Fuji Xerox Co Ltd | Facsimile equipment |
JP2001168914A (en) * | 1999-12-10 | 2001-06-22 | Oki Electric Ind Co Ltd | Communication connector and communication connection method |
JP2005166029A (en) * | 2003-11-11 | 2005-06-23 | Ricoh Co Ltd | Data transfer system, image formation system, and data transfer method |
JP2008527877A (en) * | 2005-01-18 | 2008-07-24 | ノキア コーポレイション | Interworking between cell-based and packet-based networks |
-
2005
- 2005-08-30 JP JP2005249171A patent/JP4690828B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0779250A (en) * | 1993-09-07 | 1995-03-20 | Fujitsu Ltd | Delay control system for packet communication |
JPH0983775A (en) * | 1995-09-19 | 1997-03-28 | Fuji Xerox Co Ltd | Facsimile equipment |
JP2001168914A (en) * | 1999-12-10 | 2001-06-22 | Oki Electric Ind Co Ltd | Communication connector and communication connection method |
JP2005166029A (en) * | 2003-11-11 | 2005-06-23 | Ricoh Co Ltd | Data transfer system, image formation system, and data transfer method |
JP2008527877A (en) * | 2005-01-18 | 2008-07-24 | ノキア コーポレイション | Interworking between cell-based and packet-based networks |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010532607A (en) * | 2007-06-29 | 2010-10-07 | インターナショナル・ビジネス・マシーンズ・コーポレーション | PCI Express packet digest modification device, system and method |
US8139575B2 (en) | 2007-06-29 | 2012-03-20 | International Business Machines Corporation | Device, system and method of modification of PCI express packet digest |
CN113132256A (en) * | 2019-12-30 | 2021-07-16 | 深圳Tcl新技术有限公司 | Data transmission method, terminal and storage medium |
Also Published As
Publication number | Publication date |
---|---|
JP4690828B2 (en) | 2011-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
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 | |
JP2007087082A (en) | Information processor and option device sharing method | |
JP2008172727A (en) | Control apparatus and image processing system | |
JP4308680B2 (en) | Image forming apparatus | |
JP4287325B2 (en) | Imaging system | |
JP4777723B2 (en) | Information processing system, program, and data transfer method | |
JP4564740B2 (en) | Imaging equipment system | |
JP4928715B2 (en) | Serial data transfer device, image output device, image input device, and image forming device | |
JP4425766B2 (en) | Image forming system | |
JP2006092286A (en) | Data transfer device and image forming system | |
JP5218377B2 (en) | Image forming system | |
JP4690828B2 (en) | Information processing system, program, and packet communication method | |
JP4828899B2 (en) | Information processing apparatus and storage device sharing method | |
JP4476088B2 (en) | Data transfer apparatus and image forming system | |
JP2007226494A (en) | Data transfer system | |
JP4824422B2 (en) | Control device, image processing system, and data transfer path switching method | |
JP2005346629A (en) | Image processing apparatus | |
JP2005332316A (en) | Data distribution device, data transfer device and image processing device | |
JP2007282187A (en) | Information processor, information processing system, and data communication method | |
JP4607706B2 (en) | Image processing system, program, and job execution method | |
JP2007241882A (en) | Data communication device, and image forming system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080527 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110128 |
|
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: 20110215 |
|
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: 20110218 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4690828 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140225 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |