(57)【要約】ＤＶＢ−Ｈトランスポートストリームにおけるマルチプロトコルカプセル化（ＭＰＥ）（１５１）及びマルチプロトコルカプセル化−順方向誤り訂正（ＭＰＥ−ＦＥＣ）（１５２）のセクションから、セクションの逆カプセル化を改良するための装置（１００１）、システム（１０００）及び方法（８００−９００）を提供する。ＤＶＢ−Ｈは、携帯機器に対する放送サービスのための標準規格である。本発明とＤＶＢ−Ｔ，ＤＶＢ−Ｃ，及びＤＶＢ−Ｓとの相違は、順方向誤り訂正（ＦＥＣ）の追加レイヤの存在にある。正しく受信したセクション（１５１）（１５２）のみを復元するだけではなく、本発明は、トランスポートストリームパケットヘッダ（３０１．ｉ．１）及びセクションヘッダ（１５１．１）の双方を用いてセクション（１５１）（１５２）のフラグメントをも復元する。結果として、１つ以上のフラグメントが正しく受信されないときに、（４０８０バイトにまで達することができる）全セクション（８００−９００）を消去するのではでなく、誤って受信したフラグメント（各々、１８４バイトまでとできる。）のみを消去するだけとする。これは、順方向誤り訂正（ＦＥＣ）情報の追加レイヤの、より効率的な使用に通じる。
2008527896.tif 000002
【特許請求の範囲】
【請求項１】
ヘッダ（３０１．ｉ．１）及び最大長さＭのペイロード（３０１．ｉ．２）を有する少なくとも１つのパケット（３０１．ｉ）のシーケンスで受信されるセクション（１５１）（１５２）を再構成するための装置（１００１）であって、
１つのフラグメント（６０１）は、１つのセクションの一部（１５１）（１５２）であり、少なくとも１つのフラグメント（６０１）のシーケンスが少なくとも１つのパケット（３０１．ｉ）を受信したシーケンスに含まれるように、１つのペイロード（３０１．ｉ．２）に含められ、関連付けた長さ変数（７０３．ｉ）を有する、長さＭの複数の番号付け（７０１．ｉ）したフラグメント列（７０６．ｉ）を含むフラグメントメモリ（７００）と、
再構成したセクション（１５１）（１５２）を格納するためのフレームメモリ（１００４）と、
前記少なくとも１つのフラグメント（６０１）のシーケンスを受信した順序で、前記セクション（１５１）（１５２）を再構成する逆カプセル化モジュール（１００１）とを備え、
ａ．セクション（１５１）（１５２）を再構成する前に、関連付けた長さ変数（７０３．ｉ）の各々をゼロに等しく設定するとともに、フラグメントポインタ（ＦＰ）をゼロに設定し、
ｂ．長さが‘１’である前記シーケンスのフラグメント（６０１）が、正しく受信されたパケット（３０１．i）に含まれているときには、当該フラグメント（６０１）及び該フラグメント（６０１）の長さ‘１’（７０６．ｉ）を列‘ｉ’に格納するとともに、長さ‘１’を前記関連付けた長さ変数（７０３．ｉ）に格納し、
ｃ．前記シーケンスのフラグメント（６０１）が、訂正不能なエラーを含むパケット（３０１．ｉ）に含まれているときには、当該フラグメント（６０１）及び該フラグメント（６０１）の長さ‘１’（７０６．ｉ）を、その関連付けた長さ（７０３．ｉ）変数と一緒に列（７０６．ｉ）に格納し、且つ、所定の整合性基準に基づいて無視し、
ｄ．信頼できるフレームアドレス情報を有する、前記フラグメントメモリ（７００）のフラグメント（７０６．ｉ）は、ペイロードで受信したテーブルアドレス（７０５．２）で開始するフレームメモリ（１００４）に格納する、パケットのセクション再構成用装置（１００１）。
【請求項２】
訂正不能なエラーは、パケットヘッダ（３０１．ｉ．１）内に含まれるトランスポートエラーインジケータ（３０１．ｉ．１．２）によって指示する、請求項１に記載の装置（１００１）。
【請求項３】
前記パケットのヘッダ（３０１．ｉ．１）は、パケット（３０１．ｉ）のサービスタイプを示すパケット識別子（ＰＩＤ）（３０１．ｉ．５）を含み、且つ、前記逆カプセル化モジュール（１００１）は、前記パケット（３０１．ｉ）を所定のＰＩＤ受諾スキームに従って無視するようにも構成する、請求項１に記載のパケットのセクション再構成用装置（１００１）。
【請求項４】
前記フラグメントメモリ（７００）は、各列（７０６．ｉ）に関連付けた消去情報（７０２．ｉ）を有するようにも構成し、且つ、
或るシーケンスの全てのフラグメント（６０１）が、前記フラグメントメモリ（７００）に格納されたものであるか又は無視されたものであるとき、前記逆カプセル化モジュール（１００１）は更に、
ｅ．０の関連付けた長さ変数（７０３．ｉ）を有するフラグメント列（７０６．ｉ）によって示される欠損フラグメントがあるときには、その関連付けた消去情報（７０２．ｉ）を所定値に設定し、
ｆ．欠損フラグメントが全くないときには、前記シーケンスのペイロードで受信したＣＲＣを処理して、前記ＣＲＣの結果に基づいて各列に対する消去情報（７０２．ｉ）を設定するようにも構成する、請求項１に記載のパケットのセクション再構成用装置（１００１）。
【請求項５】
前記フラグメントメモリ（７００）は更に、次のフラグメント列（７０６．ｉ）を指示して、フラグメントを受信するためのフラグメントポインタ（ＦＰ）（７０１）も含み、
前記パケットのヘッダ（３０１．ｉ．１）は、或るシーケンスの損失パケットを示すための、０からｋまで巡回する連続性カウンタ（ＣＣ）（３０１．ｉ．１．８）を含み、
前記逆カプセル化モジュール（１００１）は更に、
ｅ．ＣＣの期待値を追跡し、且つ、受信した各セクションに対してＳＣ＝ＣＣに初期化するためのシャドウカウンタ（ＳＣ）を保持して、ＳＣ＝ＣＣの所定の整合性基準を実行し（８１２〜８１４）（８２０）、
ｆ．不連続性カウンタ（ＤＣ）、欠損フラグメントカウンタ（Ｋ）及びフローティングフラグメントグループカウンタ（Ｆ）を保持し（８０８）（８０９）、
ｇ．或るパケットが、
（１）正しく受信されたパケットであり、且つ、
（２）訂正不能なエラーを含み、且つ、ＣＣ＝ＳＣであるときには、
ＦＰによって指示されたフラグメントメモリの列に、ペイロードのフラグメントを格納し、次いで、フラグメントを受信するための次の列及び、前記シーケンスの次のパケットで期待されるＣＣの値をそれぞれ指示するように、ＦＰ及びＳＣを調整し（８１４〜８１５）、
ｈ．或るパケット（３０１．ｉ）が訂正不能なエラーを含み、且つ、ＣＣ≠ＳＣであるときには、前記フラグメントが欠損フラグメントであるとして前記パケットを無視するようにも構成する、請求項１に記載のパケットのセクション再構成用装置（１００１）。
【請求項６】
訂正不能なエラーは、パケットヘッダ（３０１．ｉ．１）に含まれているトランスポートエラーインジケータ（３０１．ｉ．１．２）によって指示する、請求項５に記載のパケットのセクション再構成用装置（１００１）。
【請求項７】
前記パケットヘッダ（３０１．ｉ．１）は、前記パケットのサービスタイプを指示するパケット識別子（ＰＩＤ）（３０１．ｉ．１．５）を含み、前記逆カプセル化モジュール（１００１）は更に、前記パケット（３０１．ｉ）を所定のＰＩＤ受諾スキームに従って無視するようにも構成する、請求項６に記載のパケットのセクション再構成用装置（１００１）。
【請求項８】
前記逆カプセル化モジュール（１００１）は更に、正しく受信したフラグメントを格納する前に、ＣＣ≠ＳＣのときにＦＰ及びＫを（（ＣＣ−ＳＣ）のモジュロ１６）だけ進め（８０８〜８１３）、ＳＣ＝ＣＣに設定し、ＤＣをインクリメントし、最終の欠損フラグメント（ＬＭＦ）をＦＰの直前の列として記録し、最初の欠損フラグメント（ＦＭＦ）がヌルであればＦＭＦ＝ＬＭＦに設定するようにも構成する、請求項７に記載のパケットのセクション再構成用装置（１００１）。
【請求項９】
前記フラグメントメモリ（７００）は更に、各列（７０６．ｉ）に関連付けた消去情報（７０２．ｉ）を有するようにも構成し、
或るシーケンス（６０１）の全てのフラグメント（７０６．ｉ）が、前記フラグメントメモリ（７００）に格納されたものであるか又は無視されたものであるとき、前記逆カプセル化モジュール（１００１）は更に、
ｉ．０の関連付けた長さ変数（７０３．ｉ）を有するフラグメント列（７０６．ｉ）によって指示される欠損フラグメントがあるときには、その関連付けた消去情報（７０２．ｉ）を所定値に設定するとともに、そのグループカウンタＦを、フローティンググループフラグメントの数＝ＤＣ−１に設定し、
ｊ．欠損フラグメントが全くないときには、前記シーケンスのペイロードで受信したＣＲＣを処理して、前記ＣＲＣの結果に基づいて各列に対する前記消去情報（７０２．ｉ）を設定し、且つ、
ｋ．Ｋ及びＦの値に基づいて、所定の格納スキームに従って、フラグメントメモリ（７０６．ｉ）を前記フレームメモリ（１００４）に格納するようにも構成する、請求項８に記載のパケットのセクション再構成用装置（１００１）。
【請求項１０】
前記所定の格納スキームは、
Ｋ＝０のときには、前記フラグメントメモリが、セクションヘッダ（１５１．１）にて受信されるテーブルアドレス（７０５．２）によって指示されるとともに、前記フラグメントメモリ（７００）のセクションヘッダ（７０５）に格納されているアドレスで、前記フレームメモリ（１００４）に格納され、
Ｋ≠０であり、且つ、現在のセクション及び次のセクション（１５１）（１５２）のうち少なくとも１つが、前記フラグメントメモリに格納されているときには、前記現在及び次のセクションのセクションヘッダのテーブルアドレスが、前記フラグメントメモリ（７００）のフラグメント（７０６．ｉ）を前記フレームメモリ（１００４）に格納するのに用いられ、
Ｋ≠０であり、且つ、１つのセクション（１５１）（１５２）のみからのフラグメント（７０６．ｉ）が前記フラグメントメモリ（７００）に格納されているときには、前記欠損フラグメントの長さは、アダプテーションフィールドのスタッフィングに基づいて決定され、この長さを用いて、前記フラグメントメモリ（７００）の各フラグメント（７０６．ｉ）は、セクションヘッダ（１５１．１）にて受信されるテーブルアドレス（７０５．２）によって指示されるとともに、前記フラグメントメモリ（７００）のセクションヘッダ（７０５）に格納されているアドレスで、前記フレームメモリ（１００４）に連続して格納される、
ものとする、請求項９に記載のパケットのセクション再構成用装置（１００１）。
【請求項１１】
Ｆ≠０であり、且つ、欠損フラグメントの長さが確定されないときには、欠損フラグメント（７０７）（７０９）及びフローティングフラグメント（７０８）は、前記フラグメントメモリ（７００）のフラグメント（７０６．ｉ）を前記フレームメモリ（１００４）に格納する前に、前記フラグメントメモリ（７００）から消去される、請求項１０に記載のパケットのセクション再構成用装置（１００１）。
【請求項１２】
携帯機器向けのディジタルビデオ放送（ＤＶＢ−Ｈ）システム（１０００）であって、
ａ．Ｍ行、
ｂ．消去情報（７０２．ｉ）、
ｃ．フラグメント長（７０３．ｉ）、
ｄ．フラグメントポインタ値（７０１．ｉ）、
を各々有する複数の列を含み、
フラグメントを受信するために次の列を指示するフラグメントポインタ（ＦＰ）に相当するフラグメントポインタ値を有する、再構成セクションの有効なフラグメントの列で、訂正不能なエラーを含むフラグメントを受信し、且つ、所定の整合性基準に従って空きを残存させるためのメモリであって、Ｍは、パケットペイロードの最大バイト数とする、メモリと、
パケット（３０１．ｉ）にて受信され、且つ、ＦＰで、或る長さ（７０３．ｉ）及び或る消去情報（７０２．ｉ）を有するフラグメント（７０６．ｉ）として前記メモリ（７００）に連続的に格納される、少なくとも１つのセクションフラグメントのシーケンスから、或るセクション（１５１）（１５２）を再構成するための構成を有する逆カプセル化モジュール（１００１）であって、１つのフラグメントは、１つのパケット（３０１．ｉ）に含まれる１つのセクション（１５１）の一部として規定し、ＦＰは前記フラグメントメモリ（７００）内の次のフラグメント格納位置（７０１．ｉ）に対して設定される、前記逆カプセル化モジュール（１００１）と、
を備えるディジタルビデオ放送システム（１０００）。
【請求項１３】
前記受信したパケット（３０１．ｉ）は、トランスポートエラーインジケータ（ｔｅｉ）（３０１．ｉ．１．２）及びパケット識別子（ＰＩＤ）（３０１．ｉ．１．５）を含むパケットヘッダ（３０１．ｉ．１）と、少なくとも１つのセクションのフラグメント（６０１）及び前記セクションのためのセクション巡回冗長検査（ＣＲＣ）（１５１．３）を含む対応するパケットのペイロード（３０１．ｉ．２）とを含み、
前記逆カプセル化モジュール（１００１）は更に、少なくとも１つのｔｅｉ及び前記フラグメント（６０１）を含むパケットのパケットヘッダ（３０１．ｉ．１）のＰＩＤに基づいて、前記少なくとも１つのフラグメントが有効か否かを決定するようにも構成する、請求項１２に記載のディジタルビデオ放送システム（１０００）。
【請求項１４】
前記再構成セクションを格納するためのフレームメモリ（１００４）を更に備え、
有効なセクションは、有効なフラグメントのみからなるフラグメントメモリとして規定し、
有効なセクションが受信されていたときには、前記逆カプセル化モジュール（１００１）は更に、前記セクションが有効か否かを決定するのに前記ＣＲＣを用いるようにも構成し、この決定に基づいて、前記フラグメントメモリ（７００）に格納された前記セクションをフレームメモリ（１００４）に移動させ、前記フラグメントメモリ（７００）の前記消去情報（７０２）を設定し、
有効なセクションが受信されていなかったときには、前記逆カプセル化モジュールは更に、前記フラグメントメモリ（７００）の各フラグメント（７０６．ｉ）に対して、前記フラグメント（７０６．ｉ）を前記フレームメモリ（１００４）に入れるための位置及び長さを決定し、位置を信頼できるように決定できない場合には、前記フラグメント（７０６．ｉ）を無視するようにも構成する、請求項１３に記載のディジタルビデオ放送システム（１０００）。
【請求項１５】
セクション（１５１）（１５２）を再構成する方法（８００〜９００）であって、
少なくとも１つのセクションフラグメントを含む少なくとも１つのパケット（３０１．ｉ）のシーケンスで、ディジタル放送受信機（１００３）により、前記セクション（１５１）（１５２）を受信するステップを含み、且つ、
シーケンスの各パケットに対して、
ａ．少なくとも１つのパケットを正しく受信するときには、そのパケットに含まれるフラグメントをフラグメントメモリ（７００）の対応する列（７０６．ｉ）に格納するとともに、正しく受信したフラグメントを含んでいるとして、前記列（７０６．ｉ）をマーク付けするステップ、及び、
ｂ．少なくとも１つのパケットを誤って受信するときには、所定の整合性基準に基づいて、前記フラグメント（６０１）を、その関連付けた長さ（７０３．ｉ）変数と一緒に列（７０６．ｉ）に格納するか、又は、当該列を無視するステップを実行し、
前記セクションの全てのフラグメントが正しく受信されたとしてマーク付けした場合には、前記セクションが有効か否かを決定するためのＣＲＣ処理を実行し、
前記セクション（１５１）（１５２）の全てのフラグメントが受信されていたときには、前記フラグメント（７０６．ｉ）を前記フラグメントメモリ（７００）からフレームメモリ（１００４）に移動させる、セクション再構成方法（８００〜９００）。
【請求項１６】
前記少なくとも１つのパケット（３０１．ｉ）のパケットヘッダ（３０１．ｉ．１）に含まれるトランスポートエラーインジケータ（３０１．ｉ．１．２）から、誤って受信したパケットを決定するステップを更に含む、請求項１４に記載のセクション再構成方法（８００〜９００）。
【請求項１７】
前記少なくとも１つのパケット（３０１．ｉ）のパケットヘッダ（３０１．ｉ．１）が所定のサービスタイプのパケット識別子（ＰＩＤ）（３０１．ｉ．５）を含む場合に、パケットを無視するステップを更に含む、請求項１５に記載のセクション再構成方法（８００〜９００）。
【請求項１８】
前記列が、少なくとも１つの正しく受信されなかったものであったか否か、又は、関連付けたアドレス情報を有していないものであるか否かに基づいて、前記フラグメントメモリ（７００）の各列（７０６．ｉ）に関連付けた消去情報（７０２．ｉ）を所定値に設定するステップと、
セクションの全てのフラグメントが受信されており、且つ、欠損フラグメントが全くないときには、
ｃ．前記シーケンスのペイロードにて受信されるＣＲＣを処理するステップ及び、
ｄ．前記処理したＣＲＣの結果に基づいて、各列（７０６．ｉ）に対する消去情報（７０２．ｉ）を設定するステップを実行するステップとを更に含む、請求項１４に記載のセクション再構成方法（８００〜９００）。
【請求項１９】
フラグメントを受信するために次のフラグメント列（７０６．ｉ）を指示するフラグメントポインタ（ＦＰ）（７０１）、シーケンスの損失パケットを示すために０からｋまで巡回する、パケットヘッダ（３０１．ｉ．１．８）の連続性カウンタＣＣの期待値を追跡するためのシャドウカウンタ（ＳＣ）（８１２〜８１４）（８２０）、不連続性カウンタ（ＤＣ）、欠損フラグメントカウンタ（Ｋ）及び、フローティングフラグメントカウンタ（Ｆ）の各々を保持するステップ（８０８）（８０９）と、
受信した各セクションに対してＳＣ＝ＣＣに初期化するステップと、
少なくとも１つのパケット（３０１．ｉ）の前記シーケンスの受信したパケットの各々に対して、ＳＣ＝ＣＣの所定の整合性基準を実行するステップと、
パケットが正しく受信されたものであるか又は訂正不能なエラーを含み、且つ、ＣＣ＝ＳＣであるときに、
ａ．ＦＰ（７０１）によって指示されるフラグメントメモリ（７００）の列（７０６．ｉ）に、ペイロードのフラグメントを格納するステップ（８１４〜８１５）、
ｂ．フラグメントを受信するための次の列及び、前記シーケンスの次のパケットで期待されるＣＣの値をそれぞれ指示するように、ＦＰ（７０１）及びＳＣを調整するステップ、及び、
ｃ．パケット（３０１．ｉ）が訂正不能なエラーを含み、且つ、ＣＣ≠ＳＣであるときに、前記パケットを無視するステップを実行するステップとを更に含む、請求項１７に記載のセクション再構成方法（８００〜９００）。
【請求項２０】
前記少なくとも１つのパケット（３０１．ｉ）のパケットヘッダ（３０１．ｉ．１）に含まれるトランスポートエラーインジケータ（３０１．ｉ．１．２）から、誤って受信したパケットを決定するステップを更に含む、請求項１８に記載のセクション再構成方法（８００〜９００）。
【請求項２１】
前記少なくとも１つのパケット（３０１．ｉ）のパケットヘッダ（３０１．ｉ．１）が所定のサービスタイプのパケット識別子（ＰＩＤ）（３０１．ｉ．５）を含む場合には、パケットを無視するステップを更に含む、請求項１９に記載のセクション再構成方法（８００〜９００）。
【請求項２２】
正しく受信したフラグメントを格納する前に、ＣＣ≠ＳＣのときに、
ＦＰ及びＫを（（ＣＣ−ＳＣ）のモジュロ１６）だけ進めるステップ、
ＳＣ＝ＣＣに設定するステップ、
ＤＣをインクリメントするステップ、
最終の欠損フラグメント（ＬＭＦ）をＦＰの直前の列として記録するステップ及び、
最初の欠損フラグメント（ＦＭＦ）がヌルであれば、ＦＭＦ＝ＬＭＦに設定するステップ、を実行するステップ（８０８〜８１３）を更に含む、請求項２０に記載のセクション再構成方法（８００〜９００）。
【請求項２３】
シーケンスの全てのフラグメント（６０１）が受信されていたとき、
フラグメント列（７０６．ｉ）が０の関連付けた長さ変数（７０３．ｉ）を有するときには、関連付けた消去情報（７０２．ｉ）を所定値に設定するとともに、カウンタＦを、フローティングフラグメントのグループの数（ＤＣ−１）に設定するサブステップを実行するステップ、
前記フラグメント列が０の関連付けた長さ変数を有するものでないときは、前記シーケンスのペイロードで受信したＣＲＣを処理して、前記ＣＲＣの結果に基づいて各列に対する前記消去情報（７０２．ｉ）を設定するステップ及び、
Ｋ及びＦの値に基づいて、所定の格納スキームに従って、フラグメントメモリのフラグメント（７０６．ｉ）を前記フレームメモリ（１００４）に格納するステップ、
を実行するステップを更に含む、請求項２１に記載のセクション再構成方法（８００〜９００）。
【請求項２４】
Ｋ及びＦの値に従ってフラグメントメモリのフラグメント（７０６．ｉ）をフレームメモリ（１００４）に格納する前記ステップは更に、
Ｋ＝０のときには、セクションヘッダ（１５１．１）にて受信されるテーブルアドレス（７０５．２）によって指示され、且つ、前記フラグメントメモリ（７００）のセクションヘッダ（７０５）に格納されているアドレスで、前記フラグメントメモリのフラグメントを前記フレームメモリ（１００４）に格納するステップと、
Ｋ≠０であり、且つ、現在のセクション及び次のセクション（１５１）（１５２）のうち少なくとも１つのフラグメントが、前記フラグメントメモリ（７００）に格納されているときには、前記現在及び次のセクションのセクションヘッダのテーブルアドレスを用いて、前記フラグメントメモリ（７００）のフラグメント（７０６．ｉ）を前記フレームメモリ（１００４）に格納するステップと、
Ｋ≠０であり、且つ、１つのセクション（１５１）（１５２）のみからのフラグメント（７０６．ｉ）が前記フラグメントメモリ（７００）に格納されているときには、アダプテーションフィールドのスタッフィングに基づいて欠損フラグメントの長さを決定するステップ及び、前記フラグメントメモリ（７００）の各フラグメント（７０６．ｉ）の、この長さを用いて、セクションヘッダ（１５１．１）にて受信されるテーブルアドレス（７０５．２）によって指示され、且つ、前記フラグメントメモリ（７００）のセクションヘッダ（７０５）に格納されているアドレスで、前記フラグメント（７０６．ｉ）を前記フレームメモリ（１００４）に連続して格納するステップを実行するステップとを含む、請求項２２に記載のセクション再構成方法（８００〜９００）。
【請求項２５】
Ｆ≠０であり、且つ、欠損フラグメントの長さが確定されないときには、前記フラグメントメモリ（７００）のフラグメント（７０６．ｉ）を前記フレームメモリ（１００４）に格納する前に、前記欠損フラグメント（７０７）（７０９）及び前記フローティングフラグメント（７０８）を前記フラグメントメモリ（７００）から消去するステップを更に含む、請求項２３に記載のセクション再構成方法（８００〜９００）。
【請求項２６】
請求項２３の各ステップ（８００〜９００）を実行することにより、セクションを再構成するためのコンピュータ実行可能な命令を含む、コンピュータ読取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、携帯機器向けのディジタルビデオ放送規格（ＤＶＢ−Ｈ：digital video broadcast handheld）のデータグラム逆カプセル化のためのシステム及び方法に関する。
【背景技術】
【０００２】
ＤＶＢ−Ｈは、携帯機器（例えば、携帯電話）にディジタルビデオ放送（ＤＶＢ）サービスを提供するための、欧州電気通信標準化協会（ＥＴＳＩ：Europe Telecommunications Standards Institute）の新規格であり、これについては参考までに全内容を本願に取り入れる、ディジタルビデオ放送（ＤＶＢ），ＤＶＢ−Ｈ実装ガイドラインについてのETSI TR 1XX XXX V0.1.0（2004‐09）を参照されたい。この規格では、低電力の受信機の実装をサポートすることを規定している。従来のＥＴＳＩ規格ＤＶＢ‐Ｓ、ＤＶＢ‐Ｃ及びＤＶＢ‐Ｔと同様に、ＤＶＢ‐Ｈでは、情報は典型的には幾つかのＭＰＥＧ‐２符号化プログラムを多重化する、いわゆるトランスポートストリームで放送される。
【０００３】
ＤＶＢ−Ｈは、ＤＶＢ−Ｔに基づいており、完全に後方互換性がある。ＤＶＢ−Ｈによる追加の特徴は、携帯機器及び携帯電話の受信を、特に、節電、高データレートでのモバイル性、単一アンテナでの受信、及びＳＦＮネットワークを許容できるようにサポートすることにある。また、ＤＶＢ−Ｈは、インパルス雑音を容認し、且つ、一般的なロバスト性を高めるとともに、電源のオフ時間中におけるシームレス・ハンドオーバーをサポートする。
【０００４】
前述したことはいずれも、次のようなことに限定されるものではないが、の特徴の全ては、オプションをＤＶＢ−Ｔに追加することにより達成される。節電用のタイムスライシング、追加のロバスト性のためのＭＰＥ−ＦＥＣフレーム（後述する）、及びモバイル性とネットワーク設計の柔軟性のための４ｋモードを含む。ＤＶＢ−Ｈでは、データを高いレートで“バースト”に束ねて、バースト間で受信機をスイッチオフして、９０％までエネルギーをセーブすることができるようにしている。また、タイムスライシングは、サービスの無い期間中のハンドオーバーを簡単にする。従来の放送界とＰＣ界とを合致させるために、ＩＰカプセル化が導入されている。このＩＰカプセル化を小型のマルチメディア機器へと拡張するために、ＩＰカプセル化は、タイムスライシングと組み合わせる。ＤＶＢ‐Ｈは、マルチプロトコルカプセル化（ＭＰＥ:Multi Protocol Encapsulation）を用いるＩＰベースのサービス用のものである。追加のロバスト性は、ＭＰＥセクションを順方向誤り訂正（ＦＥＣ:Forward Error Correction）符号化、従って、学名ＭＰＥ−ＦＥＣフレームのエクストラレイヤで保護することによって、ＤＶＢ−Ｈシステムに提供される。ＤＶＢ‐Ｈは、ＤＶＢ‐ＴマルチプレックスをＭＰＥＧ２サービスと共有できる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
アプリケーションデータテーブル１０１及びリードソロモン（ＲＳ）データテーブル１０２を含むＭＰＥ−ＦＥＣフレーム１００は、ＥＴＳＩ規格では、図１に示すように、伝送フレームフォーマットとして定められている。ＩＰデータグラムを逆カプセル化する直接的なやり方では、誤って受信したＩＰデータグラムに対応する、ＭＰＥ−ＦＥＣフレームにおける全ての位置を、消去箇所としてマーク付けする。ＩＰデータグラムのサイズは、４０８０バイトまでとすることができるので、ＭＰＥ−ＦＥＣフレームの大部分は、このようなやり方では消去されうる。同様に、いわゆるＭＰＥ−ＦＥＣセクションで列ベースあたりの単位で送信される、リードソロモンデータテーブルにおけるデータは、１０２４バイトの消去部分へと通じうる（一般に、その消去部分は、ＭＰＥ−ＦＥＣフレームにおける使用行数に等しい）。それ故、直接的なやり方は、有効でなく、効率的でもない。
【０００６】
従って、ＭＰＥ−ＦＥＣデコーダのために、ＩＰデータグラム及びリードソロモンデータのシンボルの一部のみを消去箇所としてマーク付けすることを可能にする、受信ＭＰＥ−ＦＥＣフレームを処理する技法が必要である。
【課題を解決するための手段】
【０００７】
本発明のシステム及び方法は、消去が１８４バイトの部分（ＴＳパケットのペイロード）で行なわれる、受信ＭＰＥ−ＦＥＣフレームの再構成のための有効且つ効率的な方法を提供する。
【０００８】
ＩＰデータグラムの最大サイズは４０８０バイトであり、この際、ＩＰデータグラムの逆カプセル化に対する簡単な手法では、ＭＰＥ−ＦＥＣフレームの大部分、例えばその最大サイズデータグラムの４０８０バイトまで、が消去されてしまうことになる。
【０００９】
本発明では、１つのフラグメントを１つのＴＳパケットに含まれる１つのＩＰデータグラムの一部として規定し、且つ、ＩＰデータグラムの逆カプセル化をアシストするためにフラグメントメモリを維持する。本発明は、データグラムを連続するＴＳパケットにパックするとともに、ＴＳパケットヘッダの連続性カウンタ（ＣＣ:continuity counter）を用いて、受信したフラグメントをフラグメントメモリに位置付けるものとする。また、外挿及び内挿法も用いて、フラグメントメモリにフラグメントを位置付ける。
【発明を実施するための最良の形態】
【００１０】
以下の説明は、本発明を例証する目的のためのものであり、本発明はこれに限定されるものではないことは当業者に明らかである。発明の精神及び添付した請求の範囲内で多くの変形例があることは当業者に明らかである。既知の機能及び動作の詳細についての不必要な説明は、本発明を不明瞭にしないように、以下の説明では省略している。
【００１１】
本発明のシステム及び方法が提供するＩＰ逆カプセル化方法では、正しく受信したセクション以外にも、セクションペイロードからできるだけ多くのセクションを回復するために、部分的に正しく受信したセクションを処理するのであって、ＤＶＢ−Ｈの場合におけるセクションペイロードは、誤り訂正（ＭＰＥ−ＦＥＣ）のエクストラレイヤに属するＩＰデータグラム及びパリティデータから成る。
【００１２】
図１Ａを参照するに、ＭＰＥ−ＦＥＣフレーム１００は、２５５の列と可変数の行とを有するバイトのテーブルであり、各行はリードソロモン符号の符号ワードである。行数は、２５６、５１２、７６８又は１０２４に相当し、実際に用いられる行数は、ＰＳＩ／ＳＩ（Program Specific Information / Service Information）テーブルで伝送される記述子time_slice_fec_identifier_descriptorで示される。これについては参考までに、全内容を本願に取り入れる、データ放送用ＤＶＢ仕様（DVB Specification For Data Broadcasting, Modified Version of DVB-H Additions Including CA support, Final Draft, ETSI EN 301 192 V1.4.1, DVB-H201r1）を参照されたい。 つまり、この行サイズのための最大許容値は１０２４であり、それは、全ＭＰＥ−ＦＥＣフレームを約２Ｍｂのサイズにする。ＭＰＥ−ＦＥＣフレームの各位置は、１バイトを保持する。ＭＰＥ−ＦＥＣフレームの左側１０１は、１９１個の最左列からなり、これはＩＰデータグラム１０３及び可能なパッディング１０４に専用され、アプリケーションデータテーブルと称される。ＭＰＥ−ＦＥＣフレームの右側１０２は、６４個の最右列からなり、これはＦＥＣ符号のパリティバイトに専用され、ＲＳデータテーブルと称される。アプリケーションデータテーブルの各バイト位置は、１から１９１ｘ行数（No_of_rows）に及ぶアドレスを有する。同様に、ＲＳデータテーブルの各バイト位置は、１から６４ｘ行数（No_of_rows）に及ぶアドレスを有する。ＲＳテーブルのアドレッシングは、セクション長（section_length）及びセクション番号（section_number）を識別することからして、冗長となる。ここで、図１Ｂを参照するに、ＩＰデータグラムはいわゆるＭＰＥセクション１５１を用いて伝送され、ＲＳデータはいわゆるＭＰＥ−ＦＥＣセクション１５２を用いて伝送される。
【００１３】
ＩＰデータグラムは、アプリケーションデータテーブルにデータグラム毎に位置づけられ、そのテーブルの上左隅部における第１データグラムの第１バイトで始まり、その第１列を下方に進む。ＩＰデータグラムの長さは、データグラムによって任意に変えることができる。ＭＰＥセクションの最大サイズは、４０９６バイトであるので、４０８０バイトまでのＩＰデータグラムをカプセル化することができる（４０９６バイト−１２バイトのセクションヘッダ−４バイトのＣＲＣ）。或るＩＰデータグラムの終了の直後に、次のＩＰデータグラムは、２０１（図２参照）を開始する。ＩＰデータグラムが１列の終わりで正確に終了しない場合には、次の列２０２の最上部に続く。全てのＩＰデータグラムがアプリケーションデータテーブル１０１に入れられているときには、空のバイト位置をいずれもゼロバイトでパディングして（１０４−５）、最左列１９１までを完全に満たす。完全なパッディング列１０５の数は、ＭＰＥ−ＦＥＣセクション（即ち、ＲＳパリティバイトを持っているセクション）の各々において８ビットで動的に示される。
【００１４】
ＩＰデータは、ＭＰＥ−ＦＥＣを用いるか否かに関わらず、標準規格のＤＶＢ法にてＭＰＥセクション１５１にて搬送される。１つのＩＰデータグラムは、１つの単一のＭＰＥセクション内に搬入される。１つのトランスポートストリーム（ＴＳ）パケットペイロード３０１は、１つ以上のＭＰＥセクション１５１を含むことができ、１つのＭＰＥセクション１５１は、図３に示すように、１つ以上のＴＳパケットペイロード３０１にフラグメント化することができる。これにより、ＭＰＥ−ＦＥＣを意識しない受信機に対して完全に後方互換性の受信をさせる。各ＭＰＥセクション１５１は、それが含むＩＰデータグラムのためのスタートアドレスを含んでいる。このスタートアドレスは、アプリケーションデータテーブルにおけるＩＰデータグラムの第１バイトの位置を示し、ＭＰＥヘッダに示される。次に、受信機は、ＣＲＣ−３２チェック１５１．３がそのセクションが正しい旨を示す場合に、その受信したＩＰデータグラムをアプリケーションデータテーブルにおける正しいバイト位置に置いて、これらの位置をＲＳデコーダ用に‘信頼できる’位置としてマーク付けすることができる。
【００１５】
アプリケーションデータテーブル１０１の最終セクションは、アプリケーションデータテーブル内のＩＰデータグラムの終了を示すテーブル境界フラグ（table_boundary flag）を含んでいる。アプリケーションデータテーブル内の全ての以前のセクションが正しく受信されていたのであれば、受信機は、全くＭＰＥ−ＦＥＣセクションを受信する必要がなく、タイムスライシングを用いている場合に、ＲＳデータを受信して復号したりすることなく、スリープ状態に進むことができる。
【００１６】
ＭＰＥ−ＦＥＣセクション１５２が受信される場合には、アプリケーションデータテーブルにおけるパッディング列の正確な数がＭＰＥ−ＦＥＣセクション１５２のセクションヘッダにて８ビットで示され、ＲＳ復号化を実行する場合にのみ、この値が必要とされる。
【００１７】
パリティバイトは、個別に搬送され、特に、それ自身のテーブル識別子（table_id）を有する規定のセクションタイプで搬送される。 
【００１８】
ここで、図４を参照するに、ＭＰＥ−ＦＥＣフレームにおけるアプリケーションデータテーブルの最左列１９１列の全てが満たされていると、この際、各行に対して、１９１バイトのＩＰデータ及び可能なパッディングから、ＲＳデータテーブル１０２の６４個のパリティバイトを計算することが可能である。
【００１９】
使用する符号は、以下のような多項式で表されるバイト指向［２５５，１９１，６５］のリードソロモン符号である。
フィールド生成多項式ｐ（ｘ）＝ｘ８＋ｘ４＋ｘ３＋ｘ２＋１
及び
符号生成多項式ｇ（ｘ）＝（ｘ＋□０）（ｘ＋□１）（ｘ＋□２）・・・（ｘ＋□６３）
ここで、□＝０２ＨＥＸ
【００２０】
アプリケーションデータテーブルの各行は、１つのＲＳ符号ワードを含んでいる。パンクチャリングを可能とするために、ＲＳデータテーブルの最右列の幾つかを破棄して伝送しないものとすることができる。パンクチャリングしたＲＳ列の正確な数は、ＭＰＥ−ＦＥＣセクションヘッダにおける最終セクション番号フィールド（last_section_number field）から決定することができ、フレーム間で動的に変えることができる。ＲＳデータテーブル１０２が完全に満たされると、ＭＰＥ−ＦＥＣフレームは、トランスポートストリームに挿入する準備がなされ、伝送できるようになる。
【００２１】
受信機では、ＭＰＥ−ＦＥＣフレーム１００は、ＭＰＥ−ＦＥＣデコーダ（ＲＳ符号）で、起こりうる伝送エラーを訂正するために、できるだけ良好に再構成しなければならない。ＩＰデータグラムは、トランスポートストリームからＭＰＥセクション１５１を抽出することにより、取り出すことができる。ＭＰＥセクションのヘッダは、アプリケーションデータテーブル１０１に含まれるＩＰデータグラムの絶対アドレスを示す。同様に、ＲＳ符号のパリティバイトは、トランスポートストリームからＭＰＥ−ＦＥＣセクション１５２を抽出することにより取り出して、ＲＳデータテーブル１０２に入れることができる。また、ＭＰＥ−ＦＥＣセクションのヘッダも、ＲＳデータテーブル内の含まれるパリティ列の絶対アドレス情報を含んでいる。更に、ＭＰＥ−ＦＥＣセクション１５２単位で１つのパリティ列のみを伝送し、ＭＰＥ−ＦＥＣセクションヘッダが、その列位置を導出することができるシーケンス番号を含んでいるので、パリティ列に対するアドレス情報は、冗長となる。
【００２２】
アプリケーションデータテーブルの最終セクションは、アプリケーションデータテーブル内のＩＰデータグラムの終了を示す、テーブル境界フラグ（table_boundary flag）を含んでいる。アプリケーションデータテーブル内の全ての以前のセクションが、正しく受信されていたのであれば、受信機は、ＭＰＥ−ＦＥＣセクション１５２を受信する必要がなく、タイムスライシングを用いている場合に、ＲＳデータを受信して復号したりすることなく、スリープ状態に進むことができる。
【００２３】
受信に問題がある故に、１つ以上のＩＰデータグラムが受信されない場合には、アプリケーションデータテーブルにおけるその対応する位置を消去することができ、即ち、これらのワード位置がエラー状態にあるらしい旨をデコーダに知らせることができる。
【００２４】
ＭＰＥ−ＦＥＣ符号は、ｄ＝６５のハミング距離を有し、それ故、ｔ＝３２までのランダムエラー、又は、最大ｅ＝６４の消去箇所（信頼性情報が、これらの位置がエラーであるらしい旨を示すバイト位置）を訂正することが可能である。一般に、ｔ個のエラー及びe個の消去箇所の復号化は、２ｔ＋ｅ＜ｄであれば可能である。
【００２５】
ＭＰＥ−ＦＥＣ復号化を開始する前に、ＭＰＥ−ＦＥＣフレームを再構築する必要がある。これは、ＩＰ逆カプセル化を行って、ＲＳパリティ情報を収集しなければなければならないことを意味している。ＩＰデータグラムは、ＭＰＥセクション１５１にカプセル化する。ＭＰＥセクションのヘッダは、アプリケーションデータテーブル１０１におけるＩＰデータグラムのセクション長及びそのアドレスについての情報を与える。セクション長は、ＩＰデータグラム長に関連し、それは、ＩＰデータグラム長＋セクションヘッダ長（＝９バイト）＋ＣＲＣ長（＝４バイト）に等しい。ＭＰＥ−ＦＥＣセクションに関して、ＭＰＥ−ＦＥＣ長の計算も同様であり、セクションヘッダ長は、異なる値（＝５バイト）を有し、リアルタイムパラメータを含むエクストラフィールドはその等式に加えられる（＝４バイト）。
【００２６】
以下、ＭＰＥ−ＦＥＣフレームの再構成をより困難にさせる幾つかの状況を述べる。
【００２７】
次に、図３を参照するに、これはＩＰ逆カプセル化の一例を示している。この例では、ＭＰＥセクション１５１を、Ｎ個のＴＳパケット３０１に分配している。セクションヘッダ１５１．１及びＩＰデータグラム１５１．２の一部は、ＴＳパケット１の３０１．１におけるペイロード３０１．１．２として与えられている。そのＩＰデータグラムの残り及び３２ビットＣＲＣは、ＴＳパケット２の３０１．２からＮまでの３０１．Ｎ内に与えられている。伝送エラーは、ＭＰＥ−ＦＥＣフレーム１００の訂正再構築を複雑にしうる。以下の状況に区別する。
【００２８】
１．ＴＳパケット１の３０１．１がエラーであり、ｉ＝１（図５参照）としてのＴＳパケットヘッダ３０１．ｉ．１．２におけるトランスポートエラーインジケータ（ｔｅｉ）は、チャネルデコーダにおけるＲＳデコーダによって１に設定され、ＲＳデコーダがＴＳパケットを訂正できなかった旨を示す状況。この場合には、セクションヘッダが破損されることがあり、セクション長及びアプリケーションデータテーブルのアドレッシングについての信頼できる情報は全く入手できない。ＴＳデマルチプレクサのほとんどの実現例は、ｔｅｉ＝１でＴＳパケットを廃棄することになり、それ故、セクションヘッダが処理されなくなる（できなくなる）ため、アドレス情報及びセクション長の情報の双方が欠落することになる。１つの結末として、ＴＳパケット２からＮまでのペイロードは、例えこれらＴＳパケットを正しく受信したとしても、テーブルのアドレス情報が欠落している故に、直接ＭＰＥ−ＦＥＣフレームに入れることができなくなるということになる。ＩＰ逆カプセル化の直接的な実施では、前述したように、ＴＳパケット２からＮを無視し、次のＭＰＥセクションヘッダを待つことになり、これによりエラー伝搬を招くことになる。
【００２９】
２．ＴＳパケット１がエラーであるが、トランスポートエラーインジケータがゼロに設定される（ＲＳデコーダの訂正失敗）状況。ＴＳパケットのどこかに、エラーがあるはずである。エラーがＰＩＤ（パケット識別子）フィールド内にある場合には、そのパケットは、ＴＳデマルチプレクサによって選択されなくなる。後述の４も参照。
【００３０】
３．ＴＳパケット１は正しいが、１つ以上の他のＴＳパケットがエラーである状況。この状況では、セクション長及びアプリケーションデータテーブルのアドレッシングは信頼できる。正しいＴＳパケットのヘッダの連続性カウンタによって、エラーのＴＳパケット内にあるＩＰデータグラムのフラグメントを消去することを試みることができる。セクションヘッダは、２つのＴＳパケットに渡って分配されることも起こりうることに留意する。
【００３１】
４．Ｎ個のＴＳパケットのいずれもＲＳデコーダによってエラーとして検出されないが、ＣＲＣが失敗する状況。この場合には、ＲＳデコーダの１つ（又は複数）の検出失敗が行なわれたが、結局、ＴＳパケットのいずれがエラーであるかを見つけ出すことは不可能（困難）である。それ故、最初のＴＳパケットがエラーであるかもしれず、セクション長及びアプリケーションデータテーブルのアドレッシングは信頼性がない。エラーのセクション長を完全に信じる場合には、次のＭＰＥセクションに対する伝搬問題に遭遇しうる（長すぎるセクション長は、次のセクションの欠損したセクションヘッダを生じさせることになる。）ペイロードユニット開始インジケータ(pusi: payload unit start indicator)を用いることにより、伝搬エラーを制限することができる。
【００３２】
５．ＴＳパケット２からＮのうち１つが、ＰＩＤ値のエラーの故に、ＰＩＤフィルタによってろ波されない（選択されない）状況。この場合には、パケット削除があり、セクションの真の境界が無視される。これは、次のセクションに対するエラー伝搬を招くことになる。この削除エラーは、次のＴＳパケットヘッダにおける連続性カウンタで検出することができる。
【００３３】
６．ＰＩＤ値のエラーの故に、不所望のＴＳパケットが所望のＴＳパケット（値２からＮ）であるとみなされてしまう状況。ＴＳパケットヘッダにおける連続性カウンタを観測することにより、挿入エラーを検出できる。挿入エラー又は削除エラーは、それと等しい伝送エラーインジケータをおそらく伴うことになる。
【００３４】
図６に、セクションをＴＳパケットのペイロードに埋め込むことができる様々な方法の幾つかを示す。ポインタフィールド３０１．ｉ．２．１は、新たなセクションの開始を示し、且つ、新たなセクションが開始するときのみ与えられる（ＴＳパケットヘッダのペイロードユニット開始インジケータで示される。）。
【００３５】
ＩＰデータグラムの最大サイズは４０８０バイトであるが、ＴＳパケットは多くて１８４バイトのペイロードを含むことができる。フラグメントは、１つのＴＳパケットに含まれている１つのＩＰデータグラムの一部として規定される。
【００３６】
データグラムが、可能な限り効率的に連続したＴＳパケットへとパックされるものとすると、最大長さのＩＰデータグラムは、概ね以下の数に分割されると期待できる。
【００３７】
Ｎ＝［４０８０／１８４］＝２３フラグメント
【００３８】
更に、本発明では、ＴＳパケットヘッダにおけるＴＳ連続性カウンタ（ＣＣ）の使用が、エラー伝搬も低減させ（セクションの境界）、巡回冗長検査ＣＲＣ（cyclic redundancy check）を計算する前に、異常な結果を検出する。受信したＴＳパケットから、ＩＰフラグメントをフラグメントメモリ内に入れる。フラグメントメモリは、ＩＰデータグラムの受信が完了するまで、ＩＰデータグラムのフラグメントを格納するメモリである。ＴＳパケットヘッダの連続性カウンタ（ＣＣ）を用いて、フラグメントメモリにおけるフラグメントの位置（即ち、フラグメントポインタ）を（ある程度の確度まで）決定することができる。単一の欠損フラグメントも検出できる。連続性カウンタは４ビットであるので、その有効範囲は制限があることに留意する。
【００３９】
フラグメントは、スタッフィングの故に、長さを変更できる。プライベートセクションの場合、例えば、全内容を本願に取り入れる、ＩＳＯ／ＩＥＣ  １３８１８−１，情報技術−映画及び関連オーディオ情報の汎用符号化（Information Technology−Generic cording of moving pictures and associated audio information）: system，2nd edition 2000-12-01を参照すると、２つのメカニズムをスタッフィングのために用いることができる。アダプテーションフィールド(adaptation field)をスタッフィングに用いる場合には、これを、トランスポートストリームのヘッダに示す。アダプテーションフィールドを有する場合には、スタッフィングは実際のペイロードの前に行なう。別の態様のスタッフィングは、ＰＳＩ、及び、プライベートセクションに（従って、ＭＰＥセクションにも）専用化する。その場合、スタッフィングは、１つのセクションの最終バイトの後に行い、新たなセクションは、次のＴＳパケットでゼロの値を有するポインタフィールドから開始する。デコーダでは、この種のスタッフィングは、セクション長を用いることによって検出できる。即ち、１つのセクションの期待されるバイト数をＴＳパケットから読み出して、ペイロードユニット開始インジケータが新たなセクションの開始を示さないのであれば、残りのバイトはスタッフィングバイトであるはずである（スタッフィングバイトは、０ｘＦＦの値を有する。）。
【００４０】
最後に受信したフラグメントが同一のＩＰデータグラムに属するものとすると、セグメント長を用いて、セクションヘッダ内の利用可能なアドレス情報から、フラグメントアドレスを推定することが可能である。これらのフラグメントが同一のＩＰデータグラムに属していない場合（セクション長は、ＩＰデータグラムにとってフラグメントがいくつ必要とされるかのアイデアを与え、これは受信したフラグメントが、同一のＩＰデータグラムに属するか否かを決定するのに用いることができる）、その（まさしく）次のセクションヘッダのテーブルアドレスを用いることができ、これらのフラグメントを次のＩＰデータグラムの次の開始箇所の直前に置くことができる。
【００４１】
最初の欠損フラグメントと最終欠損フラグメントとの間にある、正しく受信したフラグメントを、フローティングフラグメントと称する。原理上、フローティングフラグメントは、アドレス情報を欠落している。全てのフラグメント（最初及び最終のものを除く）が同一の長さを有する場合には、アドレス内挿法を用いてフローティングフラグメントのアドレスを得ることができる。そうでない場合は、より高度な技法を必要とする（例えば、フローティングフラグメントの位置を推定できるような、ＭＰＥ−ＦＥＣフレームの部分的な復号化）。
【００４２】
ＩＰデータグラムのフラグメントは、異なるＴＳパケットに属するので、異なるレベルのソフトな消去情報（erasure information）を有することができる（例えば、訂正したエラーの数）。ＣＲＣ計算は、欠損フラグメントが全く検出されない場合にのみ有益である。
【００４３】
好適な実施例では、消去は、１８４バイト（ＴＳパケットのペイロード）単位で行なう。更に、ＴＳ連続性カウンタの使用は、エラー伝搬をも減少させ（セクションの境界）、ＣＲＣを計算する前に、異常な結果を検出する。
【００４４】
図８に、好適な実施例のＩＰ逆カプセル化のフローチャートを示す。ＩＰデータグラムをＭＰＥフレームに置く前に、ＩＰデータグラムのフラグメントを、図７に示すように、フラグメントメモリと称されるスクラッチメモリに入れる。破損したＴＳパケットの故に、ＩＰデータグラムのフラグメントが失われたとき、フラグメントメモリは、ＩＰデータグラムを効率的に再構成する。
【００４５】
図８のフローチャートでは、ＭＰＥセクションヘッダが、２つのトランスポートストリームパケットに分配されておらず、ユーザによって選択されるタイムスライスサービスが、ＰＩＤ値“Ａ”を有すると仮定する。
【００４６】
ステップ８０１では、ＴＳパケットヘッダ３０１．ｉ．１を、読み取られる。ステップ８０２では、パケット識別子をチェックして、それが“Ａ”と等しいか否かを確かめる。基本ストリーム（例えばタイムスライスサービス）は、ＴＳヘッダのＰＩＤ値によって特徴付けられる。ＰＳＩ（Program Specific Information）テーブルにて、基本ストリームとＰＩＤ値との間のマッピングが為されるので、受信機は、このテーブルに基づいて、そのＰＩＤ値が所望の基本ストリームのものであることを知ることができる。図８で、値“Ａ”は、所望のタイムスライスサービスのＰＩＤ値を表す。所望のサービスでなければ、次のＴＳパケットヘッダを、ステップ８０１を実行することにより読み取られる。パケット識別子ＰＩＤが“Ａ”と等しければ、ステップ８０３で、トランスポートエラーインジケータ（ｔｅｉ）がオンであれば、現在のパケットがエラーを含んでいるので、次のＴＳパケットヘッダを、ステップ８０１を実行することにより読み取る。ｔｅｉインジケータがオフであれば、ステップ８０３で、ペイロードユニット開始インジケータをチェックして、新たなセクションが開始するか否かを確かめる。
【００４７】
ステップ８０６で、新たなペイロードが開始することがなければ、ステップ８０６で、連続性カウンタ（ＣＣ）をシャドウカウンタ（ＳＣ）に対してチェックし、ＣＣ＝ＳＣであれば、ステップ８１４を実行する。ＣＣ≠ＳＣであれば、少なくとも１つのパケットが欠損している（ｐｕｓｉ＝０は、新たなセクションヘッダがＴＳパケットのペイロードで開始することがなく、それ故、現在のＩＰデータグラムのＩＰ逆カプセル化が新たなフラグメントを取り出すことにより続けられることを意味する）。
【００４８】
ステップ８０８では、不連続性カウンタをインクリメントし（ＤＣ：＝ＤＣ＋１）、欠損フラグメントカウンタ（Ｋ）及びフラグメントポインタ（ＦＰ）の双方を、連続性カウンタ（ＣＣ）とシャドウカウンタ（ＳＣ）との間の差のＭｏｄ（１６）でインクリメントさせ、最終の欠損フラグメント（ＬＭＦ）を、フラグメントポインタの新たな値（ＦＰ）−１に設定する。これは、２つ以上のフラグメント（即ち、ＴＳパケット）が欠損していた（失われていた）かもしれないからである。これが、最初の欠損フラグメント、即ちステップ８１０でＦＭＦがヌル、であれば、ステップ８１２で、その最初の欠損フラグメント（ＦＭＦ）を、フラグメントポインタＦＰ−１に設定し、シャドウカウンタ（ＳＣ）を、連続性カウンタ（ＣＣ）に等しく設定する。これが、最初の欠損フラグメントであるか否かに関わらず、現在のフラグメントはエラーにはならず、ステップ８１４を実行する。カウンタ（Ｋ）は、連続性カウンタ（ＣＣ）とシャドウカウンタ（ＳＣ）との差に基づいて、欠損フラグメントの数をカウントする。不連続性カウンタ（ＤＣ）は、不連続の数をカウントする。ＤＣの値から、フローティングフラグメントグループ（１つのグループは、フローティングしている少なくとも１つ以上の連続フラグメントである）の数、即ち、Ｆ：＝ＤＣ−１を導出することができる。
【００４９】
ステップ８１４では、現在のペイロードを、フラグメントポインタ（ＦＰ）によって示される位置でフラグメントメモリに格納し、フラグメントポインタは、フラグメントメモリ（ＦＭ）における次のフラグメントに対してインクリメントし（ＦＰ：＝ＦＰ＋１）、シャドウカウンタ（ＳＣ）は１だけインクリメントする（ＳＣ：ＳＣ＋１）。次のＴＳパケットヘッダは、ステップ８０１を実行することにより読み取る。
【００５０】
ステップ８０５では、新たなセクションが開始しているとき（ｐｕｓｉ≠０）、ＴＳヘッダのポインタフィールドをチェックし、新たなセクションがポインタフィールド（ポインタフィールド＝０）の直後に開始しているか否かを確かめ、そうであればステップ８１８を実行する（これは、図６の第２行で示した状況に対応する）。そうでなければ（ポインタフィールド≠０）、現在のセクション（即ち、ＩＰデータグラム）の最終のフラグメントを、新たなセクションのセクションヘッダを読み取る（ステップ８１８）前に、ＴＳパケットペイロードから取り出す（ステップ８０７など）。“ｐｕｓｉ”は、ペイロードユニット開始インジケータを表し、このフラグは、トランスポートパケットのペイロードのどこかで、新たなペイロード（セクション）の開始を表す。ポインタフィールド（ＰＦ）は、新たなセクションが開始するトランスポートパケット（図６参照）の位置を示す。
【００５１】
ステップ８１８では、ＴＳパケットペイロード内のセクションヘッダ（そのペイロードのポインタフィールドによって示される）を読み取る。ＩＰデータグラムの受信が完了しているので、ステップ８２０で、フラグメントメモリの内容を、ＭＰＥ−ＦＥＣフレーム（ＭＦＦ）のアプリケーションデータテーブルへと転送する。ＭＰＥ−ＦＥＣフレームの受信は、全てのＩＰデータグラム（テーブル境界フラグで示される）及び全てのＲＳデータ列（フレーム境界フラグで示される）が受信された後に完了する。次に、ＭＰＥ−ＦＥＣ復号化を開始できる。ＭＰＥ−ＦＥＣ復号化が終了すると、アプリケーションデータテーブル（即ち、ＩＰデータグラム）をアプリケーションエンジン（実際のアプリケーションを移動／携帯機器で実行させる種類のホストプロセッサ）に転送することができ、シャドウカウンタ（ＳＣ）が、連続性カウンタ（ＣＣ）＋１に設定し（ＳＣ：＝ＣＣ＋１）、フラグメントポインタ（ＦＰ）はゼロにリセットし、最初の欠損フラグメント（ＦＭＦ）及び最終欠損フラグメント（ＬＦＭ）は双方ともヌル（ＮＵＬＬ）にリセットする。次に、ステップ８０１を実行して、次のＴＳパケットヘッダを読み取る。
【００５２】
ステップ８０５で、ＴＳパケットペイロードのポインタフィールド（ＰＦ）がゼロでない場合、そのペイロードは、（新たな）セクションヘッダ以外にも、現在のセクションからの残余（図６の列３を参照）を含み、連続性カウンタ（ＣＣ）は、ステップ８０７でシャドウカウンタ（ＳＣ）と等しいはずであり、又は、少なくとも１つのパケットが欠損している。少なくとも１つのパケットが欠損していた場合、ステップ８０９〜８１３を実行して、少なくとも１つのパケットを欠損しているとして記録し、フラグメントポインタ（ＦＰ）を、欠損したパケットの後に続くフラグメントに適合させ、シャドウカウンタ（ＳＣ）を、連続性カウンタ（ＣＣ）に等しく設定する。いずれの場合にも、ステップ８１５で、そのペイロードを、フラグメントポインタ（ＦＰ）によって示される位置で、フラグメントメモリ（ＦＭ）に格納される。ステップ８１６では、最初の欠損フラグメント（ＦＭＦ）がヌルの場合に、フラグメントメモリの内容が正しいことを示して、ステップ８１７で、ＣＲＣ処理を実行する。次に、いずれにしても、ステップ８１８を実行して、ＴＳパケットペイロードに含まれるセクションヘッダを読み取る。シャドウカウンタ（ＳＣ）は、トランスポートストリームの不連続性（変形ＴＳパケット）を検出するためにある。セクションの終わり及び新たなセクションの開始部の双方が欠損している場合には、フラグメントメモリに書き込まれているペイロードは２つ以上の異なるＩＰデータグラムに属することになる。この場合、フラグメントメモリはかなり小さくすることができる。（セクション長を用いて）フラグメントの期待した数を計算することにより、ペイロードが２つ以上のＩＰデータグラムに属するか否かの何らかの指標を得ることが可能である。これは、フラグメントをＭＰＥ−ＦＥＣフレームに入れやすくする結果をもたらすことにもなる（アドレスの内挿及び外挿法）。
【００５３】
図８のフローチャートでは、分配されるセクションヘッダ（即ち、２つのＴＳパケットに分配されるセクションヘッダ）は、考慮していない。従って、セクションヘッダを幾つかのＴＳパケットに分配することができるようにするために、そのフローチャートを適合させなければならないが、当業者であればこの適合を容易に実現できるので、図８には含めていない。更に、２つ以上のセクションを１つのＴＳパケットに与えることもできる（また、これも同一の理由で図８には含めていない。）。
【００５４】
ＣＲＣ処理の結果は、消去の割り当てに用いられる。
【００５５】
次いで、図９を参照するに、これはＭＰＥ−ＦＥＣフレームメモリ１００４への、フラグメントメモリ７００の列７０６．ｉに格納されているフラグメントの転送のフローを示す。
【００５６】
欠損フラグメントの数は、Ｋとする。
【００５７】
フローティングフラグメントグループの数は、Ｆとする。
【００５８】
ＬＲＦは、受信したフラグメントの長さの合計とする。
【００５９】
ＬＳＣは、セクションペイロードの長さとする（例えば、ＩＰデータグラムの長さ）。この説明及び手順は、ＭＰＥセクション及びＭＰＥ−ＦＥＣセクションの双方に適用することを意図している。ＩＰデータグラムは、説明のためのみの一例として用いる。
【００６０】
ステップ９０２では、欠損フラグメントがあるか否かを判定するための検査を行う（Ｋ＞０？）。欠損フラグメントがなければ（Ｋ＝０）、フラグメントメモリ７００の全てのフラグメント７０６．ｉは、ステップ９０３で、ＭＰＥ−ＦＥＣフレームメモリ１００４に直接入れる。フラグメントメモリ７０６．ｉにおけるフラグメントは、ＭＰＥ−ＦＥＣフレームメモリ１００４に連続して入れるので、アドレスの曖昧性はない。
【００６１】
ステップ９０２で、Ｋ＞０であれば、欠損フラグメントがあることになるが、欠損フラグメントの長さは不明である。アダプテーションフィールドのスタッフィングを用いない場合には、ＴＳパケットのペイロードをセクションデータ用に全面的に用いる。即ち、欠損フラグメントは、長さ１８４バイトを有するはずである。ステップ９０４で、ＬＲＦ＋Ｋ＊１８４＜＝ＬＳＣを満たすか否かを検査し、ステップ９０５で、フローティングフラグメントの存在を検査する。フローティングフラグメントのグループが全く存在しない場合（Ｆ＝０）には、欠損フラグメントは連続しており、フラグメント７０６．ｉがフラグメントメモリ７０５に格納されるセクション（例えば、ＩＰデータグラム）にギャップがあることになる。次に、そのギャップの長さを、そのセクションペイロードの長さと全ての受信したフラグメントの長さとの差として求め、ステップ９０７で以下のように求める。
【００６２】
ΣＬＭＦ：＝ＬＳＣ−ＬＲＦ
【００６３】
ステップ９１３では、全ての欠損フラグメントの全長を、ΣＬＭＦに等しく設定する。
【００６４】
ステップ９１４では、消去情報を欠損フラグメント及びフローティングフラグメントに割り当て、欠損フラグメントを消去する。次に、（連続した）欠損フラグメントと共に受信したフラグメントを、フラグメントメモリ７００に格納される、受信したセクションヘッダ７０５に含まれるＭＰＥ−ＦＥＣフレームテーブルアドレスを用いて、ＭＰＥ−ＦＥＣフレームに連続的に入れる。少なくとも１つのフローティングフラグメントグループがある場合、即ちステップ９０５でＦ≠０の場合、には、少なくとも２つの欠損フラグメント（少なくとも１つのフローティングフラグメントグループの少なくとも１つ前及び少なくとも１つ後）があることになる。ステップ９０６では、これら欠損フラグメントが長さ１８４バイト（最大のパケットペイロード長さ）を有するか否かを、次式を満たすか否かを検査することによって決定する。
【００６５】
ＬＲＦ＋Ｋ＊１８４＝＝ＬＳＣ
【００６６】
そうであれば、ステップ９０８で、全ての欠損フラグメントの長さ７０３．ｉを、フラグメントの最大長さ、即ち１８４バイトに割り当て、そして、欠損フラグメントの長さ１８４を用い、フラグメント７０６．ｉを連続的にＭＰＥ−ＦＥＣフレーム１００４に入れ、消去情報を欠損フラグメント及びフローティングフラグメントに割り当てることにより、フローティングフラグメントを含む全てのフラグメント７０６．ｉをＭＰＥ−ＦＥＣフレーム１００４に入れるように、ステップ９１０が実行する。
【００６７】
欠損フラグメントの長さが全て１８４バイトでなければ、即ちステップ９０６での検査が失敗した場合には、少なくとも１つの欠損フラグメントは、長さ＜１８４を有することになる（アダプテーションフィールドのスタッフィングを対応するＴＳパケットに適用することは明らかである）。欠損フラグメントのどれが１８４より小さいサイズを有するかについて知る術が全くないので、フローティングフラグメントをＭＰＥ−ＦＥＣフレーム１００４のどの箇所に入れるかを決定することはできない。それ故、ステップ９１１で、欠損フラグメント及びフローティングフラグメントの双方を消去し、欠損フラグメントとフローティングフラグメントとの組み合わせを、セクション（例えばＩＰデータグラム）におけるギャップ（ホール）とする。ステップ９１１で、残りの受信したフラグメント（セクションヘッダの直後及びＣＲＣの直前）を、セクションヘッダ７０５のセクション長７０５．１及びＭＰＥ−ＦＥＣフレームテーブルアドレス７０５．２を用いてＭＰＥ−ＦＥＣフレーム１００４に入れることができる。
【００６８】
ステップ９０４で、ＬＲＦ＝Ｋ＊１８４＞ＬＳＣとなる場合には、１つ以上のセクションヘッダが受信されていないか、又は、誤って受信されており、フラグメントメモリ７００は２つ以上のセクション、例えばＩＰデータグラム、のフラグメント７０６．ｉを含む。これは、連続性カウンタ（ＣＣ）及びセクション長７０５．１を用いて検出することもできる。サイズＬの１つのセクション、例えば１つのＩＰデータグラム、を転送するのに必要とされるＴＳパケットの数は、約Ｌ／１８４であり、その数は最終のフラグメントを含むＴＳパケットのＣＣ値３０１．ｉ．１．８と最初のフラグメントを含むＴＳパケットのＣＣ値３０１．ｉ．１．８との差である（ＣＣにはモジュロ１６が割り当てられるので、ラップアラウンドを容認しなければならない）。この場合、セクションヘッダ７０５の直後に受信していたフラグメントは、フラグメントメモリ７００に格納されるセクションヘッダ７０５に与えられるＭＰＥ−ＦＥＣフレームテーブルアドレス７０５．２を用いて、ＭＰＥ−ＦＥＣフレーム１００４に入れる。ステップ９１２では、ＣＲＣの直前に受信したフラグメント及び別のＩＰデータグラムに属する新たなセクションヘッダを、新たなセクションヘッダに与えられるＭＰＥ−ＦＥＣフレームテーブルアドレス７０５．２を用いて、ＭＰＥ−ＦＥＣフレームに入れる。これは、これら最終のフラグメント及び新たなセクション、例えばＩＰデータグラム、のフラグメントをＭＰＥ−ＦＥＣフレームに連続して入れるべきであることが分かっているので可能である。しかしながら、フローティングフラグメントをＭＰＥ−ＦＥＣフレーム１００４に位置付けることに関しては、あまりにも多くの不確定要素が残っているので、その対応する箇所は消去する。
【００６９】
次いで、図１０を参照するに、ここには本発明によって変更した逆カプセル化装置１００１を備える受信機を示しており、逆カプセル化装置１００１は、喪失部分を１８４バイトに制限するようにフラグメントメモリ７００を用いる。受信機のみを変更する必要があることに留意し、ＭＰＥ−ＦＥＣを意識しない受信機は、ＭＰＥ−ＦＥＣに対するサポートを義務化しないように、単にＭＰＥ−ＦＥＣセクションを無視する。図１１は、本発明によってＭＰＥ損失量を１８４バイトの割合に制限するようにＤＶＢ−Ｈ受信機を変更できる、ＤＶＢ−Ｈ専用ネットワークを示している。
【００７０】
本発明の好適な実施例を示し、説明したが、上述したような管理フレーム、デバイスアーキテクチャ及び方法は、例証であり、本発明の趣旨から逸脱することなく、様々な変更及び変形を行なうことができ、その要素と等価に構成できることは、当業者に明らかである。更に、趣旨から逸脱することなく、本発明の教示を特定の状況に適合させるために、多くの変形を行なうことができる。それ故、本発明を実行するために説明した最良形態として開示した特定の実施例に、本発明を限定するものではなく、本発明は、特許請求の範囲に表される全ての実施例を含むことを意図している。
【図面の簡単な説明】
【００７１】
【図１Ａ】ＭＰＥ−ＦＥＣフレームの構成を示す図である。
【図１Ｂ】図１ＡのＭＰＥ−ＦＥＣフレームに対応する伝送用のセクションのシーケンスを示す図である。
【図２】ＭＰＥ−ＦＥＣフレームのアプリケーションデータテーブル部分を示す図である。
【図３】ＭＰＥ−ＦＥＣフレームのＩＰデータグラムを如何にして伝送用のＴＳパケットへと分散させるかを示す図である。
【図４】ＭＰＥ−ＦＥＣフレームのリードソロモンデータテーブルを示す図である。
【図５】ＭＰＥ−ＦＥＣフレーム伝送用のＴＳパケットフォーマットを示す図である。
【図６】ＩＰデータグラムを如何にしてＴＳパケットの伝送用ＭＰＥセクショに分散させるかを示す図である。
【図７】本発明により変更したＤＶＢ−Ｈ逆カプセル化装置によるＭＰＥフレームの再構成のためのフラグメントテーブル又はフラグメントメモリを示す図である。
【図８】本発明により変更した逆カプセル化装置による、フラグメントメモリを用いたＭＰＥフレームの再構成のフローチャートである。
【図９】フラグメントメモリからフレームメモリへの、少なくとも１つのセクション転送のフローチャートである。
【図１０】本発明によるＤＶＢ−Ｈ逆カプセル化装置を備えるように変更したＤＶＢ受信機を示す図である。
【図１１】ＤＶＢ−Ｈ専用ネットワークを示す図である。
【図１Ａ】
2008527896.tif 000003
【図１Ｂ】
2008527896.tif 000004
【図２】
2008527896.tif 000005
【図３】
2008527896.tif 000006
【図４】
2008527896.tif 000007
【図５】
2008527896.tif 000008
【図６】
2008527896.tif 000009
【図７】
2008527896.tif 000010
【図８】
2008527896.tif 000011
【図９】
2008527896.tif 000012
【図１０】
2008527896.tif 000013
【図１１】
2008527896.tif 000014
【国際調査報告】
2008527896.tif 000015