Communications System Toolbox

主な機能

  • 情報源符号化、チャネル符号化、インターリーブ、変調、チャネルのモデリング、MIMO、等化、同期といった、通信システム物理層設計のためのアルゴリズム
  • Turbo、LDPC、Viterbi デコーダーなど、計算集中型のアルゴリズムのための GPU 対応 System object
  • コンスタレーションとチャネル分散のためのアイ ダイアグラム スコープ アプリおよび可視化関数
  • システムのシミュレートされたビット誤り率を解析結果と比較するビット誤り率アプリ
  • AWGN、マルチパス レイリー フェージング、ライス フェージング、MIMO マルチパス フェージング、LTE MINO マルチパス フェージングなどのチャネル モデル
  • 非線形性、位相ノイズ、熱雑音、および位相と周波数のオフセットなどの基本的な RF 障害
  • MATLAB 関数、MATLAB System object、および Simulink ブロックとしてアルゴリズムを提供
  • 固定小数点モデリングと、C コードおよび HDL コードの生成をサポート

システム設計、特性評価、および可視化

通信システムの設計とシミュレーションでは、実際の環境では避けられないノイズや干渉に対する応答を解析し、グラフィカルな手法や定量的な手法を使用してシステムの挙動を検討したうえ、結果として得られるパフォーマンスが許容可能な水準を満たすかどうかを判断することが必要になります。

Communications System Toolbox では、通信システムの設計やシミュレーションに必要なさまざまなタスクを実行できます。この System Toolbox の多くの関数、アプリ、System object、およびブロックは、復調器やイコライザーなどの、通信システムに特化したコンポーネントに関連する計算を実行します。

システムの特性評価

この System Toolbox では、システムのパフォーマンスを定量的に評価するために、次のような標準的な方法が提供されています。

  • ビット エラーレート (BER) の計算。
  • 隣接チャネル電力比 (ACPR) の測定
  • エラー ベクトル マグニチュード (EVM) の測定。
  • 変調誤差比 (MER) の測定。

BER の計算はあらゆる通信システムの特性評価において基本となるため、この System Toolbox では、BER のテスト シナリオの設定、および BER シミュレーションの加速のために、次のツールと機能が提供されています。

ビット誤り率解析アプリ — 通信システムの BER 性能を解析できるアプリです。 シミュレーションに基づく手法、半解析的手法、または理論的手法でパフォーマンスを解析できます。

エラーレートテスト コンソール — 通信システムのシミュレーションを実行して、エラー率のパフォーマンスを測定するための MATLAB オブジェクト。ユーザー定義のテストポイントを指定でき、各パラメーターでのパフォーマンスをプロットしたグラフを生成できます。マルチコア プラットフォームで実行する際には、演算速度を高速化できます。

マルチコアと GPU による高速化 — ご使用のコンピューターでマルチコアと GPU ハードウェアを使用してシミュレーションの演算を高速化する、Parallel Computing Toolbox の機能。

分散処理とクラウド コンピューティングへの対応 — サーバー ファームや Amazon EC2 Web サービスの処理能力を活用するための、Parallel Computing Toolbox と MATLAB Distributed Computing Server の機能。

パフォーマンスの可視化

この System Toolbox では、システムのパフォーマンスを可視化するために次の機能が提供されています。

チャネルの可視化ツール — フェージング チャネルの特性を可視化。

アイ パターンとコンスタレーション — システムの挙動を定性的、視覚的に理解するための、初期設定が可能。

信号の軌跡のプロット — 決定ポイント間における信号の軌跡を継続的に可視化。

BER のプロット — SNR や固定小数点によるワード サイズといった指標によってパラメーター化された、設計候補の BER パフォーマンスを定量的に可視化。

モデルの任意のポイントやステップで信号を可視化および解析するための、通信に特化した表示機能。

モデルの任意のポイントやステップで信号を可視化および解析するための、通信に特化した表示機能。表示機能には、左上から時計回りに、チャネルのインパルス応答の履歴、I/Q 信号のアイ パターン、理論的結果とシミュレーション結果を比較する BER パフォーマンスのプロット、受信信号のコンスタレーションがあります。

アナログ変調とデジタル変調

アナログ変調とデジタル変調の技法では、情報のストリームが転送に適した信号にエンコードされます。Communications System Toolbox には、多数の変調機能と、それに対応する復調機能が用意されています。これらの機能は、MATLAB 関数とオブジェクト、MATLAB System object、および Simulink ブロックとして提供されています。

このツールボックスでは、次の種類の変調が用意されています。

アナログ、AM、FM、PM、SSB、および DSBSC

デジタル、FSK、PSK、BPSK、DPSK、OQPSK、MSK、PAM、QAM、および TCM。

16 QAM シミュレーションのコンスタレーションをもつ MATLAB 関数と Simulink モデル。

16 QAM シミュレーションのコンスタレーションをもつ MATLAB 関数 (左) と Simulink モデル (右)。

情報源符号化とチャネル符号化

