[go: up one dir, main page]

JP2006049948A - Data transfer control device, electronic device, and data transfer control method - Google Patents

Data transfer control device, electronic device, and data transfer control method Download PDF

Info

Publication number
JP2006049948A
JP2006049948A JP2004223756A JP2004223756A JP2006049948A JP 2006049948 A JP2006049948 A JP 2006049948A JP 2004223756 A JP2004223756 A JP 2004223756A JP 2004223756 A JP2004223756 A JP 2004223756A JP 2006049948 A JP2006049948 A JP 2006049948A
Authority
JP
Japan
Prior art keywords
data
packet
stamp information
time stamp
header
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.)
Withdrawn
Application number
JP2004223756A
Other languages
Japanese (ja)
Inventor
伸之 ▲斎▼藤
Nobuyuki Saito
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2004223756A priority Critical patent/JP2006049948A/en
Publication of JP2006049948A publication Critical patent/JP2006049948A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

【課題】 転送データの確実な時間管理を実現し、データ転送に伴う処理負荷の軽減及び低コスト化を図るデータ転送制御装置、電子機器及びデータ転送制御方法を提供する。
【解決手段】 データ転送制御装置100は、転送サイクル毎に更新されるサイクルタイムをカウントするサイクルタイマ150と、パケットデータの転送を制御する転送コントローラ140とを含む。転送コントローラ140は、データ転送制御装置100に入力されたときにはタイムスタンプ情報が未付加のパケットデータを転送先に出力する際に、サイクルタイマ150の現在のサイクルタイムを基準にオフセット値だけ先行したサイクルタイムに対応した出力タイムスタンプ情報を、前記パケットデータに付加する。
【選択図】 図12
PROBLEM TO BE SOLVED: To provide a data transfer control device, an electronic device, and a data transfer control method for realizing reliable time management of transfer data, reducing the processing load accompanying data transfer and reducing the cost.
A data transfer control device includes a cycle timer that counts a cycle time that is updated every transfer cycle, and a transfer controller that controls transfer of packet data. When the transfer controller 140 outputs the packet data to which the time stamp information is not added to the transfer destination when it is input to the data transfer control device 100, the cycle that precedes the current cycle time of the cycle timer 150 by the offset value. Output time stamp information corresponding to the time is added to the packet data.
[Selection] FIG.

Description

本発明は、データ転送制御装置、電子機器及びデータ転送制御方法に関する。   The present invention relates to a data transfer control device, an electronic device, and a data transfer control method.

近年、MPEG(Moving Picture Experts Group、より具体的にはMPEG2)ストリームを配信するBSデジタル放送等のデジタル放送が脚光を浴び、デジタル放送チューナやデジタル放送のコンテンツの記録・再生装置等の電子機器の普及が著しい。このデジタル放送チューナと記録・再生装置は、例えばIEEE(Institute of Electrical and Electronics Engineers)1394に代表される汎用高速シリアルインタフェースを介して接続される。   In recent years, digital broadcasting such as BS digital broadcasting that distributes MPEG (Moving Picture Experts Group, more specifically MPEG2) streams has attracted attention, and electronic devices such as digital broadcast tuners and digital broadcast content recording / playback devices have become popular. The spread is remarkable. The digital broadcast tuner and the recording / reproducing apparatus are connected via a general-purpose high-speed serial interface represented by, for example, IEEE (Institute of Electrical and Electronics Engineers) 1394.

IEEE1394では、上述のストリームをパケット化して実現されるアイソクロナス(Isochronous)転送(広義には同期転送)が行われる。アイソクロナス転送はほぼ125μs(マイクロ秒)の間に必ず行われる転送であり、アシンクロナス(Asynchronous)転送(広義には非同期転送)より優先的に行われる転送であるため、リアルタイムのデータ転送に適している。   In IEEE 1394, isochronous transfer (synchronous transfer in a broad sense) realized by packetizing the above-described stream is performed. Isochronous transfer is always performed within approximately 125 μs (microseconds), and is preferentially performed over asynchronous transfer (asynchronous transfer in a broad sense), and is therefore suitable for real-time data transfer. .

このようなストリームを送受信する場合、送信側と受信側の時間の整合性を保つ必要がある。そのため、パケット化されたデータにタイムスタンプ情報を付加し、時間管理を行っている。従って、この時間管理を行いつつ、アイソクロナス転送のために一定以上の転送レートを確保する必要がある。   When transmitting and receiving such a stream, it is necessary to maintain time consistency between the transmission side and the reception side. For this reason, time management is performed by adding time stamp information to packetized data. Therefore, it is necessary to secure a transfer rate above a certain level for isochronous transfer while performing this time management.

ところが、受信側の装置のバッファメモリの容量の制約があるため、無条件に転送レートを高めることができない。そこで、送信側の装置では、データに含まれるタイムスタンプ情報を参照しながら、アイソクロナスサイクルと呼ばれる転送サイクル毎に数パケットずつ転送を行うようにソフトウェアでデータ転送の制御を行っている。   However, the transfer rate cannot be unconditionally increased due to the limitation of the capacity of the buffer memory of the receiving apparatus. Therefore, the transmission side apparatus controls data transfer by software so as to transfer several packets for each transfer cycle called an isochronous cycle while referring to time stamp information included in the data.

このようなデータ転送の制御について、例えば特許文献1に開示されている。特許文献1には、パケットデータの到着時刻に伝送遅延値と送信遅延値とを加算して生成したタイムスタンプ情報を該パケットデータに付加し、このパケットデータを伝送遅延値だけ遅延させて出力させる技術が開示されている。
特開2002−84288号公報
Such control of data transfer is disclosed in, for example, Patent Document 1. In Patent Document 1, time stamp information generated by adding a transmission delay value and a transmission delay value to the arrival time of packet data is added to the packet data, and the packet data is output after being delayed by the transmission delay value. Technology is disclosed.
JP 2002-84288 A

しかしながら、タイムスタンプ情報を参照して転送すべきパケットデータをアイソクロナスサイクル内で判別する処理をソフトウェアで行うと、処理負荷が重い。従って、制御を司る中央演算処理装置(Central Processing Unit:CPU)の処理能力を他の高度な処理に割り当てることができなくなる。そのため、システム全体の処理能力を維持させるために高性能なCPUや他の付加回路を用いることとなりコスト高を招く。特に、引用文献1に記載されるように、ストリームの到着時に出力用のタイムスタンプ情報を付加したパケットデータをバッファリングした場合、送信するパケットデータの時間管理を正確に制御できなくなる場合がある。例えばタイムスタンプ情報の付加時に想定できない遅延が発生する場合があったり、この種の遅延を考慮して余分な遅延時間を設定せざるを得なくなったりする。   However, if processing for determining packet data to be transferred with reference to time stamp information within an isochronous cycle is performed by software, the processing load is heavy. Therefore, the processing capability of the central processing unit (CPU) that controls the control cannot be assigned to other advanced processing. For this reason, a high-performance CPU and other additional circuits are used to maintain the processing capability of the entire system, resulting in high costs. In particular, as described in Cited Document 1, when packet data added with output time stamp information is buffered when a stream arrives, time management of packet data to be transmitted may not be accurately controlled. For example, an unexpected delay may occur when adding time stamp information, or an extra delay time must be set in consideration of this type of delay.

本発明は、以上のような技術的課題に鑑みてなされたものであり、その目的とするところは、転送データの確実な時間管理を実現すると共に、データ転送に伴う処理負荷の軽減及び低コスト化を図るデータ転送制御装置、電子機器及びデータ転送制御方法を提供することにある。   The present invention has been made in view of the technical problems as described above, and an object of the present invention is to realize reliable time management of transfer data, reduce processing load associated with data transfer, and reduce costs. An object of the present invention is to provide a data transfer control device, an electronic device, and a data transfer control method for achieving the above-mentioned.

上記課題を解決するために本発明は、データ転送を制御するためのデータ転送制御装置であって、転送サイクル毎に更新されるサイクルタイムをカウントするサイクルタイマと、パケットデータの転送を制御する転送コントローラとを含み、前記転送コントローラが、前記データ転送制御装置に入力されたときにはタイムスタンプ情報が未付加のパケットデータを転送先に出力する際に、前記サイクルタイマの現在のサイクルタイムを基準にオフセット値だけ先行したサイクルタイムに対応した出力タイムスタンプ情報を、前記パケットデータに付加するデータ転送制御装置に関係する。   In order to solve the above problems, the present invention provides a data transfer control device for controlling data transfer, a cycle timer for counting a cycle time updated for each transfer cycle, and a transfer for controlling transfer of packet data. A controller, and when the transfer controller is input to the data transfer control device, when the packet data to which time stamp information is not added is output to the transfer destination, an offset is made based on the current cycle time of the cycle timer. The present invention relates to a data transfer control device that adds output time stamp information corresponding to the cycle time preceding the value to the packet data.

本発明によれば、パケットデータを転送先に出力する際に、該パケットデータに出力タイムスタンプ情報を付加するようにしたので、転送先側でバッファリングを行うのに適したタイミングでパケットデータを送出できるようになる。例えばタイムスタンプ情報により再生時刻が指定される場合に、一旦バッファリングする等の理由で、例えば他のノードの転送状況に依存して、転送先側で再生時刻として指定したサイクルタイムを過ぎた後にパケットデータを送出してしまうといった事態を回避できる。このため、パケットデータに付加するタイムスタンプ情報のマージンを少なくでき、しかも処理負荷を軽減できる。従って、簡素な構成により、送信するパケットデータの時間管理を正確に制御できるようになる。   According to the present invention, when outputting packet data to the transfer destination, output time stamp information is added to the packet data, so that the packet data is transferred at a timing suitable for buffering on the transfer destination side. It can be sent out. For example, when the playback time is specified by the time stamp information, after the cycle time specified as the playback time has passed on the transfer destination side, for example, depending on the transfer status of another node, for example, due to buffering once A situation in which packet data is transmitted can be avoided. For this reason, the margin of the time stamp information added to the packet data can be reduced, and the processing load can be reduced. Accordingly, the time management of the packet data to be transmitted can be accurately controlled with a simple configuration.

また本発明に係るデータ転送制御装置では、前記パケットデータが前記データ転送制御装置に入力されたときの前記サイクルタイマのサイクルタイムに対応した入力タイムスタンプ情報が前記パケットデータに付加され、前記転送コントローラが、前記入力タイムスタンプ情報として付加されたサイクルタイムを基準に前記オフセット値だけ先行したサイクルタイムに対応した第1のタイムスタンプ情報を、前記出力タイムスタンプ情報として、前記パケットデータを前記転送先に出力する際に前記入力タイムスタンプ情報に替えて設定することができる。   In the data transfer control device according to the present invention, input time stamp information corresponding to a cycle time of the cycle timer when the packet data is input to the data transfer control device is added to the packet data, and the transfer controller The first time stamp information corresponding to the cycle time preceded by the offset value based on the cycle time added as the input time stamp information is used as the output time stamp information, and the packet data is sent to the transfer destination. When outputting, it can be set instead of the input time stamp information.

また本発明に係るデータ転送制御装置では、前記転送コントローラが、前記第1のタイムスタンプ情報と前記サイクルタイマの現在のサイクルタイムとに基づいて、現在の転送サイクルにおいて付加すべき第2のタイムスタンプ情報を求め、該第2のタイムスタンプ情報を、前記出力タイムスタンプ情報として、前記入力タイムスタンプ情報に替えて設定することができる。   In the data transfer control device according to the present invention, the transfer controller adds a second time stamp to be added in a current transfer cycle based on the first time stamp information and a current cycle time of the cycle timer. Information is obtained, and the second time stamp information can be set as the output time stamp information in place of the input time stamp information.

本発明によれば、現在のサイクルタイムを基準にオフセット値だけ先行させたタイムスタンプ情報を付加する場合に比べて、より正確にタイムスタンプ情報を設定できるようになる。従って、より細かい時間管理を実現できるようになる。   According to the present invention, time stamp information can be set more accurately than in the case of adding time stamp information preceded by an offset value based on the current cycle time. Therefore, finer time management can be realized.

また本発明に係るデータ転送制御装置では、前記転送コントローラが、前記入力タイムスタンプ情報が付加されたパケットデータが蓄積されるパケットメモリのデータ残量に基づいてパケットデータに付加されるヘッダ情報を作成するヘッダ作成回路と、前記ヘッダ作成回路によって作成された前記ヘッダ情報と前記パケットメモリに蓄積されたパケットデータとを結合した出力用パケットデータを生成し、該出力用パケットデータを前記転送先に出力するパケット生成回路とを含み、前記パケット生成回路が、前記入力タイムスタンプ情報に替えて前記出力タイムスタンプ情報を設定することができる。   In the data transfer control device according to the present invention, the transfer controller creates header information to be added to packet data based on a remaining amount of data in a packet memory in which packet data to which the input time stamp information is added is stored. Generating the output packet data that combines the header information generated by the header generation circuit and the packet data stored in the packet memory, and outputs the output packet data to the transfer destination And the packet generation circuit can set the output time stamp information instead of the input time stamp information.

また本発明に係るデータ転送制御装置では、前記転送コントローラが、前記現在の転送サイクルにおいて前記入力タイムスタンプ情報が付加されたパケットデータが蓄積されるパケットメモリのデータ残量が1パケット未満であるとき、前記転送先に空パケットを出力することができる。   In the data transfer control device according to the present invention, when the transfer controller has less than one packet of data remaining in the packet memory in which the packet data to which the input time stamp information is added is stored in the current transfer cycle. An empty packet can be output to the transfer destination.

また本発明に係るデータ転送制御装置では、前記パケットメモリを含み、前記パケットメモリが、前記入力タイムスタンプ情報が付加されたパケットデータが記憶されるデータ領域と、前記ヘッダ作成回路によって作成された前記ヘッダ情報が記憶されるヘッダ領域とを有し、前記パケット生成回路が、前記データ領域からのパケットデータに含まれる前記入力タイムスタンプ情報に替えて前記出力タイムスタンプ情報を設定し、該パケットデータと前記ヘッダ領域からのヘッダ情報とを結合することができる。   Further, the data transfer control device according to the present invention includes the packet memory, and the packet memory is created by the data area in which the packet data to which the input time stamp information is added is stored, and the header creation circuit. A header area in which header information is stored, and the packet generation circuit sets the output timestamp information instead of the input timestamp information included in the packet data from the data area, and the packet data The header information from the header area can be combined.

また本発明に係るデータ転送制御装置では、前記ヘッダ作成回路が、前記ヘッダ領域に記憶されたヘッダの基本情報を読み出して、該基本情報を用いて前記ヘッダ情報を生成して前記ヘッダ領域に書き戻すことができる。   In the data transfer control device according to the present invention, the header creation circuit reads basic information of the header stored in the header area, generates the header information using the basic information, and writes the header information in the header area. Can be returned.

本発明によれば、パケットデータの生成処理及びヘッダの付加処理の負荷を軽減させることができる。   According to the present invention, it is possible to reduce the load of packet data generation processing and header addition processing.

また本発明に係るデータ転送制御装置では、第1及び第2のモードを切り替えるための転送モード設定レジスタを含み、前記転送モード設定レジスタにより前記第1のモードに切り替えられたとき、前記転送コントローラが、前記サイクルタイマの現在のサイクルタイムを基準に前記オフセット値だけ先行したサイクルタイムに対応した出力タイムスタンプ情報を、前記パケットデータを前記転送先に出力する際に設定された前記パケットデータを生成し、前記転送モード設定レジスタにより前記第2のモードに切り替えられたとき、前記転送コントローラが、前記パケットメモリに蓄積され前記入力タイムスタンプ情報が付加されたパケットデータに含まれるタイムスタンプ情報と比較値とを比較し、前記比較値と一致するタイムスタンプ情報を含むパケットデータ群に対し、前記入力タイムスタンプ情報に替えて、前記サイクルタイマの現在のサイクルタイムを基準に前記オフセット値だけ先行したサイクルタイムに対応した出力タイムスタンプ情報を設定して、該パケットデータを現在の転送サイクルにおいて前記転送先に出力し、前記比較値と不一致のタイムスタンプ情報が検出されたときに前記比較値を更新すると共に、前記現在のサイクルタイムの次のサイクルタイムにおいて、更新された比較値と前記パケットメモリに蓄積されたデータに含まれるタイムスタンプ情報とを比較することができる。   The data transfer control device according to the present invention includes a transfer mode setting register for switching between the first and second modes, and when the transfer controller is switched to the first mode by the transfer mode setting register, the transfer controller Generating the output time stamp information corresponding to the cycle time preceding the offset value on the basis of the current cycle time of the cycle timer, and generating the packet data set when the packet data is output to the transfer destination. When the transfer mode setting register switches to the second mode, the transfer controller stores the time stamp information and the comparison value included in the packet data accumulated in the packet memory and added with the input time stamp information. Time stamps that match the comparison value For the packet data group including information, in place of the input time stamp information, output time stamp information corresponding to the cycle time preceding the offset value based on the current cycle time of the cycle timer is set, Output packet data to the destination in the current transfer cycle, update the comparison value when time stamp information that does not match the comparison value is detected, and at the next cycle time of the current cycle time, The updated comparison value can be compared with the time stamp information included in the data stored in the packet memory.

本発明によれば、パケットデータにタイムスタンプ情報が既に付加されている場合であっても、転送先側でバッファリングを行うのに適したタイミングで送信することができるようになる。そして、この場合においても、例えばタイムスタンプ情報により再生時刻が指定される場合に、一旦バッファリングする等の理由で、例えば他のノードの転送状況に依存して、転送先側で再生時刻として指定したサイクルタイムを過ぎた後にパケットデータを送出してしまうといった事態を回避できる。このため、パケットデータに付加するタイムスタンプ情報のマージンを少なくでき、しかも処理負荷を軽減できる。従って、簡素な構成により、送信するパケットデータの時間管理を正確に制御できるようになる。   According to the present invention, even when time stamp information is already added to packet data, transmission can be performed at a timing suitable for buffering on the transfer destination side. Even in this case, for example, when the playback time is specified by the time stamp information, it is specified as the playback time on the transfer destination side, for example, depending on the transfer status of other nodes, for reasons such as buffering once. It is possible to avoid a situation in which packet data is transmitted after the cycle time passed. For this reason, the margin of the time stamp information added to the packet data can be reduced, and the processing load can be reduced. Accordingly, the time management of the packet data to be transmitted can be accurately controlled with a simple configuration.

また本発明に係るデータ転送制御装置では、前記第2のモードに切り替えられたとき、前記転送コントローラが、前記比較値と前記パケットデータに含まれるタイムスタンプ情報とを比較し、該比較値と一致するタイムスタンプ情報を含むパケットデータが検出されなかったとき、空パケットを前記転送先に出力することができる。   In the data transfer control device according to the present invention, when the mode is switched to the second mode, the transfer controller compares the comparison value with the time stamp information included in the packet data and matches the comparison value. When packet data including time stamp information to be detected is not detected, an empty packet can be output to the transfer destination.

また本発明に係るデータ転送制御装置では、前記第2のモードに切り替えられたとき、前記転送コントローラが、前記パケットデータに含まれるタイムスタンプ情報を読み出して、前記比較値と一致するタイムスタンプ情報を含むデータ群に対してヘッダ情報を作成すると共に、前記比較値と不一致のタイムスタンプ情報を含むパケットデータが検出されたことを条件に前記比較値の更新処理を行い、前記パケットデータのタイムスタンプ情報に替えて、前記サイクルタイマの現在のサイクルタイムを基準に前記オフセット値だけ先行したサイクルタイムに対応した出力タイムスタンプ情報を設定して前記パケットデータを生成し、前記転送先に出力することができる。   In the data transfer control device according to the present invention, when the transfer controller is switched to the second mode, the transfer controller reads the time stamp information included in the packet data, and sets the time stamp information that matches the comparison value. Generating header information for the data group including the data, and performing update processing of the comparison value on condition that packet data including time stamp information that does not match the comparison value is detected, and time stamp information of the packet data Instead, the packet data can be generated by setting output time stamp information corresponding to the cycle time preceding the offset value based on the current cycle time of the cycle timer, and output to the transfer destination .

また本発明に係るデータ転送制御装置では、IEEE1394の規格に準拠したデータ転送を行うことができる。   In the data transfer control device according to the present invention, data transfer conforming to the IEEE 1394 standard can be performed.

また本発明は、パケットデータを受信する受信回路と、前記受信回路とパケットデータが伝送されるバスとの間に設けられた上記のいずれか記載のデータ転送制御装置とを含み、前記データ転送制御装置が、前記バスを介して接続される記録媒体に対し、前記パケットデータを転送する電子機器に関係する。   The present invention also includes a receiving circuit that receives packet data, and the data transfer control device according to any one of the above that is provided between the receiving circuit and a bus through which packet data is transmitted. An apparatus relates to an electronic device that transfers the packet data to a recording medium connected via the bus.

