(57)【特許請求の範囲】
【請求項１】
ヘッダ情報を格納するための格納手段と、
複数メディアの符号化データを保持するための第１の保持手段と、
パケット化されたデータを保持するための第２の保持手段と、
前記格納手段に格納されたヘッダ情報および前記第１の保持手段に保持された符号化データの転送を制御して、前記第２の保持手段に前記パケット化されたデータとして書き込むための転送制御手段と、
前記第２の保持手段に保持されるデータの任意の位置にフラグを付加するためのフラグ付加手段とを含み、
前記第２の保持手段は、パケット化されたデータに同期してフラグ情報を外部へ出力する、データ多重装置。
【請求項２】
前記フラグ付加手段は、前記第２の保持手段に保持されるデータのパケット境界にフラグを付加する、請求項１記載のデータ多重装置。
【請求項３】
前記データ多重装置はさらに、前記転送制御手段を制御する制御情報をプログラミングするための制御手段を含む、請求項１または２記載のデータ多重装置。
【請求項４】
前記転送制御手段は、前記格納手段に格納されたヘッダ情報の転送をアドレスで指定する第１のレジスタと、
前記第１の保持手段に格納された符号化データの転送をアドレスで指定する第２のレジスタとを含み、
前記制御手段は、前記第１のレジスタおよび第２のレジスタをプログラミングして、前記転送制御手段を制御する、請求項３記載のデータ多重装置。
【請求項５】
前記制御手段は、前記第２の保持手段の空き容量を参照して前記転送制御手段を制御する、請求項４記載のデータ多重装置。
【請求項６】
前記データ多重装置はさらに、前記複数メディアの符号化データを時分割に前記第１の保持手段へ入力するための入力制御手段を含む、請求項１〜５のいずれかに記載のデータ多重装置。
【請求項７】
前記入力制御手段は、設定された単位時間あたりの最大転送量を超えない範囲で、前記複数メディアの符号化データを時分割に前記第１の保持手段へ入力する、請求項６記載のデータ多重装置。
【請求項８】
前記入力制御手段は、前記第１の保持手段がオーバフローとならないように、前記複数メディアの符号化データを前記第１の保持手段へ入力する、請求項７記載のデータ多重装置。
【請求項９】
前記データ多重装置はさらに、外部からの転送要求に応じて、予め定められた量のデータを前記第２の保持手段から外部へ出力するための出力制御手段を含む、請求項１〜８のいずれかに記載のデータ多重装置。
【請求項１０】
前記データ多重装置はさらに、固定データを出力するための固定データ出力手段を含み、
前記出力制御手段は、前記第２の保持手段のデータ充填量を参照し、前記予め定められた量のデータが前記第２の保持手段になければ、前記固定データ出力手段に固定データを出力させる、請求項９記載のデータ多重装置。
【請求項１１】
前記出力制御手段は、前記第２の保持手段から出力されるパケット化されたデータの任意の位置に別途用意されたデータを多重する、請求項９または１０記載のデータ多重装置。
【請求項１２】
前記データ多重装置はさらに、時刻をカウントするためのカウント手段を含み、
前記出力制御手段は、前記第２の保持手段から出力されるパケット化されたデータに前記カウント手段によってカウントされた時刻を多重する、請求項１１記載のデータ多重装置。
【請求項１３】
前記データ多重装置はさらに、複数メディアの符号化データの制御情報を分離するための分離手段を含む、請求項３〜５のいずれかに記載のデータ多重装置。
【請求項１４】
前記制御手段は、前記分離手段に分離された制御情報に基づいて、前記転送制御手段を制御する、請求項１３記載のデータ多重装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ビデオ、オーディオおよびデータの符号化データを多重する技術に関し、特に、ビデオ、オーディオおよびデータの符号化データから生成されたＴＳ（トランスポート・ストリーム）を多重するデータ多重装置に関する。
【０００２】
【従来の技術】
近年、様々な分野においてマルチメディア技術が盛んに研究されており、その中でも各メディアの符号化データを多重するデータ多重装置の開発が特に重要となる。以下、データ多重装置の一例として、ＭＰＥＧ（Moving  Picture  Experts  Group）２のＴＳ生成器（以下、ＭＰＥＧ２ＴＳ生成器と呼ぶ。）について説明する。このＭＰＥＧ２ＴＳ生成器には、符号化回路によって生成されたＥＳ（エレメンタリ・ストリーム）と呼ばれる符号化データが入力される。なお、ＭＰＥＧ２ＴＳ生成器は、ビデオ、オーディオおよびデータのＥＳを時分割で多重し、１つのデータストリームを生成するものである。
【０００３】
図１３は、従来のＭＰＥＧ２ＴＳ生成器の概略構成を示すブロック図である。このＭＰＥＧ２ＴＳ生成器は、ＭＰＥＧ２ＴＳ生成器全体の制御を行なうコントローラ１０１と、図示しない符号化回路によって生成されたビデオＥＳをバッファリングするビデオＥＳバッファ１０２と、符号化回路によって生成されたオーディオＥＳをバッファリングするオーディオＥＳバッファ１０３と、符号化回路によって生成されたデータＥＳをバッファリングするデータＥＳバッファ１０４と、ビデオＥＳ、オーディオＥＳおよびデータＥＳがそれぞれパケット化されて書き込まれる出力バッファ１０５と、外部からの出力要求に応じて出力バッファ１０５にバッファリングされたＴＳパケットの出力を制御する出力制御部１０６とを含む。
【０００４】
ビデオの場合にはピクチャ単位で、オーディオの場合にはフレーム単位で、ヘッダ情報が付加された形式のＴＳを生成する必要がある。そのため、ＴＳ生成前に、図１４に示すように、ビデオＥＳの場合にはピクチャ単位でヘッダ情報が付加されたＰＥＳ（パケッタイズドＥＳ）形式に、オーディオＥＳの場合にはフレーム単位でヘッダ情報が付加されたＰＥＳ形式に加工する必要がある。
【０００５】
ＴＳは、固定長のパケット群によって構成され、１つのパケットには１つのメディアのＥＳが格納される。図１５に示すように、ＴＳは、ヘッダ情報とＰＥＳとによって構成される。ＴＳの１パケット長は１８８バイト固定であり、通常ＰＥＳのデータ長の方が１パケット長よりも長いので、１つのＰＥＳは複数のＴＳパケットに分割される。そのため、図１５（ａ）に示すように、ＰＥＳの先頭を含むＴＳパケットにはＴＳヘッダ情報、ＰＥＳヘッダ情報およびＥＳが格納される。また、図１５（ｂ）に示すように、その他のＴＳパケットにはＴＳヘッダ情報およびＥＳが格納される。
【０００６】
図１３に示すＭＰＥＧ２ＴＳ生成器において、コントローラ１０１は、ビデオＥＳバッファ１０２、オーディオＥＳバッファ１０３およびデータＥＳバッファ１０４からそれぞれのＥＳを読み出し、ヘッダ情報の生成およびＴＳパケット化を行って順次出力バッファ１０５に書き込む。また、出力制御部１０６は、外部からの出力要求に応じてＴＳを出力バッファ１０５から読み出して出力する。
【０００７】
コントローラ１０１によって生成されたＴＳのレートと、出力制御部１０６から出力されるＴＳのレートとの間に差がある場合には、出力制御部１０６において出力データの過不足が生じる。通常、符号化レートの総和が出力レートの総和を超えないように構成されているが、逆に符号化レートの総和が出力レートの総和を下回ることは起こり得る。この場合には、コントローラ１０１が“ヌルパケット”と呼ばれるダミーパケットを意図的に挿入することにより、符号化レートと出力レートとの合わせ込みを行なう。なお、この合わせ込みは、コントローラ１０１が“ヌルパケット”を出力バッファ１０５に書き込むことによって行なわれる。
【０００８】
【発明が解決しようとする課題】
しかし、従来のＭＰＥＧ２ＴＳ生成器において、ＰＥＳ生成のためにビデオＥＳのピクチャ境界およびオーディオＥＳのフレーム境界を検出する必要があるため、コントローラ１０１は各ＥＳを解析してその境界情報を抽出していた。そのため、本来であれば不必要なＥＳ解析手段が必要であるという問題点があった。
【０００９】
また、コントローラ１０１は、ＰＥＳのヘッダ情報を生成するのに、符号化時における制御情報も必要となるため、ＥＳとは別に符号化回路から制御情報を入力する必要があった。さらには、コントローラ１０１は、ＴＳの生成レートとＴＳの出力レートとを合わせ込むために、ＴＳの出力状態をモニタしてＴＳが不足しないように“ヌルパケット”を適宜生成して挿入する必要があった。
【００１０】
本発明は、上記問題点を解決するためになされたものであり、第１の目的は、ＴＳ多重時における制御を簡単に行えるデータ多重装置を提供することである。
【００１１】
第２の目的は、外部からの出力要求に応じて、多重されたＴＳパケットを一定レートで出力することが可能なデータ多重装置を提供することである。
【００１２】
第３の目的は、多重されたデータのデータ境界を外部に通知することが可能なデータ多重装置を提供することである。
【００１３】
【課題を解決するための手段】
請求項１に記載のデータ多重装置は、ヘッダ情報を格納するための格納手段と、複数メディアの符号化データを保持するための第１の保持手段と、パケット化されたデータを保持するための第２の保持手段と、格納手段に格納されたヘッダ情報および第１の保持手段に保持された符号化データの転送を制御して、第２の保持手段にパケット化されたデータとして書き込むための転送制御手段と、第２の保持手段に保持されるデータの任意の位置にフラグを付加するためのフラグ付加手段とを含み、第２の保持手段は、パケット化されたデータに同期してフラグ情報を外部へ出力す。
【００１４】
転送制御手段は、格納手段に格納されたヘッダ情報および第１の保持手段に保持された符号化データの転送を制御するだけで、パケット化されたデータを生成することができ、メディア多重が容易に行えるようになる。
また、第２の保持手段は、パケット化されたデータに同期してフラグ情報を外部へ出力するので、外部においてパケット化されたデータの任意の位置の識別が可能となる。
請求項２に記載のデータ多重装置は、請求項１記載のデータ多重装置であって、フラグ付加手段は、第２の保持手段に保持されるデータのパケット境界にフラグを付加する。
フラグ付加手段は、第２の保持手段に保持されるデータのパケット境界にフラグを付加するので、外部においてデータ境界を認識することが可能となり、複数のＴＳを再度多重する場合に処理が容易となる。
【００１５】
請求項３に記載のデータ多重装置は、請求項１または２記載のデータ多重装置であって、データ多重装置はさらに転送制御手段を制御する制御情報をプログラミングするための制御手段を含む。
【００１６】
制御手段は、転送制御手段を制御する制御情報をプログラミングするので、メディア多重の多重順序の制御やヘッダ情報の生成等を任意に行なうことができる。
【００１７】
請求項４に記載のデータ多重装置は、請求項３記載のデータ多重装置であって、転送制御手段は、格納手段に格納されたヘッダ情報の転送をアドレスで指定する第１のレジスタと、第１の保持手段に格納された符号化データの転送をアドレスで指定する第２のレジスタとを含み、制御手段は、第１のレジスタおよび第２のレジスタをプログラミングして、転送制御手段を制御する。
【００１８】
制御手段は、第１のレジスタおよび第２のレジスタをプログラミングして、転送制御手段を制御するので、メディア多重の多重順序の制御やヘッダ情報の生成等を容易に行えるようになる。また、第１の保持手段に保持された符号化データを部分的に破棄することも可能になる。
【００１９】
請求項５に記載のデータ多重装置は、請求項４記載のデータ多重装置であって、制御手段は、第２の保持手段の空き容量を参照して転送制御手段を制御する。
【００２０】
制御手段は、第２の保持手段の空き容量を参照して転送制御手段を制御するので、第２の保持手段においてオーバフローを起こさずにパケット化を行なうことが可能となる。
【００２１】
請求項６に記載のデータ多重装置は、請求項１〜５のいずれかに記載のデータ多重装置であって、データ多重装置はさらに複数メディアの符号化データを時分割に第１の保持手段へ入力するための入力制御手段を含む。
【００２２】
入力制御手段は、複数メディアの符号化データを時分割に第１の保持手段へ入力するので、転送制御手段による複数メディアの符号化データの転送の制御が容易に行えるようになる。
【００２３】
請求項７に記載のデータ多重装置は、請求項６記載のデータ多重装置であって、入力制御手段は、設定された単位時間あたりの最大転送量を超えない範囲で、複数メディアの符号化データを時分割に第１の保持手段へ入力する。
【００２４】
入力制御手段は、設定された単位時間あたりの最大転送量を超えない範囲で、複数メディアの符号化データを時分割に第１の保持手段へ入力するので、第１の保持手段に保持された複数メディアの符号化データの充填量を参照して、符号化データを第２の保持手段に転送するだけで符号化データを適切な配分で多重することが可能となる。
【００２５】
請求項８に記載のデータ多重装置は、請求項７記載のデータ多重装置であって、入力制御手段は、第１の保持手段がオーバフローとならないように、複数メディアの符号化データを第１の保持手段へ入力する。
【００２６】
入力手段は、第１の保持手段がオーバフローとならないように、複数メディアの符号化データを第１の保持手段へ入力するので、符号化データの欠落等を防止することが可能となる。
【００２７】
請求項９に記載のデータ多重装置は、請求項１〜８のいずれかに記載のデータ多重装置であって、データ多重装置はさらに、外部からの転送要求に応じて、予め定められた量のデータを第２の保持手段から外部へ出力するための出力制御手段を含む。
【００２８】
出力制御手段は、外部からの転送要求に応じて、予め定められた量のデータを第２の保持手段から外部へ出力するので、外部から要求されたレートでメディア多重されたデータを出力することが可能となる。
【００２９】
請求項１０に記載のデータ多重装置は、請求項９記載のデータ多重装置であって、データ多重装置はさらに、固定データを出力するための固定データ出力手段を含み、出力制御手段は、第２の保持手段のデータ充填量を参照し、予め定められた量のデータが第２の保持手段になければ、固定データ出力手段に固定データを出力させる。
【００３０】
出力制御手段は、第２の保持手段のデータ充填量を参照し、予め定められた量のデータが第２の保持手段になければ、固定データ出力手段に固定データを出力させるので、符号化データの転送量が少ない場合であっても、外部から要求されたレートで多重されたデータを出力することが可能となる。
【００３１】
請求項１１に記載のデータ多重装置は、請求項９または１０記載のデータ多重装置であって、出力制御手段は、第２の保持手段から出力されるパケット化されたデータの任意の位置に別途用意されたデータを多重する。
【００３２】
出力制御手段は、第２の保持手段から出力されるパケット化されたデータの任意の位置に別途用意されたデータを多重するので、ヘッダ情報を付け替えたり、符号化データを変更したりすることが可能となる。
【００３３】
請求項１２に記載のデータ多重装置は、請求項１１記載のデータ多重装置であって、データ多重装置はさらに、時刻をカウントするためのカウント手段を含み、出力制御手段は、第２の保持手段から出力されるパケット化されたデータにカウント手段によってカウントされた時刻を多重する。
【００３４】
出力制御手段は、第２の保持手段から出力されるパケット化されたデータにカウント手段によってカウントされた時刻を多重するので、多重時における正確な時刻をヘッダ情報に付加することが可能となる。
【００３９】
請求項１３に記載のデータ多重装置は、請求項３〜５のいずれかに記載のデータ多重装置であって、データ多重装置はさらに、複数メディアの符号化データの制御情報を分離するための分離手段を含む。
【００４０】
分離手段は、複数メディアの符号化データの制御情報を分離するので、複数メディアの多重がさらに容易となる。
【００４１】
請求項１４に記載のデータ多重装置は、請求項１３記載のデータ多重装置であって、制御手段は、分離手段に分離された制御情報に基づいて、転送制御手段を制御する。
【００４２】
制御手段は、分離手段に分離された制御情報に基づいて、転送制御手段を制御するので、多重順序の制御やヘッダ情報の生成等を行なう際に、制御情報を参照して処理を行なうことが可能となる。
【００４３】
【発明の実施の形態】
（実施の形態１）
図１は、本発明の実施の形態１におけるデータ多重装置の概略構成を示すブロック図である。このデータ多重装置は、データ多重装置全体の制御を行なうコントローラ１と、ビデオＥＳをバッファリングするビデオＥＳバッファ２と、オーディオＥＳをバッファリングするオーディオＥＳバッファ３と、データＥＳをバッファリングするデータＥＳバッファ４と、ヘッダ情報を格納するヘッダ情報メモリ５と、ヘッダ情報および各ＥＳデータの転送を制御する転送制御部６と、ヘッダ情報および各ＥＳデータをバッファリングする出力バッファ７と、図示しない符号化回路から出力されたビデオＥＳ、オーディオＥＳおよびデータＥＳを時分割に転送するメモリ制御部８と、ヌルパケットを生成するヌルパケット生成部９と、外部からの出力要求に応じてパケットの出力制御を行なう出力制御部１０と、出力制御部１０による制御によってＴＳパケットおよびヌルパケットを選択的に出力するマルチプレクサ（ＭＵＸ）１１と、外部（内部）メモリ１２とを含む。
【００４４】
メモリ制御部８は、図示しない符号化回路から出力されたビデオＥＳ、オーディオＥＳおよびデータＥＳを入力し、ビデオＥＳバッファ２、オーディオＥＳバッファ３またはデータＥＳバッファ４へ時分割に出力する。メモリ制御部８は、内部にそれぞれのＥＳの単位時間あたりの最大転送量を保持するレジスタを有しており、そのレジスタに指定された最大転送量を超えない範囲で、かつビデオＥＳバッファ２、オーディオＥＳバッファ３およびデータＥＳバッファ４の空き容量を参照してオーバフローを起こさない範囲でデータ転送を行なう。なお、このデータ転送において、適宜外部（内部）メモリ１２が使用される。
【００４５】
転送制御部６は、内部のレジスタ設定に従って、ヘッダ情報メモリ５からヘッダ情報を、ビデオＥＳバッファ２からビデオＥＳを、オーディオＥＳバッファ３からオーディオＥＳを、データＥＳバッファ４からデータＥＳを読み出して出力バッファ７に書き込む。なお、ヘッダ情報メモリ５には、多重時に使用されるヘッダ情報が予め書き込まれているか、または多重時に書き込まれるものとする。
【００４６】
図２は、転送制御部６内部に設けられた各レジスタの内容を説明するための図である。転送起動レジスタは、ヘッダ情報メモリ５、ビデオＥＳバッファ２、オーディオＥＳバッファ３またはデータＥＳバッファ４から出力バッファ７へのデータ転送の起動を制御するためのレジスタである。ビット２〜０には、それぞれデータ用転送、オーディオ用転送およびビデオ用転送が割り付けられており、ビットフィールドに“１”がセットされると、そのビットに対応するメディアのヘッダ情報およびＥＳデータの転送を開始する。また、出力バッファ７へのデータ転送が終了した時点で、当該ビットフィールドが“０”にリセットされる。なお、対象となるビットフィールドに“１”が書き込まれた場合にはセットされ、“０”が書き込まれた場合には既に設定されている値を保持する。
【００４７】
データ用多重種別レジスタは、多重する要素を設定するためのレジスタである。ビット２〜０には、それぞれヘッダメモリ０、ヘッダメモリ１およびデータＥＳバッファ４が割り付けられており、ビットフィールドに“１”がセットされると、そのビットに対応するヘッダ情報またはＥＳデータの多重が行なわれる。なお、ヘッダメモリ０およびヘッダメモリ１は、それぞれＴＳヘッダおよびＰＥＲヘッダに対応している。
【００４８】
データ用ヘッダメモリ０転送レジスタは、データＥＳ用のヘッダ情報を読み出すためのレジスタである。ビット２１〜１１には、読み出し開始アドレスが割り付けられており、ビット１０〜０には、読み出し終了アドレスが割り付けられている。
【００４９】
データ用ヘッダメモリ１転送レジスタは、データＥＳ用のヘッダ情報を読み出すためのレジスタである。ビット２１〜１１には、読み出し開始アドレスが割り付けられており、ビット１０〜０には、読み出し終了アドレスが割り付けられている。
【００５０】
データＥＳバッファ転送レジスタは、データＥＳを読み出すためのレジスタである。ビット２１〜１１には、読み出し開始アドレスが割り付けられており、ビット１０〜０には、読み出し終了アドレスが割り付けられている。
【００５１】
なお、オーディオ用多重種別レジスタ、オーディオ用ヘッダメモリ０転送レジスタ、オーディオ用ヘッダメモリ１転送レジスタおよびオーディオＥＳバッファ転送レジスタは、それぞれデータ用多重種別レジスタ、データ用ヘッダメモリ０転送レジスタ、データ用ヘッダメモリ１転送レジスタおよびデータＥＳバッファ転送レジスタの内容と同じである。また、ビデオ用多重種別レジスタ、ビデオ用ヘッダメモリ０転送レジスタ、ビデオ用ヘッダメモリ１転送レジスタおよびビデオＥＳバッファ転送レジスタは、それぞれデータ用多重種別レジスタ、データ用ヘッダメモリ０転送レジスタ、データ用ヘッダメモリ１転送レジスタおよびデータＥＳバッファ転送レジスタの内容と同じである。
【００５２】
上述した転送制御部６内部のレジスタの値は、コントローラ１によって適宜設定される。転送起動レジスタによって、ヘッダ情報またはＥＳデータの転送が起動されると、転送制御部６は、ＥＳバッファ２〜４またはヘッダ情報メモリ５からデータを読み出して出力バッファ７に書き込む。このとき、出力バッファ７がフル状態になると転送動作を中断し、フル状態が解除された後にデータの転送を再開する。なお、コントローラ１は、各ＥＳバッファ２〜４のライトアドレス、リードアドレスおよび充填量を、レジスタによって参照できるものとする。
【００５３】
次に、メディア多重の動作について説明する。コントローラ１は、転送起動レジスタ以外のレジスタ（データ転送が必要なメディアに対応する各レジスタ）にデータを設定し、その後で転送を行いたいメディアに対応する転送起動レジスタのビットフィールドに“１”を設定する。転送制御部６は、転送起動レジスタのいずれかのビットフィールドに“１”が設定されると、そのビットフィールドに対応するメディアのデータ転送を開始する。
【００５４】
まず、転送制御部６は、多重種別レジスタのヘッダメモリ０フィールドを評価して“１”が設定されていれば、ヘッダ情報メモリ５からヘッダ情報を読み出して出力バッファ７に転送する。このとき、転送制御部６は、ヘッダメモリ０転送レジスタに設定された読み出し開始アドレスから転送を開始し、ヘッダメモリ０転送レジスタに設定された読み出し終了アドレスまで転送を行なう。また、ヘッダメモリ０フィールドを評価して“０”が設定されていれば、転送を行わずに次のビットフィールドの評価を行なう。
【００５５】
次に、転送制御部６は、多重種別レジスタのヘッダメモリ１フィールドを評価して“１”が設定されていれば、ヘッダ情報メモリ５からヘッダ情報を読み出して出力バッファ７に転送する。このとき、転送制御部６は、ヘッダメモリ１転送レジスタに設定された読み出し開始アドレスから転送を開始し、ヘッダメモリ１転送レジスタに設定された読み出し終了アドレスまで転送を行なう。また、ヘッダメモリ１フィールドを評価して“０”が設定されていれば、転送を行わずに次のビットフィールドの評価を行なう。
【００５６】
最後に、転送制御部６は、多重種別レジスタのＥＳバッファフィールドを評価して“１”が設定されていれば、ＥＳバッファ２〜４のいずれかからＥＳデータを読み出して出力バッファ７に転送する。このとき、転送制御部６は、ＥＳバッファ転送レジスタに設定された読み出し開始アドレスから転送を開始し、ＥＳバッファ転送レジスタに設定された読み出し終了アドレスまで転送を行なう。転送終了後、転送起動レジスタの対応ビットフィールドを“０”にリセットする。
【００５７】
コントローラ１は、転送起動レジスタに値を設定した後、この転送起動レジスタをモニタすることによって、転送制御部６の転送動作状態を検出することができる。なお、コントローラ１が転送起動レジスタの複数ビットフィールドに“１”を設定した場合には、予め定められた順序で各メディアのデータ転送を実行する。
【００５８】
図３は、ヘッダ情報およびオーディオＥＳの転送の一例を示す図である。図３に示すように、オーディオ用ヘッダメモリ０転送レジスタに設定された読み出し開始アドレスからヘッダ情報メモリ５内のヘッダ情報が出力バッファ７へ転送され、読み出し終了アドレスまでのヘッダ情報の転送が行われる。その後に、オーディオ用ヘッダメモリ１転送レジスタに設定された読み出し開始アドレスからヘッダ情報メモリ５内のヘッダ情報が出力バッファ７へ転送され、読み出し終了アドレスまでのヘッダ情報の転送が行われる。その後に、オーディオＥＳバッファ転送レジスタに設定された読み出し開始アドレスからオーディオＥＳバッファ３内のＥＳデータが出力バッファ７へ転送され、読み出し終了アドレスまでのＥＳデータの転送が行われる。
【００５９】
図４は、ＥＳバッファ２〜４から出力バッファ７への転送が非連続となる場合を説明するための図である。各ＥＳバッファ２〜４のライトポインタは、メモリ制御部８によるＥＳデータの書き込みで更新される。また、各ＥＳバッファ２〜４のリードポインタは、転送制御部６によるデータの転送によって更新される。転送制御部６は、ＥＳバッファ転送レジスタに設定された読み出し開始アドレスおよび読み出し終了アドレスを参照しながら転送を実行する。したがって、図４に示すようにｎ回目の読み出し終了アドレスｂと、（ｎ＋１）回目の読み出し開始アドレスｃとが非連続となり、アドレス（ｂ＋１）から（ｃ−１）までを読み飛ばすことが可能である。
【００６０】
出力制御部１０は、内部にレジスタを有しており、連続して出力するデータ数が予め設定されている。出力制御部１０は、外部から出力要求を受けると出力バッファ７の状態を参照し、出力バッファ７に連続出力数分のデータが存在する場合には、出力バッファ７に保持されたデータをＭＵＸ１１を介して出力させる。また、出力バッファ７に連続出力数分のデータが存在しない場合には、ヌルパケット生成部９から“ヌルパケット”をＭＵＸ１１を介して出力させる。この“ヌルパケット”は、データ構成が決まっているため、予めそのデータ構成をヌルパケット生成部９に保持しておき、出力制御部１０が適宜ヌルパケット生成部９から“ヌルパケット”を出力させる。
【００６１】
図５は、出力制御部１０のタイミングチャートである。FLAG信号がロウレベルの場合には、出力バッファ７に連続出力数分のデータが存在することを示しており、FLAG信号がハイレベルの場合には、出力バッファ７に連続出力数分のデータが存在しないことを示している。図５の▲１▼および▲２▼に示すタイミングで外部から出力要求を受けると、FLAG信号がロウレベルであるので、出力バッファ７から１８８バイト分のデータ（ＴＳパケット）を出力させる。また、▲３▼に示すタイミングで外部から出力要求を受けると、FLAG信号がハイレベルであるので、ヌルパケット生成部９から“ヌルパケット”を出力させる。なお、出力制御部１０は、ＴＳパケットまたは“ヌルパケット”を出力している間、データイネーブル信号にロウレベルを出力する。
【００６２】
以上説明したように、本実施の形態におけるデータ多重装置によれば、メモリ制御部８の内部レジスタに単位時間あたりの最大転送量を設定するようにしたので、ＴＳ多重時の制御が容易に行える。それぞれのＥＳは、符号化時に決められたレートで符号化されており、ＴＳ多重時にはその符号化時に決められたレートと同じレートで多重化を行なうことになる。たとえば、ビデオＥＳが１０Mbit/second、オーディオＥＳが１Mbit/second、データＥＳが１Mbit/secondで生成されるとすると、多重後のＴＳのレートは１２Mbit/secondとなり、ＴＳ内のそれぞれの配分が１０：１：１となるように制御する必要がある。メモリ制御部８の単位時間あたりの最大転送量を、符号化時に決められたレートに対応するように設定すれば、コントローラ１が各ＥＳバッファ２〜４の状態を参照してデータが充填しているメディアのデータを出力バッファ７へ転送すれば、ＴＳ内の配分を上記配分とすることができる。
【００６３】
また、メディアの多重時において、転送制御部６内のレジスタに値を設定して各ＥＳバッファ２〜４またはヘッダ情報メモリ５から出力バッファ７へのデータ転送を制御するようにしたので、任意のパケットを生成することが可能となる。また、ＥＳバッファ２〜４から出力バッファ７へのデータ転送において、コントローラ１が読み出し開始アドレスおよび読み出し終了アドレスをそれぞれ設定するので、ＥＳバッファ２〜４に保持されたＥＳデータを一部破棄することができる。この機能を利用して、たとえば各ＥＳのヘッダ情報を符号化後に付け替えることができる。
【００６４】
また、出力制御部１０は、外部からの出力要求に応じてメディア多重されたＴＳデータまたは“ヌルパケット”のＴＳデータを必ず出力するので、出力バッファ７の状態にかかわらず外部からの要求レートに応じた出力が可能となる。したがって、一定レートで多重されたデータを出力することが可能であり、転送量が固定である通信等に応用すればレート平滑用のバッファ等が不要になる。
【００６５】
なお、本実施の形態における転送制御部６の内部レジスタの各ビットフィールドのビット位置および読み出しアドレスのビット幅は一例であり、これらを変更しても同様の効果が得られることは言うまでもない。
【００６６】
（実施の形態２）
図６は、本発明の実施の形態２におけるデータ多重装置の概略構成を示すブロック図である。図１に示す実施の形態１におけるデータ多重装置と比較して、時刻カウンタ１３と、時刻カウンタ１３によってカウントされた値をサンプリングするサンプル回路１４とが追加された点と、転送制御部、出力バッファ、出力制御部およびＭＵＸの機能が異なる点のみが異なる。したがって、重複する構成および機能の詳細な説明は繰り返さない。なお、転送制御部、出力バッファ、出力制御部およびＭＵＸの参照符号をそれぞれ、６’、７’、１０’および１１’として説明する。
【００６７】
出力バッファ７’には、ＥＳバッファ２〜４およびヘッダ情報メモリ５から転送されるデータの保持以外に、フラグビットを保持するように構成されている。転送制御部６がＥＳバッファ２〜４またはヘッダ情報メモリ５から出力バッファ７’へデータを転送する際に、データに同期してフラグビットを出力する。このフラグビットは、データ境界を示すために設けられ、データの先頭にセットされる先頭フラグと、データの終了にセットされる終了フラグと、ヘッダメモリ０のデータの先頭にセットされるＰＣＲフラグとを含んでいる。
【００６８】
図７は、転送制御部６’内部に設けられた各レジスタの内容を説明するための図である。図２に示す実施の形態１における各レジスタと比較して、ヘッダ転送メモリ０転送レジスタのビット２２〜２４に先頭フラグ、終了フラグおよびＰＣＲフラグが設けられ、ヘッダメモリ１転送レジスタのビット２２および２３に先頭フラグおよび終了フラグが設けられ、ＥＳバッファ転送レジスタのビット２２および２３に先頭フラグおよび終了フラグが設けられている点のみが異なる。
【００６９】
図８は、各フラグが付加されたデータの転送を説明するための図である。転送制御部６’は、先頭フラグのビットフィールドがセットされている場合には、読み出し開始アドレスに対応するデータの転送時に先頭フラグをセットする（ロウレベルを出力する）。また、転送制御部６’は、最終フラグのビットフィールドがセットされている場合には、読み出し終了アドレスに対応するデータの転送時に最終フラグをセットする（ロウレベルを出力する）。また、転送制御部６’は、ＰＣＲフラグのビットフィールドがセットされている場合には、ヘッダメモリ１の読み出し開始アドレスに対応するデータの転送時にＰＣＲフラグをセットする（ロウレベルを出力する）。
【００７０】
出力制御部１０’は、外部からの要求を受けて出力バッファ７’からのデータ出力を制御する際に、出力バッファ７’からフラグビットも一緒に出力される。サンプル回路１４は、外部から出力要求を受けた時に時刻カウンタ１３のカウント値をサンプリングする。そして、出力制御部１０’は、ＰＣＲフラグがセットされるのを検出すると、ＴＳヘッダ内のＰＣＲ領域のデータをサンプル回路１４にサンプリングされた値に置換する。
【００７１】
図９は、ＴＳヘッダ内のＰＣＲ領域の位置を説明するための図である。ＰＣＲ領域は、常にＴＳヘッダの先頭から固定位置にある。したがって、出力制御部１０’は、ＰＣＲフラグを検出することによりＰＣＲ領域の位置を検出することができ、ＰＣＲ領域のデータを置換することができる。出力制御部１０’は、ＰＣＲ領域のデータを置換する際に、ＭＵＸ１１’を切り替えてサンプル回路１４にサンプリングされた値を出力する。なお、データ境界を示すフラグ情報は外部に出力される。
【００７２】
以上説明したように、本実施の形態におけるデータ多重装置によれば、出力バッファ７’にデータを転送する際に、フラグビットも一緒に書き込まれるようにしたので、外部にデータ境界を通知することができる。たとえば、外部回路においてデータ境界を認識できるので、複数のＴＳを再度多重することが容易に行えるようになる。
【００７３】
また、ＰＣＲ領域をサンプル回路１４の値に置換することにより、外部からの出力要求時における時刻を正確に書き込むことが可能となる。また、多重時において、読み出しタイミングを想定しながら正確な時刻を算出してＴＳヘッダ内に書き込む必要がないため、ＴＳ多重時におけるヘッダ情報の生成が容易に行えるようになる。
【００７４】
なお、本実施の形態においては、フラグ情報として先頭フラグ、終了フラグおよびＰＣＲフラグを設ける場合について説明したが、他の種類のフラグ（ＴＳパケットの任意の位置を示すフラグ）を設けるようにしても良い。また、転送制御部６の内部レジスタの各ビットフィールドのビット位置および読み出しアドレスのビット幅は一例であり、これらを変更しても同様の効果が得られることは言うまでもない。
【００７５】
（実施の形態３）
図１０は、本発明の実施の形態３におけるデータ多重装置の概略構成を示すブロック図である。図１に示す実施の形態１におけるデータ多重装置と比較して、符号化回路によって多重された制御情報を分離する制御情報分離部１３および１４が追加された点のみが異なる。したがって、重複する構成および機能の詳細な説明は繰り返さない。
【００７６】
図１１は、ビデオＥＳの制御情報を説明するための図である。ビデオＥＳには、図１１（ａ）に示すように、実際のビデオに対応する符号化データに制御情報が多重されて転送される。通常、図１１（ｂ）に示すように、ビデオＥＳの制御情報はビデオＥＳの１ピクチャの境界に多重されており、“０００００１＋８バイトのコード”で始まるユニークワードが先頭に多重されている。ＭＰＥＧ２のビデオＥＳのシンタックスにおいては、“０００００１＋８バイトのコード”を“スタートコード”として扱い、符号化データ内に存在しないユニークコードと位置づけられている。この“スタートコード”の内、将来の拡張のためにリザーブされているコードを使用して制御情報の先頭を認識する。
【００７７】
符号化回路とデータ多重装置との間で、使用コードおよび制御データ量を取り決めておく。そして、制御情報分離部１３は、符号化回路において多重された制御情報を分離し、分離後のビデオＥＳデータをビデオＥＳバッファ２に書き込む。制御情報分離部１３によって分離された制御情報およびＥＳ境界情報は、コントローラ１に通知される。
【００７８】
また、オーディオＥＳは、符号化データにフラグ情報が付加されたフレーム単位の構成で転送される。図１２に示すように、オーディオＥＳデータは、上位３バイトにオーディオＥＳデータが、下位１バイトにフラグ情報が格納された構成となっている。フラグ情報は、上位３バイトのデータ領域に含まれるデータの種別を表している。フラグ情報が“ＦＦ”の場合には、オーディオフレームの先頭であることを表し、データ領域にはオーディオＥＳではなく制御情報が格納されている。また、フラグ情報が“ＦＦ”のデータの次から、オーディオフレームの先頭ＥＳデータが転送される。この場合のフラグ情報は“０”となっている。また、オーディオフレームの最終データに含まれるフラグ情報は、“１”、“２”または“３”であり、上位３バイトの有効バイト数を示している。このときの上位３バイト中の無効バイト位置は“０”で埋められている。
【００７９】
制御情報分離部１４は、フラグ情報“ＦＦ”を検出し、その上位３バイトを制御情報とし、ＥＳ境界情報とともにコントローラ１へ出力する。また、制御情報分離部１４は、フラグ情報“ＦＦ”を検出した後、次のフラグ情報“０”を検出してその上位３バイトの中の最上位バイトをオーディオフレームの先頭バイトデータと識別する。また、制御情報分離部１４は、オーディオＥＳデータのフラグ情報を分離して評価し、上位３バイトの有効データを順次オーディオＥＳバッファ３に書き込む。
【００８０】
以上説明したように、符号化回路とデータ多重装置との間で制御情報を取り決め、符号化回路からデータ多重装置へ制御情報を転送することにより、コントローラ１が多重時のヘッダ情報の生成およびフラグ生成を容易に行える。
【００８１】
なお、本実施の形態において、図１１（ｂ）に示すように、ビデオＥＳの制御情報の多重に“０００１Ｃ０”コードを使用しているが、使用するスタートコードおよび多重する制御情報量を変更しても同様の効果を奏することは言うまでもない。また、オーディオＥＳのフレーム単位のパッキング構成において、フラグ情報のビット数または（有効データ＋フラグ情報）のビット数を変更しても同様の効果が得られる。
【００８２】
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【００８３】
【発明の効果】
請求項１に記載のデータ多重装置によれば、転送制御手段が、格納手段に格納されたヘッダ情報および第１の保持手段に保持された符号化データの転送を制御するだけで、パケット化されたデータを生成することができ、メディア多重が容易に行えるようになった。
また、第２の保持手段が、パケット化されたデータに同期してフラグ情報を外部へ出力するので、外部においてパケット化されたデータの任意の位置の識別が可能となった。
請求項２に記載のデータ多重装置によれば、フラグ付加手段が、第２の保持手段に保持されるデータのパケット境界にフラグを付加するので、外部においてデータ境界を認識することが可能となり、複数のＴＳを再度多重する場合に処理が容易となった。
【００８４】
請求項３に記載のデータ多重装置によれば、制御手段が、転送制御手段を制御する制御情報をプログラミングするので、メディア多重の多重順序の制御やヘッダ情報の生成等を任意に行なうことが可能となった。
【００８５】
請求項４に記載のデータ多重装置によれば、制御手段が、第１のレジスタおよび第２のレジスタをプログラミングして、転送制御手段を制御するので、メディア多重の多重順序の制御やヘッダ情報の生成等を容易に行えるようになった。また、第１の保持手段に保持された符号化データを部分的に破棄することも可能になった。
【００８６】
請求項５に記載のデータ多重装置によれば、制御手段が、第２の保持手段の空き容量を参照して転送制御手段を制御するので、第２の保持手段においてオーバフローを起こさずにパケット化を行なうことが可能となった。
【００８７】
請求項６に記載のデータ多重装置によれば、入力制御手段が、複数メディアの符号化データを時分割に第１の保持手段へ入力するので、転送制御手段による複数メディアの符号化データの転送の制御が容易に行えるようになった。
【００８８】
請求項７に記載のデータ多重装置によれば、入力制御手段が、設定された単位時間あたりの最大転送量を超えない範囲で、複数メディアの符号化データを時分割に第１の保持手段へ入力するので、第１の保持手段に保持された複数メディアの符号化データの充填量を参照して、符号化データを第２の保持手段に転送するだけで符号化データを適切な配分で多重することが可能となった。
【００８９】
請求項８に記載のデータ多重装置によれば、入力手段が、第１の保持手段がオーバフローとならないように、複数メディアの符号化データを第１の保持手段へ入力するので、符号化データの欠落等を防止することが可能となった。
【００９０】
請求項９に記載のデータ多重装置によれば、出力制御手段が、外部からの転送要求に応じて、予め定められた量のデータを第２の保持手段から外部へ出力するので、外部から要求されたレートでメディア多重されたデータを出力することが可能となった。
【００９１】
請求項１０に記載のデータ多重装置によれば、出力制御手段が、第２の保持手段のデータ充填量を参照し、予め定められた量のデータが第２の保持手段になければ、固定データ出力手段に固定データを出力させるので、符号化データの転送量が少ない場合であっても、外部から要求されたレートで多重されたデータを出力することが可能となった。
【００９２】
請求項１１に記載のデータ多重装置によれば、出力制御手段が、第２の保持手段から出力されるパケット化されたデータの任意の位置に別途用意されたデータを多重するので、ヘッダ情報を付け替えたり、符号化データを変更したりすることが可能となった。
【００９３】
請求項１２に記載のデータ多重装置によれば、出力制御手段が、第２の保持手段から出力されるパケット化されたデータにカウント手段によってカウントされた時刻を多重するので、多重時における正確な時刻をヘッダ情報に付加することが可能となった。
【００９６】
請求項１３に記載のデータ多重装置によれば、分離手段が、複数メディアの符号化データの制御情報を分離するので、複数メディアの多重がさらに容易となった。
【００９７】
請求項１４に記載のデータ多重装置によれば、制御手段が分離手段に分離された制御情報に基づいて、転送制御手段を制御するので、多重順序の制御やヘッダ情報の生成等を行なう際に、制御情報を参照して処理を行なうことが可能となった。
【図面の簡単な説明】
【図１】  本発明の実施の形態１におけるデータ多重装置の概略構成を示すブロック図である。
【図２】  転送制御部６内部に設けられた各レジスタの内容を説明するための図である。
【図３】  ヘッダ情報およびオーディオＥＳの転送の一例を示す図である。
【図４】  ＥＳバッファ２〜４から出力バッファ７への転送が非連続となる場合を説明するための図である。
【図５】  出力制御部１０のタイミングチャートである。
【図６】  本発明の実施の形態２におけるデータ多重装置の概略構成を示すブロック図である。
【図７】  転送制御部６’内部に設けられた各レジスタの内容を説明するための図である。
【図８】  各フラグが付加されたデータの転送を説明するための図である。
【図９】  ＴＳヘッダ内のＰＣＲ領域の位置を説明するための図である。
【図１０】  本発明の実施の形態３におけるデータ多重装置の概略構成を示すブロック図である。
【図１１】  ビデオＥＳの制御情報を説明するための図である。
【図１２】  オーディオＥＳのフレーム単位の構成を示す図である。
【図１３】  従来のＭＰＥＧ２ＴＳ生成器の概略構成を示すブロック図である。
【図１４】  ＴＳ生成前のＥＳの構成を示す図である。
【図１５】  ＴＳの構成を説明するための図である。
【符号の説明】
１  コントローラ、２  ビデオＥＳバッファ、３  オーディオＥＳバッファ、４  データＥＳバッファ、５  ヘッダ情報メモリ、６，６’  転送制御部、７，７’  出力バッファ、８  メモリ制御部、９  ヌルパケット生成部、１０，１０’  出力制御部、１１，１１’  ＭＵＸ、１２  外部（内部）メモリ、１３  時刻カウンタ、１４  サンプル回路、１５，１６  制御情報分離部。
【図１】
0004428779.tif 000002
【図２】
0004428779.tif 000003
【図３】
0004428779.tif 000004
【図４】
0004428779.tif 000005
【図５】
0004428779.tif 000006
【図６】
0004428779.tif 000007
【図７】
0004428779.tif 000008
【図８】
0004428779.tif 000009
【図９】
0004428779.tif 000010
【図１０】
0004428779.tif 000011
【図１１】
0004428779.tif 000012
【図１２】
0004428779.tif 000013
【図１３】
0004428779.tif 000014
【図１４】
0004428779.tif 000015
【図１５】
0004428779.tif 000016