Signal encoding and decoding method and apparatus

申请号 JP2010508449 申请日 2008-05-16 公开(公告)号 JP5317223B2 公开(公告)日 2013-10-16
申请人 トムソン ライセンシングThomson Licensing; 发明人 ダブリユー シッタ,リチヤード; エム ロプレスト,スコツト;
摘要 New capabilities will allow conventional broadcast transmission to be available to mobile devices. A method is described including the steps of receiving data, encoding the data using a first encoding process, inserting training data into the encoded data, and encoding the encoded data and the training data using a second encoding process. An apparatus is also described including a first encoder receiving at least a portion of data and encoding the portion of data using a first encoding process, a training data inserter inserting training data into the first encoded data, and a second encoder encoding the first encoded data and the training data using a second encoding process.
权利要求
  • テレビジョン放送システムにおいて使用される、データ符号化器でデータを符号化する方法であって、該方法は、
    前記データ符号化器の入力でデータを受信するステップ であって、該受信したデータはパケットに配列される、前記ステップと、
    第1のバイトコード符号化処理を使用して前記データを符号化するステップ であって、該符号化されたデータはシステマティックな部分と非システマティックな部分を含み、該システマティックな部分は前記受信したデータのパケットの一部であり、前記非システマティックな部分は前記システマティックな部分、及び他のシステマティックな部分と非システマティックな部分に基づいて生成される前記ステップと、
    前記符号化されたデータをインタリーブするステップと、
    第2のバイトコード符号化処理を使用して前記インタリーブされたデータを符号化するステップ であって、前記インタリーブされたデータの前記システマティックな部分と前記非システマティックな部分を符号化することを含む前記ステップと、を含
    前記インタリーブするステップは、前記システマティックな部分と前記非システマティックな部分のサイズの整数倍であり、そして受信したデータのパケットサイズより小さいインタリーバ長を使用して行われる、前記方法。
  • 前記第1のバイトコード符号化処理および前記第2のバイトコード符号化処理が前記データを補足するためのガロア体生成行列を使用する、請求項1に記載の方法。
  • 前記生成行列は、ガロア体GF上で(1 2)
    のように定義される、請求項2に記載の方法。
  • 前記生成行列が1/2レートの符号化レートを生成する、請求項3に記載の方法。
  • 前記生成行列がガロア体GF上で、
    のように定義される、請求項2に記載の方法。
  • 前記生成行列が2/3レートの符号化レートを生成する、請求項5に記載の方法。
  • 前記第1のバイトコード符号化処理および前記第2のバイトコード符号化処理が相異なる符号化レートを使用する、請求項1に記載の方法。
  • 前記受信するステップにおける前記データが、各々が187バイトのデータを含むパケットに配列される、請求項1に記載の方法。
  • 前記符号化され、インタリーブされたデータをパンクチャするステップをさらに含む、請求項1に記載の方法。
  • 前記パンクチャするステップは、前記符号化され、インタリーブされたデータからデータの一部を取り除くステップを含む、請求項9に記載の方法。
  • 前記パンクチャするステップにより、パンクチャされたデータの各バイトのグループが形成され、前記グループにおけるバイトの数が26の倍数である、請求項10に記載の方法。
  • 前記パンクチャするステップにより、パンクチャされたデータの各バイトのグループが形成され、前記グループにおけるバイトの数が24の倍数である、請求項10に記載の方法。
  • 前記第1のバイトコード符号化処理を使用する符号化ステップは、前記受信されたデータの各バイトのグループを符号化するステップを含む、請求項1に記載の方法。
  • 前記インタリーブするステップにおいて使用されるバイトの数は前記第1のバイトコード符号化処理によって出力される出力バイトの数と等しい、請求項13に記載の方法。
  • 前記インタリーブは、ホワイト・ノイズ・レベルでのバイト・エラー・レートを低下させることに基づくように構成される、請求項1に記載の方法。
  • 前記インタリーブが以下のテーブルに従って行われる、請求項1に記載の方法。
  • 前記インタリーブが以下のテーブルに従って行われる、請求項1に記載の方法。
  • 前記第1のバイトコード符号化処理および第2のバイトコード符号化処理がガロア体GF直列連結型ブロックコード処理に含まれる、請求項1に記載の方法。
  • テレビジョン放送システムにおいて使用される装置において、
    データを受信し、 該受信したデータはパケットに配列され、第1のバイトコード符号化処理を使用して前記データを符号化 し、該符号化されたデータはシステマティックな部分と非システマティックな部分を含み、前記システマティックな部分は前記受信したデータのパケットの一部であり、前記非システマティックな部分は前記システマティックな部分、及び他のシステマティックな部分と非システマティックな部分に基づいて生成される、第1の符号化器と、
    前記第1の符号化器に結合されて前記第1の符号化器から前記符号化されたデータを受信し、前記データの順序を付け直 し、前記システマティックな部分と前記非システマティックな部分のサイズの整数倍であり、そして受信したデータのパケットサイズより小さいインタリーバ長を使用する、インタリーバと、
    前記インタリーバに結合されて前記順序を付け直されたデータを受信し、第2のバイトコード符号化処理を使用して前記順序を付け直されたデータを符号化 し、前記インタリーブされたデータの前記システマティックな部分と前記非システマティックな部分を符号化する、第2の符号化器と、を含む 前記装置。
  • 前記インタリーバは、ホワイト・ノイズ・レベルでのバイト・エラー・レートを低下させることに基づいて前記データの順序を付け直す、請求項 19に記載の装置。
  • 前記第1の符号化器および前記第2の符号化器が前記データを補足するためのガロア体生成行列を使用する、請求項 19に記載の装置。
  • 前記第1の符号化器のための前記生成行列は、ガロア体GF上で(1 2)
    および
    のうちのいずれか一方のように定義され、
    前記第2の符号化器のための前記生成行列は、ガロア体GF上で(1 2)
    および
    のうちのいずれか一方のように定義される、請求項 21に記載の装置。
  • 前記第1の符号化器および前記第2の符号化器は、相異なる符号化レートを使用してデータを符号化する、請求項 19に記載の装置。
  • 前記第1の符号化器は、1/2レートおよび2/3レートのうちの一方の符号化レートでデータを符号化し、前記第2の符号化器は、1/2レートおよび2/3レートのうちの一方の符号化レートでデータを符号化する、請求項 19に記載の装置。
  • 前記第2の符号化器に結合されたパンクチャ・ブロックをさらに含み、前記パンクチャ・ブロックは、前記第2の符号化器から出力された、符号化されたデータの少なくとも一部を取り除く、請求項 19に記載の装置。
  • 前記受信されたデータが、各々が187バイトのデータを含むパケットに配列される、請求項 19に記載の装置。
  • 前記パンクチャ・ブロックに結合されたパケタイザ・ブロックをさらに含み、前記パケタイザ・ブロックは、24個のパケット、26個のパケット、および52個のパケットのうちのいずれかの数のパケットのグループからなるパンクチャされたパケットのグループを出力する、請求項 26に記載に装置。
  • 前記第1のバイト符号化器および前記第2の符号化器がガロア体GF直列連結型ブロック符号化器に含まれる、請求項 19に記載の装置。
  • テレビジョン放送システムにおいて使用される装置において、
    第1のバイトコード符号化処理を使用して前記データを符号化する手段 であって該符号化されたデータはシステマティックな部分と非システマティックな部分を含み、前記システマティックな部分は前記受信したデータのパケットの一部であり、前記非システマティックな部分は前記システマティックな部分、及び他のシステマティックな部分と非システマティックな部分に基づいて生成される、前記符号化する手段と、
    前記符号化されたデータをインタリーブする手段 であって、前記システマティックな部分と前記非システマティックな部分のサイズの整数倍であり、そして受信したデータのパケットサイズより小さいインタリーバ長を使用する、前記インタリーブする手段と、
    第2のバイトコード符号化処理を使用して前記インタリーブされたデータを符号化する手段 であって、前記インタリーブされたデータの前記システマティックな部分と前記非システマティックな部分を符号化することを含む、前記符号化する手段と、を含む 前記装置。
  • 前記第1のバイトコード符号化処理を使用して符号化する手段および前記第2のバイトコード符号化処理を使用して符号化する手段が前記データを補足するためのガロア体生成行列を使用する手段を含む、請求項 29に記載の装置。
  • 说明书全文

    (関連出願とのクロスリファレンス)
    本出願は、米国特許法第119条に基づいて、2007年5月16日付で米国に出願された仮特許出願第60/930683号、2007年5月17日付で米国に出願された仮特許出願第60/930591号、2007年6月20日付で米国に出願された仮特許出願60/936360号、さらに、2007年7月6日付で米国に出願された仮特許出願60/58581号の優先権を主張する。

    本願の開示内容は、一般的には、ディジタル放送システムの処理に関し、より具体的には、モバイル用、歩行者用、さらに、個人用の機器によって使用されることが意図された放送テレビジョンのためのデータの符号化および復号に関する。

    この項は、読者に対し、以下に説明するような、本発明の様々な態様に関連する技術の様々な態様を紹介することを意図している。 この説明は、読者に対し、本発明の様々な態様をより良好に理解するための背景情報を提供するのに役立つものと確信する。 従って、各記載は、この点に鑑みて読まれるべきものであり、先行技術を自認するものではないことが理解できよう。

    テレビジョン放送システムは、世界中で、アナログのオーディオおよびビデオ信号の配信から、現代のディジタル通信システムに移行していている。 例えば、米国において、ATSC(Advanced Television Standards Committee)は、「ATSC規格:ディジタル・テレビジョン規格A/53(A53規格)と呼ばれる規格を策定した。A53規格は、ディジタル・テレビジョン放送のためのデータがどのように符号化、復号されるべきであるかを規定している。さらに、米国連邦通信委員会(FCC:Federal Communications Commission)は、電磁スペクトラムをテレビジョン放送のために、部分的に割り当てている。FCCは、割り当てられた部分の中での連続する6MHzのチャンネルを地上(即ち、ケーブルや衛星でない)ディジタル・テレビジョン放送の送信のために放送者に割り当てている。6MHzの各チャンネルは、A53規格における符号化および変調のフォーマットに基づいて、約19Mb/秒のチャンネル・キャパシティを有する。さらに、FCCは、この6MHzのチャンネルを介した地上ディジタル・テレビジョン・データの送信がA53規格に従っていなければならないことを求めている。

    A53規格は、どのようにソース・データ(例えば、ディジタル・オーディオおよびビデオ・データ)が処理され、チャンネルを介して送信される信号に変調されるべきかを規定している。 この処理により、ソース・データに冗長情報が付加されるので、チャンネルから信号を受信する受信機は、チャンネルでノイズやマルチパス干渉が送信される信号に加えられた場合であっても、ソース・データを復元することができる。 ソース・データに付加される冗長情報は、ソース・データが送信される際の実効データ・レートを低下させるが、送信される信号からソース・データを復元できる可能性を高めるものである。

    図1は、A53規格に準拠した信号を送信する典型的な送信システム100のブロック図である。 送信ソース(TS)102によってデータが生成され、この際、データは、複数のパケットに配列される。 各パケットは、187バイトのサイズを有しており、1つ以上の符号語を含むことがある。 各パケットは、3バイトのヘッダを含み、そのうちの13ビットは、パケットにおいて送信されるデータのタイプを識別するパケットID(PID)である。 例えば、0x11(16進法の11)の値を有するPIDを含むパケットは、第1のビデオ・ストリームを有するものとしてコンテンツを識別し、0x14の値を有するPIDを含むパケットは、第1のオーディオ・ストリームとしてこのようなパケットのコンテンツを識別する。 データ・ランダマイザ104は、パケットをランダム化し、パケットをリード・ソロモン(Reed−Solomon)符号化器106に提供する。 リード・ソロモン符号化器106は、20個のパリティ・バイトを算出し、このパリティ・バイトをランダム化されたデータに連結して207バイトを有するリード・ソロモン(R−S)パケットを作成する。

    畳み込みインタリーバ108は、時間内にデータをさらにランダム化するために、R−Sパケットをインタリーブする。 トレリス符号化器110は、インタリーブされたパケットを符号化し、828個の3ビット・シンボルのブロックを作成する。 A53規格は、12個のトレリス符号化器を使用することを規定し、各トレリス符号化器は、2/3レートのトレリス符号化器であり、インタリーブされたパケット内に存在する2ビット毎に3ビット・シンボルを作成する。 結果として、トレリス符号化器110は、逆多重化器と、12個の並列な2/3レートのトレリス符号化器と、多重化器とを含む。 畳み込みインタリーバ108からのデータは、逆多重化され、12個のトレリス符号化器に分配され、12個のトレリス符号化器によって作成されたシンボルは多重化され、各シンボルのストリームとなる。

    シンク多重化器112は、各828個のシンボルのブロックの最初に4個の所定のセグメント・シンク・シンボルを挿入し、832個のシンボル・セグメントを作成する。 さらに、シンク多重化器112は、作成される312個のセグメント毎に832個のシンボルを含むフィールド・シンクを挿入する。 特に、フィールド・シンク・シンボルは、この312個のセグメントの前にある。

    8−VSB変調器114は、8−VSB(Vestigial SideBand(残留側波帯))変調を使用した搬送波信号の変調に、トレリス符号化器110によって符号化されたデータ、セグメント・シンク・シンボル、さらに、フィールド・シンクを含む多重化されたシンボルを使用する。 具体的には、8−VSB変調器114は信号を生成し、この信号の振幅は、各々が特定の3ビット・シンボルに対応する8個のディスクリート・レベルのうちの1つにある。 その後、この信号は、図示しない回路を用いて、ディジタルからアナログの信号形式に変換され、無線周波数にアップコンバートされる。 無線周波数信号は、アンテナ116を使用して送信される。 典型的には、データ・ランダマイザ104、リード・ソロモン符号化器106、畳み込みインタリーバ108、および、トレリス符号化器110の組み合わせは、8−VSB符号化器120と呼ばれる。 8−VSB符号化器120は、A53符号化器またはATSC符号化器とも呼ばれる。

    送信ソース102により生成されたデータは、ISO/IEC(International Standards Organization/International Electrotechnical Commission)13818−2形式に相当するMPEG(Motion Picture Entertainment Group)2形式を使用してソース符号化されるビデオを含む。 送信ソース102は、さらに、AC−3(Dorby Arc Consistency algorithm #3) を使用してソース符号化されるオーディオを含む。 さらに、A53規格は、番組ガイド・データなど、他の番組要素のためのメタデータの使用を可能にし、このような番組要素は、他の方法を用いてソース符号化することができる。 さらに、A53規格は、標準解像度のインターレース方式のテレビジョン品質からプログレッシブ・スキャン広画面高解像度品質に渡った様々なビデオ品質レベル、表示形式でのビデオの送信を可能にする。 FCCは、放送者がA53規格を使用して送信ソース102によって生成されたデータを符号化することを要求している。 ディジタル・テレビジョン番組放送の送信が、割り当てられたチャンネルの19Mb/秒のキャパシティ全てを必要とするものではない場合には、放送者が、余分のキャパシティを使用して他のサービスを、携帯型受信機や携帯電話などの機器に対して放送することも考えられる。 しかしながら、FCCは、余分のキャパシティを使用して他機器などに送信されるデータがA53規格に従って送信されなければならないことを要求している。 A53規格の変更は可能であり、その変更は、ATSCによって検討されているが、既存の、または、いわゆるレガシーなディジタル・テレビジョン受信機を引き続き使用できるようにする進展が必要である。 同様に、既存のA53規格に従った信号の送信は、レガシーな符号化および送信と呼ばれる。

    図2は、既存の、または、レガシーなA53規格に準拠した受信信号からソース情報を抽出するのに使用される受信機200のブロック図を示している。 アンテナ202は、電波を通じて送信された電磁信号から受信電気信号を生成する。 アナログ・デジタル(A/D)変換器204は、受信信号のディジタル・サンプルを生成し、トレリス復号器206は、ディジタル・サンプルを復号して、データストリームにおいてトレリス復号されたビット推定値のストリームを生成する。 A/D変換器204は、受信信号内の所望のチャンネルを受信するチューナなどの追加的なフロント・エンド処理回路をさらに含むことがある。 既存の、または、レガシーなA53規格に従って、トレリス復号器206は、1個の逆多重化器、12個の2/3レートのトレリス復号器、さらに、信号多重化器を含む。 逆多重化器は、12個の2/3レートのトレリス復号器にディジタル・サンプルを分配し、多重化器は、12個の2/3レートのトレリス復号器の各々によって生成された推定値を多重化する。

    畳み込みデインタリーバ208は、トレリス復号されたビット推定値のストリームをデインタリーブし、207バイトを含むように配列されたシーケンスまたはパケットを作成する。 パケットの配列は、同期信号の位置の判定および識別に関連して実行される。 リード・ソロモン・エラー訂正回路210は、デインタリーバ208によって生成された207バイトの各シーケンスを1つ以上の符号語として考慮し、送信の間に発生したエラーによって符号語またはパケットにおけるバイトに破損が生じているかどうかを判定する。 この判定は、多くの場合、符号語の一連のシンドロームまたはエラー・パターンの算出および評価を行うことによって実行される。 破損が検出されれば、リード・ソロモン・エラー訂正回路210は、パリティ・バイトに符号化される情報を使用して破損されたバイトの復元を試行する。 結果として生ずるエラー訂正されたデータストリームは、次に、デランダマイザ212によって非ランダム化され(de−randomized)、その後、データストリームは、送信されるコンテンツのタイプに従って復号するデータ復号器214に提供される。 通常、トレリス復号器206、デインタリーバ208、リード・ソロモン復号器210、さらに、デランダマイザ212の組み合わせは、受信機200内で8−VSB復号器220として識別される。 一般的に、レガシーなA53規格に準拠した信号を受信する典型的な受信機は、送信処理とは逆の順序で受信処理を実行する。

    一般的に、リード・ソロモン符号化および復号において使用されるアルゴリズムは、当業者にとって公知である。 上述したように、図1のリード・ソロモン符号化器106は、187バイトを有するデータ・パケットに20パリティ・バイトを追加することによって、207バイトを有する符号語を生成する。 図2のリード・ソロモン復号器210は、符号化器によって追加される20バイトを使用して符号語の10バイトまでのエラーを訂正する。

    リード・ソロモン・エラー訂正アルゴリズムは、ガロア体(Galois Field)の特性を利用する。 具体的には、ガロア体GF(p )は、有限数の要素p からなる数学的な集合であり、pおよびnの値は整数である。 特定のガロア体が生成多項式g(x)を使用して定義される。 ガロア体の各要素は、nビットを有する一意のビットパターンによって表すことができる。 さらに、p 次の一意な多項式は、各要素に関連付けることができ、多項式の各係数は、0とp−1との間にある。 さらに、ガロア体における数学的な演算は、重要な特性を有する。 ガロア体GF(p )の2つの要素を加算したものは、加算される2つの要素に関連付けられた多項式の係数のmod(モジュロ)pの和である係数を有する多項式に関連付けられた要素として定義される。 同様に、2つの要素の乗算は、ガロア体に関連付けられた生成多項式g(x)でモジュロ演算した2つの要素に関連付けられた多項式を乗算したものと定義される。 加算および乗算の演算子は、ガロア体の任意の2つの要素の和および積がガロア体の要素となるように、ガロア体上で定義される。 リード・ソロモン符号語は、ガロア体の要素によって符号語の各バイトを乗算すると、別の有効なリード・ソロモン符号語が生成されるという特性を有する。 さらに、2つのリード・ソロモン符号語のバイト毎の加算により、別のリード・ソロモン符号語が生成される。 レガシーなA53規格は、リード・ソロモン・アルゴリズムで使用するための256個の要素のガロア体GF(2 )とこれに関連する生成多項式g(x)を定義している。 さらに、ガロア体の各特性により、エラーを判定するために符号語のシンドロームを生成する機能が得られる。

    デランダマイザ212からの出パケットは、データ復号器214に提供される。 データ復号器214は、復号されたパケットのヘッダにおけるPIDを使用し、パケット内で搬送される情報のタイプ、さらに、このような情報の復号方法を判定する。 ヘッダ内のPIDは、周期的にデータストリームの一部として送信され、受信機において更新されるプログラム・マップ・テーブル(PMT:Program Map Table)内の情報と比較される。 データ復号器214は、認識できるタイプのものではないデータ・パケットについては、PIDを有するパケットを無視する。 このように、レガシーなA53規格は、送信ソースが新たなパケットのタイプに対して一意なPID値を割り当てることができるようにすることによって、当初の規格において想定されていない新しいパケットのタイプの作成を可能にする。 新しいパケットのタイプをサポートしないレガシーな復号器は、このようなパケットを処理しないが、新たなパケットのタイプを認識する新型の復号器は、このようなパケットを処理することができる。

    受信機200における2/3レートのトレリス復号器206およびリード・ソロモン復号器210によって適切に復号されたパケットのみがデータ復号器214に提供されることは明らかであろう。 トレリス復号器206またはリード・ソロモン復号器210がパケットを復号できない場合には、一般的に、受信機は、このようなパケットをエラー・パケットとして破棄する。 受信されたエラー・パケットの数が多すぎる場合には、A53規格に準拠する信号を受信する機能を有する受信機によっては、送信機との再同期を試行することがある。

    A53規格に準拠した信号が、一般的には、同軸ケーブルまたは電話回線を含む、電波でない方法で送信される場合がある点に留意することが重要である。

    既存、または、レガシーなA53規格は、現在、(例えば、住居内に)固定され、送信される信号を捕捉するための大型のアンテナに結合された受信機によって一般的に使用されることを意図した信号の生成および送信を規定している。 しかしながら、送信される信号は、モバイル受信機または小さなアンテナを有する受信機が、このような信号において符号化されたソース・データを有効に抽出できるように携帯型テレビジョン、車載用テレビジョン、携帯電話、携帯情報端末(PDA)などにおいて使用できるほどに十分に頑丈な、すなわち、ロバストなものではない。 特に、2/3レートのトレリス符号化器によって提供される冗長性は、十分なものではなく、より低いレートの符号化器(即ち、より大きな冗長性を有する符号化器)がモバイル用途には必要である。 従って、モバイル用、ハンドヘルド用、さらに、歩行者用の機器における先進の受信機と共に使用されてより良好なパフォーマンスが得られるように適合化されたよりロバストな符号化処理を導入することが望ましい。

    本願の実施の形態の一態様によれば、データを受信するステップと、第1のバイトコード符号化処理を使用してデータを符号化するステップと、符号化されたデータをインタリーブするステップと、第2のバイトコード符号化処理を使用してインタリーブされたデータを符号化するステップと、を含む方法が開示される。

    本願の実施の形態の別の態様によれば、データを受信し、第1のバイトコード符号化処理を使用してデータを符号化する第1の符号化器と、第1の符号化器に結合されて第1の符号化器から符号化されたデータを受信し、データの順序を付け直すインタリーバと、インタリーバに結合されて順序を付け直されたデータを受信し、第2のバイトコード符号化処理を使用して順序を付け直されたデータを符号化する第2の符号化器と、を含む装置が開示される。

    本願の実施の形態の別の態様によれば、データを受信するステップと、第1のバイトコード復号処理を使用してデータを復号するステップと、符号化されたデータをデインタリーブするステップと、第2のバイトコード復号処理を使用してデインタリーブされたデータを復号するステップと、を含む方法が開示される。

    本発明の別の態様によれば、データを受信し、第1のバイトコード復号処理を使用してデータを符号化する第1の復号器と、第1の復号器に結合されて復号されたデータの順序を付け直すデインタリーバと、デインタリーバに結合されて第2のバイトコード復号処理を使用して順序を付け直されたデータを復号する第2の復号器と、を含む信号受信装置が開示される。

    A53規格に準拠した信号を送信する典型的な送信システムのブロック図である。

    A53規格に準拠した信号を受信する典型的な受信機のブロック図である。

    本開示内容に係る符号化器の実施の形態のブロック図である。

    本開示内容に係る符号化器の別の実施の形態のブロック図である。

    本開示内容に係る符号化器のさらに別の実施の形態のブロック図である。

    本開示内容に係る連結型バイトコード符号化器の実施の形態のブロック図である。

    本開示内容に係るデータ・インタリーブ処理を示すテーブルのマップである。

    本開示内容に係る連結型バイトコード符号化器の別の実施の形態のブロック図である。

    本開示内容に係る連結型バイトコード符号化器の他の実施の形態のブロック図である。

    本開示内容に係る連結型バイトコード符号化器のさらに他の実施の形態のブロック図である。

    本開示内容に係る別のデータ・インタリーブ処理の別のマップを示すテーブルである。

    本開示内容に係る連結型バイトコード符号化器のさらに他の実施の形態のブロック図である。

    本開示内容に係る送信機において使用される符号化器のさらに別の実施の形態のブロック図である。

    本開示内容に係る行指向データを示すテーブルである。

    本開示内容に係る列指向データを示すテーブルである。

    本開示内容に係る符号化処理の実施の形態のフローチャートである。

    本開示内容に係る符号化処理の別の実施の形態のフローチャートである。

    本開示内容に係るビットからシンボルにマッピングする処理を示すテーブルである。

    本開示内容に係るインタリーバにおけるバイトをマッピングする処理を示すテーブルである。

    本開示内容に係る復号器の実施の形態のブロック図である。

    本開示内容に係る復号器の別の実施の形態のブロック図である。

    本開示内容に係る連結型バイトコード復号器の実施の形態のブロック図である。

    本開示内容に係る連結型バイトコード復号器の別の実施の形態のブロック図である。

    本開示内容に係る連結型バイトコード復号器の他の実施の形態のブロック図である。

    本発明の特徴および利点は、以下の例示的な説明を通じてより明らかになるであろう。

    本開示内容に係る1つ以上の具体的な実施の形態を以下に説明する。 各実施の形態の簡潔な説明を提供するために、明細書において、実際の実施態様の特徴事項の全てについては説明しない。 このような実際の実施態様の開発において、技術または設計プロジェクトにおける場合のように、実施態様毎に異なる、システムに関連した制約やビジネスに関連した制約を守ることなど、開発者の特定の目的を達成するために、多くの各実施態様に特化した決定を行わなければないことが理解できるであろう。 さらに、しかしながら、このような開発努力は、本開示内容の利益を有する当業者にとって、日常的に取り扱われる設計、製作、および製造上の事項であることも理解できるであろう。

    以下に、テレビジョン放送、より具体的には、米国における使用のために規定された放送信号に関連するシステムを説明する。 説明する各実施の形態は、モバイル用、ハンドヘルド用、または、歩行者用の機器において使用することができる。 使用される各機器の例として、限定するものではないが、携帯電話、高機能電話、携帯情報端末(PDA)、ラップトップ・コンピュータ、さらに、携帯用テレビジョンが含まれる。 他のタイプの信号を送受信するために利用される他のシステムが、同様の構造および処理を含む場合がある。 当業者であれば、本明細書に記載された各回路および処理の実施の形態が単に1セットの想定される実施の形態に過ぎないことが理解できよう。 従って、代替的な実施の形態において、システムの各コンポーネントを再構成(配列)することも、省略することも、追加的なコンポーネントを組み込むこともできる。 例えば、軽微な改変を行うことにより、説明するシステムを世界のどこか他の場所で使用されるようなサービスを含む、衛星のビデオおよびオーディオ・サービスや、電話データ・サービスに使用するように構成することもできる。

    次に図3を参照すると、符号化器300の実施の形態のブロック図が示されている。 符号化器300は、データを符号化して、頑丈な、または、ロバストなデータストリームを発生させるように構成された処理回路を含む。 頑丈なデータストリームにデータを復号することにより、困難な送信環境でもデータの復元が可能となる。 例えば、符号化器300によって生成された頑丈なデータストリームにより、ハンドヘルド用、モバイル用、または、歩行者用の受信機器による放送テレビジョン信号の受信が改善する。 送信ソース(TS)302は、ランダマイザ304に結合されている。 ランダマイザ304は、信号Mを出力し、リード・ソロモン符号化器306に結合されている。 リード・ソロモン符号化器306は、信号Cを出力し、バイトコード符号化器308に結合されている。 バイトコード符号化器308は、2つの信号AおよびA'を出力し、これらの信号AおよびA'は、それぞれ、インタリーバ310に結合されている。 インタリーバ310は、出力信号Iを出力し、トレリス符号化器312に結合されている。 特定のブロックは、既に説明したものと同様のものであるため、ここでは詳細には説明しない。

    図3のデータ・ランダマイザ304は、送信ソース302からのデータ・パケットのストリームをランダム化する。 データ・パケットのストリームは、187バイトの各グループに整理される。 データ・パケットのストリームとして、他の構成も想定される点に留意することが重要である。 さらに、各データ・パケットは1つ以上の符号語を含む場合がある。 リード・ソロモン符号化器306は、各187バイトのランダム化されたパケットを符号化して1つ以上の符号語を含む207バイトのパケットを生成する。 リード・ソロモン符号化器306は、通常、20個の新たなバイトを生成し、この20個の新たなバイトを187バイトの符号語の最後に付加する。 さらに、バイトコード符号化器308は、信号Cを受信し、各207バイトのリード・ソロモン・パケットを符号化して追加的な207バイトの符号語を生成する。 一実施の形態においては、バイトコード符号化器308は、レート1/2の符号化器である。 レート1/2の符号化器は、入力に提供される各符号語に2つの出力符号語を提供する。 2つの符号語の各々は、図3に示すように、信号A、A'として別個に提供される場合がある。 後でより詳細に説明するように、他のコード・レート符号化器をバイトコード符号化器308として使用することもできる。 畳み込みインタリーバ310は、207バイトの符号語の各々をインタリーブし、結果として生ずる信号Iを、変調および送信に備えて、トレリス符号化器312に供給する。 リード・ソロモン符号化器306、畳み込みインタリーバ310、およびトレリス符号化器312は、レガシーなA53規格など、既存のテレビジョン放送規格に準拠したレガシーな送信機において使用されるものと同じものを使用することができる。

    上述したように、レート1/2のバイトコード符号化器308によって作成される2つの符号語またはパケットは、元の入力されたリード・ソロモン・パケットを複製したものと、このリード・ソロモン・パケットに冗長性を与える新たな符号語を提供する。 さらに、2つの符号語は、システマティックなデータおよび非システマティックなデータとして記述することができる。 システマティックなデータおよび非システマティックなデータを表す符号語がより大きなデータ構造を形成するように配列させることができる点に留意することが重要である。 好ましい実施の形態においては、符号語を整理して、データ・パケットの頑丈なデータストリームを形成することができる。 頑丈なデータストリームには、ストリームAにおけるデータ・パケットの複製であるシステマティックなパケット、さらに、ストリームA'におけるバイトコード符号化器の処理によって生成される非システマティックなパケットが含まれる。 非システマティックなパケットもまた、頑丈なデータストリームの他のシステマティックなパケットや非システマティックなパケットから派生されるパケットを含む。 さらに、頑丈なデータストリームは、システマティックなバイトおよび非システマティックなバイトから構成される。 このような実施の形態においては、システマティックなバイトは、コンテンツ・データのバイトを複製したものであり、非システマティックなバイトは、他のシステマティックなバイトや非システマティックなバイトから派生されるものである。

    バイトコード符号化器によって出力される冗長または非システマティックな符号語やパケットは、リード・ソロモン・パケットの各要素をガロア体の要素bで乗算した結果得られたものである。 一実施の形態においては、送信ソース302およびデータ・ランダマイザ304が、バイトM(1)、M2、・・・M(187)からなり、ここで、例えば、M(1)が1番目のバイトであり、M(2)が2番目のバイトであるメッセージMを作成する場合、リード・ソロモン符号化器306は、この後、メッセージMから、バイトC(1)、C(2)、・・・C(207)からなるパケットや符号語Cを生成する。 続いて、バイトコード符号化器308は、符号語Cから符号語AおよびA'を以下のように生成する。

    値bは、リード・ソロモン符号化器306によって使用されるものと同じガロア体GF(2 )の所定の(零ではない)要素である。 例示的な実施の形態においては、要素bの値は2である。 符号語A'も同様にリード・ソロモン符号語であることは明らかである。 即ち、レガシーなA53規格に準拠する受信機におけるリード・ソロモン復号器は、符号語A'から有効なシンドロームを算出して信号送信の間にエラーが符号語A'に発生したかどうかを判定し、算出されたシンドロームを用いてこのようなエラーを訂正する。

    次に、図4を参照すると、符号化器400の別の実施の形態のブロック図が示されている。 符号化器400における各ブロックは、主に、上述した符号化器300と同様の機能を有する。 しかしながら、ブロックの幾つかは、動作の順序に再配列されている。 バイトコード符号化器406は、リード・ソロモン符号化器408の前段に置かれている。 この構成においては、送信ソース(TS)402およびデータ・ランダマイザ404は、メッセージ・ストリームMを生成する。 メッセージ・ストリームは、例えば、187バイトのパケットに配列される。 1/2レートの符号化器として示されているバイトコード符号化器406は、入来する187バイトのメッセージのパケットの各々に対し、2個の187バイトのパケットを作成する。 上述したように、2個の187バイトのパケットは、Aが付けられたシステマティックなパケットとして識別されるメッセージ・パケットの複製と、冗長データを含む非システマティックなパケットとして識別される新たなパケットA'を含む。 図4においてAとA'が付けられた各パケットは、図3においてAとA'が付けられた各パケットとは異なる点に留意することが重要である。

    リード・ソロモン符号化器408は、2つのパケットAおよびA'を順次符号化し、2個の207バイトの符号語CおよびC'をそれぞれ生成する。 畳み込みインタリーバ410は、207バイトの符号語CおよびC'の各々をインタリーブし、この後、変調に備えてトレリス符号化器412は、インタリーブされたデータを符号化する。 バイトコード符号化器406およびリード・ソロモン符号化器408によって使用されるガロア体演算の特性により、確実に符号語CおよびC'がそれぞれ符号語AおよびA'と同一となる。 ブロック処理のため、ブロックの順序を再変更可能であり、その根底にある数学的な関係が同一のガロア体上の線形な演算である点に留意することが重要である。

    次に、図5を参照すると、符号化器500のさらに別の実施の形態のブロック図が示されている。 上述したように、符号化器500内の各ブロックは、主に、既に述べた符号化器300および400の機能と同様の機能を有する。 しかしながら、ブロックの幾つかは、動作の順序に再配列されている。 バイトコード符号化器504は、ランダマイザ506の前段に置かれている。 データ発生器502は、例えば、187バイトのデータ・パケットに配列されたメッセージ・ストリームを発生させる。 このようなデータ・パケットの各々に対し、バイトコード符号化器504は、システマティックなパケット(即ち、データ・パケットを複製したもの)を作成し、さらに、追加的なシステマティックなパケット(即ち、データ・パケットをバイトコード符号化したバイト符号化済のパケット)を作成する。 バイトコード符号化器504によって作成された各パケット(元のデータおよび符号化されたデータのパケット)は、頑丈なデータストリームに含まれ、この頑丈なデータストリームはレガシーな8−VSB信号符号化器530に提供することができる。 レガシーな8−VSB信号符号化器530は、図1に示される8−VSB符号化器120と同様の機能を有する。 レガシーな8−VSB符号化器530は、データ・ランダマイザ506、リード・ソロモン符号化器508、畳み込みインタリーバ510、およびトレリス符号化器512を含む。 レガシーな8−VSB符号化器530は、上述したA53規格に準拠したシステマティックなパケットおよび非システマティックなパケットを同様に符号化する。 図示するように、データ発生器502およびバイトコード符号化器504は、送信ソース(TS)520の一部であると考えることができる。 さらに、レガシーな8−VSB符号化器530などの既存の送信設備の既存のハードウェア構成に対して最小限の変更を加えることで、頑丈な、またはロバストなデータストリームを生成するようにバイトコード符号化器504の追加的な機能を得ることができる。 ブロック処理のため、ランダマイザ506およびバイトコード符号化器504の再配置が可能であり、その根底にある数学的な関係が同一のガロア体上の線形な演算である点に留意することが重要である。 リード・ソロモン符号化器と同様に、ランダマイザ506は、データにおける各バイトに定数を乗算する線形演算を使用する。

    バイトコード符号化器504は、PIDを含むヘッダを形成するバイトを含み、データ・パケットの各バイトを全て符号化し、頑丈なデータストリームの1つ以上の非システマティックなパケットを生成する。 従って、各非システマティックなパケットのPIDは、バイトコード符号化され、もはや、受信機によって認識可能なPID値を表さない場合がある。

    符号化器500によって示される送信機の実施の形態によって符号化されるどのようなパケットも図2に描かれる復号器220と同様の実施の形態の復号器(例えば、A53規格に準拠したレガシーな受信機)によって復号できることが理解できるであろう。 復号器216は、頑丈なデータストリームの各パケットをデータ復号器214に提供する。 頑丈なデータストリームには、復号器220によっては正確に復号されないバイトコード符号化器を使用して符号化される非システマティックなパケットが含まれる。 しかしながら、このようなパケットは、プログラム・マップ・テーブル(PMT)において既存の、または、レガシーなデータ形式と関連付けられていないPIDを有するため、レガシーな受信機におけるデータ復号器214は、頑丈なデータストリームのこれらの非システマティックなパケットを無視する。

    バイトコード符号化器504は、上述した等式(2)を使用して各システマティックなパケットについて、非システマティックなパケットを生成し、両方のパケットをレガシーな8−VSB符号化器530に対し供給する。 レガシーな8−VSB符号化器530は、送信のために、1/2の実効データ・レート(即ち、1バイトの入力、2バイトの出力)で符号化されたストリームを生成する。 上述したように、バイトコード符号化器504は、他の符号化レートを使用して他の実効データ・レートを生成することもできる。 実施の形態によっては、バイトコード符号化器は、データ発生器502によって作成される2つのソース・パケット毎に1つのバイト符号化されたパケットを作成して、以下のように算出される2つのシステマティックなパケットと1つの非システマティックなパケットからなるレート2/3の頑丈なデータストリームを生成することもある。

    ここで、M およびM は、データ発生器502によって作成された連続的なシステマティックなパケットであり、b およびb は、リード・ソロモン符号化器508によって使用されるガロア体のような、ガロア体の所定の要素である。 例示的な実施の形態においては、要素b およびb の値は2である。 実施の形態によっては、b およびb の値は同一でないこともある。 バイトコード符号化器504は、さらなる符号化および送信のためにパケットM 、M 、およびM ABをレガシーな8−VSB符号化器530に提供する。

    バイトコード符号化器504は、複数の異なる符号化レートを使用し、冗長パケットを作成するための追加的な入力データストリームを含めることによって、頑丈なデータストリーム(即ち、低いデータ・レートを有するデータストリーム)を生成してもよい。 バイトコード符号化器504の一実施の形態では、データ発生器502からの4個のシステマティックなパケットM 、M 、M 、およびM 、さらに、以下のように算出される5個の非システマティックなパケットを用いることによって、レート4/9のデータストリームを生成する。

    値b 、b 、・・・b 10は、ガロア体から選択される所定の要素である。 例示的な実施の形態においては、b 、b 、・・・b 10の値は2である。 さらに、等式(8)に示されるように、パケットM ABCDは、他の冗長パケット、特に、パケットM ABおよびパケットM CDのみから作成される冗長パケットである。 冗長パケットM ABCDを代替的に、冗長パケットM ACおよびM BCの各要素を用いて生成してもよいことは明らかであろう。 送信ソース発生器520の実施の形態によっては、1つ以上の非システマティックなパケットの除去をパンクチャとして知られる演算で実行することがある。 例えば、パンクチャされたレート4/8の生成は、冗長パケットのみを用いていたパケット(即ち、この場合はM ABCD )のうちの1つを作成しないことによって行われる。 送信されたパケットまたは符号語の数に対する特定の制約を満たすために、コード・パンクチャを使用して送信されるパケットの数を変更することができる。

    さらに、バイトコード符号化器504は、8個のデータ・パケットM 、M 、・・・M を用いて以下のような19個の非システマティックなパケットを作成することによって、8/27のデータ・レートを有する頑丈なデータストリームを生成することもできる。

    さらに、8/26のデータ・レートを有するパンクチャされたコードの生成は、バイトコード符号化器504により、冗長パケットのみから作成される、パケットM ABCDEFGHまたは別のパケットを作成しないことによって行うことができる。

    上述したように、バイトコード符号化器は、使用される符号語またはパケットの数、さらに、1つの符号化処理を通じて形成される符号語またはパケットの数に基づいて特定の符号化コード・レートを生成するように構成させることができる。 さらに、構成ブロック、または、構成要素であるコード・レート符号化器としての上述したコード・レート符号化器の特定の配列を使用して、より複雑なコード・レートを生成することもできる。 また、追加的な処理ブロックを含めるようにして、連結型バイトコード符号化器を形成することもできる。 例えば、連結型バイトコード符号化器は、冗長性に加え、構成要素としての各バイトコード符号化器間に追加的なインターリービング・ブロックを使用して、生成されるデータストリームをより頑丈なものにすることもできる。 連結型バイトコード符号化器の様々な実施の形態を以下に説明する。

    次に、図6を参照すると、連結型バイトコード符号化器600の実施の形態が示されている。 連結型バイトコード符号化器は、パケットまたは符号語を受信し、これらを第1の2/3レートのバイト符号化器602に提供する。 第1の2/3レートのバイト符号化器602の出力は、インタリーバ604に提供される。 インタリーバ604の出力は、第2の2/3レートのバイトコード符号化器606に提供される。 第2の2/3レートのバイトコード符号化器606の出力は、バイト・パンクチャ・ブロック608に提供される。 パンクチャ・ブロック608の出力は、データ・パケタイザ610に提供される。 データ・パケタイザ610の出力をさらなる処理(例えば、図5において既に説明したレガシーな送信符号化)のために提供することができる。

    第1の2/3レートのバイトコード符号化器602は、コンテンツ・データ・パケットの12バイトを受信し、12バイトから第1のバイトコード符号化されたストリームを生成する。 12バイトのうちの2個のコンテンツ・データ・バイトM およびM 毎に、第1のバイトコード符号化されたストリームは、バイトM およびM を複製したものと、上述したように算出される冗長バイトM ABを含む。 実施の形態によっては、コンテンツ・データ・バイトM およびM は、データ発生器(例えば、図5のデータ発生器502)によって作成される1個のコンテンツ・データ・パケットの各バイトである。 他の実施の形態では、第1の2/3レートのバイトコード符号化器602は、2つの異なるコンテンツ・データ・パケットAおよびBからそれぞれコンテンツ・データ・バイトM およびM を選択する。 コンテンツ・データの12バイト毎に、18バイトが第1のバイトコード符号化された出力ストリームの一部として出力される。

    第1のバイトコード符号化されたストリームは、インタリーバ604によってインタリーブされ、18個のインタリーブされたバイトを含むインタリーブされたストリームが生成される。 インタリーバ604は、以下に記載する他のインタリーバと同様に、本技術分野において公知であるインタリーブ技術(例えば、擬似ランダム、行列、符号最適化など)のいずれかを使用することができる。 さらに、インタリーバは、全インタリーバ・データ長を記憶するための記憶容量を有するメモリを含む。 好ましい実施の形態においては、インタリーバ604は、出力バイトを図7に示すテーブル700によって提示されているように配列させる。 テーブル700は、入力でのバイトの位置を示す行710を含む。 行720は、出力で読み出されるバイトの順序を示している。 インタリーブされたストリームは、第2の2/3レートのバイトコード符号化器606に提供される。 第2の2/3レートのバイトコード符号化器606は、インタリーブされたストリームにおける18個のインタリーブされたバイトのグループを符号化して27バイトの各グループを含む第2のバイトコード符号化されたストリームを生成する。 上述したように、インタリーバによって生成された2つのバイトI およびI 毎に、第2の2/3レートのバイト符号化されたストリームは、2つのバイトI およびI を複製したもの、さらに、バイトI ABを有する。 バイトI は、データ発生器(例えば、図5のデータ発生器502)によって生成されるコンテンツ・データのバイトのうちの1つを複製したものであってもよく、第1のバイトコード符号化器602によって冗長バイトまたは非システマティックなバイトとして生成されるバイトであってもよいことは明らかであろう。 同様に、バイトI は、コンテンツ・データのバイトを複製したものであってもよく、第1のバイトコード符号化器602によって冗長バイトまたは非システマティックなバイトとして生成されるバイトであってもよい。

    リニア(線形)符号化器において使用される各インバータは、伝統的に、非常に大きなインタリーバの長さまたは奥行きを有する。 インタリーバ604など、連結型バイトコード符号化器において使用されるインタリーバは、長さが小さく、符号化レートに最適化されている。 伝統的なアプローチとは異なり、バイトコード・インタリーバは、低いラテンシーを強調している。

    バイト・パンクチャ・ブロック608は、第2のバイトコード符号化されたストリームにおける27バイトのグループから1バイトを取り除き、26バイトの各グループを含むパンクチャされたストリームを生成する。 所与の符号化構造のために提供され、送信されるバイトの数を減少させることによって、データ効率を向上させるためにバイト・パンクチャが使用される。 しかしながら、データ効率が向上するものの、これには、データストリームから1つ以上の符号化されたバイトが存在しないことにより、結果として生ずる受信機内の復号回路におけるパフォーマンスの低下に対するトレードオフの関係がある。 バイト・パンクチャを使用して、送信フォーマットに便利な符号化されたデータのバイト、または、パケットのグループまたはブロックを生成する。 バイトまたはパケットの特定のグループに基づく符号化構造は、ブロックコードと呼ばれることが多い。

    バイト・パンクチャ・ブロック608は、第2の符号化されたストリームから1バイトを超えるバイトを取り除くこともできる。 例えば、12/24レートのデータストリームを生成するために取り除かれる3バイトを識別することができる。 1バイトを超えるバイトをパンクチャすることによって、符号化の有効性がさらに低下する一方で、符号化レートの向上が得られる。 バイト・パンクチャ・ブロック608における追加的なバイトの除去は、インタリーバ604における最適なインタリーブに基づいて達成することができる。 このように、パンクチャとインタリーブとの相互作用により、所与のブロック・サイズの出力パケットの作成に基づいて最適な符号化レートを得ることができる。

    パケタイザ610は、パンクチャされたストリームからの各バイトを組み合わせ、グループ化し、187バイトのディスクリート・パケットにする。 バイトコード符号化器600の各コンポーネントによって生成された頑丈なデータストリームは、12/26レートのデータストリームを生成する。 バイトコード符号化器600は、バイト・パンクチャ・ブロック608が使用されていない場合に、12/27レートのデータストリームを生成することもできる。

    連結型バイトコード符号化器600と同様の連結型バイトコード符号化器を使用して、上述した12/27レートおよび12/26レートの頑丈なデータストリームではない頑丈なデータストリームを生成することができる。 図8を参照すると、連結型バイトコード符号化器800の実施の形態の別のブロック図が示されている。 連結型バイトコード符号化器800は、4バイトのコンテンツ・データ毎に、第1の2/3レートのバイトコード符号化器802が6バイトの各グループを含む第1のバイトコード符号化されたデータストリームを生成する点を除き、バイトコード符号化器600と同様である。 インタリーバ804は、6バイトをインタリーブし、2/3レートのバイトコード符号化器806は、6バイトが提供される度に、9バイトのグループを含む第2のバイトコード符号化されたデータストリームを生成する。 インタリーバ804は、2つの2/3レートのバイトコード復号器の連結のために可能な限り小さなインタリーバ長を表す。 バイト・パンクチャ808は、第2の2/3レートのバイトコード符号化器806によって生成される9バイト毎に、1バイトを取り除く。 バイトコード符号化器800によって生成された頑丈なデータストリームは、4/8レートのバイトコードとして符号化される。 バイトコード符号化器800もまた、バイト・パンクチャ808が使用されていない場合に4/9レートのバイトコードを生成するように使用することができる。

    次に、図9を参照すると、連結型バイトコード符号化器900のさらに他の実施の形態のブロック図が示されている。 第1のバイトコード符号化器902とインタリーバ904は、バイトコード符号化器600のものと同じである。 しかしながら、第2のバイトコード符号化器906は、1/2レートのバイトコード符号化器である。 1/2レートのバイトコード符号化器906は、インタリーブされたストリーム内に18個のインタリーブされたバイトのグループを符号化し、27バイトの各グループを含む第2のバイトコード符号化されたストリームを生成する。 上述したように、インタリーバ904によって生成される1バイトI毎に、1/2レートのバイトコード符号化されたストリームは、バイトIを複製したものと、非システマティックなバイトI'を含む。 バイトIは、データ発生器(例えば、図5におけるデータ発生器502)によって生成されるコンテンツ・データのうちのバイトの1つを複製したものであってもよいし、第1のバイトコード符号化器902によって冗長バイトまたは非システマティックなバイトとして生成されるバイトであってもよいことは明らかであろう。

    バイト・パンクチャ・ブロック908は、第2のバイトコード符号化されたストリームにおける36バイトのグループから1バイトを取り除き、35バイトのグループを含むパンクチャされたストリームを生成する。 連結型バイトコード符号化器900は、12/35レートのパンクチャされた頑丈なデータストリームまたは12/36レートのパンクチャされていないデータストリームを生成することができる。

    図6、図8、および図9は、2つの構成要素としてのバイトコード符号化器および1つのインタリーバを利用する連結型バイトコード符号化器の実施の形態を示すが、バイト符号化器の他の実施の形態では、追加的な構成要素としてのバイトコード符号化器およびインタリーバを含めるようにして他のデータ・レートを有する頑丈なデータストリームを生成する。 次に、図10を参照すると、連結型バイトコード符号化器1000のさらに他の実施の形態のブロック図が示されている。 符号化器1000は、3つの構成要素としてのバイトコード符号化器、2つのインタリーバ、さらに、パンクチャ・ブロックを含む。 1/2レートのバイトコード符号化器1002は、(データ発生器502などの)データ発生器からコンテンツ・データ・バイトを受信する。 1/2レートのバイトコード符号化器1002は、受信された12バイトのコンテンツ・データ毎に第1のバイトコード符号化されたストリームにおける24バイトの各グループを生成する。

    第1のインタリーバ1004は、第1のバイト符号化されたストリームにおいて24バイトの各グループをインタリーブし、第1のインタリーブされたストリームにおける24バイトのグループを第1の2/3レートのバイトコード符号化器1006に提供する。 好ましい実施の形態においては、第1のインタリーバ1004は、出力バイトを図11に示すテーブル1100に提示されるように配列させる。 テーブル1100は、入力でのバイトの位置を示す行1110を含む。 行1120は、出力で読み出されるバイトの順序を示している。 第1の2/3レートのバイトコード符号化器1006は、24バイトの各グループが提供される度に、36バイトの各グループを含む第2のバイトコード符号化されたストリームを生成する。 第2のインタリーバ1008は、36バイトの各グループを18バイトの2つのセットに分割することによって、36バイトの第2のバイトコード符号化されたストリームをインタリーブする。 第2のインタリーバ1008は、18バイトの各セットをインタリーブし、インタリーブされたデータを2個の18バイトのインタリーブされたストリームとして第2の2/3レートのバイトコード符号化器1010に提供する。 第2の2/3レートのバイトコード符号化器1010は、第1の2/3レートのバイトコード符号化器1006と同様に動作し、各18バイトのインタリーブされたストリームを符号化して27バイトの各グループを含む第3のバイトコード符号化されたストリームを生成する。 バイト・パンクチャ・ブロック1012は、第3のバイトコード符号化されたストリームの1バイトをパンクチャし、26バイトをパケタイザ1014に提供する。 パケタイザ1014は、インタリーバ1008によって分けられた26バイトの各セットを再グループ化する。 さらに、パケタイザ1014は、パンクチャされたストリームからの各バイトを組み合わせ、グループ化して上述した187バイトのディスリートなパケットにする。 連結型バイトコード符号化器1000は、12/54のパンクチャされていない頑丈なデータストリーム、または、12/52のパンクチャされたデータストリームを生成する。 なぜならば、符号化器1000の入力で受信される12バイト毎に、第2の2/3レートのバイトコード符号化器1010は、2つの27バイトのバイトコード符号化されたストリームを生成するからである。

    図12を参照すると、連結型バイトコード符号化器1200のさらに他の実施の形態のブロック図が示されている。 連結型バイトコード符号化器1200は、2つの構成要素としてのバイトコード符号化器を含み、これらのバイトコード符号化器は結合され、並列に動作する。 換言すれば、上述した直列連結とは異なり、この連結は、並列連結である。 入力ストリームからの17バイトは、16バイトの第1のグループと、1バイトの第2のグループに分けられる。 2/3レートのバイトコード符号化器1210は、16バイトの最初のグループを受信し、16バイトのコンテンツ・データが受信される度に、24バイトの第1のバイトコード符号化ストリームを生成する。 1/2レートのバイトコード符号化器1220は、1バイトの第2のグループを受信し、受信された1バイトのコンテンツ・データ毎に2バイトの第2のバイトコード符号化されたストリームを生成する。 24バイトの各グループを含む第1のバイトコード符号化されたストリームおよび2バイトの各グループを含む第2のバイトコード符号化されたストリームは、連結されて26バイトの各グループを含む最終的なバイトコード符号化されたストリームを形成する。 連結型バイトコード符号化器1200は、レート17/26のパンクチャされていない頑丈なデータストリームを生成する。

    図6、図8、図9、図10、および図12において示されているものとは異なるレートを有する連結型バイトコード符号化器を様々なコード・レートで頑丈なデータストリームを生成するのに使用することができる。 同様に、上述した実施の形態において使用されているものを他のタイプまたは構成(配列)のインタリーバまたはパンクチャ・ブロックに置き換えることができる。

    次に、図13を参照すると、符号化器1300のさらに別の実施の形態のブロック図が示されている。 符号化器1300は、図5に示される符号化器500に代替させることができ、MPEGトランスポート・ストリーム・ソース(MPEG TSソース)1302を含む。 MPEGトランスポート・ストリーム・ソース1302は、幾つかの追加的なブロックを含むATSC M/Hブロック1310に結合される。 ATSC M/Hブロック1310内に含まれるブロックは、入来するデータストリームを処理し、モバイル用、歩行者用、さらに、ハンドヘルド用の機器による受信および使用に適合化された頑丈なデータストリームを生成する。 これらのブロックについて、以下にさらに説明する。 ATSC M/Hブロック1310は、ATSC A53に係るレガシーなブロック1350に結合され、このブロック1350もまた、幾つかの追加のブロックを内蔵している。 ATSC A53に係るレガシーなブロック1350に内蔵されるデータ・ランダマイザ1352、リード・ソロモン符号化器1354、畳み込みバイト・インタリーバ1356、トレリス符号化器1358、シンク挿入ブロック1360、さらに、変調ブロック1362は、図1に示されたブロックと同様である。 従って、ここでは、これらのブロックについてのさらなる説明は行わない。

    ATSC M/Hブロック1310内において、パケット・インタリーバ1312は、パケットに配列されたデータのストリームを受信する。 各パケットは、187バイトを含み、パケットの識別に使用される3バイトのヘッダを含む。 パケット・インタリーバ1312の出力は、GF(256)直列連結型ブロック符号化器(SCBC:Serial Concatenated Block Coder)1314に提供される。 GF(256)SCBC1314の出力は、パケット・デインタリーバ1316に結合される。 パケット・デインタリーバ1316の出力は、トランスポート・ストリーム・ヘッダ・モディファイア1318に結合される。 トランスポート・ストリーム・ヘッダ・モディファイア1318の出力は、アプリオリ・トランスポート・パケット(APT:A−Priori Transport packet)挿入器1320に結合される。 アプリオリ・トランスポート・パケット挿入器1320の出力は、ATSC A53に係るレガシーな符号化器1350に結合される。

    パケット・インタリーバ1312は、行に配列されたパケットとして受信されたデータを、パケットの行からバイトの列に基づく符号語に再配列させる。 パケット・インタリーバ1312は、図14に示すような行毎の順序に並んでいる固定数の連続したパケットからバイトを取得し、図15に示すような列毎のバイトを出力する。 特に、図14および図15は、187バイトのパケットの12行の読み出しおよび12バイトの符号語の187列の出力を表している。 パケットのインタリーブの結果、例えば、バイト0(Byte0)が付けられた最初のバイトの全ては、一緒のグループにされ、バイト1(Byte1)が付けられた第2のバイトの全ては、一緒のグループにされる。 インタリーバに読みこまれた幾らかの数のパケットは、ソース・フレームを構成し、GF(256)SCBC1314における処理に必要な幾らかの数のソース符号語またはシンボルに相当する。 含まれるメモリのタイプやサイズに基づいて、パケット・インタリーバ1312の次元を変更することもできる点に留意することが重要である。 例えば、第1の次元を列に変更し、第2の次元を行に変更することができる。 さらに、他の次元構成(配列)を使用することもできる。

    GF(256)SCBC1314は、上述したバイトコード符号化器と同様のブロックコード符号化器である。 特に、GF(256)SCBC1314は、ガロア体GF(256)空間上の短いリニア・ブロックコードを用いて実施される。 2つの構成要素としてのブロックコードを使用することができる。 レート1/2のブロックコード符号化器は、以下の生成行列を使用する。
    G=(1 2) (28)

    (28)の行列は、第2列に存在する等式(1)からの値を有する要素bを含む。 レート2/3のブロックコード符号化器は、以下の生成行列を使用する。

    生成行列は、単位行列と要素bの列を用いて形成される。 行列(29)における第3の列は、2の値を有する等式(2)および(3)からの要素bを含む。 なお、構成コード毎に、生成行列における各係数は、全体のエラー訂正システムおよび変調処理に対するブロックコード符号化の関係に基づいて最適化されている。 この最適化は、特に、8−VSB変調におけるトレリス符号化およびビットからシンボルへのマッピング(bit to symbol mapping)を考慮に入れている。 なぜならば、これらの事項は、受信および変調処理における最初の事項であるからである。

    GF(256)SCBC1314は、単純なブロックコード符号化器であってもよいし、連結型ブロックコード符号化器であってもよい。 連結型ブロックコード符号化器は、上述したインタリーブやパンクチャなどの他の機能を含んでいてもよい。 GF(256)SCBC1314は、複数の符号化レートを符号化する機能を有し、さらに、図示しないレート・モード・コントローラでレート・モードを切り換える機能を有するものであってもよい。 好ましい実施の形態においては、GF(256)SCBC1314は、上述したレート1/2の構成コード、図6に示されるレート12/26のコード、図10に示されるレート12/52のコード、または、図12に示されるレート17/26のコードを使用して入来のデータストリームを符号化するように構成される。

    GF(256)SCBC1314は、インタリーバ1312から出力される列に沿って各バイトを符号化する。 換言すれば、GF(256)SCBC1314は、パケット・インタリーバ1312における処理を通じて形成されるインタリーバ行列の第2の次元に従って符号化を行う。

    パケット・デインタリーバ1316は、GF(256)SCBC1314によって生成された符号語の符号化されたストリームを受信し、187バイトのパケットの再構成された行を出力する。 パケット・デインタリーバ1316は、GF(256)SCBC1314内の符号化された符号語を列毎の順序で入力し、この際、各列には、GF(256)SCBC1314内の処理により追加される冗長バイト、または、非システマティックなバイトが含まれる。 また、パケット・デインタリーバ1316は、各バイトを行毎の配列で出力する。 この処理は、本質的に、図14および図15の順序を逆にした、パケット・インタリーバ1312について説明した処理とは逆の処理である。 パケット・デインタリーバ1312は、同数の列の符号語を入力する。 この際、各符号語には、非システマティックなバイトが符号化されたセットが含まれる。 出力での列の数は、符号化された符号語の長さに対応する。 例えば、12/26のコード・レートにおいて、26行のパケットが出力される。 パケット・デインタリーバ1316の次元を、含まれているメモリのタイプおよびサイズに基づいて変更することができる点に留意することが重要である。 また、第1の次元を行に変更し、第2の次元を列に変更することができる。 さらに、他の次元構成(配列)を使用することもできる。

    パケットは、2つの別個のグループに配列させることができる。 最初のパケットのグループは、システマティックなパケットと呼ぶことができ、これらは、トランスポート・ストリーム・ソース1302によって提供される元のデータのパケットと同じである。 第2のグループのパケットは非システマティックなパケットと呼ぶことができ、これらは、GF(256)SCBC1314内のブロック符号化処理によって作成されたパリティ・パケットである。 ブロック符号化処理の結果として、列の数(即ち、第2の次元のサイズ)が増加している。

    MPEGトランスポート・ストリーム・ヘッダ・モディファイア1318は、システマティックなパケットおよび非システマティックなパケットのグループを含むデインタリーブされた187バイトのパケットを受信する。 上述したように、各パケットは、3バイトのヘッダを含む。 3バイトは、PID、さらに、パケットに関する情報を搬送するために使用される幾つかの他のビットまたはビットのグループを含む。 レガシーな、または、A53に係る放送信号を受信する機能を有するが、ATSC M/H符号化されたパケットを正確に復号する機能を有さない受信機(例えば、レガシーな受信機)の最も効率的な動作を維持するために、ATSC M/Hパケットの一部のヘッダにおける特定のビットを修正することができる。 これらのビットを非システマティックなパケットのヘッダにおいて修正すると、レガシーな受信機は、パケットを無視し、パケットを破損したものとして、考慮もしない。 例えば、MPEGトランスポート・ストリーム・ヘッダ・モディファイア1318は、TEIビット、ペイロード・ユニット開始インジケータ・ビット、さらに、トランスポート優先度ビットを「0」のビット値に設定する。 さらに、スクランブリング制御およびアダプテーション・ビット(各2ビット)が「00」に設定される。 3ビット長の連続性カウンタもまた、「000」に設定される。 最後に、PIDは、全てのレガシーな受信機により無視される既知の値のような、一意で使用されていない値に設定される。 MPEGトランスポート・ストリーム・ヘッダ・モディファイア1318が非システマティックなパケットのグループの各ヘッダを修正するため、GF(256)SCBC1314にとって、非システマティックなパケットのグループのヘッダを処理する必要がない点に留意することが重要である。 さらに、MPEGトランスポート・ストリーム・ヘッダ・モディファイア1318は、システマティックなパケットが処理されず、レガシーな受信機によって正確に制御もされないのであれば、システマティックなパケットのヘッダを修正する。 システマティックなパケットがGF(256)SCBC符号化器1314によって符号化もされず、MPEGトランスポート・ストリーム・ヘッダ・モディファイア1318によって処理もされないのであれば、結果として生じたデータストリームは、サイマルキャストされ、モバイル機器およびレガシーな受信機の双方によって受信される。

    アプリオリ・トラッキング・パケット挿入器1320は、所定のトラッキング・パケットを頑丈なデータストリームに置くことができる。 所定のパケットは、モバイル用、歩行者用、または、ハンドヘルド用の機器において使用される受信機など、頑丈なデータストリームを受信する機能を有する受信機にとって、完全に、または、ほとんど既知である情報パケットを表す。 信号符号化および信号送信のレガシーなまたは既存のA53の符号化部分の間に作成されるトレリス状態の復号を支援するために受信機において所定のパケットが使用される。 所定のパケットは、受信機のイコライザ部分における収束も支援する。 所定のパケットは、レガシーな受信機における受信の改善を意図しているものではないものの、改善を生みだす可能性がある点に留意することが重要である。 さらに、従来のトレーニング情報とは異なり、所定のパケットは、送信機の出力において直接識別可能なものではない。 なぜならば、所定のパケットは、追加的なレガシーな符号化が実施される前に追加されるものだからである。 特に、所定のパケットは、トレリス符号化の処理によって変更される。 結果として、所定のパケットは、トレリス復号の間には直接的なトレーニングを提供しないが、むしろ、トレリス復号マップまたはブランチを判定する際に使用されるアプリオリ・ブランチ情報を提供する。

    所定のトラッキング・パケットは、既知のトレーニング・シーケンス処理を使用した幾つかの方法で作成することができる。 好ましい実施の形態においては、所定のトラッキング・パケットは、有効なヘッダを含み、残りのバイトは、受信機にとっても既知な擬似乱数(PN:Pseudo―random Number)を使用して生成される。 所定のトラッキング・パケットは、アプリオリ・トレーニング・データ、トレリス・オブスキュアド(trellis−obscured)・トレーニング・データまたは、擬似トレーニング・パケットと呼ばれ、何らかの方法によってATSC M/H送信の間全体に渡って分配されてもよいし、ATSC M/H信号送信のためのプレアンブルとして機能するようにパケットやパケットのグループを置くことを含み、グループにクラスター化されてもよい。

    レガシーなATSC符号化器1350は、上述したように、レガシーなA53規格に準拠したシステマティックなパケットおよび非システマティックなパケットを同じように符号化する。 頑丈またはロバストなデータストリームを生成するATSC M/Hブロック1310の追加的な機能を送信設備の既存のハードウェア構造に対する最小限の変更で追加することができる。 さらに、MPEGトランスポート・ソース1302から入来するパケットの部分をATSC M/Hブロック1310において1つ以上の符号化レートでの符号化のために抽出することができる。 次に、符号化されたパケットは、入力パケットの残りの未処理の部分、ATSCのレガシーな符号化器1350の符号化による、符号化された部分および未処理の部分に再挿入されるか、付加される。 代替的には、パケットの別個のストリームをATSC M/Hブロック1310に提供し、符号化された出力をパケットの第2のストリームに挿入または付加し、ATSCのレガシーな符号化器1350に提供してもよい。

    次に、図16を参照すると、符号化処理1600の実施の形態を示すフローチャートが示されている。 処理1600は、入力データのストリームから頑丈なデータストリームを生成するのに使用される連結型バイトコード符号化処理を表している。 処理1600は、主に、図6に示される連結型バイトコード符号化器を参照して説明する。 しかしながら、この処理は、図6、図8、図9、図10、および図12に示された符号化器、さらに、上述した符号化器を含むどのようなバイトコード符号化器にも容易に適合化させることができる。 また、処理1600が、ディスクリートな処理ブロックや必要なブロックの幾らかまたは全てを含む集積回路に関わるハードウェアを使用して実行されてもよいし、マイクロプロセッサ・デバイス内で動作するソフトウェアを使用して実行されてもよいし、または、ハードウェアとソフトウェアの双方を組み合わせたものにより実行されてもよい点に留意することが重要である。 さらに、処理1600は、バイト、符号語、および、パケットのデータとの関連で説明されるが、当業者にとって、他のデータ構成や配列も想定され、使用できることは明らかであろう。

    まず、ステップ1610において、データのストリームが受信される。 データのストリームは、データの各バイトを符号語としてグループ化し、さらに、1つ以上の符号語の全部、または、部分を含むパケットとして配列させることができる。 例えば、データを、187バイトのデータを含むパケットに配列させ、各パケットが識別のために使用されるパケット・ヘッダを含むようにすることができる。 次に、ステップ1620において、データのパケットは、バイトコード符号化される。 ステップ1620の符号化は、上述した1つ以上の構成要素としての符号化器を使用して行うことができる。 例えば、符号化ステップ1620は、12バイトのデータの入力毎に、18バイトのデータを出力させるレート2/3のバイトコード符号化を使用することができる。 代替的には、符号化ステップは、レート1/2など、他のバイトコード符号化レートを使用することができる。 符号化ステップ1620は、データの入力バイトを補足するための等式(28)および(29)に示す生成行列を使用することができる。 入力データを補足する処理は、バイトコードまたはブロックコード符号化処理などの符号化処理を通じてエラー訂正バイトまたは冗長データ・バイトを作成する処理を含む。 出力バイトは、システマティックなバイトとして知られる入力された12バイトのデータを複製したものと、6バイトの冗長データ、または、非システマティックなデータを含む。

    次に、ステップ1630において、ステップ1620からの符号化されたデータ・バイトがインタリーブされる。 幾つかのインタリーブ構成を使用することができる。 例として、図7にインタリーブ構成を示す。 図7におけるインタリーブ構成は、比較的に小さなインタリーバ・サイズを提供する一方で、バイトコード符号化ステップ1620において生成される各符号の距離を最大にする。 換言すれば、インタリーバ・サイズが最適化されてホワイト・ノイズの存在下におけるバイト・エラーが低減される。 次に、ステップ1640において、ステップ1630からのインタリーブされたバイトの2度目のバイトコード符号化が行われる。 2度目のバイトコード符号化ステップ1640は、上述した構成要素としての各符号化器のうちの1つを使用して行うことができる。 例えば、符号化ステップ1620は、18バイトのデータの入力毎に、27バイトのデータを出力させるレート2/3のバイトコード符号化を使用することができる。 代替的には、符号化ステップには、レート1/2など、他のバイトコード符号化レートを使用することができる。 上述した符号化ステップ1640には、データの入力バイトを補足するための等式(28)および(29)に示す生成行列を使用することができる。 出力バイトは、システマティックなバイトと呼ばれる入力された18バイトのデータを複製したものと、9バイトの冗長データ、または、非システマティックなデータを含む。 幾らかのシステマティックなバイトは、元の入力データのバイトの1つを複製したものであってもよいし、第1のバイトコード符号化ステップ1620による冗長バイトまたは非システマティックなバイトとして生成されたバイトであってもよい。

    次に、ステップ1650において、第2の符号化されたデータのバイトのストリームがパンクチャされる。 パンクチャ・ステップ1650は、第2の符号化されたストリームからデータのバイトの1つを取り除く。 取り除かれたバイトは、第2の符号化ステップ1640の非システマティックなバイトでもよく、第1の符号化ステップ1620からの非システマティックなバイトであってもよい。 最後に、ステップ1660において、データストリームは、レガシーな、または、既存のA53に係る符号化のような追加的な処理のために提供される。 さらに、ステップ1660は、データストリームを提供する前の、元の受信される配列と同様のパケットに符号化されたバイトを再パケタイズする処理を含む。 ここで記載される処理1600により、レート12/26のバイトコード符号化されたデータストリームが生成される。

    ステップ1650におけるパンクチャ処理は、処理1600から取り除かれることがある。 取り除くバイトの選択は、ステップ1630におけるインタリーブ処理に基づいて実行される。 例えば、第2の符号化ステップ1640は、符号化の一環として、非システマティックなバイトのうちの1つを生成せずに、パンクチャされたストリームを直接発生させることがある。 さらに、パンクチャ・ステップ1650がバイパスされ、パンクチャされていないレート12/27のバイトコード符号化されたデータストリームが生成されることがある。

    ステップ1650でのパンクチャ処理により、また、第2の符号化されたストリームから1バイトを超えるバイトが取り除かれることがある。 例えば、取り除かれる3バイトを特定して、レート12/24のバイトコード符号化されたデータストリームを生成することができる。 1バイトを超えるバイトをパンクチャすることによって、符号化の実効性が更に低下する一方で、符号化レートの向上が得られる。 パンクチャ・ステップ1650における追加的なバイトの除去は、ステップ1630での最適なインタリーブに基づいて成し遂げられる。 このように、パンクチャ処理とインタリーブ処理との相互作用により、出力パケットの所与の出力ブロック・サイズの作成に基づいて最適な符号化レートが得られる。

    2つのインタリーブ・ステップおよび3つのバイトコード符号化ステップを含む、別の連結型バイトコード符号化処理を形成するために、ステップ1630および1640が繰り返される点に留意することが重要である。 繰り返されるステップ1630および1640を用いた処理を図9に示す符号化器900などの符号化器が使用して、レート12/52の頑丈なデータストリームを生成することができる。 さらに、処理1600を上述したもののような他のコード・レートに容易に適合化させることができる。

    次に、図17を参照すると、符号化処理1700の別の実施の形態を示すフローチャートが示されている。 処理1700は、既存の、または、レガシーなA53に係る信号フォーマットにも準拠したシステマティックなデータ・パケットや、非システマティックなデータ・パケットまたは冗長データ・パケットを含むATSC M/H データストリームの符号化および送信を行うステップを示している。 処理1700は、主に、図13における符号化器を参照して説明される。 上述したように、処理1700は、ディスクリートな処理ブロックや必要なブロックの幾らかまたは全てを含む集積回路に関わるハードウェアを使用して実行されてもよいし、マイクロプロセッサ・デバイス内で動作するソフトウェアを使用して実行されてもよいし、または、ハードウェアとソフトウェアの双方を組み合わせたものにより実行されてもよい。 実際に必要となる実施態様に基づいて特定のステップを除去または再構成することにより処理1700を適合化できる点に留意することが重要である。

    まず、ステップ1710において、パケットのトランスポート・ストリームが受信される。 各パケットは187バイトであり、ヘッダを含む。 ヘッダは、PIDとパケットに関する他の情報を含む。 次に、ステップ1720において、ATSC M/Hのために使用されていると識別されるパケットが分離または抽出される。 残りのパケットは、処理されていないものとして識別される。 組み合わされた単一のトランスポート・ストリームから抽出されたものの代わりに、ATSC M/Hパケットをパケットの別個の入力トランスポート・ストリームとして提供することができる点に留意することが重要である。 さらに、トランスポート・ストリームにおける全てのパケットをATSC M/Hパケットとして識別することができる。 これらの条件のいずれかにより抽出ステップ1720が不要となる。 さらに、ATSC M/Hとして識別されるパケット、または、処理されていないと識別されるパケットがグループ化され、ATSC M/Hとして識別されたパケットを、別個の符号化コード・レートにより、さらに識別、グループ化することができる。

    次に、ステップ1730において、ATSC M/Hとして識別されたパケットのセットまたはグループが行として読み取られるか、あるいは、入力され、列として出力されるか、あるいは、パケット・インタリーブされる。 出力データの各列は、符号語に相当し、各々の符号語のサイズは、パケットのグループのサイズと同じである。 図14および図15は、ステップ1730において、行で読み取り、列で出力するパケット・インタリーブ処理を示す行列を表している。 ステップ1730において使用されるインタリーバの各次元を、例えば、列を入力し、行を出力するように変更することもできるし、または、インタリーバの実施態様に基づいて他の次元の態様を使用することもできる。 次に、ステップ1740において、ステップ1730からの各符号語がブロックコード符号化される。 ステップ1740でのブロックコード符号化は、処理1600におけるバイトコード符号化と類似しており、単純な符号化処理または連結型符号化処理のいずれかを使用することができる。 例えば、ブロックコード符号化ステップ1740は、レート1/2の構成コード、レート12/26のコード、レート12/52のコード、または、レート17/26のコードを使用して符号語を符号化することができる。

    次に、ステップ1750において、符号語を列として入力し、データ・パケットを行として出力することによって、符号化された符号語のセットが、パケット・デインタリーブされる。 ここで、入力符号語は、ステップ1740でのブロックコード符号化によって作成された数のバイトを含んでいる。 出力パケットは、187バイトを含むパケットに再構成される。 ブロックコード符号化ステップ1740において生成される非システマティックなバイトは、符号化されたデータのストリームにおいてパケットの追加的な行を構成する。 ステップ1750において使用されるデインタリーバの各次元を、例えば、列を入力し、行を出力するように変更することもできるし、または、インタリーバの実施態様に基づいて他の次元の態様を使用することもできる。

    次に、ステップ1760において、符号化され、デインタリーブされたパケットにおけるヘッダ・バイトが変更される。 ステップ1760の変更ステップは、ヘッダ情報がレガシーな受信機によって認識されるのを阻止することによってATSC M/Hデータ・パケットの符号化を行う機能を持たない受信機におけるパフォーマンスの問題を解決する方法を提供する。 ステップ1760における変更は、TEIビット、ペイロード・ユニット開始インジケータ・ビット、さらに、トランスポート優先度ビットを「0」のビット値に設定することを含む。 また、ステップ1760における変更は、スクランブリング制御およびアダプテーション・フィールド・ビット(各2ビット)を「00」に設定することを含む。 またさらに、ステップ1760における変更は、3ビット長の連続性カウンタを「000」に設定することを含む。 最後に、ステップ1760における変更は、全てのレガシーな受信機によって無視される既知の値など、一意な使用されていない値にPIDを設定することを含む。 符号化ステップ1640においてヘッダ・バイトが無視され、処理されないことがある点に留意することが重要である。

    ステップ1770において、所定のパケットまたは、アプリオリ・トラッキング・パケットが変更されたヘッダ情報を含む符号化されたパケットのストリームに挿入される。 アプリオリ・トラッキング・パケットが挿入されると、ATSC M/Hまたはモバイル用のビデオ符号化された信号を受信する機能を有する受信機のパフォーマンスが向上する。 挿入ステップ1770が既存の冗長パケットまたは非システマティックなパケットを置き換えるものであるか、ステップ1710で提供された元のパケットを、データ・パケットのストリームにおける空(null)パケットとして置き換えるものである点に留意することが重要である。

    ステップ1780において、ステップ1770からのATSC M/H符号化されたパケットがトランスポート・ストリームのデータの処理されていない部分と結合される。 ATSC M/H符号化されたパケットは、データ・パケットのトランスポート・ストリームの前に識別された処理されていない部分に挿入するか、または付加することができる。 代替的には、ステップ1770からのATSCH M/H符号化されたパケットは、レガシーな放送受信のみのためのものであると識別された第2のトランスポート・ストリームに挿入されるか、または付加される。 ステップ1710のパケットの全てがATSC M/Hデータ・パケットとして識別され、処理されているのであれば、ステップ1780を取り除くこともできる点に留意することが重要である。 次に、ステップ1790において、全てのパケットを含む完全なデータストリームが、ATSC M/H符号化されているかどうかに関わらず、A53規格に準拠したレガシーな、または、既存の符号化を用いて処理される。 ステップ1790でのレガシーな符号化には、リード・ソロモン符号化、ランダム化、インタリーブ、トレリス符号化、および同期化(シンク)挿入を含む。 レガシーな符号化ステップ1790は、レガシーな符号化器1350において示されるもののようなブロックによって実行されることがある。

    最後に、ステップ1795において、ATSC M/Hデータとして符号化されるストリームの全てまたは一部を含む、完全に符号化されたデータストリームが送信される。 送信ステップ1795は、具体的に識別された周波数範囲を使用して送信することを含み、さらに、同軸ケーブルなどの有線技術を使用して送信することや、電磁的に電波を介して送信することを含む。 ATSC M/Hデータが連続して送信される場合もある点に留意することが重要である。 このモードにおいては、ATSC M/Hのシステマティックなパケットもまた、レガシーな受信機においてデータ・パケットとして扱われる。 非システマティックなパケットは、無視されるであろう。 しかしながら、別個に存在するATSC M/Hおよびレガシーなデータの送信は、ATSC M/Hデータが周期的に送信されるようにするか、短期的な非連続の期間の間、継続して送信されるようにすることができる。

    図18を参照すると、テーブル1800は、送信フォーマットにおけるシンボルからビットへのマッピングを表している。 テーブル1800は、送信データの2つのビット、Z1およびZ2を表すシンボル0〜4のセットのマッピングを示している。 マッピングは、4−PAM信号としての各シンボルに対応する信号振幅を変調することによって送信することができる。 シンボルの最上位ビット(Z2)の、平均としての2つの値または状態の間の電圧または振幅の差は、シンボルの最下位ビット(Z1)の2つの値または状態の間の電圧または振幅の差よりも大幅に大きい。 結果として、特定のシンボルに対応する信号がノイズの生じている送信チャンネルを介して送信される際、受信機においてZ2ビットを正しく推定する確率は、Z1ビットを正しく推定する確率よりも大きくなる。 データ・シンボルおよびこのデータ・シンボルをサイクリックに回転させたものである第2のシンボルは、送信されたシンボルのZ1およびZ2の双方を正確に復元する確率が大幅に増加する。 等式(1)〜(27)において使用されるガロア体の要素b の各値および上述した等式(28)および(29)において使用される生成行列は、パケットからなる各バイトのビットがサイクリックに回転(および/またはラップ(wrap))し、このような等式を使用するバイトコード符号化器によって生成されるデータストリームがさらに頑丈なものになるように選択される。 サイクリックな回転を選択すると、ガロア体の特定の特性に基づいてバイト内の最後のビットが最初のビットにラップアラウンドされるときの単純なサイクリックな回転から結果が変更される。 図1に示すもののような、トレリス符号化による追加的な処理により、送信される信号にさらなる冗長情報が追加されるが、元のビットからシンボルへのマッピングに大幅な影響が与えられることがない。 トレリス符号化および追加的な信号フィルタにより、ここに記載する4PAM信号がA53規格に記載される8−VSB信号に変換されることとなる。

    図19を参照すると、畳み込みインタリーバにおいて処理される各バイトのインタリーバ・マップ1900としてのダイアグラムが示されている。 インタリーバ・マップ1900は、図13におけるATSCのレガシーな符号化器1350で使用されるインタリーバ1356などの、畳み込みインタリーバの処理の間に入来するデータのバイトを整理したものを表している。 インタリーバ1356は、一連の遅延ラインを使用して実施されるが、インタリーバ・マップ1900は、インタリーバのためのメモリ・マップとみなされることがある。 インタリーバ・マップ1900は、入力バイトの置かれる、または、書き込まれる場所、さらに、出力バイトの読み出し方法を示す。 インタリーバ・マップ1900の各次元は、頂部に渡った、0〜206の番号が付けられたバイト、さらに、側部に沿って、頂部から底部に渡った、0〜103の番号が付けられたバイトとして示される。 ライン1910は、バイトが読み出される順序を示している。 例えば、ライン1910が行20を表すのであれば、バイト0からバイト206までの、行20の全てのバイトが読み出されるであろう。 最後のバイト、即ち、バイト206が行20から読み出されると、読み出しは、1行分、行21まで、インタリーバの最後の行が読み出されるまで進む。 最後の行が読み出されると、読み出しは、再び、(新たなパケット・データの)最初の行から繰り返される。

    ライン1920は、インタリーバのバイトの読み取りに基づく、バイトコード符号化およびリード・ソロモン符号化された207バイトの1番目のパケットのバイトの最初の52バイトの位置を表している。 ライン1920は、パケットにおける0バイトの位置から開始し、バイト51の位置を有する中心線1990で終端する。 ライン1922、1924、1924、1926a、および1926bは、1番目のパケットの残っているバイトの位置を示している。 ライン1922は、ラインの頂部のバイト52の位置などで開始し、ライン1922、1924、および1926aのバイト位置を処理する。 バイトの残りの部分は、ライン1926bに沿って位置し、ライン1990よりも一行下にある行の位置のバイト206で終端する。 連続するパケットにおけるバイトの位置は、1番目のパケットの位置の右側まで続いており、さらに、ライン1990の上側の並びや位置と同様に、ライン1990の下のマップの部分に続いている。 例えば、ライン1930は、52番目のパケット(即ち、1番目のパケットよりも52パケット後のパケット)のバイトの部分の位置を示している。 ライン1950は、グループ化されたパケットの送信のための境界線を示している。 各連続パケットでは、パケットの次の連続バイトは、境界線にかかっている。 結果として、ライン1950は、バイト0位置がパケット0となり、バイト1位置がパケット1となり、・・・というように、バイト52位置のパケット52まで続いている。 ライン1960は、ライン1950とライン1920との間の一行にある各バイトの位置を表している。 特に、ライン1960は、図14に示すような、行に配列されたパケットのセットの列26からのバイトであるバイトのグループの位置を示している。 次の行のバイトは、パケットのセットの部分のバイト27を含む。 ライン1960には、上述したバイトコード符号化処理を使用したデータの符号化の利点がある。 なぜならば、バイトコード符号化されたバイトは、インタリーバから、短い連続した期間に渡ってグループとして出力され、送信されるからである。

    各パケットのセットの特定の配列がロバストなデータストリームのより最適な送信構成(配列)を提供する点に留意することが重要である。 ロバストなデータストリームが連続して送信される(即ち、データストリームの部分がレガシーなデータである)場合、ロバストなデータストリームの配列が重要となることがある。 例えば、図19に示されるような52個のパケットのセットでは、受信システムにおけるデインタリーブ処理を用いて容易に予測および識別することができるようにロバストなデータを送信する送信特性がある。

    次に、図20を参照すると、受信機システムにおいて使用される復号器2000の実施の形態のブロック図が示されている。 復号器2000は、上述したデータストリームにおける非システマティックなパケットなど、冗長パケットを使用するように適合化された回路を含む。 復号器2000もまた、一般的に、レガシーな、または、既存のA53規格を使用して符号化されたデータを復号する機能を有する。

    復号器2000において、初回のチューニング、復調、さらに、他の回路(図示せず)による処理の後、トレリス復号器2002は、入来する信号を受信するトレリス復号器2002は、畳み込みデインタリーバ2004に結合される。 畳み込みデインタリーバ2004の出力は、バイトコード復号器2006に結合される。 バイトコード復号器2006の出力は、リード・ソロモン復号器2008に結合される。 リード・ソロモン復号器2008の出力は、デランダマイザ2010に結合される。 デランダマイザ2010の出力は、データ復号器2012に結合される。 データ復号器2012は、ビデオ表示やオーディオ再生などの受信機システムの残りの部分での使用のための出力信号を提供する。 トレリス復号器2002、デインタリーバ2004、リード・ソロモン復号器2008、デランダマイザ2010、およびデータ復号器2012は、図2に記載した各ブロックと同様の機能を有するため、ここでは詳細についてのさらなる説明を行わない。

    データ・パケットにおいてバイトのデータ形式で受信されたデータは、トレリス復号器2002によって復号され、デインタリーバ2004によってデインタリーブされる。 データ・パケットは、207バイトのデータを含むようにすることができ、さらに複数のグループ、即ち、24、26、または、52のパケットにグループ化することができる。 トレリス復号器2002およびデインタリーバ2004は、入来するレガシーな形式のデータ、さらに、バイトコード符号化されたデータを処理する機能を有する。 受信機にとっても既知である所定のパケット送信シーケンスに基づいて、バイトコード復号器2006は、パケットがバイトコード符号化された、または、ロバストなデータストリームに含まれるパケットであるかどうかを判定する。 受信されたパケットがバイトコード符号化されたデータストリームからのものではない場合には、受信されたパケットは、バイトコード復号器2006でさらに処理されることなしに、リード・ソロモン復号器2008に提供される。 バイトコード復号器2006もまた、符号化の間にデータストリームに乗算される、または加算される定数の既知のシーケンスを除去するデランダマイザを含む。 頑丈なデータストリームがシステマティックなバイトおよび元のデータと同一のバイトと、非システマティックなバイトおよび冗長データを含むバイトとの双方を含む点に留意することが重要である。

    受信されたものが、ロバストな、または頑丈なデータストリームに属するバイトコード符号化されたパケットであるとバイトコード復号器2006が判定すると、パケットは、同じデータストリームからなる他のパケットと共に復号される。 一実施の形態においては、同じデータストリームをバイトコード符号化したパケットが、パケット内で、各バイトに上述した等式(2)に示すバイトコード符号化されたパケットを発生させるのに使用された要素bの値の逆数を乗算することによって復号される。 非システマティックなパケットの各バイトの復号された値は、システマティックなパケットのバイトの各値と比較され、2つのパケットにおいて同一でないどのバイトの値も、システマティックなパケットにおいて消去される(即ち、零に設定する)か、非システマティックなパケットにおける情報によって置き換えられる。 消去されたエラーバイトを有するシステマティックなパケットは、その後、リード・ソロモン復号器2008において実行されるリード・ソロモン復号を用いて復号される。 以下、バイトコード復号器の他の実施の形態についてさらに説明する。

    バイトコード復号器2006は、図13に示すように符号化された信号を復号するブロック・コーダとして動作するように適合化させることができる。 例えば、バイトコード復号器2006には、パケット・インタリーバ1312と同様のパケット・インタリーバと、パケット・デインタリーバ1316と同様のパケット・デインタリーバとを含めることができる。 さらに、バイトコード符号化器の機能は、GF(256)SCBC(Serial Concatenated Block Coded)信号を復号するように適合化させることができる。 バイトコード復号器2006には、さらに、モバイル用またはATSC M/H受信のために符号化されたデータの識別および/またはアプリオリ・トレーニング・パケットの識別に使用される識別器ブロックを含めることができる。 さらに、識別器ブロックには、例えば、入来するパケットがモバイル受信のために使用されるPIDを含んでいるかどうかを判定するためのパケット識別器ブロック含めることができる。

    図5に示す符号化器500などの好ましい符号化器において、バイトコード符号化は、データ・パケットのリード・ソロモン符号化に先行して行われる。 しかしながら、ここで示す復号器2000において、入来するデータは、リード・ソロモン復号の前にバイトコード復号される。 バイトコード処理もリード・ソロモン・コード処理もA53規格において使用されるガロア体(256)上で線形であり、線形演算子はガロア体において可換であるため、順序を変更することもできる。 バイトコード符号化は、受信された信号におけるエラーを復元するのにより高い信頼性を提供するため、順序の変更は重要である。 結果として、リード・ソロモン復号の前にバイトコード復号を行うことにより、ビットエラーレートとSN比で測定される受信機のパフォーマンスが向上する。

    さらに、図5における符号化器500および図13における符号化器1300の実施の形態の説明と同様に、レガシーな受信機に最小限の変更を加えることで、レガシーな受信機において必要とされ、使用される要素、コンポーネント、および回路にバイトコード復号要素および処理を追加することができる点に留意されたい。 しかしながら、バイトコード復号処理機能をレガシーな受信機の他のブロックに組み込むことによって、復号処理を改善することができる。

    次に、図21を参照すると、受信機において使用される復号器2100の別の実施の形態のブロック図が示されている。 復号器2100は、電波を介した電磁波などの、送信媒体を介した信号の送信によって悪影響を受ける信号の受信および復号のための追加的な回路および処理を含む。 復号器2100は、頑丈なデータストリームとレガシーなデータストリームの双方を復号する機能を有する。

    復号器2100において、初期処理の後の入力信号は、イコライザ2106に提供される。 イコライザ2106は、トレリス復号器2110に結合され、トレリス復号器2110は、2つの出力を提供する。 トレリス復号器2110からの第1の出力は、フィードバックを提供し、再びフィードバック入力として、イコライザ2106に提供される。 トレリス復号器2110からの第2の出力は、畳み込みデインタリーバ2114に結合される。 畳み込みデインタリーバ2114は、バイトコード復号器2116に結合される。 バイトコード復号器2116もまた、2つの出力を提供する。 バイトコード復号器2116の第1の出力は、再びフィードバック入力として、畳み込みインタリーバ2118を介してトレリス復号器2110に結合される。 バイトコード復号器2116の第2の出力は、リード・ソロモン復号器2120に結合される。 リード・ソロモン復号器2120の出力は、デランダマイザ2124に結合される。 デランダマイザ2124の出力は、データ復号器2126に結合される。 リード・ソロモン復号器2120、デランダマイザ2124、さらに、データ復号器2126は、図2に記載されたリード・ソロモン、デランダマイザ、さらに、データ復号器ブロックと同様に結合され、機能的に動作するため、ここではさらなる説明は行わない。

    受信機(図示せず)のフロント・エンド処理(例えば、アンテナ、チューナ、復調器、A/D変換器)からの入力信号は、イコライザ2106に提供される。 イコライザ2106は、受信された信号を復元するために、受信された信号を処理し、完全に、または、部分的に送信チャンネル・エフェクトを除去する。 様々な除去やイコライゼーションの方法が当業者によって知られており、本明細書では説明しない。 イコライザ2106には、フィード・フォワード・イコライザ(FFE:Feed Forward Equalizer)セクションおよび決定フィードバック・イコライザ(DFE:Decision−Feedback−Equalizer)セクションを含む処理回路の複数のセクションを含めることができる。

    イコライズされた信号は、トレリス復号器2110に提供される。 トレリス復号器2110は、出力として、イコライザ2106のDEFセクションに提供される決定値のセットを生成する。 さらに、トレリス復号器2110は、イコライザ2106のDEFセクションに提供される中間決定値を生成する。 DEFセクションは、各決定値を、トレリス復号器2110からの中間決定値と共に使用して、イコライザ2106の内のフィルタ・タップの各値を調整する。 調整されたフィルタ・タップの各値は、受信信号に存在する干渉および信号反射をキャンセルする。 反復処理により、イコライザ2106は、トレリス復号器2110からのフィードバックの支援を受けて、時間の経過に伴って潜在的に発生する信号送信環境状態の変化に動的に適応する。 反復処理は、ディジタル・テレビジョン放送信号用の19Mb/秒など、信号が入来するデータ・レートと同一のレートで行うことができる点に留意することが重要である。 反復処理もまた、入来するデータ・レートよりも高いレートで行われる。

    トレリス復号器2110は、さらに、畳み込みデインタリーバ2114にトレリス復号されたデータストリームを提供する。 畳み込みデインタリーバ2114は、図20に記載されたデインタリーバと同様に動作し、データ・パケット内に整理されたデインタリーブされたバイトを生成する。 データ・パケットは、バイトコード復号器2116に提供される。 上述したように、頑丈なデータストリームの一部ではないパケットは、単純に、バイトコード復号器2116を介してリード・ソロモン復号器2120に受け渡される。 バイトコード復号器2116がパケットのグループを頑丈なデータストリームの一部として識別する場合は、バイトコード復号器2116は、非システマティックなパケットにおける冗長情報を使用して、まず、上述したようにパケットにおける各バイトを復号する。

    バイトコード復号器2116とトレリス復号器2110は、反復して動作し、ターボ復号器と呼ばれ、頑丈なデータストリームを復号する。 具体的には、トレリス復号器2110は、畳み込みデインタリーバ2114によるデインタリーブの後、頑丈なデータストリームに含まれるパケットの各バイト毎にバイトコード復号器2116に第1のソフト決定ベクトルを提供する。 通常は、トレリス復号器2110は、ソフト決定を確率値のベクトルとして発生させる。 実施の形態によっては、ベクトルの各確率値は、このベクトルに関連付けられたバイトが有するような値に関連付けられる。 また、他の実施の形態では、2/3レートのトレリス復号器が2ビット・シンボルを推定するため、確率値のベクトルは、システマティックなパケットに含まれるハーフ・ニブル(即ち、2ビット)毎に生成されることがある。 実施の形態によっては、トレリス復号器2110は、バイトの4つのハーフ・ニブルに関連付けられた4つのソフト決定を組み合わせて、バイトが有するであろう確率値のベクトルである1つのソフト決定値を生成する。 このような実施の形態においては、バイトに対応するソフト決定は、バイトコード復号器2116に提供される。 他の実施の形態では、バイトコード復号器は、システマティックなパケットのバイトに関するソフト決定を4個のソフト決定ベクトルに分け、4つのソフト決定の各々がバイトのハーフ・ニブルに関連付けられる。

    バイトコード復号器2116は、頑丈なデータストリームのパケットからなるバイトに関連付けられたソフト決定ベクトルを使用して、パケットからなるバイトの第1の推定値を生成する。 バイトコード復号器2116は、システマティックなパケットと非システマティックなパケットの双方を使用して頑丈なストリームからなるパケットのバイト毎に第2のソフト決定ベクトルを生成し、畳み込みインタリーバ2118による再インタリーブの後、第2のソフト決定ベクトルをトレリス復号器2110に提供する。 この後、トレリス復号器2110は、第2のソフト決定ベクトルを使用してバイトコード復号器2116に提供される第1の決定ベクトルの更なる反復処理を行う。 トレリス復号器2110およびバイトコード復号器2116は、トレリス復号器およびバイトコード復号器によって生成されるソフト決定ベクトルが収束するまで、または、所定数の反復が行われるまで、このような反復処理を行う。 この後、バイトコード復号器2116は、システマティックなパケットの各バイト毎にソフト決定ベクトルにおける確率値を使用して、システマティックなパケットの各バイト毎にハード決定を生成する。 ハード決定値(即ち、復号されたバイト)は、バイトコード復号器2116からリード・ソロモン復号器2120に出力される。 トレリス復号器2110は、最大事後確率(MAP:Maximum a Posteriori)復号器を使用して実施され、バイトまたはハーフ・ニブル(シンボル)・ソフト決定のいずれかに対して作用する。

    ターボ復号は、通常、入来するデータのレートよりも高い、ブロック間の決定データの通過に係る反復レートを使用する点に留意することが重要である。 想定される反復処理の数は、データ・レートと反復レートの比に制限される。 結果として、実行可能な範囲において、ターボ復号器における反復レートが高いほど、一般的に、エラー訂正の結果が改善する。 一実施の形態においては、入来するデータのレートの8倍の反復レートが使用される。

    図21に記載されたものなどのソフト入力ソフト出力バイトコード復号器には、ベクトル復号機能を含めることができる。 ベクトル復号は、システマティックなバイトおよび非システマティックなバイトを含むデータの各バイトをグループ化することに係る。 例えば、レート1/2のバイトコード符号化されたストリームでは、1個のシステマティックなバイトと1個の非システマティックなバイトをグループにする。 2つのバイトに対して想定される値は、64,000個の値を超える。 ベクトル符号化器は、2つのバイトに対して想定される各値毎に、確率を判定または推定し、確率マップを作成する。 ソフト決定は、想定されるそれぞれのものの幾つか、または、全ての確率の重み付け、さらに、想定される符号語に対するユークリッド距離に基づいて行われる。 ユークリッド距離のエラーが閾値よりも小さい場合には、ハード決定が行われることがある。

    図20および図21に記載されたように、バイトコード符号化器は、単純なバイトコード符号化器または連結型バイトコード符号化器による符号化を含み、上述したバイトコード符号化器によって符号化された頑丈なデータストリームを復号することができる。 図20および図21におけるバイトコード復号器では、単一の符号化ステップのみに係る、単純な、または、構成要素としてのバイトコード符号化器によって符号化される頑丈なデータストリームの復号が示されている。 連結型バイトコード復号は、デインタリーブ、デパンクチャ、さらに、再挿入などの中間処理に加え、入来する符号語またはバイトを1つを超える復号ステップで復号することを含む。

    次に、図22を参照すると、連結型バイトコード復号器2200の実施の形態のブロック図が示されている。 連結型バイトコード復号器2200は、図21に示されているようなターボ復号器構成において動作するように構成されている。 さらに、連結型バイトコード復号器2200は、反復処理を使用して、ターボ復号器として内部的に動作し、頑丈なデータストリームにおける連結型バイトコード符号化されたパケットを復号する。 連結型バイトコード復号器2200は、レート12/26のバイトコード符号化された信号ストリームを復号して元の符号化された26のバイトから12バイトのデータを生成するように構成される。

    26バイトのソフト決定値を表すデータストリームは、バイト挿入ブロック2202に提供される。 バイト挿入ブロック2202の出力は、第1の2/3レートのバイトコード復号器2204に結合される。 第1の2/3レートのバイトコード復号器2204は2つの出力を提供する。 第1の出力は、パンクチャ・ブロック2206に結合され、パンクチャ・ブロック2206の出力は、フィードバック出力として、図21に示すようなインタリーバを介してトレリス復号器に結合される。 第1の2/3レートのバイトコード復号器2204の第2の出力は、デインタリーバ2208に結合される。 シンボル・インタリーバ2208の出力は、第2の2/3レートの復号器2210に結合され、この第2の2/3レートの復号器2210もまた、2つの入力を有する。 第1の出力は、フィードバック入力としてインタリーバ2212を介して第1の2/3レートのバイトコード復号器2204に結合され、第2の出力は、リード・ソロモン復号器などの他の処理ブロックに結合される。

    バイト挿入ブロック2202に対する26バイトの入力は、システマティックなバイトのデータ、または、システマティック・パケットに関する、図21におけるトレリス復号器2110などのトレリス復号器によって作成される第1のソフト決定、さらに、非システマティックなバイトのデータ、または、非システマティックなパケットに関するソフト決定を含む。 システマティックなバイトのデータおよび非システマティックなバイトのデータは、バイトコード符号化されたパケットからのものとすることができる。 2/3レートのバイトコード符号化は、2データ・バイトを復号するのに3バイトを必要とする。 しかしながら、元の連結型符号化は、バイトを取り除いて符号語を27バイトから26バイトに減らしている。 好ましくは、非システマティックなバイトを取り除いている。 結果として、符号化処理におけるパンクチャによって取り除かれているバイトを置き換えるためのバイトが必要となる。 さらに、トレリス復号器は、データストリーム内でパンクチャされたバイトに関するソフト決定を生成しない。 なぜならば、トレリス復号器に対する入力ストリームは、そのバイトを含んでいないからである。 結果として、パンクチャされたバイトの値が同様に確からしいことを示すソフト決定値が挿入される。 バイト挿入ブロック2202から挿入されたソフト決定値を含む、第1のソフト決定は、第1の2/3レートのバイトコード復号器2204に提供される。 第1の2/3レートのバイトコード復号器2204は、第1のソフト決定を使用して、システマティックなパケットおよび非システマティックなパケットの各バイトの復号に基づいて第2のソフト決定を生成する。 ソフト決定には、例えば、上述した等式(2)および(3)において示されるバイトコード処理されたパケットを発生させるのに使用された要素b1およびb2の値の逆数で、各バイトのセットを乗じたものを利用する。

    第1の2/3レートのバイトコード復号器からの27バイトのソフト出力がパンクチャ・ブロック2206に提供される。 27バイトのソフト出力は、第1の2/3レートのバイトコード復号器における復号の後の、システマティックなバイトおよび非システマティックなバイトの双方のための更新されたソフト決定値のセットを表す。 パンクチャ・ブロック2206は、バイト・フォーマットをトレリス復号器によって元の処理された26バイトのフォーマットに戻すために前に挿入されたソフト決定バイトを取り除く。

    システマティックなバイトのみを表す第1の2/3レートのバイトコード符号化器からの18バイトのソフト出力がデインタリーバ2208に提供される。 デインタリーバ2208は、2/3レートのバイトコード符号化処理において実行されたインタリーブ処理の逆の処理を行うように、18バイトのデータをデインタリーブする。 デインタリーバ2208、例えば、図7の行710、720を逆にすることによって、符号化器におけるインタリーブ・マップを正確に逆にする。

    デインタリーブされたバイトは、第2の2/3レートのバイトコード復号器2210に提供される。 第2の2/3レートのバイトコード復号器2210は、デインタイーブされたソフト決定のシステマティックなバイトを使用し、上述したものと同じ方法で、ソフト決定バイトの2つの追加的な出力を生成する。 18バイトのソフト出力は、インタリーバ2212に提供される。 18バイトのソフト出力は、第1の2/3レートのバイトコード復号器2204における復号により得られるシステマティックなバイトおよび非システマティックなバイトの双方のための更新されたソフト決定値のセットを表す。 インタリーバ2212は、第1の2/3レートのバイトコード符号化器によって使用されたバイト・フォーマットに戻すために、デインタリーブされたバイトを再インタリーブする。 インタリーバ2212は、本質的に、図6のインタリーバ604など符号化器内で使用されるインタリーバと同一であり、再インタリーブされた18バイトのセットを、第1の2/3レートのバイトコード復号器2204に提供する。 再インタリーブされた18バイトのセットは、第1の2/3レートのバイトコード復号器2204によって行われるソフト決定を改善するために使用される。

    第2の2/3レートのバイトコード復号器2210からの12バイトの出力は、12/26レートのバイトコード符号化された頑丈なデータストリームのシステマティックなバイトの復号されたデータ出力を表す。 第2の2/3レートのバイトコード復号器2210によって生成される12個のシステマティックなソフト決定が確定的なものであるか、正しいデータ値として確定的な所定の閾値の範囲にある場合には、第2の2/3レートのバイトコード復号器2210は、ソフト決定を使用して12個の出力バイトに関するハード決定を生成し、12個の出力バイトをリード・ソロモン復号器などのさらなる処理ブロックに提供する。 しかしながら、第2の2/3レートのバイトコード復号器によって生成されたソフト決定が確定的でない場合には、従前の反復処理の間に生成され、フィードバックされたソフト情報を使用して、上述したさらなる反復処理が行われる。 この追加的なソフト情報は、後続する復号器によって、各ソフト復号器に提供される。 即ち、トレリス復号器は、パンクチャ・ブロック2206を通じて提供された第1の2/3レートのバイトコード復号器2204からのフィードバックを使用し、第1の2/3レートのバイトコード復号器2204は、インタリーバ2212を通じて提供される第2の2/3レートのバイトコード復号器2210からのフィードバックを使用する。 各反復処理は、第2の2/3レートのバイトコード復号器2210によって生成されたソフト決定が十分に収束するまで行われるか、または、所定数反復されるまで行われる。 上述したように、ターボ復号は、通常、入来するデータのレートよりも高い、ブロック間の決定データの通過に係る反復レートを使用する。

    次に、図23を参照すると連結型ブロックコード復号器2300の別の実施の形態のブロック図が示されている。 連結型バイトコード復号器2300は、図21に示されているものと、ターボ復号器構成において動作するように同様に構成される。 さらに、連結型バイトコード復号器2300は、3個の構成要素としてのバイトコード復号器に係る反復処理を使用し、ターボ復号器として内部的に動作して、頑丈なデータストリームにおける連結型バイトコード符号化されたパケットを復号する。 連結型バイトコード復号器2300は、レート12/52のブロックコード符号化された信号ストリームを復号するように構成され、元の符号化された52バイトから12バイトのデータを生成する。

    52バイトのソフト決定値を表すデータストリームがパケット挿入ブロック2302に提供される。 パケット挿入ブロック2302の出力は、第1の2/3レートのバイトコード復号器2304に結合される。 第1の2/3レートのバイトコード復号器2304は、2つの出力を提供する。 第1の出力は、パンクチャ・ブロック2306に結合され、図示しないが、パンクチャ・ブロック2306の出力は、フィードバック入力として、インタリーバを介してトレリス復号器に結合される。 第1の2/3レートのバイトコード復号器2304の第2の出力は、第1のデインタリーバ2308に結合されている。 第1のデインタリーバ2308の出力は、第2の2/3レートのバイトコード復号器2310に結合され、この第2の2/3レートのバイトコード復号器2310もまた、2つの出力を有する。 第1の出力は、フィードバック入力として、第1のインタリーバ2312を通じて、第1の2/3レートのバイトコード復号器2304に結合されている。 第2の出力は、第2のデインタリーバ2314に結合されている。 第2のデインタリーバ2314の出力は、1/2レートのバイトコード復号器2316に結合され、1/2レートのバイトコード復号器2316は2つの出力を有する。 第1の出力は、第2のインタリーバ2318を通じて第2の2/3レートのバイトコード復号器2310に結合される。 第2の出力は、リード・ソロモン復号器など、他の処理ブロックに結合されている。

    トレリス復号器からの第1のソフト決定を含む52バイトの入力は、パケット挿入ブロック2302に提供される。 パケット挿入ブロック2302は、52バイトを26バイトの2つのセットに分ける。 この分離は、図9における符号化器900などの符号化器によるバイトコード符号化の間に実行される分離との整合のために行われる。 パケット挿入ブロック2302は、上述したように、示されている同様の確からしさの値を有するソフト決定バイトを26バイトの各セットに挿入し、27バイトの2つのセットを作成する。 27バイトの2つのセットは、各セットをさらなるバイトコード復号段階で再度結合することが可能となるように、この処理においてはリンクされたままである。 第1の2/3レートのバイトコード復号器2304、第1のデインタリーバ2308、および第1のインタリーバ2312は、第1の2/3レートのバイトコード復号器の出力で、27個のソフト決定バイトの2つのセットと後続する18個のソフト決定バイトの2つのセットとの間のリンクを処理し、維持することを除けば、図22に記載されたものと同様に動作する。 パンクチャ・ブロック2306は、前に挿入されたソフト決定バイトを27個のソフト出力バイトの2つのセットから取り除き、2つのセットを連結する。 この連結は、バイトのフォーマットを元のトレリス復号器によって処理された52バイトのフォーマットに戻すために必要である。 パンクチャ・ブロック2306に提供される2つの27バイト・ソフト出力のセットは、第1の2/3レートのバイトコード復号器における復号後のシステマティックなバイトおよび非システマティックなバイトの双方のための更新されたソフト決定値のセットを表す。

    第2の2/3レートのバイトコード復号器2310は、上述したように、18バイトの2セットを処理するが、復号されたデータのシステマティックなバイトを表す12バイトの2セットを連結して24バイトのソフト決定出力を形成する。 24バイトのソフト決定出力は、第2のデインタリーバ2314に提供される。 図10に記載した符号化処理の一部としてインタリーバ1004において実行されたインタリーブ処理を逆にするように、第2のデインタリーバ2314は、24バイトのデータをデインタリーブする。 第2のデインタリーバ2314は、例えば、図1の行1110および1120を逆にすることによって、符号化器内のインタリーブ・マップを逆にする。

    デインタリーブされた24個のソフト決定バイトは、1/2レートのバイトコード復号器2316に提供される。 1/2レートのバイトコード復号器2316は、デインタリーブされたソフト決定のシステマティックなバイト使用し、上述したものと同様の方法でソフト決定バイトの2つの追加的な出力を生成する。 24バイトのソフト出力は、第2のインタリーバ2318に提供される。 24バイトのソフト出力は、1/2レートのバイトコード復号器における復号からのシステマティックなバイトと非システマティックなバイトの双方のための更新されたソフト決定値のセットを表す。 インタリーバ2318は、デインタリーブされたバイトを第2の2/3レートのバイトコード復号器2310によって使用されるフォーマットに戻すために、このデインタリーブされたバイトを再インタリーブする。 インタリーバ2318は、図6におけるインタリーバ604など、符号化器において使用されるインタリーバと本質的に同一であり、24バイトの再インタリーブされたセットを第2の2/3レートのバイトコード復号器2310に提供する。 第2の2/3レートのバイトコード復号器2310によって行われるソフト決定を改善するために、24バイトの再インタリーブされたセットが使用される。

    上述したように、1/2レートのバイトコード復号器2316の出力での12個のシステマティックなバイトに関するソフト決定が確定的なものであるか、正しいデータ値として確定的な所定の閾値の範囲にある場合には、1/2レートのバイトコード復号器2316は、ソフト決定を使用して12個の出力バイトに関するハード決定を生成し、12個の出力バイトをリード・ソロモン復号器などのさらなる処理ブロックに提供する。 しかしながら、1/2レートのバイトコード復号器によって生成されたソフト決定が確定的でない場合には、従前の反復処理の間に生成され、フィードバックされたソフト情報を使用して、上述したさらなる反復処理が行われる。 この追加的なソフト情報は、後続する復号器によって、各ソフト復号器に提供される。 即ち、トレリス復号器は、パンクチャ・ブロック2306を通じて提供された第1の2/3レートのバイトコード復号器2304からのフィードバックを使用し、第1の2/3レートのバイトコード復号器2304は、第1のインタリーバ2312を通じて提供される第2の2/3レートのバイトコード復号器2310からのフィードバックを使用する。 第2の2/3レートバイトコード復号器2310は、第2のインタリーバ2318を通じて提供される1/2レートのバイトコード復号器2316からのフィードバックを使用する。 反復処理は、1/2レートのバイトコード復号器2316によって生成されたソフト決定が十分に収束するまで行われるか、または、所定数反復されるまで行われる。 上述したように、ターボ復号は、通常、入来するデータのレートよりも高い、ブロック間の決定データの通過に係る反復レートを使用する。

    図24を参照すると、連結型バイトコード復号器2400の別の実施の形態のブロック図が示されている。 連結型バイトコード復号器2400は、図21に示されているものと、ターボ復号器構成において動作するように同様に構成されている。 連結型バイトコード復号器2400は、2つの構成要素としてのバイトコード復号器、2/3レートの復号器2402、さらに、1/2レートの復号器2404を含み、これらは、頑丈なデータストリームにおけるバイトコード符号化されたパケットに対し、並列に結合され、動作する。 連結型バイトコード復号器2400は、レート17/26のバイトコード符号化された信号ストリームを復号し、元の符号化された26バイトから17バイトを生成する。

    トレリス復号器から入来する26バイトのソフト決定値のデータストリームは、24バイトの第1のグループと2バイトの第2のグループに分けられる。 この分離は、図12における符号化器1200などの符号化器によって、バイトの各グループを組み合わせる構成に基づいて実行され、一般に、受信機には知られている。 この分離は、図示しない信号またはパケットの多重化器を使用して実行することができる。 代替的には、分離およびグループ化は、例えば、どのバイトを処理するかを選択するために入来するバイトをカウントすることによって、各バイトコード符号化器内で実行することができる。 24個のソフト決定バイトの第1のグループは、上述した2/3レートのバイトコード復号器2402によって復号される。 2個のソフト決定バイトの第2のグループは、上述した1/2レートのバイトコード復号器2404によって同様に復号される。

    2/3レートのバイトコード復号器2402における復号から得られるシステマティックなバイトおよび非システマティックなバイトの双方のための更新されたソフト決定値のセットを表す24バイトのソフト出力と、1/2レートのバイトコード復号器2404における復号から得られるシステマティックなバイトおよび非システマティックなバイトの双方のための更新されたソフト決定値のセットは、連結されて26バイトのソフト出力を形成する。 26バイトのソフト出力は、トレリス復号器に提供され、次のターボ復号器の反復の間の各バイトのソフト値決定を改善できる可能性がある。

    同様に、2/3レートのバイトコード復号器2402からのシステマティックなバイトを含む16バイトのソフト出力と、1/2レートのバイトコード復号器からのシステマティックバイトを含む1バイトのソフト出力は連結されて17バイトのソフト出力を形成する。 17個のシステマティックなバイトに関するソフト決定が確定的なものであるか、正しいデータ値として確定的な所定の閾値の範囲にある場合には、2/3レートのバイトコード復号器2402および1/2レートのバイトコード復号器2404は、ソフト決定を使用して、17個の出力バイトに関するハード決定を生成し、この17個の出力バイトをリード・ソロモン復号器などのさらなる処理ブロックに提供する。

    しかしながら、17個の出力バイトのソフト決定が確定的なものでない場合には、前の反復の間に生成され、フィードバックされたソフト情報を使用してさらなる反復が行われる。 追加的なソフト情報は、各ソフト復号器に対し、その後続する復号器によって提供される。 即ち、トレリス復号器は、2/3レートのバイトコード復号器2402および1/2レートのバイトコード復号器2404の連結された出力からのフィードバックを使用する。 反復処理は、ソフト決定が十分に収束するまで行われるか、または、所定数反復されるまで行われる。 上述したように、ターボ復号は、通常、入来するデータのレートよりも高い、ブロック間の決定データの通過に係る反復レートを使用する。

    図20〜図24に記載されたバイトコード復号器もまた、図13において記載されたGF(256)SCBCによって符号化される直列連結されたブロックコードを使用して符号化されたデータを復号するように構成することもできる。

    上述したバイトコード符号化および復号の構成を使用した様々なシステムは、既存の、または、レガシーな放送システムの用途の拡張を可能にする。 第1に、既存のレガシーな受信機は、ATSC M/Hを使用して符号化されたパケットが追加的に存在することによる利点を得られるであろう。 よりロバストなSCBC符号化されたパケットおよびアプリオリ・トラッキング・パケットをトレリス復号器およびイコライザにより処理し、ダイナミック信号環境状態のトラッキングを改善してもよい。 第2に、ATSC M/H符号化されたデータはロバストな、または、頑丈なデータを生成し、モバイル用、ハンドヘルド用、さらに、歩行者用のデバイスにおいて、レガシーなA53送信が受信されないような信号環境においてロバストなストリームを受信する受信システムを実現する。 例えば、12/52レートでのATSC M/H符号化は、レガシーなA53受信のための約15dBのホワイト・ノイズ閾値に対し、3.5dBに相当するホワイト・ノイズ閾値での信号受信を可能にする。 ATSC M/Hパケットを生成し、レガシーなA53データと共に周期的にパケットを送信することによって、処理のさらなる改善が得られる。 周期的な送信は、放送素材のビデオおよびオーディオ配信を可能にするのに重要である。 ATSC M/Hパケットもまた、1つ以上の送信バーストとしてグループ化し、送信することができる。 バースト送信は、モバイル用、ハンドヘルド用、または歩行者用の機器によって後で使用されるために蓄積されるデータ・コンテンツ、またはコンテンツの配信に重要である。

    各実施の形態は、様々な改変および変更を施した形態で実施される場合があり、図面に例示した特定の実施の形態を本明細書中で説明した。 しかしながら、開示する特定の形態に、本開示内容が限定されるように意図されたものではないことが明らかであろう。 むしろ、本発明は、付随する請求の範囲によって定義される開示内容の精神および範囲内で、改変を施した形態、均等物、さらに、変形を施した形態の全てを含むように意図されている。

    QQ群二维码
    意见反馈