Communications System Toolbox には情報源符号化とチャネル符号化の機能が用意されているため、符号化機能を新たに作成する必要がなく、通信アーキテクチャの開発および評価を迅速に行い、さまざまな仮定に基づいてシステムを検討することができます。

情報源符号化

情報源符号化は量子化または信号のフォーマットとも呼ばれ、冗長性を減らし、後続の処理のための準備を行う、データ処理の方法です。この System Toolbox では、情報源の符号化と復号化を実行するために、次のさまざまな種類のアルゴリズムが提供されています。

  • 量子化
  • 圧伸 (µ-law、および A-law)
  • 差分パルス符号変調 (DPCM)
  • ハフマン符号化。
  • 算術符号化

チャネル符号化

この System Toolbox には、ノイズやチャネルの影響を防ぐために、誤り検出と訂正を行うためのブロックと畳み込み符号器/復号器が提供されています。また、本来備わっている誤り訂正をともなわない単純な誤り検出のために、巡回冗長検査 (CRC) も用意されています。この System Toolbox で提供されているチャネル符号化機能には、次のものがあります。

  • BCH エンコーダーとデコーダー
  • リードソロモン エンコーダーとデコーダー。
  • LDPC エンコーダーとデコーダー。
  • 畳み込みエンコーダーと Viterbi デコーダー
  • 直交波時空間ブロック符号 (OSTBC) (MIMO チャネル用のエンコーダーとデコーダー)
  • ターボ エンコーダーとデコーダーのデモ

この System Toolbox には、独自のチャネル符号化を作成するためのユーティリティ関数が用意されています。多項式と係数、シンドローム復号テーブルに加え、製品のパリティチェックや生成行列を作成できます。

また、通信システムのバースト エラーによって生じるデータ エラーを軽減するために、ブロックとコンボリューショナル インターリーブ/デインターリーブ機能も提供されています。

ブロック、一般的なブロック インターリーバー、代数的インターリーバー、ヘリカル スキャン インターリーバー、行列インターリーバー、およびランダム インターリーバー。

畳み込み、一般的な多重インターリーバー、コンボリューショナル インターリーバー、およびヘリカル インターリーバー。

チャネルのモデリングと RF 障害

チャネルのモデリング

Communications System Toolbox には、ノイズ、フェージング、干渉といった、通信チャネルで一般的にみられる歪みをモデリングするためのアルゴリズムやツールが用意されています。この System Toolbox では、次の種類のチャネルがサポートされています。

  • 加法性白色ガウス雑音 (AWGN)、
  • MIMO (Multiple-Input Multiple-Output) フェージング、
  • SISO (Single-Input Single-Output) フェージング、レイリー フェージング、およびライス フェージング
  • 2 元対称。

MATLAB チャネル オブジェクトでは、構成可能なチャネルのモデルを簡潔に実装でき、次のようなパラメーターを指定できます。

  • パスの遅延、
  • 平均のパス ゲイン、
  • 最大ドップラー シフト、
  • ライス フェージング チャネルの K 係数、
  • ドップラー スペクトル パラメーター。

MIMO システムに対しては、MATLAB MIMO チャネル オブジェクトで次のパラメーターも指定できます:

  • 送信アンテナの数 (最大 8)、
  • 受信アンテナの数 (最大 8)、
  • 送信相関行列、
  • 受信相関行列。
直行時空間ブロック符号 (OSTBC) をもつ適応 MIMO システムの Simulink モデル。

直行時空間ブロック符号 (OSTBC) をもつ適応 MIMO システムの Simulink モデル。

RF 障害

非理想的な RF フロント エンドをモデリングするために、通信システムに次の障害を盛り込み、実際の影響を考慮しながらパフォーマンスの検討や特性評価を行うことができます:

  • メモリレス非線形、
  • 位相と周波数のオフセット、
  • 位相ノイズ、
  • 熱ノイズ。

また、SimRF を使用すれば、より複雑な RF 障害や RF 回路のモデルを設計に取り入れることができます。

理想的な 16 QAM のコンスタレーションに位相オフセットと周波数オフセットによる障害を加えたもの。

理想的な 16 QAM のコンスタレーション (左) に位相オフセット (中央) と周波数オフセット (右) による障害を加えたもの。

等化と同期

Communications System Toolbox では、等化と同期の技法を活用できます。これらの技法は一般的に適応性をもつため、設計や特性評価が難しくなります。この System Toolbox では、通信システムにおいて適切な技法を迅速に選択可能なアルゴリズムとツールが用意されています。

等化

さまざまな等化手法を評価するため、この System Toolbox では次のような適応アルゴリズムが提供されています:

  • LMS、
  • 正規化 LMS、
  • 可変ステップ LMS、
  • 符号付 LMS、
  • MLSE (Viterbi)
  • RLS、
  • CMA。

これらの適応イコライザーは、非線形判定帰還型イコライザー (DFE) および線形 (シンボルスペース、または分数スペース) イコライザーとして実現されます。

等化前後の信号と理想的な信号コンスタレーションを示す、QPSK 信号のプロット。

