無線通信システムのプロトタイピングと量産開発の基礎

チームが協力して迅速にトライ&エラーを行い、実証済みのIP で効率的に、RTL コードおよび検証モデルの生成を自動化する方法

この記事は約 8 分で読めます
セクション 1

トップダウン手法の連携

プロセスの早い段階で複数のスキルセットを結びつける

無線規格および無線インフラの発展に伴い、新しいシステムやハードウェアを、短期間で開発しなければならなくなりました。責任を分担し、仕様書に頼る従来のワークフローでは、新しい製品をスケジュールどおりに納品するために必要な多分野の連携を実現することができません。

下の画像の数字をクリックして、エンジニアリング チームが連携する方法をご覧ください。

1

2

3

1

2

3

1

マルチドメイン設計プラットフォーム

システム、アルゴリズム、および特定分野を専門とするエンジニアが集結し、ビジュアル環境で連携してシステム、アルゴリズム、およびアーキテクチャを共同で探索し開発します。アンテナ、受信機、アンプ、ADC/DAC、変調/復調、誤り訂正、および信号処理を、中核となる計算とロジックに沿ってモデル化することができます。

1

2

3

2

検証と妥当性確認のためのシステムレベルのシミュレーション

アンテナからビットまでのシステム全体のシミュレーションを行ってシステムのスループットを最適化し,コストのかかる問題を早期に検出、排除します。抽象度が高くなるほど詳細なシミュレーションは行わないため、結果的に実行時間が短縮され、デバッグが容易になります。テストを管理し、機能的なカバレッジを追跡することで、プロトタイピングと量産開発を行う前にロバストな検証が確実に行われます。

1

2

3

3

実装アーキテクチャを改良する機能

このトップダウン手法のアプローチにより、通信、デジタル信号処理、およびハードウェアのエンジニアは継続的に連携し、ビットストリームで動作するようにアルゴリズムを適応させ、並列処理とリソース使用のトレードオフを行い、データフローのタイミングとレイテンシを管理して、数値精度と固定小数点量子化の効率とのバランスを取ります。アルゴリズムの設計と同じスティミュラスを使用して、アルゴリズムに対する結果とパフォーマンスを比較しながら、改良の各手順をシミュレーションすることができます。

マルチドメイン設計プラットフォーム

システム、アルゴリズム、および特定分野を専門とするエンジニアが集結し、ビジュアル環境で連携してシステム、アルゴリズム、およびアーキテクチャを共同で探索し開発します。アンテナ、受信機、アンプ、ADC/DAC、変調/復調、誤り訂正、および信号処理を、中核となる計算とロジックに沿ってモデル化することができます。

検証と妥当性確認のためのシステムレベルのシミュレーション

アンテナからビットまでのシステム全体のシミュレーションを行ってシステムのスループットを最適化し,コストのかかる問題を早期に検出、排除します。抽象度が高くなるほど詳細なシミュレーションは行わないため、結果的に実行時間が短縮され、デバッグが容易になります。テストを管理し、機能的なカバレッジを追跡することで、プロトタイピングと量産開発を行う前にロバストな検証が確実に行われます。

実装アーキテクチャを改良する機能

このトップダウン手法のアプローチにより、通信、デジタル信号処理、およびハードウェアのエンジニアは継続的に連携し、ビットストリームで動作するようにアルゴリズムを適応させ、並列処理とリソース使用のトレードオフを行い、データフローのタイミングとレイテンシを管理して、数値精度と固定小数点量子化の効率とのバランスを取ります。アルゴリズムの設計と同じスティミュラスを使用して、アルゴリズムに対する結果とパフォーマンスを比較しながら、改良の各手順をシミュレーションすることができます。


MathWorks の協力のもと、
Nokia
はモデルベースデザインを採用し、通信と自動化の共通言語としてモデルを使用することができました。

まとめ

  • 複数分野の専門家による連携が可能
  • システムレベルの動作をシミュレーションして、コストのかかる問題を早期に検出し、排除
  • 広範なアーキテクチャの探索による品質向上

FPGA、ASIC、および SoC 開発向けモデルベースデザインの採用

ビデオを見る (15 分 25 秒)
セクション 2

