(57)【特許請求の範囲】
【請求項１】
アプリケーション側から送信ストリームパケットデータを受けてあらかじめ決められた時間サイクルでシリアルインタフェースバスに送出する信号処理回路であって、
第１の記憶手段と、
第２の記憶手段と、
制御データを送信する必要が生じた場合に、当該制御データを上記第１の記憶手段に書き込み、制御データの送信をする旨を示す制御データを設定する制御手段と、
上記制御データが設定されていない場合には、受けた送信ストリームパケットデータに制御データを送信しない旨を示すデータをセットしたソースパケットヘッダを付加して所定のフォーマットで上記第２の記憶手段に格納し、上記制御データが設定されている場合には、制御パケットを送信すべき旨を示すデータをセットしたソースパケットヘッダを生成して上記第２の記憶手段に格納する第１の送信回路と、
上記第２の記憶手段に格納されたソースパケットヘッダに制御データを送信しない旨を示すデータがセットされている場合には当該第２の記憶手段に格納されているデータを送信ストリームパケットとして上記ディジタルシリアルインタフェースバスに送出し、上記第２の記憶手段に格納されたソースパケットヘッダに制御データを送信する旨を示すデータがセットされている場合には上記第１の記憶手段に格納されている制御データを制御パケットとして上記ディジタルシリアルインタフェースバスに送出する第２の送信回路と
を有する信号処理回路。
【請求項２】
上記第２の送信回路は、制御パケットの送出が終了すると上記制御手段により設定された制御データをリセットする
請求項１記載の信号処理回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ディジタルシリアルインターフェースに用いられる信号処理回路に関するものである。
【０００２】
【従来の技術】
近年、マルチメディア・データ転送のためのインターフェースとして、高速データ転送、リアルタイム転送を実現するＩＥＥＥ（The Institute of Electrical and Electronic Engineers) １３９４、Ｈｉｇｈ  ＰｅｒｆｏｒｍａｎｃｅＳｉｒｉａｌ  Ｂｕｓが規格化された。
【０００３】
このＩＥＥＥ１３９４シリアルインタフェースのデータ転送には、従来のRequest,Acknoledgeの要求、受信確認を行うアシンクロナス（Asynchronous) 転送と、あるノードから１２５μｓに１回必ずデータが送られるアイソクロナス(Isochronous) 転送がある。
【０００４】
このように、２つの転送モードを有するＩＥＥＥ１３９４シリアルインタフェースでのデータは、パケット単位で転送が行われる。
【０００５】
図３は、アイソクロナス通信における１ソースパケットのバイトサイズを示す図である。図３（Ａ）はＤＶＢ(Digital Video Broadcast) 仕様時、図３（Ｂ）はＤＳＳ(Digital Satelite System) 仕様時のパケットサイズを示している。
【０００６】
ＤＶＢ仕様時のソースパケットサイズは、図３（Ａ）に示すように、４バイトのソースパケットヘッダ（ＳＰＨ；Source Packet Header）と１８８バイトのデータの１９２バイトである。
【０００７】
これに対して、ＤＳＳ仕様時のソースパケットサイズは、図３（Ｂ）に示すように、４バイトのソースパケットヘッダ（ＳＰＨ）、１０バイトの付加データ、および１３０バイトのデータの１４４バイトである。
付加バイトはソースパケットヘッダとデータとの間に挿入される。なお、ＩＥＥＥ１３９４規格では、取り扱う最小データの単位は１クワドレット(quadlet) （＝４バイト＝３２ビット）であるため、トランスポートストリームデータと付加データの合計が３２ビット単位で構成できる設定であることが必要である。
ただし、デフォルトでは付加バイトなしで設定される。
【０００８】
図４は、ＩＥＥＥ１３９４規格のアイソクロナス通信でデータを送信させるときの元のデータと、実際に送信されるパケットとの対応関係の一例を示す図である。
【０００９】
図４に示すように、元のデータであるソースパケットは、４バイトのソースパケットヘッダと、データ長を調整するためのパディングデータを付加された後、所定の数のデータブロックに分割される。
なお、パケットを転送するときのデータの単位が１クワドレット（４バイト）であることから、データブロックや各種ヘッダなどのバイト長は、全て４の倍数に設定される。
【００１０】
図５は、ソースパケットヘッダのフォーマットを示す図である。
図５に示すように、ソースパケットヘッダのうち、２５ビットには、たとえば上述したＤＶＢ方式等のディジタル衛星放送等で利用されているＭＰＥＧ(Moving Picture Experts Group)−ＴＳ(Transport Stream)データをアイソクロナス通信で送信するときに、ジッタを抑制するために利用されるタイムスタンプ(Time Stamp)が書き込まれる。
【００１１】
そして、このようなパケットヘッダやＣＩＰ(Common Isochronous Packet) ヘッダ等のデータが、所定の数のデータブロックに付加されることによりパケットが生成される。
【００１２】
図６はアイソクロナス通信用パケットの基本構成例を示す図である。
図６に示すように、アイソクロナス通信のパケットは、第１クワドレットが１３９４ヘッダ(Header)、第２クワドレットがヘッダＣＲＣ(Header-CRC)、第３クワドレットがＣＩＰヘッダ１（CIP-Header1)、第４クワドレットがＣＩＰヘッダ２（CIP-Header2)、第５クワドレットがソースパケットヘッダ（ＳＰＨ）で、第６クワドレット以降がデータ領域である。そして、最後のクワドレットがデータＣＲＣ(Data-CRC)である。
【００１３】
１３９４ヘッダは、データ長を表すdata-lengt、このパケット転送されるチャネルの番号（０〜６３のいずれか）を示すchannel 、処理のコードを表すtcode 、および各アプリケーションで規定される同期コードｓｙにより構成されている。
ヘッダＣＲＣは、パケットヘッダの誤り検出符号である。
【００１４】
ＣＩＰヘッダ１は、送信ノード番号のためのＳＩＤ(Source node ID)領域、データブロックの長さのためのＤＢＳ(Data Block Size) 領域、パケット化におけるデータの分割数のためのＦＮ(Fraction Number) 領域、パディグデータのクワドレット数のためのＱＰＣ(Quadlet Padding Count) 領域、ソースパケットヘッダの有無を表すフラグのためのＳＰＨ領域、アイソクロナスパケットの数を検出するカウンタのためのＤＢＣ（Data Block Continuty Counter) 領域により構成されている。
なお、ＤＢＳ領域は、１アイソクロナスパケットで転送するクワドレット数を表す。
【００１５】
ＣＩＰヘッダ２は、転送されるデータの種類を表す信号フォーマットのためのＦＭＴ領域、および信号フォーマットに対応しえ利用されるＦＤＦ(Format Dependent Field)領域により構成されている。
【００１６】
ＳＰＨヘッダは、トランスポートストリームパケットが到着した軸に固定の遅延値を加えた値が設定されるタイムスタンプ領域を有している。
また、データＣＲＣは、データフィールドの誤り検出符号である。
【００１７】
上述した構成を有するパケットの送受信を行うＩＥＥＥ１３９４シリアルインタフェースの信号処理回路は、主としてＩＥＥＥ１３９４シリアルバスを直接ドライブするフィジカル・レイヤ回路と、フィジカル・レイヤ回路のデータ転送をコントロールするリンク・レイヤ回路とにより構成される。
【００１８】
【発明が解決しようとする課題】
上述したＩＥＥＥ１３９４シリアルインタフェースにおけるアイソクロナス通信系では、たとえば図７に示すように、アプリケーションである側ＭＰＥＧトランスポータ(Transporter) １にリンク・レイヤ回路２が接続され、リンク・レイヤ回路２はフィジカル・レイヤ回路３を介してシリアルインタフェースバスＢＳに接続されている。
ＩＥＥＥ１３９４シリアルインタフェースのデータ転送では、送信データおよび受信データは一旦リンク・レイヤ回路２に設けられたＦＩＦＯ（First-In First-Out）メモリ（以下、単にＦＩＦＯという）等の記憶装置に格納される。実際には、アシンクロナスパケット用ＦＩＦＯとアイソクロナスパケット用ＦＩＦＯとは別個に設けられる。
【００１９】
ところで、図８に示すように、通常のＭＰＥＧのトランスポートストリームデータＴＳＤの間に制御用のパケット（以下、インサートパケット；Insert Packet ）データを挿入する必要が生じるときがある。
たとえば、ＭＰＥＧのトランスポートストリームを流すときのＰＡＴ(Program Allocation Table)が書かれていて、このトランスポータのこのチャンネルには何を割り当てる、あるいはチャンネルを選んで流すときに必要となる。
【００２０】
しかしながら、現在のＩＥＥＥ１３９４シリアルインタフェースにおける信号処理回路では、上述した制御用のインサートパケットをＭＰＥＧソースパケットの間にアイソクロナスパケットとして任意に流す構成は未だ実現されていない。
【００２１】
本発明は、かかる事情に鑑みてなされたものであり、その目的は、制御用パケットを通常のトランスポートストリームに挿入して送信することができる信号処理回路を提供することにある。
【００２２】
【課題を解決するための手段】
上記目的を達成するため、本発明は、アプリケーション側から送信ストリームパケットデータを受けてあらかじめ決められた時間サイクルでシリアルインタフェースバスに送出する信号信処理回路であって、制御用データを生成して、上記送信ストリームパケットの間に制御パケットとして挿入し、送信ストリームパケットとして上記シリアルインタフェースバスに送出する制御手段を有する
【００２３】
また、本発明は、アプリケーション側から送信ストリームパケットデータを受けてあらかじめ決められた時間サイクルでシリアルインタフェースバスに送出する信号処理回路であって、第１の記憶手段と、第２の記憶手段と、制御データを送信する必要が生じた場合に、当該制御データを上記第１の記憶手段に書き込み、制御データの送信をする旨を示す制御データを設定する制御手段と、上記制御データが設定されていない場合には、受けた送信ストリームパケットデータに制御データを送信しない旨を示すデータをセットしたソースパケットヘッダを付加して所定のフォーマットで上記第２の記憶手段に格納し、上記制御データが設定されている場合には、制御パケットを送信すべき旨を示すデータをセットしたソースパケットヘッダを生成して上記第２の記憶手段に格納する第１の送信回路と、上記第２の記憶手段に格納されたソースパケットヘッダに制御データを送信しない旨を示すデータがセットされている場合には当該第２の記憶手段に格納されているデータを送信ストリームパケットとして上記シリアルインタフェースバスに送出し、上記第２の記憶手段に格納されたソースパケットヘッダに制御データを送信する旨を示すデータがセットされている場合には上記第１の記憶手段に格納されている制御データを制御パケットとして上記シリアルインタフェースバスに送出する第２の送信回路とを有する。
【００２４】
本発明の信号処理回路によれば、アプリケーション側からの送信ストリームパケットを送信中に、制御データを送信する必要が生じた場合に、送信制御手段により制御用データが生成され、この制御データが送信ストリームパケットの間に制御パケットとして挿入され、送信ストリームパケットとしてシリアルインタフェースバスに送出される。
【００２５】
また、本発明によれば、アプリケーション側からの送信ストリームパケットを送信中に、制御データを送信する必要が生じた場合に、制御手段によりこの制御データが第１の記憶手段に書き込まれ、また制御データの送信をする旨を示す制御データが設定される。
ここで、上記制御データが設定されていない場合には、第１の送信回路により送信ストリームパケットデータに制御データを送信しない旨を示すデータがセットされたソースパケットヘッダが付加されて所定のフォーマットで第２の記憶手段に格納される。そして、第２の送信回路では、第２の記憶手段に格納されたソースパケットヘッダに制御データを送信しない旨を示すデータがセットされていることから、第２の記憶手段に格納されているデータを送信ストリームパケットとしてシリアルインタフェースバスに送出される。
一方、上記制御データが設定されている場合には、第１の送信回路により制御パケットを送信すべき旨を示すデータをセットされ、ソースパケットヘッダが生成され第２の記憶手段に格納される。そして、第２の送信回路では、第２の記憶手段に格納されたソースパケットヘッダに制御データを送信する旨を示すデータがセットされていることから、第１の記憶手段に格納されている制御データが制御パケットとしてシリアルインタフェースバスに送出される。
【００２６】
【発明の実施の形態】
第１実施形態
図１は、ＩＥＥＥ１３９４シリアルインタフェースに適用される本発明に係るＭＰＥＧ用信号処理回路の一実施形態を示すブロック構成図である。
【００２７】
この信号処理回路は、リンク・レイヤ回路１０、フィジカル・レイヤ回路２０、ホストコンピュータとしてのＣＰＵ３０により構成されている。また、４０はＭＰＥＧトランスポータを示している。
【００２８】
リンク・レイヤ回路１０は、ＣＰＵ３０の制御の下、アシンクロナス転送およびとアイソクロナス転送の制御、並びにフィジカル・レイヤ回路２０の制御を行う。
具体的には、図１に示すように、リンクコア(Link Core))１０１、ホストインタフェース回路（Host I/F）１０２、アプリケーションインタフェース回路（AP I/F) １０３、送信用ＦＩＦＯ（AT-FIFO)１０４ａ、受信用ＦＩＦＯ（AR-FIFO)１０４ｂ、インサートパケット用ＦＩＦＯ（INS-FIFO) １０４ｃからなるアシンクロナス通信および制御パケット用ＦＩＦＯ１０４、セルフＩＤ用リゾルバ(Resolver)１０５、アイソクロナス通信用送信前処理回路(TXOPRE)１０６、アイソクロナス通信用送信後処理回路(TXOPRO)１０７、アイソクロナス通信用受信前処理回路(TXIPRE)１０８、アイソクロナス通信用受信前処理回路(TXIPRO)１０９、アイソクロナス通信用ＦＩＦＯ(I-FIFO)１１０、およびコンフィギュレーションレジスタ（Configuration Register、以下ＣＦＲという）により構成されている。
【００２９】
図１の回路おいて、ホストインタフェース回路１０２、送信用ＦＩＦＯ１０４ａ、アシンクロナス通信の受信用ＦＩＦＯ１０４ｂおよびリンクコア１０１によりアシンクロナス通信系回路が構成される。
そして、アプリケーションインタフェース回路１０３、送信前処理回路１０６、送信後処理回路１０７、受信前処理回路１０８、受信前処理回路１０９、ＦＩＦＯ１１０およびリンクコア１０１によりアイソクロナス通信系回路が構成される。
【００３０】
リンクコア１０１は、アシンクロナス通信用パケットおよびアイソクロナス通信用パケットの送信回路、受信回路、これらパケットのＩＥＥＥ１３９４シリアルバスＢＳを直接ドライブするフィジカル・レイヤ回路２０とのインタフェース回路、１２５μｓ毎にリセットされるサイクルタイマ、サイクルモニタやＣＲＣ回路から構成されている。そして、たとえばサイクルタイマ等の時間データ等はＣＦＲ１１１を通してアイソクロナス通信系処理回路に供給される。
【００３１】
ホストインタフェース回路１０２は、主としてホストコンピュータとしてのＣＰＵ３０と送信用ＦＩＦＯ１０４ａ、受信用ＦＩＦＯ１０４ｂとのアシンクロナス通信用パケットの書き込み、読み出し等の調停、ＣＰＵ３０とインサートパケット用ＦＩＦＯ１０４ｃとのインサートパケットの書き込みの調停、並びに、ＣＰＵ３０とＣＦＲ１１１との各種データの送受信の調停を行う。
たとえばＣＰＵ３０からは、アイソクロナス通信用パケットのＳＰＨ（ソースパケットヘッダ）に設定されるタイムスタンプ用遅延時間Txdelay がホストインタフェース１０２を通してＣＦＲ１１１にセットされる。
また、ＣＰＵ３０からは、通常のＭＰＥＧのトランスポートストリームデータＴＳＤの間に制御用パケットであるはインサートパケットデータを挿入する必要が生じたとき、ＣＦＲ１１１のレジスタＩＰＴｘＧｏに論理「１」がセットされる。
【００３２】
送信用ＦＩＦＯ１０４ａには、ＩＥＥＥ１３９４シリアルバスＢＳに伝送させるアシンクロナス通信用パケットが格納され、受信用ＦＩＦＯ１０４ｂにはＩＥＥＥ１３９４シリアルバスＢＳを伝送されてきたアシンクロナス通信用パケットが格納される。
【００３３】
インサートパケット用ＦＩＦＯ１０４ｃには、制御用パケットデータがＣＰＵ３０から書き込まれる。
ＦＩＦＯ１０４ｃの容量は、たとえば１８８バイトであり、１８８バイトまでのデータが有効で、この容量を越えたデータに関しては送信されない。
送信するデータが１８８バイト以下の場合は、書き込まれたデータ以外が「１」にセットされて送信される。
なお、インサートパケット用ＦＩＦＯ１０４ｃは、たとえば３３ビット幅であり、そのＭＳＢは、最終クワドレットで「１」にセットされる。また、ＭＳＢ
が１のデータを出力した後に、さらに後述する送信後処理回路１０７からの読出パルス信号ＩＮＳ−ＲＤ  を受けた場合には、「０ｘＦＦＦＦＦＦＦＦ（全ビット１）」を出力するように制御される。
そして、一度書き込んだデータは送信後も保持され、同じ内容のものを続けて送信するときは、上述したレジスタＩＰＴｘＧｏが「０」になったことを確認した後、このレジスタＩＰＴｘＧｏを「１」にセットすることにより行われる。
【００３４】
アプリケーションインタフェース回路１０３は、ＭＰＥＧトランスポータ４０とアイソクロナス通信用送信前処理回路１０６およびアイソクロナス通信用受信前処理回路１０９とのクロック信号や制御信号等を含むＭＰＥＧトランスポートストリームデータの送受信の調停を行う。
【００３５】
リゾルバ１０５は、ＩＥＥＥ１３９４シリアルバスＢＳを伝送されてきたセルフＩＤパケットを解析し、ＣＦＲ１１１に格納する。
【００３６】
送信前処理回路１０６は、ＣＦＲ１１１のレジスタＩＰＴｘＧｏの設定を確認し、その設定が「０」の場合と「１」の場合で異なる処理を行う。
レジスタＩＰＴｘＧｏの設定が「０」の場合には、アプリケーションインタフェース回路１０３を介してＭＰＥＧトランスポータ４０によるＭＰＥＧトランスポートストリームデータを受けて、ＩＥＥＥ１３９４規格のアイソクロナス通信用としてクワドレット（４バイト）単位にデータ長を調整し、かつＣＦＲ１１１に設定された遅延時間Txdelay を用いてタイムスタンプの値を設定して４バイトのソースパケットヘッダ（ＳＰＨ）を付加してＦＩＦＯ１１０に格納する。
【００３７】
なお、ソースパケットヘッダを付加するときに受信側のデータ出力時間を決定するタイムスタンプを設定するが、この設定は以下のように行われる。
まず、ＭＰＥＧトランスポータ４０からパケットの最終データを受け取ったタイミングで内部のサイクルレジスタの値をラッチする。
次に、ＣＰＵ３０からホストインタフェース１０２を介してＣＦＲ１１１にセットされた遅延時間Txdelay を上記サイクルレジスタの値に加算する。
そして、加算した値をタイムスタンプとして、受け取ったパケットのソースパケットヘッダに挿入（設定）する。
【００３８】
図２は、タイムスタンプの具体的な構成を説明するための図である。
図２に示すように、受信側のデータ出力時間を決定するためのタイムスタンプは、２５ビットで現時刻を表す。
すなわち、タイムスタンプは２５ビットで構成され、下位１２ビットがサイクルオフセットＣＯ(cycle-offset)領域、上位１３ビットがサイクルカウントＣＣ(cycle-count) 領域として割り当てられている。
サイクルオフセットは０〜３０７１（１２ｂ  １０１１１１１１１１１１）の１２５μｓをカウントし（クロックＣＬＫ＝２４．５７６ＭＨｚ）、サイクルカウントは０〜７９９９（１３ｂ  １１１１１００１１１１１１）の１秒をカウントするものである。
したがって、原則として、タイムスタンプの下位１２ビットは３０７２以上を示すことはなく、上位１３ビットは８０００以上を示すことはない。
【００３９】
また、送信前処理回路１０６は、ＣＦＲ１１１のレジスタＩＰＴｘＧｏの設定が「１」の場合には、たとえばパケットギャップ(Packet Gap)の立ち下がりでソースパケットヘッダを生成し、ＦＩＦＯ１１０に書き込む。このとき、図２に示すように、インサートパケットマークＩＰＭ用に指定された２９ビットを「１」に設定し、このＦＩＦＯ１１０に書き込んだソースパケットヘッダがインサートパケット用のものであることを印す。なお、上述したレジスタＩＰＴｘＧｏの設定が「０」の場合の通常のソースパケットヘッダの生成時には、ＩＰＭビット２９は、必ず「０」に保持する。
それから、ＦＩＦＯ書き込みポインターを次のパケットの先頭に移す。
ポインターをずらす量Ｓは、パケットサイズをＰＳとすると次式で与えられる。
【００４０】
【数１】
Ｓ＝（ＰＳ−４）／４（クワドレット）
【００４１】
たとえばポインターをずらす量Ｓは、ＤＶＢ方式の場合の１８８／４で４７、ＤＳＳ方式の場合には１４０／４で３５である。
以後、レジスタＩＰＴｘＧｏの設定が「０」に戻るまで、インサートパケット用ソースパケットヘッダは生成しない。
【００４２】
送信後処理回路１０７は、ＦＩＦＯ１１０に格納されたデータを読み出し、ソースパケットヘッダの先頭毎に、ソースパケットヘッダのインサートパケットマークＩＰＭ用に指定された２９ビットが「０」であるか「１」であるかを確認し、その設定値によって異なる処理を行う。
インサートパケットマークＩＰＭが「０」の場合には、ＦＩＦＯ１１０に格納されたソースパケットヘッダを含むデータを読出て、図９に示すように、１３９４ヘッダ、ＣＩＰヘッダ１，２を付加してリンクコア１０１の送信回路に出力する。
【００４３】
また、送信後処理回路１０７は、インサートパケットマークＩＰＭが「１」の場合には、インサートパケット送信処理を行う。
なお、インサートパケットマークＩＰＭを確認したら、ソースパケットヘッダの上記７ビットは、ＣＦＲ１１１のレジスタＳＰＨ−ＲＳＶの内容で置き換えてリンクコア１０１に送る。
具体的には、インサートパケットマークＩＰＭが「１」の場合には、ソースパケットヘッダ以降のデータとして、インサートパケット用ＦＩＦＯ１０４ｃにＣＰＵ３０によって書き込まれたデータを用いるために、読み出しパルス信号ＩＮＳ−ＲＤを必要なデータ個数分だけＦＩＦＯ１０４ｃに出力して、必要なデータを順次読み出し、たとえば上述した所定のヘッダを付加してインサートパケットをデータをリンクコア１０１に出力する。
【００４４】
また、送信後処理回路１０７は、インサートパケット送信処理中は、信号ＩＮＳ−ＭＫを論理「１」に設定する。この信号ＩＮＳ−ＭＫは、実際はソースパケットヘッダのＩＰＭをラッチしたものである。なお、信号ＩＮＳ−ＭＫの設定は、インサートパケットのソースパケットヘッダがＬＡＴＥ判断されて送信されなかったとしても行われる。
信号ＩＮＳ−ＭＫは、レジスタＩＰＴｘＧｏを「０」にリセットするために用いられ、ＣＰＵ３０はレジスタＩＰＴｘＧｏを「０」になったことを確認して、インサートパケット送信処理が終了したことを知る。
そして、送信後処理回路１０７は、次のアイソクロナスパケットのソースパケットヘッダを処理するときに、信号ＩＮＳ−ＭＫを「０」にセットする。
【００４５】
受信前処理回路１０８は、リンクコア１０１を介してＩＥＥＥ１３９４シリアルバスＢＳを伝送されてきたアイソクロナス通信用パケットを受けて、受信パケットの１３９４ヘッダ、ＣＩＰヘッダ１，２等の内容を解析し、データを復元してソースパケットヘッダとデータをＦＩＦＯ１１０に格納する。
【００４６】
受信後処理回路１０９は、内部レジスタにＦＩＦＯ１１０に格納されたソースパケットヘッダのタイムスタンプの時間データを読み出し、読み出したタイムスタンプデータ（ＴＳ）とリンクコア１０１内にあるサイクルタイマによるサイクルタイム（ＣＴ）を比較し、サイクルタイムＣＴがタイムスタンプデータＴＳより大きい場合には、ＦＩＦＯ１１０に格納されているソースパケットヘッダを除くデータを読み出しアプリケーションインタフェース回路１０３を介し、ＭＰＥＧ用トランスポートストリームデータとしてＭＰＥＧトランスポータ４０に出力する。
【００４７】
ＣＰＵ３０は、システム全体の制御を行う。また上述したようにアイソクロナス通信用パケットのＳＰＨ（ソースパケットヘッダ）を設定するためのタイムスタンプ用遅延時間Txdelay をホストインタフェース１０２を通してＣＦＲ１１１にセットする。
さらにまた、通常のＭＰＥＧのトランスポートストリームデータＴＳＤの間に制御用パケットであるインサートパケットデータを挿入する必要が生じたとき、ＣＦＲ１１１のレジスタＩＰＴｘＧｏに「１」をセットする。そして、このレジスタＩＰＴｘＧｏが「０」に切り換わったときにインサートパケットが終了したことを認識する。
【００４８】
次に、ＩＥＥＥ１３９４シリアルバスＢＳを伝送されるアイソクロナス通信用パケットの送信動作を説明する。
【００４９】
ＩＥＥＥ１３９４シリアルバスＢＳにアシンクロナス通信用パケットを送出する場合には、たとえばＣＰＵ３０からアイソクロナス通信用パケットのＳＰＨ（ソースパケットヘッダ）に設定されるタイムスタンプ用遅延時間Txdelay がホストインタフェース１０２を通してＣＦＲ１１１にセットされる。
また、通常のＭＰＥＧのトランスポートストリームデータＴＳＤの間に制御用パケットであるインサートパケットデータを挿入する必要が生じていない通常処理時には、ＣＦＲ１１１のレジスタＩＰＴｘＧｏが「０」のままに保持される。
【００５０】
この通常の送信処理では、送信前処理回路１０６では、アプリケーションインタフェース回路１０３を介してＭＰＥＧトランスポータ４０によるＭＰＥＧトランスポートストリームデータを受けて、ＩＥＥＥ１３９４規格のアイソクロナス通信用としてクワドレット（４バイト）単位にデータ長が調整される。このとき、ＣＲ１１１にセットされた遅延時間Txdelay を用いてタイムスタンプの値が設定され４バイトのソースパケットヘッダ（ＳＰＨ）が付加されＦＩＦＯ１１０に格納される。
また、レジスタＩＰＴｘＧｏの設定が「０」の場合の通常のソースパケットヘッダの生成時には、２９ビットのインサートパケットマークＩＰＭビット２９は「０」に保持される。
【００５１】
この場合、送信後処理回路１０７では、送信前処理回路１０６のＦＩＯＦアクセス制御回路１０６２による格納情報信号Ｓ１０６を受けて、ＦＩＦＯ１１０に格納されたソースパケットヘッダを含むデータに対して、１３９４ヘッダ、ＣＩＰヘッダ１，２が付加されしリンクコア１０１の送信回路に出力され、フィジカル・レイヤ回路２０を介してＩＥＥＥ１３９４シリアルバスＢＳにアシンクロナス通信用パケットとして送出される。
【００５２】
ここで通常のＭＰＥＧのトランスポートストリームデータＴＳＤの間に制御用パケットであるインサートパケットデータを挿入する必要が生じた場合、まず、インサートパケット用ＦＩＦＯ１０４ｃに、制御用パケットデータがＣＰＵ３０から書き込まれる。また、ＣＰＵ３０によりＣＦＲ１１１のレジスタＩＰＴｘＧｏに「１」がセットされる。
【００５３】
そして、送信前処理回路１０６では、ＣＦＲ１１１のレジスタＩＰＴｘＧｏが「１」に設定されることが確認されると、パケットギャップの立ち下がりでソースパケットヘッダが生成され、ＦＩＦＯ１１０への書き込みが行われる。
このとき、インサートパケットマークＩＰＭ用に指定された２９ビットが「１」に設定され、このＦＩＦＯ１１０に書き込んだソースパケットヘッダがインサートパケット用のものであることを印される。
それから、ＦＩＦＯ書き込みポインターが次のパケットの先頭に移される。
【００５４】
次に、送信後処理回路１０７において、ＦＩＦＯ１１０に格納されたソースパケットデータが読み出され、インサートパケットマークＩＰＭが「１」に設定されていることが確認されると、インサートパケット送信処理が行われる。
インサートパケットマークＩＰＭが「１」であることが確認されると、ソースパケットヘッダ以降のデータとして、インサートパケット用ＦＩＦＯ１０４ｃにＣＰＵ３０によって書き込まれたデータを用いるために、読み出しパルス信号ＩＮＳ−ＲＤが必要なデータ個数分だけＦＩＦＯ１０４ｃに出力される。
これにより、必要な制御パケットデータが順次読み出され、たとえば所定のヘッダが付加されてインサートパケットデータがリンクコア１０１に出力される。
【００５５】
また、送信後処理回路１０７では、インサートパケット送信処理中は、信号ＩＮＳ−ＭＫが「１」に設定される。
そして、送信後処理回路１０７では、インサートパケットの送信が終了し、次のアイソクロナスパケットのソースパケットヘッダを処理するときに、信号ＩＮＳ−ＭＫが「０」にセットされる。
そして、ＣＰＵ３０において、レジスタＩＰＴｘＧｏが「０」になったことが確認されることにより、インサートパケット送信処理が終了したことが認知される。
【００５６】
以上説明したように、本実施形態によれば、アシンクロナス通信系の記憶装置として制御パケット用ＦＩＦＯ１０４ｃを設け、ＣＰＵ３０から任意に制御データを設定して、ＣＰＵ３０の制御の下、送信前処理回路１０６および送信後処理回路１０７により通常ＭＰＥＧトランスポートストリームの間に制御用パケットを挿入するように構成したので、任意に通常のトランスポートストリームからなるパケットの他に制御用のパケットをアイソクロナスパケットとして送信することができる。
【００５７】
【発明の効果】
以上説明したように、本発明によれば、制御用パケットを通常のトランスポートストリームに挿入して送信することができる。
【図面の簡単な説明】
【図１】ＩＥＥＥ１３９４シリアルインタフェースに適用される本発明に係るＭＰＥＧ用信号処理回路の一実施形態を示すブロック構成図である。
【図２】タイムスタンプの具体的な構成を説明するための図である。
【図３】アイソクロナス通信における１ソースパケットのバイトサイズを示す図であって、（Ａ）はＤＶＢ仕様時、（Ｂ）はＤＳＳ仕様時のパケットサイズを示す図である。
【図４】ＩＥＥＥ１３９４規格のアイソクロナス通信でデータを送信させるときの元のデータと、実際に送信されるパケットとの対応関係の一例を示す図である。
【図５】ソースパケットヘッダのフォーマットを示す図である。
【図６】アイソクロナス通信用パケットの基本構成例を示す図である。
【図７】ＩＥＥＥ１３９４シリアルインタフェースにおけるアイソクロナス通信系回路の基本構成を示すブロック図である。
【図８】通常のＭＰＥＧのトランスポートストリームデータＴＳＤの間に制御用のパケットデータを挿入する必要がある場合の説明図である。
【符号の説明】
１０…リンク・レイヤ回路、１０１…リンクコア(Link Core))、１０２…ホストインタフェース回路（Host I/F）、１０３２…アプリケーションインタフェース回路（AP I/F) 、１０４…アシンクロナス通信および制御パケット用ＦＩＦＯ、１０４ａ…送信用ＦＩＦＯ（AT-FIFO)、１０４ｂ…受信用ＦＩＦＯ（AR-FIFO)、１０４ｃ…インサートパケット（制御パケット）用ＦＩＦＯ（INS-FIFO) 、１０５…セルフＩＤ用リゾルバ(Resolver)、１０６…アイソクロナス通信用送信前処理回路(TXOut1)、１０７…アイソクロナス通信用送信後処理回路(TXOut2)、１０８…アイソクロナス通信用受信前処理回路(TXIn1) 、１０９…アイソクロナス通信用受信前処理回路(TXIn2) 、１１０…アイソクロナス通信用ＦＩＦＯ(I-FIFO)、１１１…コンフィギュレーションレジスタ（ＣＦＲ）、２０…フィジカル・レイヤ回路、３０…ＣＰＵ、４０…ＭＰＥＧトランスポータ。
【図１】
0003799726.tif 000002
【図２】
0003799726.tif 000003
【図３】
0003799726.tif 000004
【図４】
0003799726.tif 000005
【図５】
0003799726.tif 000006
【図６】
0003799726.tif 000007
【図７】
0003799726.tif 000008
【図８】
0003799726.tif 000009