等化前後の信号と理想的な信号コンスタレーションを示す、QPSK 信号のプロット。

同期

この System Toolbox では、搬送波位相同期とタイミング位相同期の両方に対応するアルゴリズムが提供されています。

タイミング位相同期では MATLAB Timing Phase Synchronizer オブジェクトが用意されており、次の実装方法を利用できます:

  • Early-late gate タイミング法、
  • Gardner 法、
  • 第 4 次非線形法。
  • Mueller-Muller 法
タイミング、キャリア周波数、キャリア位相理科張りを含む MSK 受信機 Simulink モデル。

MSK 受信機のタイミング、キャリア周波数、キャリア位リカバリを含む MSK 受信機 Simulink モデル。

周波数リカバリおよび位相リカバリ後の受信信号のコンスタレーション。

周波数リカバリ (中央) および位相リカバリ (右) 後の受信信号のコンスタレーション (左)。

MATLAB および Simulink でのストリーム処理

ほとんどの通信システムでは、時間処理と、複数の周波数およびチャネルの同時処理を組み合わせて、ストリーミングとフレームベースのデータを処理しています。このようなストリーミングの多次元処理は、OFDM や MIMO などの高度な通信アーキテクチャに見ることができます。Communications System Toolbox では、MATLAB/Simulinkでのストリーム処理とフレーム ベース シミュレーションをサポートすることにより、高度な通信システムのシミュレーションが可能です。

MATLAB では、MATLAB オブジェクトを使用して時間ベースおよびデータ駆動型のアルゴリズム、ソース、シンクを表現する System object によって、ストリーム処理が可能になり、MATLAB オブジェクトを使用して時間ベースおよびデータ駆動型のアルゴリズム、ソース、シンクを表現します。System object は、データのインデックス付け、バッファリング、アルゴリズムの状態管理など、ストリーム処理の詳細の多くを暗黙的に管理します。また System object は、標準の MATLAB 関数および演算子と組み合わせて使用することができます。ほとんどの System object には、対応する Simulink ブロックがあり、同じ機能を持ち合わせています。

Simulink は、Simulink モデルを構成するブロックでデータの流れを管理して暗黙的にストリーム処理を行います。Simulink は動的システムのモデリングおよびシミュレーションのための対話型グラフィカル環境で、階層的ダイアグラムでシステム モデルを表します。また、アルゴリズム、ソース、シンク、およびシステム階層を表す、あらかじめ定義された汎用ブロックのライブラリを備えています。

通信システムの実装

固定小数点モデリング

多くの通信システムでは、設計を固定小数点で表現することを要求するハードウェアを使用しています。Communications System Toolbox では、関連するすべてのブロックと System object で固定小数点モデリングをサポートしており、固定小数点属性の設定に役立てることができます。

この System Toolbox では、次のような固定小数点データ タイプがサポートされています:

  • 1 ~ 128 ビットまでのワード サイズ
  • 任意のバイナリ ポイントの配置
  • オーバーフロー処理手法 (ラップまたは飽和)
  • ceil、convergent、floor、nearest、round、simplest、zero などの丸め関数

Fixed-Point Designer™ の Fixed-Point Tool を使用することで、簡単に浮動小数点データ タイプを固定小数点データ タイプに変換することができます。このツールでは、固定小数点の属性を設定するために、オーバーフロー、最大値および最小値が追跡されます。

コードの生成

アルゴリズムまたは通信システムの開発が完了したら、C コードを自動生成して、検証、ラピッド プロトタイピング、および実装を行うことができます。Communications System Toolbox のほとんどの System object、関数、およびブロックでは、MATLAB CoderSimulink Coder、または Embedded Coder を使用して ANSI/ISO C コードを生成できます。また、System object と Simulink ブロックの一部には、HDL コード生成に対応したものもあります。

既存の IP を有効に活用するために、特定のプロセッサ アーキテクチャに最適なものを選択し、生成されたコードに既存の C コードを統合することができます。また、浮動小数点および固定小数点の両方のデータ タイプから C コードを生成することが可能です。

DSP プロトタイピング

DSP は、通信システムの実装において、検証、ラピッド プロトタイピング、または最終的なハードウェア実装に使用されます。Embedded Coder の Processor-In-the-Loop (PIL) シミュレーション機能を使用すると、アルゴリズムの実装コードをターゲット プロセッサで実行することで、生成されたソース コードとコンパイルされたコードを検証することができます。

FPGA プロトタイピング

FPGA は、通信システムにおいて、高速信号処理アルゴリズムの実装に使用されます。HDL Verifier の FPGA-in-the-loop (FIL) 機能を使用すれば、すでにある任意の HDL コード (手作業で作成した HDL コード、または自動生成した HDL コード) に対し、実際のハードウェアで RTL コードをテストできます。

製品評価版の入手
または製品の購入

評価版Communications System Toolbox

評価版ソフトウェアを入手する

MATLAB/Simulink によるレーダーシステムモデリングとシミュレーション

Web セミナーを表示する