VHDL/Verilog の専門知識が不要な FPGA プロトタイピング

MATLAB および Simulink から直接 FPGA プロトタイプ ハードウェアをターゲット化およびデバッグ

FPGA またはソフトウェア無線 (SDR) ハードウェア プラットフォーム上で無線通信アルゴリズムのプロトタイピングを行うと、現実的な操作条件でのパフォーマンスを早期に把握し、量産開発に向けてプロジェクトを進める際に重要な実証のチェックポイントとなることがよくあります。従来のプロトタイピング ワークフローは、少人数のハードウェア設計エンジニアにとって大きな負担になっていましたが、MATLAB®および Simulink®の使用により、通信エンジニアや デジタル信号処理エンジニアが自ら FPGAを利用した プロトタイプの作成とデバッグを行うことができるようになります。このアプローチは、より迅速なトライ&エラーを可能にし、より少ない時間と労力で動作するプロトタイプを完成させることができます。

段階的なプロトタイプ

システムレベルのアルゴリズムをモデル化しシミュレーションを行った後、実際にプロトタイプのハードウェア要素を段階的に追加することができます。MATLAB および Simulink をプロトタイプのトランシーバーに接続して、無線通信による入出力を使用したシミュレーションを開始します。プロトタイプデバイスに展開する場合でも、フィールド試験前の分析とデバッグのために MATLAB と Simulink に接続したままにしておくことができます。
Communications Toolbox™ Support Package for Xilinx®Zynq®-Based Radio
を使用するか、カスタムボード用に自分でこの機能を構築することで、すぐに使用を始めることができます。

ガイダンスと自動化によるハードウェアのターゲット化

FPGA ハードウェアをターゲット化する近道はありませんが、ガイダンスや自動化により実現可能性が高まります。Fixed-Point Designer™ は、量子化プロセスを自動化し、効率と精度のバランスを取るのに役立ちます。HDL Coder ワークフロー・アドバイザーは、ターゲティングに向けた設計準備の支援から FPGA 実装に至るまでのプロセスを管理します。

接続状態での分析とデバッグ

プロトタイピングでは,設計の誤作動や想定したレベルに達しないパフォーマンスの原因となる干渉など,予期せぬ実際の影響を取り込みます。MATLAB と Simulink を使用して、デバイスを直接接続したり、無線波形をキャプチャしてシミュレーションに使用したりすることで、これらの問題を分析し、デバッグを行うことができます。


「本プロジェクトの実装には、4 人で 9 か月を要しました。概算では、MATLAB を使用せずに Verilog コードや VHDL コードを手書きする場合に比べて、50 ~ 70% 程度時間を短縮することができました。」 – Mikhail Galeev,
Intel

まとめ

  • トライ&エラーでより迅速に動作するプロトタイプを完成
  • デジタルハードウェアでプロトタイプ性能を向上
  • MATLAB および Simulink を使用して分析およびデバッグ
今後のプロジェクトで、FPGA ベースの開発キットでのプロトタイピングに HDL Coder をお試しください。
お問い合わせ
セクション 3

ハードウェア実証済みの IP

規格ベースのアルゴリズムのハードウェア実装を設定可能にすることで、プロジェクトのスケジュールを短縮

無線通信は、規格信号プロトコル、変調/復調スキーム、および誤り訂正符号化に強く依存することで、システムとデバイスの相互運用性を確保しています。ほとんどの場合、この標準機能はアプリケーションを区別するものではありませんが、それでも FPGA や ASIC に統合する必要があります。実証済みの知的財産 (IP) を使用することで、エンジニアは時間と労力を節約し、独自の機能の開発と実装に集中することができます。

  • 1. リファレンス アプリケーション
  • 2. IP ブロック
  • 3. トップダウン手法の検証ワークフロー
規格ベースの既存の機能を使用、またはお使いのシステムに合わせてカスタマイズ

5G や LTE ネットワークに接続する多くのアプリケーションでは、最も強力な基地局の検索、プライマリ/セカンダリ同期信号 (PSS/SSS) の検出、マスター/システム情報ブロック (MIB/SIB) の復調などの、信号情報の取得から始める必要があります。Wireless HDL Toolbox™ には、これらのサブシステムのハードウェア実証済みのホワイトボックス実装が含まれるため、お使いの設計に結合したり、カスタム機能を使って必要に応じた変更をしたりすることができます。

