Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

Simulink でのデジタル ビデオ放送 - ケーブル (DVB-C)

このモデルでは、デジタル テレビ信号のケーブル システム通信用 ETSI (欧州電気通信標準化機構) EN 300 429 規格 [ 1 ] の一部を示します。この規格は送信機の設計について規定し、受信機の最小性能要件を設定しています。

この例の目的は以下のとおりです。

  • 実現可能な送信機設計の主要部分をモデル化 (MPEG-2 トランスポート パケット データで 64-QAM モードで動作)

  • 実現可能な受信機設計の主要部分をモデル化 (MPEG-2 トランスポート パケット データで 64-QAM モードで動作)

  • モデルがシステム パフォーマンス要件を満たすかどうかを判断するための誤り統計を生成

  • DVB-C (または同類の) システム設計のための主要な Communications Toolbox™ ライブラリ ブロックの使用方法を説明

使用可能な例のバージョン

この例には 2 つのバージョンがあります。

浮動小数点バージョン: commdvbc.slx

固定小数点バージョン: commdvbc_fixpt.slx

例の構造

MATLAB® ワークスペース変数パラメーターの定義

この例のモデルをはじめて読み込むと、MATLAB ワークスペース変数 prmDVBC が作成されます。これは、モデル ファイルのブロックでパラメーターとして使用されるメンバーをもつ構造体です。また、モデルを閉じるとこのワークスペース変数がクリアされることにも注意してください。

prmDVBC = 

  struct with fields:

             bitsPerByte: 8
             bitsPerMTpl: 6
     MPEG2DatRateBitPerS: 9600000
     rawMPEG2DataPcktLen: 184
     MPEG2TrnsprtPcktLen: 188
    MPEG2TrnsprtFramePer: 1.5667e-04
     MPEG2PcktsPerSprFrm: 8
     MPEG2TrnsSuperFrame: 1504
      PRBSSeqPeriodBytes: 1503
       PRBSSeqPeriodBits: 12024
        RSCodewordLength: 204
       CableChanFrameLen: 272
      CableChanFrmPeriod: 1.5667e-04
      RCosineSampsPerSym: 8
       CableSymbolPeriod: 7.1998e-08
       RCosineFilterSpan: 16
     TxRxSymbolSampDelay: 288
     DeintrlvrAlignDelay: 192
        QAMSymbolMapping: [44 45 41 40 52 54 62 60 46 47 43 42 53 55 63 61 … ]
     ConvIntlNumBranches: 12
       ConvIntlCellDepth: 17

ベースバンド物理インターフェイス (シミュレート対象の MPEG-2 データ ソース)

モデルのこの部分は、[ 1 ] の節 4.1、5、および 6 に対応しています。MPEG-2 トランスポート パケットは ISO®/IEC 13818-1 [ 2 ] で定義されており、188 バイトのパケットで構成されています。

Communications Toolbox、DSP System Toolbox™ および Simulink® ライブラリ ブロックは、システムのシミュレーションと BER 性能測定の目的で MPEG-2 トランスポート パケット データ ストリームをシミュレートするのに使用されます。

送信機のベースバンド処理

  • Sync1 Inversion and Randomization

このサブシステムは、[ 1 ] の節 4.2 と 7.1 に対応しています。MPEG-2 Sync1 バイトが変換され、データ ストリーム (Sync バイトを除く) がスペクトルの整形のためにランダム化されます。再設定可能な PN Sequence Generator ライブラリ ブロックは、このデータ ランダム化処理のスクランブラーの一部として使用されます。

  • Shortened (204,188) Reed-Solomon Encoder

このライブラリ ブロックは、[ 1 ] の節 4.3 と 7.2 に対応しています。規格に記述されているように、この処理によって 16 パリティ バイトが MPEG-2 トランスポート パケットに追加されて (204,188) コードワードが指定されます。これにより、トランスポート パケットあたり最大で 8 つの誤ったバイトを対応する受信機の Reed-Solomon Decoder ブロックで修正できます。

  • 畳み込みインターリーバー

このライブラリ ブロックは、[ 1 ] の節 4.4 と 7.3 に対応しています。インターリーブ処理は Forney の方法 [ 3 ] に基づいており、I = 12 の場合、Ramsey 型 III の方法 [ 4 ] と互換性があります。

  • Byte (8-bit) to M-Tuple (6-bit) Conversion

この処理を実行するために、MATLAB® Function ブロックが使用されます。8 ビットのデータ バイトは、64 値 (6 ビット) の値に変換されます。このブロックは、[ 1 ] の節 4.5 と 8 に対応しています。

  • Differential Encoding

[ 1 ] の節 4.6 と 8 に記述されているように、Differential Encoding ユニットの実装例は MATLAB Function ブロックを使用して示されています。この例のモデルの目的上、Differential Encoding ユニットの出力は終端に接続されます (つまり、ユニットは無視されます)。

  • 64-QAM Constellation Mapping

Rectangular QAM Modulator Baseband ライブラリ ブロックは、[ 1 ] の節 4.7 と 9 に記述されているように、ベースバンド 64 値 (M 組) の値を伝送用の複素数 (I と Q) 64-QAM コンスタレーション シンボル値にマッピングします。

Square Root Raised Cosine Interpolation Filter

このライブラリ ブロックは、[ 1 ] の節 4.7、9、および Annex A に記述されているように、送信用の複素数 (I と Q) コンスタレーション シンボル値のベースバンド整形を実行します。

