RadioVerseTMセミナー
RadioVerse SDRソリューション 基礎編
第二部:RadioVerseを使用したシステム開発の実例紹介
2019/10/10
マリモ電子工業株式会社
1
アジェンダ
• 会社紹介
• RadioVerse以前の話
• RadioVerse開発事例• AD9361 AD-FMCOMMS3: スペクトラム・アナライザ
• AD9361 System on Module(SOM): QPSKソフトウェア無線機
• AD9371 + Intel Arria10 SoC: IEEE802.11aベース・コグニティブ無線機
• AD9375 DPD: 性能評価
• ADRV9009 SOM: コグニティブ無線機の広帯域化
• ADALM PLUTO: 大学との無線アルゴリズム共同研究
• まとめ
2
会社紹介: マリモ電子工業株式会社
• 所在地 長野県上田市諏訪形1071
• 社員数 80名• 9割がエンジニア
• 業務内容: エンジニアリングサービス• ハードウェア/ソフトウェア受託開発
• 電子回路設計
• FPGA設計
• 組み込みソフトウェア設計
• アプリケーションソフトウェア設計
• 製造部門はなく、設計開発専門
• 得意分野• H/W、S/W技術を生かしたシステム開発
• 高度なデジタル信号処理
社名の由来: マリモのように厳しい社会情勢・経済情勢の中でも着実に成長する会社を目指す
上田
長野
北陸新幹線
東京から北陸新幹線で1時間半でアクセス可能
3
会社紹介: アナログ・デバイセズ アライアンス・メンバー
アナログ・デバイセズ アライアンスページ
アライアンスロゴを使用できる
https://www.analog.com/jp/about-adi/alliances/search.html?q=*
4
会社紹介: マイクロウェーブ展の出展
• マイクロウェーブ展2017、2018のアナログ・デバイセズ社ブースに、アライアンスメンバーとして出展
デモ無線機本セミナー会場でデモ実施中
5
会社紹介: デモ・デザイン例
• ベクトル・ネットワーク・アナライザ
・ZynqにWebサーバー搭載
・HTML5でブラウザに波形表示
測定周波数100MHz~3GHz
内部写真
マリモ製RFボード
Xilinx SoCZynq
・ MATLAB/Simulinkモデルベースデザイン・信号処理⇒ PL部: HDL Coder
・補正処理⇒ PS部: Embedded Coder
6
RadioVerse以前の話: 教育機関向けSDR実験装置
• 弊社で開発した某大学の無線実験教材
• SDR無線モジュールAD-FMCOMMS1
を使用
• FPGAと組合せて無線機が構成できる
アナログ・デバイセズAD-FMCOMMS1
ZedBoardAM,DSB,QPSK変復調による
無線通信実験電波暗室での通信実験
Dual ARM Cortex-A9 Core
USB
Ethernet
Processing System
AXI Interconnect
DSB/AMBase Band
DACInterface
ADCInterface
USB Hub
Linux PC
Linux
IIO oscilloscope
VDMA
VDMA
QPSKDemodulation
DMA
Programmable Logic
HDMI
QPSKModulation
Xilinx Zynq-7000 AP SoC
IQDe-mod
IQMod
DAC
DAC
ADC
ADC
AD-FMCOMMS1-EBZAnalog Front End
Digital Back End
470MHz~2.6GHz
7
RadioVerse以前の話: 教育機関向けSDR実験装置
• AD-FMCOMMS1は、ダイレクトコンバージョン方式
• 無線機と原理的に同じスペクトラム・アナライザ、ネットワークアナライザの実験もできる
• 当時から既にあったADI IIOオシロスコープで波形、スペクトル、コンスタレーションが観測できた
• 弊社がRadioVerseに取り組むきっかけとなった
スペアナ実験 スカラ・ネットアナ実験
IIOオシロスコープ
ローパスフィルタの特性観測
8
RadioVerse以前の話: RFアナログ・フロント・エンド
DAC IQ変調器 RFアンプ
ADC
クロックシンセサイザジェネレータ
VGアンプ IQ復調器
クロックバッファ
VCO
従来の無線RF回路をワンチップに集積
AD-FMCOMMS1
9
RadioVerse以前の話: RadioVerse AD9361の登場
DAC IQ変調器 RFアンプ
ADC
クロックシンセサイザジェネレータ
VGアンプ IQ復調器
クロックバッファ
VCO
従来の無線RF回路をワンチップに集積
AD-FMCOMMS1 AD-FMCOMMS3
RadioVerse
AD9361
10
RadioVerse開発事例①: AD9361 AD-FMCOMMS3 スペクトラム・アナライザ
* typical performance at 2.6 GHz
** typical performance at 2.6 GHz, AD9361 assumes internal LNA; AD937x and ADRV9009 no internal LNA.
Analog Devices Confidential Information.
©2018 Analog Devices, Inc. All rights reserved.
※アナログ・デバイセズ社 RadioVerse資料より掲載
11
RadioVerse開発事例①: AD9361 AD-FMCOMMS3 スペクトラム・アナライザ
• RadioVerse製品を使った当社初のデモ機
• 2015年のMATLAB EXPOにデモ出展
• アナログ・デバイセズ社のアライアンス
パートナーとなる契機になったデモ機
マリモ製 汎用Zynqボード
Radio Verse AD9361の受信パスを使って50MHz帯域
スペアナに
https://wiki.analog.com/resources/eval/user-guides/ad-fmcomms3-ebz
AD-FMCOMM3-EBZ サポートサイト
12
RadioVerse開発事例①: AD9361 AD-FMCOMMS3 スペクトラム・アナライザ
スペアナのMATLAB/Simulinkモデル
13
RadioVerse開発事例②: AD9361 SOM QPSKソフトウェア無線機
* typical performance at 2.6 GHz
** typical performance at 2.6 GHz, AD9361 assumes internal LNA; AD937x and ADRV9009 no internal LNA.
Analog Devices Confidential Information.
©2018 Analog Devices, Inc. All rights reserved.
※アナログ・デバイセズ社 RadioVerse資料より掲載
14
RadioVerse開発事例②: AD9361 SOM QPSKソフトウェア無線機
• AD9361 System On Module (SOM)
• 各種キャリアカードに実装し早期プロトタイプ化
https://wiki.analog.com/resources/eval/user-guides/adrv936x_rfsom
AD9361 SOM SDR サポートサイト
Breakout Carrier PCIe Carrier
PackRF Carrier FMC Carrier
Zynq Z7035
AD9361
15
RadioVerse開発事例②: AD9361 SOM QPSKソフトウェア無線機
• 先の大学向けQPSKアルゴリズムをAD9361 SOM
に実装してみた
QPSK無線アルゴリズム
QPSK無線機
FMCキャリアカード上にSOMを実装
AD9361System On Module
16
RadioVerse開発事例②: AD9361 SOM QPSKソフトウェア無線機
QPSK無線機のMATLAB/Simulinkモデル
17
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
* typical performance at 2.6 GHz
** typical performance at 2.6 GHz, AD9361 assumes internal LNA; AD937x and ADRV9009 no internal LNA.
Analog Devices Confidential Information.
©2018 Analog Devices, Inc. All rights reserved.
※アナログ・デバイセズ社 RadioVerse資料より掲載
18
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• 総務省のSCOPE研究: AI鳥害防止システムの広帯域無線通信システム
信州大学
マリモ電子工業富山県立大学
岐阜大学
19
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• AIによるムクドリ認識・追跡
20
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
送信アンテナ
全天球カメラ
画像エンコーダ
送信機受信機
受信アンテナ
受信画像再生PC
りんご農家の農場での通信実験
・5GHz帯 W56
・WiFi(IEEE802.11a)準拠・伝送レート20Mbps
・FHDのH.264圧縮画像で20fps
・受信帯域100MHzの広帯域AD9371評価
ボードADRV9371
Intel社Arria10 SoC基板
無線機内部
21
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
画像伝送部 概略構成
全天球カメラPIXPRO 4KVR360
USB GStreamerH.264
Encoder
ラズパイ3
Arria10 SoC 評価ボード
AD9371 評価ボード
無線受信信号処理
Ethernet
受信部
受信確認用PC
GStreamerH.264
Decoder
Intel社Arria10 SoC 評価ボード
アナログ・デバイセズ広帯域無線デバイスAD9371 評価ボード
無線送信信号処理
Ethernet
送信部
22
• コグニティブ無線機の設計要素
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
アナログ・デバイセズ広帯域RFトランシーバ
AD9371
AD9371~SoC間高速シリアルインタフェース
JESD204B
インテルSoCデバイスへの実装
ARMデュアルコア+FPGA
OSは組み込みLinux
独自開発コグニティブ無線アルゴリズム
MATLAB/Simulink
HDL Coder
モデルベースデザインによるアルゴリズムの実装
技術基準適合証明の取得IEEE802.11a
5GHz帯 W56
23
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
※アナログ・デバイセズ社 RadioVerse資料より掲載
• RadioVerse AD9371内部構成
24
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• 高速シリアルインタフェース JESD204B
• 広帯域RFトランシーバでは、広帯域ゆえ
ADC/DACのサンプリングレートが上がる
• ADC(153.6Msps)/DAC(307.2Msps)
のものを内蔵
• デジタルインタフェースの高速化
⇒ JESD204B(規格上MAX 12.5Gbps)
• FPGAとインタフェースするため、
JESD204B IPコアを使用する
・Intel社, Xilinx社からIPコアが供給される
も割と高価
・アナログ・デバイセズのIPコアがお勧め
JESD204B
IP Core
RX信号処理
TX信号処理
JESD204B2Lane
JESD204B4Lane
Arria10 SoC
6Gbps
Wideband RF Trasceiver AD9731
25
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
※アナログ・デバイセズ社 RadioVerse資料より掲載
• アナログ・デバイセズ提供のJESD204Bソリューション
26
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• アナログ・デバイセズ提供のJESD204Bソリューション
https://www.analog.com/en/design-center/evaluation-hardware-and-software/jesd204-interface-framework.html
27
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• 独自コグニティブ無線アルゴリズムをIEEE802.11aに準拠させRadioVerse+SoCに実装した
28
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• 広帯域RFトランシーバの性能を生かしたアルゴリズム
• 送信側はフレーム送信後の未送信区間を使って、妨害波を
監視して、妨害波のないチャネルを使って送信を行う
• 受信側は広帯域100MHz、(20MHz帯域 5ch)で
受信を待ち、フレームを受信したチャネルのデータ
を繋げて行くことで、途切れ難くなる
• 妨害波の監視と送信チャネル切替は高速リアル
タイム(500μsec)に行われる
• 独自でありつつも、物理レイヤはWiFi
(IEEE802.11a)に準拠
-40MHz
100MHz
-20MHz 0MHz +20MHz +40MHz 周波数
電力
妨害波検出
CH1
CH2妨害波検出
未送信区間で妨害波を監視する 次スロットは
妨害波を検出していない帯域を使用して送信する
CH3
CH3
妨害波未検出の場合は前スロットと同じ帯域を使用する
妨害波検出
送信フレーム
送信区間272us
未送信区間228us
500us 未送信区間で妨害波を監視する送信フレーム
妨害波検出
時間軸波形
時間軸で見ると
29
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• モデルベースデザインによるアルゴリズムの実装
MATLAB上でのモデルシミュレーションによる無線性能検証
無線アルゴリズムのSimulinkモデル
検証済みモデルからHDL CoderTMによる自動
HDLコード生成
Arria 10 SoCへの実装
Intel
Quartus Primeで論理合成・実装
モデルで性能検証した通りに論理合成されて
実装可能
IEEE802.11a の物理層と、コグニティブ無線アルゴリズムを、MATLAB/Simulinkモデルベースデザインにより、Intel SoCに実装
30
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• MATLAB/SimulinkモデルTOP階層
送信PHYモデル
受信PHYモデル
エア(伝送路)モデル
BER計算
妨害波のパラメータ設定
31
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• モデルの作成段階は2段階。①リファレンスモデル⇒②HDL化可能なモデルに最適化
• リファレンスモデルは、抽象度の高いSimulinkブロックを使う
• AWGN, フェージング環境下でシミュレーションして機能検証、無線性能を達成する
Scrambler内部モデル
スクランブラコンボリューション
エンコードデータ
インタリーブサブキャリア変調
IQマッピング
SCOPE無線機 送信PHYのリファレンスモデル
抽象度の高いSimulinkブロックで構成
32
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• リファレンスモデルを、HDL化可能なモデルに最適化する
スクランブルコンボリューション
エンコードデータ
インタリーブ
サブキャリア変調IQマッピング
パンクチャ
Scrambler内部モデル
・HDLコード自動生成が可能なプリミティブなブロックに置き換える・固定小数点化する・遅延量も念頭にFFを配置する
無線性能は、リファレンスモデルと比較し、達成していく
33
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• コグニティブ無線機のMATLAB/Simulinモデルと、HDLコード生成のデモ
34
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• モデルベースデザインの効果
• 従来のRTLによる設計フローと、モデルベースデザインの開発工数比較の一例
0.0h
100.0h
200.0h
300.0h
400.0h
500.0h
600.0h
700.0h
800.0h
従来設計フロー モデルベース開発
リリース
実機検査
インプリメント
マクロ結合検証
テスト設計・製造
マクロ設計・製造
モデリング
プロジェクト計画
要求分析
780h
477h
-39%
弊社で実際に行ったモデルベースデザインのプロジェクトの工数を、従来のRTL設計フローで見積もった場合の工数と比較した
40%近い設計工数削減効果を確認
※従来設計フローは見積り工数、モデルベースデザインは実績工数
・モデルが動く仕様となるので、従来FPGA設計に必要だった中間ドキュメントが不要となる・モデルで客先とのやり取りができるので、客先の工数も大幅に削減できる
35
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• SoCデバイスへの実装• アナログデバイセズのリファレンスデザイン
を参考とするのが近道
• Xilinx社、Intel社のFPGA、SoC評価ボード
のリファレンスデザインがUpされている
• Linuxやソフトウェアドライバ、ツール類なども
アップされている
• 例えば、直接AD9371のレジスタにアクセス
できない(レジスタマップ自体が公開されて
いない)ので、SoCのARMプロセッサ上で動く
Linuxドライバ(API)を使いAD9371を制御する
https://wiki.analog.com/resources/eval/user-guides/mykonos
36
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• 技術基準適合認証の取得: ①隣接チャネル漏洩の問題解決
• 占有帯域以外への漏洩電力の規定
• 一般的にSDRでは難しいと言われているがAD9371の性能が良く、無事クリア
• 今回の装置では起動時にTxQEC Tracking CalibrationとTxLOL Calibrationを実行している
送信波形をフィードバックしてキャリブレーション
37
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• 技術基準適合認証の取得: ①隣接チャネル漏洩の問題解決(つづき)
• キャリブレーション後は不要なスプリアスが軽減
補正前 補正後
38
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• 技術基準適合認証の取得: ② DFS(Dynamic Frequency Selection)の問題解決
• 気象・航空レーダーに影響を与えないためにレーダを回避する機能でW56帯では必須
• レーダーを受信したら速やかに送信を停止し、他のチャネルに移動する
39
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• 技術基準適合認証の取得: ② DFS(Dynamic Frequency Selection)の問題解決(つづき)
• レーダー信号のパターンが多く、ノイズとの区別が困難
チャープ
固定パルス
可変パルス
ホッピング
40
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• 技術基準適合認証の取得: ② DFS(Dynamic Frequency Selection)の問題解決(つづき)
• 今回は広帯域デバイスAD9371と大規模FPGAの性能を活用し、全てのCHを独立に常に監視
41
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• 技術基準適合認証の申請書類
42
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• 技術基準適合認証の申請書類(つづき)
43
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• 技術基準適合認証の申請書類(つづき)
44
RadioVerse開発事例③: AD9371 + Intel Arria10 SoC コグニティブ無線機
• 技術基準適合認証試験は一回でパス
45
RadioVerse開発事例④: AD9375 DPD 性能評価
* typical performance at 2.6 GHz
** typical performance at 2.6 GHz, AD9361 assumes internal LNA; AD937x and ADRV9009 no internal LNA.
Analog Devices Confidential Information.
©2018 Analog Devices, Inc. All rights reserved.
※アナログ・デバイセズ社 RadioVerse資料より掲載
46
RadioVerse開発事例④: AD9375 DPD 性能評価
• AD9375のDPD(Digital Predistotion)性能について、評価中
• PAのノンリニアをデジタル的に補正して、隣接チャネル漏洩電力を改善する機能
PA Splitter
ORx1Attenuator
TX1
ADRV9375-PCBZ
送信波形をオブザベーションパスに折り返す
評価時の構成
DPDのON/OFFで効果を確認する
47
RadioVerse開発事例④: AD9375 DPD 性能評価
• DPD Memory モデル
• 振幅二乗和とコンパンダでLUT DPD係数を引く
• 出力形態の異なる4つのLUTからなるModel0 ~ Model3を選択できる
• Model0,Model1は狭帯域向け、Model2,Model3は広帯域向けのモデル
Model0
Model1
Model3
Model2
48
RadioVerse開発事例④: AD9375 DPD 性能評価
• 隣接チャンネル漏洩電力の改善
サイドローブの20dB以上改善
DPD OFF: ピンク色DPD ON: 黄色
49
RadioVerse開発事例⑤: ADRV9009 SOM コグニティブ無線機の広帯域化
* typical performance at 2.6 GHz
** typical performance at 2.6 GHz, AD9361 assumes internal LNA; AD937x and ADRV9009 no internal LNA.
Analog Devices Confidential Information.
©2018 Analog Devices, Inc. All rights reserved.
※アナログ・デバイセズ社 RadioVerse資料より掲載
50
RadioVerse開発事例⑤: ADRV9009 SOM コグニティブ無線機の広帯域化
• 100MHz帯域を、更に200MHzに広帯域化 ⇒ RadioVerse ADRV9009採用• デュアル・トランスミッタ
• デュアル・レシーバー
• デュアル・オブザベーション・レシーバー
• 最大 Rx帯域幅:200 MHz
• 最大 Tx 帯域幅:450 MHz
• 最大オブザベーション Rx 帯域幅:450 MHz
• 12Gbps JESD204B データ・パス・インターフェース
• RF周波数:75 MHz ~ 6000 MHz
• ADRV9009 SOM 10月サンプル入手予定• デュアル ADRV9009実装
• Xilinx Zynq UltraScale+ MPSoC
ADRV9009-ZU11EG
51
RadioVerse開発事例⑤: ADRV9009 SOM コグニティブ無線機の広帯域化
• 独自コグニティブ無線アルゴリズム踏襲
• 物理層をIEEE802.11nに対応し、40MHz帯域 5chをカバー
• 2×2 MIMOを実装して、伝送レート100Mbps実現
受信機送信機
h11
h12
h21
h22
T2
T1 R1
R2
R1 = h11・T1 + h21・T2R2 = h12・T1 + h22・T2
IEEE802.11a 20MHz帯域 IEEE802.11n 40MHz帯域+
MIMO化
52
• 信州大学 工学部 電子情報システム工学科、笹森先生が研究する無線アルゴリズム(エルミート対称符号化OFDM)の共同研究
RadioVerse開発事例⑥:大学との無線アルゴリズム共同研究
IFFT
P/S
D/A
D/A
π/2
0null
D1 D2 D3 D4 D5 ・・・D5 D4 D3 D2 D1・・・* ** **
エルミート対称
複素共役
f同じデータを複素共役を取って異なるサブキャリアに多重化
時間軸波形の虚数部がゼロになる
虚数部側に別なデータを乗せることで、伝送レートは1にできる
繰り返し符号化により、伝送レートは1/2になるが、信頼性向上
虚数部側に別なデータを乗せるときは、Ich、Qchの電力を1/2にする必要がある
53
• 同じく、笹森研究室とフェージングシミュレータについても研究計画中
• Box-Muller法による正規分布列乱数生成−𝑙𝑜𝑔𝑥1 cos 2𝜋𝑥2−𝑙𝑜𝑔𝑥1 s𝑖𝑛 2𝜋𝑥2
• −𝑙𝑜𝑔𝑥 と cos 𝑥 をROMテーブルで実装
RadioVerse開発事例⑥: 大学との無線アルゴリズム共同研究
54
RadioVerse開発事例⑥:大学との無線アルゴリズム共同研究
• エルミート対称符号化OFDMや、フェージングシミュレータの理論を、ソフトウェア無線アクティブ・ラーニング・モジュールADALM-PLUTOに実装し、実証する
• 無線理論を直ぐにプロトタイプ化して、実証ができるのがメリット
ADALM-PLUTO
Mouserで¥16,000台
エルミート対称符号化OFDM
IFFT
P/S
55
まとめ: RadioVerseを使用したシステム開発の実例紹介
• 高度に集積化した無線システムが実現可能
• FPGA、SoCと組み合わせてフレキシブルな無線システムを構築可能
• 無線の物理層アルゴリズムの最適化に向く
• 評価ボード、SOM、PLUTOを使い、早期にプロトタイプ化が可能
• モデルベースデザインとの融和性が非常に良い
• 技術基準適合証明取得に最適な調整機能(キャリブレーション/DPD)がある
• アナログ・デバイセズ社のRadioVerseサポート情報を十分に活用できる
• アナログ・デバイセズ社のJESD204B IPが利用可能
• 広帯域無線システムを短期間、低リスクで開発可能