本発明によれば、受信回路で受信されたパケットデータの正確な時間管理を、少ない処理負荷で実現できる電子機器を提供できる。   ADVANTAGE OF THE INVENTION According to this invention, the electronic device which can implement | achieve accurate time management of the packet data received by the receiving circuit with a small processing load can be provided.

また本発明は、上記のいずれか記載のデータ転送制御装置と、前記データ転送制御装置を介してバスに接続される記録媒体とを含み、前記データ転送制御装置が、前記バスを介して入力されたデータを前記記録媒体に出力して該記録媒体に記録させ、或いは前記記録媒体から読み出したデータを前記バスを介して出力する電子機器に関係する。   Further, the present invention includes any one of the data transfer control devices described above and a recording medium connected to a bus via the data transfer control device, and the data transfer control device is input via the bus. The present invention relates to an electronic device that outputs the recorded data to the recording medium and records the data on the recording medium, or outputs the data read from the recording medium via the bus.

本発明によれば、記録媒体に記録するためのパケットデータ又は記録媒体から再生するためのパケットデータのパケットデータの正確な時間管理を、少ない処理負荷で実現できる電子機器を提供できる。   ADVANTAGE OF THE INVENTION According to this invention, the electronic device which can implement | achieve accurate time management of the packet data of the packet data for recording on the recording medium or the packet data for reproducing | regenerating from a recording medium with a small processing load can be provided.

また本発明は、データ転送を制御するためのデータ転送制御方法であって、転送サイクル毎に更新されるサイクルタイムをカウントし、入力されたときにタイムスタンプ情報が未付加のパケットデータを転送先に出力する際に、現在のサイクルタイムを基準にオフセット値だけ先行したサイクルタイムに対応した出力タイムスタンプ情報を、前記パケットデータに付加して前記転送先に出力するデータ転送制御方法に関係する。   The present invention also provides a data transfer control method for controlling data transfer, which counts the cycle time updated for each transfer cycle, and transfers packet data to which no time stamp information is added when it is input. This is related to a data transfer control method in which output time stamp information corresponding to a cycle time preceded by an offset value based on the current cycle time is added to the packet data and output to the transfer destination.

また本発明に係るデータ転送制御方法では、前記パケットデータが入力されたときのサイクルタイムに対応した入力タイムスタンプ情報を前記パケットデータに付加し、前記入力タイムスタンプ情報として付加されたサイクルタイムを基準に前記オフセット値だけ先行したサイクルタイムに対応した第1のタイムスタンプ情報を、前記出力タイムスタンプ情報として、前記入力タイムスタンプ情報に替えて前記パケットデータを転送先に出力する際に該パケットデータに設定することができる。   In the data transfer control method according to the present invention, input time stamp information corresponding to a cycle time when the packet data is input is added to the packet data, and the cycle time added as the input time stamp information is used as a reference. The first time stamp information corresponding to the cycle time preceding the offset value is used as the output time stamp information, and the packet data is output to the transfer destination when the packet data is output to the transfer destination instead of the input time stamp information. Can be set.

また本発明に係るデータ転送制御方法では、前記第1のタイムスタンプ情報と現在のサイクルタイムとに基づいて、現在のサイクルタイムにおいて付加すべき第2のタイムスタンプ情報を求め、該第2のタイムスタンプ情報を、前記出力タイムスタンプ情報として前記入力タイムスタンプ情報に替えて設定することができる。   In the data transfer control method according to the present invention, second time stamp information to be added at the current cycle time is obtained based on the first time stamp information and the current cycle time, and the second time is determined. Stamp information can be set as the output time stamp information in place of the input time stamp information.

以下、本発明の実施の形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成のすべてが本発明の必須構成要件であるとは限らない。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. The embodiments described below do not unduly limit the contents of the present invention described in the claims. Also, not all of the configurations described below are essential constituent requirements of the present invention.

1. パケットデータ
図1に、本実施形態のデータ転送制御装置が適用されたシステムの構成例を示す。
1. Packet Data FIG. 1 shows a configuration example of a system to which the data transfer control device of this embodiment is applied.

このシステムでは、アンテナ10、デジタル放送チューナ20、記録・再生装置30を含む。アンテナ10は、BSデジタル放送として配信されたMPEG2ストリームを受信する。デジタル放送チューナ20は、データ転送制御装置22を含み、アンテナ10で受信された複数チャネル分のTS(Transport Stream)パケットが連続したMPEG2TSのマルチストリームから、1チャネル分のTSパケットが連続したMPEG2TSのパーシャルストリームを抽出する。そして、データ転送制御装置22は、IEEE1394バスを介して接続された記録・再生装置30に対し、抽出したストリームのTSパケットを転送する。記録・再生装置30は、記録媒体32を含み、IEEE1394バスを介して転送されたTSパケットを記録媒体32に記録する。記録・再生装置30は、記録媒体32に記録されたTSパケットを読み出して再生することもできる。   This system includes an antenna 10, a digital broadcast tuner 20, and a recording / playback device 30. The antenna 10 receives an MPEG2 stream distributed as BS digital broadcast. The digital broadcast tuner 20 includes a data transfer control device 22, and from an MPEG2TS multi-stream in which TS (Transport Stream) packets for a plurality of channels received by the antenna 10 are continuous, an MPEG2TS in which TS packets for one channel are continuous. Extract a partial stream. Then, the data transfer control device 22 transfers the TS packet of the extracted stream to the recording / reproducing device 30 connected via the IEEE 1394 bus. The recording / reproducing apparatus 30 includes a recording medium 32 and records TS packets transferred via the IEEE 1394 bus on the recording medium 32. The recording / reproducing apparatus 30 can also read and reproduce the TS packet recorded on the recording medium 32.

図2に、BSデジタル放送、データ転送制御装置及びIEEE1394バスにおけるデータ構造の説明図を示す。   FIG. 2 is an explanatory diagram of a data structure in the BS digital broadcast, the data transfer control device, and the IEEE 1394 bus.

BSデジタル放送では、MPEG2のTSパケットが配信される。TSパケットは、188バイトの固定長のパケットデータである。このTSパケットには、Iピクチャ(広義にはフレーム内符号化データ)や、Bピクチャ及びPピクチャ(広義にはフレーム間符号化データ或いは予測符号化データ)や、オーディオデータ(音声データ、非ビデオデータ)等が1つのビットストリームに多重化されてパケット化されている(パケット多重)。このTSパケットは、TSヘッダ(TSH)とTSペイロードとにより構成される。   In BS digital broadcasting, MPEG2 TS packets are distributed. The TS packet is 188-byte fixed-length packet data. This TS packet includes I picture (intra-frame encoded data in a broad sense), B picture and P picture (inter-frame encoded data or predictive encoded data in a broad sense), audio data (audio data, non-video data). Data) and the like are multiplexed into one bit stream and packetized (packet multiplexing). This TS packet is composed of a TS header (TSH) and a TS payload.

データ転送制御装置22は、アンテナ10で受信されたTSパケットに4バイトのSP(Source Packet)ヘッダ(SPH)を付加した後、SPヘッダ及びTSパケットを用いて構築したアイソクロナスパケット(ISOパケット)をIEEE1394バスに出力する。ISOパケットは、SPヘッダ及びTSパケットを1組として、1又は複数組のSPヘッダ及びTSパケットを含むことができる。各ISOパケットには、8バイトのアイソクロナスヘッダ(ISOH)と8バイトのCIP(Common Isochronous Packet)ヘッダ(CIPH)とが付加される。CIPヘッダと1又は複数組のSPヘッダ及びTSパケットとを1394ペイロードということができる。また1又は複数組のSPヘッダ及びTSパケットを、SP(Source Packet)ということができる。   The data transfer control device 22 adds a 4-byte SP (Source Packet) header (SPH) to the TS packet received by the antenna 10, and then creates an isochronous packet (ISO packet) constructed using the SP header and the TS packet. Output to the IEEE 1394 bus. The ISO packet can include one or a plurality of sets of SP header and TS packet, with the SP header and TS packet as one set. An 8-byte isochronous header (ISOH) and an 8-byte CIP (Common Isochronous Packet) header (CIPH) are added to each ISO packet. A CIP header and one or a plurality of sets of SP headers and TS packets can be referred to as a 1394 payload. One or a plurality of sets of SP headers and TS packets can be referred to as SP (Source Packet).

空パケットとしてのNullパケットの場合、ISOヘッダとCIPヘッダのみが含まれる。即ち、Nullパケットは、SPを含まずにISOヘッダとCIPヘッダのみの構成となる。   In the case of a null packet as an empty packet, only the ISO header and the CIP header are included. That is, the Null packet has only the ISO header and the CIP header without including the SP.

図3に、TSパケットのフォーマットの一例を示す。   FIG. 3 shows an example of the format of the TS packet.

TSパケットは、TSヘッダとTSペイロードとにより構成される。TSヘッダは、同期バイト(sync byte)、トランスポート誤りインディケータ(transport error indicator)、ペイロード部スタートインディケータ(payload unit start indicator:PUSI)、トランスポートプライオリティ(transport priority)、PID(Packet identification)、トランスポートスクランブル制御(transport scrambling control)、アダプテーションフィールド制御(adaptation field control)、コンティニュイティカウンタ(continuity counter)、アダプテーションフィールド(adaptation field)等を有する。   A TS packet is composed of a TS header and a TS payload. The TS header includes a sync byte, a transport error indicator, a payload unit start indicator (PUSI), a transport priority, a PID (Packet identification), and a transport. It has scramble control (transport scrambling control), adaptation field control (adaptation field control), continuity counter (continuity counter), adaptation field (adaptation field), etc.

TSヘッダに含まれるPIDを用いることで、約8000種類のTSパケットの識別が可能となる。例えば図4に示すように、MPEGストリームにおいて構成されるPES(Packetized Elementary Stream)は、同じPIDを有するTSパケットに分割される。このPESは、同じPIDを有するTSパケットに分割される。受信側では、同じPIDを有するTSパケットのペイロード部をつなぎ合わせることで元のPESを復元できる。   By using the PID included in the TS header, about 8000 types of TS packets can be identified. For example, as shown in FIG. 4, a PES (Packetized Elementary Stream) configured in an MPEG stream is divided into TS packets having the same PID. This PES is divided into TS packets having the same PID. On the receiving side, the original PES can be restored by connecting the payload portions of TS packets having the same PID.

なおPESは、同じPIDのTSパケットのペイロード部に分割して転送されるが、PESの先頭は、TSペイロードの先頭から開始するように配置される。そしてPESの先頭が配置されたTSペイロードは、ペイロード部スタートインディケータ(PUSI)により識別される。   Note that the PES is divided and transferred in the payload portion of the TS packet with the same PID, but the head of the PES is arranged to start from the head of the TS payload. The TS payload in which the head of the PES is arranged is identified by a payload part start indicator (PUSI).

図5(A)〜(D)に、ISOパケットとこれに含まれるSPヘッダ、CIPヘッダ及びISOヘッダのフォーマットの一例を示す。   5A to 5D show an example of the format of the ISO packet and the SP header, CIP header, and ISO header included in the ISO packet.

図5(A)は、アイソクロナス転送でIEEE1394バスに出力されるISOパケットの構成例を示す。図5(B)は、SPヘッダのフォーマットの一例を示す。図5(C)は、CIPヘッダのフォーマットの一例を示す。図5(D)は、ISOヘッダのフォーマットの一例を示す。   FIG. 5A shows a configuration example of an ISO packet output to the IEEE 1394 bus by isochronous transfer. FIG. 5B shows an example of the format of the SP header. FIG. 5C shows an example of the format of the CIP header. FIG. 5D shows an example of the format of the ISO header.

図5(B)、(C)に示すSPヘッダやCIPヘッダは、IEEE1394バス上でMPEG2ストリームを転送するためのプロトコルを定めたIEC(International Electrotechnical Commission)61883規格により定義されている。SPヘッダは、タイムスタンプ情報としてアイソクロナス転送のサイクルカウントを含む。サイクルカウントは、サイクルタイムのカウント値である。またSPヘッダは、サイクルオフセットを含む。サイクルオフセットは、サイクルカウントをカウントアップするためのカウント値である。SPヘッダのサイクルカウントをタイムスタンプ情報として扱ってもよいし、SPヘッダのサイクルカウント及びサイクルオフセットをタイムスタンプ情報として扱ってもよい。以下では、説明の便宜上、タイムスタンプ情報として、SPヘッダのサイクルカウントを示すものとして説明する。   The SP header and CIP header shown in FIGS. 5B and 5C are defined by the IEC (International Electrotechnical Commission) 61883 standard that defines a protocol for transferring an MPEG2 stream on the IEEE 1394 bus. The SP header includes a cycle count of isochronous transfer as time stamp information. The cycle count is a count value of cycle time. The SP header includes a cycle offset. The cycle offset is a count value for counting up the cycle count. The SP header cycle count may be treated as time stamp information, or the SP header cycle count and cycle offset may be treated as time stamp information. In the following description, for convenience of explanation, it is assumed that the time stamp information indicates the cycle count of the SP header.

図5(C)に示すCIPヘッダは、転送されるデータがMPEGデータであることを宣言したり、MPEGのTSパケットの分割方法を指定するものであり、ソースノードID(SID)、データブロックサイズ(DBS)、フォーマットID(FMT)等を含む。   The CIP header shown in FIG. 5C declares that the data to be transferred is MPEG data, and specifies a method for dividing an MPEG TS packet. Source node ID (SID), data block size (DBS), format ID (FMT), etc.

図5(D)に示すISOヘッダは、データ長を示すデータレングス(Data_length)、アイソクロナスデータフォーマットタグ(tag)、アイソクロナスリソースマネージャから取得したアイソクロナスチャンネル番号(Channel)、トランザクションコード(tcode)、同期コード(sy)、ヘッダCRC(Header_CRC)を含む。Nullパケットの場合は、データレングスに、CIPヘッダのデータ長が設定される。   The ISO header shown in FIG. 5D includes a data length (Data_length) indicating a data length, an isochronous data format tag (tag), an isochronous channel number (Channel) acquired from an isochronous resource manager, a transaction code (tcode), and a synchronization code. (Sy) includes a header CRC (Header_CRC). In the case of a null packet, the data length of the CIP header is set in the data length.

IEEE1394では、電源投入やデバイスの抜き差し等によってポートの接続状態が変化したとき、バスリセットが行われる。バスリセットが行われると、ツリー識別が行われ、ノード間の親子関係やルートノードが決定される。その後、自己識別が行われ、セルフIDパケットの送受信により各ノードのアドレスの自動割り付けが行われる。   In IEEE 1394, a bus reset is performed when the connection state of a port changes due to power-on or device insertion / removal. When a bus reset is performed, tree identification is performed, and a parent-child relationship between nodes and a root node are determined. Thereafter, self-identification is performed, and the address of each node is automatically assigned by transmitting and receiving self-ID packets.

こうしてノードの接続状態が管理できるようになると、全ノードのうちアイソクロナスリソースマネージャとして選ばれた管理ノードが、アイソクロナス転送を行うノードに必要なリソースを提供して、アイソクロナス転送のための帯域を割り当てる。更に全ノードのうちサイクルマスタとして選ばれたノードが、平均して125マイクロ秒ごとにサイクルスタートパケットを送信する。アイソクロナス転送を行うノードは、サイクルマスタからのサイクルスタートパケットを基準にアイソクロナスサイクル(ISOサイクル)(広義には転送サイクル)を開始する。   When the node connection state can be managed in this way, the management node selected as the isochronous resource manager among all the nodes provides the necessary resources to the node that performs isochronous transfer, and allocates a band for isochronous transfer. Furthermore, the node selected as the cycle master among all the nodes transmits a cycle start packet every 125 microseconds on average. A node performing isochronous transfer starts an isochronous cycle (ISO cycle) (transfer cycle in a broad sense) based on a cycle start packet from the cycle master.

図6に、アイソクロナス転送の説明図を示す。   FIG. 6 is an explanatory diagram of isochronous transfer.

アイソクロナス転送を行うノードは、サイクルマスタからのサイクルスタートパケット50、52、54を基準にそれぞれISOサイクルを開始する。サイクルマスタは、原則として125マイクロ秒毎にサイクルスタートパケットを送信する。アイソクロナス転送を行うノードは、サイクルスタートパケットを受信する毎に図5(B)のSPヘッダのサイクルカウントをカウントアップさせる。従って、ISOサイクル毎にサイクルカウントが更新される。サイクルカウントは、0から順にインクリメントされ、16進数表示で1F3Fh(最後の「h」は16進数表示であることを示す。以下同様)になると再び0に戻る。即ちサイクルカウントは、0hから1F3Fhまで(10進数で0から7999まで)となる。これにより、1秒(=125マイクロ秒×8000)間を、125マイクロ秒毎に更新されるサイクルカウントで計ることが可能となる。秒単位のカウント値は、ソフトウェアやファームウェアにより保持することで、管理できる。サイクルオフセットは、125マイクロ秒をカウントするためのカウント値であり、インクリメントされるサイクルオフセットのオーバーフローが発生したときにサイクルカウントがインクリメントされる。   The node that performs isochronous transfer starts the ISO cycle based on the cycle start packets 50, 52, and 54 from the cycle master. In principle, the cycle master transmits a cycle start packet every 125 microseconds. Each time the node performing isochronous transfer receives a cycle start packet, it increments the cycle count of the SP header of FIG. Therefore, the cycle count is updated every ISO cycle. The cycle count is sequentially incremented from 0, and when it becomes 1F3Fh in hexadecimal notation (the last “h” indicates that it is hexadecimal notation, the same applies hereinafter), it returns to 0 again. That is, the cycle count is from 0h to 1F3Fh (from decimal 0 to 7999). Thereby, it is possible to measure 1 second (= 125 microseconds × 8000) by a cycle count updated every 125 microseconds. The count value in seconds can be managed by holding it by software or firmware. The cycle offset is a count value for counting 125 microseconds, and the cycle count is incremented when an overflow of the incremented cycle offset occurs.

アイソクロナス転送を行うノードは、サイクルスタートパケットの受信後、アイソクロナスギャップと呼ばれるバスアイドル時間を経過後にアービトレーションを開始してISOパケットを送信する。図6では、サイクルスタートパケット50の受信により開始されるISOサイクルにおいて、ノードAがISOパケットISOA、ノードBがISOパケットISOBを転送する。そして、次のサイクルスタートパケット52の受信により開始されるISOサイクルにおいても、ノードAがISOパケットISOA、ノードBがISOパケットISOBを転送する。なおISOサイクルにおいてISOパケットが転送された後に、アシンクロナスパケットの転送が行われる。これは、サブアクションギャップと呼ばれるアシンクロナス転送の調停開始前のバスアイドル時間をアイソクロナスギャップより長い時間とすることで、各転送の優先度を異ならせることができる。   After receiving a cycle start packet, a node that performs isochronous transfer starts arbitration after a bus idle time called an isochronous gap has elapsed and transmits an ISO packet. In FIG. 6, in the ISO cycle started by receiving the cycle start packet 50, the node A transfers the ISO packet ISOA and the node B transfers the ISO packet ISOB. In the ISO cycle started by receiving the next cycle start packet 52, the node A transfers the ISO packet ISOA and the node B transfers the ISO packet ISOB. The asynchronous packet is transferred after the ISO packet is transferred in the ISO cycle. This is because the priority of each transfer can be made different by setting the bus idle time before the start of arbitration of asynchronous transfer called a subaction gap to be longer than the isochronous gap.

このようにアイソクロナス転送で転送されるISOパケットとSPヘッダのサイクルカウントとは、以下のような関係を有する。   Thus, the ISO packet transferred by isochronous transfer and the cycle count of the SP header have the following relationship.

図7に、ISOパケットとSPヘッダのサイクルカウントとの関係の説明図を示す。   FIG. 7 is an explanatory diagram showing the relationship between the ISO packet and the SP header cycle count.

アイソクロナス転送では、ISOパケットの転送が行われる。通常、ISOパケットは上述のように1又は複数のTSパケットを含む。図7では、Nullパケットの転送が行われないものとし、簡略化のためにISOヘッダやCIPヘッダを省略し、TSパケットのSPヘッダのみを示している。   In isochronous transfer, ISO packet transfer is performed. Usually, an ISO packet includes one or more TS packets as described above. In FIG. 7, it is assumed that Null packets are not transferred, and for simplification, the ISO header and the CIP header are omitted, and only the SP header of the TS packet is shown.

