LDPC 新アルゴリズムの Hardware In the Loop 検証に MATLAB/Simulink を適用

「HIL 検証環境は、Simulink と FPGA がうまく結合された設計と検証の両面を強化する開発環境であり、アルゴリズム開発からハードウエア実装までのトータルな開発期間を短縮することができました。今後は、HIL 検証を前提とした設計フローを構築する事で、より高度な開発に取り組んでいける可能性を感じました。」

課題

従来方法と比較してより容易に製品化が可能な,LDPC符号に関する要素技術の開発

ソリューション

MATLAB/Simulink および DSP Builder によるシステムモデルをベースとしたHIL検証環境の構築と独自開発された復号アルゴリズムの検証

結果

  • HIL 検証環境により、再現性の高いハードウエア検証を実現
  • シミュレーションの高速化、検証時間の短縮
  • シミュレーションの自動化

近年の通信システムの開発は、有線、無線といった物理層に関わらず、限られた消費電力でいかに通信品質や伝送速度の要求仕様を実現するのか、という問題に取り組んでいます。また、ユビキタスネットワークの実現においては、例えば照明器具を用いた光通信や、電力線通信など、元々は通信手段として設計されていなかった機器を通信にも活用していくという研究が求められています。このような通信システムにおいては、受信される信号の品質劣化が著しく、ノイズの多い環境下において一定の通信品質を維持することが非常に困難であるという課題に直面しております。

さらに、通信機器を提供するメーカーにおいては、製品開発・製造コストという課題も同時に解決しなければなりません。また受信性能を確保するためには、製品として一定の品質を確保しなければならないのは当然ですが、性能や機能を検査するためのコストも無視することもできません。このような状況において、通信機器としては避けられないある程度の品質のバラつきを補償し、かつ、通信品質や伝送速度をうまくバランスさせる手段として、より高い性能を持った誤り訂正符号に期待が寄せられています。しかしながら誤り訂正符号の技術は,非常に複雑かつ大量の演算が必要とされ、それをハードウエアとしてそのまま実装することは大変困難な作業です。住友電工では、通信機器の開発、製造コストを抑制し、かつ機器の性能、品質を確保するために誤り訂正符号の一つである LDPC 符号に着目し、従来よりも容易に製品化が可能な LDPC 符号の技術開発に取り組んでいます。

課題

最近注目されている LDPC 符号は、2つの優れた特徴があります。まず一つ目としては、シャノン限界に迫る誤り訂正能力を有すること、もう一つはGbpsを越えるような並列処理を実現できること、です。ただし、この並列処理は非常に複雑かつ大量の演算を必要とするため、ハードウエアで実現するとなると回路規模が膨大なものとなってしまうという課題があります。また、ハードウエアへの設計手法自体も確立されてはいないため、新しく考案したアルゴリズムを検証するためには大変な労力が必要となります。過去に他社で実施された LDPC アルゴリズムの検証のためには、256台のクラスタコンピュータを用いた並列処理シミュレーションにより、10の-12乗の通信品質を検証するために、2週間かかったという事例があったそうです。これは1台のコンピュータに換算すると約500週間、すなわち約10年に相当する規模のシミュレーションと言うことができます。住友電工では LDPC デコーダを実現する技術として最もポピュラーな Sum Product 法、およびこれを近似した UMP-APP 法に着目し、さらなるアルゴリズムの簡略化に取り組むこととなりました。この研究を進めるにあたり、まずこのような大規模なシミュレーションをより安価に、かつ高速に実行可能な環境の構築が必要とされました。また、製品化を見越した実機検証においては、浮動小数点による計算機シミュレーションの検証方法とは異なり,量子化された数値による検証が必須であり検証時間の短縮が可能な反面、電源ノイズや外乱、ダイナミックレンジの考慮などの様々な要因で生じる測定結果の再現性を確保するという

ソリューション

これらの課題を解決するために、住友電工では MATLAB/Simulink を採用しました。

まず新しいアルゴリズムに関するアイディアを検証するために、MATLAB の基本環境である対話型のプログラミング環境を使用しました。新しいアルゴリズムに関するアイディアがひらめいた時に、即時に簡易なプログラムを作成してシミュレーションを実行、結果をグラフ表示、といった小規模のシミュレーションを繰り返し実施することにより、基本的な理論検討を進めていきました。

その後、Simulink および DSP Builder を用いてシステムモデルを作成し、FPGA を搭載したボードによる Hardware In the Loop(HIL)検証環境を構築し、実機と計算機シミュレーションがコラボレーションした理論検証を実施しました。このHIL検証環境は Simulink をベースとしたモデリング、シミュレーション環境と、Altera 社製の DSP Builder が提供するSimulink から FPGA ボードへのハードウエアインターフェース機能を追加により構築されています。導入された HIL 検証環境により、各種ノイズの影響を完全に再現できるハードウエア検証環境を実現することができました。また、複雑かつ演算負荷が高い処理部分をFPGAに実装することでシミュレーションの高速化、および検証時間の短縮を同時に実現することができました。また住友電工は,DSP Builder が提供する HDL 自動生成・実装機能をうまく活用し、独自開発した LDPC 符号の復号アルゴリズムを FPGA に実装しハード化に伴う様々な影響を効率よく評価しました。さらに、同モデルを用いて、S/N比を変更しながら繰り返しBER計算を行うためのスクリプトをM-fileにて作成し、HILシミュレーション実行の自動化をも実現することができました。

結果

  • HIL 検証環境により、再現性の高いハードウエア検証を実現. 測定器と評価ボードによる測定系では困難だった各種のノイズ要因の特定、および評価結果の再現性を確保し、デバッグ作業を効率よく進めることができました。

  • シミュレーションの高速化、検証時間の短縮. 従来方法と比較して、シミュレーション速度の向上を実現することができました。また、シミュレーション、HIL の2つの環境でテスト信号を統一化することでデバッグ作業に一貫性を保つことができ、トータルな検証時間を短縮することができました。

  • シミュレーションの自動化. S/N比や各種のシミュレーション条件を MATLAB によりスクリプト化し、シミュレーションの実行を自動化することで作業時間の削減を図りました。