このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
誤りの検出と訂正
次を使用して誤りの検出と訂正を適用します。
巡回冗長検査 (CRC) 符号化手法。HDL 用に最適化された CRC 発生器と検出器も含まれます。
線形ブロック符号、ハミング符号、Bose–Chaudhuri–Hocquenghem (BCH) 符号、リード・ソロモン (RS) 符号、低密度パリティ チェック (LDPC) 符号、ターボ積符号 (TPC) を含むブロック符号化手法。HDL 用に最適化された RS 符号化器と復号化器も含まれます。
畳み込み、ターボ、事後確率 (APP)、およびビタビ手法を含む畳み込み符号化手法。処理速度を改善するために GUP で実行されるターボ復号化器とビタビ復号化器も含まれます。
偶数および奇数の次数をもつ有限体の元の取り扱いを有効にするガロア体。
誤り制御符号の詳細については、誤りの検出と訂正を参照してください。
関数
巡回冗長検査符号
crcConfig | Cyclic redundancy check (CRC) coding configuration (R2024a 以降) |
crcGenerate | Generate CRC code bits and append them to input data (R2024a 以降) |
crcDetect | Detect errors in input data using CRC parity bits (R2024a 以降) |
ブロック符号化
線形ブロック符号
cyclgen | 巡回符号のパリティ チェック行列と生成行列の生成 |
cyclpoly | バイナリ巡回符号の生成多項式の生成 |
decode | ブロック復号化器 |
encode | ブロック符号化器 |
gfweight | 線形ブロック符号の最小距離の計算 |
gen2par | パリティ チェック行列と生成行列間の変換 |
hammgen | ハミング符号のパリティ チェック行列と生成行列 |
syndtable | シンドローム復号化テーブルの作成 |
BCH 符号
bchenc | BCH 符号化器 |
bchdec | BCH 復号化器 |
bchgenpoly | BCH 符号の生成多項式の生成 |
bchnumerr | BCH 符号の訂正可能な誤りの数 |
リード・ソロモン符号
rsenc | リード・ソロモン符号化器 |
rsdec | リード・ソロモン復号化器 |
rsgenpoly | リード・ソロモン符号の生成多項式 |
rsgenpolycoeffs | リード・ソロモン符号の生成多項式の係数 |
LDPC 符号
ldpcEncode | バイナリ LDPC 符号の符号化 (R2021b 以降) |
ldpcDecode | バイナリ LDPC 符号の復号化 (R2021b 以降) |
ldpcEncoderConfig | LDPC 符号化器の構成の作成 (R2021b 以降) |
ldpcDecoderConfig | LDPC 復号化器の構成の作成 (R2021b 以降) |
ldpcQuasiCyclicMatrix | 準巡回 LDPC 符号のパリティ チェック行列 (R2021b 以降) |
dvbs2ldpc | DVB-S.2 規格の低密度パリティ チェック (LDPC) 符号 |
ターボ積符号
畳み込み符号化
convenc | バイナリ メッセージの畳み込み符号化 |
vitdec | ビタビ アルゴリズムを使用したバイナリ データの畳み込み復号化 |
distspec | 畳み込み符号の距離スペクトルの計算 |
getTurboIOIndices | ターボ符号化の出力インデックスの計算 (R2021a 以降) |
iscatastrophic | 非常に問題のある畳み込み符号に対応するトレリスに対して真 |
istrellis | 有効なトレリス構造体に対して真 |
oct2dec | 8 進数を 10 進数に変換 |
poly2trellis | 畳み込み符号多項式をトレリス表現に変換 |
ガロア体
ガロア体の計算 — 偶数次数の有限体
convmtx | ガロア体ベクトルの畳み込み行列 |
cosets | ガロア体の円周等分剰余の作成 |
dftmtx | ガロア体の離散フーリエ変換行列 |
fft | ガロア体ベクトルの高速フーリエ変換 |
filter (gf) | ガロア体に対する 1 次元デジタル フィルター |
gf | ガロア体配列 |
gftable | ガロア体の計算を高速にするためのファイルの生成 |
ifft | ガロア体ベクトルの逆高速フーリエ変換 |
isprimitive | ガロア体の原始多項式に対して真 |
log | ガロア体の対数 |
minpol | ガロア体の元の最小多項式を求める |
mldivide | A がガロア配列である線形方程式系 Ax = B における x の求解 |
primpoly | ガロア体に対する原始多項式を求める |
奇数個の元をもつガロア体 — 奇数次数の有限体
gfadd | ガロア体上の多項式を加算 |
gfconv | ガロア体上の多項式を乗算 |
gfcosets | ガロア体の円周等分剰余の作成 |
gfdeconv | ガロア体上の多項式を除算 |
gfdiv | ガロア体の要素の除算 |
gffilter | ガロア素体における多項式を使用したデータのフィルター処理 |
gflineq | ガロア素体における Ax = b の特解を求める |
gfminpol | ガロア体の元の最小多項式を求める |
gfmul | ガロア体の元の乗算 |
gfpretty | 従来の形式の多項式 |
gfprimck | ガロア体上の多項式が原始多項式であるかどうかをチェック |
gfprimdf | ガロア体に対して既定の原始多項式を与える |
gfprimfd | ガロア体に対する原始多項式を求める |
gfrank | ガロア体上の行列のランクを計算 |
gfrepcov | バイナリ多項式表現を別の表現に変換 |
gfroots | ガロア素体における多項式の根の求解 |
gfsub | ガロア体上の多項式を減算 |
gftrunc | 多項式表現の長さの最小化 |
gftuple | ガロア体の元の形式の簡略化または変換 |
オブジェクト
巡回冗長検査符号
comm.CRCGenerator | CRC 符号ビットの生成と入力データへの付加 |
comm.CRCDetector | CRC を使用した入力データの誤り検出 |
comm.HDLCRCGenerator | CRC 符号ビットの生成と入力データへの付加 |
comm.HDLCRCDetector | CRC を使用した入力データの誤り検出 |
ブロック符号化
BCH 符号
comm.BCHEncoder | BCH 符号化器を使用したデータの符号化 |
comm.BCHDecoder | BCH 復号化器を使用したデータの復号化 |
リード・ソロモン符号
comm.RSEncoder | リード・ソロモン符号化器を使用したデータの符号化 |
comm.RSDecoder | リード・ソロモン復号化器を使用したデータの復号化 |
comm.HDLRSEncoder | リード・ソロモン符号化器を使用したメッセージの符号化 |
comm.HDLRSDecoder | リード・ソロモン復号化器を使用したメッセージの復号化 |
LDPC 符号
comm.gpu.LDPCDecoder | GPU を使用したバイナリ低密度パリティ チェック (LDPC) 符号の復号化 |
畳み込み符号化
comm.ConvolutionalEncoder | バイナリ データの畳み込み符号化 |
comm.gpu.ConvolutionalEncoder | GPU によるバイナリ データの畳み込み符号化 |
comm.TurboEncoder | 並列連結符号化方式を使用した入力信号の符号化 |
comm.APPDecoder | APP 法を使用した畳み込み符号の復号化 |
comm.TurboDecoder | 並列連結復号化スキームを使用した入力信号の復号化 |
comm.gpu.TurboDecoder | GPU によるターボ復号化を使用した入力信号の復号化 |
comm.ViterbiDecoder | ビタビ アルゴリズムを使用した畳み込み符号化されたデータの復号化 |
comm.gpu.ViterbiDecoder | GPU によるビタビ アルゴリズムを使用した畳み込み符号化されたデータの復号化 |
ブロック
巡回冗長検査符号
General CRC Generator | 生成多項式に基づいて CRC 符号ビットを生成し、入力データ フレームに付加する |
General CRC Syndrome Detector | 生成多項式に従って、受信したコードワード フレームの誤りを検出する |
General CRC Generator HDL Optimized | CRC 符号ビットを生成し、それらを入力データに付加 |
General CRC Syndrome Detector HDL Optimized | CRC を使用した入力データの誤り検出 |
ブロック符号化
線形ブロック符号
Binary Cyclic Encoder | バイナリ ベクトル データから組織巡回符号を作成する |
Binary Cyclic Decoder | バイナリ ベクトル データを復元するために組織巡回符号を復号化する |
Binary Linear Encoder | バイナリ ベクトル データから線形ブロック符号を作成する |
Binary Linear Decoder | バイナリ ベクトル データを復元するために線形ブロック符号を復号化する |
Hamming Encoder | ハミング符号のバイナリ ベクトル データからの生成 |
Hamming Decoder | ハミング符号の復号化によるバイナリ ベクトル データの復元 |
BCH 符号
BCH Encoder | バイナリ ベクトル データからの BCH 符号の作成 |
BCH Decoder | BCH 符号の復号化によるバイナリ ベクトル データの復元 |
リード・ソロモン符号
Binary-Input RS Encoder | バイナリ ベクトル データからのリード・ソロモン符号の作成 |
Binary-Output RS Decoder | バイナリ ベクトル データを復元するためのリード・ソロモン符号の復号化 |
Integer-Input RS Encoder | リード・ソロモン符号の整数ベクトル データからの作成 |
Integer-Output RS Decoder | リード・ソロモン符号の復号化による整数ベクトルデータの復元 |
Integer-Input RS Encoder HDL Optimized | リード・ソロモン (RS) 符号化器を使用したデータの符号化 |
Integer-Output RS Decoder HDL Optimized | リード・ソロモン (RS) 復号化器を使用したデータの復号化 |
LDPC 符号
LDPC Encoder | バイナリ低密度パリティ チェック (LDPC) コードの符号化 |
LDPC Decoder | バイナリ低密度パリティ チェック (LDPC) コードの復号化 |
ターボ積符号
TPC Encoder | ターボ積符号 (TPC) 符号化器 |
TPC Decoder | ターボ積符号 (TPC) 復号化器 |
畳み込み符号化
Convolutional Encoder | 畳み込み符号化スキームを使用したバイナリ データの符号化 |
Turbo Encoder | 並列連結符号化スキームを使用したバイナリ データの符号化 |
APP Decoder | 事後確率 (APP) 法を使用して畳み込み符号を復号化する |
Turbo Decoder | 並列連結復号化スキームを使用した入力信号の復号化 |
Viterbi Decoder | ビタビ アルゴリズムを使用した畳み込み符号化されたデータの復号化 |
トピック
- 誤りの検出と訂正
巡回冗長検査 (CRC) 符号を使用した誤りの検出。さまざまな誤り制御チャネル符号化テクニックを学ぶ。
- 短縮リード・ソロモン符号の送受信
RS 符号化し、64-QAM 変調した標準データと短縮データを AWGN チャネルを介して送受信します。
- Simulink での消失、パンクチャ、および短縮を使用したリード・ソロモン符号化
消失、パンクチャおよび短縮を使用したブロック符号化を実行するためのリード・ソロモン (RS) コードを構成する。
- ユーザー定義トレリス構造体の作成、検証、およびテスト
MATLAB® を使用してユーザー定義トレリス構造体を作成および検証してから、Simulink® に組み込まれているユニット テスト ベンチを使用して実装をテストします。
- ガロア体の取り扱い
この例では、ガロア体の取り扱い方法を示します。
- Communications Toolbox での多項式の表現
さまざまな構文を使用して、多項式を文字ベクトルまたは string スカラーとして指定できます。
注目の例
DVB-S.2 リンク (LDPC 符号化を含む)
この例では、米国の DIRECTV が展開する第 2 世代デジタル ビデオ放送規格 (DVB-S.2) の低密度パリティ チェック (LDPC) 符号の応用について説明します。Communications System object を使用し、LDPC の符号化と復号化を含む送信機と受信機のチェーンをシミュレートします。
DVB-S.2 リンク (Simulink での LDPC 符号化を含む)
このモデルでは、第 2 世代のデジタル ビデオ放送規格 (DVB-S.2) で使用され、DIRECTV が合衆国で展開している最先端のチャネル符号化方式を示します。符号化方式は、LDPC (低密度パリティ検査) 符号と BCH 符号の連結に基づいています。Gallager が独創性に富んだ博士論文で 1960 年に考案した LDPC 符号では、低複雑性反復復号化アルゴリズムを使用することによって、チャネル容量に近い非常に低いエラー レートを実現できます。外部の BCH 符号は、LDPC 復号化器によって生成される散発的な誤りを訂正するのに使用されます。
LDPC Link Simulation Using GPU Processing
Use the ldpcDecode function and gpuArray to increase the speed of a communications system simulation.
テールバイティング畳み込み符号化
Convolutional Encoder ブロックと Viterbi Decoder ブロックを使用して、テールバイティング畳み込み符号をシミュレートする。
AWGN 環境下での符号化率 2/3 の畳み込み符号
リンクのビット エラー レート対 Eb/No の曲線を生成します。リンクは AWGN 環境下で 16-QAM 変調および符号化率 2/3 の畳み込み符号を使用します。
パンクチャド畳み込み符号化
この例では、畳み込み符号化器とビタビ復号化器 System object を使用して、パンクチャド符号化システムをシミュレートする方法を示します。ビタビ復号化器の複雑度は符号化率に伴い急激に増大します。パンクチャとは、標準符号化率 1/2 の符号化器と復号化器を使用して高符号化率の符号の符号化と復号化を可能にする手法です。
硬判定および軟判定ビタビ復号化の BER の推定
硬判定および軟判定ビタビ復号化器の AWGN 環境下でのビット エラー レート (BER) 性能を推定します。この性能を、符号化されていない 64-QAM リンクの性能と比較します。
GPU の使用によるターボ符号化ビット エラー レートのシミュレーションの高速化
この例では、GPU を使用してビット エラー レートのシミュレーションを大幅に高速化する方法について示します。ターボ符号は多くの最新通信システムの基本です。ターボ復号化器には膨大な量の計算が含まれており、有効なビット エラー レートシミュレーションのためには試行を数多く行う必要があるため、ターボ復号化器は GPU 高速化を実現する理想的な候補となります。並列連接畳み込み符号化: ターボ符号の例を参照してください。この例のデータ処理チェーンの説明でターボ符号の詳細を確認できます。
5G LDPC Block Error Rate Simulation Using the Cloud or a Cluster
Use the cloud or a cluster for block error rate (BLER) simulation of low-density parity-check (LDPC) coding for the 5G NR downlink shared transport channel (DL-SCH).
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)