ISOサイクルに対応するサイクルタイムは、サイクルカウントによって特定される。サイクルカウントはサイクルマスタからのサイクルスタートパケットを受信する毎にインクリメントされるため、サイクルタイムもまた同様にサイクルスタートパケットを受信する毎にインクリメントされる。アイソクロナス転送を行うノードは、受信側で再生する時刻を指定するサイクルタイム(サイクルカウント)がSPヘッダに設定されたTSパケットを含むISOパケットを送信する。図7では、サイクルタイムが1000のとき、SPヘッダにサイクルカウントとして1003が設定された2つのTSパケットを含むISOパケットを送信する。即ち、現在のサイクルタイムに+3のオフセットを与えて送信する。これにより、受信側では、サイクルタイムが1003になったとき、受信したTSパケットをデコードに入力して伸張処理し、画像の再生を行う。このように受信側のバッファメモリに蓄積されるTSパケットに対して、先行するサイクルタイムを指定して送出する。   The cycle time corresponding to the ISO cycle is specified by the cycle count. Since the cycle count is incremented every time a cycle start packet is received from the cycle master, the cycle time is similarly incremented every time a cycle start packet is received. A node that performs isochronous transfer transmits an ISO packet including a TS packet in which a cycle time (cycle count) that designates a reproduction time on the reception side is set in the SP header. In FIG. 7, when the cycle time is 1000, an ISO packet including two TS packets in which 1003 is set as the cycle count in the SP header is transmitted. In other words, the current cycle time is transmitted with an offset of +3. Thus, on the receiving side, when the cycle time reaches 1003, the received TS packet is input to the decode, decompressed, and reproduced. As described above, the TS packet stored in the buffer memory on the receiving side is transmitted by designating the preceding cycle time.

ところが、受信側のバッファメモリの容量の制約があるため、無条件に転送レートを高めることができない。そのため、送信側においてSPヘッダを参照しながら、ISOサイクル毎に数パケットずつ転送を行うようにデータ転送の制御を行う必要がある。しかしながら、SPヘッダを参照しながら転送すべきパケットをISOサイクル内で判別する処理をソフトウェアで行うと処理負荷が重くなってしまう。また送信側で一旦バッファリングしてからパケットを送信する場合、パケットの到着時にSPヘッダを付加してしまうと、送信するパケットの時間管理を正確に制御できなくなる場合がある。例えば、他のノードからの転送状況に依存して、受信側で再生時刻として指定したサイクルタイム(例えば1003)を過ぎた後にパケットを送信してしまうと、サイクルタイムが7999に達して再び1003になるまで再生できないことになる。そして、このような事態を回避するためにマージンを加えた時刻を指定する必要が生じ、細かい時間管理が不可能となる。   However, the transfer rate cannot be unconditionally increased due to the limitation of the capacity of the buffer memory on the receiving side. Therefore, it is necessary to control the data transfer so that several packets are transferred every ISO cycle while referring to the SP header on the transmission side. However, if the processing for discriminating a packet to be transferred within the ISO cycle with reference to the SP header is performed by software, the processing load becomes heavy. In addition, when a packet is transmitted after buffering once on the transmission side, if an SP header is added when the packet arrives, time management of the packet to be transmitted may not be accurately controlled. For example, depending on the transfer status from another node, if a packet is transmitted after the cycle time (eg, 1003) designated as the playback time on the receiving side has passed, the cycle time reaches 7999 and becomes 1003 again. It will not be possible to play until. In order to avoid such a situation, it is necessary to specify a time with a margin added, and fine time management becomes impossible.

そこで本実施形態では、以下の構成を採用することで、ストリームが分割されたパケットの確実な時間管理を実現すると共に、データ転送に伴う処理負荷の軽減及び低コスト化を図る。   Therefore, in the present embodiment, by adopting the following configuration, it is possible to realize the reliable time management of the packets into which the stream is divided, and to reduce the processing load accompanying the data transfer and reduce the cost.

2. データ転送制御装置
図8に、本実施形態におけるデータ転送制御装置の構成例のブロック図を示す。
2. Data Transfer Control Device FIG. 8 shows a block diagram of a configuration example of the data transfer control device in this embodiment.

なお本実施形態のデータ転送制御装置は、図8のすべての回路、ユニット(部)を含む必要はなく、その一部を省略する構成であってもよい。   Note that the data transfer control device of this embodiment does not have to include all the circuits and units (units) in FIG. 8, and may be configured to omit some of them.

本実施形態におけるデータ転送制御装置100は、ストリームインタフェース(InterFace:I/F)回路110、IDE(Integrated Drive Electronics)I/F回路(広義には記録媒体用I/F)120、SDRAM(Synchronous Dynamic Random Access Memory)I/F回路(広義にはDRAMI/F)130を含むことができる。   The data transfer control device 100 in this embodiment includes a stream interface (InterFace: I / F) circuit 110, an IDE (Integrated Drive Electronics) I / F circuit (I / F for recording medium in a broad sense) 120, an SDRAM (Synchronous Dynamic). Random Access Memory) I / F circuit (DRAM I / F in a broad sense) 130 can be included.

ストリームI/F回路110は、MPEG2ストリームの受信装置(アンテナ、復調部)又はデコーダとデータ転送制御装置100との間のインタフェースを実現する回路である。受信装置又はデコーダは、データ転送制御装置100の外部に設けられる。受信装置は、デジタル放送として配信されるMPEG2ストリームを受信して復調したストリームをデータ転送制御装置100に供給する。デコーダは、データ転送制御装置100が出力したMPEG2ストリームをデコードし、デコード結果に対応して画像を表示させるための画像データとして図示しない表示装置に供給する。ストリームI/F回路110は、SPH比較出力回路112を含み、パケットデータにタイムスタンプ情報として含まれるSPヘッダに基づいて、パケットデータ間の時間間隔がSPヘッダで指定された通りとなるようにタイミング調整しながらパケットデータをデコーダに出力できる。IDEI/F回路120は、記録媒体としてのハードディスクドライブ(Hard Disk Drive:HDD)やDVD(Digital Versatile Disk)の記録・再生装置とデータ転送制御装置100との間のインタフェースを実現する回路である。ハードディスクドライブやDVDの記録・再生装置は、データ転送制御装置100の外部に設けられる。SDRAMI/F回路130は、SRAM(Static Random Access Memory)よりシーケンシャルアクセスが高速なSDRAMとデータ転送制御装置100との間のインタフェースを実現する回路である。SDRAMは、データ転送制御装置100の外部に設けられる。   The stream I / F circuit 110 is a circuit that realizes an interface between the MPEG2 stream receiving device (antenna, demodulator) or decoder and the data transfer control device 100. The receiving device or decoder is provided outside the data transfer control device 100. The receiving apparatus supplies the data transfer control apparatus 100 with a stream that is received and demodulated as an MPEG2 stream distributed as a digital broadcast. The decoder decodes the MPEG2 stream output from the data transfer control device 100 and supplies it to a display device (not shown) as image data for displaying an image corresponding to the decoding result. The stream I / F circuit 110 includes an SPH comparison output circuit 112, and based on the SP header included in the packet data as the time stamp information, the stream I / F circuit 110 performs timing so that the time interval between the packet data is as specified by the SP header. Packet data can be output to the decoder while adjusting. The IDE I / F circuit 120 is a circuit that realizes an interface between a data transfer control device 100 and a recording / reproducing device of a hard disk drive (HDD) or a DVD (Digital Versatile Disk) as a recording medium. The hard disk drive and DVD recording / reproducing device are provided outside the data transfer control device 100. The SDRAM I / F circuit 130 is a circuit that realizes an interface between the SDRAM and the data transfer control device 100, which is faster in sequential access than an SRAM (Static Random Access Memory). The SDRAM is provided outside the data transfer control device 100.

本実施形態におけるデータ転送制御装置100は、リンクコントローラ(広義には転送コントローラ)140と、サイクルタイマ150とを含む。このデータ転送制御装置100は、例えば1394PHYチップを介してIEEE1394バスに接続される。1394PHYチップは、IEEE1394の物理層のプロトコルを実現し、IEEE1394バスに接続される。なお、図8では、1394PHYチップを含まずにPHYI/F回路(図示せず)を有する構成となっているが、データ転送制御装置100が1394PHYチップを含む構成であってもよい。   The data transfer control device 100 in this embodiment includes a link controller (transfer controller in a broad sense) 140 and a cycle timer 150. The data transfer control device 100 is connected to the IEEE 1394 bus via, for example, a 1394 PHY chip. The 1394 PHY chip implements the IEEE 1394 physical layer protocol and is connected to the IEEE 1394 bus. In FIG. 8, the PHY I / F circuit (not shown) is included without including the 1394 PHY chip, but the data transfer control device 100 may include the 1394 PHY chip.

データ転送制御装置100において、サイクルタイマ150は、ISOサイクル(広義には転送サイクル)毎に更新されるサイクルタイムをカウントする。より具体的には、バスリセット後に選択されたサイクルマスタによって送出されるサイクルスタートパケットを受信する毎に、サイクルタイムをカウントする。サイクルタイマ150がサイクルタイムを更新する際、サイクルタイムをインクリメントしてもよいし、サイクルタイムをデクリメントしてもよい。SPH比較出力回路112は、SPヘッダに含まれるサイクルカウントとサイクルタイマ150のサイクルタイムとを比較して、パケットデータを出力する。   In the data transfer control device 100, the cycle timer 150 counts a cycle time that is updated every ISO cycle (transfer cycle in a broad sense). More specifically, the cycle time is counted each time a cycle start packet sent by the selected cycle master is received after the bus reset. When the cycle timer 150 updates the cycle time, the cycle time may be incremented or the cycle time may be decremented. The SPH comparison output circuit 112 compares the cycle count included in the SP header with the cycle time of the cycle timer 150, and outputs packet data.

記録媒体においては、パーソナルコンピュータ用として広く使用されているIDE(ATA)I/Fを有する安価なハードディスクドライブを用いる。一方、デジタルデータ(デジタルビデオデータ、デジタルオーディオデータ)のI/FとしてはIEEE1394が広く用いられる。図8に示すように、IDEI/F回路120とリンクコントローラ140とを設けることで、IEEE1394とIDEの変換ブリッジ機能をデータ転送制御装置100に実現させることができる。   In the recording medium, an inexpensive hard disk drive having IDE (ATA) I / F widely used for personal computers is used. On the other hand, IEEE1394 is widely used as an I / F of digital data (digital video data, digital audio data). As shown in FIG. 8, by providing the IDE I / F circuit 120 and the link controller 140, the data transfer control device 100 can realize the conversion bridge function of IEEE 1394 and IDE.

図8において、リンクコントローラ140は、IEEE1394バスを介したパケットデータの転送を制御する。リンクコントローラ140は、IEEE1394のリンク層又はリンク層と該リンク層より上層のプロトコルを実現するための回路である。このリンクコントローラ140は、ヘッダ(ISOヘッダ、CIPヘッダ、SPヘッダ)を作成し、該ヘッダを付加したパケットをIEEE1394バスに出力する。   In FIG. 8, the link controller 140 controls the transfer of packet data via the IEEE 1394 bus. The link controller 140 is a circuit for realizing an IEEE 1394 link layer or a link layer and a protocol higher than the link layer. The link controller 140 creates a header (ISO header, CIP header, SP header) and outputs a packet with the header added to the IEEE 1394 bus.

データ転送制御装置100は、パケットメモリとしてのSRAM160を含むことができる。このSRAM160をデータ転送制御装置100の外部に設けることも可能である。SRAM160は、ストリームI/F回路110、IDEI/F回路120又はSDRAMI/F回路130を介して入力されるTSパケットを、IEEE1394バスを介して転送するために一時的に記憶するものである。またSRAM160は、IEEE1394バスを介して受信したパケットを一時的に記憶する機能も有する。このSRAM160は、ファームウェア等によりランダムアクセス可能な構成になっている。   The data transfer control device 100 can include an SRAM 160 as a packet memory. The SRAM 160 can be provided outside the data transfer control device 100. The SRAM 160 temporarily stores TS packets input via the stream I / F circuit 110, the IDE I / F circuit 120, or the SDRAM I / F circuit 130 for transfer via the IEEE 1394 bus. The SRAM 160 also has a function of temporarily storing packets received via the IEEE 1394 bus. The SRAM 160 is configured to be randomly accessible by firmware or the like.

データ転送制御装置100は、ポインタコントローラ170を含むことができる。このポインタコントローラ170は、SRAM160の書き込み領域を指定するための書き込みポインタとSRAM160の読み出し領域を指定するための読み出しポインタとを制御する。SRAM160に対するパケットデータの書き込み領域は、SRAM160の記憶領域を特定する書き込みポインタによって指定される。そして、パケットデータを書き込む毎に、ポインタコントローラ170が書き込みポインタを(インクリメント又はデクリメントして)更新していく。SRAM160からのパケットデータの読み出し領域は、SRAM160の記憶領域を特定する読み出しポインタによって指定される。そして、パケットデータを読み出す毎に、ポインタコントローラ170が読み出しポインタを(デクリメント又はインクリメントして)更新していく。   The data transfer control device 100 can include a pointer controller 170. The pointer controller 170 controls a write pointer for designating a write area of the SRAM 160 and a read pointer for designating a read area of the SRAM 160. An area for writing packet data to the SRAM 160 is designated by a write pointer that identifies the storage area of the SRAM 160. Each time packet data is written, the pointer controller 170 updates the write pointer (increment or decrement). The read area for packet data from the SRAM 160 is designated by a read pointer that identifies the storage area of the SRAM 160. Each time packet data is read, the pointer controller 170 updates the read pointer (by decrementing or incrementing).

データ転送制御装置100は、更にPIDフィルタ180を含むことができる。PIDフィルタ180は、ストリームI/F回路110、IDEI/F回路120又はSDRAMI/F回路130を介して入力されたMPEG2TSのマルチストリームから、所定のPIDを有するパーシャルストリームを抽出し、SRAM160に供給する。   The data transfer control device 100 can further include a PID filter 180. The PID filter 180 extracts a partial stream having a predetermined PID from the multi-stream of MPEG2TS input via the stream I / F circuit 110, the IDE I / F circuit 120, or the SDRAM I / F circuit 130, and supplies the partial stream to the SRAM 160. .

データ転送制御装置100は、処理部190を含む。処理部190は、装置内の各回路や各ユニット(部)の制御や装置の全体制御を行う。この処理部190の機能は、CPU或いはシステムコントローラ等のハードウェアやファームウェア(プログラム)により実現される。なお処理部190をデータ転送制御装置100の外部に設けるようにしてもよい。   The data transfer control device 100 includes a processing unit 190. The processing unit 190 controls each circuit and each unit (unit) in the apparatus and controls the entire apparatus. The function of the processing unit 190 is realized by hardware such as a CPU or a system controller or firmware (program). The processing unit 190 may be provided outside the data transfer control device 100.

本実施形態では、リンクコントローラ140が、データ転送制御装置100に入力されたときにはタイムスタンプ情報が未付加のTSパケット(パケットデータ)をバス(転送先)に出力する際に、出力タイムスタンプ情報を該TSパケットに付加することができる。そのため、リンクコントローラ140は、ヘッダ作成回路142と送信制御回路(広義にはパケット生成回路)144とを含むことができる。   In this embodiment, when the link controller 140 outputs a TS packet (packet data) to which no time stamp information is added to the bus (transfer destination) when it is input to the data transfer control device 100, the output time stamp information is set. It can be added to the TS packet. Therefore, the link controller 140 can include a header creation circuit 142 and a transmission control circuit (packet generation circuit in a broad sense) 144.

ヘッダ作成回路142は、IEEE1394バスに出力するパケットに付加するヘッダを作成する。このヘッダ作成回路142は、ISOヘッダ、CIPヘッダ、SPヘッダを生成する。更に具体的にはヘッダ作成回路142は、予め作成されたヘッダの基本情報に対し所定の情報のみが書き換えられた情報をヘッダ(情報)として出力する。   The header creation circuit 142 creates a header to be added to the packet output to the IEEE 1394 bus. The header creation circuit 142 generates an ISO header, a CIP header, and an SP header. More specifically, the header generation circuit 142 outputs information obtained by rewriting only predetermined information with respect to basic information of a header generated in advance as a header (information).

送信制御回路144は、ヘッダ作成回路122によって作成されたヘッダを付加したISOパケットを生成し、該ISOパケットをIEEE1394バスに出力する制御を行う。こうして送信制御回路144は、1394PHYチップを介してIEEE1394バス(広義には転送先)に出力する際に、タイムスタンプ情報(出力タイムスタンプ情報)をTSパケットに付加する。   The transmission control circuit 144 generates an ISO packet to which the header created by the header creation circuit 122 is added, and performs control to output the ISO packet to the IEEE 1394 bus. Thus, the transmission control circuit 144 adds time stamp information (output time stamp information) to the TS packet when outputting to the IEEE 1394 bus (transfer destination in a broad sense) via the 1394 PHY chip.

このようにリンクコントローラ140は、データ転送制御装置100に入力されたときにはタイムスタンプ情報が未付加のTSパケットを、1394PHYチップを介してIEEE1394バス(広義には転送先)に出力する際に、タイムスタンプ情報(出力タイムスタンプ情報)をTSパケットに付加する。このタイムスタンプ情報は、サイクルタイマ150の現在のサイクルタイムを基準にオフセット値だけ先行したサイクルタイムに対応したタイムスタンプ情報である。例えばサイクルタイマ150のカウント方向がインクリメント方向の場合、現在のサイクルタイムをインクリメント方向にオフセットを与えた値がタイムスタンプ情報として設定される。また例えばサイクルタイマ150のカウント方向がデクリメント方向の場合、現在のサイクルタイムをデクリメント方向にオフセットを与えた値がタイムスタンプ情報として設定される。   As described above, when the link controller 140 outputs the TS packet to which the time stamp information is not added to the IEEE 1394 bus (transfer destination in a broad sense) via the 1394 PHY chip when the data is input to the data transfer control device 100, Stamp information (output time stamp information) is added to the TS packet. This time stamp information is time stamp information corresponding to a cycle time that precedes the current cycle time of the cycle timer 150 by an offset value. For example, when the count direction of the cycle timer 150 is the increment direction, a value obtained by offsetting the current cycle time in the increment direction is set as the time stamp information. For example, when the count direction of the cycle timer 150 is the decrement direction, a value obtained by offsetting the current cycle time in the decrement direction is set as the time stamp information.

こうすることで、例えばデコーダ側でバッファリングを行うのに適したタイミングでTSパケットを送出できる。更に、一旦バッファリングする等の理由で、例えば他のノードの転送状況に依存して、受信側で再生時刻として指定したサイクルタイムを過ぎた後にパケットを送信してしまうといった事態を回避できる。その際、余分な時間を加える必要がなく、処理負荷を軽減できる。従って、簡素な構成により、送信するパケットの時間管理を正確に制御できるようになる。   In this way, for example, TS packets can be transmitted at a timing suitable for buffering on the decoder side. Furthermore, a situation in which a packet is transmitted after a cycle time designated as a reproduction time on the receiving side, for example, depending on the transfer status of another node, can be avoided because of buffering. At this time, it is not necessary to add extra time, and the processing load can be reduced. Accordingly, it is possible to accurately control time management of transmitted packets with a simple configuration.

またデータ転送制御装置100は、転送モード設定レジスタ200、最大連結パケット数設定レジスタ202、SPHロード設定レジスタ204、転送開始SPH設定レジスタ206、送信オフセット値設定レジスタ208を含むことができる。また処理部190は、これらの設定レジスタ(制御レジスタ)の設定値に対応して、データ転送制御装置内の各回路や各ユニット(部)の制御や装置の全体制御を行うことができる。   The data transfer control device 100 can also include a transfer mode setting register 200, a maximum connected packet number setting register 202, an SPH load setting register 204, a transfer start SPH setting register 206, and a transmission offset value setting register 208. Further, the processing unit 190 can control each circuit and each unit (unit) in the data transfer control device and perform overall control of the device in accordance with the set values of these setting registers (control registers).

転送モード設定レジスタ200には、データ転送制御装置100の転送モードを設定するための設定値が設定される。このデータ転送制御装置100は、データ残量比較モード(広義には第1のモード)又はSPヘッダ比較モード(広義には第2のモード)のいずれかの転送モードでアイソクロナス転送を制御する。   In the transfer mode setting register 200, a setting value for setting the transfer mode of the data transfer control device 100 is set. The data transfer control device 100 controls isochronous transfer in one of the transfer modes of the data remaining amount comparison mode (first mode in a broad sense) or the SP header comparison mode (second mode in a broad sense).

データ残量比較モードに設定されたデータ転送制御装置100は、SRAM160に転送すべきTSパケットが存在すると、IEEE1394バスを介して転送先にTSパケットを出力する制御を行う。このデータ残量比較モードは、ストリームI/F回路110を介して連続的に入力されるリアルタイムデータの転送に有効な転送モードである。本実施形態では、転送すべきTSパケットがSRAM160に1パケット以上格納されているときアイソクロナス転送を行い、最大でも最大連結パケット数設定レジスタ202に設定された設定値に対応したパケット数毎にアイソクロナス転送を行う。この際、サイクルタイマ150のサイクルタイムに送信オフセット値設定レジスタ208の設定値を加算した値を含むSPヘッダをTSパケットに付加する。なお、SRAM160に格納され転送すべきTSパケットが1パケット未満のとき、空パケットとしてNullパケットを転送する。   When there is a TS packet to be transferred to the SRAM 160, the data transfer control device 100 set to the remaining data comparison mode performs control to output the TS packet to the transfer destination via the IEEE 1394 bus. This data remaining amount comparison mode is a transfer mode that is effective for transferring real-time data continuously input via the stream I / F circuit 110. In the present embodiment, isochronous transfer is performed when one or more TS packets to be transferred are stored in the SRAM 160, and isochronous transfer is performed for each packet number corresponding to the set value set in the maximum connected packet number setting register 202 at the maximum. I do. At this time, an SP header including a value obtained by adding the set value of the transmission offset value setting register 208 to the cycle time of the cycle timer 150 is added to the TS packet. When the TS packet stored in the SRAM 160 and to be transferred is less than one packet, a null packet is transferred as an empty packet.