固定小数点ハードウェアモデルを構成

FFT、LDPC、Polar、ターボ符号など、無線通信が依存するアルゴリズムをハードウェアに効率的かつ正確に実装するためには、多大な時間と労力が必要です。トップダウン手法のワークフローでは、これら既存のブロックを使用して設計を構築することが可能です。ハードウェアの動作をシミュレーションし、多くの主要なアルゴリズム パラメーターを素早く調整して、論理合成可能な RTL を生成します。

抽象度の高いモデルを再利用して実装を検証

従来のワークフローでは、エンジニアは MATLAB で開発されたアルゴリズムに基づいて仕様書を作成します。MATLAB や Simulink を使用したトップダウン手法のワークフローでは、各詳細化手順での接続を維持しています。同じ合成波形またはキャプチャされた波形を使用して、フレームベースのゴールデン リファレンス アルゴリズムとサンプルベースのストリーミング ハードウェア実装の両方を実行し、結果を直接比較することができます。


「このアプローチにより、エンジニアリングの労力を少なくとも 1 年節約でき、他のデジタルエンジニアを雇うことなく、自分ひとりで実装を完了させることができました。」 - Matthew Weiner,
RF Pixels

まとめ

  • 実証済みの IP を使用することで、ハードウェアの設計、検証の時間と労力を削減
  • ハードウェア エンジニアリングの リソースを独自機能の開発に集約
  • 抽象度の高い無線設計 IP からのコードの検証、調整、および生成

IP の詳細

Wireless HDL Toolbox でリファレンス アプリケーションと IP ブロックを調べます。
詳細を見る
セクション 4

ハードウェア設計および検証に向けたコード生成

ハードウェア アーキテクチャの探索とシミュレーションを行い、プロジェクト固有の RTL および検証コンポーネントを自動的に生成

仕様書に頼って機能上の意図を伝達することは見落としや仮定によるリスクがあり、変更への対応が困難になります。トップダウン手法のワークフローでは、ハードウェア実装アーキテクチャを含む高抽象度のアルゴリズムを改良し、より多くのオプションを簡単に探索し、高いレベルの検証を行うことが可能です。そこから直接コードとモデルを生成し、量産ハードウェアの設計と検証を開始することができます。

アルゴリズムとハードウェアのエンジニアによる連携

ハードウェア エンジニアは、通信エンジニアや デジタル信号処理 エンジニアとビジュアル環境で連携し、並列処理、タイミング、および固定小数点量子化を使用してアルゴリズムを適用し、十分に正確な結果を出しながら効率的にハードウェアへのマッピングを行うことができます。その結果、下流の設計および検証用のコードを生成可能な、分かりやすいシミュレーション モデルが完成しました。

ターゲットに依存しない HDL コード生成

アルゴリズムから固定小数点ハードウェア アーキテクチャへの継続的な改良を行った後、可読性に優れ論理合成が可能な VHDL®または Verilog®RTL を自動的に生成することができます。プロジェクトの要件やターゲットデバイスに合わせて RTL をカスタマイズし、変化に俊敏に適応します。

SystemVerilog 検証コンポーネントの生成

MATLAB または Simulink のアルゴリズムやテストから SystemVerilog の DPI や UVM の検証コンポーネントを生成することで、アルゴリズムとハードウェア開発の連携を開始することができます。検証モデルの自動生成により、デジタルアルゴリズムの変更をアナログ実装でのシミュレーション用に迅速に更新することができ、またその逆も可能です。


「設計プロセスの早い段階でシステムのパフォーマンスを評価することで、チーム間のコミュニケーションの向上、開発期間の短縮、およびリスクの低減を実現しました。」 –
日立

まとめ

  • 幅広いハードウェア アーキテクチャ オプションの探索により品質を向上
  • 変化にすばやく適応し、新しい要件に合わせたコードを再生成
  • モデルを生成して検証環境の構築をスピードアップ

コード生成の詳細

MathWorks の業界の専門家とつながり、今すぐ開始する方法を確認します。
お問い合わせ