AWGN チャネル

規格で規定されているように、システム FEC は、ビット エラー レート (BER) の範囲を 10^-4 から 10^-10 ~ 10^-11 ("疑似エラー フリー" の動作) に向上するように設計されています。AWGN Channel ライブラリ ブロックの Signal to Noise Ratio (Eb/No) は、およそ 10^-4 で動作する BER に対応する 16.5 dB に設定されます。

Square Root Raised Cosine Rx Decimation Filter

このライブラリ ブロックは、[ 1 ] の節 4.7、9、および Annex A に記述されているように、受信した複素数 (I と Q) コンスタレーション シンボル値の整合間引きフィルター処理を実行します。

受信機のベースバンド処理

  • 64-QAM Constellation Demapping

Rectangular QAM Demodulator Baseband ライブラリ ブロックは、[ 1 ] の節 4.7 と 9 に記述されているように、受信したベースバンドの複素数 (I と Q) 64-QAM コンスタレーション シンボル値を 64 値 M 組にデマッピングします。

  • Differential Decoding

この例のモデルの目的上、Differential Decoding の部分は省略されます。さらに、より現実的な受信機システムの実装では、受信機のモデルのこの部分よりも先に、イコライズと同期の処理が行われる傾向があります。

  • M-Tuple (6-bit) to Byte (8-bit) Conversion

この処理を実行するには、MATLAB Function ブロックを使用します。これは、送信機で使用されるバイトから M 組への変換処理の逆です。64 値 (6 ビット) M 組の値は、8 ビットのデータ バイトに再パックされます。

  • 畳み込みデインターリーバー

Convolutional Deinterleaver ライブラリ ブロックは、送信機のサブシステムの実装で使用される Convolutional Interleaver ライブラリ ブロックに対応しています。デインターリーブ処理は Forney の方法 [ 3 ] に基づいており、I = 12 の場合、Ramsey 型 III の方法 [ 4 ] と互換性があります。

この例のモデルを簡略化するために、単純に追加の遅延を使用して最初の sync バイトを Convolutional Deinterleaver の "0" 分岐に同期します。より現実的な受信機システムの実装では、モデルのこの部分よりも先に、さらに別の上流ストリームの同期処理が行われる傾向があります。

  • Shortened (204,188) Reed-Solomon Decoder

このライブラリ ブロックは、符号化されたデータ パケットに対応した R-S 復号化を実行します。

  • Sync1 Inversion and Energy Dispersal Removal

このサブシステムは、データのスクランブル解除を実行して受信した MPEG-2 トランスポート パケットのデータ バイトを入手します。

結果と表示

この例の性能を調べるには、以下にリストされているように、含まれている可視化ブロックを使用します。

全体的なシステムの結果と表示:

  • Bit rate (Mbit/s) の表示

  • Cable symbol rate (MBaud) の表示

  • 64-QAM bit error rate (BER) の表示

  • System bit error rate (BER) の表示

  • さまざまな内部ビット エラー レート (BER) の表示 (Internal Tx and Rx BER サブシステムの下)

送信機/受信機の結果と表示:

  • Rx 64-QAM Constellation 散布図

  • Tx/Rx Spectrum (2MHz BW) スコープ

  • Total Number of Errors Corrected の表示

固定小数点バージョンと浮動小数点バージョンの例の相違点

この例には、浮動小数点バージョンと固定小数点バージョンの 2 つの異なるバージョンがあります。この例は似ています。具体的には、Transmitter Baseband Processing サブシステムと Receiver Baseband Processing サブシステムの大部分が同じであり、信号パスでは主に符号なし整数データ型を使用します。

2 つのバージョンの違いは、Byte to M-tuple Conversion ブロック、64-QAM Constellation Mapping ブロック、Square Root Raised Cosine Tx Interpolation Filter ブロック、Square Root Raised Cosine Rx Decimation Filter ブロック、64-QAM Constellation Demapping ブロック、M-Tuple to Byte Conversion ブロックでの信号の処理方法です。これらのブロックでは、浮動小数点バージョン (commdvbc.slx) と同じように、入出力信号が浮動小数点であった場合 (つまり、データ型が double または single) や単に組み込み整数 (uint8 など) であった場合、浮動小数点 (および組み込み整数) 演算が使用されます。

ただし、固定小数点バージョン (commdvbc_fixpt.slx) では、入出力信号が固定小数点のデータ型 (つまり、Simulink の sfix または ufix) であるため、ブロックでは固定小数点演算が使用されます。また、この例の固定小数点バージョンを実行するには Fixed-Point Designer™ のライセンスが必要であることにも注意してください。

次のシミュレーション結果には、浮動小数点バージョンと固定小数点バージョンを比較したときに選択した設定で、一致した BER 性能が示されています。

参考文献

  1. ETSI Standard EN 300 429 V1.2.1: Digital Video Broadcasting (DVB); Framing structure, channel coding and modulation for cable systems, European Telecommunications Standards Institute, Valbonne, France, 1998.

  2. ISO/IEC 13818-1, "Coding of moving pictures and associated audio."

  3. Forney, G., D., Jr. "Burst-Correcting Codes for the Classic Bursty Channel." IEEE Transactions on Communications, vol. COM-19, October 1971, pp. 772-781.

  4. Ramsey, J. L. "Realization of Optimum Interleavers."IEEE Transactions on Information Theory, IT-16 (3), May 1970, pp. 338-345.