これに対してSPヘッダ比較モードに設定されたデータ転送制御装置100は、SRAM160に格納されたTSパケットに付加されたSPヘッダを参照し、サイクルタイマ150によって更新されるサイクルカウントに対応して該TSパケットを出力する制御を行う。このSPヘッダ比較モードは、IDEI/F回路120を介して入力される記録媒体からのTSパケットの転送に有効な転送モードである。本実施形態では、SPヘッダに含まれるタイムスタンプ情報が転送開始SPH設定レジスタ206の設定値と一致するTSパケットを用いてアイソクロナス転送を行い、最大でも最大連結パケット数設定レジスタ202に設定された設定値に対応したパケット数毎にアイソクロナス転送を行う。この際、SPHロード設定レジスタ204の設定値、送信オフセット値設定レジスタ208の設定値及びサイクルタイマ150のサイクルタイムに基づいて生成された値を含むSPヘッダを、元のSPヘッダに張り替えてTSパケットを送出する。なお、SRAM160に格納され転送すべきTSパケットが1パケット未満のとき、空パケットとしてNullパケットを転送する。   On the other hand, the data transfer control device 100 set in the SP header comparison mode refers to the SP header added to the TS packet stored in the SRAM 160 and corresponds to the cycle count updated by the cycle timer 150. Control to output TS packets. This SP header comparison mode is an effective transfer mode for transferring TS packets from a recording medium input via the IDE I / F circuit 120. In this embodiment, isochronous transfer is performed using a TS packet in which the time stamp information included in the SP header matches the setting value of the transfer start SPH setting register 206, and the setting set in the maximum connected packet number setting register 202 at the maximum. Isochronous transfer is performed for each number of packets corresponding to the value. At this time, the SP header including the setting value of the SPH load setting register 204, the setting value of the transmission offset value setting register 208, and the value generated based on the cycle time of the cycle timer 150 is replaced with the original SP header to create a TS packet. Is sent out. When the TS packet stored in the SRAM 160 and to be transferred is less than one packet, a null packet is transferred as an empty packet.

図9に、リンクコントローラ140の構成例のブロック図を示す。   FIG. 9 shows a block diagram of a configuration example of the link controller 140.

このリンクコントローラ140は、データ残量比較モード又はSPヘッダ比較モードのいずれかの転送モードで、ISOパケットを生成し、IEEE1394バスに出力する。   The link controller 140 generates an ISO packet and outputs it to the IEEE 1394 bus in either the data remaining amount comparison mode or the SP header comparison mode.

リンクコントローラ140は、処理部190に含まれるアクセス調停部250を介してSRAM160にアクセスできるようになっている。即ちリンクコントローラ140が、ヘッダを作成するためのアクセス制御信号、作成したヘッダを読み出すためのアクセス制御信号、ISOパケットのデータを読み出すためのアクセス制御信号をアクセス調停部250に出力する。アクセス調停部250は、これらのアクセス制御信号を調停し、調停後のアクセス制御信号に基づいてSRAM160にアクセスする。   The link controller 140 can access the SRAM 160 via the access arbitration unit 250 included in the processing unit 190. That is, the link controller 140 outputs an access control signal for creating the header, an access control signal for reading the created header, and an access control signal for reading the data of the ISO packet to the access arbitration unit 250. The access arbitration unit 250 arbitrates these access control signals and accesses the SRAM 160 based on the access control signal after the arbitration.

リンクコントローラ140のヘッダ作成回路142は、メモリアクセス制御部300、ヘッダ生成コントローラ310を含む。メモリアクセス制御部300は、ヘッダを作成するためのアクセス制御信号、作成したヘッダを読み出すためのアクセス制御信号を生成する。ヘッダ生成コントローラ310は、メモリアクセス制御部300を制御するための制御信号を生成する。   The header creation circuit 142 of the link controller 140 includes a memory access control unit 300 and a header generation controller 310. The memory access control unit 300 generates an access control signal for creating a header and an access control signal for reading the created header. The header generation controller 310 generates a control signal for controlling the memory access control unit 300.

リンクコントローラ140の送信制御回路144は、RAM制御信号生成部320、ISO送信シーケンサ330、ISO送信FIFO(First-In First-Out)340、張り替えSPH保持レジスタ350を含む。RAM制御信号生成部320は、ISOパケットを構成するTSパケット等のデータをSRAM160から読み出すためのアクセス制御信号を生成する。ISO送信シーケンサ330は、ISOパケットを送信するためのタイミング制御を行う。ISO送信FIFO340は、ISOパケットの送信バッファとして機能する。張り替えSPH保持レジスタ350は、サイクルタイマ150のサイクルタイムと送信オフセット値設定レジスタ208の設定値との加算値を保持する。張り替えSPH保持レジスタ350が保持する値は、ISO送信シーケンサ330からのSPH張り替えイネーブルに同期して、ISOパケットのSPヘッダのサイクルカウントとして設定される。   The transmission control circuit 144 of the link controller 140 includes a RAM control signal generation unit 320, an ISO transmission sequencer 330, an ISO transmission FIFO (First-In First-Out) 340, and a replacement SPH holding register 350. The RAM control signal generation unit 320 generates an access control signal for reading data such as TS packets constituting the ISO packet from the SRAM 160. The ISO transmission sequencer 330 performs timing control for transmitting an ISO packet. The ISO transmission FIFO 340 functions as a transmission buffer for ISO packets. The replacement SPH holding register 350 holds an addition value between the cycle time of the cycle timer 150 and the setting value of the transmission offset value setting register 208. The value held in the replacement SPH holding register 350 is set as the cycle count of the SP header of the ISO packet in synchronization with the SPH replacement enable from the ISO transmission sequencer 330.

以下、上述の構成において、各転送モードの動作について説明する。   Hereinafter, the operation of each transfer mode in the above configuration will be described.

2.1 データ残量比較モード
図10に、データ残量比較モードに設定されたデータ転送制御装置100の動作例の概要のフローを示す。
2.1 Data Remaining Comparison Mode FIG. 10 shows a general flow of an operation example of the data transfer control device 100 set in the data remaining amount comparison mode.

データ転送制御装置100は、図示しない転送イネーブル設定レジスタを有し、該転送イネーブル設定レジスタの設定値によりイネーブル状態又はディスエーブル状態に設定されるようになっている。   The data transfer control device 100 has a transfer enable setting register (not shown), and is set to an enable state or a disable state according to a set value of the transfer enable setting register.

まずデータ転送制御装置100が、転送イネーブル設定レジスタによりイネーブル状態に設定される(ステップS10)。その後、ストリームI/F回路110を介してTSパケットを受け付け、SRAM160に格納される。   First, the data transfer control device 100 is enabled by the transfer enable setting register (step S10). Thereafter, TS packets are received via the stream I / F circuit 110 and stored in the SRAM 160.

そして、リンクコントローラ140が、SRAM160のデータ残量を判別する(ステップS11)。SRAM160のデータ残量が1パケット以上であると判別されたとき(ステップS11:Y)、ISOヘッダを作成し(ステップS12)、ISOパケットを生成する(ステップS13)。   Then, the link controller 140 determines the remaining amount of data in the SRAM 160 (step S11). When it is determined that the remaining amount of data in the SRAM 160 is 1 packet or more (step S11: Y), an ISO header is created (step S12), and an ISO packet is generated (step S13).

ステップS11において、SRAM160のデータ残量が1パケット未満であると判別されたとき(ステップS11:N)、Nullパケットを生成する(ステップS14)。   In step S11, when it is determined that the remaining amount of data in the SRAM 160 is less than one packet (step S11: N), a null packet is generated (step S14).

ステップS13又はステップS14の後は、次のISOサイクルになったとき(ステップS15:Y)、ステップS13で生成したISOパケット又はステップS14のNullパケットを送信する(ステップS16)。   After step S13 or step S14, when the next ISO cycle is reached (step S15: Y), the ISO packet generated in step S13 or the null packet in step S14 is transmitted (step S16).

その後、所定の終了条件を満たすとき(ステップS17:Y)、一連の処理を終了する(エンド)。所定の終了条件を満たさないとき(ステップS17:N)、ステップS11に戻る。   Thereafter, when a predetermined end condition is satisfied (step S17: Y), a series of processing ends (end). When the predetermined end condition is not satisfied (step S17: N), the process returns to step S11.

データ転送制御装置100の各回路又は各ユニット(部)は、以上のような処理を独立に、又は処理部190の制御下で動作する。   Each circuit or each unit (unit) of the data transfer control device 100 operates as described above independently or under the control of the processing unit 190.

図11に、データ転送制御装置の処理タイミングの説明図を示す。   FIG. 11 is an explanatory diagram of processing timing of the data transfer control device.

図10に示す処理のうち、SRAM160のデータ残量を求めてデータ転送すべきか否かを判別するデータ残量確認処理は、サイクルスタートパケット60を基準に開始されるISOサイクル期間のアイソクロナス転送64の後に行う。そして、当該ISOサイクル期間内のデータ残量確認処理後に、ISOパケットのヘッダ生成処理を行う。   Of the processes shown in FIG. 10, the remaining data confirmation process for determining whether or not to transfer data by obtaining the remaining data in the SRAM 160 is performed by the isochronous transfer 64 in the ISO cycle period started with the cycle start packet 60 as a reference. To do later. Then, after the data remaining amount confirmation processing within the ISO cycle period, the ISO packet header generation processing is performed.

図12に、データ残量比較モードの説明図を示す。図12において、図8と同一部分には同一符号を付し、適宜説明を省略する。   FIG. 12 is an explanatory diagram of the remaining data comparison mode. In FIG. 12, the same parts as those of FIG.

本実施形態では、リアルタイム性が要求されるアイソクロナス転送を行う場合、TSパケットを転送先に出力する際に、リンクコントローラ140が、サイクルタイマ150の現在のサイクルタイムを基準にオフセット値だけ先行したサイクルタイムに対応した出力タイムスタンプ情報を、該パケットデータに付加する。このとき、タイムスタンプ情報が未付加のパケットデータがデータ転送制御装置100に入力されたときに、サイクルタイマ150のサイクルタイムに対応した入力タイムスタンプ情報を、一旦、該TSパケットに付加することができる。そして、TSパケットを転送先に出力する際に、リンクコントローラ140が、入力タイムスタンプ情報として付加されたサイクルタイムを基準にオフセット値だけ先行したサイクルタイムに対応した第1のタイムスタンプ情報を、出力タイムスタンプ情報として、送信制御回路144が入力タイムスタンプ情報に替えて設定してもよい。   In this embodiment, when performing isochronous transfer that requires real-time performance, when outputting a TS packet to a transfer destination, the link controller 140 uses a cycle that precedes the current cycle time of the cycle timer 150 by an offset value. Output time stamp information corresponding to the time is added to the packet data. At this time, when packet data to which time stamp information is not added is input to the data transfer control device 100, input time stamp information corresponding to the cycle time of the cycle timer 150 may be temporarily added to the TS packet. it can. Then, when outputting the TS packet to the transfer destination, the link controller 140 outputs the first time stamp information corresponding to the cycle time preceding by the offset value based on the cycle time added as the input time stamp information. The time stamp information may be set by the transmission control circuit 144 instead of the input time stamp information.

この場合、ストリームI/F回路110が、SPH付加回路114を含み、SPH付加回路114が入力タイムスタンプ情報をTSパケットに付加することができる。この場合、SRAM160には、SPヘッダが付加されたTSパケットが格納されることになる。   In this case, the stream I / F circuit 110 includes the SPH adding circuit 114, and the SPH adding circuit 114 can add the input time stamp information to the TS packet. In this case, the SRAM 160 stores the TS packet with the SP header added.

SPH付加回路114は、サイクルタイマ150によって更新されるサイクルタイムを参照して、例えば受信装置からのMPEG2TSマルチストリームのTSパケットに、入力タイムスタンプ情報として、TSパケットの到着時刻をSPヘッダに付加する。この到着時刻は、出力タイムスタンプ情報を求める際に、いつ受け取ったかを特定するための情報として付加されることになる。ストリームI/F回路110を介して入力されたTSパケットは、PIDフィルタ180に供給される。   The SPH addition circuit 114 refers to the cycle time updated by the cycle timer 150 and adds the arrival time of the TS packet to the SP header as input time stamp information, for example, to the TS packet of the MPEG2TS multi-stream from the receiving device. . The arrival time is added as information for specifying when the arrival time stamp information is received. TS packets input via the stream I / F circuit 110 are supplied to the PID filter 180.

図13(A)に、SPH付加回路114の動作説明図を示す。図13(B)に、PIDフィルタ後のTSパケットの説明図を示す。図13(A)、(B)では、TSパケットのSPヘッダのみを示し、ISOヘッダやCIPヘッダの図示を省略している。   FIG. 13A shows an operation explanatory diagram of the SPH addition circuit 114. FIG. 13B shows an explanatory diagram of a TS packet after the PID filter. In FIGS. 13A and 13B, only the SP header of the TS packet is shown, and the ISO header and the CIP header are not shown.

BSデジタル放送で配信されるTSパケットには、タイムスタンプ情報が付加されていない。従って、受信装置で受信されてストリームI/F回路110に入力されるTSパケットには、タイムスタンプ情報が未付加の状態である。そこでSPH付加回路114が、TSパケットが入力された時点のタイムスタンプ情報としてサイクルタイマ150のサイクルタイムをSPヘッダのサイクルカウントとして設定する。図13(A)では、サイクルタイムが3000のときに入力されたTSパケットには、サイクルカウントが3000に設定されたSPヘッダが付加される。同様に、サイクルタイムが3001のときに入力されたTSパケットには、サイクルカウントが3001に設定されたSPヘッダが付加される。   Time stamp information is not added to TS packets distributed by BS digital broadcasting. Therefore, the time stamp information is not added to the TS packet received by the receiving apparatus and input to the stream I / F circuit 110. Therefore, the SPH addition circuit 114 sets the cycle time of the cycle timer 150 as the cycle count of the SP header as time stamp information at the time when the TS packet is input. In FIG. 13A, an SP header with a cycle count set to 3000 is added to a TS packet input when the cycle time is 3000. Similarly, an SP header with the cycle count set to 3001 is added to the TS packet input when the cycle time is 3001.

PIDフィルタ180は、不要なチャネルのパケットを削除し、図13(B)に示す各パケットをSRAM160に供給する。   The PID filter 180 deletes unnecessary channel packets and supplies each packet shown in FIG.

SRAM260の記憶領域は、ヘッダ領域とデータ領域とに分離したり、送信用領域と受信用領域とに分離することが望ましい。またデータ領域を、アシンクロナス用領域とアイソクロナス用領域とに分離してもよい。   The storage area of the SRAM 260 is desirably separated into a header area and a data area, or a transmission area and a reception area. The data area may be divided into an asynchronous area and an isochronous area.

図14に、SRAM160のメモリマップの一例を示す。   FIG. 14 shows an example of the memory map of the SRAM 160.

図14では、SRAM160が、ヘッダ領域(送信ヘッダ領域、受信ヘッダ領域)とデータ領域(アシンクロナス送信データ領域、アシンクロナス受信データ領域、アイソクロナス送信データ領域、アイソクロナス受信データ領域)とに分離されている。そして、パケットのヘッダ(制御情報)はヘッダ領域に格納され、パケットのデータ(アシンクロナスデータ、アイソクロナスデータ)はデータ領域に格納される。   In FIG. 14, the SRAM 160 is divided into a header area (transmission header area, reception header area) and a data area (asynchronous transmission data area, asynchronous reception data area, isochronous transmission data area, isochronous reception data area). The packet header (control information) is stored in the header area, and the packet data (asynchronous data, isochronous data) is stored in the data area.

また図14では、データ領域が、アシンクロナス(非同期)用領域(アシンクロナス送信データ領域、アシンクロナス受信データ領域)とアイソクロナス用領域(アイソクロナス送信データ領域、アイソクロナス受信データ領域)とに分離されている。更に図14では、SRAM160が、送信用領域(アシンクロナス送信データ領域、アイソクロナス送信データ領域)と受信用領域(アシンクロナス受信データ領域、アイソクロナス受信データ領域)とに分離されている。   In FIG. 14, the data area is divided into an asynchronous (asynchronous) area (asynchronous transmission data area and asynchronous reception data area) and an isochronous area (isochronous transmission data area and isochronous reception data area). Further, in FIG. 14, the SRAM 160 is divided into a transmission area (asynchronous transmission data area and isochronous transmission data area) and a reception area (asynchronous reception data area and isochronous reception data area).

更にまた図14では、送信ヘッダ領域が、自動転送用ヘッダ領域、Nullパケット用ヘッダ領域及びアイソクロナスヘッダ領域とを含む。自動転送用ヘッダ領域には、データ残量比較モード又はSPヘッダ比較モードにおいてISOパケットを転送するために予め作成されたヘッダ(ISOヘッダ、CIPヘッダ、SPヘッダ)の基本情報が格納される。Nullパケット用ヘッダ領域には、データ残量比較モード又はSPヘッダ比較モードにおいてNullパケットを転送するために予め作成されたヘッダ(ISOヘッダ、CIPヘッダ)の基本情報が格納される。そして、ISOパケット又はNullパケットを転送する際に、リンクコントローラ140のヘッダ作成回路142が、自動転送用ヘッダ領域又はNullパケット用ヘッダ領域からヘッダの基本情報を読み出して、所定の情報を書き換えてSRAM160のアイソクロナスヘッダ領域に書き戻す。そして、送信制御回路144が、書き戻されたヘッダ情報をアイソクロナスヘッダ領域から読み出すと共に、アイソクロナス送信データ領域からアイソクロナスデータを読み出してISOパケットを構築する。   Furthermore, in FIG. 14, the transmission header area includes an automatic transfer header area, a null packet header area, and an isochronous header area. In the automatic transfer header area, basic information of headers (ISO header, CIP header, SP header) created in advance for transferring the ISO packet in the data remaining amount comparison mode or the SP header comparison mode is stored. The Null packet header area stores basic information of a header (ISO header, CIP header) created in advance for transferring a null packet in the remaining data comparison mode or the SP header comparison mode. Then, when transferring the ISO packet or the null packet, the header creation circuit 142 of the link controller 140 reads the basic information of the header from the header area for automatic transfer or the header area for the null packet, rewrites the predetermined information, and the SRAM 160 Write back to the isochronous header area. Then, the transmission control circuit 144 reads the rewritten header information from the isochronous header area, and reads isochronous data from the isochronous transmission data area to construct an ISO packet.

このように、ヘッダ領域及びデータ領域に分離したり、送信用領域及び受信用領域に分離したり、アイソクロナス転送用領域及びアシンクロナス転送用領域に分離したりすることで、SRAM160の記憶領域を管理し易くなる。そのため、パケットの送受信の際にSRAM160へのアクセスが簡素化される。   In this way, the storage area of the SRAM 160 is managed by separating the header area and the data area, separating the transmission area and the reception area, and separating the isochronous transfer area and the asynchronous transfer area. It becomes easy. Therefore, access to the SRAM 160 is simplified when packets are transmitted and received.

従って、本実施形態のようにパケットメモリとして、例えばSPH付加回路114によって入力タイムスタンプ情報が付加されたTSパケットが記憶されるデータ領域と、ヘッダ作成回路142によって作成されたヘッダ情報が記憶されるヘッダ領域とを有するSRAM160を備えることが望ましい。この場合、パケット生成回路としての送信制御回路144(リンクコントローラ140)が、SRAM160のデータ領域からのパケットデータに含まれる出力タイムスタンプ情報を入力タイムスタンプ情報に替えて設定し、該パケットデータとSRAM160のヘッダ領域からのヘッダ情報とを結合したパケットデータ(広義には出力用パケットデータ)を送信する。ヘッダを予め作成してハードウェアでパケットにヘッダを付加する場合、ヘッダ領域及びデータ領域を分離しておくことで、容易にパケットデータの結合処理やヘッダの付加処理を実現できるようになる。   Therefore, as in the present embodiment, as a packet memory, for example, a data area in which a TS packet to which input time stamp information is added by the SPH addition circuit 114 and a header information created by the header creation circuit 142 are stored. It is desirable to include an SRAM 160 having a header area. In this case, the transmission control circuit 144 (link controller 140) as a packet generation circuit sets the output time stamp information included in the packet data from the data area of the SRAM 160 instead of the input time stamp information, and the packet data and the SRAM 160 are set. Packet data combined with header information from the header area (output packet data in a broad sense) is transmitted. When a header is created in advance and a header is added to a packet by hardware, packet data combining processing and header addition processing can be easily realized by separating the header area and the data area.

