JP2015119255A - Transmission device and transmission method - Google Patents
Transmission device and transmission method Download PDFInfo
- Publication number
- JP2015119255A JP2015119255A JP2013260130A JP2013260130A JP2015119255A JP 2015119255 A JP2015119255 A JP 2015119255A JP 2013260130 A JP2013260130 A JP 2013260130A JP 2013260130 A JP2013260130 A JP 2013260130A JP 2015119255 A JP2015119255 A JP 2015119255A
- Authority
- JP
- Japan
- Prior art keywords
- header
- data
- control information
- acquired
- headers
- 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 transmission apparatus and a transmission method, and more particularly, to a transmission apparatus and a transmission method for transmitting data with a header added.
近年、USB(Universal Serial Bus)3.0等、シリアルインタフェース(または、シリアルバス)の高速化がすすめられている。 In recent years, speeding up of serial interfaces (or serial buses) such as USB (Universal Serial Bus) 3.0 has been promoted.
このような高速シリアルインタフェースを備えた送信装置では、送信パケットごとにヘッダを付加する場合に、期待したスループットを得られないことがある。例えば、装置内のパケットデータの処理にDMA(Direct Memory Access)を用いている場合、送信パケット単位で一旦DMAを終了し、ヘッダを付加した後に再度DMAを開始するといったCPU(Central Processing Unit)の処理が発生する。この場合、CPUの割り込みで発生するレイテンシや処理時間により、パケット間に転送レートに比べて大きな間隔が生じ、期待したスループットが得られない。 In a transmission apparatus having such a high-speed serial interface, the expected throughput may not be obtained when a header is added for each transmission packet. For example, when DMA (Direct Memory Access) is used for processing packet data in the device, a CPU (Central Processing Unit) that once terminates DMA in units of transmission packets, adds a header, and then starts DMA again. Processing occurs. In this case, due to the latency and processing time generated by the CPU interrupt, a larger interval than the transfer rate occurs between packets, and the expected throughput cannot be obtained.
さらに、高速シリアルインタフェースを備えた送信装置では、このようなヘッダ付加処理によるCPUの占有率が上昇し、システムの処理性能が低下することがある。例えばUSB3.0は、USB2.0に比べ約10倍の転送レートを持っている。そのため、USB2.0に比べ約10倍のヘッダ付加処理をCPUが行わなければならず、必然的にCPUの占有率が上昇し、他のアプリケーションの処理に影響する。 Furthermore, in a transmission apparatus equipped with a high-speed serial interface, the CPU occupancy rate due to such header addition processing may increase, and the processing performance of the system may decrease. For example, USB 3.0 has a transfer rate about 10 times that of USB 2.0. For this reason, the CPU must perform header addition processing about 10 times that of USB 2.0, which inevitably increases the CPU occupancy rate and affects the processing of other applications.
シリアルインタフェースの高速化を実現するための技術として、パケットに対するヘッダの付加をCPUではなく、ハードウェアで行う方法が知られている。例えば、特許文献1には、メモリに記憶されたヘッダとデータとをハードウェアで結合し、送信パケットを組み立てる、データ送信装置が開示されている。
As a technique for realizing high-speed serial interface, a method of adding a header to a packet not by a CPU but by hardware is known. For example,
なお、関連技術として、特許文献2には、IEEE1394規格に従ったアイソクロナスパケットを生成する技術が開示されている。また、特許文献3には、データを複数のパケットに分割し、サブヘッダを付加して、複数のポートを介して転送する、送受信システムが開示されている。
As a related technique,
しかしながら、上述の特許文献1に開示されたデータ送信装置では、パケットごとにヘッダを用意する必要があるため、パケット数が多い場合には、ヘッダを格納するために大きなサイズのメモリが必要になるという問題がある。
However, in the data transmission device disclosed in
本発明の目的は、上述した課題を解決し、少ないメモリサイズで、データ転送を高速化できる、送信装置、及び、その送信方法を提供することである。 An object of the present invention is to solve the above-described problems, and to provide a transmission apparatus and a transmission method therefor that can increase data transfer speed with a small memory size.
本発明の送信装置は、データに付与すべきヘッダを当該ヘッダに係る制御情報と関連づけて記憶するヘッダ情報記憶手段と、1以上のデータが記憶されたデータ記憶手段から前記1以上のデータの各々を順番に取得し、前記ヘッダ情報記憶手段から取得したヘッダに係る前記制御情報に従って、当該取得したデータに当該ヘッダを付加し、出力する、ヘッダマージ手段と、を備える。 Each of the one or more data is transmitted from a header information storage unit that stores a header to be added to the data in association with control information related to the header, and a data storage unit that stores one or more data. Header merging means for adding the header to the obtained data and outputting the data according to the control information relating to the header obtained from the header information storage means.
本発明の送信方法は、データに付与すべきヘッダを当該ヘッダに係る制御情報と関連づけて記憶し、1以上のデータが記憶されたデータ記憶手段から前記1以上のデータの各々を順番に取得し、前記取得したヘッダに係る前記制御情報に従って、当該取得したデータに当該ヘッダを付加し、出力する。 In the transmission method of the present invention, a header to be added to data is stored in association with control information related to the header, and each of the one or more data is sequentially acquired from a data storage unit in which the one or more data is stored. In accordance with the control information related to the acquired header, the header is added to the acquired data and output.
本発明の効果は、少ないメモリサイズで、データ転送を高速化できることである。 The effect of the present invention is that data transfer can be speeded up with a small memory size.
(第1の実施の形態)
次に、本発明の第1の実施の形態について説明する。
(First embodiment)
Next, a first embodiment of the present invention will be described.
はじめに、本発明の第1の実施の形態の構成について説明する。図2は、本発明の第1の実施の形態における、送信装置1の構成を示すブロック図である。送信装置1は、例えば、USB Webカメラ等、USBデバイス機能を備えた装置であり、例えば、パーソナルコンピュータ等、USBホスト機能を備えた装置(図示せず)に、USBバスにより接続される。
First, the configuration of the first exemplary embodiment of the present invention will be described. FIG. 2 is a block diagram showing the configuration of the
図2を参照すると、本発明の第1の実施の形態の送信装置1は、ヘッダ付加回路100、DMA200、CPU300、USBコア400、PHY(PHYsical Layer)チップ500、及び、RAM(Random Access Memory)600を含む。ヘッダ付加回路100、DMA200、CPU300、USBコア400、及び、RAM600は、内部バス(図示せず)で接続される。
Referring to FIG. 2, the
ヘッダ付加回路100は、RAM600上のデータ記憶部610から取得したデータにヘッダを付加してパケットを生成する。ヘッダ付加回路100は、ヘッダマージ回路110、及び、ヘッダキュー120を含む。ヘッダキュー120は、データに付加すべきヘッダ、及び、当該ヘッダに係る制御情報を記憶する。ヘッダマージ回路110は、制御情報に従って、データ記憶部610から取得したデータにヘッダを付加する。
The
本発明の第1の実施の形態では、制御情報に、ヘッダの繰り返し回数が設定される。また、本発明の第1の実施の形態では、ヘッダキュー120に設定された1以上のヘッダが、制御情報(繰り返し回数)に従って、順番に適用される。
In the first embodiment of the present invention, the number of header repetitions is set in the control information. In the first embodiment of the present invention, one or more headers set in the
DMA200は、ヘッダ付加回路100により生成されたパケットを、USBコア400に転送する。これにより、CPU300を介することなく、データ記憶部610のデータをUSBバスへ送信できる。
The
CPU300は、データ生成制御部310、ヘッダキュー設定部320、割り込み処理部330、及び、転送制御部340の機能を実現するためのプログラムを実行する。
The
データ生成制御部310は、送信装置1に含まれる、例えば、カメラ等のデータ生成部(図示せず)に対して、USBバスに送信するデータの生成、及び、データ記憶部610への保存を指示する。データ生成部は、例えば、DMA200とは異なる他のDMAを介して、生成したデータをデータ記憶部610に転送する。
The data
ヘッダキュー設定部320は、USBバスに送信するデータに応じたヘッダ、及び、制御情報をヘッダキュー120に設定する。
The header
割り込み処理部330は、ヘッダ付加回路100からの割り込みを処理する。
The
転送制御部340は、DMA200、及び、USBコア400を制御する。
The
なお、データ生成制御部310、ヘッダキュー設定部320、割り込み処理部330、及び、転送制御部340は、送信装置1を制御するアプリケーションプログラムに含まれていてもよい。
The data
次に、本発明の第1の実施の形態における送信装置1の動作について説明する。
Next, the operation of the
ここでは、USBバスにより送信するデータとして、USB3.0におけるUSB Video Class(以下、UVCと記載する)のアイソクロナス転送モードに従ったビデオストリームを送信する場合を例に、動作を説明する。 Here, the operation will be described by taking as an example the case of transmitting a video stream according to the USB Video Class (hereinafter referred to as UVC) isochronous transfer mode in USB 3.0 as data to be transmitted by the USB bus.
図3は、本発明の第1の実施の形態における、送信装置1の処理を示すフローチャートである。
FIG. 3 is a flowchart showing processing of the
CPU300上のデータ生成制御部310は、データ生成部に、ビデオストリームのデータ(タイムスタンプ等を含むペイロードデータ)の生成、及び、生成されたデータのデータ記憶部610への保存を指示する(ステップA101)。データ生成部は、データを生成し、データ記憶部610に保存する。ここで、データ生成部には、データ記憶部610においてビデオストリームのデータが記憶される領域のアドレスが予め設定されており、当該領域にデータを保存すると仮定する。また、ビデオストリームのデータが記憶される領域のアドレスは、データ生成制御部310から指定されてもよい。
The data
例えば、データ生成制御部310は、UVCのビデオストリームとして、2フレーム分のデータの生成、及び、保存を指示する。データ生成部は、1フレームに対して4098個のデータを、2フレーム分生成し、データ記憶部610に保存する。データ生成部は、CPU300に割り込み(データ生成完了割り込み)を発行する。
For example, the data
ヘッダキュー設定部320は、USBバスにより送信するデータに応じたヘッダ、及び、制御情報をヘッダキュー120に設定する(ステップA102)。
The header
図4は、本発明の第1の実施の形態における、ヘッダキュー120の設定例を示す図である。
FIG. 4 is a diagram illustrating a setting example of the
UVCでは、ヘッダは、FID(Frame Identifier)とEOF(End Of Frame)とを含む。FIDは、フレームごとに1/0でトグルするビットである。また、EOFは、フレームの最後のデータを示すビットである。ここでは、1フレームごとに4098個のデータが生成されるため、ヘッダキュー設定部320は、図4のように、FIDとEOFの値が異なる、4種類のヘッダ(ヘッダ1〜4)を制御情報(繰り返し回数)とともにヘッダキュー120に設定する。図4において、ヘッダ1には、FID=0、EOF=0が設定され、ヘッダ1の繰り返し回数は4097である。ヘッダ2には、FID=0、EOF=1が設定され、ヘッダ2の繰り返し回数は1である。ヘッダ3には、FID=1、EOF=0が設定され、ヘッダ3の繰り返し回数は4097である。ヘッダ4には、FID=1、EOF=1が設定され、ヘッダ4の繰り返し回数は1である。
In UVC, the header includes an FID (Frame Identifier) and an EOF (End Of Frame). The FID is a bit that toggles at 1/0 for each frame. The EOF is a bit indicating the last data of the frame. Here, since 4098 pieces of data are generated for each frame, the header
例えば、ヘッダキュー設定部320は、図4のヘッダ、及び、制御情報をヘッダキュー120に設定する。
For example, the header
転送制御部340は、DMA200に、パケットの転送を指示する(ステップA103)。
The
例えば、転送制御部340は、4098個×2フレーム分のパケットの転送を指示する。
For example, the
DMA200は、ヘッダ付加回路100に、データ記憶部610からのデータの読み出しを指示する(ステップA301)。
The
ヘッダ付加回路100のヘッダマージ回路110は、ヘッダキュー120から順番に、ヘッダと制御情報を読み出す(ステップA201)。
The
ヘッダ付加回路100のヘッダマージ回路110は、データ記憶部610から順番に、データを読み出す(ステップA202)。ここで、ヘッダマージ回路110には、データ記憶部610においてビデオストリームのデータが記憶されている領域のアドレスが予め設定されており、ヘッダマージ回路110は、当該領域からデータを読み出すと仮定する。また、ビデオストリームのデータが記憶されている領域のアドレスは、転送制御部340から、DMA200を介して指定されてもよい。
The
ヘッダマージ回路110は、読み出したデータにヘッダを付加し、パケットを生成する(ステップA203)。
The
ヘッダマージ回路110は、生成したパケットをDMA200に送信する(ステップA204)。
The
DMA200は、ヘッダマージ回路110により生成されたパケットを、USBコア400に転送する(ステップA302)。
The
USBコア400は、DMA200により転送されたパケットを、PHYチップ500を介してUSBバスに送信する(ステップA401)。
The
ヘッダマージ回路110は、制御情報で示される繰り返し回数、ステップA202からA204の処理を繰り返す(ステップA205)。
The
ヘッダマージ回路110は、ヘッダキュー120に記憶された全てのヘッダについて、ステップA201からA205の処理を繰り返す(ステップA206)。
The
また、DMA200は、転送制御部340から指示された全てのパケットが転送されるまで、ステップA302の処理を繰り返す(ステップA303)。
Further, the
図5は、本発明の第1の実施の形態における、送信装置1から送信されるパケットの例を示す図である。
FIG. 5 is a diagram illustrating an example of a packet transmitted from the
例えば、ヘッダマージ回路110は、図4のヘッダキュー120から、ヘッダ1を読み出し、図5のように、最初の4097個のデータにヘッダ1を付加する。次に、ヘッダマージ回路110はヘッダ2を読み出し、次の1個のデータにヘッダ2を付加する。さらに、ヘッダマージ回路110はヘッダ3を読み出し、次の4097個のデータにヘッダ3を付加する。そして、ヘッダマージ回路110はヘッダ4を読み出し、次の1個のデータにヘッダ4を付加する。
For example, the
このように、2フレーム分のデータにヘッダが付加され、生成されたパケットがUSBバスに送信される。 In this way, a header is added to the data for two frames, and the generated packet is transmitted to the USB bus.
ヘッダキュー120に記憶された全てのヘッダについて処理が終了した場合(ステップA206/Y)、ヘッダマージ回路110は、CPU300に割り込み(ヘッダ完了割り込み)を発行する(ステップA207)。
When processing has been completed for all headers stored in the header queue 120 (step A206 / Y), the
割り込み処理部330がヘッダ完了割り込みを受信すると(ステップA104/Y)、ステップA101からの処理が繰り返される。
When the interrupt
以上により、本発明の第1の実施の形態の動作が完了する。 Thus, the operation of the first exemplary embodiment of the present invention is completed.
次に、本発明の第1の実施の形態の特徴的な構成を説明する。図1は、本発明の第1の実施の形態の特徴的な構成を示すブロック図である。 Next, a characteristic configuration of the first exemplary embodiment of the present invention will be described. FIG. 1 is a block diagram showing a characteristic configuration of the first embodiment of the present invention.
送信装置1は、ヘッダマージ回路110(ヘッダマージ手段)、及び、ヘッダキュー120(ヘッダ記憶手段)を含む。
The
ヘッダキュー120は、データに付与すべきヘッダを当該ヘッダに係る制御情報と関連づけて記憶する。
The
ヘッダマージ回路110は、1以上のデータが記憶されたデータ記憶部610(データ記憶手段)から1以上のデータの各々を順番に取得し、ヘッダキュー120から取得したヘッダに係る制御情報に従って、当該取得したデータに当該ヘッダを付加し、出力する。
The
本発明の第1の実施の形態によれば、少ないメモリサイズで、データ転送を高速化できる。その理由は、ヘッダキュー120が、ヘッダを制御情報と関連づけて記憶し、ヘッダマージ回路110が、制御情報に従って、データ記憶部610から取得したデータに当該ヘッダを付加するためである。
According to the first embodiment of the present invention, data transfer can be speeded up with a small memory size. The reason is that the
(第2の実施の形態)
次に、本発明の第2の実施の形態について説明する。
(Second Embodiment)
Next, a second embodiment of the present invention will be described.
本発明の第2の実施では、ヘッダの適用条件、及び、優先度をもとに適用されるヘッダが決定される点において、本発明の第1の実施の形態と異なる。 The second embodiment of the present invention is different from the first embodiment of the present invention in that the header to be applied is determined based on the header application conditions and priority.
はじめに、本発明の第2の実施の形態の構成について説明する。 First, the configuration of the second exemplary embodiment of the present invention will be described.
本発明の第2の実施の形態においては、ヘッダキュー120は、制御情報として、さらに、ヘッダの適用条件、及び、優先度を記憶する。適用条件には、例えば、ヘッダ付加回路100に入力される割り込みの割り込み要因が設定される。ヘッダマージ回路110は、適用条件に合致し、かつ、優先度が高いヘッダを、データ記憶部610から取得したデータに付加する。
In the second embodiment of the present invention, the
次に、本発明の第2の実施の形態における送信装置1の動作について説明する。
Next, the operation of the
ここでは、USBバスにおいて、優先度が異なる3種類のビデオストリームD1、D2、D3が送信される場合を例に、動作を説明する。これらのビデオストリームの優先度は、D1<D3<D2であると仮定する。また、ビデオストリームD1が最初に送信され、USBホスト等、送信装置1の外部から他のビデオストリームD2、D3の転送要求があった場合、送信されるビデオストリームが、要求されたビデオストリームに切り替わると仮定する。
Here, the operation will be described by taking as an example a case where three types of video streams D1, D2, and D3 having different priorities are transmitted on the USB bus. Assume that the priorities of these video streams are D1 <D3 <D2. In addition, when the video stream D1 is transmitted first and there is a transfer request for other video streams D2 and D3 from the outside of the
図6は、本発明の第2の実施の形態における、送信装置1の処理を示すフローチャートである。
FIG. 6 is a flowchart showing processing of the
データ生成制御部310は、データ生成部に、ビデオストリームのデータの生成、及び、生成されたデータのデータ記憶部610への保存を指示する(ステップB101)。データ生成部は、データを生成し、データ記憶部610に保存する。
The data
例えば、データ生成制御部310は、UVCのビデオストリームD1、D2、D3のデータの生成、及び、保存を指示する。データ生成部は、ビデオストリームD1、D2、D3のデータを生成し、データ記憶部610に保存する。データ生成部は、CPU300に割り込み(データ生成完了割り込み)を発行する。
For example, the data
ヘッダキュー設定部320は、USBバスにより送信するデータに応じたヘッダ、及び、制御情報をヘッダキュー120に設定する(ステップB102)。
The header
図8は、本発明の第2の実施の形態における、ヘッダキュー120の設定例を示す図である。
FIG. 8 is a diagram illustrating a setting example of the
図8の例では、3つのヘッダ1〜3が設定されている。ヘッダ1〜3は、それぞれ、ビデオストリームD1〜D3に対応する。ヘッダ1の制御情報である、適用条件(割り込み要因)、優先度、繰り返し回数には、それぞれ、「なし」、「3」、「x回」が設定されている。ヘッダ2に対しては、それぞれ、「切替要求D2(ビデオストリームD2への切り替え要求)」、「1」、「y回」が設定されている。ヘッダ3に対しては、それぞれ、「切替要求D3(ビデオストリームD3への切り替え要求)」、「2」、「z回」が設定されている。なお、優先度の値は小さいほど、優先度が高いと仮定する。
In the example of FIG. 8, three
例えば、ヘッダキュー設定部320は、図8のヘッダ、及び、制御情報をヘッダキュー120に設定する。
For example, the header
転送制御部340は、DMA200にパケットの転送を指示する(ステップB103)。
The
例えば、転送制御部340は、ビデオストリームD1、D2、D3のパケットの転送を指示する。
For example, the
DMA200は、ヘッダ付加回路100に、データ記憶部610からのデータの読み出しを指示する(ステップB301)。
The
ヘッダ付加回路100のヘッダマージ回路110は、ヘッダキュー120から、ヘッダと制御情報を読み出す(ステップB201)。ここで、ヘッダマージ回路110は、適用条件を満たすヘッダのうち、優先度の高いヘッダを、適用するヘッダに決定する。
The
ヘッダ付加回路100のヘッダマージ回路110は、データ記憶部610から順番に、データを読み出す(ステップB202)。ステップB201で決定したヘッダによって、ヘッダが適用されるデータの種別が異なる場合(例えば、ビデオストリームが異なる場合)、ヘッダマージ回路110には、ヘッダが適用されるデータの種別が設定されていると仮定する。この場合、ヘッダマージ回路110は、決定したヘッダに対応するデータを読み出す。また、この場合、ヘッダマージ回路110には、データ記憶部610において各種別のデータが記憶されている領域のアドレスが予め設定されており、ヘッダマージ回路110は、当該領域からデータを読み出すと仮定する。なお、各種別のデータが記憶されている領域のアドレスは、転送制御部340から、DMA200を介して指定されてもよい。
The
ヘッダマージ回路110は、読み出したデータに、ヘッダを付加し、パケットを生成する(ステップB203)。
The
ヘッダマージ回路110は、生成したパケットをDMA200に送信する(ステップB204)。
The
DMA200は、ヘッダマージ回路110により生成されたパケットを、USBコア400に転送する(ステップB302)。
The
USBコア400は、DMA200により転送されたパケットを、PHYチップ500を介してUSBバスに送信する(ステップB401)。
The
ヘッダマージ回路110は、制御情報で示される繰り返し回数、ステップB202からB204の処理を繰り返す(ステップB205)。
The
また、DMA200は、転送制御部340から指示された全てのパケットが転送されるまで、ステップA302の処理を繰り返す(ステップB303)。
Further, the
図7は、本発明の第2の実施の形態における、ヘッダ付加回路100の割り込み処理を示すフローチャートである。
FIG. 7 is a flowchart showing interrupt processing of the
割り込み処理は、ヘッダ付加回路100において上述のステップB201〜B205を実行しているとき、あるいは当該割り込み処理を実行しているときに、ヘッダ付加回路100に、割り込み要因が「転送要求」の割り込みが入力されたときに実行される。当該割り込みは、例えば、USBホスト等、送信装置1の外部から他のビデオストリームの転送要求が入力された場合に、CPU300上のアプリケーションからの指示に基づいて、CPU300から発行される。
Interrupt processing is performed when the
ヘッダ付加回路100のヘッダマージ回路110は、ヘッダキュー120から、ヘッダと制御情報を読み出す(ステップB251)。ここで、ヘッダマージ回路110は、ステップB201と同様に、適用条件と優先度とをもとに、適用するヘッダを決定する。
The
以降、ステップB202〜B205と同様に、ヘッダマージ回路110は、制御情報で示される繰り返し回数、ヘッダの付加を繰り返す(ステップB252〜B255)。
Thereafter, similarly to steps B202 to B205, the
繰り返し回数分のヘッダの付加が終了した場合(ステップB255/Y)、ヘッダマージ回路110は、割り込み処理から復帰し(ステップB256)、割り込み前に実行していた処理を再開する。
When the addition of the header for the number of repetitions is completed (step B255 / Y), the
図9は、本発明の第2の実施の形態における、送信装置1から送信されるパケットの例を示す図である。
FIG. 9 is a diagram illustrating an example of a packet transmitted from the
ここでは、ヘッダマージ回路110には、ヘッダD1、D2、D3を適用するビデオストリームとして、それぞれ、D1、D2、D3が予め設定されていると仮定する。
Here, it is assumed that D1, D2, and D3 are preset in the
例えば、最初の時点では、ヘッダ付加回路100に割り込みが入力されていない。この場合、図8のヘッダキュー120に設定されているヘッダの内、適用条件を満たすヘッダは、割込要因「なし」に対応するヘッダ1である。したがって、ヘッダマージ回路110には、ヘッダ1を、適用するヘッダに決定する。そして、ヘッダマージ回路110は、図9のように、ビデオストリームD1のx個のデータにヘッダ1を付加する。
For example, at the first time, no interrupt is input to the
次に、ビデオストリームD1のパケットをx−m個転送したところで、ヘッダ付加回路100に割込要因「転送要求D3」の割り込みが入力されたと仮定する。この場合、適用条件を満たすヘッダは、割込要因「なし」に対応するヘッダ1、及び、割込要因「転送要求D3」に対応するヘッダ3である。ヘッダマージ回路110には、優先度の高いヘッダ3を、適用するヘッダに決定する。そして、ヘッダマージ回路110は、ビデオストリームD3のz個のデータにヘッダ3を付加する。
Next, it is assumed that an interrupt of the interrupt factor “transfer request D3” is input to the
さらに、ビデオストリームD3のパケットをz−n個転送したところで、ヘッダ付加回路100に割込要因「転送要求D2」の割り込みが入力されたと仮定する。この場合、適用条件を満たすヘッダは、割込要因「なし」に対応するヘッダ1、割込要因「転送要求D3」に対応するヘッダ3、及び、割込要因「転送要求D2」に対応するヘッダ2である。ヘッダマージ回路110には、優先度の高いヘッダ2を、適用するヘッダに決定する。そして、ヘッダマージ回路110は、ビデオストリームD2のy個のデータにヘッダ2を付加する。
Further, it is assumed that an interrupt of an interrupt factor “transfer request D2” is input to the
ビデオストリームD2のy個のパケットの転送が終了すると、ヘッダマージ回路110は、ビデオストリームD3の残りのn個のデータにヘッダ3を付加する。
When the transfer of y packets of the video stream D2 is completed, the
ビデオストリームD3のz個のパケットの転送が終了すると、ヘッダマージ回路110は、ビデオストリームD1の残りのm個のデータにヘッダ1を付加する。
When the transfer of z packets of the video stream D3 is completed, the
このように、ビデオストリームD1、D2、D3のパケットが、転送要求に応じて、USBバスに送信される。 In this manner, the packets of the video streams D1, D2, and D3 are transmitted to the USB bus in response to the transfer request.
以上により、本発明の第2の実施の形態の動作が完了する。 Thus, the operation of the second exemplary embodiment of the present invention is completed.
なお、ヘッダキュー120におけるヘッダ1〜3は、さらに、第1の実施形態で示したように、FID、EOF等の値に応じた複数のヘッダに分類されて設定されていてもよい。
Note that the
また、本発明の第2の実施形態では、異なるビデオストリームのヘッダを、転送要求に応じて切り替えるケースを例に説明したが、制御情報の適用条件に従って、ヘッダを切り替えるものであれば、例えば、同一のビデオストリームでヘッダを切り替える等、他のケースに適用してもよい。 Further, in the second embodiment of the present invention, the case where the headers of different video streams are switched according to the transfer request has been described as an example. However, if the headers are switched according to the application conditions of the control information, for example, You may apply to other cases, such as switching a header by the same video stream.
また、割り込み要因は、転送要求以外に、送信装置1内で検出されたビデオストリームの種別の切り替わりや、送信装置1の外部から入力された転送停止要求等、他の要因であってもよい。
In addition to the transfer request, the interrupt factor may be other factors such as switching of the type of the video stream detected in the
本発明の第2の実施の形態によれば、データ転送を高速に行いながら、異なる種類のヘッダを適用できる。その理由は、制御情報がヘッダに係る適用条件を含み、ヘッダマージ回路110が、データ記憶部610から取得したデータに、適用条件を満たすヘッダを付加するためである。
According to the second embodiment of the present invention, different types of headers can be applied while performing high-speed data transfer. The reason is that the control information includes an application condition related to the header, and the
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。 While the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
1 送信装置
100 ヘッダ付加回路
110 ヘッダマージ回路
120 ヘッダキュー
200 DMA
300 CPU
310 データ生成制御部
320 ヘッダキュー設定部
330 割り込み処理部
340 転送制御部
400 USBコア
500 PHYチップ
600 RAM
610 データ記憶部
DESCRIPTION OF
300 CPU
310 Data
610 Data storage unit
Claims (10)
1以上のデータが記憶されたデータ記憶手段から前記1以上のデータの各々を順番に取得し、前記ヘッダ情報記憶手段から取得したヘッダに係る前記制御情報に従って、当該取得したデータに当該ヘッダを付加し、出力する、ヘッダマージ手段と、
を備えた送信装置。 Header information storage means for storing a header to be assigned to data in association with control information related to the header;
Each of the one or more data is sequentially acquired from a data storage unit storing one or more data, and the header is added to the acquired data according to the control information relating to the header acquired from the header information storage unit And header merging means for outputting,
A transmission device comprising:
前記制御情報は、当該制御情報に対応するヘッダを付与すべきデータ数を含み、
前記ヘッダマージ手段は、前記ヘッダ情報記憶手段から前記1以上のヘッダの各々を順番に取得し、当該取得したヘッダに係るデータ数の、前記データ記憶手段から順番に取得したデータに、当該取得したヘッダ付加する、
請求項1に記載の送信装置。 The header information storage means stores each of the one or more headers in association with control information related to the header,
The control information includes the number of data to which a header corresponding to the control information is to be added,
The header merging unit sequentially acquires each of the one or more headers from the header information storage unit, and acquires the number of data related to the acquired header in the data acquired sequentially from the data storage unit. Add header,
The transmission device according to claim 1.
前記制御情報は、当該制御情報に対応するヘッダを付与すべき条件、及び、データ数を含み、
前記ヘッダマージ手段は、前記ヘッダ情報記憶手段に記憶された前記1以上のヘッダの内、前記制御情報の前記条件を満たすヘッダを取得し、当該取得したヘッダに係るデータ数の、前記データ記憶手段から順番に取得したデータに、当該取得したヘッダ付加する、
請求項1に記載の送信装置。 The header information storage means stores each of the one or more headers in association with control information related to the header,
The control information includes a condition for adding a header corresponding to the control information, and the number of data.
The header merge means acquires a header satisfying the condition of the control information among the one or more headers stored in the header information storage means, and the data storage means of the number of data related to the acquired header Add the acquired header to the data acquired in order from
The transmission device according to claim 1.
前記ヘッダマージ手段は、前記制御情報の前記条件を満たすヘッダの内、他のヘッダより優先度の高いヘッダを取得する、
請求項3に記載の送信装置。 The control information further includes a priority of a header corresponding to the control information,
The header merging means acquires a header having a higher priority than other headers among the headers satisfying the condition of the control information.
The transmission device according to claim 3.
前記ヘッダマージ手段は、割り込みが発生した場合に、前記データ記憶手段から取得したデータに付与するヘッダを、当該割り込みの割り込み要因に対応するヘッダに切り替える、
請求項3または4に記載の送信装置。 The condition to be given the header includes an interrupt factor,
The header merging means switches a header to be given to data acquired from the data storage means to a header corresponding to the interrupt factor of the interrupt when an interrupt occurs.
The transmission device according to claim 3 or 4.
1以上のデータが記憶されたデータ記憶手段から前記1以上のデータの各々を順番に取得し、前記取得したヘッダに係る前記制御情報に従って、当該取得したデータに当該ヘッダを付加し、出力する、
を備えた送信方法。 Store the header to be attached to the data in association with the control information related to the header,
Sequentially acquiring each of the one or more data from a data storage means in which one or more data is stored, adding the header to the acquired data according to the control information relating to the acquired header, and outputting the data,
With a transmission method.
前記制御情報は、当該制御情報に対応するヘッダを付与すべきデータ数を含み、
前記ヘッダを付加する場合、前記1以上のヘッダの各々を順番に取得し、当該取得したヘッダに係るデータ数の、前記データ記憶手段から順番に取得したデータに、当該取得したヘッダ付加する、
請求項6に記載の送信方法。 When storing the header to be given to the data, each of the one or more headers is stored in association with the control information related to the header,
The control information includes the number of data to which a header corresponding to the control information is to be added,
When adding the header, each of the one or more headers is acquired in order, and the acquired header is added to the data acquired in order from the data storage unit of the number of data related to the acquired header.
The transmission method according to claim 6.
前記制御情報は、当該制御情報に対応するヘッダを付与すべき条件、及び、データ数を含み、
前記ヘッダを付加する場合、前記1以上のヘッダの内、前記制御情報の前記条件を満たすヘッダを取得し、当該取得したヘッダに係るデータ数の、前記データ記憶手段から順番に取得したデータに、当該取得したヘッダ付加する、
請求項6に記載の送信方法。 When storing the header to be given to the data, each of the one or more headers is stored in association with the control information related to the header,
The control information includes a condition for adding a header corresponding to the control information, and the number of data.
When adding the header, the header that satisfies the condition of the control information among the one or more headers is acquired, and the number of data related to the acquired header is sequentially acquired from the data storage unit, Add the obtained header,
The transmission method according to claim 6.
前記ヘッダを付加する場合、前記制御情報の前記条件を満たすヘッダの内、他のヘッダより優先度の高いヘッダを取得する、
請求項8に記載の送信方法。 The control information further includes a priority of a header corresponding to the control information,
When adding the header, among the headers that satisfy the condition of the control information, obtain a header having a higher priority than other headers,
The transmission method according to claim 8.
前記ヘッダを付加する場合に、割り込みが発生したとき、前記データ記憶手段から取得したデータに付与するヘッダを、当該割り込みの割り込み要因に対応するヘッダに切り替える、
請求項8または9に記載の送信方法。 The condition to be given the header includes an interrupt factor,
In the case of adding the header, when an interrupt occurs, the header given to the data acquired from the data storage means is switched to the header corresponding to the interrupt factor of the interrupt,
The transmission method according to claim 8 or 9.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013260130A JP2015119255A (en) | 2013-12-17 | 2013-12-17 | Transmission device and transmission method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013260130A JP2015119255A (en) | 2013-12-17 | 2013-12-17 | Transmission device and transmission method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015119255A true JP2015119255A (en) | 2015-06-25 |
Family
ID=53531646
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013260130A Pending JP2015119255A (en) | 2013-12-17 | 2013-12-17 | Transmission device and transmission method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015119255A (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000134230A (en) * | 1998-10-27 | 2000-05-12 | Seiko Epson Corp | Data transfer controller and electronic equipment |
JP2000224208A (en) * | 1999-02-03 | 2000-08-11 | Fujitsu Ltd | Packet transfer controller and packet transfer method |
JP2003283499A (en) * | 2002-03-20 | 2003-10-03 | Seiko Epson Corp | Data transfer controller, electronic equipment and data transfer control method |
JP2006050078A (en) * | 2004-08-02 | 2006-02-16 | Seiko Epson Corp | Data transfer control apparatus and electronic equipment |
-
2013
- 2013-12-17 JP JP2013260130A patent/JP2015119255A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000134230A (en) * | 1998-10-27 | 2000-05-12 | Seiko Epson Corp | Data transfer controller and electronic equipment |
JP2000224208A (en) * | 1999-02-03 | 2000-08-11 | Fujitsu Ltd | Packet transfer controller and packet transfer method |
JP2003283499A (en) * | 2002-03-20 | 2003-10-03 | Seiko Epson Corp | Data transfer controller, electronic equipment and data transfer control method |
JP2006050078A (en) * | 2004-08-02 | 2006-02-16 | Seiko Epson Corp | Data transfer control apparatus and electronic equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9396154B2 (en) | Multi-core processor for managing data packets in communication network | |
JP3843667B2 (en) | Data transfer control device and electronic device | |
JP5460143B2 (en) | Data processing apparatus, data processing method and program | |
CN103714027B (en) | A kind of data transmission method of direct memory access controller and device | |
JP2011150397A (en) | Bus arbitration device | |
JP2006293800A (en) | Information processing device and information processing method | |
JP2011150666A (en) | Communication device, information processing apparatus, and method and program for controlling the communication device | |
JP2007034392A (en) | Information processor and data processing method | |
JP2005167965A (en) | Packet processing method and apparatus | |
CN107517167B (en) | Data transmission control method and device and SoC chip | |
JP2015119255A (en) | Transmission device and transmission method | |
JP2013186658A (en) | Data transmission device, data transmission method and program | |
JP4212508B2 (en) | Packet generator | |
JP7044081B2 (en) | In-vehicle communication system | |
US9390050B2 (en) | Data transmission apparatus and method | |
JP6146306B2 (en) | I / O device control system and control method of I / O device control system | |
JPWO2008105494A1 (en) | DMA transfer apparatus and method | |
KR101634672B1 (en) | Apparatus for virtualizing a network interface, method thereof and computer program for excuting the same | |
JP6785009B2 (en) | Communication device and control method of communication device | |
US11102150B2 (en) | Communication apparatus and control method for communication apparatus | |
WO2021181874A1 (en) | Communication control device and method for controlling communication control device | |
JP2019528608A (en) | Transmission resource instruction method, apparatus, and storage medium | |
JP2015005924A (en) | Transmitter and information transmission system | |
JP6938399B2 (en) | Communication equipment, communication methods and programs | |
JP2014160367A (en) | Arithmetic processing unit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161115 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20170711 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170808 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170929 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20180306 |