JP2005184440A - Stream packet transmitter, stream packet transmission control method, program and recording medium - Google Patents
Stream packet transmitter, stream packet transmission control method, program and recording medium Download PDFInfo
- Publication number
- JP2005184440A JP2005184440A JP2003422150A JP2003422150A JP2005184440A JP 2005184440 A JP2005184440 A JP 2005184440A JP 2003422150 A JP2003422150 A JP 2003422150A JP 2003422150 A JP2003422150 A JP 2003422150A JP 2005184440 A JP2005184440 A JP 2005184440A
- Authority
- JP
- Japan
- Prior art keywords
- descriptor
- stream
- processing
- information
- packet
- 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.)
- Pending
Links
Images
Abstract
Description
本発明は、一般にストリーム情報と呼ばれる、音声や動画映像などの時間的に連続性をもった情報をネットワークを通じて伝送する装置の送信側の、ストリームパケット送信装置およびストリームパケット送信制御方法に関する。 The present invention relates to a stream packet transmission apparatus and a stream packet transmission control method on the transmission side of an apparatus that transmits information having temporal continuity such as audio and moving image, generally called stream information, over a network.
ネットワークの送受信装置において、装置内で送受信すべき情報を取り扱うCPU(中央処理装置)と、ネットワークを構成するデータリンクに対してパケットを送受信するコントローラの間のデータの受渡しには、一般にDMA(ダイレクトメモリアクセス)が使われている。 In a network transmission / reception apparatus, generally, DMA (direct data transfer) is used for data transfer between a CPU (central processing unit) that handles information to be transmitted / received in the apparatus and a controller that transmits / receives a packet to / from a data link constituting the network. Memory access) is used.
そしてデータ受渡しの効率を向上させるため、一つ一つのデータ、例えばパケット毎に都度DMAを行うのではなく、DMAを行うために必要な情報を記述したディスクリプタを用意し、さらにディスクリプタを連鎖させることで、一連のデータに関してCPUの介在なしに連続的にDMAを行うことができるように構成されている(例えば、特許文献1参照)。 In order to improve the efficiency of data transfer, instead of performing DMA for each piece of data, for example, every packet, a descriptor describing information necessary for performing DMA is prepared, and the descriptors are further chained. Thus, a series of data can be continuously performed without CPU intervention (see, for example, Patent Document 1).
図3は、従来の技術におけるパケットの送信装置の構成を示すブロック図である。CPU301は、まずバス302を通じてメインメモリ303に、送信すべきデータを書き込む。図3には4個のデータが図示されている。
FIG. 3 is a block diagram showing a configuration of a conventional packet transmission apparatus. First, the
つぎにCPU301は、データのメインメモリ303上での開始アドレス、およびその長さの情報を含むディスクリプタを、同じくメインメモリ303に書き込む。ディスクリプタもデータと同じく4個、メインメモリ303に書き込まれている。
Next, the
この状態で、CPU301は、ディスクリプタ処理器304に対して動作の指示を与える。より詳細には、メインメモリ303上の先頭のディスクリプタの書き込みアドレスを与え、そのディスクリプタ情報の読み出しを指示する。
In this state, the
ディスクリプタ処理器304は、読み出したディスクリプタ情報から、データの書き込みアドレスとその長さの情報を読み出し、DMAコントローラ305に与える。DMAコントローラ305は、バス302を通じてメインメモリ303からデータを読み出し、送信キュー306に転送する。
The
データリンクコントローラ307は、ネットワークの状態を調べ、ネットワークへの送信が可能となった時、送信キュー306からデータを読み取り、ネットワークへのデータの送信を行う。
The
ディスクリプタの処理が1つ完了すると、割り込み発生器308が、CPU301への割り込み信号を発生する。
When one descriptor process is completed, the
ディスクリプタ処理器304は、メインメモリ303上に書き込まれたディスクリプタがすべて処理されるまで上記の動作を繰り返す。これにより、最初にCPU301がメインメモリ303に書き込んだデータは、すべてネットワークから送信されることになる。
The
このように、CPU301は、一度、送信すべきデータとそれに対応するディスクリプタを用意し、ディスクリプタ処理器304の動作を開始させることで、データの送信を行うことができる。
しかしながら、一般にストリーム情報と呼ばれる、音声や動画映像などの時間的に連続性をもった情報をネットワーク送信する場合、図3に示したような送信装置を用いると、送信されるパケットが、連続して処理されるディスクリプタの単位でバースト状になる現象が発生する。 However, when transmitting information that is continuous in time, such as audio and video, generally called stream information, using the transmission device as shown in FIG. 3, packets to be transmitted are continuous. A phenomenon occurs in which a descriptor is processed in bursts.
すなわち、一度に用意されたディスクリプタおよびデータの処理は連続的に行われるため、それらのパケットの送出間隔は短く、次にディスクリプタとデータが用意されるまでは送信が行われないので、この間の送出間隔は長くなる。 In other words, since descriptors and data prepared at a time are continuously processed, the transmission interval of those packets is short, and transmission is not performed until the next time descriptors and data are prepared. The interval becomes longer.
図4は、図3に示す送信装置による送信パケットおよび割り込み信号を示すタイムチャートである。上述の現象によって送出されるパケットは、図4(a)のようにバースト状になる。このような時間軸のある一部にパケットが偏ると、瞬時的にネットワーク負荷が高まり、他のネットワークを流れるパケットとの干渉を起こし易くなる。その結果、パケットの伝送時間にばらつきが発生したり、干渉が甚だしい場合には、パケットの破棄が起こる。 FIG. 4 is a time chart showing a transmission packet and an interrupt signal by the transmission apparatus shown in FIG. Packets sent out due to the above phenomenon are in a burst form as shown in FIG. If the packet is biased to such a part of the time axis, the network load increases instantaneously, and interference with a packet flowing through another network is likely to occur. As a result, when packet transmission time varies or interference is severe, the packet is discarded.
ストリーム情報は、ビットレートなどで表現される、時間あたりの情報量が決まっている。したがって、ストリーム情報の本来のビットレートに応じてパケット間隔が伸縮し、相互のパケット間隔が広がることで、パケットが時間軸上でできるだけ分散化することが、ネットワークでの伝送品質を確保する上で望ましい。 The stream information has a fixed amount of information per time expressed by a bit rate or the like. Therefore, the packet interval expands and contracts according to the original bit rate of the stream information, and the mutual packet interval widens, so that the packets are dispersed as much as possible on the time axis in order to ensure transmission quality in the network. desirable.
図3に示す従来の送信装置においても、データリンクコントローラ307の処理速度を制限し、ストリーム情報のビットレートに近付けると、ネットワークに送出されるパケットの間隔は広がり、図4(b)のようになる。
Also in the conventional transmission apparatus shown in FIG. 3, when the processing speed of the
ところが、ネットワークの送信装置として機能するためには、ストリーム情報以外のパケットもまた送信する必要がある。例えば、ネットワークのアドレス情報を交換したり、さまざまな他のネットワーク上の装置からの問い合わせに応答する必要がある。また、ストリーム情報のやりとりに付随しても、ストリーム情報の制御情報、管理情報などを送ることが必要な場合も出てくる。 However, in order to function as a network transmission device, packets other than stream information must also be transmitted. For example, it is necessary to exchange network address information and respond to inquiries from various other devices on the network. In addition, there are cases where it is necessary to send control information, management information, and the like of stream information even with the exchange of stream information.
このようにストリーム情報以外のパケットの送信が行われるとき、上述のようにデータリンクコントローラ307の処理速度を制限することでパケット間隔を広げていると、図4(c)のようにストリーム情報以外のパケット401が途中に割り込み、ストリーム情報を運ぶパケットは本来の送出タイミングからずれてしまう。
When packets other than stream information are transmitted in this way, if the packet interval is widened by limiting the processing speed of the
すなわち、ストリーム情報の送信の完了時刻が、ストリーム情報の送信が継続している間に発生した、ストリーム情報以外のパケットの数によって変化してしまうことになり、場合によっては、音声や動画映像が途切れたりする可能性がある。 That is, the completion time of transmission of the stream information changes depending on the number of packets other than the stream information generated while the transmission of the stream information is continued. There is a possibility of interruption.
また、データリンクコントローラ307の処理速度を制限することは、他のネットワーク上の装置からの問い合わせに対する応答速度も同時に制限することになる。
Limiting the processing speed of the
このように、従来のパケットの送信装置においては、ストリーム情報を運ぶパケットの分散化と、ストリーム情報以外のパケットの処理の高速化を両立させることは困難であった。 As described above, in the conventional packet transmission apparatus, it is difficult to achieve both the distribution of packets carrying stream information and the high-speed processing of packets other than the stream information.
本発明は、上記従来の技術における課題を解決するもので、ストリーム情報のパケットの分散化とストリーム情報以外のパケットの処理の高速化を両立させる、ストリームパケット送信装置およびストリームパケット送信制御方法等を提供することを目的とする。 The present invention solves the above-described problems in the prior art, and provides a stream packet transmission device, a stream packet transmission control method, and the like that achieve both the dispersion of packets of stream information and the speed of processing of packets other than stream information. The purpose is to provide.
上述した課題を解決するために、第1の本発明は、
所定の周期ごとにイベント信号を発生するタイマー手段と、
連続的に発生するストリーム情報を運ぶパケットの情報を記述した第2のディスクリプタを前記イベント信号の発生するタイミングに応じて処理し、ストリーム情報以外の情報を運ぶパケットの情報を記述した第1のディスクリプタを随時処理する、ディスクリプタ処理手段とを備えた、ストリームパケット送信装置である。
In order to solve the above-described problem, the first aspect of the present invention provides:
Timer means for generating an event signal at predetermined intervals;
A first descriptor describing information of a packet carrying information other than stream information by processing a second descriptor describing information of a packet carrying continuously generated stream information according to the timing at which the event signal is generated. Is a stream packet transmitting device comprising descriptor processing means for processing the data as needed.
第2の本発明は、
前記ディスクリプタ処理手段は、前記イベント信号の発生するタイミングに応じて前記第2のディスクリプタの処理を開始する際に、前記第1のディスクリプタの処理を行なっている場合には、前記第1のディスクリプタの処理が終わった後に続けて、前記イベント信号の発生するタイミングに関係なく前記第2のディスクリプタの処理をする、第1の本発明のストリームパケット送信装置である。
The second aspect of the present invention
When the descriptor processing means is processing the first descriptor when starting the processing of the second descriptor in accordance with the timing at which the event signal is generated, the descriptor processing means The stream packet transmitting apparatus according to the first aspect of the present invention, which processes the second descriptor continuously after the processing is completed, regardless of the timing at which the event signal is generated.
第3の本発明は、
さらに、前記ストリーム情報の単位時間あたりのデータ量と、1つのパケットに含まれるデータ量とに基づいてパケット送信間隔を算出し、前記タイマー手段に前記所定の周期として前記パケット送信間隔を設定するタイマー設定手段を備えた、第1または第2の本発明のストリームパケット送信装置である。
The third aspect of the present invention provides
Further, a timer that calculates a packet transmission interval based on a data amount per unit time of the stream information and a data amount included in one packet, and sets the packet transmission interval as the predetermined period in the timer means It is the stream packet transmitter of the 1st or 2nd this invention provided with the setting means.
第4の本発明は、
さらに、あらかじめ設定された所定の数の前記第2のディスクリプタの処理の完了によって割り込み信号を発生する割り込み発生手段を備えた、第1乃至第3のいずれかの本発明のストリームパケット送信装置である。
The fourth invention relates to
Furthermore, the stream packet transmitting apparatus according to any one of the first to third aspects of the present invention, further comprising interrupt generation means for generating an interrupt signal upon completion of processing of a predetermined number of second descriptors set in advance. .
第5の本発明は、
前記ディスクリプタ処理手段は、同一の単位時間あたりのデータ量を有する複数の前記ストリーム情報を同一の時間帯に送信する場合には、前記タイマー手段からの前記イベント信号毎に、前記同一の時間帯に送信する複数の前記ストリーム情報の数の前記第2のディスクリプタを処理する、第1乃至第4のいずれかの本発明のストリームパケット送信装置である。
The fifth aspect of the present invention relates to
When the descriptor processing means transmits a plurality of the stream information having the same data amount per unit time in the same time zone, the descriptor processing means takes the same time zone for each event signal from the timer means. The stream packet transmitting apparatus according to any one of the first to fourth aspects of the present invention, which processes the second descriptors corresponding to the number of the plurality of pieces of stream information to be transmitted.
第6の本発明は、
所定の周期ごとにイベント信号を発生するステップと、
ストリーム情報を運ぶパケットの情報を記述した第2のディスクリプタを前記イベント信号の発生するタイミングに応じて処理するステップと、
ストリーム情報以外の情報を運ぶパケットの情報を記述した第1のディスクリプタを随時処理するステップとを備えた、ストリームパケット送信制御方法である。
The sixth invention relates to
Generating an event signal at predetermined intervals;
Processing a second descriptor describing information of a packet carrying stream information according to a timing at which the event signal is generated;
A stream packet transmission control method comprising: a step of processing a first descriptor describing information of a packet carrying information other than stream information as needed.
第7の本発明は、
第1乃至第5のいずれかの本発明のストリームパケット送信装置の、前記第1のディスクリプタ及び前記第2のディスクリプタを処理する前記ディスクリプタ処理手段としてコンピュータを機能させるためのプログラムである。
The seventh invention relates to
A program for causing a computer to function as the descriptor processing means for processing the first descriptor and the second descriptor in any of the first to fifth stream packet transmitting apparatuses of the present invention.
第8の本発明は、
第7の本発明のプログラムを担持した記録媒体であって、コンピュータで利用可能な記録媒体である。
The eighth invention relates to
A recording medium carrying the program of the seventh aspect of the present invention, which can be used by a computer.
本発明により、ストリーム情報のパケットの分散化とストリーム情報以外のパケットの処理の高速化を両立させる、ストリームパケット送信装置およびストリームパケット送信制御方法等を提供することができる。 According to the present invention, it is possible to provide a stream packet transmission apparatus, a stream packet transmission control method, and the like that can achieve both the distribution of packets of stream information and the high-speed processing of packets other than stream information.
以下、図面を参照しながら、本発明の実施の形態にかかるストリームパケット送信装置について説明する。 Hereinafter, a stream packet transmitting apparatus according to an embodiment of the present invention will be described with reference to the drawings.
(実施の形態1)
図1は、本発明の実施の形態1にかかるストリームパケット送信装置のブロック図である。図1を用いて、本実施の形態1のストリームパケット送信装置の構成を、その動作とともに説明する。
(Embodiment 1)
FIG. 1 is a block diagram of a stream packet transmitting apparatus according to the first embodiment of the present invention. The configuration of the stream packet transmitting apparatus according to the first embodiment will be described together with the operation thereof using FIG.
CPU101は、バス102を通じて、送信すべきデータ、およびそのデータに対するディスクリプタをメインメモリ103に書き込む。
The
ただし、ストリーム情報以外のデータと、ストリーム情報のデータを分離し、図1に示すように、ストリーム情報以外のデータのみからなるデータ1と、データ1の開始アドレスと長さの情報を含むディスクリプタ1、および、ストリーム情報のみからなるデータ2と、データ2の開始アドレスと長さの情報を含むディスクリプタ2を、メインメモリ103に書き込む。
However, the data other than the stream information and the data of the stream information are separated, and as shown in FIG. 1, the
なお、図1では、データ1、データ2ともに4つのデータで構成されているが、これらの個々のデータは、いずれもネットワークに送信する1パケットで送信できるサイズである。つまり、1つのデータが、1つの送信パケットに対応するようになっている。また、データ1およびデータ2を4つのデータで構成しているとしたのは例示であって、いずれも、1以上のいくつのデータで構成されていてもよい。
In FIG. 1, both
第1のディスクリプタ処理器104は、ストリーム情報以外のデータに対するディスクリプタの処理を行う。すなわち、第1のディスクリプタ処理器104はCPU101からの動作開始の指示を受けると直ちにメインメモリ103上のディスクリプタ1を読み取り、データ1の開始アドレスとデータ1の長さの情報を、DMAコントローラ105に与える。
The
第2のディスクリプタ処理器106は、ストリーム情報のデータに対するディスクリプタの処理を行う。第2のディスクリプタ処理器106は、メインメモリ103上のディスクリプタ2を読み取り、データ2の開始アドレスとデータ2の長さの情報を、DMAコントローラ105に与える。
The
ただし、第2のディスクリプタ処理器106は、CPU101から動作開始の指示があってもすぐにはディスクリプタ2の処理には取り掛からず、所定の周期ごとに発生するタイマー107からのイベント信号の到着を待ってディスクリプタ2の処理を開始する。さらに、第2のディスクリプタ処理器106の動作開始にあたってはDMAコントローラ105の処理状況を問い合わせ、DMAコントローラ105が第1のディスクリプタ処理器104から与えられた情報を処理中の場合は、その処理の終了を待つ。
However, the
そして、その第1のディスクリプタ処理器104から与えられた情報に対するDMAコントローラ105の処理が終了した後に続けて、タイマー107からのイベント信号のタイミングとは関係なく、待たせていた第2のディスクリプタ処理器106の処理を開始する。
Then, after the processing of the
なお、第1のディスクリプタ処理器104と第2のディスクリプタ処理器106を合わせた構成が、本発明のディスクリプタ処理部の一例である。また、ディスクリプタ1およびディスクリプタ2は、それぞれ、本発明の第1のディスクリプタおよび第2のディスクリプタの一例である。また、タイマー107は、本発明のタイマー手段の一例である。
A configuration in which the
DMAコントローラ105は、第1のディスクリプタ処理器104および第2のディスクリプタ処理器106から与えられたディスクリプタ1または2の情報を基に、バス102を通じて、メインメモリ103からデータ1あるいはデータ2を読み出し、送信キュー108に転送する。
The
データリンクコントローラ109は、ネットワークの状態を調べ、ネットワークへの送信が可能になった時、送信キュー108からデータを読み取り、ネットワークへのデータの送信を行う。
The
ストリーム数レジスタ110は、タイマー107が発生するイベント信号ごとに、第2のディスクリプタ処理器106が処理すべきディスクリプタの数を保持する。第2のディスクリプタ処理器106はイベント信号を受け取った時、ストリーム数レジスタ110を参照し、一度に処理すべきディスクリプタの数を決定する。ストリーム数レジスタ110の設定は、CPU101によって行われる。
The
周期レジスタ111は、タイマー107が発生するイベント信号の発生周期の情報を保持する。タイマー107は、動作開始時に周期レジスタ111の値を読み取り、その値に対応する時間後にイベント信号を発生する。また同時に、ふたたび周期レジスタ111の値を読み取る。これにより、タイマー107が発生するイベント信号の周期は、周期レジスタ111の設定値に対応したものとなる。周期レジスタ111の設定は、CPU101によって行われる。なお、周期レジスタ111は、本発明のタイマー設定手段の一例である。
The
割り込み単位レジスタ112は、第2のディスクリプタ処理器106が処理したディスクリプタの数の何個おきに割り込み信号を発生させるかという情報を保持する。第2のディスクリプタ処理器106が1つのディスクリプタの処理を終えると、処理数カウンタ113は、それをカウントしていく。なお、ここで割り込み単位レジスタ112に保持させる、ディスクリプタの数の何個おきに割り込み信号を発生させるかという情報が、本発明の、あらかじめ設定された所定の数の一例である。
The interrupt
割り込み発生器114では、割り込み単位レジスタ112に保持された値と、処理数カウンタ113のカウント値を比較し、一致した場合には割り込み信号をCPU101に対して発生する。なお、割り込み発生器114は、本発明の割り込み発生手段の一例である。
The interrupt
また、割り込み信号を発生すると同時に、処理数カウンタ113のカウント値を0とする。これにより、割り込み発生器114の発生する割り込み信号は、第2のディスクリプタ処理器106が処理したディスクリプタの数が、割り込み単位レジスタ112に設定された値に達するごとに発生する。なお、割り込み単位レジスタ112の設定は、CPU101によって行われる。
At the same time as generating an interrupt signal, the count value of the
図2は、本実施の形態1のストリームパケット送信装置によって得られる送信パケットおよび割り込み信号の様子を示すタイムチャートである。 FIG. 2 is a time chart showing the state of a transmission packet and an interrupt signal obtained by the stream packet transmission device according to the first embodiment.
まず、図2(a)は、図3に示す従来例と同じく、ストリーム情報を第1のディスクリプタ処理器104によって送信した場合のパケットの様子である。パケットが偏って存在するタイミングと、パケットが存在しないタイミングがあり、他のパケットと干渉しやすい状態である。
First, FIG. 2A shows the state of a packet when stream information is transmitted by the
図2(b)は、第2のディスクリプタ処理器106を用い、ストリーム数レジスタには1を、周期レジスタには周期Tを設定した場合のパケットの様子である。パケット間隔が広がり、パケットの位置が分散化される。周期レジスタに設定する周期Tは、ストリーム情報の単位時間あたりのデータの量、すなわちビットレートをB、一つのパケットによって運ばれるストリーム情報のデータの量をLとするとき、T=L/Bで算出することができる。この算出はCPU101によって行うことができる。なお、周期Tが、本発明のパケット送信間隔の一例である。
FIG. 2 (b) shows the state of a packet when the
図2(c)は、割り込み単位レジスタ112に、値として3を設定した場合の割り込み信号を示している。ストリーム情報のネットワークへの送信にあたっては、第2のディスクリプタ処理器106が3つのディスクリプタの処理を終えるごとに、連続的に割り込み信号が発生する。
FIG. 2C shows an interrupt signal when 3 is set as a value in the interrupt
従来例においては、一つ一つのディスクリプタの処理、すなわち、一つ一つのパケットの送信に対して割り込み信号が発生する。図4(d)は、従来例における割り込み信号の発生タイミングを示しているが、これと図2(c)を比較すると、割り込み信号の発生頻度が1/3に緩和されていることがわかる。 In the conventional example, an interrupt signal is generated for each descriptor processing, that is, for each packet transmission. FIG. 4D shows the generation timing of the interrupt signal in the conventional example, and comparing this with FIG. 2C, it can be seen that the generation frequency of the interrupt signal is relaxed to 1/3.
図2(d)は、上記のように各レジスタが設定され、ストリーム情報が間隔を保ち送信されている状態で、ストリーム情報以外のパケットの送信が行われた場合の送信パケットの様子である。 FIG. 2D shows a state of a transmission packet when a packet other than the stream information is transmitted in a state where each register is set as described above and the stream information is transmitted at intervals.
ストリーム以外のパケットについては、前述のように、データ1としてメインメモリ103上に書き込まれ、そのディスクリプタは、ストリーム情報のデータであるデータ2に対するディスクリプタ2とは独立したディスクリプタ1となっている。
As described above, the packets other than the stream are written on the
さらに、ディスクリプタ1の処理は、ディスクリプタ2を処理する第2のディスクリプタ処理器106より優先度の高い、第1のディスクリプタ処理器104が行う。このため本来t1のタイミングで処理されるはずのストリーム情報を運ぶパケット202は遅延させられ、先にストリーム情報以外のデータを運ぶパケット201が送信される。
Further, the
このようにストリーム情報以外のデータを運ぶパケットは、ストリーム情報を運ぶパケットの有無にかかわらず優先的に送信されるため、例えば他の装置からの問い合わせに対する応答などにおいて、その応答速度を落とすことはない。 Thus, packets carrying data other than stream information are preferentially transmitted regardless of the presence or absence of packets carrying stream information. For example, in response to an inquiry from another device, the response speed is not reduced. Absent.
また、従来例の図4(c)と比較して、その送信が遅れさせられたパケット202に続くパケット203は、本来のタイミングに送信されていることがわかる。これは、パケットの送信タイミングが、直前に送信されたパケットとの相対的な時間差で決まる従来例とは異なり、送信タイミングがタイマー107の発生するイベント信号によって決まるためである。
Further, it can be seen that the
図2(e)は、複数のストリーム情報を送信した場合のパケットの様子である。ここでは、2つのストリーム情報を送信した場合の例を示している。個々のストリームのビットレートが同じであれば、周期レジスタ111に設定する値は、前述の計算式、T=L/Bで算出される値でよく、変更する必要はない。その代わり、ストリーム数が2の場合であれば、ストリーム数レジスタにその値として2を設定する。ここで、2つのストリーム情報のパケットが同じタイミングで送信されている時間帯が、本発明の同一の時間帯の一例である。
FIG. 2E shows the state of a packet when a plurality of pieces of stream information are transmitted. In this example, two pieces of stream information are transmitted. If the bit rates of the individual streams are the same, the value set in the
データ2、ディスクリプタ2については、ストリーム分用意する必要がある。ただし、同じデータを異なる送信先に送る場合には、データ2については共用することもできる。
For
前述の設定により、第2のディスクリプタ処理器106は、タイマー107からのイベント信号の到来ごとに2つのディスクリプタを処理するので、図2(e)のような送信間隔でストリームパケットが送出されることになる。
With the above setting, the
なお、本実施の形態1では、割り込み単位レジスタ112に3を設定することにより、3つのパケットの送信処理ごとに割り込み信号を発生させることとしたが、周期的に割り込み信号を発生させるのに限らず、全データのパケットの送信終了後に1回だけ割り込み信号を発生させるようにしてもよい。割り込み単位レジスタ112に設定する値に、メインメモリ103に書き込んだディスクリプタ2の個数、即ちデータ2の個数を設定することにより、全データのパケット終了時に1度だけ割り込み信号を発生させるようにできる。
In the first embodiment, by setting 3 in the interrupt
但し、連続するストリーム情報の送信時間が長い場合には、パケット送信中の送信状態を定期的に確認するために、定期的に割り込み信号を発生させるようにすることが好ましい。送信するストリーム情報に応じて、割り込み単位レジスタ112に設定する値を調整すればよい。 However, when the transmission time of continuous stream information is long, it is preferable to periodically generate an interrupt signal in order to periodically check the transmission state during packet transmission. The value set in the interrupt unit register 112 may be adjusted according to the stream information to be transmitted.
また、処理数カウンタ113に、第2のディスクリプタ処理器106が処理したディスクリプタの数を加算していき、割り込み発生器114が、その値と割り込み単位レジスタ112に保持されている値とを比較して割り込み信号を発生させることとしたが、最初に処理数カウンタ113に割り込み単位レジスタ112に保持されている値を設定しておき、第2のディスクリプタ処理器106がディスクリプタを処理するごとに処理数カウンタ113の値を減算し、処理数カウンタ113の値が0になったときに割り込み信号を発生させるようにしてもよい。この場合、処理数カウンタ113がカウントされるごとに、割り込み単位レジスタ112に保持されている値と比較する必要がなくなる。
Further, the number of descriptors processed by the
また、本実施の形態1では、ディスクリプタ処理手段を、ストリーム情報以外の情報のディスクリプタ1を処理する第1のディスクリプタ処理器104と、ストリーム情報のディスクリプタ2を処理する第2のディスクリプタ処理器106の2つのディスクリプタ処理器の構成としたが、ストリーム情報とストリーム情報以外の情報の両方のディスクリプタを取り扱う1つのディスクリプタ処理器で構成してもよい。
In the first embodiment, the descriptor processing means includes a
以上に説明したように、本発明のストリームパケット送信装置では、タイマー107の発生するイベント信号に応じてストリーム情報のディスクリプタ2を処理するため、送信するストリーム情報のパケットの送信間隔を、タイマー107によって所望の間隔に調節することが可能となる。
As described above, in the stream packet transmitting apparatus of the present invention, the
また、ストリーム情報のパケット間隔を広げた状態においてもストリーム情報以外のパケットについては優先的にそのディスクリプタ1を取り扱うので、問い合わせに対する応答処理などを、処理速度を低下させることなく行うことができる。
Even in a state where the packet interval of the stream information is widened, the
また、複数のストリームを扱う場合であっても、単独のストリームのビットレートが同じであれば、タイマー107が発生すべきイベント信号の周期は同じであり、ストリーム数の増減のつど設定内容を変更する手順を省くことができる。
Even when handling multiple streams, if the bit rate of a single stream is the same, the period of the event signal to be generated by the
また、従来のパケットの送信装置に比べて、割り込み信号の発生頻度を下げることができ、割り込み信号を受け付け、その処理を行うCPU101の処理負荷を低減させることができる。
Also, compared to a conventional packet transmission device, the frequency of generation of interrupt signals can be reduced, and the processing load on the
なお、本発明のプログラムは、上述した本発明のストリームパケット送信装置のタイマー手段、ディスクリプタ処理手段、タイマー設定手段、割り込み発生手段の機能をコンピュータにより実行させるためのプログラムであって、コンピュータと協働して動作するプログラムである。 The program of the present invention is a program for causing a computer to execute the functions of the timer means, descriptor processing means, timer setting means, and interrupt generating means of the above-described stream packet transmitting apparatus of the present invention, and cooperates with the computer. It is a program that operates as
また、本発明の記録媒体は、上述した本発明のストリームパケット送信装置のタイマー手段、ディスクリプタ処理手段、タイマー設定手段、割り込み発生手段の全部又は一部の機能をコンピュータにより実行させるためのプログラムを担持した記録媒体であり、コンピュータにより読み取り可能かつ、読み取られた前記プログラムが前記コンピュータと協働して利用される記録媒体である。 The recording medium of the present invention carries a program for causing a computer to execute all or some of the functions of the timer means, descriptor processing means, timer setting means, and interrupt generating means of the above-described stream packet transmitting apparatus of the present invention. The recording medium can be read by a computer and the read program is used in cooperation with the computer.
また、本発明のプログラムの一利用形態は、コンピュータにより読み取り可能な記録媒体に記録され、コンピュータと協働して動作する態様であっても良い。 Further, one usage form of the program of the present invention may be an aspect in which the program is recorded on a computer-readable recording medium and operates in cooperation with the computer.
また、記録媒体としては、ROM等が含まれ、伝送媒体としては、インターネット等の伝送媒体、光・電波・音波等が含まれる。 The recording medium includes a ROM and the like, and the transmission medium includes a transmission medium such as the Internet, light, radio waves, sound waves, and the like.
また、上述した本発明のコンピュータは、CPU等の純然たるハードウェアに限らず、ファームウェアや、OS、更に周辺機器を含むものであっても良い。 The computer of the present invention described above is not limited to pure hardware such as a CPU, and may include firmware, an OS, and peripheral devices.
なお、以上説明した様に、本発明の構成は、ソフトウェア的に実現しても良いし、ハードウェア的に実現しても良い。 As described above, the configuration of the present invention may be realized by software or hardware.
本発明にかかる、ストリームパケット送信装置およびストリームパケット送信制御方法は、ストリーム情報のパケットの分散化とストリーム情報以外のパケットの処理の高速化を両立させる効果を有し、音声や動画映像などの時間的に連続性をもったストリーム情報をネットワークを通じて伝送する装置の送信側の、ストリームパケット送信装置およびストリームパケット送信制御方法等として有用である。 The stream packet transmission device and the stream packet transmission control method according to the present invention have the effect of achieving both the dispersion of packets of stream information and the speeding up of the processing of packets other than the stream information, and the time for audio and video images. In particular, the present invention is useful as a stream packet transmission apparatus, a stream packet transmission control method, and the like on the transmission side of an apparatus that transmits stream information having continuity through a network.
101 CPU
102 バス
103 メインメモリ
104 第1のディスクリプタ処理器
105 DMAコントローラ
106 第2のディスクリプタ処理器
107 タイマー
108 送信キュー
109 データリンクコントローラ
110 ストリーム数レジスタ
111 周期レジスタ
112 割り込み単位レジスタ
113 処理数カウンタ
114 割り込み発生器
101 CPU
102
Claims (8)
連続的に発生するストリーム情報を運ぶパケットの情報を記述した第2のディスクリプタを前記イベント信号の発生するタイミングに応じて処理し、ストリーム情報以外の情報を運ぶパケットの情報を記述した第1のディスクリプタを随時処理する、ディスクリプタ処理手段とを備えた、ストリームパケット送信装置。 Timer means for generating an event signal at predetermined intervals;
A first descriptor describing information of a packet carrying information other than stream information by processing a second descriptor describing information of a packet carrying continuously generated stream information according to the timing at which the event signal is generated. A stream packet transmitting device comprising descriptor processing means for processing the data as needed.
ストリーム情報を運ぶパケットの情報を記述した第2のディスクリプタを前記イベント信号の発生するタイミングに応じて処理するステップと、
ストリーム情報以外の情報を運ぶパケットの情報を記述した第1のディスクリプタを随時処理するステップとを備えた、ストリームパケット送信制御方法。 Generating an event signal at predetermined intervals;
Processing a second descriptor describing information of a packet carrying stream information according to a timing at which the event signal is generated;
A stream packet transmission control method comprising: a step of processing a first descriptor describing information of a packet carrying information other than stream information as needed.
A recording medium carrying the program according to claim 7 and usable by a computer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003422150A JP2005184440A (en) | 2003-12-19 | 2003-12-19 | Stream packet transmitter, stream packet transmission control method, program and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003422150A JP2005184440A (en) | 2003-12-19 | 2003-12-19 | Stream packet transmitter, stream packet transmission control method, program and recording medium |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005184440A true JP2005184440A (en) | 2005-07-07 |
Family
ID=34783110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003422150A Pending JP2005184440A (en) | 2003-12-19 | 2003-12-19 | Stream packet transmitter, stream packet transmission control method, program and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005184440A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013131817A (en) * | 2011-12-20 | 2013-07-04 | Fujitsu Ltd | Packet shaping apparatus |
US11611801B2 (en) * | 2020-05-11 | 2023-03-21 | Realtek Semiconductor Corp. | Control method applied to electronic device and associated electronic device and processor |
-
2003
- 2003-12-19 JP JP2003422150A patent/JP2005184440A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013131817A (en) * | 2011-12-20 | 2013-07-04 | Fujitsu Ltd | Packet shaping apparatus |
US11611801B2 (en) * | 2020-05-11 | 2023-03-21 | Realtek Semiconductor Corp. | Control method applied to electronic device and associated electronic device and processor |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11843529B2 (en) | Slave-to-master data and out-of-sequence acknowledgements on a daisy-chained bus | |
JP2006217476A (en) | Communication method, communication system, and cable/radio bridge apparatus | |
JP2019054350A (en) | Transfer device, transfer method, and program | |
WO2014103144A1 (en) | Interface device and memory bus system | |
JPH10207822A (en) | Interruption processing method for high speed i/o controller | |
JP2019165380A (en) | Transfer control device, transfer control method, and program | |
KR101946532B1 (en) | Method and apparatus for arbitration of time-sensitive data transmissions | |
JP2008172515A (en) | Transmitter and method, communication device, and program | |
CN102156662A (en) | Method and equipment for processing data | |
JP2005167965A (en) | Packet processing method and apparatus | |
JP2011040895A (en) | Information processing apparatus, control method thereof and program | |
US6889265B2 (en) | Apparatus and method to allow and synchronize schedule changes in a USB enhanced host controller | |
JP2005184440A (en) | Stream packet transmitter, stream packet transmission control method, program and recording medium | |
JP2007088709A (en) | Packet communication apparatus and processing method thereof | |
KR100950528B1 (en) | Apparatus and method for processing multiple data in each layer | |
WO2018167838A1 (en) | Relay device and data transfer method | |
JP2003069985A (en) | Network imaging apparatus | |
JP6127872B2 (en) | Arithmetic processing device and control method of arithmetic processing device | |
JP6785009B2 (en) | Communication device and control method of communication device | |
JP2003143221A (en) | Tcp/ip engine | |
JPS59148929A (en) | Communication control system of data | |
JP2023081630A (en) | Communication control device, information processing equipment, communication control method, information processing method and program | |
JPH07191934A (en) | Double bus device | |
JP2013090200A (en) | Memory management method of communication device, communication device, and program | |
JP6542513B2 (en) | USB transfer device, USB transfer system and USB transfer method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061205 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080905 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080916 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081028 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20081028 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20081202 |