なお、図14の各領域は、いわゆるリングバッファ構造になっている。即ち、これらの領域の一方の境界(スタートアドレス)から他方の境界(エンドアドレス)に向かってパケットのヘッダ又はデータが格納され、他方の境界に達した場合には一方の境界に戻ってパケットのヘッダ又はデータが格納されるようになっている。こうすることで、SRAM160の記憶容量を効率的に活用できる。また図14のように用途別に各領域を分離しているため、リングバッファ構造を実現し易くなる。   Each region in FIG. 14 has a so-called ring buffer structure. That is, the header or data of the packet is stored from one boundary (start address) to the other boundary (end address) of these areas. When the other boundary is reached, the packet returns to one boundary and returns to the packet boundary. A header or data is stored. By doing so, the storage capacity of the SRAM 160 can be used efficiently. Also, as shown in FIG. 14, each region is separated for each application, so that a ring buffer structure can be easily realized.

図12において、PIDフィルタ180によって不要なチャネルが削除されたパケットデータは、図14に示すSRAM160のアイソクロナス送信データ領域に格納される。   In FIG. 12, packet data from which unnecessary channels are deleted by the PID filter 180 is stored in the isochronous transmission data area of the SRAM 160 shown in FIG.

図15に、SRAM160に格納されたパケットデータの送信動作の説明図を示す。   FIG. 15 is an explanatory diagram of the transmission operation of the packet data stored in the SRAM 160.

データ残量比較モードでアイソクロナス転送を行う場合、あるISOサイクルにおいて、SRAM160にTSパケットが蓄積されているとき、当該TSパケットをすべてISOパケットに構築してIEEE1394バスに出力する。その際、TSパケットに付加された入力タイムスタンプ情報のまま転送すると、デコーダに入力された際には未来の時刻を指定することになる。例えば現在のサイクルタイムが3000の時刻でTSパケットを送信すると、受信側に到達するときにはサイクルタイムが進み、到達時のサイクルタイムは例えば3000より大きな値となっている。そのため、タイムスタンプ情報として3000が指定されたTSパケットをデコードする場合、サイクルカウントが1周して再びサイクルタイムが3000となるまで再生されないことになる。   When isochronous transfer is performed in the remaining data comparison mode, when TS packets are accumulated in the SRAM 160 in a certain ISO cycle, all the TS packets are constructed into ISO packets and output to the IEEE 1394 bus. At this time, if the input time stamp information added to the TS packet is transferred as it is, a future time is designated when it is input to the decoder. For example, when a TS packet is transmitted at a time when the current cycle time is 3000, the cycle time advances when reaching the receiving side, and the cycle time at the time of arrival is larger than, for example, 3000. Therefore, when a TS packet in which 3000 is specified as time stamp information is decoded, the TS packet is not reproduced until the cycle count reaches one cycle and the cycle time reaches 3000 again.

そこで本実施形態では、SRAM160から読み出したTSパケットを転送する際に、現在のSPヘッダのサイクルカウントにオフセット値を加算した値を、再びSPヘッダに設定し直して送信する。より具体的には、SRAM160から読み出したTSパケットのSPヘッダにタイムスタンプ情報として付加されたサイクルカウントを参照し、該サイクルカウントに送信オフセット値設定レジスタ208の設定値を加算した値を、SPヘッダのサイクルカウントとして再設定して送信する。   Therefore, in the present embodiment, when the TS packet read from the SRAM 160 is transferred, the value obtained by adding the offset value to the cycle count of the current SP header is set again in the SP header and transmitted. More specifically, the cycle count added as time stamp information to the SP header of the TS packet read from the SRAM 160 is referred to, and a value obtained by adding the set value of the transmission offset value setting register 208 to the cycle count is used as the SP header. Re-set as the cycle count and send.

図15では、送信オフセット値設定レジスタ208の設定値が5である場合を示している。このため、図15では、SRAM160から読み出したTSパケットのSPヘッダにタイムスタンプ情報として付加されたサイクルカウントに5を加算した値を、SPヘッダのサイクルカウントとして再設定して送信している。そして、例えばSRAM160に格納されたTSパケットは、ISOパケットに構築されて次のISOサイクルで送信される。   FIG. 15 shows a case where the setting value of the transmission offset value setting register 208 is 5. For this reason, in FIG. 15, a value obtained by adding 5 to the cycle count added as time stamp information to the SP header of the TS packet read from the SRAM 160 is reset and transmitted as the cycle count of the SP header. For example, the TS packet stored in the SRAM 160 is constructed into an ISO packet and transmitted in the next ISO cycle.

より具体的には、リンクコントローラ140が、以下のようにしてSRAM160に格納されたTSパケットをISOパケットに構築して送信する。   More specifically, the link controller 140 constructs the TS packet stored in the SRAM 160 as an ISO packet and transmits it as follows.

図12において、ポインタコントローラ170は、SRAM160に格納されているTSパケットの量を判別するためのSRAM内データ残量情報を求める。より具体的には、ポインタコントローラ170は、SRAM160の書き込みポインタであるストリーム側ポインタとSRAM160の読み出しポインタであるリンク側ポインタとの差分に対応したSRAM内データ残量情報を求める。ポインタコントローラ170によって求められたSRAM内データ残量情報は、リンクコントローラ140のヘッダ作成回路142に供給される。   In FIG. 12, the pointer controller 170 obtains data remaining in the SRAM information for determining the amount of TS packets stored in the SRAM 160. More specifically, the pointer controller 170 obtains data remaining in the SRAM information corresponding to the difference between the stream side pointer that is the write pointer of the SRAM 160 and the link side pointer that is the read pointer of the SRAM 160. The remaining data amount information in the SRAM obtained by the pointer controller 170 is supplied to the header creation circuit 142 of the link controller 140.

ヘッダ作成回路142は、ポインタコントローラ170からのSRAM内データ残量情報に基づいて、SRAM160に1パケット以上のTSパケットがあるか否かを判別する。そしてSRAM160に1パケット以上のTSパケットがあると判別されると、ISOパケットを生成するためのISOヘッダを作成する。ヘッダ作成回路142が作成したISOヘッダは、SRAM160のアイソクロナスヘッダ領域に格納される。   The header creation circuit 142 determines whether there are one or more TS packets in the SRAM 160 based on the remaining data amount information in the SRAM from the pointer controller 170. When it is determined that there are one or more TS packets in the SRAM 160, an ISO header for generating an ISO packet is created. The ISO header created by the header creation circuit 142 is stored in the isochronous header area of the SRAM 160.

送信制御回路144は、SRAM160のアイソクロナスヘッダ領域に、ヘッダ作成回路142によって作成されたISOヘッダがあるか否かを検出する。SRAM160にアイソクロナスヘッダ領域にISOヘッダがあると検出されたとき、送信制御回路144は、アイソクロナス領域から当該ISOヘッダを読み出すと共に、アイソクロナス送信データ領域からデータ(TSパケット)を読み出す。そして、送信制御回路144は、当該データに付加されたSPヘッダを、現在のサイクルタイムに送信オフセット値設定レジスタ208の設定値を加算した値を有するSPヘッダに替えて出力する。   The transmission control circuit 144 detects whether or not there is an ISO header created by the header creation circuit 142 in the isochronous header area of the SRAM 160. When it is detected that there is an ISO header in the isochronous header area in the SRAM 160, the transmission control circuit 144 reads the ISO header from the isochronous area and reads data (TS packets) from the isochronous transmission data area. Then, the transmission control circuit 144 outputs the SP header added to the data in place of the SP header having a value obtained by adding the setting value of the transmission offset value setting register 208 to the current cycle time.

なお、SRAM160にアイソクロナス領域にISOヘッダがないと検出されたとき、送信制御回路144は、Nullパケット用ヘッダ領域からNullパケット用ヘッダを読み出す。そして、送信制御回路144は、このNullパケット用ヘッダをNullパケットとして出力する。   When it is detected that there is no ISO header in the isochronous area in the SRAM 160, the transmission control circuit 144 reads the Null packet header from the Null packet header area. Then, the transmission control circuit 144 outputs this Null packet header as a Null packet.

以下、図9を参照しながらリンクコントローラ140の動作について説明する。   Hereinafter, the operation of the link controller 140 will be described with reference to FIG.

図16に、Nullパケットを送信する場合のリンクコントローラ140の動作例のタイミング図を示す。   FIG. 16 shows a timing diagram of an operation example of the link controller 140 when a null packet is transmitted.

まず処理部190から自動転送イネーブルを受け取ると、ヘッダ作成回路142が動作を開始する。図16では、自動転送イネーブルによってイネーブル状態に設定されているものとする。   First, when an automatic transfer enable is received from the processing unit 190, the header creation circuit 142 starts its operation. In FIG. 16, it is assumed that the enable state is set by the automatic transfer enable.

この状態において、ヘッダ作成回路142がISOパケット転送完了信号を受け取るとアイソクロナスヘッダの生成を開始する。ISOパケット転送完了信号は、当該ISOサイクルにおいてISO送信シーケンサ330のタイミング制御に基づいてISOパケットの転送が完了したときにアクティブとなる。   In this state, when the header creation circuit 142 receives the ISO packet transfer completion signal, generation of an isochronous header is started. The ISO packet transfer completion signal becomes active when the transfer of the ISO packet is completed based on the timing control of the ISO transmission sequencer 330 in the ISO cycle.

ISOパケット転送完了信号を受け取ったヘッダ生成コントローラ310のシーケンサ312は、ポインタコントローラ170からのSRAM内データ残量情報に基づいて、SRAM160内に格納されるTSパケットが1パケット以上であるか否かを判別する(E1)。   The sequencer 312 of the header generation controller 310 that has received the ISO packet transfer completion signal determines whether one or more TS packets are stored in the SRAM 160 based on the remaining data information in the SRAM from the pointer controller 170. Determine (E1).

SRAM160内に格納されるTSパケットが1パケット未満のとき、シーケンサ312がNextNullを有効にして、ヘッダ読み出しスタート信号をアクティブにする(E2)。これにより、メモリアクセス制御部300のヘッダアクセスコントローラ302は、図14で説明したようにSRAM160のNullパケット用ヘッダ領域からヘッダを読み出す(E3)。   When the TS packet stored in the SRAM 160 is less than one packet, the sequencer 312 enables NextNull and activates the header read start signal (E2). As a result, the header access controller 302 of the memory access control unit 300 reads the header from the Null packet header area of the SRAM 160 as described with reference to FIG. 14 (E3).

次に、ヘッダアクセスコントローラ302は、読み出したNullパケット用ヘッダ領域をSRAM160のアイソクロナスヘッダ領域に書き込む(E4)。ヘッダアクセスコントローラ302は、ヘッダ書き込み終了をアクティブにしてシーケンサ312に通知する。   Next, the header access controller 302 writes the read Null packet header area in the isochronous header area of the SRAM 160 (E4). The header access controller 302 activates the end of writing the header and notifies the sequencer 312.

そして、サイクルスタートパケットを受けてアイソサイクルスタート信号がアクティブとなると(E5)、次のISOサイクルが開始される。ISO送信シーケンサ330は、RAM制御信号生成部320を介してSRAM160のアイソクロナスヘッダ領域からヘッダを読み出して、必要に応じてデータレングスを書き換えてNullパケットとして送信する(E6)。Nullパケットであるため、データを含まない。   When the cycle start packet is received and the isocycle start signal becomes active (E5), the next ISO cycle is started. The ISO transmission sequencer 330 reads the header from the isochronous header area of the SRAM 160 via the RAM control signal generation unit 320, rewrites the data length as necessary, and transmits it as a null packet (E6). Since it is a null packet, it does not contain data.

図17に、ISOパケットを送信する場合のリンクコントローラ140の動作例のタイミング図を示す。図17においても、自動転送イネーブルによってイネーブル状態に設定されているものとする。   FIG. 17 shows a timing diagram of an operation example of the link controller 140 when transmitting an ISO packet. Also in FIG. 17, it is assumed that the enable state is set by the automatic transfer enable.

当該ISOサイクルにおいて例えばNullパケットの送信を完了すると、ISO送信シーケンサ330がISOパケット転送完了信号をアクティブにする。ISOパケット転送完了信号を受け取ったヘッダ生成コントローラ310のシーケンサ312は、ポインタコントローラ170からのSRAM内データ残量情報に基づいて、SRAM160内に格納されるTSパケットが1パケット以上であるか否かを判別する(E10)。   For example, when transmission of a null packet is completed in the ISO cycle, the ISO transmission sequencer 330 activates an ISO packet transfer completion signal. The sequencer 312 of the header generation controller 310 that has received the ISO packet transfer completion signal determines whether one or more TS packets are stored in the SRAM 160 based on the remaining data information in the SRAM from the pointer controller 170. Discriminate (E10).

SRAM160内に格納されるTSパケットが1パケット以上のとき、シーケンサ312がNextNullを無効にして、ヘッダ読み出しスタート信号をアクティブにする(E11)。これにより、メモリアクセス制御部300のヘッダアクセスコントローラ302は、図14で説明したようにSRAM160の自動転送用ヘッダ領域からヘッダの基本情報を読み出す(E12)。   When the number of TS packets stored in the SRAM 160 is one or more, the sequencer 312 invalidates NextNull and activates the header read start signal (E11). As a result, the header access controller 302 of the memory access control unit 300 reads the basic information of the header from the automatic transfer header area of the SRAM 160 as described with reference to FIG. 14 (E12).

ヘッダ生成コントローラ310の転送データ長計算部314は、SRAM内データ残量情報を用いて、次のISOサイクルで転送できるISOパケットのデータ長を求める。メモリアクセス制御部300のヘッダ書き換え部304は、転送データ長計算部314からの転送データ長を用いて自動転送用ヘッダから読み出したヘッダの基本情報を書き換える。そして、ヘッダアクセスコントローラ302は、書き換え後のヘッダをSRAM160のアイソクロナスヘッダ領域に書き込む(E13)。ヘッダアクセスコントローラ302は、ヘッダ書き込み終了をアクティブにしてシーケンサ312に通知する。   The transfer data length calculation unit 314 of the header generation controller 310 obtains the data length of the ISO packet that can be transferred in the next ISO cycle using the remaining data amount information in the SRAM. The header rewriting unit 304 of the memory access control unit 300 rewrites the basic information of the header read from the automatic transfer header using the transfer data length from the transfer data length calculation unit 314. Then, the header access controller 302 writes the rewritten header in the isochronous header area of the SRAM 160 (E13). The header access controller 302 activates the end of writing the header and notifies the sequencer 312.

そして、サイクルスタートパケットを受けてアイソサイクルスタート信号がアクティブとなると(E14)、次のISOサイクルが開始される。ISO送信シーケンサ330は、RAM制御信号生成部320を介してSRAM160のアイソクロナスヘッダ領域からヘッダを読み出して、SRAM160のアイソクロナス送信データ領域からデータを読み出してISOパケットを生成し、ISOパケットとして送信する(E15)。   When the cycle start packet is received and the isocycle start signal becomes active (E14), the next ISO cycle is started. The ISO transmission sequencer 330 reads the header from the isochronous header area of the SRAM 160 via the RAM control signal generator 320, reads the data from the isochronous transmission data area of the SRAM 160, generates an ISO packet, and transmits it as an ISO packet (E15). ).

以上のように、本実施形態では、パケットが受信側に到着した直後にサイクルタイムがSPヘッダの値に一致するようになり、転送データの確実な時間管理を実現し、データ転送に伴う処理負荷の軽減及び低コスト化を図ることができるようになる。   As described above, in this embodiment, the cycle time matches the value of the SP header immediately after the packet arrives at the receiving side, so that reliable time management of the transfer data is realized, and the processing load accompanying data transfer Can be reduced and the cost can be reduced.

なお、上述したように所定の送信オフセット値を現在のサイクルタイムに加算するようにしてもよいが、より正確には以下のようにSPヘッダを置換することが望ましい。即ち、SPH付加回路114に付加されたタイムスタンプ情報(第1のタイムスタンプ情報)とサイクルタイマ150の現在のサイクルタイムとに基づいて、現在のサイクルタイムにおいて付加すべき第2のタイムスタンプ情報を求め、該第2のタイムスタンプ情報を、出力タイムスタンプ情報として入力タイムスタンプ情報に替えて設定する。これにより、送信オフセット値で現在のサイクルタイムに対して一定のオフセット値を持たせる場合に比べて、より細かい時間管理を実現できるようになる。   As described above, a predetermined transmission offset value may be added to the current cycle time, but more precisely, it is desirable to replace the SP header as follows. That is, based on the time stamp information (first time stamp information) added to the SPH addition circuit 114 and the current cycle time of the cycle timer 150, the second time stamp information to be added at the current cycle time is obtained. Then, the second time stamp information is set as output time stamp information instead of the input time stamp information. As a result, finer time management can be realized as compared with the case where the transmission offset value has a constant offset value with respect to the current cycle time.

2.2 SPヘッダ比較モード
図18に、SPヘッダ比較モードに設定されたデータ転送制御装置100の動作例の概要のフローを示す。
2.2 SP Header Comparison Mode FIG. 18 shows a general flow of an operation example of the data transfer control device 100 set in the SP header comparison mode.

まずデータ転送制御装置100が、転送イネーブル設定レジスタによりイネーブル状態に設定される(ステップS20)。ここで、SPHロード設定レジスタ204によりSPHロード設定がイネーブル状態に設定されたか、ディスエーブル状態に設定されたかを判別する(ステップS21)。   First, the data transfer control device 100 is set to an enable state by the transfer enable setting register (step S20). Here, it is determined by the SPH load setting register 204 whether the SPH load setting is set to the enable state or the disable state (step S21).

SPHロード設定がイネーブル状態に設定されたとき(ステップS21:Y)、SRAM160内の先頭パケットのSPヘッダのサイクルカウントを比較値として設定する(ステップS22)。この比較値は、転送開始SPH設定レジスタ206に設定される。   When the SPH load setting is enabled (step S21: Y), the SP header cycle count of the first packet in the SRAM 160 is set as a comparison value (step S22). This comparison value is set in the transfer start SPH setting register 206.

一方、SPHロード設定がディスエーブル状態に設定されたとき(ステップS21:N)、ファームウェアで指定された値を比較値として設定する(ステップS23)。この比較値もまた、転送開始SPH設定レジスタ206に設定される。   On the other hand, when the SPH load setting is disabled (step S21: N), the value designated by the firmware is set as a comparison value (step S23). This comparison value is also set in the transfer start SPH setting register 206.

なお転送イネーブル設定後に、ストリームI/F回路110を介してTSパケットを受け付け、SRAM160に格納される。   After the transfer enable setting, TS packets are accepted via the stream I / F circuit 110 and stored in the SRAM 160.

そして、ステップS22又はステップS23の後は、リンクコントローラ140が、SRAM160のデータ残量が、最大連結パケット数以上であるか否かを判別する(ステップS24)。最大連結パケット数は、最大連結パケット数設定レジスタ202に設定される。   After step S22 or step S23, the link controller 140 determines whether or not the remaining data amount of the SRAM 160 is equal to or greater than the maximum number of connected packets (step S24). The maximum concatenated packet number is set in the maximum concatenated packet number setting register 202.

SRAM160のデータ残量が最大連結パケット数以上のとき(ステップS24:Y)、SRAM160のアイソクロナスデータ領域に格納された各TSパケットに付加されるSPヘッダを参照し、比較値と一致するサイクルカウントを有するSPヘッダが付加されたTSパケットがあるか否かを検出する(ステップS25)。   When the remaining amount of data in the SRAM 160 is equal to or greater than the maximum number of concatenated packets (step S24: Y), the SP header added to each TS packet stored in the isochronous data area of the SRAM 160 is referred to and the cycle count that matches the comparison value is It is detected whether there is a TS packet to which the SP header is added (step S25).

ステップS24においてデータ残量が最大連結パケット数に満たないとき(ステップS24:N)、Nullパケットデータを生成する(ステップS26)。   When the remaining data amount is less than the maximum number of concatenated packets in step S24 (step S24: N), null packet data is generated (step S26).

ステップS25においてSRAM160のアイソクロナスデータ領域に比較値と一致するサイクルカウントを有するSPヘッダが付加されたTSパケットがないと検出されたとき(ステップS25:N)、比較値をインクリメントした後に(ステップS27)、Nullパケットデータを生成する(ステップS26)。   When it is detected in step S25 that there is no TS packet with an SP header having a cycle count that matches the comparison value in the isochronous data area of the SRAM 160 (step S25: N), after incrementing the comparison value (step S27) Null packet data is generated (step S26).

ステップS25において、SRAM160のアイソクロナスデータ領域に比較値と一致するサイクルカウントを有するSPヘッダが付加されたTSパケットがあると検出されたとき(ステップS25:Y)、比較値と不一致のサイクルカウントを有するSPヘッダが付加されたTSパケットがあることを条件に(ステップS28:Y)、比較値をインクリメントする(ステップS29)。   In step S25, when it is detected that there is a TS packet to which an SP header having a cycle count matching the comparison value is added in the isochronous data area of the SRAM 160 (step S25: Y), the cycle count does not match the comparison value. On the condition that there is a TS packet with an SP header added (step S28: Y), the comparison value is incremented (step S29).

