JP2012141890A - Data transfer control device and method, and data processor - Google Patents
Data transfer control device and method, and data processor Download PDFInfo
- Publication number
- JP2012141890A JP2012141890A JP2011000685A JP2011000685A JP2012141890A JP 2012141890 A JP2012141890 A JP 2012141890A JP 2011000685 A JP2011000685 A JP 2011000685A JP 2011000685 A JP2011000685 A JP 2011000685A JP 2012141890 A JP2012141890 A JP 2012141890A
- Authority
- JP
- Japan
- Prior art keywords
- data
- transfer control
- unit
- input
- memory unit
- 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
Landscapes
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Abstract
Description
本発明は、複数ポートより入力されたデータの転送を行うデータ転送制御装置の技術分野に関する。 The present invention relates to a technical field of a data transfer control device that transfers data input from a plurality of ports.
この種のデータ転送制御装置として、ダイレクトメモリアクセス(DMA)により一括してデータの転送を制御する装置が知られている。このような装置は、例えば、スイッチを介して接続される複数のポートより、イーサネット(登録商標)上の送信データやIPパケット等のデータの入力を受け、スイッチが有するバッファメモリ内に夫々格納する。バッファメモリには、データ転送の際の優先度が設定されており、スイッチは、入力データの優先度等に応じて、各データの格納先のバッファメモリを適宜選択する。 As this type of data transfer control device, a device that controls data transfer in a batch by direct memory access (DMA) is known. Such a device, for example, receives data such as transmission data or IP packets on the Ethernet (registered trademark) from a plurality of ports connected through the switch, and stores them in the buffer memory of the switch. . Priorities for data transfer are set in the buffer memory, and the switch appropriately selects a buffer memory for storing each data according to the priority of input data and the like.
スイッチは、データの転送要求の際に、データの出力を行うバッファメモリを優先度に応じて決定し、決定したバッファメモリに格納されるデータの転送を実施する。このため、データは、優先度に応じて、転送のスケジュールが決定される。下記の先行技術文献には、このような優先度に応じたデータの転送を行うデータ転送の制御方法についての説明がある。 In response to a data transfer request, the switch determines a buffer memory that outputs data according to the priority, and performs transfer of data stored in the determined buffer memory. For this reason, the data transfer schedule is determined according to the priority. The following prior art documents describe a data transfer control method for transferring data according to such priorities.
転送されるデータに転送が完了されるべき時間である締切時間が設定される場合、上述したデータ転送制御装置の機能では、必ずしも適切なデータの転送制御が行えない可能性がある。例えば、優先度が低いデータであって、比較的締切時間が近いデータの場合、上述した転送制御では、データの転送スケジュールは他の優先度が高いデータの後に設定されるため、締切時間内に転送が行われない可能性がある。また、データの後処理による再送等が生じる場合にも、データの転送スケジュールの問題から、締切時間内に転送が行われない可能性がある。 When a deadline time, which is a time at which transfer is to be completed, is set for the data to be transferred, there is a possibility that appropriate data transfer control may not be performed with the function of the data transfer control device described above. For example, in the case of data with low priority and relatively close deadline, the transfer control described above sets the data transfer schedule after data with other high priority. Transfer may not be performed. In addition, even when retransmission or the like occurs due to post-processing of data, there is a possibility that transfer will not be performed within the deadline due to a problem of the data transfer schedule.
本発明は、例えば上述した技術的な問題点に鑑み、データの優先度と、転送が完了されるべき締切時間とを考慮した適切な転送を実現可能とするデータ転送制御装置及び方法並びにデータ処理装置を提供することを課題とする。 For example, in view of the technical problems described above, the present invention provides a data transfer control device and method and data processing capable of realizing appropriate transfer in consideration of the priority of data and the deadline for completion of transfer. It is an object to provide an apparatus.
上記課題を解決するために、開示のデータ転送制御装置は、データを入力する複数の入力ポートと、データを出力する出力ポートと、データに設定される締切時間に基づいて、データを複数の入力ポートから出力ポートに転送する転送制御部とを備える。 In order to solve the above-described problem, a disclosed data transfer control device includes a plurality of input ports for inputting data, an output port for outputting data, and a plurality of input data based on a deadline time set for the data. A transfer control unit for transferring from the port to the output port.
また、開示のデータ転送制御方法は、データを複数の入力ポートより入力する入力工程と、データを出力ポートより出力する出力工程と、データに設定される締切時間に基づいて、データを複数の入力ポートから出力ポートに転送する転送制御工程とを備える。 In addition, the disclosed data transfer control method includes an input process for inputting data from a plurality of input ports, an output process for outputting data from an output port, and a plurality of input data based on a deadline time set for the data. A transfer control step of transferring from the port to the output port.
また、開示のデータ処理装置は、上述のデータ転送制御装置と、該データ転送制御装置を介して転送されるデータを受信する第1処理装置とを含むデータ処理装置である。第1処理装置は、受信したデータを所定のタイミングで処理する。 A disclosed data processing device is a data processing device including the above-described data transfer control device and a first processing device that receives data transferred via the data transfer control device. The first processing device processes the received data at a predetermined timing.
上述の構成によれば、複数のポートから入力される複数データに対して、個々のデータについて、送信が完了しているべき締切時間に基づいた適切なスケジュールでデータの転送が可能となる。 According to the above-described configuration, it is possible to transfer data with respect to a plurality of data input from a plurality of ports in accordance with an appropriate schedule based on the deadline time for transmission of each data.
以下に、発明を実施するための実施形態について説明する。 Embodiments for carrying out the invention will be described below.
(1)はじめに
データ転送制御装置は、複数のデータ入出力用のポートを有し、各ポートに入力されたデータを他のポートに出力するよう、内部でのデータの転送制御を実施する。図1は、データ転送制御装置の動作を概念的に示す図である。図1に示すデータ転送制御装置は、ポート#0から#nまでのn+1個のデータ入出力用のポートを有し、ポート間で入力されたデータの転送を行う。
(1) Introduction The data transfer control device has a plurality of data input / output ports and performs internal data transfer control so that data input to each port is output to other ports. FIG. 1 is a diagram conceptually illustrating the operation of the data transfer control device. The data transfer control device shown in FIG. 1 has n + 1 data input / output ports from
このようなデータ転送制御装置における、データの転送時には、例えばある1つのポートより出力するためのデータが複数のポートより同時に入力される場合が考えられる。このような場合、データ転送制御装置は、同時に入力された複数のデータ内容に鑑み、例えば各データに設定される優先度等の転送制御に係る情報に基づいて、転送スケジュールを決定し、出力先のポートにデータの転送を行う。このような処理により、単一の出力ポートに対する同タイミングでの複数のデータの転送制御が可能となる。 In such a data transfer control device, at the time of data transfer, for example, data for outputting from a certain port may be simultaneously input from a plurality of ports. In such a case, the data transfer control device determines the transfer schedule based on information related to transfer control such as the priority set for each data in consideration of the contents of a plurality of data input at the same time, and outputs the output destination. Data transfer to the other port. By such processing, transfer control of a plurality of data at the same timing for a single output port becomes possible.
図2は、このような複数のデータの転送スケジュールを示す図である。図2には、ポート#0、#1及び#2から入力されたデータA乃至Dをある出力先のポートに転送する際の転送スケジュールが示される。図2の例では、データ転送制御装置は、データA乃至Dについて、受信した後に、各データに設定される優先度(Priority)に応じたバッファメモリに順次格納を行う。また、転送制御においては、優先度が高いデータから順次、バッファメモリへの格納順に出力ポートへの転送を行う。即ち、図2の例では、データの格納順は、データD、データA、データB、データCの順となる。また、各データの優先度は、データAとデータBが「高」、データCが「中」、データDが「低」のように設定される。このため、データの転送スケジュールは、データD、データA、データB、データCの順となる。 FIG. 2 is a diagram showing a transfer schedule of such a plurality of data. FIG. 2 shows a transfer schedule for transferring data A to D input from ports # 0, # 1, and # 2 to a certain output destination port. In the example of FIG. 2, the data transfer control device sequentially stores the data A to D in the buffer memory according to the priority set for each data after reception. In the transfer control, data is transferred to the output port in order of storage in the buffer memory in order from the data with the highest priority. That is, in the example of FIG. 2, the data storage order is the order of data D, data A, data B, and data C. The priority of each data is set such that data A and data B are “high”, data C is “medium”, and data D is “low”. Therefore, the data transfer schedule is in the order of data D, data A, data B, and data C.
ところで、データ転送制御装置が転送を行うデータについては、リアルタイム性の高いデータを含む場合がある。このようなデータについては、例えば所定のタイミングまでに転送が実施されることを求められる場合が考えられる。図2の例では、時間を所定の期間で0、1、2、3、・・・のように区分し、時間1のタイミングで入力されたデータCについて、時間2までに転送処理を完了しなければいけない場合が考えられる。しかしながら、上述の転送スケジュールの決定法則をそのまま用いた場合、このような転送締切時間について考慮していないため、転送条件を満たすことが出来ない。
By the way, the data transferred by the data transfer control device may include data with high real-time characteristics. For such data, for example, there may be a case where transfer is required to be performed by a predetermined timing. In the example of FIG. 2, the time is divided into 0, 1, 2, 3,... In a predetermined period, and the transfer process is completed by
図3には、図2に示すデータA乃至Dに対して、データ転送の締切時間(Deadline)を設定した場合の転送スケジュールが示される。図3の例では、データAの締切時間は時間3、データBの締切時間は時間2、データCの締切時間は時間2、データDの締切時間は時間3である。上述したデータの優先度に応じた転送スケジュールでは、例えば、締切時間が比較的遅く、且つ優先度が低いデータDがバッファメモリへの格納順が早いために先に転送され、より優先度が高く且つ締切時間がより早いデータCが締切時間を越えて転送される。
FIG. 3 shows a transfer schedule when a data transfer deadline is set for the data A to D shown in FIG. In the example of FIG. 3, the deadline time for data A is
そこで、以下では、データの優先度と締切時間とに基づく転送制御を実施可能なデータ転送制御装置についてその構成と機能とについて説明する。 Therefore, hereinafter, the configuration and function of a data transfer control device capable of performing transfer control based on data priority and deadline time will be described.
(2)概要
図4を参照して、開示のデータ転送制御装置の例である、データ転送制御装置1の構成について説明する。図4は、データ転送制御装置1の構成を示す概念図である。
(2) Overview With reference to FIG. 4, a configuration of a data
データ転送制御装置1は、データ入力用のポートを複数備え、該ポートに入力されるデータを出力用のポートに対して転送する。データの転送制御処理は、データの入力(又は受信)時に行われる処理と、データの出力(又は、送信)時の処理とに大別される。データ転送制御装置1は、データの入力時には、データの優先度及び締切時間に応じてデータを振り分ける処理を行い、データ出力時には、優先度と現在の時間及び締切時間の関係とに基づいてデータの転送処理を行う。
The data
データ転送制御装置1は、ポート20a、ポート20b、ポート20c、ポート30及びスイッチ機能部10を備える。以降、便宜上、ポート20a、ポート20b、ポート20cをデータ入力用のポート、ポート30を該データの出力用のポートとして設定し、ポート20a、ポート20b又はポート20cより入力されるデータをポート30に転送する場合について説明する。例えば、ポート20a、ポート20b、ポート20c及びポート30は、実際には夫々データの入力及び出力が可能なポートであってもよく、下記に説明する方法でデータの転送を行う構成であってもよいが、上述した設定での転送において不要な構成については説明を省略することがある。
The data
ポート20a、ポート20b、ポート20cの夫々に入力されるデータは、スイッチ機能部10を経由し、ポート30へ出力される。
Data input to each of the
スイッチ機能部10は、振り分け部100、格納部200、送信部300を備える。
The
振り分け部100は、データに含まれる優先度を示す情報と締切時間を示す情報とに基づいて、データを振り分けるための複数のセレクタを有する回路である。振り分け部100は、振り分けた各データを格納部200に格納する。振り分け部100は、データ入力用のポートに個別に対応して、データの振り分けを行う部位を複数有している。図4の例では、振り分け部100は、ポート20aから入力されるデータの振り分けを行う振り分け部100a、ポート20bから入力されるデータの振り分けを行う振り分け部100b、ポート20cから入力されるデータの振り分けを行う振り分け部100cを備える。
The
格納部200は、振り分け部100によって振り分けられたデータを格納する、バッファメモリなどのデータ格納装置である。格納部200は、データ入力用のポート、及び該ポートより入力されるデータを振り分ける振り分け部100に個別に対応して、データの格納を行うバッファメモリを備える部位を複数有する。図4の例では、格納部200は、ポート20aから入力されるデータを格納する格納部200a、ポート20bから入力されるデータを格納する格納部200b、ポート20cから入力されるデータを格納する格納部200cを備える。また、各格納部200a乃至200cは、振り分け部100a乃至100cにおいてデータを振り分ける際の基準となる優先度及び締切時間に応じた複数のバッファメモリを有する。具体的には、格納部200aは、振り分け部100aにおいてデータの振り分けを行う際の基準となる優先度の分類と締切時間の分類との夫々の組み合わせに応じた個数のバッファメモリを少なくとも有する。
The
送信部300は、格納部200に格納されるデータを出力用のポート30に送信するセレクタを有する回路である。送信部300は、格納部200のバッファメモリ内に格納されるデータについて、各バッファメモリが対応するデータの優先度及び締切時間に応じて送信スケジュールを決定し、送信先のポート30へデータを送信する。
The
上述したデータ転送制御装置1による転送制御の対象となるデータの形式について図5を参照して説明する。図5に示されるように、データは、ヘッダ部とデータ部とを備えるパケット等である。ヘッダ部は、公知のTCP/IPヘッダ等であってよい。データ部は、データの優先度を規定する情報であるPriority1(以下、P1と記載)と、データの締切時間を規定するPriority2(以下、P2と記載)との2通りのデータフィールドを有する。
The format of data that is subject to transfer control by the data
P1は、データの優先度に応じて、優先度が高い=0、優先度が並み=1、優先度が低い=2との値を格納する。P2は、データ転送の締切時間を示すために、例えばクロック信号等に基づいて所定の締切時間を示す値を格納する。例えば、締切時間は、クロック信号から所定の周期を決定し、該周期をN通りに分割した時間を基準として設定する。ある周期の時間をN通りに分割した後の時間をt=0、1、2、3、・・・N−1とし、該時間に応じて締切時間を設定する。データ転送制御装置1の送信部300は、クロック信号により示される現在の時間(つまり、t=0、1、2、3、・・・N−1)と、データ毎の締切時間との関係により、データの送信スケジュールを決定する際の優先度を決定する。
P1 stores values of high priority = 0, normal priority = 1, and low priority = 2 in accordance with the priority of data. P2 stores a value indicating a predetermined dead time based on, for example, a clock signal or the like in order to indicate a data transfer deadline. For example, the deadline time is set on the basis of a time obtained by determining a predetermined cycle from the clock signal and dividing the cycle into N ways. The time after dividing a period of time into N ways is set to t = 0, 1, 2, 3,... N−1, and the deadline time is set according to the time. The
以降の説明では、N=4とする。この場合、P1が0、1、2の3通りの値(言い換えれば、分類)を有し、P2が0、1、2、3の4通りの値(言い換えれば、分類)を有するための、上述した格納部200は、夫々の入力ポートに応じて、3×4=12個のバッファメモリを有する。詳細な構成及びその機能については後述する。
In the following description, N = 4. In this case, P1 has three values of 0, 1, 2 (in other words, classification), and P2 has four values of 0, 1, 2, 3 (in other words, classification). The
尚、データが有するP1とP2とのデータフィールドは、上述した態様の他、ヘッダ部に設けられていてもよく、データ内の他の部位に新たに設けられていてもよい。例えばデータとしてIPパケットを考える場合、サービスタイプフィールド内の8ビットを、P1とP2として使用してもよい。また、データ転送制御装置1内のスイッチ機能部10内において、データの種別等に応じて優先度を新たに設定し、該優先度に基づいて転送制御を行ってもよい。
In addition, the data fields of P1 and P2 included in the data may be provided in the header portion in addition to the above-described aspect, or may be newly provided in other parts in the data. For example, when an IP packet is considered as data, 8 bits in the service type field may be used as P1 and P2. Further, in the
上述した各部について、以下に図を参照してより詳細な構成及び機能の例について説明する。 With respect to each of the above-described units, examples of more detailed configurations and functions will be described below with reference to the drawings.
図6は、データ転送制御装置1のスイッチ機能部10における振り分け部100が有する振り分け部100aの回路構成を示す図である。尚、振り分け部100b及び振り分け部100cも、図6と同様の構成を備える。
FIG. 6 is a diagram illustrating a circuit configuration of the
振り分け部100aは、抽出部110、P1セレクタ120及びP2セレクタ130、140、150を有する。
The
ポート20aより振り分け部100aに入力されたデータは、抽出部110と、P1セレクタ120とに入力される。
Data input to the
抽出部110は、データから、P1及びP2の値を抽出し、抽出した値について、P1をP1セレクタ120に、P2をP2セレクタ130乃至150に入力する。
The
P1セレクタ120は、データの優先度を示すP1の値に基づいて、データの振り分けを行う第1段目のセレクタである。P1セレクタ120は、ポート20aから入力されるデータを入力するための入力ポートと、P2セレクタ130乃至150の夫々に接続されるデータ出力用の3つのポート(0、1、2)とを備える。
The
図7(a)は、P1セレクタ120の動作に係る真理値表である。P1セレクタ120は、抽出部110より入力されるP1の値に基づいて、データを振り分け、出力用のポート0、1、2のいずれか一つより出力することで、接続されるP2セレクタ130乃至150のいずれかへ入力する。図7(a)に示されるように、P1の値が0のデータは出力用のポート0から、P1の値が1のデータは出力用のポート1から、P1の値が2のデータは出力用のポート2から、夫々出力(DT:Data Transfer)される。
FIG. 7A is a truth table relating to the operation of the
図6に戻り、説明を続ける。P2セレクタ130乃至150は、データの締切時刻を示すP2の値に基づいて、データの振り分けを行う第2段目のセレクタである。P2セレクタ130乃至150の夫々は、P1セレクタ120から入力されるデータを入力するための入力ポートと、格納部200a内の対応する個別のバッファメモリ部に夫々接続されるデータ出力用の4つのポート(0、1、2、3)とを備える。
Returning to FIG. 6, the description will be continued. The
P2セレクタ130乃至150は、P1セレクタ120によって振り分けられるデータの分類の数、つまりP1の取り得る値に夫々対応している。例えば、P2セレクタ130は、P1セレクタ120の出力用のポート0に接続され、P1の値が0のデータの入力を受けて、P2の値に応じて振り分けを行う。P2セレクタ140は、P1セレクタ120の出力用のポート1に接続され、P1の値が1のデータの入力を受けて、P2の値に応じて振り分けを行う。P2セレクタ150は、P1セレクタ120の出力用のポート2に接続され、P1の値が2のデータの入力を受けて、P2の値に応じて振り分けを行う。
The
図7(b)は、P2セレクタ130乃至150の動作に係る真理値表である。P2セレクタ130乃至150は、抽出部110より入力されるP2の値に基づいて、データを振り分け、出力用のポート0、1、2、3のいずれか一つより出力することで、接続される格納部200a内のバッファメモリ部のいずれかへ入力する。図7(b)に示されるように、P2の値が0のデータは出力用のポート0から、P2の値が1のデータは出力用のポート1から、P2の値が2のデータは出力用のポート2から、P2の値が3のデータは出力用のポート3から、夫々出力(DT:Data Transfer)される。
FIG. 7B is a truth table relating to the operation of the
図8は、データ転送制御装置1のスイッチ機能部10における格納部200の構成を示す図である。格納部200aは、P1セレクタ120及びP2セレクタ130乃至150によって振り分けられるデータの分類に対応する複数のバッファメモリ部を備える。バッファメモリ部は、P2セレクタ130乃至150の夫々の出力用のポートに接続され、入力されたデータの格納を行う。
FIG. 8 is a diagram illustrating a configuration of the
図8の例では、格納部200aは、12個のバッファメモリ部を有する。バッファメモリ部a00は、P2セレクタ130のポート0に接続され、P1の値が0、P2の値が0のデータの入力を受け、格納する。バッファメモリ部a01は、P2セレクタ130のポート1に接続され、P1の値が0、P2の値が1のデータの入力を受け、格納する。バッファメモリ部a02は、P2セレクタ130のポート2に接続され、P1の値が0、P2の値が2のデータの入力を受け、格納する。バッファメモリ部a03は、P2セレクタ130のポート3に接続され、P1の値が0、P2の値が3のデータの入力を受け、格納する。バッファメモリ部a10は、P2セレクタ140のポート0に接続され、P1の値が1、P2の値が0のデータの入力を受け、格納する。バッファメモリ部a11は、P2セレクタ140のポート1に接続され、P1の値が1、P2の値が1のデータの入力を受け、格納する。バッファメモリ部a12は、P2セレクタ140のポート2に接続され、P1の値が1、P2の値が2のデータの入力を受け、格納する。バッファメモリ部a13は、P2セレクタ140のポート3に接続され、P1の値が1、P2の値が3のデータの入力を受け、格納する。バッファメモリ部a20は、P2セレクタ150のポート0に接続され、P1の値が2、P2の値が0のデータの入力を受け、格納する。バッファメモリ部a21は、P2セレクタ150のポート1に接続され、P1の値が2、P2の値が1のデータの入力を受け、格納する。バッファメモリ部a22は、P2セレクタ150のポート2に接続され、P1の値が2、P2の値が2のデータの入力を受け、格納する。バッファメモリ部a23は、P2セレクタ150のポート3に接続され、P1の値が2、P2の値が3のデータの入力を受け、格納する。
In the example of FIG. 8, the
尚、各バッファメモリ部は、共通する構成と機能とを有する。例として、バッファメモリ部a00の構成と機能とについて、図を参照して説明する。 Each buffer memory unit has a common configuration and function. As an example, the configuration and function of the buffer memory unit a00 will be described with reference to the drawings.
図9は、バッファメモリ部a00のハードウェア構成を示す図である。図9に示されるように、バッファメモリ部a00は、WADD生成部210、受信カウンタ220、メモリ部230、管理メモリ部240、RADD生成部250、送信カウンタ260、比較部270とを備える。
FIG. 9 is a diagram illustrating a hardware configuration of the buffer memory unit a00. As illustrated in FIG. 9, the buffer memory unit a00 includes a WADD generation unit 210, a
バッファメモリ部a00に入力されたデータは、WADD生成部210、受信カウンタ220及びメモリ部230に入力される。
The data input to the buffer memory unit a00 is input to the WADD generation unit 210, the
WADD生成部210は、データについて、メモリ部230への書き込み時の先頭アドレスであるWriteアドレス(Write Address:WADD)とヘッダ部のlengthとを生成する。WADD生成部210は、データの入力時には、該データのWriteアドレスをメモリ部230及び管理メモリ部240に通知する。また、併せてデータより生成したlengthを書き込みデータとして管理メモリ部240に通知する。
The WADD generation unit 210 generates a write address (Write Address: WADD), which is a head address at the time of writing to the
受信カウンタ220は、有効データの入力を検出してカウントアップするカウンタである。受信カウンタ220は、データの入力時に、カウンタ値を管理メモリ部240及び比較部270に通知する。
The
メモリ部230は、データを格納するメモリである。メモリ部230は、データの入力時に、WADD生成部210から通知されるWriteアドレスを用いて、データを格納する。他方で、メモリ部230は、データの出力時には、後述するRADD生成部250より通知されるReadアドレスを用いてデータを読み取り、送信部300内の送信セレクタ(後述)に出力する。
The
管理メモリ部240は、バッファメモリ部00aにおけるメモリ部230へのデータ書き込み時のWriteアドレス及びlengthを管理するメモリである。管理メモリ部240は、データの入力時には、通知される受信カウンタ220aのカウンタ値をWriteアドレスとして、WADD生成部210より通知されるデータ書き込み時のWriteアドレス及びlengthを格納する。他方で、データの出力時には、送信カウンタ260より通知されるカウンタ値をReadアドレスとして、データ書き込み時のWriteアドレス及びlengthを読み取り、RADD生成部250に出力する。
The
RADD生成部250は、データ出力の際のメモリ部230のReadアドレス(Read Address:RADD)を生成する。RADD生成部250は、データの出力時に、管理メモリ部240より、データ書き込み時のWriteアドレス及びlengthの入力を受け、「書き込み時のWriteアドレスから(書き込み時のWriteアドレス+length−1)までカウンタを動作させ、該カウンタ値をメモリ部230へ通知する。また、送信部300の送信セレクタ(後述)へ出力用のデータの有効範囲を示すData Enable信号を送信する。
The
送信カウンタ260は、送信部300の判定収集部(後述)からのデータのリード要求に応じてカウントアップするカウンタであり、データの出力時に、カウンタ値を管理メモリ部240及び比較部270に通知する。
The
比較部270は、メモリ部230に格納されるデータの有無を判定する。比較部270は、データの出力時に、受信カウンタ値と送信カウンタ値とを比較することで、メモリ部230内のデータの有無を判定し、判定結果を送信部300の判定収集部(後述)に送信する。
The
尚、格納部200b及び格納部200cも、図8と同様の構成を備える。つまり、格納部200bは、振り分け部100bによって振り分けられるデータのP1及びP2の値に対応して、バッファメモリ部b00、b01、b02、b03、b10、b11、b12、b13、b20、b21、b22、b23を備える。同様に、格納部200cは、振り分け部100cによって振り分けられるデータのP1及びP2の値に対応して、バッファメモリ部c00、c01、c02、c03、c10、c11、c12、c13、c20、c21、c22、c23を備える。ここに、バッファメモリ部に付す番号は、左から、ポート20a乃至20cに対応するアルファベット、P1の値、P2の値を示すものである。以降はこの表記に従って、ポート、P1の値及びP2の値に対応したバッファメモリ部を記載することがある。尚、これらのバッファメモリ部について、区別せずに説明する場合には、単にバッファメモリ部と記載する。
The storage unit 200b and the
図10は、データ転送制御装置1のスイッチ機能部10における送信部300の構成、及び格納部200と送信部300との接続の態様を示す図である。送信部300は、判定収集部310と、送信セレクタ320とを備える。
FIG. 10 is a diagram illustrating a configuration of the
格納部200a乃至200c内のバッファメモリ部の夫々(a00乃至a23、b00乃至b23及びc00乃至c23)は、接続用のバス400、410、420及び430を介して判定収集部310及び送信セレクタ320に接続される。各バッファメモリ部は、夫々対応するP2の値に応じて、対応するバスに接続される。具体的には、格納部200aのP2の値が0のデータを格納するバッファメモリ部a00、a10、a20、a30の夫々は、バス400に接続される。格納部200aのP2の値が1のデータを格納するバッファメモリ部a01、a11、a21、a31の夫々は、バス410に接続される。格納部200aのP2の値が2のデータを格納するバッファメモリ部a02、a12、a22、a32の夫々は、バス420に接続される。格納部200aのP2の値が3のデータを格納するバッファメモリ部a03、a13、a23、a33の夫々は、バス430に接続される。格納部200b及び200cのバッファメモリ部についても同様である。
The buffer memory units (a00 to a23, b00 to b23, and c00 to c23) in the
判定収集部310は、現在の時間と格納部200内の各バッファメモリ部に格納されるデータの有無とに応じて、個々のバッファメモリ部に対してデータのリード要求を行うことで、データの出力を制御する。具体的には、判定収集部310は、バス400乃至430を介して接続される36個のバッファメモリ部から現在の時間を用いて1つ送信する格納部200を選択する機能部である。
The
図11は、判定収集部310と、バッファメモリ部との接続及び信号の送受信の態様を示す図である。判定収集部310は、36個のバッファメモリ部(a00乃至a23、b00乃至b23及びc00乃至c23)の夫々の比較部270から、メモリ部230内部にデータが格納されているか否かの判定結果の入力を受ける。また、判定収集部310は、クロック信号生成部等より現在の時間の入力を受け、該現在の時間と、バッファメモリ部毎に設定される締切時間とに基づいて、データの出力順を決定する。そして、決定したデータの出力順に応じて、36個のバッファメモリ部の夫々の管理メモリ部240に対して、データの出力を指示するRead Data Enable信号を送信する。
FIG. 11 is a diagram illustrating how the
判定収集部310は、例えば、現在の時間と、バッファメモリ部毎に設定される締め切り時間とを比較して、締切時間に余裕のないデータから出力されるよう指示する。出力順の決定方法の例として、各バッファメモリ部に設定される締切時間について、[(t−now+N)mod N]の値が小さい順に選択する。ここに、Nは、時間の分割数、言い換えればP2の取り得る値の数であり、tは、締め切り時間であり、nowは、現在の時間である。このため、現在の時間によりデータを送信する際のP2に応じた優先度が変更される。t=0、1、2、3の各場合における判定収集部310の動作に係る真理値表を図12から図15に示す。
For example, the
図12乃至図15において、一番左の列は、各バッファメモリ部からの判定結果の参照順序を示す。中央には、各バッファメモリからの判定結果を示す。尚、該判定結果を示す欄においては、該当するバッファメモリ部にデータが格納されている場合を「1」、データが格納されていない場合を「0」としている。また、バッファメモリ部にデータが格納されているか否かの判定結果が判定収集部310の動作に関わりない部分、言い換えれば0でも1でもよい部分は「−」としている。一番右の列は、判定収集部310がデータの出力指示を行うバッファメモリ部を示す。
12 to 15, the leftmost column indicates the reference order of determination results from each buffer memory unit. The determination result from each buffer memory is shown in the center. In the column indicating the determination result, “1” is set when data is stored in the corresponding buffer memory unit, and “0” is set when no data is stored. In addition, a portion where the determination result of whether or not data is stored in the buffer memory unit is not related to the operation of the
図12は、t=0の状態における判定収集部310の動作に係る真理値である。t=0の場合、先ず、判定収集部310は、締切時間を示すP2の値が0に設定されるバッファメモリ部(a00、b00、c00、a10、b10、c10、a20、b20、c20)について、設定されるデータの優先度を示すP1の値が低い順(つまり、0から2)に送信される判定結果を参照する。先ず、バッファメモリ部a00にデータが格納されているか否かの判定結果を参照する。バッファメモリ部a00にデータが格納されている場合(判定結果欄が「1」の場合)、バッファメモリ部a00に対してRead Data Enable信号を送信して、出力指示を行う(図12、参照順序=1の行参照)。バッファメモリ部a00にデータが格納されていない場合(判定結果欄が「0」の場合)、続いて判定収集部310は、バッファメモリ部b00にデータが格納されているか否かの判定結果を参照する。バッファメモリ部b00にデータが格納されている場合(判定結果欄が「1」の場合)、バッファメモリ部b00に対してRead Data Enable信号を送信して、出力指示を行う(図12、参照順序=2の行参照)。このように、判定収集部310は、P2の値が0であるバッファメモリ部について、P1の値が示す優先度が高い順にデータが格納されているか否かを確認し、データが格納される場合には出力指示を行う。判定収集部310は、P2の値が0である全てのバッファメモリ部にデータが格納されていないことを確認した場合、P2の値が次の締切時間を示す1であるバッファメモリ部について、P1の値が示す優先度が高い順にデータが格納されているか否かを確認し、データが格納される場合には出力指示を行う。その後、順次P2の値が2、3であるバッファメモリ部に対しても同様の処理を行うことで、各バッファメモリ部に対して、データの格納の有無の確認と、出力指示とを行う。尚、図12の例では、ポート20aに接続されるバッファメモリ部に対して優先的に処理を行っているが、ポート20b又はポート20cに接続されるバッファメモリ部を優先的に処理を行う態様であってもよく、図12は便宜上の一例であるに過ぎない。
FIG. 12 is a truth value related to the operation of the
図13は、t=1の状態における判定収集部310の動作に係る真理値である。t=1の場合、判定収集部310は、先ず、P2の値が1であるバッファメモリ部に対して、P1の値が示す優先度が高い順にデータの格納の有無の確認と、出力指示との処理を行う。続いて、P2が2、3、0である順に上述の処理を行う。P2の値が0であるバッファメモリ部の参照順序を一番最後としたのは、t=1の時点でバッファメモリ部に格納されるデータの締切時間は、所定の周期を4分割して示した締切時間の内、次の周期における時間0であると判断可能であるためである。
FIG. 13 is a truth value related to the operation of the
図14は、t=2の状態における判定収集部310の動作に係る真理値である。t=2の場合、判定収集部310は、先ず、P2の値が2であるバッファメモリ部に対して、P1の値が示す優先度が高い順にデータの格納の有無の確認と、出力指示との処理を行う。続いて、P2が3、0、1である順に上述の処理を行う。
FIG. 14 is a truth value related to the operation of the
図15は、t=3の状態における判定収集部310の動作に係る真理値である。t=3の場合、判定収集部310は、先ず、P2の値が3であるバッファメモリ部に対して、P1の値が示す優先度が高い順にデータの格納の有無の確認と、出力指示との処理を行う。続いて、P2が0、1、2である順に上述の処理を行う。
FIG. 15 is a truth value related to the operation of the
判定収集部310からのRead Data Enable信号を受信したバッファメモリ部の管理メモリ部240は、メモリ部230に対してデータの出力を指示する。出力されたデータは、バス400乃至430を介して送信セレクタ320に入力される。また、送信セレクタ320は、各バッファメモリ部から、データの有効範囲を示すData Enable信号の入力を受ける。
The
Data Enable信号の入力を受けた送信セレクタ320は、該Data Enable信号により指定されるバッファメモリ部のメモリ部230から入力されるデータをポート30へ出力する。図16に、送信セレクタ320とバッファメモリ部との接続の態様を示す。送信セレクタ320は、各バッファメモリ部と、バス400乃至430を介して接続し、Data Enable信号と、データとの入力を受け、選択したデータをポート30に出力する。
The
送信セレクタ320の動作に係る真理値表を図17に示す。図17に示されるように、Data Enable信号の入力元のバッファメモリ部からの入力データをポート30に出力する。
(3)動作例
以下、データ転送制御装置1を用いたデータ転送制御処理の流れについて、各部の詳細な動作と共に説明する。
A truth table relating to the operation of the
(3) Operation Example Hereinafter, the flow of data transfer control processing using the data
図18に、データ転送制御処理の対象となるデータのパケットフォーマットの一例を示す。データのパケットフォーマットは、Data Frame Pulse、Data Valid Enable及びDataを含むよう規定される。Frame Pulseは、データの先頭を示すパルスである。Data Valid Enableは、データの有効無効を示すパルスである。Dataは、データそのものを示す、D0からDmまでのデータであって、D0部にP1及びP2の情報を含む。 FIG. 18 shows an example of a packet format of data to be subjected to data transfer control processing. The data packet format is defined to include Data Frame Pulse, Data Valid Enable, and Data. Frame Pulse is a pulse indicating the head of data. Data Valid Enable is a pulse indicating data validity / invalidity. Data is data from D0 to Dm indicating the data itself, and includes information on P1 and P2 in the D0 part.
図19は、このようなデータの入力を受ける振り分け部100aにおける信号の入出力の態様を示す機能ブロック図である。
FIG. 19 is a functional block diagram showing a signal input / output mode in the
振り分け部20aは、データの入力を受けると、該データより、データの優先度を示すP1の値と、締切時間を示すP2の値とを抽出部110において抽出する。そして、P1セレクタ120及びP2セレクタ130乃至150により、データを振り分け、格納部200a内の対応するバッファメモリ部a00乃至a23へDATA VALID ENABLE及びDATA FRAME PULSEを送信する。
When receiving the input of data, the
図20は、上述した振り分け部100aの振り分け動作に係る真理値表である。P1をX、P2をYとおく場合、P1及びP2に応じたバッファメモリ部aXYに対して、DATA FRAME PULSE及びDATA VALID ENABLEを送信する。例えば、P1=2、P2=3の場合、バッファメモリ部a23に対してDATA FRAME PULSE及びDATA VALID ENABLEを送信する。
FIG. 20 is a truth table relating to the sorting operation of the
尚、図19では、振り分け部20aを例として示しているが、他の振り分け部についても、同様の入出力を行う。
In FIG. 19, the
格納部200a内のバッファメモリ部a00を例に挙げて、振り分け部20aよりデータの入力を受けた際の各部の処理について説明する。バッファメモリ部a00は、上述したように受信したデータをWADD生成部210、受信カウンタ220及びメモリ230に夫々入力する。
Taking the buffer memory unit a00 in the
WADD生成部210は、入力したDataを格納するためのメモリ部230のアドレスを生成するカウンタを有する。WADD生成部210の機能ブロックを図21(a)に示す。
The WADD generation unit 210 includes a counter that generates an address of the
WADD生成部210は、データのうち、有効データの受信を示すDATA VALID ENABLEを入力して、メモリ部230のアドレスであるWrite Data Address(以降、WDAと記載)を生成する。図21(b)に、WADD生成部210における、DATA VALID ENABLEの入力と、生成されるWDAとのタイミングチャートを示す。WADD生成部210は、生成したWDAをメモリ部230、管理メモリ部240へ出力する。
The WADD generating unit 210 receives DATA VALID ENABLE indicating reception of valid data among the data, and generates a Write Data Address (hereinafter referred to as WDA) that is an address of the
受信カウンタ220は、データのうち、データの先頭を示すDATA FRAME PULSEを入力して、受信パケット数を示すカウンタ値(Receive Data Counter)をカウントアップするカウンタである。受信カウンタ220の機能ブロックを図22(a)に示す。また、図22(b)に、受信カウンタ220における、DATA FRAME PULSEの入力と、カウントされるReceive Data Counterとのタイミングチャートを示す。図22(b)に示されるように、受信カウンタ220は、DATA FRAME PULSEを受信したタイミングで、Receive Data Counterの値をカウントアップしている。受信カウンタ220は、カウントしたReceive Data Counterを適宜メモリ部230、管理メモリ部240及び比較部270へ出力する
メモリ部230は、データ内のDataを格納するメモリである。メモリ部230の機能ブロックを図23(a)に示す。
The
メモリ部230は、データの受信時には、データのうち、Data及び該DataのWrite Enable信号の一例であるDATA VALID ENABLE、並びにWADD生成部210より入力されるData書き込み時のWriteアドレスであるWrite Data Addressの入力を受ける。メモリ部230は、Write Data Addressにより指定されるアドレスに、DATA VALID ENABLEに応じてDataを格納する。図23(b)に、メモリ部230における、データ受信時のDATA VALID ENABLE、Data及びWrite Data Addressのタイミングチャートを示す。
At the time of data reception, the
メモリ部230は、データの送信時には、後述するようにRADD生成部250より入力されるRead Enable信号の一例であるRead DATA VALID ENABLE、同じく後述するように送信カウンタ260より入力されるReadアドレスの一例であるRead Address Counterの入力を受ける。メモリ部230は、Read DATA VALID ENABLE及びRead Address Counterに応じてDataを読み出し、送信部300へ出力する。図23(c)に、メモリ部230における、データ送信時のRead DATA VALID ENABLE、Data及びRead Address Counterのタイミングチャートを示す。
When data is transmitted, the
管理メモリ部240は、Dataが格納されるメモリ部230の先頭アドレスと、格納されるDataのデータ長を格納するメモリである。管理メモリ部240の機能ブロックを図24(a)に示す。
The
管理メモリ部240は、データの受信時には、データの先頭を示すDATA FRAME PULSE、WADD生成部210において生成されるWrite Data Address及びDataのlengthであるWrite Data Length、受信カウンタ220からのReceive Data Counter、の入力を受ける。図24(b)に、管理メモリ部240における、データ受信時の各信号のタイミングチャートを示す。例えば、管理メモリ部240は、データの先頭を示すDATA FRAME PULSEに基づいて、Dataのデータ長を示すパルス信号であるWrite Data Lengthを生成してもよい。例えば、1つのDataのデータ長は、該Dataの先頭を示すDATA FRAME PULSEのパルスから、次のDATA FRAME PULSEのパルスまでとなる。管理メモリ部240は、DATA FRAME PULSEをWrite Enable信号とし、Receive Data Counterを書き込みアドレスとして、メモリ部230におけるDataの書き込み時のWriteアドレスであるWrite Data Addressとデータ長であるWrite Data Lengthを格納する。
When receiving data, the
他方、管理メモリ部240は、送信部300からのデータの送信指示であるRead Enableと、送信カウンタ260からのSend Data Counterとの入力を受ける。管理メモリ部240は、送信部300からのRead EnableをReadアドレスとして、格納するDataの先頭アドレスを示すRead Data Pointerと該Dataのデータ長であるRead Data Lengthを読み出す。図24(c)に、管理メモリ部240における、データ送信時の各信号のタイミングチャートを示す。管理メモリ部240は、Read Enableが有効になった時に、あるデータXについてのRead Data Pointerを出力する。また、次にRead Enableが有効になった時に、別のデータYについてのRead Data Pointerを出力する。このときのRead Data Pointerの出力に応じて、データX及びデータYについてのRead Data Lengthを出力する。
On the other hand, the
RADD生成部250は、データの送信時に、メモリ部230に格納されるDataのReadアドレスを生成する。RADD生成部250の機能ブロックを図25(a)に示す。RADD生成部250は、カウンタ251と、Enable生成部252とを備える。
The
カウンタ251はLoad Enableの一例である、送信部300より入力されるRead Enableと、Load値の一例である、管理メモリ部240より入力されるRead Data Pointerとを受信する。カウンタ251は、Read Enable及びRead Data Pointerの入力に応じて、カウンタ値であるRead Address Counterを初期化し、カウントアップする。カウントされたRead Address Counterは、メモリ部230のデータを読み出す際のReadアドレスとして用いられる。また、カウンタ251は、Read Address CounterをEnable生成部252に入力する。
The
Enbale生成部252は、カウンタ251より入力されるRead Address Counter並びに管理メモリ部240より入力されるRead Data Pointer及びRead Data Lengthに基づいてRead DATA VALID ENABLEを生成する。Read DATA VALID ENABLEは、メモリ部230に格納されるDataを読み出すためのRead Enable信号、及び送信部300の送信セレクタ320におけるセレクト信号として用いられる。
The
Enable生成部252は、一例として、Read Data Pointer+Read Data LengthとRead Address Counterとの値を比較することで、Read DATA VALID ENABLEの値を決定する。例えば、Read Data Pointer+Read Data Lengthの値がRead Address Counter以下の時、メモリ部230へのRead DATA VALID ENABLEを0にする。他方、Read Data Pointer+Read Data LengthがRead Address Counterより大きい時、メモリ部230へのRead DATA VALID ENABLEを1にする。
The
図25(b)に、RADD生成部250における、データ送信時の各信号のタイミングチャートを示す。
FIG. 25B shows a timing chart of each signal at the time of data transmission in the
送信カウンタ260は、送信部300からのデータの送信要求であるRead Enableを入力して、送信パケット数を示すカウンタ値(Send Data Counter)をカウントアップするカウンタである。送信カウンタ260の機能ブロックを図26(a)に示す。また、図26(b)に、送信カウンタ260の動作に係るタイミングチャートを示す。図26(b)に示されるように、送信カウンタ260は、Read Enableが有効となったタイミングで、Send Data Counterの値をカウントアップする。送信カウンタ260は、カウントしたSend Data Counterを適宜管理メモリ部240及び比較部270へ出力する。
The
比較部270は、受信カウンタ220においてカウントしたReceive Data Counterと送信カウンタ260においてカウントしたSend Data Counterとの値を比較することで、メモリ部230にデータが格納されているか否かの判定を行う。比較部270は、一例として、Receive Data CounterとSend Data Counterを比較する比較器であって、比較結果に応じて、異なる出力を行う。例えば、Receive Data Counter値とSend Data Counter値とが等しいとき、メモリ部230に格納されるDataは全て送信されていると判断し、Data無しであることを示すData Empty Flag=0を出力する。他方で、Receive Data Counter値とSend Data Counter値とが異なるとき、メモリ部230に格納された後、送信されていないDataが存在すると判断し、Data有りであることを示すData Empty Flag=1を出力する。図27(b)に、Receive Data Counter値とSend Data Counter値とに基づくData Empty Flagの出力の態様を示すタイミングチャートを示す。
The
送信部300は、現在の時間tの入力を受けて、バッファメモリ部へデータの読み出し要求を行う判定収集部310と、バッファメモリ部から入力されるデータを出力用のポート30に出力する送信セレクタ320を備える。
The
判定収集部310の機能ブロックを図28に示す。図28に示すように、判定収集部310は、各バッファメモリ部からのデータの格納の有無を示すData Empty Flagを受信して、現在の時間tに応じたバッファメモリ部に対してデータの読み出しを要求するRead Enableを送信する。判定収集部310は、上述した真理値表に基づいて、現在の時間tに応じてRead Enableを送信するバッファメモリ部を決定する。
A functional block of the
送信セレクタ320は、各バッファメモリ部より入力される、ポート30に出力するデータの有効範囲を示すRead DATA VALID ENABLEに基づいて、対応するバッファメモリ部からのデータを選択し、ポート30へ出力する。送信セレクタ320の機能ブロックを図29に示す。
The
以上、説明したデータ転送制御装置1の動作について、データの入出力時の処理の流れの例を説明する。図30は、データ転送制御装置1にデータの入力があった時の、該データの転送制御に係るタイムチャートである。
The operation of the data
図30に示す例では、以下に示すように、データA乃至Dがデータ転送制御装置1内の振り分け部100a乃至cにおいて振り分けられ、格納部200内の対応するバッファメモリ部に入力される。
In the example shown in FIG. 30, as shown below, data A to D are distributed by
時刻t1に、ポート20cを介して入力された、P1=2且つP2=3のデータDがバッファメモリ部c23に振り分けられて入力される。時刻t2に、ポート20aを介して入力された、P1=0且つP2=3のデータAがバッファメモリ部a03に振り分けられて入力される。時刻t3に、ポート20aを介して入力された、P1=0且つP2=2のデータBがバッファメモリ部a02に振り分けられて入力される。時刻t3に、ポート20bを介して入力された、P1=1且つP2=2のデータCがバッファメモリ部b12に振り分けられて入力される。
At time t1, the data D of P1 = 2 and P2 = 3 input through the
データ転送制御装置1は、所定の周期をt=0乃至3に分割して、現在の時刻及び締切時刻であるP2の値を管理している。図30の例では、t1及びt2(t2>t1)がt=0に属し、t3(t3>t2)及びt4(t4>t3)がt=1に属している。
The data
これらのデータの入力を受けて、バッファメモリ部c23の受信カウンタ220は、時刻t1においてカウンタ値を0から1にカウントアップする。バッファメモリ部a03の受信カウンタ220は、時刻t2においてカウンタ値を0から1にカウントアップする。バッファメモリ部a02の受信カウンタ220は、時刻t3においてカウンタ値を0から1にカウントアップする。バッファメモリ部b12の受信カウンタ220は、時刻t4においてカウンタ値を0から1にカウントアップする。
Receiving these data inputs, the
また、バッファメモリ部c23のメモリ部230には、時刻t1においてデータDが格納される。バッファメモリ部a03のメモリ部230には、時刻t2においてデータAが格納される。バッファメモリ部a02のメモリ部230には、時刻t3においてデータBが格納される。バッファメモリ部b12のメモリ部230には、時刻t4においてデータCが格納される。格納されたデータは、後述するようにデータの送信されるまで、各メモリ部230に格納される。
Further, the data D is stored in the
また、バッファメモリ部c23の管理メモリ部240には、時刻t1においてデータDのメモリ部230への格納時のWrite Data Address及びデータ長であるWrite Data Lengthが格納される。バッファメモリ部a03の管理メモリ部240には、時刻t2においてデータAのメモリ部230への格納時のWrite Data Address及びデータ長であるWrite Data Lengthが格納される。バッファメモリ部a02の管理メモリ部240には、時刻t3においてデータBのメモリ部230への格納時のWrite Data Address及びデータ長であるWrite Data Lengthが格納される。バッファメモリ部b12の管理メモリ部240には、時刻t4においてデータCのメモリ部230への格納時のWrite Data Address及びデータ長であるWrite Data Lengthが格納される。
The
このとき、各バッファメモリ部において、メモリ部230にデータが格納された際の受信カウンタ220のカウンタ値が、該データの出力前では、送信カウンタ260のカウンタ値とは異なるものである。このため、かかる期間、比較部270は、データがメモリ部230に格納されていることを示すData Empty Flag=1を送信部300内の判定収集部310に出力する。尚、それ以外の期間には、比較部270は、Data Empty Flag=0を出力する。具体的には、バッファメモリ部c23の比較部270は、時刻t1からデータDが出力されるまでの期間、Data Empty Flag=1を出力する。バッファメモリ部a03の比較部270は、時刻t2からデータAが出力されるまでの期間、Data Empty Flag=1を出力する。バッファメモリ部a02の比較部270は、時刻t3からデータBが出力されるまでの期間、Data Empty Flag=1を出力する。バッファメモリ部b12の比較部270は、時刻t4からデータCが出力されるまでの期間、Data Empty Flag=1を出力する。
At this time, in each buffer memory unit, the counter value of the
判定収集部310は、上述のように各バッファメモリ部の比較部270から出力される判定結果、並びにバッファメモリ部に設定されるP1及びP2の値に応じて、バッファメモリ部に対してRead Enableを送信することで、格納されるデータの出力指示を行う。判定収集部310は、上述したように、現在の時間t及び設定されるP2の値との関係、並びにP1の値から、優先的に判定結果を参照するバッファメモリ部を決定する。図30の例では、具体的には、時刻t1において、バッファメモリ部c23に対して、データDの出力指示を行う。データDの出力後、つまり時刻t1からデータDのデータ長に応じた送信時間の経過後である時刻t4において、バッファメモリ部a02に対して、データBの出力指示を行う。データBの出力後、つまり時刻t4からデータBのデータ長に応じた送信時間の経過後である時刻t5において、バッファメモリ部b12に対して、データCの出力指示を行う。データCの出力後、つまり時刻t5からデータCのデータ長に応じた送信時間の経過後である時刻t6において、バッファメモリ部a03に対して、データAの出力指示を行う。
The
判定収集部310からのRead Enableを受信することで、バッファメモリ部のメモリ部230は、格納するデータを送信部300の送信セレクタ320に出力する。このとき、送信カウンタ260は、Read Enableの受信を検出することでカウントアップを行う。具体的には、バッファメモリ部c23の送信カウンタ260は、時刻t1においてカウンタ値を0から1にカウントアップする。バッファメモリ部a02の送信カウンタ260は、時刻t4においてカウンタ値を0から1にカウントアップする。バッファメモリ部b12の送信カウンタ260は、時刻t5においてカウンタ値を0から1にカウントアップする。バッファメモリ部a03の送信カウンタ260は、時刻t6においてカウンタ値を0から1にカウントアップする。
By receiving Read Enable from the
また、Read Enableを受信した各バッファメモリ部のRADD生成部250は、メモリ部230に格納されるデータの出力を指示するRead Data Valid Enableと、出力時のReadアドレスであるRead Address Counterとを出力する。具体的には、時刻t1からt4までの間、バッファメモリ部c23のRADD生成部250は、Read Data Valid EnableとRead Address Counterとを出力する。時刻t4からt5までの間、バッファメモリ部a02のRADD生成部250は、Read Data Valid EnableとRead Address Counterとを出力する。時刻t5からt6までの間、バッファメモリ部b12のRADD生成部250は、Read Data Valid EnableとRead Address Counterとを出力する。時刻t6からデータAのデータ長に応じた送信時間が経過するまでの間、バッファメモリ部a03のRADD生成部250は、Read Data Valid EnableとRead Address Counterとを出力する。
Also, the
以上の各部の処理によって、送信セレクタ320を介して出力用のポート30には、データD、データB、データC、データAの順でデータが出力される。上述したようにデータの出力スケジュールは、現在の時間tとP2との関係、及びP1に基づいて決定されるため、各データが締切時間を超過してポート30に出力されることはない。
As a result of the above processing, data is output in the order of data D, data B, data C, and data A to the
上記の送信部300の判定収集部310及び送信セレクタ320について、図31に処理の流れを示すフローチャートを示す。
FIG. 31 is a flowchart showing a processing flow for the
判定収集部310は、現在の時間tを確認することにより、各バッファメモリ部に格納されるデータの締切時間を示すP2の値に基づくデータ出力の優先度を決定する。
The
判定収集部310は、現在の時間t=0のとき(ステップS101:Yes)、図12の真理値表に基づいて、Data Empty Flagを確認するバッファメモリ部を選択する(ステップS102)。
When the current time t = 0 (step S101: Yes), the
次に、選択したバッファメモリ部から送信されるData Empty Flagの値を確認することで、該バッファメモリ部のメモリ部230内にデータが格納されているか否かを確認する(ステップS103)。Data Empty Flag=1である場合(ステップS103:Yes)、該バッファメモリ部に対してData Enableを送信し、データの出力を行わせる(ステップS104)。送信セレクタ320は、選択されたバッファメモリ部のRADD生成部250より送信されるRead Data Valid Enableに応じて、データの出力を行い、データ送信の終了を示すRead Data Valid Enable=0が送信された時点で、データの出力を終了する(ステップS105)。
Next, by confirming the value of Data Empty Flag transmitted from the selected buffer memory unit, it is confirmed whether data is stored in the
続いて、判定収集部310は再度現在の時間tに応じて決定される優先度に基づいて、各バッファメモリ部からのData Empty Flagの確認を行う。
Subsequently, the
t=1のとき(ステップS201:Yes)、判定収集部310は、図13の真理値表に基づいて、Data Empty Flagを確認するバッファメモリ部を選択する(ステップS202)。その後、選択されたバッファメモリ部に対して、ステップS103乃至S104と同様の手順であるステップS203乃至ステップS204を実施することで、Read Enableを送信する。Read Enableを受信したバッファメモリ部からのデータとRead Data Valid Enableとに基づいて、送信セレクタ320は、データの出力を行う。
When t = 1 (step S201: Yes), the
以降、送信部300の判定収集部310及び送信セレクタ320は、t=2の場合は、図14の真理値表に基づいて、t=3の場合は、図15の真理値表に基づいて、上述の手順を繰り返す。t=3の次は、t=0となるため、その場合、ステップS101がYesである場合の手順を行う。
Thereafter, the
(4)データ処理装置の実施例
本実施形態において、締切時間は、例えば、出力先のポート30に対して転送処理を完了することが好ましい時間(或いは、転送処理を完了しなければいけない時間)としている。
(4) Example of Data Processing Device In this embodiment, the deadline time is, for example, a time when it is preferable to complete transfer processing for the output destination port 30 (or time when transfer processing must be completed). It is said.
締切時間の一例として、出力先のポート30に接続されるデータ処理用の装置であって、データ転送制御装置1によって転送されるデータを用いて処理を行う装置において、該処理が開始する時間を設定してもよい。
As an example of the deadline time, in a device for data processing connected to the
図32に、このような装置とデータ転送制御装置1とを含むデータ処理装置1’の構成を表す図を示す。データ処理装置1’は、データ転送制御装置1と、データ転送制御装置1に対してデータの入力を行う前段処理装置2a、2b、2cと、データ転送制御装置1を介して転送されたデータを受信して処理する後段処理装置3とを含む。データ転送制御装置1が備えるデータ入力用のポート20aには、該ポート20aに対してデータを入力する前段処理装置2aが接続される。ポート20bには、該ポート20bに対してデータを入力する前段処理装置2bが接続される。ポート20cには、該ポート20cに対してデータを入力する前段処理装置2cが接続される。これらの前段処理装置2a乃至2cは、ポート20a乃至20cに対してデータの入力を行うだけでなく、データのヘッダの参照や、何らかのデータ等のパケット内へのマッピング等の処理を可能とする。また、データ転送制御装置1が備えるデータ出力用のポート30には、該ポート30から出力されるデータを受信する後段処理装置3が接続される。後段処理装置3は、受信したデータを用いて何らかの処理を可能とする。
FIG. 32 is a diagram showing the configuration of a
図33に、このような後段処理装置3における処理期間と締切時間との関係を示すタイムチャートを示す。図33は、基準信号T=4msとして、ポート30に接続される後段処理装置3における処理周期が4ms、2ms、1msである場合について示している。
FIG. 33 shows a time chart showing the relationship between the processing period and the deadline time in the latter-
4ms周期毎にデータの処理をする場合のデータの締切時間は、基準信号Tに対して、0msとなる。2ms周期毎にデータの処理をする場合のデータの締切時間は、基準信号Tに対して、0ms、2msとなる。1ms周期毎にデータの処理をする場合のデータの締切時間は、基準信号Tに対して、0ms、1ms、2ms、3msとなる。 The data deadline when processing data every 4 ms cycle is 0 ms with respect to the reference signal T. The data deadline when data is processed every 2 ms cycle is 0 ms and 2 ms with respect to the reference signal T. The data deadline when processing data every 1 ms cycle is 0 ms, 1 ms, 2 ms, and 3 ms with respect to the reference signal T.
このようなデータの処理周期に基づいて、例えば、データの入力元となるポート20a乃至20cにおいて、各データにP2の値を設定してもよい。また、例えば、ポート20A乃至20Cに接続される前段処理装置2a乃至2cを用いて、出力用のポート30に接続される後段処理装置3における処理期間を考慮した締切時間を決定し、データ内部にマッピングしてもよい。以下に、IP(Internet protocol)パケットを転送制御の対象となるデータとして用いた場合に、IPパケットヘッダに対して、締切時間を示すP2の値をマッピングする例について説明する。
Based on such a data processing cycle, for example, the value of P2 may be set for each data in the
図34に、IPパケットヘッダのフォーマットを示す。図34に示されるように、IPパケットヘッダは、以下のデータフィールドを有するようフォーマットにより定められる。 FIG. 34 shows the format of the IP packet header. As shown in FIG. 34, the IP packet header is defined by a format having the following data fields.
Versionフィールドは、IPヘッダの最初の4ビットであり、IPパケットを構成するIPプロトコルのバージョンを表す値を格納する。 The Version field is the first 4 bits of the IP header, and stores a value representing the version of the IP protocol constituting the IP packet.
Header Lengthフィールドは、4ビットのフィールドであって、IPヘッダ自身の長さを表す値を格納する。 The Header Length field is a 4-bit field and stores a value representing the length of the IP header itself.
Service Typeフィールドは、8ビットのフィールドであって、IPパケットの要求するサービスの特徴を表す。例えば、このService Typeフィールドの中に、IPパケットの重要度を表すP1等の値を格納してもよい。 The Service Type field is an 8-bit field and represents the characteristics of the service requested by the IP packet. For example, a value such as P1 indicating the importance of the IP packet may be stored in the Service Type field.
Identificationフィールドは、16ビットのフィールドであって、IPパケットを識別するために該IPパケットの送信側が割り当てたID番号等を格納する。 The Identification field is a 16-bit field and stores an ID number assigned by the transmission side of the IP packet in order to identify the IP packet.
Flagフィールドは、3ビットのフィールドであって、IPパケットについてのフラグメント化に係る情報を格納する。 The Flag field is a 3-bit field and stores information related to fragmentation of the IP packet.
Flagment Offsetフィールドは、13ビットのフィールドであって、IPパケットがフラグメント化されている場合の何番目のフラグメントであるかを表す値を格納する。 The Fragment Offset field is a 13-bit field and stores a value indicating what number the fragment is when the IP packet is fragmented.
Time To Live(TTL)フィールドは、8ビットのフィールドであって、IPパケットのインターネット上での生存期間を表す値を格納する。 The Time To Live (TTL) field is an 8-bit field and stores a value representing the lifetime of the IP packet on the Internet.
Protocolフィールドは、8ビットのフィールドであって、IPパケットがカプセル化している上位層プロトコルの種類を表す値を格納する。 The Protocol field is an 8-bit field and stores a value indicating the type of the upper layer protocol encapsulated by the IP packet.
Header Checksumフィールドは、16ビットのフィールドであって、IPヘッダをCRC(Cyclic Redundancy Check:巡回冗長検査)でチェックする。 The Header Checksum field is a 16-bit field, and the IP header is checked by CRC (Cyclic Redundancy Check).
Source Addressフィールドは、IPパケットの送信元のIPアドレスを、Destination Addressは、IPパケットの送信先のIPアドレスを、夫々格納する32ビットのフィールドである。 The Source Address field is a 32-bit field for storing the IP address of the transmission source of the IP packet, and the Destination Address is the IP address of the transmission destination of the IP packet.
Optionフィールドは、IPパケット配送時に特殊な処理を行なうことを指示するフィールドである。Optionsフィールドのビット長は可変であり、Optionフィールドに値を格納する場合のヘッダ長の調整のため、paddingフィールドが付加されることがある。 The Option field is a field for instructing special processing to be performed at the time of IP packet delivery. The bit length of the Options field is variable, and a padding field may be added to adjust the header length when a value is stored in the Option field.
データ転送制御装置1の運用においては、このOptionsフィールドに締切時間を表すP2の値を格納してもよい。具体的に、Optionsフィールド内には、フラグメント情報を格納するCopy Flagフィールド、Optionの種類を示すClassフィールド及びNumberフィールド、長さを示すLengthフィールド、Optionについてのデータを格納するOption Dataフィールドが夫々定義される。ポート20A乃至20Cに接続される、前段処理装置2a乃至2cは、締切時間を示すP2をこのOption Dataフィールドにマッピングしてもよい。
In the operation of the data
(5)データ処理装置の変形例
以上、データの締切時間の設定に係る例として、入力用のポート20a乃至20cに接続される前段処理装置2a乃至2cにおいて、後段処理装置3における処理期間等を考慮して締切時間P2の設定を行う態様について説明した。データの締切時間の設定に係る他の例として、データ転送制御装置1のスイッチ機能部10において、後段処理装置3における処理期間等を考慮して締切時間P2の設定を行う態様であってもよい。
(5) Modification of Data Processing Device As an example relating to the setting of the data deadline time, the processing period in the
この態様では、データ転送制御装置1のスイッチ機能部10において、後段処理装置3での処理を考慮した転送制御を実現するために、予め振り分け部100に対して締切時間に相当する他の要素を定義し、データ転送の優先度を決定することが考えられる。例えば、Rapid IOなどのパケットに対し、データの締切時間と、転送先のアドレス領域を対応させ、振り分け部100で転送アドレスを締切時間に読み替えて、転送を行ってもよい。
In this aspect, in the
具体的には、後段処理装置3が備える、ポート20a乃至20cから入力されるデータを格納するメモリにおいて、処理時間に応じてデータを格納するためのメモリアドレスを分割する。
Specifically, in the memory for storing data input from the
例えば、図32に示すように、後段処理装置3において、4msの基準時間及び1msの処理周期を有する場合について考える。このとき、0ms、1ms、2ms及び3msの夫々の処理時間に応じて、対応するデータを格納するための領域を設けるよう、メモリアドレスの分割を行う。先ず、メモリアドレス(0x000〜0x0FF)の領域をW、メモリアドレス(0x100〜0x1FF)の領域をX、メモリアドレス(0x200〜0x2FF)の領域をY、メモリアドレス(0x300〜0x3FF)の領域をZと定義する。
For example, as shown in FIG. 32, consider a case where the
そして、0msに加工処理を開始するデータはWの領域に、1msに加工処理を開始するデータはXの領域に、2msに加工処理を開始するデータはYの領域に、3msに加工処理を開始するデータはZの領域に、夫々格納するよう、各データの転送先のメモリアドレスを設定する。 Then, data that starts processing at 0 ms starts in the W area, data that starts processing at 1 ms starts in the X area, data that starts processing at 2 ms starts in the Y area, and starts processing at 3 ms. The memory address of each data transfer destination is set so that the data to be stored is stored in the Z area.
図36は、このような処理の対象となるデータの一例である、Rapid IOパケットのフォーマットを示す図である。Rapid IOパケットのフォーマットでは、転送先のアドレスを指定する29ビットのAddressフィールドが定義されている。このAddressフィールドを用いて、転送先の後段処理装置3におけるメモリアドレスを指定した情報を格納する。
FIG. 36 is a diagram illustrating a format of a Rapid IO packet that is an example of data to be processed. In the format of the Rapid IO packet, a 29-bit Address field that specifies a transfer destination address is defined. Using this Address field, information specifying a memory address in the
データ転送制御装置1の振り分け部100では、抽出部110は、Rapid IOパケットを受信した場合、転送先のメモリアドレスを締切時間を示すP2の値に読み替えて、P2情報をP2セレクタに入力する。具体的には、入力されるパケットについて、転送先のアドレス(0x000〜0x0FF)である場合、締切時間=0ms、つまりP2=0と読み替えて、読み替えたP2の値を入力する。転送先のアドレス(0x100〜0x1FF)である場合、締切時間=1ms、つまりP2=1と読み替えて、読み替えたP2の値を入力する。転送先のアドレス(0x200〜0x2FF)である場合、締切時間=2ms、つまりP2=2と読み替えて、読み替えたP2の値を入力する。転送先のアドレス(0x300〜0x3FF)である場合、締切時間=3ms、つまりP2=3と読み替えて、読み替えたP2の値を入力する。
In the
P2セレクタ130乃至150は、入力されたP2の値を用いて、パケットをバッファメモリ部毎に振り分ける。
The
この態様においては、前段処理装置2a乃至2cは、出力用のポート30に接続される後段処理装置3での処理については考慮することなく、データの種類に応じた転送先の後段処理装置3のメモリアドレスをデータに付与して送信する。
In this aspect, the pre-stage processing devices 2a to 2c do not consider the processing in the
本発明は、上述した実施例に限られるものではなく、請求の範囲及び明細書全体から読み取れる発明の要旨或いは思想に反しない範囲で適宜変更可能であり、そのような変更を伴うデータ転送制御装置及び方法、データ処理装置もまた本発明の技術的範囲に含まれるものである。 The present invention is not limited to the above-described embodiments, and can be appropriately changed without departing from the spirit or concept of the invention that can be read from the claims and the entire specification, and a data transfer control device with such changes In addition, the method and the data processing apparatus are also included in the technical scope of the present invention.
以上、本明細書で説明した実施形態について、以下の付記を更に記載する。 As mentioned above, the following additional remarks are further described about embodiment described in this specification.
(付記1)
データを入力する複数の入力ポートと、
前記データを出力する出力ポートと、
前記データに設定される締切時間に基づいて、前記データを前記複数の入力ポートから前記出力ポートに転送する転送制御部と
を備えることを特徴とするデータ転送制御装置。
(Appendix 1)
Multiple input ports to input data,
An output port for outputting the data;
And a transfer control unit configured to transfer the data from the plurality of input ports to the output port based on a deadline time set for the data.
(付記2)
入力される前記データを格納する複数の格納部と
前記複数の入力ポートの夫々に対応し、入力される前記データを該データに設定される前記締切時間に対応する前記複数の格納部のいずれかに格納する振り分け部と
を更に備えることを特徴とする付記1に記載のデータ転送制御装置。
(Appendix 2)
One of the plurality of storage units corresponding to the plurality of storage units for storing the input data and the plurality of input ports, and corresponding to the deadline time set for the input data in the data. The data transfer control device according to
(付記3)
前記転送制御部は、前記複数の格納部に格納される前記データを、該データに設定される前記締切時間に基づいて前記出力ポートに転送する際の順番を決定することを特徴とする付記2に記載のデータ転送制御装置。
(Appendix 3)
The transfer control unit determines an order in which the data stored in the plurality of storage units is transferred to the output port based on the deadline time set in the data. The data transfer control device according to 1.
(付記4)
前記転送制御部は、前記複数の格納部に格納される前記データを、前記データに設定される前記締切時間及び現在の時刻を比較した結果に応じて、前記出力ポートに転送する際の順番を決定することを特徴とする付記3に記載のデータ転送制御装置。
(Appendix 4)
The transfer control unit determines the order of transferring the data stored in the plurality of storage units to the output port according to a result of comparing the deadline time set in the data and the current time. The data transfer control device according to
(付記5)
前記複数の入力ポートより入力されたデータの数をカウントする第1カウンタと、
前記出力ポートに出力されたデータの数をカウントする第2カウンタと、
前記第1カウンタ及び前記第2カウンタのカウンタ値の比較を行う比較部と
を更に備え、
前記転送制御部は、前記比較部における比較結果に応じて、前記複数の格納部に格納される前記データを前記出力ポートに転送する際の順番を決定することを特徴とする付記2から4のいずれか一項に記載のデータ転送制御装置。
(Appendix 5)
A first counter for counting the number of data input from the plurality of input ports;
A second counter for counting the number of data output to the output port;
A comparison unit that compares the counter values of the first counter and the second counter;
The transfer control unit determines an order in transferring the data stored in the plurality of storage units to the output port according to a comparison result in the comparison unit. The data transfer control device according to any one of the above.
(付記6)
前記転送制御部は、前記データに設定される優先度と、前記締切時間とに基づいて、前記データを前記複数の入力ポートから前記出力ポートに転送する際の順番を決定することを特徴とする付記1から4のいずれか一項に記載のデータ転送制御装置。
(Appendix 6)
The transfer control unit determines an order in transferring the data from the plurality of input ports to the output port based on a priority set for the data and the deadline time. The data transfer control device according to any one of
(付記7)
データを複数の入力ポートより入力する入力工程と、
前記データを出力ポートより出力する出力工程と、
前記データに設定される締切時間に基づいて、前記データを前記複数の入力ポートから前記出力ポートに転送する転送制御工程と
を備えることを特徴とするデータ転送制御方法。
(Appendix 7)
An input process for inputting data from a plurality of input ports;
An output step of outputting the data from an output port;
And a transfer control step of transferring the data from the plurality of input ports to the output port based on a deadline time set for the data.
(付記8)
データ転送制御装置と、該データ転送制御装置を介して転送されるデータを受信する第1処理装置とを含むデータ処理装置であって、
前記データ転送制御装置は、
データを入力する複数の入力ポートと、
前記データを出力する出力ポートと、
前記データに設定される締切時間に基づいて、前記データを前記複数の入力ポートから前記出力ポートに転送する転送制御部と
を備え、
前記第1処理装置は、受信した前記データを所定のタイミングで処理することを特徴とするデータ処理装置。
(Appendix 8)
A data processing device including a data transfer control device and a first processing device that receives data transferred via the data transfer control device,
The data transfer control device includes:
Multiple input ports to input data,
An output port for outputting the data;
A transfer control unit configured to transfer the data from the plurality of input ports to the output port based on a deadline time set for the data;
The first processing device processes the received data at a predetermined timing.
(付記9)
前記データ転送制御装置を介して前記第1処理装置にデータを送信する第2処理装置を更に備え、
前記第2処理装置は、前記所定のタイミングに間に合うよう、前記データについて前記締切時間を設定した上で送信することを特徴とする付記8に記載のデータ処理装置。
(Appendix 9)
A second processing device for transmitting data to the first processing device via the data transfer control device;
9. The data processing device according to
(付記10)
前記データ転送制御装置を介して前記第1処理装置にデータを送信する第2処理装置を更に備え、
前記第1処理装置は、受信した前記データについて、処理する際の前記所定のタイミング毎に分類して格納し、
前記第2処理装置は、前記メモリ内における、前記所定のタイミングに応じたアドレスを指定して前記データを送信し、
前記転送制御部は、前記データについて指定される前記アドレスを前記締切時間を示す情報として用いることで、前記データを前記複数の入力ポートから前記出力ポートに転送することを特徴とする付記8に記載のデータ処理装置。
(Appendix 10)
A second processing device for transmitting data to the first processing device via the data transfer control device;
The first processing device classifies and stores the received data for each predetermined timing when processing,
The second processing device transmits the data by designating an address corresponding to the predetermined timing in the memory,
The transfer control unit transfers the data from the plurality of input ports to the output port by using the address specified for the data as information indicating the deadline time. Data processing equipment.
1 データ転送制御装置、
2a、2b、2c 前段処理装置、
3 後段処理装置、
10 スイッチ機能部、
20a、20b、20c ポート、
30 ポート、
100、100a、100b、100c 振り分け部、
110 抽出部、
120 P1セレクタ、
130、140、150 P2セレクタ、
200、200a、200b、200c、200d 格納部、
210 WADD生成部、
220 受信カウンタ、
230 メモリ部、
240 管理メモリ部、
250 RADD生成部、
260 送信カウンタ、
270 比較部、
300 送信部、
310 判定収集部、
320 送信セレクタ、
400〜430 バス。
1 Data transfer control device,
2a, 2b, 2c Pre-treatment device,
3 Post-processing device,
10 Switch function part,
20a, 20b, 20c ports,
30 ports,
100, 100a, 100b, 100c sorting unit,
110 extractor,
120 P1 selector,
130, 140, 150 P2 selector,
200, 200a, 200b, 200c, 200d storage unit,
210 WADD generator,
220 reception counter,
230 memory part,
240 management memory section,
250 RADD generator,
260 transmission counter,
270 comparator,
300 transmitter,
310 judgment collection unit,
320 transmit selector,
400-430 bus.
Claims (10)
前記データを出力する出力ポートと、
前記データに設定される締切時間に基づいて、前記データを前記複数の入力ポートから前記出力ポートに転送する転送制御部と
を備えることを特徴とするデータ転送制御装置。 Multiple input ports to input data,
An output port for outputting the data;
And a transfer control unit configured to transfer the data from the plurality of input ports to the output port based on a deadline time set for the data.
前記複数の入力ポートの夫々に対応し、入力される前記データを該データに設定される前記締切時間に対応する前記複数の格納部のいずれかに格納する振り分け部と
を更に備えることを特徴とする請求項1に記載のデータ転送制御装置。 One of the plurality of storage units corresponding to the plurality of storage units for storing the input data and the plurality of input ports, and corresponding to the deadline time set for the input data in the data. The data transfer control device according to claim 1, further comprising: a distribution unit that stores data in the data transfer unit.
前記出力ポートに出力されたデータの数をカウントする第2カウンタと、
前記第1カウンタ及び前記第2カウンタのカウンタ値の比較を行う比較部と
を更に備え、
前記転送制御部は、前記比較部における比較結果に応じて、前記複数の格納部に格納される前記データを前記出力ポートに転送する際の順番を決定することを特徴とする請求項2から4のいずれか一項に記載のデータ転送制御装置。 A first counter for counting the number of data input from the plurality of input ports;
A second counter for counting the number of data output to the output port;
A comparison unit that compares the counter values of the first counter and the second counter;
5. The transfer control unit determines an order in which the data stored in the plurality of storage units is transferred to the output port according to a comparison result in the comparison unit. The data transfer control device according to any one of the above.
前記データを出力ポートより出力する出力工程と、
前記データに設定される締切時間に基づいて、前記データを前記複数の入力ポートから前記出力ポートに転送する転送制御工程と
を備えることを特徴とするデータ転送制御方法。 An input process for inputting data from a plurality of input ports;
An output step of outputting the data from an output port;
And a transfer control step of transferring the data from the plurality of input ports to the output port based on a deadline time set for the data.
前記データ転送制御装置は、
データを入力する複数の入力ポートと、
前記データを出力する出力ポートと、
前記データに設定される締切時間に基づいて、前記データを前記複数の入力ポートから前記出力ポートに転送する転送制御部と
を備え、
前記第1処理装置は、受信した前記データを所定のタイミングで処理することを特徴とするデータ処理装置。 A data processing device including a data transfer control device and a first processing device that receives data transferred via the data transfer control device,
The data transfer control device includes:
Multiple input ports to input data,
An output port for outputting the data;
A transfer control unit configured to transfer the data from the plurality of input ports to the output port based on a deadline time set for the data;
The first processing device processes the received data at a predetermined timing.
前記第2処理装置は、前記所定のタイミングに間に合うよう、前記データについて前記締切時間を設定した上で送信することを特徴とする請求項8に記載のデータ処理装置。 A second processing device for transmitting data to the first processing device via the data transfer control device;
9. The data processing apparatus according to claim 8, wherein the second processing apparatus transmits the data after setting the deadline time so as to meet the predetermined timing.
前記第1処理装置は、受信した前記データについて、処理する際の前記所定のタイミング毎に分類して格納するメモリを更に備え、
前記第2処理装置は、前記メモリ内における、前記所定のタイミングに応じたアドレスを指定して前記データを送信し、
前記転送制御部は、前記データについて指定される前記アドレスを前記締切時間を示す情報として用いることで、前記データを前記複数の入力ポートから前記出力ポートに転送することを特徴とする請求項8に記載のデータ処理装置。 A second processing device for transmitting data to the first processing device via the data transfer control device;
The first processing device further includes a memory that stores the received data classified and stored at each predetermined timing when processing,
The second processing device transmits the data by designating an address corresponding to the predetermined timing in the memory,
The transfer control unit transfers the data from the plurality of input ports to the output port by using the address specified for the data as information indicating the deadline time. The data processing apparatus described.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011000685A JP5659798B2 (en) | 2011-01-05 | 2011-01-05 | Data transfer control device and method, and data processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011000685A JP5659798B2 (en) | 2011-01-05 | 2011-01-05 | Data transfer control device and method, and data processing device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012141890A true JP2012141890A (en) | 2012-07-26 |
JP5659798B2 JP5659798B2 (en) | 2015-01-28 |
Family
ID=46678098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011000685A Expired - Fee Related JP5659798B2 (en) | 2011-01-05 | 2011-01-05 | Data transfer control device and method, and data processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5659798B2 (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07254906A (en) * | 1994-03-16 | 1995-10-03 | Mitsubishi Electric Corp | Shift register having priority processing function, packet communication switching device using it, atm network using it, packet communication system having priority processing and atm communication system with priority processing |
JP2000078188A (en) * | 1998-06-19 | 2000-03-14 | Nippon Telegr & Teleph Corp <Ntt> | Priority route control method and router device |
JP2001268082A (en) * | 2000-03-22 | 2001-09-28 | Nec Corp | Priority controller for same destination address and its method |
JP2008109534A (en) * | 2006-10-27 | 2008-05-08 | Renesas Technology Corp | Packet relay device, and semiconductor chip |
WO2009119633A1 (en) * | 2008-03-26 | 2009-10-01 | 日本電気株式会社 | Data communication processing device and method |
JP2011130249A (en) * | 2009-12-18 | 2011-06-30 | Fujitsu Telecom Networks Ltd | Communication controller |
-
2011
- 2011-01-05 JP JP2011000685A patent/JP5659798B2/en not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07254906A (en) * | 1994-03-16 | 1995-10-03 | Mitsubishi Electric Corp | Shift register having priority processing function, packet communication switching device using it, atm network using it, packet communication system having priority processing and atm communication system with priority processing |
JP2000078188A (en) * | 1998-06-19 | 2000-03-14 | Nippon Telegr & Teleph Corp <Ntt> | Priority route control method and router device |
JP2001268082A (en) * | 2000-03-22 | 2001-09-28 | Nec Corp | Priority controller for same destination address and its method |
JP2008109534A (en) * | 2006-10-27 | 2008-05-08 | Renesas Technology Corp | Packet relay device, and semiconductor chip |
WO2009119633A1 (en) * | 2008-03-26 | 2009-10-01 | 日本電気株式会社 | Data communication processing device and method |
JP2011130249A (en) * | 2009-12-18 | 2011-06-30 | Fujitsu Telecom Networks Ltd | Communication controller |
Also Published As
Publication number | Publication date |
---|---|
JP5659798B2 (en) | 2015-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11916781B2 (en) | System and method for facilitating efficient utilization of an output buffer in a network interface controller (NIC) | |
US7751404B2 (en) | Method, system, and computer program product for high performance bonding resequencing | |
JP3899085B2 (en) | Network equipment | |
US8413153B2 (en) | Methods and systems for sharing common job information | |
US8799536B2 (en) | Data processing apparatus, data processing method and computer-readable medium | |
US9954771B1 (en) | Packet distribution with prefetch in a parallel processing network device | |
JP2002541732A (en) | Automatic service adjustment detection method for bulk data transfer | |
JP2002541732A5 (en) | ||
US9065781B2 (en) | Messaging with flexible transmit ordering | |
US10146468B2 (en) | Addressless merge command with data item identifier | |
US20140344485A1 (en) | Communication system for interfacing a plurality of transmission circuits with an interconnection network, and corresponding integrated circuit | |
EP3461085B1 (en) | Method and device for queue management | |
US8780914B2 (en) | Parallel processing of network packets | |
US9851941B2 (en) | Method and apparatus for handling incoming data frames | |
CN118509399A (en) | Message processing method and device, electronic equipment and storage medium | |
JP4855864B2 (en) | Direct memory access controller | |
JP5659798B2 (en) | Data transfer control device and method, and data processing device | |
WO2024098613A1 (en) | Hmac algorithm processing system and method, device, and non-volatile readable storage medium | |
US9282051B2 (en) | Credit-based resource allocator circuit | |
US9588928B1 (en) | Unique packet multicast packet ready command | |
US9727512B1 (en) | Identical packet multicast packet ready command | |
CN108259382B (en) | 3x256 priority scheduling circuit | |
US10032119B1 (en) | Ordering system that employs chained ticket release bitmap block functions | |
US10341246B1 (en) | Update packet sequence number packet ready command | |
JP5282124B2 (en) | Packet transfer apparatus and packet transfer method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20131007 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140530 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140617 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140818 |
|
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: 20141104 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141117 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5659798 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |