誤り訂正(FEC)
Forward Error Correction / ゴリテイセイ
送り手があらかじめ冗長なデータを足しておき、受け手が再送を待たずに誤りを直す仕組みです。放送波では畳み込み符号とリードソロモン符号の二重構成で、IP伝送では再送(ARQ)との使い分けになります。
- 正式名称
- Forward Error Correction(前方誤り訂正)
- 考え方
- 送り手が冗長なデータを付け、受け手が再送なしで誤りを訂正する
- 地上デジタル放送の外符号
- RS(204,188)。188バイトに16バイトのパリティを付け、最大8バイトの誤りを訂正できる
- 地上デジタル放送の内符号
- 畳み込み符号。符号化率は1/2、2/3、3/4、5/6、7/8から選ぶ
- 規格
- ARIB STD-B31(地上デジタル放送の伝送方式)
- 前処理
- エネルギー拡散でバイト列のかたよりを散らし、インターリーブでバースト誤りを時間や周波数の方向に分散させる
- 新しい方式の符号
- DVB-S2やATSC 3.0ではLDPC符号を使う
- IP伝送での対比
- SRTやRISTは再送(ARQ)、SMPTE ST 2022-1はRTPへのFEC
放送の電波は、伝送の途中で必ず誤ります。それでも画面が乱れないのは、送る前に冗長なデータを足しておき、受信機がそれを使って誤りを直しているからです。仕様書に並ぶRS(204,188)や符号化率3/4という値は、この冗長分をどれだけ持たせるかの設定です。
誤り訂正が使われる場面
放送波では、送出の多重化から先の全区間が誤り訂正の対象です。多重化装置が作った188バイトのTSパケットに対して、送信側でパリティを付け、並べ替え、変調をかけます。受信機は逆の順で処理し、伝送路で付いた誤りを直してから元のTSに戻します。パラメータの選び方で、同じ送信出力でも届く範囲が変わります。
IP回線での素材伝送では、考え方が変わります。誤りではなくパケットの欠落が主な問題なので、足りないパケットを送り直させる再送(ARQ)が主流です。SRTやRISTはこの方式で、受け手が欠落を検出して送り直しを要求します。往復の時間が確保できない構成や一方向の配信では、代わりにFECを付けます。RTPにFECを載せる形はSMPTE ST 2022-1として規格化されています。
記録メディアや光ディスク、衛星回線も誤り訂正を前提に作られています。媒体や回線の性質ごとに符号の種類と冗長の量が違うだけで、考え方は同じです。
放送波の誤り訂正の仕組み
日本の地上デジタル放送は、性質の違う2つの符号を重ねています。
- 外符号のRS(204,188)は、188バイトのTSパケットに16バイトのパリティを付けます。1パケットあたり最大8バイトまでの誤りを訂正できます
- 内符号の畳み込み符号は、ビット列を連続的に符号化します。符号化率を1/2から7/8まで選べ、小さいほど冗長分が増えて頑丈になり、運べるデータは減ります
この前後に、誤りを扱いやすくする処理が入ります。エネルギー拡散は、同じ値が続くバイト列を疑似ランダム系列で散らし、送信スペクトルが偏らないようにします。インターリーブは、データの並びを時間や周波数の方向に散らす処理です。雷やフェージングで一瞬まとめて壊れても、並べ戻した後には誤りがばらばらの位置に散っているため、訂正符号で直せる範囲に収まります。
受信機がどのパラメータで復号すればよいかは、TMCC信号で伝えられます。階層ごとに変調方式や符号化率が違っても、これを読んで追従します。
IP伝送のFECとARQの違い
同じ「欠けたデータを取り戻す」目的でも、性質が正反対です。FECは常に冗長データを送るので帯域を余分に使いますが、遅延は一定で、送り手と受け手の往復が不要です。ARQは必要なときだけ送り直すので帯域の無駄が少ないかわりに、往復の時間を待てるだけのバッファ、つまり遅延が必要になります。
このため、回線の往復時間が短い区間ではARQ、衛星のように往復に時間がかかる区間や、受け手が多数いる配信ではFECが向きます。SRTやRISTでバッファの深さを往復時間の数倍に設定するのは、再送が間に合う余地を作るためです。考え方の比較はSRTを扱ったコラムでも整理しています。
よくある質問
FECと再送(ARQ)はどちらが良いのですか
用途で決まります。往復の時間を待てるならARQのほうが帯域の効率が良く、待てないならFECです。実際の伝送機器は両方を組み合わせ、再送で間に合わない分をFECで補う構成も取ります。
RS(204,188)の数字は何を意味していますか
188バイトのデータに16バイトのパリティを足して204バイトにするという意味です。この構成で、1つの塊の中の最大8バイトまでの誤りを訂正できます。188という値は、TSパケットの長さと同じです。
符号化率を上げるとどうなりますか
7/8のように符号化率を上げると冗長分が減り、同じ帯域で運べるデータが増えます。そのかわり誤りに弱くなるため、受信に必要なC/Nが上がり、届く範囲が狭くなります。地上デジタル放送では、運べる量と受信品質の折り合いを見てパラメータを決めています。
この用語を扱ったコラム
似ている形式との違い
| 名前 | 主に使う場面 | 誤り訂正(FEC)との違い |
|---|---|---|
| ARQ(再送) | IP回線での欠落の回復 | 足りないパケットを受け手が要求して送り直させる。往復の時間ぶん遅延が要るが、帯域の無駄は少ない |
| SMPTE ST 2022-7 | 局内IPの冗長化 | 同じ流れを2経路で送り、受け側で健全なパケットを選ぶ。誤りを訂正するのではなく経路を二重化する |
| CRC | 誤りの検出 | 誤りがあるかどうかを調べるだけで、直す機能はない。TSのセクションなどに付いている |
関連する用語
最終更新