ステップS29の後、又はステップS28において比較値と不一致のサイクルカウントを有するSPヘッダが付加されたTSパケットがないとき(ステップS28:N)、ISOパケット用のヘッダを作成し(ステップS30)、現在のサイクルタイムにオフセット値だけ先行させた値をサイクルカウントとして有するSPヘッダに替えて設定されたISOパケットを生成する(ステップS31)。   After step S29 or when there is no TS packet with an SP header having a cycle count that does not match the comparison value in step S28 (step S28: N), a header for the ISO packet is created (step S30). A set ISO packet is generated in place of the SP header having a cycle count that precedes the cycle time by an offset value (step S31).

ステップS26又はステップS31の後は、次のISOサイクルになったとき(ステップS32:Y)、ステップS31で生成したISOパケット又はステップS26のNullパケットを送信する(ステップS33)。   After step S26 or step S31, when the next ISO cycle is reached (step S32: Y), the ISO packet generated in step S31 or the null packet in step S26 is transmitted (step S33).

その後、所定の終了条件を満たすとき(ステップS34:Y)、一連の処理を終了する(エンド)。所定の終了条件を満たさないとき(ステップS34:N)、ステップS24に戻る。   Thereafter, when a predetermined end condition is satisfied (step S34: Y), a series of processing ends (end). When the predetermined end condition is not satisfied (step S34: N), the process returns to step S24.

データ転送制御装置100の各回路又は各ユニット(部)は、以上のような処理を独立に、又は処理部190の制御下で動作する。   Each circuit or each unit (unit) of the data transfer control device 100 operates as described above independently or under the control of the processing unit 190.

SPヘッダ比較モードにおいても、SRAM160のデータ残量を求めてデータ転送すべきか否かを判別するデータ残量確認処理は、ISOサイクル期間のアイソクロナス転送の後に行う。そして、当該ISOサイクル期間内のデータ残量確認処理後に、ISOパケットのヘッダ作成処理を行う。   Even in the SP header comparison mode, the remaining data check process for determining whether or not to transfer data by obtaining the remaining data in the SRAM 160 is performed after isochronous transfer in the ISO cycle period. Then, after the data remaining amount confirmation processing in the ISO cycle period, the ISO packet header creation processing is performed.

図19に、SPヘッダ比較モードの説明図を示す。図19において、図8又は図12と同一部分には同一符号を付し、適宜説明を省略する。   FIG. 19 shows an explanatory diagram of the SP header comparison mode. In FIG. 19, the same parts as those in FIG. 8 or FIG.

SPヘッダ比較モードに設定されたデータ転送制御装置100は、IEEE1394バスと記録媒体との間に設けられる。従って、記録媒体としてのHDDやDVDの記録・再生装置にMPEG2TSを記録する場合、データ転送制御装置100に接続されたIEEE1394バスを介して転送されたパケットか、ストリームI/F回路110を介して受信したストリームのパケットかのいずれかである。IEEE1394バスを介して転送されたパケットは、IEC61883規格に準拠して、SPヘッダが既に付加されている。ストリームI/F回路110を介して受信されたストリームのパケットには、SPH付加回路114によってSPヘッダが付加されている。そのため、記録媒体にMPEG2TSを記録する場合、データ転送制御装置100はIDEI/F回路120を介してそのまま出力する。このとき、データ転送制御装置100の外部にSDRAMI/F回路130を介して接続されたSDRAM380(広義にはバッファメモリ)に書き込むべきパケットデータを蓄積し、SDRAM380からIDE/IF回路120を介して記録媒体に書き込むことが望ましい。例えば記録媒体がHDDの場合、バースト的にデータ書き込みを行わないと、シーク時間等の増加によって書き込み時間が長くなってしまう。   The data transfer control device 100 set to the SP header comparison mode is provided between the IEEE 1394 bus and the recording medium. Therefore, when recording MPEG2 TS on a recording / reproducing apparatus for HDD or DVD as a recording medium, a packet transferred via an IEEE1394 bus connected to the data transfer control apparatus 100 or a stream I / F circuit 110 is used. It is one of the packets of the received stream. A packet transferred via the IEEE 1394 bus has an SP header already added in accordance with the IEC61883 standard. The SPH addition circuit 114 adds an SP header to the stream packet received via the stream I / F circuit 110. Therefore, when recording MPEG2TS on a recording medium, the data transfer control device 100 outputs it as it is via the IDE I / F circuit 120. At this time, packet data to be written to the SDRAM 380 (buffer memory in a broad sense) connected to the outside of the data transfer control device 100 via the SDRAM I / F circuit 130 is accumulated and recorded from the SDRAM 380 via the IDE / IF circuit 120. It is desirable to write to the medium. For example, when the recording medium is an HDD, if the data is not written in bursts, the write time becomes longer due to an increase in seek time or the like.

これに対して、記録媒体としてのHDDやDVDの記録・再生装置からMPEG2TSを読み出して再生する場合は、以下のように行う。この場合、記録媒体から読み出したMPEG2TSを、SDRAMI/F回路130を介して外部に接続されたSDRAM380にバッファリングする。   On the other hand, when MPEG2TS is read out and reproduced from a recording / reproducing apparatus for an HDD or DVD as a recording medium, it is performed as follows. In this case, the MPEG2TS read from the recording medium is buffered in the SDRAM 380 connected to the outside via the SDRAM I / F circuit 130.

図20に、データ転送制御装置100において記録媒体としてのHDDから読み出されたデータがSDRAM380に転送されるときの動作説明図を示す。   FIG. 20 shows an operation explanatory diagram when data read from the HDD as a recording medium is transferred to the SDRAM 380 in the data transfer control device 100.

HDDから読み出したMPEG2TSを再生する場合、記録時と同様にある程度大きなデータ単位でSDRAM380にデータを書き込む。こうすることで、シーク時間の長短に応じて、アイソクロナスデータとして途切れることのないTSパケットをSRAM160に供給できる。   When the MPEG2TS read from the HDD is reproduced, data is written to the SDRAM 380 in a somewhat large data unit as in recording. By doing so, TS packets that are not interrupted as isochronous data can be supplied to the SRAM 160 according to the length of the seek time.

図20では、サイクルタイムが5000のときに、HDDから読み出されたデータのSPヘッダのサイクルカウントが2500、2501、2502、2503のデータが読み出されている。このように、HDDから読み出されるデータのSPヘッダとサイクルタイマ150がカウントするサイクルタイムとは全く無関係である。これは、記録時等において付加されていたSPヘッダのサイクルカウントと再生時のサイクルタイムとは何ら関係がないからである。しかも、MPEG2TSの帯域に対し、HDDからのデータの読み出し時間がはるかに高速であるため、記録時等において付加されていたSPヘッダのサイクルカウントと再生時のサイクルタイムとを関連付けることができない。   In FIG. 20, when the cycle time is 5000, data having SP, 2500, 2501, 2502, and 2503 in the SP header cycle count of data read from the HDD is read. Thus, the SP header of data read from the HDD and the cycle time counted by the cycle timer 150 are completely irrelevant. This is because there is no relationship between the cycle count of the SP header added at the time of recording or the like and the cycle time at the time of reproduction. In addition, since the time for reading data from the HDD is much faster than the MPEG2TS bandwidth, the cycle count of the SP header added during recording or the like cannot be associated with the cycle time during playback.

このようにしてSDRAM380に書き込まれたMPEG2TSは、SRAM160に転送される。この転送は、例えばSDRAMI/F回路130が含むDMA(Direct Memory Access)制御回路によって制御されるDMA転送であることが望ましい。   The MPEG2TS written in the SDRAM 380 in this way is transferred to the SRAM 160. This transfer is preferably a DMA transfer controlled by a DMA (Direct Memory Access) control circuit included in the SDRAM I / F circuit 130, for example.

図21に、データ転送制御装置100においてSDRAM380からSRAM160に転送されるときの動作説明図を示す。   FIG. 21 shows an operation explanatory diagram when data is transferred from the SDRAM 380 to the SRAM 160 in the data transfer control device 100.

ここでは、サイクルタイムが6500のときに、SDRAM380からSPヘッダのサイクルカウントが2500、2501、2502、2503のデータが読み出され、SRAM160に書き込まれている。このように、SDRAM380に蓄積されたデータがDMA転送によってSRAM160に書き込まれる場合も、サイクルタイマ150のサイクルタイムとTSパケットに付加されたSPヘッダのサイクルカウントとは関係がない。   Here, when the cycle time is 6500, the data of the SP header cycle count 2500, 2501, 2502, 2503 is read from the SDRAM 380 and written to the SRAM 160. As described above, even when the data accumulated in the SDRAM 380 is written into the SRAM 160 by DMA transfer, the cycle time of the cycle timer 150 is not related to the cycle count of the SP header added to the TS packet.

SRAM160に蓄積されたデータは、そのSPヘッダが参照され、比較値と一致したサイクルカウントを有するSPヘッダが付加されたデータ群が読み出されてISOパケットに構築されて送信される。   The data stored in the SRAM 160 is referred to by its SP header, and a data group to which an SP header having a cycle count that matches the comparison value is read out, constructed into an ISO packet, and transmitted.

図22に、データ転送制御装置100においてSRAM160からIEEE1394バスに転送されるときの動作説明図を示す。   FIG. 22 is an operation explanatory diagram when data is transferred from the SRAM 160 to the IEEE 1394 bus in the data transfer control device 100.

例えばサイクルタイマ150のサイクルタイムが6500のとき転送を開始する場合、比較値である2500と一致するサイクルカウントを有するSPヘッダが付加された2つのTSパケットが連結されて出力される。この際、SPヘッダは、2500にオフセット値4006を加算した6506をサイクルカウントとするSPヘッダに置き換えられる。これは、現在のサイクルタイムを基準にオフセット値5だけ先行したサイクルカウントを有するSPヘッダに置き換えるということもできる。そして、サイクルタイムが6501に、この2つのTSパケットがIEEE1394バスに出力される。   For example, when transfer is started when the cycle time of the cycle timer 150 is 6500, two TS packets to which an SP header having a cycle count matching the comparison value 2500 is added are connected and output. At this time, the SP header is replaced with an SP header having a cycle count of 6506 obtained by adding an offset value 4006 to 2500. This can be replaced with an SP header having a cycle count preceded by an offset value of 5 based on the current cycle time. The two TS packets are output to the IEEE1394 bus at a cycle time of 6501.

次のISOサイクルでは、比較値がインクリメントされて2501に更新される。従って、比較値である2501と一致するサイクルカウントを有するSPヘッダが付加された2つのTSパケットが連結されて出力される。この際、SPヘッダのサイクルカウントは、6501を初期値としてインクリメントした値とすることができる。また、SPヘッダのサイクルカウントは、元のSPヘッダのサイクルカウントにオフセット値4006を加算した値としてもよい。要は、SPヘッダのサイクルカウントは、現在のサイクルタイムを基準に5だけ先行した値であればよい。   In the next ISO cycle, the comparison value is incremented and updated to 2501. Accordingly, two TS packets to which an SP header having a cycle count matching the comparison value 2501 is added are connected and output. At this time, the cycle count of the SP header can be a value incremented with 6501 as an initial value. The SP header cycle count may be a value obtained by adding an offset value 4006 to the original SP header cycle count. In short, the cycle count of the SP header may be a value that precedes the current cycle time by 5.

なお最大連結パケット数を変更することで、1つのISOサイクル中に比較値と一致するサイクルカウントを有するSPヘッダが付加されたTSパケット数が2以上存在しても、1つだけを送信し、残りを次のISOサイクルで転送することも可能である。   By changing the maximum number of concatenated packets, even if there are two or more TS packets with an SP header having a cycle count that matches the comparison value in one ISO cycle, only one is transmitted, It is also possible to transfer the rest in the next ISO cycle.

以下、図9を参照しながら、SPヘッダ比較モードにおけるリンクコントローラ140の動作について説明する。   Hereinafter, the operation of the link controller 140 in the SP header comparison mode will be described with reference to FIG.

図23に、SPヘッダ比較モードにおけるリンクコントローラ140の動作例のタイミング図を示す。   FIG. 23 shows a timing chart of an operation example of the link controller 140 in the SP header comparison mode.

図23においても、自動転送イネーブルによってイネーブル状態に設定されているものとする。この状態において、ISOパケット転送完了信号を受け取るとアイソクロナスヘッダの生成を開始する。   Also in FIG. 23, it is assumed that the automatic transfer enable is set to the enable state. In this state, when an ISO packet transfer completion signal is received, generation of an isochronous header is started.

当該ISOサイクルにおいて例えばNullパケットの送信を完了すると、ISO送信シーケンサ330がISOパケット転送完了信号をアクティブにする。ISOパケット転送完了信号を受け取ったヘッダ生成コントローラ310のシーケンサ312は、ポインタコントローラ170からのSRAM内データ残量情報に基づいて、SRAM160内に格納されるTSパケットが1パケット以上であるか否かを判別する(E20)。   For example, when transmission of a null packet is completed in the ISO cycle, the ISO transmission sequencer 330 activates an ISO packet transfer completion signal. The sequencer 312 of the header generation controller 310 that has received the ISO packet transfer completion signal determines whether one or more TS packets are stored in the SRAM 160 based on the remaining data information in the SRAM from the pointer controller 170. It discriminate | determines (E20).

SRAM160内に格納されるTSパケットが1パケット以上のとき、シーケンサ312は、SPH読み出しスタート信号をアクティブにしてメモリアクセス制御部300に出力する(E21)。   When the number of TS packets stored in the SRAM 160 is one or more, the sequencer 312 activates the SPH read start signal and outputs it to the memory access control unit 300 (E21).

SPH読み出しスタート信号を受けたメモリアクセス制御部300のヘッダアクセスコントローラ302は、SRAM160のアイソクロナス送信データ領域に格納されたTSパケットに付加されたSPヘッダを読み出す(E22)。ヘッダ生成コントローラ310のSPH比較部316は、読み出したSPヘッダ(のサイクルカウント)が転送開始SPH設定レジスタ206に設定された比較値CompaCountと一致するか否を判定する。   Upon receiving the SPH read start signal, the header access controller 302 of the memory access control unit 300 reads the SP header added to the TS packet stored in the isochronous transmission data area of the SRAM 160 (E22). The SPH comparison unit 316 of the header generation controller 310 determines whether or not the read SP header (its cycle count) matches the comparison value CompaCount set in the transfer start SPH setting register 206.

読み出したSPヘッダ(のサイクルカウント)が比較値CompaCountと一致したと判定されたとき、SPHOK信号をアクティブにしてシーケンサ312に出力し(E23)、転送データ長計算部314に供給されるSPH一致回数信号をインクリメントする。   When it is determined that the read SP header (its cycle count) matches the comparison value CompaCount, the SPHOK signal is activated and output to the sequencer 312 (E23), and the SPH match count supplied to the transfer data length calculation unit 314 Increment the signal.

シーケンサ312は、SRAM内データ残量情報に基づいて、次に読み出し可能なSPヘッダがSRAM160にあるか否かを判別する。そして、次に読み出し可能なSPヘッダがあると判別されたとき、シーケンサ312は再度SPH読み出しスタート信号をアクティブにする(E24)。そして、同様にしてヘッダアクセスコントローラ302は、SRAM160のアイソクロナス送信データ領域に格納されたパケットのSPヘッダを読み出す(E25)。更にSPH比較部316は、読み出したSPヘッダが比較値CompaCountと一致したと判定したとき、SPHOK信号をアクティブにしてシーケンサ312に出力し(E26)、転送データ長計算部314に供給されるSPH一致回数信号をインクリメントする。   The sequencer 312 determines whether or not the SRAM 160 has the next readable SP header based on the remaining data information in the SRAM. When it is determined that there is a next readable SP header, the sequencer 312 activates the SPH read start signal again (E24). Similarly, the header access controller 302 reads the SP header of the packet stored in the isochronous transmission data area of the SRAM 160 (E25). Further, when the SPH comparison unit 316 determines that the read SP header matches the comparison value CompaCount, it activates the SPHOK signal and outputs it to the sequencer 312 (E26), and the SPH match supplied to the transfer data length calculation unit 314 Increment the count signal.

またシーケンサ312は、SRAM内データ残量情報に基づいて、次に読み出し可能なSPヘッダがSRAM160にあるか否かを判別する。そして、次に読み出し可能なSPヘッダがあると判別されたとき、シーケンサ312は再度SPH読み出しスタート信号をアクティブにする(E27)。そして、ヘッダアクセスコントローラ302は、SRAM160のアイソクロナス送信データ領域に格納されたパケットのSPヘッダを読み出す(E28)。   The sequencer 312 determines whether or not the SRAM 160 has the next readable SP header based on the remaining data amount information in the SRAM. When it is determined that there is the next readable SP header, the sequencer 312 activates the SPH read start signal again (E27). Then, the header access controller 302 reads the SP header of the packet stored in the isochronous transmission data area of the SRAM 160 (E28).

次に読み出し可能なSPヘッダがSRAM160にないと判別されるまで、或いはSPH比較部316において、読み出したSPヘッダが比較値CompaCountとが不一致と判定されるまで、同様の処理を繰り返す。   The same processing is repeated until it is determined that there is no readable SP header in the SRAM 160 or until the SPH comparison unit 316 determines that the read SP header does not match the comparison value CompaCount.

例えばSPH比較部316において、読み出したSPヘッダが比較値CompaCountと不一致と判定されたとき、転送データ長計算部314は、SPH一致回数信号の値により、次のISOサイクルで転送可能なデータ数を算出する。即ち転送データ長計算部314は、192バイト×SPH一致回数を、転送データ長として求める。   For example, when the SPH comparison unit 316 determines that the read SP header does not match the comparison value CompaCount, the transfer data length calculation unit 314 determines the number of data that can be transferred in the next ISO cycle based on the value of the SPH match count signal. calculate. That is, the transfer data length calculation unit 314 obtains the number of 192 bytes × SPH coincidence as the transfer data length.

その後、シーケンサ312はNextNullを無効にして、ヘッダ読み出しスタート信号をアクティブにする(E29)。これにより、メモリアクセス制御部300のヘッダアクセスコントローラ302は、図14で説明したようにSRAM160の自動転送用ヘッダ領域からヘッダの基本情報を読み出す(E30)。   Thereafter, the sequencer 312 disables NextNull and activates the header read start signal (E29). As a result, the header access controller 302 of the memory access control unit 300 reads the basic information of the header from the automatic transfer header area of the SRAM 160 as described with reference to FIG. 14 (E30).

ヘッダ書き換え部304は、転送データ長計算部314からの転送データ長を用いて自動転送用ヘッダの基本情報を書き換える。そして、ヘッダアクセスコントローラ302は、書き換え後のヘッダをSRAM160のアイソクロナスヘッダ領域に書き込む(E31)。ヘッダアクセスコントローラ302は、ヘッダ書き込み終了をアクティブにしてシーケンサ312に通知する。   The header rewriting unit 304 rewrites the basic information of the automatic transfer header using the transfer data length from the transfer data length calculation unit 314. Then, the header access controller 302 writes the rewritten header in the isochronous header area of the SRAM 160 (E31). The header access controller 302 activates the end of writing the header and notifies the sequencer 312.

そして、サイクルスタートパケットを受けてアイソサイクルスタート信号がアクティブとなると(E32)、次のISOサイクルが開始される。ISO送信シーケンサ330は、RAM制御信号生成部320を介してSRAM160のアイソクロナスヘッダ領域からヘッダを読み出して、SRAM160のアイソクロナス送信データ領域からデータを読み出してISOパケットを生成し、ISOパケットとして送信する(E33)。   When the cycle start packet is received and the isocycle start signal becomes active (E32), the next ISO cycle is started. The ISO transmission sequencer 330 reads the header from the isochronous header area of the SRAM 160 via the RAM control signal generator 320, reads the data from the isochronous transmission data area of the SRAM 160, generates an ISO packet, and transmits it as an ISO packet (E33). ).

なお先頭のSPヘッダが比較値CompaCountと不一致のとき、転送データ長が0となり、次のISOサイクルで転送可能なデータはないと判断され、上述のようにNullパケットが転送される。即ち、比較値とSRAM160に蓄積されたデータに含まれるタイムスタンプ情報とを比較し、該比較値と一致するタイムスタンプ情報を含むデータが検出されなかったとき、空パケットを転送先に出力する。   When the first SP header does not match the comparison value CompaCount, the transfer data length is 0, it is determined that there is no data that can be transferred in the next ISO cycle, and the Null packet is transferred as described above. That is, the comparison value is compared with the time stamp information included in the data stored in the SRAM 160, and when no data including time stamp information matching the comparison value is detected, an empty packet is output to the transfer destination.

以上のように本実施形態におけるデータ転送制御装置100は、転送モード設定レジスタ200を含む。そして、転送モード設定レジスタ200によりデータ残量比較モード(第1のモード)に切り替えられたとき、リンクコントローラ140が、TSパケット(パケットデータ)をバス(転送先)に出力する際に、サイクルタイマ150の現在のサイクルタイムを基準にオフセット値だけ先行したサイクルタイムに対応した出力タイムスタンプ情報を、TSパケットに付加できる。   As described above, the data transfer control device 100 in this embodiment includes the transfer mode setting register 200. When the link controller 140 outputs the TS packet (packet data) to the bus (transfer destination) when the transfer mode setting register 200 switches to the data remaining amount comparison mode (first mode), the cycle timer Output time stamp information corresponding to the cycle time preceding the offset value by the current cycle time of 150 can be added to the TS packet.

或いは、データ残量比較モードでは、例えばTSパケットがデータ転送制御装置100に入力されたときのサイクルタイマ150のサイクルタイムに対応した入力タイムスタンプ情報をTSパケットに付加する。その後、リンクコントローラ140が、入力タイムスタンプ情報として付加されたサイクルタイムを基準にオフセット値だけ先行したサイクルタイムに対応した第1のタイムスタンプ情報を、出力タイムスタンプ情報として、TSパケットをバスに出力する際に入力タイムスタンプ情報に替えて設定することができる。   Alternatively, in the data remaining amount comparison mode, for example, input time stamp information corresponding to the cycle time of the cycle timer 150 when the TS packet is input to the data transfer control device 100 is added to the TS packet. After that, the link controller 140 outputs the TS packet to the bus using the first time stamp information corresponding to the cycle time preceding the offset value based on the cycle time added as the input time stamp information as the output time stamp information. Can be set instead of the input time stamp information.

また転送モード設定レジスタ200によりSPヘッダ比較モード(第2のモード)に切り替えられたとき、リンクコントローラ140が、SRAM160に蓄積され入力タイムスタンプ情報が付加されたTSパケットに付加されたタイムスタンプ情報と比較値とを比較する。そして、比較値と一致するタイムスタンプ情報を含むデータ群に対し、サイクルタイマ150の現在のサイクルタイムを基準にオフセット値だけ先行したサイクルタイムに対応した出力タイムスタンプ情報を付加してTSパケットを生成すると共に、該パケットデータを現在のサイクルタイムにおいてバス(転送先)に出力する。ここで、比較値と不一致のタイムスタンプ情報が検出されたときには、比較値を更新する。そして、現在のサイクルタイムの次のサイクルタイムにおいて、更新された比較値とSRAM160に蓄積されたデータに含まれるタイムスタンプ情報とを比較することができる。   When the transfer mode setting register 200 switches to the SP header comparison mode (second mode), the link controller 140 stores the time stamp information added to the TS packet added to the input time stamp information accumulated in the SRAM 160. Compare with the comparison value. A TS packet is generated by adding output time stamp information corresponding to the cycle time preceding the offset value with respect to the current cycle time of the cycle timer 150 to the data group including the time stamp information that matches the comparison value. At the same time, the packet data is output to the bus (transfer destination) at the current cycle time. Here, when time stamp information that does not match the comparison value is detected, the comparison value is updated. Then, at the cycle time next to the current cycle time, the updated comparison value can be compared with the time stamp information included in the data stored in the SRAM 160.

これにより、当初からタイムスタンプ情報が付加されている記録媒体からのパケットデータの転送をする場合であっても、転送先側でバッファリングを行うのに適したタイミングで送信することができるようになる。   Thus, even when packet data is transferred from a recording medium to which time stamp information is added from the beginning, it can be transmitted at a timing suitable for buffering on the transfer destination side. Become.

ここで、SPヘッダ比較モードにおいてもデータ残量比較モードと同様に、比較値と一致するタイムスタンプ情報を含むデータ群に対してヘッダ情報を作成することが望ましい。そして比較値の更新処理は、比較値と不一致のタイムスタンプ情報を含むデータが検出されたことを条件に行うことが望ましい。更にSRAM160に蓄積されたデータのタイムスタンプ情報を、サイクルタイマ150の現在のサイクルタイムを基準にオフセット値だけ先行したサイクルタイムに対応した出力タイムスタンプ情報に置き換えて、TSパケットを生成してIEEE1394バスに出力することが望ましい。   Here, also in the SP header comparison mode, it is desirable to create header information for a data group including time stamp information that matches the comparison value, as in the remaining data comparison mode. The comparison value update process is preferably performed on the condition that data including time stamp information that does not match the comparison value is detected. Further, the time stamp information of the data stored in the SRAM 160 is replaced with output time stamp information corresponding to the cycle time that precedes the current cycle time of the cycle timer 150 by the offset value, and a TS packet is generated to generate an IEEE 1394 bus. It is desirable to output to

3. 電子機器
次に、本実施形態のデータ転送制御装置を含む電子機器の例について説明する。
3. Next, an example of an electronic device including the data transfer control device of this embodiment will be described.

図24に、本実施形態におけるデータ転送制御装置が適用された電子機器としてのデジタル放送受信装置の構成例のブロック図を示す。図24において、図8に示すデータ転送制御装置100と同一部分には同一符号を付し、適宜説明を省略する。   FIG. 24 is a block diagram showing a configuration example of a digital broadcast receiving apparatus as an electronic apparatus to which the data transfer control apparatus according to this embodiment is applied. In FIG. 24, the same parts as those of the data transfer control device 100 shown in FIG.

デジタル放送受信装置400は、BSデジタル放送として配信されたMPEG2ストリームを、アンテナ420を介して受信する。そしてMPEG2ストリームをデコードして表示装置430に出力したり、MPEG2ストリームの一部のパーシャルストリームを表示装置430が内蔵するHDD432に出力したり、或いは該パーシャルストリームをHDDレコーダ440に転送したりできる。   The digital broadcast receiving apparatus 400 receives the MPEG2 stream distributed as BS digital broadcast via the antenna 420. The MPEG2 stream can be decoded and output to the display device 430, a partial stream of the MPEG2 stream can be output to the HDD 432 incorporated in the display device 430, or the partial stream can be transferred to the HDD recorder 440.

デジタル放送受信装置400は、本実施形態のデータ転送制御装置100、RF・復調部(受信回路)402、デコーダ404、1394PHYチップ406を含むことができる。なおデジタル放送受信装置400は、図24のすべての回路、ユニット(部)を含む必要はなく、その一部を省略する構成であってもよい。   The digital broadcast receiving apparatus 400 can include the data transfer control apparatus 100 of this embodiment, an RF / demodulation unit (receiving circuit) 402, a decoder 404, and a 1394 PHY chip 406. The digital broadcast receiving apparatus 400 does not need to include all the circuits and units (units) in FIG. 24, and may be configured to omit some of them.

デジタル放送受信装置400に適用されるデータ転送制御装置100は、データ残量比較モードでデータ転送を制御する。そのため、図24では、図8のデータ転送制御装置100の一部のみを図示している。   The data transfer control device 100 applied to the digital broadcast receiving device 400 controls data transfer in the data remaining amount comparison mode. Therefore, in FIG. 24, only a part of the data transfer control device 100 of FIG. 8 is illustrated.

アンテナ420を介して受信されたMPEG2ストリームは、RF・復調部402で復調されて、MPEG2TSのマルチストリームとしてデータ転送制御装置100及びデコーダ404に供給される。   The MPEG2 stream received via the antenna 420 is demodulated by the RF / demodulator 402 and supplied to the data transfer control device 100 and the decoder 404 as an MPEG2TS multistream.

表示装置430にMPEG2ストリームのリアルタイム画像を表示させる場合、デコーダ404がデコードした結果を表示装置430に出力する。   When displaying a real-time image of the MPEG2 stream on the display device 430, the result of decoding by the decoder 404 is output to the display device 430.

表示装置430が内蔵するHDD432に記録する場合、データ転送制御装置100がストリームI/F回路110を介してMPEG2TSのマルチストリームを取り込み、PIDフィルタ180でMPEG2TSのパーシャルストリームを抽出し、IDEI/F回路120を介してHDD432に出力する。   When recording in the HDD 432 built in the display device 430, the data transfer control device 100 takes in the MPEG2TS multi-stream via the stream I / F circuit 110, extracts the MPEG2TS partial stream with the PID filter 180, and the IDE I / F circuit. The data is output to the HDD 432 via 120.

HDDレコーダ440に記録する場合、データ転送制御装置100が、PIDフィルタ180で抽出したMPEG2TSのパーシャルストリームをSRAM160にバッファリングし、リンクコントローラ140を介して1394PHYチップ406に出力する。1394PHYチップは、IEEE1394バスを介してHDDレコーダ440にTSパケットを転送する。従って、RF・復調部402によって受信されたパケットデータのストリームが、データ転送制御装置100により、IEEE1394バスを介して記録媒体を有するHDDレコーダ440に転送される。   When recording to the HDD recorder 440, the data transfer control device 100 buffers the MPEG2TS partial stream extracted by the PID filter 180 in the SRAM 160 and outputs the buffered data to the 1394 PHY chip 406 via the link controller 140. The 1394 PHY chip transfers the TS packet to the HDD recorder 440 via the IEEE 1394 bus. Therefore, the packet data stream received by the RF / demodulator 402 is transferred by the data transfer control device 100 to the HDD recorder 440 having a recording medium via the IEEE 1394 bus.

なお図24において、デジタル放送受信装置400が表示装置430を含む場合、本実施形態におけるデータ転送制御装置100をデジタル放送表示装置に適用できるということができる。   In FIG. 24, when the digital broadcast receiving device 400 includes the display device 430, it can be said that the data transfer control device 100 in this embodiment can be applied to the digital broadcast display device.

このようなデジタル放送受信装置によれば、確実なTSパケットの時間管理の下、処理負荷が軽減されて低コスト化を実現できる。   According to such a digital broadcast receiving apparatus, it is possible to reduce the processing load and reduce the cost under reliable TS packet time management.

図25に、本実施形態におけるデータ転送制御装置が適用された電子機器としての記録・再生装置の構成例のブロック図を示す。図25において、図8に示すデータ転送制御装置100と同一部分には同一符号を付し、適宜説明を省略する。   FIG. 25 is a block diagram showing a configuration example of a recording / reproducing apparatus as an electronic apparatus to which the data transfer control device according to this embodiment is applied. In FIG. 25, the same parts as those of the data transfer control device 100 shown in FIG.

記録・再生装置500は、AVデータの記録・再生を実現する。即ち、アンテナ520を介して受信されたMPEG2ストリームを内蔵するHDD510に記録したり、HDD510に記録したMPEG2ストリームを再生できる。   The recording / reproducing apparatus 500 realizes recording / reproducing of AV data. That is, it is possible to record the MPEG2 stream received via the antenna 520 on the HDD 510 containing the MPEG2 stream or to reproduce the MPEG2 stream recorded on the HDD 510.

記録・再生装置500は、本実施形態のデータ転送制御装置100、HDD510、SDRAM(広義にはバッファメモリ)380、1394PHYチップ406を含むことができる。なお記録・再生装置500は、図25のすべての回路、ユニット(部)を含む必要はなく、その一部を省略する構成であってもよい。   The recording / reproducing apparatus 500 can include the data transfer control apparatus 100, the HDD 510, the SDRAM (buffer memory in a broad sense) 380, and the 1394 PHY chip 406 of this embodiment. Note that the recording / reproducing apparatus 500 does not have to include all the circuits and units (units) in FIG. 25, and may be configured to omit some of them.

記録・再生装置500に適用されるデータ転送制御装置100は、SPヘッダ比較モードでデータ転送を制御する。そのため、図25では、図8のデータ転送制御装置100の一部のみを図示している。   The data transfer control device 100 applied to the recording / reproducing device 500 controls data transfer in the SP header comparison mode. Therefore, in FIG. 25, only a part of the data transfer control device 100 of FIG. 8 is illustrated.

アンテナ520を介して受信されたMPEG2ストリームは、表示装置(例えばデジタルTV装置)530でデコードされ、デコード結果に対応した画像がデジタル放送として表示される。表示装置530に供給されたMPEG2ストリームは、IEEE1394バスを介して記録・再生装置500に転送される。   The MPEG2 stream received via the antenna 520 is decoded by a display device (for example, a digital TV device) 530, and an image corresponding to the decoding result is displayed as a digital broadcast. The MPEG2 stream supplied to the display device 530 is transferred to the recording / reproducing device 500 via the IEEE1394 bus.

記録・再生装置500では、1394PHYチップ406を介してIEEE1394バス上のTSパケットがデータ転送制御装置100に供給される。   In the recording / reproducing apparatus 500, TS packets on the IEEE 1394 bus are supplied to the data transfer control apparatus 100 via the 1394 PHY chip 406.

MPEG2ストリームをHDD(広義には記録媒体)510に記録する場合、データ転送制御装置100では、TSパケットが一旦SRAM160に格納される。そして、SDRAMI/F回路130を介してSDRAM380にバッファリングされた後、再びSDRAMI/F回路130及びIDEI/F回路120を介してHDD510に対してDMA転送される。   When an MPEG2 stream is recorded on an HDD (recording medium in a broad sense) 510, the data transfer control device 100 temporarily stores TS packets in the SRAM 160. Then, after buffering in the SDRAM 380 via the SDRAM I / F circuit 130, DMA transfer is again performed to the HDD 510 via the SDRAM I / F circuit 130 and the IDE I / F circuit 120.

HDD510に格納されたMPEG2ストリームを再生する場合、データ転送制御装置100では、HDD510から読み出されたMPEG2ストリームは、IDEI/F回路120及びSDRAMI/F回路130を介して、一旦SDRAM380にDMA転送されてバッファリングされる。その後、データ転送制御装置100は、SDRAM380から読み出したデータを、SDRAMI/F回路130を介してSRAM160に格納する。そして、SRAM160に格納されたデータのSPヘッダを参照しながら、順次IEEE1394バスを介してISOパケットを転送する。表示装置530は、ISOパケットを取り込んでデコードし、デコード結果に対応した画像を表示する。   When reproducing the MPEG2 stream stored in the HDD 510, the data transfer control device 100 once DMA-transfers the MPEG2 stream read from the HDD 510 to the SDRAM 380 via the IDE / F circuit 120 and the SDRAM I / F circuit 130. Buffered. Thereafter, the data transfer control device 100 stores the data read from the SDRAM 380 in the SRAM 160 via the SDRAM I / F circuit 130. Then, the ISO packets are sequentially transferred via the IEEE 1394 bus while referring to the SP header of the data stored in the SRAM 160. The display device 530 receives and decodes the ISO packet, and displays an image corresponding to the decoding result.

以上のように、HDD510は、データ転送制御装置100を介してIEEE1394バスに接続される。そして、データ転送制御装置100が、IEEE1394バスを介して入力されたデータをHDD510に出力して記録させ、或いはHDD510から読み出したデータをIEEE1394バスを介して出力することができる。   As described above, the HDD 510 is connected to the IEEE 1394 bus via the data transfer control device 100. Then, the data transfer control device 100 can output and record the data input via the IEEE 1394 bus to the HDD 510 or output the data read from the HDD 510 via the IEEE 1394 bus.

このような記録・再生装置によれば、確実なTSパケットの時間管理の下、デコード側に適したタイミングで送信できると共に、処理負荷が軽減されて低コスト化を実現できる。   According to such a recording / reproducing apparatus, transmission can be performed at a timing suitable for the decoding side under reliable TS packet time management, and the processing load can be reduced to realize cost reduction.

なお、本発明は上述した実施の形態に限定されるものではなく、本発明の要旨の範囲内で種々の変形実施が可能である。   The present invention is not limited to the above-described embodiment, and various modifications can be made within the scope of the gist of the present invention.

また、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の1の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。   In the invention according to the dependent claims of the present invention, a part of the constituent features of the dependent claims can be omitted. Moreover, the principal part of the invention according to one independent claim of the present invention can be made dependent on another independent claim.

また、明細書又は図面中の記載において広義な用語(転送コントローラ、パケットデータ等)として引用された用語(ヘッダ作成回路又はパケット生成回路、TSパケット等)は、明細書又は図面中の他の記載においても広義な用語に置き換えることができる。   In addition, terms (header generation circuit or packet generation circuit, TS packet, etc.) cited as broad terms (transfer controller, packet data, etc.) in the description in the specification or drawings are other descriptions in the specification or drawings. Can be replaced with broad terms.

本実施形態では、アイソクロナス転送を行う場合について説明したが、本発明はこれに限定されない。例えばアシンクロナス転送を行う場合にも適用できる。   In the present embodiment, the case of performing isochronous transfer has been described, but the present invention is not limited to this. For example, the present invention can be applied to asynchronous transfer.

また本実施形態では、タイムスタンプ情報としてSPヘッダのサイクルカウントを例に説明したが、本発明はこれに限定されない。例えばタイムスタンプ情報として、SPヘッダのサイクルカウントに加えてサイクルオフセットを含めて付加、設定又は張り替えを行ってもよい。   In this embodiment, the cycle count of the SP header is described as an example of the time stamp information, but the present invention is not limited to this. For example, the time stamp information may be added, set, or replaced by including a cycle offset in addition to the SP header cycle count.

更に本実施形態では、TSパケットを例に説明したが本発明はこれに限定されない。   Furthermore, in the present embodiment, the TS packet has been described as an example, but the present invention is not limited to this.

更にまた本実施形態では、MPEG規格(MPEG2、MPEG4)のデータをIEEE1394規格のバス(インタフェース)で転送する場合について説明したが、本発明はこれに限定されない。例えばMPEG(MPEG2、MPEG4)と同様の思想に基づく規格やMPEGを発展させた規格のデータを、IEEE1394と同様の思想に基づく規格やIEEEE1394を発展させた規格のバスで転送する場合にも本発明を適用できる。また、例えばMPEG等の符号化データをUSB(Universal Serial Bus)のアイソクロナス転送で転送する場合にも本発明を適用できる。   Furthermore, in the present embodiment, the case where the data of the MPEG standard (MPEG2, MPEG4) is transferred by the IEEE 1394 standard bus (interface) has been described, but the present invention is not limited to this. For example, the present invention is also applied to a case where data of a standard based on the same idea as MPEG (MPEG2, MPEG4) or a standard developed from MPEG is transferred by a bus based on a standard based on the same idea as IEEE 1394 or a standard developed from IEEE 1394. Can be applied. The present invention can also be applied to the case where encoded data such as MPEG is transferred by USB (Universal Serial Bus) isochronous transfer.

更にまた本実施形態では、IEEE1394等の汎用高速シリアルインタフェースを用いるものとして説明したが、本発明はこれに限定されない。例えば、無線伝送路を介したデータ転送を制御するデータ転送制御装置にも本発明を適用できる。   Furthermore, in the present embodiment, the general-purpose high-speed serial interface such as IEEE1394 has been described. However, the present invention is not limited to this. For example, the present invention can be applied to a data transfer control device that controls data transfer via a wireless transmission path.

