(57)【特許請求の範囲】
【請求項１】
自ノードとシリアルインタフェースバスを介して接続された他ノード間でパケットの送信を行う信号処理回路であって、
入力されるトランスポートストリームパケットを入力レートに応じて、分割したものをアイソクロナスパケットとして送信するために、あらかじめストリームのレートに応じて設定されている分割数がセットされるコンフィギュレーションレジスタと、
トランスポートストリームデータを受けて、アイソクロナス通信用にデータ長を調整し、かつタイムスタンプを設定したソースパケットヘッダを付加し、上記コンフィギュレーションレジスタに設定された分割数に基づき分割したストリームパケットを上記シリアルインタフェースバスに送出する送信系処理回路と、
シリアルインタフェースバスを、分割されて伝送されてきたアイソクロナス通信用パケットを受けて、ヘッダの内容を解析し、データを復元し、受信パケットのソースパケットヘッダのタイムスタンプの時間データを読み出し、読み出したタイムスタンプデータとサイクルタイマによるサイクルタイムを比較し、サイクルタイムがタイムスタンプデータより大きい場合にはソースパケットヘッダを除くデータをトランスポートストリームデータとして出力し、エラービットがセットされていて、ＤＢＣ不連続マークがセットされているパケットを出力する場合には、エラービットをリセットし、エラーパケットを１つ出力する受信系処理回路と
を有する信号処理回路。
【請求項２】
上記分割数は、ストリームのピークレートに応じて設定されている
請求項１記載の信号処理回路。
【請求項３】
上記ストリームパケットは、基準レートより低レートの場合に分割転送される
請求項１記載の信号処理回路。
【請求項４】
各送信パケットに、シリアルインタフェースバスにおけるジッタを抑制し、受信側のデータ出力時間を決定するタイムスタンプを付加する手段
を有する請求項１記載の信号処理回路。
【請求項５】
自ノードとシリアルインタフェースバスを介して接続された他ノード間でパケットの送信を行う信号処理回路であって、
入力されるトランスポートストリームパケットを入力レートに応じて、合成したものをアイソクロナスパケットとして送信するために、あらかじめストリームのレートに応じて設定されている合成数がセットされるコンフィギュレーションレジスタと、
トランスポートストリームデータを受けて、アイソクロナス通信用にデータ長を調整し、かつタイムスタンプを設定したソースパケットヘッダを付加し、上記コンフィギュレーションレジスタに設定された合成数に基づき合成したストリームパケットを上記シリアルインタフェースバスに送出する送信系処理回路と、
シリアルインタフェースバスを、合成されて伝送されてきたアイソクロナス通信用パケットを受けて、ヘッダの内容を解析し、データを復元し、受信パケットのソースパケットヘッダのタイムスタンプの時間データを読み出し、読み出したタイムスタンプデータとサイクルタイマによるサイクルタイムを比較し、サイクルタイムがタイムスタンプデータより大きい場合にはソースパケットヘッダを除くデータをトランスポートストリームデータとして出力し、エラービットがセットされていて、ＤＢＣ不連続マークがセットされているパケットを出力する場合には、エラービットをリセットし、エラーパケットを１つ出力する受信系処理回路と
を有する信号処理回路。
【請求項６】
上記合成数は、ストリームのピークレートに応じて設定されている
請求項５記載の信号処理回路。
【請求項７】
上記ストリームパケットは、基準レートより高レートの場合に合成転送される
請求項７記載の信号処理回路。
【請求項８】
各送信パケットに、シリアルインタフェースバスにおけるジッタを抑制し、受信側のデータ出力時間を決定するタイムスタンプを付加する手段
を有する請求項５記載の信号処理回路。
【請求項９】
自ノードとシリアルインタフェースバスを介して接続された他ノード間でパケットの送信を行う信号処理回路であって、
入力されるトランスポートストリームパケットを入力レートに応じて、分割または合成したものをアイソクロナスパケットとして送信するために、あらかじめストリームのレートに応じて設定されている分割数または合成数がセットされるコンフィギュレーションレジスタと、
トランスポートストリームデータを受けて、アイソクロナス通信用にデータ長を調整し、かつタイムスタンプを設定したソースパケットヘッダを付加し、上記コンフィギュレーションレジスタに設定された分割数または合成数に基づき分割または合成したストリームパケットを上記シリアルインタフェースバスに送出する送信系処理回路と、
シリアルインタフェースバスを、合成されて伝送されてきたアイソクロナス通信用パケットを受けて、ヘッダの内容を解析し、データを復元し、受信パケットのソースパケットヘッダのタイムスタンプの時間データを読み出し、読み出したタイムスタンプデータとサイクルタイマによるサイクルタイムを比較し、サイクルタイムがタイムスタンプデータより大きい場合にはソースパケットヘッダを除くデータをトランスポートストリームデータとして出力し、エラービットがセットされていて、ＤＢＣ不連続マークがセットされているパケットを出力する場合には、エラービットをリセットし、エラーパケットを１つ出力する受信系処理回路と
を有する信号処理回路。
【請求項１０】
上記分割数、または合成数は、ストリームのピークレートに応じて設定されている
請求項９記載の信号処理回路。
【請求項１１】
上記ストリームパケットは、基準レートより低レートの場合には分割転送され、高レートの場合には合成転送される
請求項９記載の信号処理回路。
【請求項１２】
各送信パケットに、シリアルインタフェースバスにおけるジッタを抑制し、受信側のデータ出力時間を決定するタイムスタンプを付加する手段
を有する請求項９記載の信号処理回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ディジタルシリアルインタフェースに用いられる信号処理回路に関するものである。
【０００２】
【従来の技術】
近年、マルチメディア・データ転送のためのインタフェースとして、高速データ転送、リアルタイム転送を実現するＩＥＥＥ（The Institute of Electrical and Electronic Engineers) １３９４、Ｈｉｇｈ  Ｐｅｒｆｏｒｍａｎｃｅ  Ｓｅｒｉａｌ  Ｂｕｓが規格化された。
【０００３】
このＩＥＥＥ１３９４シリアルインタフェースのデータ転送には、従来のRequest,Acknowledge の要求、受信確認を行うアシンクロナス（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-length 、このパケット転送されるチャネルの番号（０〜６３のいずれか）を示す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）メモリ（以下、単にＦＩＦＯという）等の記憶装置に格納される。実際には、アシンクロナスパケット用ＦＩＦＯとアイソクロナスパケット用ＦＩＦＯとは別個に設けられる。
【００１９】
ところで、上述したように通常のＭＰＥＧのトランスポートストリームデータの１ソースパケットを分割して送信することがある。
しかし、現在のＩＥＥＥ１３９４シリアルインタフェースの信号処理回路では、１ソースパケットを分割あるいは複数のソースパケットを連結して送信する処理系システムが確立されていない。
【００２０】
たとえば、現在のシステムでは、図１３に示すように、送信データがある場合にはデータの送信を行うが、送信データがない場合には送信側はシリアルバスに対してアイドル(Idle)状態になる。
ただし、送信側がアイドル状態にあったとしても最大ピーク時の帯域を確保しなければならないため、他のノードの送信系が使用することができない。
【００２１】
本発明は、かかる事情に鑑みてなされたものであり、その目的は、シリアルインタフェースバスを効率良く使用することができる信号処理回路を提供することにある。
【００２２】
【課題を解決するための手段】
上記目的を達成するため、本発明は、自ノードとシリアルインタフェースバスを介して接続された他ノード間でパケットの送信を行う信号処理回路であって、入力されるトランスポートストリームパケットを入力レートに応じて、分割したものをアイソクロナスパケットとして送信するために、あらかじめストリームのレートに応じて設定されている分割数がセットされるコンフィギュレーションレジスタと、トランスポートストリームデータを受けて、アイソクロナス通信用にデータ長を調整し、かつタイムスタンプを設定したソースパケットヘッダを付加し、上記コンフィギュレーションレジスタに設定された分割数に基づき分割したストリームパケットを上記シリアルインタフェースバスに送出する送信系処理回路と、シリアルインタフェースバスを、分割されて伝送されてきたアイソクロナス通信用パケットを受けて、ヘッダの内容を解析し、データを復元し、受信パケットのソースパケットヘッダのタイムスタンプの時間データを読み出し、読み出したタイムスタンプデータとサイクルタイマによるサイクルタイムを比較し、サイクルタイムがタイムスタンプデータより大きい場合にはソースパケットヘッダを除くデータをトランスポートストリームデータとして出力し、エラービットがセットされていて、ＤＢＣ不連続マークがセットされているパケットを出力する場合には、エラービットをリセットし、エラーパケットを１つ出力する受信系処理回路とを有する。
【００２３】
また、本発明は、自ノードとシリアルインタフェースバスを介して接続された他ノード間でパケットの送信を行う信号処理回路であって、入力されるトランスポートストリームパケットを入力レートに応じて、合成したものをアイソクロナスパケットとして送信するために、あらかじめストリームのレートに応じて設定されている合成数がセットされるコンフィギュレーションレジスタと、トランスポートストリームデータを受けて、アイソクロナス通信用にデータ長を調整し、かつタイムスタンプを設定したソースパケットヘッダを付加し、上記コンフィギュレーションレジスタに設定された合成数に基づき合成したストリームパケットを上記シリアルインタフェースバスに送出する送信系処理回路と、シリアルインタフェースバスを、合成されて伝送されてきたアイソクロナス通信用パケットを受けて、ヘッダの内容を解析し、データを復元し、受信パケットのソースパケットヘッダのタイムスタンプの時間データを読み出し、読み出したタイムスタンプデータとサイクルタイマによるサイクルタイムを比較し、サイクルタイムがタイムスタンプデータより大きい場合にはソースパケットヘッダを除くデータをトランスポートストリームデータとして出力し、エラービットがセットされていて、ＤＢＣ不連続マークがセットされているパケットを出力する場合には、エラービットをリセットし、エラーパケットを１つ出力する受信系処理回路とを有する。
【００２４】
また、本発明は、自ノードとシリアルインタフェースバスを介して接続された他ノード間でパケットの送信を行う信号処理回路であって、入力されるトランスポートストリームパケットを入力レートに応じて、分割または合成したものをアイソクロナスパケットとして送信するために、あらかじめストリームのレートに応じて設定されている分割数または合成数がセットされるコンフィギュレーションレジスタと、トランスポートストリームデータを受けて、アイソクロナス通信用にデータ長を調整し、かつタイムスタンプを設定したソースパケットヘッダを付加し、上記コンフィギュレーションレジスタに設定された分割数または合成数に基づき分割または合成したストリームパケットを上記シリアルインタフェースバスに送出する送信系処理回路と、シリアルインタフェースバスを、合成されて伝送されてきたアイソクロナス通信用パケットを受けて、ヘッダの内容を解析し、データを復元し、受信パケットのソースパケットヘッダのタイムスタンプの時間データを読み出し、読み出したタイムスタンプデータとサイクルタイマによるサイクルタイムを比較し、サイクルタイムがタイムスタンプデータより大きい場合にはソースパケットヘッダを除くデータをトランスポートストリームデータとして出力し、エラービットがセットされていて、ＤＢＣ不連続マークがセットされているパケットを出力する場合には、エラービットをリセットし、エラーパケットを１つ出力する受信系処理回路とを有する。
【００２５】
また、本発明では、各送信パケットに、シリアルインタフェースバスにおけるジッタを抑制し、受信側のデータ出力時間を決定するタイムスタンプを付加する手段を有する。
【００２６】
本発明によれば、データ処理回路において、たとえばトランスポートストリームパケットを送信する場合には、入力されるストリームパケットが入力レートに応じてあらかじめ設定された分割数、または合成数に基づいて分割または合成されてシリアルインタフェースバスに送出される。
これらの分割数、または合成数は、ストリームのピークレートに応じて設定される。
また、シリアルインタフェースバスに送出される各パケットには、シリアルインタフェースバスにおけるジッタを抑制し、受信側のデータ出力時間を決定するタイムスタンプが付加される。
【００２７】
【発明の実施の形態】
第１実施形態
図１は、ＩＥＥＥ１３９４シリアルインタフェースに適用される本発明に係るＭＰＥＧ用信号処理回路の一実施形態を示すブロック構成図である。
【００２８】
この信号処理回路は、リンク・レイヤ回路１０、フィジカル・レイヤ回路２０、ホストコンピュータとしてのＣＰＵ３０により構成されている。また、４０はＭＰＥＧトランスポータを示している。
【００２９】
リンク・レイヤ回路１０は、ＣＰＵ３０の制御の下、アシンクロナス転送およびアイソクロナス転送の制御、並びにフィジカル・レイヤ回路２０の制御を行う。
具体的には、図１に示すように、リンクコア(Link Core))１０１、ホストインタフェース回路（Host I/F）１０２、アプリケーションインタフェース回路（AP I/F) １０３、送信用ＦＩＦＯ（AT-FIFO)１０４ａ、受信用ＦＩＦＯ（AR-FIFO)１０４ｂからなるアシンクロナス通信用ＦＩＦＯ１０４、セルフＩＤ用リゾルバ(Resolver)１０５、アイソクロナス通信用送信前処理回路(TXPRE) １０６、アイソクロナス通信用送信後処理回路(TXPRO) １０７、アイソクロナス通信用受信前処理回路(RXIPRE)１０８、アイソクロナス通信用受信後処理回路(RXIPRO)１０９、アイソクロナス通信用ＦＩＦＯ(I-FIFO)１１０、およびコンフィギュレーションレジスタ（Configuration Register、以下ＣＦＲという）１１１により構成されている。
【００３０】
図１の回路おいて、ホストインタフェース回路１０２、アシンクロナス通信の送信用ＦＩＦＯ１０４ａ、受信用ＦＩＦＯ１０４ｂおよびリンクコア１０１によりアシンクロナス通信系回路が構成される。
そして、アプリケーションインタフェース回路１０３、送信前処理回路１０６、送信後処理回路１０７、受信前処理回路１０８、受信後処理回路１０９、ＦＩＦＯ１１０およびリンクコア１０１によりアイソクロナス通信系回路が構成される。
【００３１】
リンクコア１０１は、アシンクロナス通信用パケットおよびアイソクロナス通信用パケットの送信回路、受信回路、これらパケットのＩＥＥＥ１３９４シリアルバスＢＳを直接ドライブするフィジカル・レイヤ回路２０とのインタフェース回路、１２５μｓ毎にリセットされるサイクルタイマ、サイクルモニタやＣＲＣ回路から構成されている。そして、たとえばサイクルタイマ等の時間データ等はＣＦＲ１１１を通してアイソクロナス通信系処理回路に供給される。
【００３２】
ホストインタフェース回路１０２は、主としてホストコンピュータとしてのＣＰＵ３０と送信用ＦＩＦＯ１０４ａ、受信用ＦＩＦＯ１０４ｂとのアシンクロナス通信用パケットの書き込み、読み出し等の調停、並びに、ＣＰＵ３０とＣＦＲ１１１との各種データの送受信の調停を行う。
たとえばＣＰＵ３０からは、アイソクロナス通信用パケットのＳＰＨ（ソースパケットヘッダ）に設定されるタイムスタンプ用遅延時間Txdelay がホストインタフェース回路１０２を通してＣＦＲ１１１にセットされる。
【００３３】
さらに、ＣＰＵ３０からは入力されるトランスポートストリームパケットを入力レートに応じて、分割または合成したものをアイソクロナスパケットとして送信するために、あらかじめストリームのピークレートに応じて設定されている分割数、または合成数がホストインタフェース回路１０２を通してＣＦＲ１１１にセットされる。
【００３４】
具体的には、ＣＦＲ１１１のＮＯＤＢレジスタに分割数が設定され、ＮＯＳＰレジスタに合成数が設定される。
図２は、ＤＶＢ仕様時の送信可能なトランスポートストリームデータのデータレートとＮＯＤＢレジスタに設定される分割数およびＮＯＳＰレジスタに設定される合成数、並びに送信データ数（ブロックまたはパケット数）との対応関係を示す図である。
また、図３は、ＤＳＳ仕様時の送信可能なトランスポートストリームデータのデータレートとＮＯＤＢレジスタに設定される分割数およびＮＯＳＰレジスタに設定される合成数、並びに送信データ数（ブロックまたはパケット数）との対応関係を示す図である。
【００３５】
ＣＰＵ３０からは、仕様に応じて、たとえば図２または図３に示すように入力されるトランスポートストリームパケットの入力レートが低レート、たとえば１．５Ｍｂｐｓ〜６．０Ｍｂｐｓの場合には、ＮＯＤＢレジスタにレートに応じた分割数が設定され、高レート、たとえば１６．６Ｍｂｐｓ以上の場合にはＮＯＳＰレジスタにレートに応じた合成数が設定される。
【００３６】
なお、分割できる最低の大きさは１データブロックである。
ＤＶＢ仕様時、１データブロックは２４バイトで構成されることから、結果的に１パケットを１／８に分割して送信することができる。
また、合成できる最高の大きさはたとえば１５パケットである。ただし、そのサイクルで送信可能なパケットが合成数より少ないときは、ＦＩＦＯ１１０に格納された全てのパケットを合成して送信することが可能である。
【００３７】
図４に、低レートの場合に、トランスポートストリームデータを分割なしで送信した場合と、２分割して１／２パケットで送信した場合のバスにおける転送形態を示し、図５に、高レートの場合に、トランスポートストリームデータを分割なしで送信した場合と、合成して２パケットで送信した場合のバスにおける転送形態を示す。
図に示すように、分割または合成して転送する機能を有していることから、バスの帯域が有効に使用される。
【００３８】
送信用ＦＩＦＯ１０４ａには、ＩＥＥＥ１３９４シリアルバスＢＳに伝送させるアシンクロナス通信用パケットが格納され、受信用ＦＩＦＯ１０４ｂにはＩＥＥＥ１３９４シリアルバスＢＳを伝送されてきたアシンクロナス通信用パケットが格納される。
【００３９】
アプリケーションインタフェース回路１０３は、ＭＰＥＧトランスポータ４０とアイソクロナス通信用送信前処理回路１０６およびアイソクロナス通信用受信後処理回路１０９とのクロック信号や制御信号等を含むＭＰＥＧトランスポートストリームデータの送受信の調停を行う。
【００４０】
リゾルバ１０５は、ＩＥＥＥ１３９４シリアルバスＢＳを伝送されてきたセルフＩＤパケットを解析し、ＣＦＲ１１１に格納する。
【００４１】
送信前処理回路１０６、アプリケーションインタフェース回路１０３を介してＭＰＥＧトランスポータ４０によるＭＰＥＧトランスポートストリームデータを受けて、ＩＥＥＥ１３９４規格のアイソクロナス通信用としてクワドレット（４バイト）単位にデータ長を調整し、かつ４バイトのソースパケットヘッダ（ＳＰＨ）を付加し、ＦＩＦＯ１１０に格納する。
【００４２】
ソースパケットヘッダを付加するときに、アイソクロナス通信で送信するときにジッタを抑制するために利用され、受信側のデータ出力時間を決定するタイムスタンプを設定するが、この設定は以下のように行われる。
まず、ＭＰＥＧトランスポータ４０からパケットの最終データを受け取ったタイミングで内部のサイクルレジスタの値をラッチする。
次に、ＣＰＵ３０からホストインタフェース回路１０２を介してＣＦＲ１１１にセットされた遅延時間Txdelay を上記サイクルレジスタの値に加算する。
そして、加算した値をタイムスタンプとして、受け取ったパケットのソースパケットヘッダに挿入（設定）する。
【００４３】
図６は、ソースパケットヘッダにおけるタイムスタンプの具体的な構成を説明するための図である。
図６に示すように、受信側のデータ出力時間を決定するためのタイムスタンプは、２５ビットで現時刻を表す。
すなわち、タイムスタンプは２５ビットで構成され、下位１２ビットがサイクルオフセットＣＯ(cycle-offset)領域、上位１３ビットがサイクルカウントＣＣ(cycle-count) 領域として割り当てられている。
サイクルオフセットは０〜３０７１（１２ｂ  １０１１１１１１１１１１）の１２５μｓをカウントし（クロックＣＬＫ＝２４．５７６ＭＨｚ）、サイクルカウントは０〜７９９９（１３ｂ  １１１１１００１１１１１１）の１秒をカウントするものである。
したがって、原則として、タイムスタンプの下位１２ビットは３０７２以上を示すことはなく、上位１３ビットは８０００以上を示すことはない。
【００４４】
送信後処理回路１０７は、ＦＩＦＯ１１０に格納されたソースパケットヘッダを含むデータに対して図１１に示すように、１３９４ヘッダ、ＣＩＰヘッダ１，２を付加してリンクコア１０１の送信回路に出力する。
たとえば図２または図３に示すように、ＤＶＢまたはＤＳＳ仕様のいずれかに応じて、ＣＦＲ１１１のＮＯＤＢレジスタに設定された分割数、あるいは、ＮＯＳＰレジスタに設定された合成数に基づき、ＦＩＦＯ１１０に格納さているデータを分割または合成してリンクコア１０１に出力する。
なお、送信可能なパケットが合成数より少ないときは、ＦＩＦＯ１１０に格納された全てのパケットを合成して送信する。
【００４５】
送信フォーマットは、具体的には、たとえば図１１に示すように、データ長を表すdata-length 、このパケット転送されるチャネルの番号（０〜６３のいずれか）を示すchannel 、処理のコードを表すtcode 、および各アプリケーションで規定される同期コードｓｙにより構成した１３９４ヘッダ、送信ノード番号のためのＳＩＤ(Source node ID)領域、データブロックの長さのためのＤＢＳ(Data Block Size) 領域、パケット化におけるデータの分割数のためのＦＮ(Fraction Number) 領域、パディングデータのクワドレット数のためのＱＰＣ(Quadlet Padding Count) 領域、ソースパケットヘッダの有無を表すフラグのためのＳＰＨ領域、アイソクロナスパケットの数を検出するカウンタのためのＤＢＣ（Data Block Continuty Counter）領域により構成したＣＩＰヘッダ１、並びに転送されるデータの種類を表す信号フォーマットのためのＦＭＴ領域、および信号フォーマットに対応して利用されるＦＤＦ(Format Dependent Field)領域により構成したＣＩＰヘッダ２を付加する。
【００４６】
なお、以上のヘッダの各内容の中で、データブロックの長さのためのデータブロックサイズＤＢＳと、パケット化におけるデータの分割数のためのフラクションナンバーと、１つのソースパケットサイズＳＰＳとは、次の関係式を満足する。
【数１】
ＳＰＳ＝ＤＢＳ×ＦＮ                          …（１）
【００４７】
また、アイソクロナスパケットの数を検出するカウンタのためのＤＢＣは、データブロックを１つ送る毎に１カウントアップして送信される。
【００４８】
受信前処理回路１０８は、リンクコア１０１を介してＩＥＥＥ１３９４シリアルバスＢＳを、たとえば分割されて伝送されてきたアイソクロナス通信用パケットを受けて、受信パケットの１３９４ヘッダ、ＣＩＰヘッダ１，２等の内容を解析し、データを復元してソースパケットヘッダとデータをＦＩＦＯ１１０に格納する。
そして、ヘッダの解析処理を行って、たとえば分割パケットのＣＩＰヘッダ１の第１クワドレットに設定されているＤＢＣの値とＦＮの値とＤＢＳとの値を用いて、先頭パケットの判断、パケット抜けが生じ途中パケットがこない場合にそのパケット抜けを判断し、正常パケットのＦＩＦＯ１１０への格納処理を行う。
【００４９】
受信後処理回路１０９は、ＦＩＦＯ１１０に格納されたソースパケットヘッダのタイムスタンプの時間データを読み出し、読み出したタイムスタンプデータ（ＴＳ）とリンクコア１０１内にあるサイクルタイマによるサイクルタイム（ＣＴ）を比較し、サイクルタイムＣＴがタイムスタンプデータＴＳより大きい場合には、ＦＩＦＯ１１０に格納されているソースパケットヘッダを除くデータをアプリケーションインタフェース回路１０３を介し、ＭＰＥＧ用トランスポートストリームデータとしてＭＰＥＧトランスポータ４０に出力する。
そして、たとえばＦＩＦＯ１１０の読み出し時に、エラービットＥＲＭが「１」にセットされている場合には、すなわちＤＢＣ不連続マークがセットされているパケットを出力する場合には、まずエラービットをリセットし、たとえばダミーのエラーパケットを１つ出力する。なお、このエラーパケットはＤＢＣの不連続を示すために、ＦＩＦＯにないパケットを挿入するものである。
なお、次のデータ読み出しは、もはやＤＢＣ不連続マークはセットされていないことから、ＦＩＦＯ１１０から通常通り行う。
【００５０】
次に、アイソクロナス通信用パケットをＩＥＥＥ１３９４シリアルバスＢＳに送信する場合の動作を説明する。
【００５１】
送信時には、ＣＰＵ３０によりタイムスタンプとして加算すべき遅延時間Txdelay がホストインタフェース回路１０２を通してＣＦＲ１１１にセットされる。また、ＣＰＵ３０からは入力されるトランスポートストリームパケットを入力レートに応じて、分割または合成したものをアイソクロナスパケットとして送信するために、あらかじめストリームのピークレートに応じて設定されている分割数、または合成数がホストインタフェース１０２を通してＣＦＲ１１１にセットされる。
【００５２】
送信前処理回路１０６においては、受信側のデータ出力時間を決定するタイムスタンプが、ＭＰＥＧトランスポータ４０からパケットの最終データを受け取ったタイミングで内部のサイクルレジスタの値に、ＣＰＵ３０からホストインタフェース１０２を介してＣＦＲ１１１にセットされた遅延時間Txdelay が加算されて、加算した値がタイムスタンプとして、受け取ったパケットのソースパケットヘッダに挿入される。
【００５３】
そして、送信後処理回路１０７において、ＣＦＲ１１１にセットされているＤＶＢまたはＤＳＳ仕様のいずれかに応じて、ＣＦＲ１１１のＮＯＤＢレジスタに設定された分割数、あるいは、ＮＯＳＰレジスタに設定された合成数に基づき、ＦＩＦＯ１１０に格納さているデータが分割または合成されて、図１１に示すように、１３９４ヘッダ、ＣＩＰヘッダ１，２が付加されてリンクコア１０１の送信回路に出力される。
これにより、分割あるいは合成され、また１ソースパケットで、リンクコア回路１０１、さらにはフィジカル・レイヤ回路２０を通してシリアルインタフェースバスＢＳに転送される。
【００５４】
図７は、ＤＶＢ仕様時に４分割して１／４パケットで送信した場合のバスにおける転送形態例を示す図である。
図７に示すように、データを１／４分割して取り扱っていることから、１回の送信における送信量が少なくなり、通信に必要な帯域が抑えられている。
【００５５】
また、分割する場合だけでなく、合成したデータを送信する場合には、送信するデータの平均レートが高いことからシリアルバスの帯域を使用してデータ転送が行われる。
【００５６】
以上説明したように、本実施形態によれば、トランスポートストリームパケットを送信する場合には、入力されるストリームパケットが入力レートに応じてあらかじめ設定された分割数、または合成数に基づいて分割または合成するとともにシリアルインタフェースバスにおけるジッタを抑制し、受信側のデータ出力時間を決定するタイムスタンプを付加してシリアルインタフェースバスＢＳに送出する送信処理回路１０６，１０７、リンクコア１０１を設けたので、低レートの場合には１回の送信における送信量が少なくなり、通信に必要な帯域を抑えることができ、シリアルバスＢＳの帯域を効率良く使用することができる。
また、分割する場合だけでなく、合成したデータを送信する場合には、送信するデータの平均レートが高いことからシリアルバスの帯域を使用してデータ転送することができる。
【００５７】
【発明の効果】
以上説明したように、本発明によれば、低レート、高レートにかかわらず、シリアルバスの帯域を効率良く使用することができる。
【図面の簡単な説明】
【図１】ＩＥＥＥ１３９４シリアルインタフェースに適用される本発明に係るＭＰＥＧ用信号処理回路の一実施形態を示すブロック構成図である。
【図２】ＤＶＢ仕様時の送信可能なトランスポートストリームデータのデータレートとＮＯＤＢレジスタに設定される分割数およびＮＯＳＰレジスタに設定される合成数、並びに送信データ数（ブロックまたはパケット数）との対応関係を示す図である。
【図３】ＤＳＳ仕様時の送信可能なトランスポートストリームデータのデータレートとＮＯＤＢレジスタに設定される分割数およびＮＯＳＰレジスタに設定される合成数、並びに送信データ数（ブロックまたはパケット数）との対応関係を示す図である。
【図４】低レートの場合に、トランスポートストリームデータを分割なしで送信した場合と、２分割して１／２パケットで送信した場合のバスにおける転送形態例を示す図である。
【図５】高レートの場合に、トランスポートストリームデータを分割なしで送信した場合と、合成して２パケットで送信した場合のバスにおける転送形態例を示す図である。
【図６】タイムスタンプの具体的な構成を説明するための図である。
【図７】低レートの場合に、４分割して１／４パケットで送信した場合のバスにおける転送形態例を示す図である。
【図８】アイソクロナス通信における１ソースパケットのバイトサイズを示す図であって、（Ａ）はＤＶＢ仕様時、（Ｂ）はＤＳＳ仕様時のパケットサイズを示す図である。
【図９】ＩＥＥＥ１３９４規格のアイソクロナス通信でデータを送信させるときの元のデータと、実際に送信されるパケットとの対応関係の一例を示す図である。
【図１０】ソースパケットヘッダのフォーマットを示す図である。
【図１１】アイソクロナス通信用パケットの基本構成例を示す図である。
【図１２】ＩＥＥＥ１３９４シリアルインタフェースにおけるアイソクロナス通信系回路の基本構成を示すブロック図である。
【図１３】低レートの場合に、トランスポートストリームデータを分割なしで送信した場合のバスにおける転送形態を示す図である。
【符号の説明】
１０…リンク・レイヤ回路、１０１…リンクコア(Link Core))、１０２…ホストインタフェース回路（Host I/F）、１０３…アプリケーションインタフェース回路（AP I/F) 、１０４…アシンクロナス通信用ＦＩＦＯ、送信用ＦＩＦＯ（AT-FIFO)、１０４ｂ…受信用ＦＩＦＯ（AR-FIFO)、１０５…セルフＩＤ用リゾルバ(Resolver)、１０６…アイソクロナス通信用送信前処理回路(TXPRE) 、１０７…アイソクロナス通信用送信後処理回路(TXPRO) 、１０８…アイソクロナス通信用受信前処理回路(RXIPRE)、１０９…アイソクロナス通信用受信後処理回路(RXIPRO)、１１０…アイソクロナス通信用ＦＩＦＯ(I-FIFO)、１１１…コンフィギュレーションレジスタ（ＣＦＲ）、２０…フィジカル・レイヤ回路、３０…ＣＰＵ、４０…ＭＰＥＧトランスポータ。
【図１】
0003837857.tif 000002
【図２】
0003837857.tif 000003
【図３】
0003837857.tif 000004
【図４】
0003837857.tif 000005
【図５】
0003837857.tif 000006
【図６】
0003837857.tif 000007
【図７】
0003837857.tif 000008
【図８】
0003837857.tif 000009
【図９】
0003837857.tif 000010
【図１０】
0003837857.tif 000011
【図１１】
0003837857.tif 000012
【図１２】
0003837857.tif 000013
【図１３】
0003837857.tif 000014