本実施形態のデータ転送制御装置が適用されたシステムの構成例を示す図。The figure which shows the structural example of the system to which the data transfer control apparatus of this embodiment was applied. BSデジタル放送、データ転送制御装置及びIEEE1394バスにおけるデータ構造の説明図。Explanatory drawing of the data structure in BS digital broadcasting, a data transfer control apparatus, and IEEE1394 bus | bath. TSパケットのフォーマットの一例を示す図。The figure which shows an example of the format of TS packet. MPEGストリームの構造の説明図。Explanatory drawing of the structure of an MPEG stream. 図5(A)〜(D)は、SPヘッダ、CIPヘッダ及びISOヘッダのフォーマットの一例を示す図。FIGS. 5A to 5D are diagrams showing examples of formats of an SP header, a CIP header, and an ISO header. ISO転送の説明図。Explanatory drawing of ISO transfer. ISOパケットとSPヘッダのサイクルカウントとの関係の説明図。Explanatory drawing of the relationship between an ISO packet and the cycle count of SP header. 本実施形態のデータ転送制御装置の構成例のブロック図。1 is a block diagram of a configuration example of a data transfer control device according to an embodiment. 図8のリンクコントローラの構成例のブロック図。The block diagram of the structural example of the link controller of FIG. データ残量比較モードに設定されたデータ転送制御装置の動作例のフロー図。The flowchart of the operation example of the data transfer control apparatus set to the data remaining amount comparison mode. 本実施形態におけるデータ転送制御装置の処理タイミングの説明図。Explanatory drawing of the process timing of the data transfer control apparatus in this embodiment. 本実施形態におけるデータ残量比較モードの説明図。Explanatory drawing of the data remaining amount comparison mode in this embodiment. 図13(A)はSPH付加回路の動作説明図。図13(B)はPIDフィルタ後のTSパケットの説明図。FIG. 13A is an operation explanatory diagram of the SPH addition circuit. FIG. 13B is an explanatory diagram of a TS packet after the PID filter. SRAMのメモリマップの一例を示す図。The figure which shows an example of the memory map of SRAM. データ残量比較モードにおいてSRAMに格納されたパケットデータの送信動作の説明図。Explanatory drawing of transmission operation | movement of the packet data stored in SRAM in data remaining amount comparison mode. データ残量比較モードにおいてNullパケットを送信する場合のリンクコントローラの動作例のタイミング図。The timing diagram of the operation example of a link controller in the case of transmitting a Null packet in data remaining amount comparison mode. データ残量比較モードにおいてISOパケットを送信する場合のリンクコントローラの動作例のタイミング図。The timing diagram of the example of operation | movement of a link controller in the case of transmitting an ISO packet in data remaining amount comparison mode. SPヘッダ比較モードに設定されたデータ転送制御装置の動作例のフロー図。The flowchart of the operation example of the data transfer control apparatus set to SP header comparison mode. 本実施形態におけるSPヘッダ比較モードの説明図。Explanatory drawing of SP header comparison mode in this embodiment. SPヘッダ比較モードにおいてHDDから読み出されたデータがSDRAMに転送されるときの動作説明図。Explanatory drawing when data read from HDD is transferred to SDRAM in SP header comparison mode. SPヘッダ比較モードにおいてSDRAMからSRAMに転送されるときの動作説明図。Operation | movement explanatory drawing when it transfers from SDRAM to SRAM in SP header comparison mode. SPヘッダ比較モードにおいてSRAMからIEEE1394バスに転送されるときの動作説明図。Explanatory drawing when it transfers to the IEEE1394 bus | bath from SRAM in SP header comparison mode. SPヘッダ比較モードにおけるリンクコントローラの動作例のタイミング図。The timing diagram of the operation example of the link controller in SP header comparison mode. 本実施形態におけるデータ転送制御装置が適用された電子機器としてのデジタル放送受信装置の構成例のブロック図。The block diagram of the example of a structure of the digital broadcast receiver as an electronic device to which the data transfer control apparatus in this embodiment was applied. 本実施形態におけるデータ転送制御装置が適用された電子機器としての記録・再生装置の構成例のブロック図。1 is a block diagram of a configuration example of a recording / reproducing apparatus as an electronic apparatus to which a data transfer control device according to an embodiment is applied.

符号の説明Explanation of symbols

10、420、520 アンテナ、 20 デジタル放送チューナ、
22、100 データ転送制御装置、 30 記録・再生装置、 32 記録媒体、
110 ストリームI/F回路、 112 SPH比較出力回路、
114 SPH付加回路、 120 IDEI/F回路、
130 SDRAMI/F回路、 140 リンクコントローラ、
142 ヘッダ作成回路、 144 送信制御回路、 150 サイクルタイマ、
160 SRAM、 170 ポインタコントローラ、 180 PIDフィルタ、
190 処理部、 200 転送モード設定レジスタ、
202 最大連結パケット数設定レジスタ、 204 SPHロード設定レジスタ、
206 転送開始SPH設定レジスタ、 208 送信オフセット値設定レジスタ、
250 アクセス調停部、 300 メモリアクセス制御部、
302 ヘッダアクセスコントローラ、 304 ヘッダ書き換え部、
310 ヘッダ生成コントローラ、 312 シーケンサ、
314 転送データ計算部、 316 SPH比較部、
320 RAM制御信号生成部、 330 ISO送信シーケンサ、
340 ISO送信FIFO、 350 張り替えSPH保持レジスタ、
380 SDRAM、 400 デジタル放送受信装置、 402 RF・復調部、
404 デコーダ、 406 1394PHYチップ、 430、530 表示装置、
432、510 HDD、 440 HDDレコーダ
10, 420, 520 antenna, 20 digital broadcast tuner,
22, 100 Data transfer control device, 30 recording / reproducing device, 32 recording medium,
110 stream I / F circuit, 112 SPH comparison output circuit,
114 SPH addition circuit, 120 IDEI / F circuit,
130 SDRAM I / F circuit, 140 link controller,
142 header creation circuit, 144 transmission control circuit, 150 cycle timer,
160 SRAM, 170 pointer controller, 180 PID filter,
190 processing unit, 200 transfer mode setting register,
202 Maximum concatenated packet number setting register, 204 SPH load setting register,
206 Transfer start SPH setting register, 208 Transmission offset value setting register,
250 access arbitration unit, 300 memory access control unit,
302 header access controller, 304 header rewrite unit,
310 header generation controller, 312 sequencer,
314 Transfer data calculation unit, 316 SPH comparison unit,
320 RAM control signal generator, 330 ISO transmission sequencer,
340 ISO transmission FIFO, 350 re-storing SPH holding register,
380 SDRAM, 400 digital broadcast receiver, 402 RF / demodulator,
404 decoder, 406 1394 PHY chip, 430, 530 display device,
432, 510 HDD, 440 HDD recorder

Claims (16)

データ転送を制御するためのデータ転送制御装置であって、
転送サイクル毎に更新されるサイクルタイムをカウントするサイクルタイマと、
パケットデータの転送を制御する転送コントローラとを含み、
前記転送コントローラが、
前記データ転送制御装置に入力されたときにはタイムスタンプ情報が未付加のパケットデータを転送先に出力する際に、前記サイクルタイマの現在のサイクルタイムを基準にオフセット値だけ先行したサイクルタイムに対応した出力タイムスタンプ情報を、前記パケットデータに付加することを特徴とするデータ転送制御装置。
A data transfer control device for controlling data transfer,
A cycle timer that counts the cycle time updated every transfer cycle;
A transfer controller for controlling the transfer of packet data,
The transfer controller is
When input to the data transfer control device, when outputting packet data to which no time stamp information is added to the transfer destination, an output corresponding to the cycle time preceding the cycle time by the offset value based on the current cycle time of the cycle timer A data transfer control device, wherein time stamp information is added to the packet data.
請求項1において、
前記パケットデータが前記データ転送制御装置に入力されたときの前記サイクルタイマのサイクルタイムに対応した入力タイムスタンプ情報が前記パケットデータに付加され、
前記転送コントローラが、
前記入力タイムスタンプ情報として付加されたサイクルタイムを基準に前記オフセット値だけ先行したサイクルタイムに対応した第1のタイムスタンプ情報を、前記出力タイムスタンプ情報として、前記パケットデータを前記転送先に出力する際に前記入力タイムスタンプ情報に替えて設定することを特徴とするデータ転送制御装置。
In claim 1,
Input time stamp information corresponding to the cycle time of the cycle timer when the packet data is input to the data transfer control device is added to the packet data,
The transfer controller is
The packet data is output to the transfer destination using the first time stamp information corresponding to the cycle time preceding the offset value based on the cycle time added as the input time stamp information as the output time stamp information. The data transfer control device is characterized in that it is set instead of the input time stamp information.
請求項2において、
前記転送コントローラが、
前記第1のタイムスタンプ情報と前記サイクルタイマの現在のサイクルタイムとに基づいて、現在の転送サイクルにおいて付加すべき第2のタイムスタンプ情報を求め、該第2のタイムスタンプ情報を、前記出力タイムスタンプ情報として、前記入力タイムスタンプ情報に替えて設定することを特徴とするデータ転送制御装置。
In claim 2,
The transfer controller is
Based on the first time stamp information and the current cycle time of the cycle timer, second time stamp information to be added in the current transfer cycle is obtained, and the second time stamp information is obtained as the output time. A data transfer control device, wherein the stamp information is set in place of the input time stamp information.
請求項2又は3において、
前記転送コントローラが、
前記入力タイムスタンプ情報が付加されたパケットデータが蓄積されるパケットメモリのデータ残量に基づいてパケットデータに付加されるヘッダ情報を作成するヘッダ作成回路と、
前記ヘッダ作成回路によって作成された前記ヘッダ情報と前記パケットメモリに蓄積されたパケットデータとを結合した出力用パケットデータを生成し、該出力用パケットデータを前記転送先に出力するパケット生成回路とを含み、
前記パケット生成回路が、
前記入力タイムスタンプ情報に替えて前記出力タイムスタンプ情報を設定することを特徴とするデータ転送制御装置。
In claim 2 or 3,
The transfer controller is
A header creation circuit for creating header information to be added to packet data based on a remaining amount of data in a packet memory in which packet data to which the input time stamp information is added is stored;
A packet generation circuit that generates output packet data by combining the header information generated by the header generation circuit and the packet data stored in the packet memory, and outputs the output packet data to the transfer destination; Including
The packet generation circuit comprises:
The data transfer control device, wherein the output time stamp information is set instead of the input time stamp information.
請求項2乃至4のいずれかにおいて、
前記転送コントローラが、
前記現在の転送サイクルにおいて前記入力タイムスタンプ情報が付加されたパケットデータが蓄積されるパケットメモリのデータ残量が1パケット未満であるとき、前記転送先に空パケットを出力することを特徴とするデータ転送制御装置。
In any of claims 2 to 4,
The transfer controller is
Data that outputs an empty packet to the transfer destination when the remaining amount of data in the packet memory in which the packet data to which the input time stamp information is added is stored in the current transfer cycle is less than one packet Transfer control device.
請求項5において、
前記パケットメモリを含み、
前記パケットメモリが、
前記入力タイムスタンプ情報が付加されたパケットデータが記憶されるデータ領域と、前記ヘッダ作成回路によって作成された前記ヘッダ情報が記憶されるヘッダ領域とを有し、
前記パケット生成回路が、
前記データ領域からのパケットデータに含まれる前記入力タイムスタンプ情報に替えて前記出力タイムスタンプ情報を設定し、該パケットデータと前記ヘッダ領域からのヘッダ情報とを結合することを特徴とするデータ転送制御装置。
In claim 5,
Including the packet memory;
The packet memory is
A data area in which packet data to which the input time stamp information is added is stored; and a header area in which the header information created by the header creation circuit is stored;
The packet generation circuit comprises:
Data transfer control characterized in that the output time stamp information is set instead of the input time stamp information included in the packet data from the data area, and the packet data and the header information from the header area are combined. apparatus.
請求項6において、
前記ヘッダ作成回路が、
前記ヘッダ領域に記憶されたヘッダの基本情報を読み出して、該基本情報を用いて前記ヘッダ情報を生成して前記ヘッダ領域に書き戻すことを特徴とするデータ転送制御装置。
In claim 6,
The header creation circuit is
A data transfer control device, comprising: reading basic information of a header stored in the header area, generating the header information using the basic information, and writing back the header information in the header area.
請求項6又は7において、
第1及び第2のモードを切り替えるための転送モード設定レジスタを含み、
前記転送モード設定レジスタにより前記第1のモードに切り替えられたとき、
前記転送コントローラが、
前記サイクルタイマの現在のサイクルタイムを基準に前記オフセット値だけ先行したサイクルタイムに対応した出力タイムスタンプ情報を、前記パケットデータを前記転送先に出力する際に設定された前記パケットデータを生成し、
前記転送モード設定レジスタにより前記第2のモードに切り替えられたとき、
前記転送コントローラが、
前記パケットメモリに蓄積され前記入力タイムスタンプ情報が付加されたパケットデータに含まれるタイムスタンプ情報と比較値とを比較し、
前記比較値と一致するタイムスタンプ情報を含むパケットデータ群に対し、前記入力タイムスタンプ情報に替えて、前記サイクルタイマの現在のサイクルタイムを基準に前記オフセット値だけ先行したサイクルタイムに対応した出力タイムスタンプ情報を設定して、該パケットデータを現在の転送サイクルにおいて前記転送先に出力し、
前記比較値と不一致のタイムスタンプ情報が検出されたときに前記比較値を更新すると共に、前記現在のサイクルタイムの次のサイクルタイムにおいて、更新された比較値と前記パケットメモリに蓄積されたデータに含まれるタイムスタンプ情報とを比較することを特徴とするデータ転送制御装置。
In claim 6 or 7,
A transfer mode setting register for switching between the first and second modes;
When switched to the first mode by the transfer mode setting register,
The transfer controller is
Output time stamp information corresponding to the cycle time preceding the offset value based on the current cycle time of the cycle timer, and generating the packet data set when outputting the packet data to the transfer destination,
When switched to the second mode by the transfer mode setting register,
The transfer controller is
Comparing the time stamp information included in the packet data stored in the packet memory and having the input time stamp information added thereto with a comparison value;
An output time corresponding to a cycle time preceding the offset value based on the current cycle time of the cycle timer instead of the input time stamp information for a packet data group including time stamp information that matches the comparison value Set stamp information and output the packet data to the transfer destination in the current transfer cycle;
When the time stamp information that does not match the comparison value is detected, the comparison value is updated, and at the cycle time next to the current cycle time, the updated comparison value and the data stored in the packet memory are updated. A data transfer control device for comparing time stamp information included therein.
請求項8において、
前記第2のモードに切り替えられたとき、
前記転送コントローラが、
前記比較値と前記パケットデータに含まれるタイムスタンプ情報とを比較し、該比較値と一致するタイムスタンプ情報を含むパケットデータが検出されなかったとき、空パケットを前記転送先に出力することを特徴とするデータ転送制御装置。
In claim 8,
When switched to the second mode,
The transfer controller is
The comparison value is compared with time stamp information included in the packet data, and an empty packet is output to the transfer destination when packet data including time stamp information that matches the comparison value is not detected. A data transfer control device.
請求項8又は9において、
前記第2のモードに切り替えられたとき、
前記転送コントローラが、
前記パケットデータに含まれるタイムスタンプ情報を読み出して、前記比較値と一致するタイムスタンプ情報を含むデータ群に対してヘッダ情報を作成すると共に、前記比較値と不一致のタイムスタンプ情報を含むパケットデータが検出されたことを条件に前記比較値の更新処理を行い、
前記パケットデータのタイムスタンプ情報に替えて、前記サイクルタイマの現在のサイクルタイムを基準に前記オフセット値だけ先行したサイクルタイムに対応した出力タイムスタンプ情報を設定して前記パケットデータを生成し、前記転送先に出力することを特徴とするデータ転送制御装置。
In claim 8 or 9,
When switched to the second mode,
The transfer controller is
Reading the time stamp information included in the packet data, creating header information for a data group including time stamp information that matches the comparison value, and packet data including time stamp information that does not match the comparison value The comparison value is updated on the condition that it is detected,
In place of the time stamp information of the packet data, the packet data is generated by setting output time stamp information corresponding to the cycle time preceding the offset value based on the current cycle time of the cycle timer, and the transfer A data transfer control device that outputs the data first.
請求項1乃至10のいずれかにおいて、
IEEE1394の規格に準拠したデータ転送を行うことを特徴とするデータ転送制御装置。
In any one of Claims 1 thru | or 10.
A data transfer control device that performs data transfer conforming to the IEEE 1394 standard.
パケットデータを受信する受信回路と、
前記受信回路とパケットデータが伝送されるバスとの間に設けられた請求項1乃至7のいずれか記載のデータ転送制御装置とを含み、
前記データ転送制御装置が、
前記バスを介して接続される記録媒体に対し、前記パケットデータを転送することを特徴とする電子機器。
A receiving circuit for receiving packet data;
A data transfer control device according to any one of claims 1 to 7, provided between the receiving circuit and a bus through which packet data is transmitted.
The data transfer control device is
An electronic apparatus that transfers the packet data to a recording medium connected via the bus.
請求項8乃至10のいずれか記載のデータ転送制御装置と、
前記データ転送制御装置を介してバスに接続される記録媒体とを含み、
前記データ転送制御装置が、
前記バスを介して入力されたデータを前記記録媒体に出力して該記録媒体に記録させ、或いは前記記録媒体から読み出したデータを前記バスを介して出力することを特徴とする電子機器。
A data transfer control device according to any one of claims 8 to 10,
Including a recording medium connected to a bus via the data transfer control device,
The data transfer control device is
An electronic apparatus, wherein data input via the bus is output to the recording medium and recorded on the recording medium, or data read from the recording medium is output via the bus.
データ転送を制御するためのデータ転送制御方法であって、
転送サイクル毎に更新されるサイクルタイムをカウントし、
入力されたときにタイムスタンプ情報が未付加のパケットデータを転送先に出力する際に、現在のサイクルタイムを基準にオフセット値だけ先行したサイクルタイムに対応した出力タイムスタンプ情報を、前記パケットデータに付加して前記転送先に出力することを特徴とするデータ転送制御方法。
A data transfer control method for controlling data transfer,
Count the cycle time that is updated every transfer cycle,
When outputting packet data to which the time stamp information is not added to the transfer destination when it is input, output time stamp information corresponding to the cycle time that precedes the current cycle time by an offset value is added to the packet data. A data transfer control method comprising adding and outputting to the transfer destination.
請求項14において、
前記パケットデータが入力されたときのサイクルタイムに対応した入力タイムスタンプ情報を前記パケットデータに付加し、
前記入力タイムスタンプ情報として付加されたサイクルタイムを基準に前記オフセット値だけ先行したサイクルタイムに対応した第1のタイムスタンプ情報を、前記出力タイムスタンプ情報として、前記入力タイムスタンプ情報に替えて前記パケットデータを転送先に出力する際に該パケットデータに設定することを特徴とするデータ転送制御方法。
In claim 14,
Adding input time stamp information corresponding to a cycle time when the packet data is input to the packet data;
The first time stamp information corresponding to the cycle time preceded by the offset value based on the cycle time added as the input time stamp information is replaced with the input time stamp information as the output time stamp information. A data transfer control method comprising: setting data in the packet data when outputting the data to a transfer destination.
請求項15において、
前記第1のタイムスタンプ情報と現在のサイクルタイムとに基づいて、現在のサイクルタイムにおいて付加すべき第2のタイムスタンプ情報を求め、該第2のタイムスタンプ情報を、前記出力タイムスタンプ情報として前記入力タイムスタンプ情報に替えて設定することを特徴とするデータ転送制御方法。
In claim 15,
Based on the first time stamp information and the current cycle time, second time stamp information to be added at the current cycle time is obtained, and the second time stamp information is used as the output time stamp information. A data transfer control method characterized in that it is set in place of input time stamp information.
JP2004223756A 2004-07-30 2004-07-30 Data transfer control device, electronic device, and data transfer control method Withdrawn JP2006049948A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004223756A JP2006049948A (en) 2004-07-30 2004-07-30 Data transfer control device, electronic device, and data transfer control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004223756A JP2006049948A (en) 2004-07-30 2004-07-30 Data transfer control device, electronic device, and data transfer control method

Publications (1)

Publication Number Publication Date
JP2006049948A true JP2006049948A (en) 2006-02-16

Family

ID=36028045

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004223756A Withdrawn JP2006049948A (en) 2004-07-30 2004-07-30 Data transfer control device, electronic device, and data transfer control method

Country Status (1)

Country Link
JP (1) JP2006049948A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013251865A (en) * 2012-06-04 2013-12-12 Panasonic Corp Communication device and clock synchronizing method
JP2016541063A (en) * 2013-11-25 2016-12-28 クアルコム,インコーポレイテッド Multipoint interface shortest pulse width priority resolution

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013251865A (en) * 2012-06-04 2013-12-12 Panasonic Corp Communication device and clock synchronizing method
JP2016541063A (en) * 2013-11-25 2016-12-28 クアルコム,インコーポレイテッド Multipoint interface shortest pulse width priority resolution

Similar Documents

Publication Publication Date Title
EP1006729A2 (en) Data recording and/or reproducing apparatus, method, and system and recording medium
JP3633884B2 (en) Playback image transmission device
KR100982890B1 (en) Method and apparatus for transmitting video data for implementing a specific mode
US6937599B1 (en) Data source, data conversion device, inverse data conversion device, auxiliary data file generation device, reception method, medium and information aggregate
US7194548B1 (en) Data transmission apparatus, receiving apparatus, and sending apparatus
JP3671925B2 (en) Data transfer control device, electronic device, and data transfer control method
JP3815597B2 (en) Signal processing device
JP3558983B2 (en) Digital broadcast recording and playback device
JP2003501892A (en) Apparatus and method for context switching in an electronic network
WO2002017568A1 (en) Data stream processing device and method, and program storage medium
KR100259295B1 (en) Memory controller
JP4091802B2 (en) Audio / video data recording / playback device
JP2006049948A (en) Data transfer control device, electronic device, and data transfer control method
JP4426800B2 (en) AV data recording / reproducing apparatus and method, and recording medium recorded by the AV data recording / reproducing apparatus or method
JP2006049980A (en) Data transfer control device, electronic device, and data transfer control method
JP2001057567A (en) Bridge system between transmission channels and method
JP4845326B2 (en) Method and apparatus for reading MPEG recording data transferred over an IEEE 1394 bus
JP2003281085A (en) Data transfer control device, electronic device, and data transfer control method
JP4075360B2 (en) Data transfer control device and electronic device
JP2006050078A (en) Data transfer control device and electronic device
JP2006050077A (en) Data transfer control device and electronic device
JPH10313448A (en) Moving image transmitting device and receiving device
JP2000316015A (en) Recording and reproducing device
JP3897753B2 (en) Memory output device
JP2000041011A (en) Device and method for information output and providing medium

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20071002