Post on 20-Mar-2020
transcript
MISH International Co., Ltd. 1
MATLAB/Simulinkを使ったFPGA開発ソリューション
MATLAB/Simulinkを使ったFPGA開発ソリューション
株式会社ミッシュインターナショナル
技術部 慶野安則
MISH International Co., Ltd. 2
4) FPGA4) FPGAにダウンロードにダウンロード
3) VHDL3) VHDLコードのビルドコードのビルド
2) VHDL2) VHDLコード自動生成コード自動生成
1) 1) アルゴリズム開発アルゴリズム開発
Bitstream
MATLAB/Simulink®を使用してアルゴリズムの開発・シミュ
レーションを行う
System Generator®を使用してVHDLコードを自
動生成する
ボードメーカの提供するFPGAコードに出力されたVHDLコードを組み込む(アダプテーションキット)
Xilinx ISEを使用してVHDLコードをビルドし、Bitstream
に変換する
出力されたBitstreamをFPGAにダウンロードする
Simulink Model
VHDL Code
FPGA code
FPGA開発フロー
FPGA開発フローFPGA開発フロー
MISH International Co., Ltd. 3
MATLAB Mathworks社製、数値計算・データ解析・可視化・アルゴリズム開発を行うためのテクニカ
ルコンピューティング言語と対話型環境を提供するソフトウェアhttp://www.cybernet.co.jp/matlab/
Simulink Mathworks社製、ブロック線図シミュレータ
http://www.cybernet.co.jp/matlab/products/product_listing/simulink/index.shtml System Generator
Xilinx社製、高性能 DSP 信号処理システム用のインプリメンテーション ツール
http://japan.xilinx.com/ise/optional_prod/system_generator.htm ISE Foundation
Xilinx社製、FPGA統合開発環境
http://japan.xilinx.com/ise/logic_design_prod/foundation.htm GateFlow
PENTEK社製、FPGAデザインキット
FPGAに接続されているデバイスとのインターフェイスを含むVHDLソースコード
Xilinx ISE Project一式
FPGA内部ブロック図
Adaptation Kit MISH社製、GateFlowへのSystem Generatorモデル用インプリメンテーションキット
開発環境に関して開発環境に関して
MISH International Co., Ltd. 4
バージョンの互換性について
各ツールが正しく連動して動作する為にバージョンの互換性が制約されていますので注意が必要です
バージョンの互換性に関してバージョンの互換性に関して
9.2System Generator
9.2ISE Foundation
2006b及び2007aMATLAB/Simulink
バージョンツール
※MATLAB/Simulink 2008及びISE10.1が既にリリースされていますが、現在の所弊社では上記組み合わせでの動作以外検証しておりません。
MISH International Co., Ltd. 5Model 7640
PENTEK 7640ボードに関してPENTEK 7640ボードに関して
Model 7640:2Ch マルチバンド・トランシーバPCIモジュール
– A/D:105MHz, 14bit, 2ch– D/A: 500MHz, 16bit, 2ch– FPGA: Virtex-IIPRO(XC2VP50)搭載
– DDC(GC4016×1 = 4Ch)搭載
設立: 1986年所在地: 米国 ニュージャージー州
業種: DSP, FPGA, AD/DAボードメーカー
WWW: http://www.pentek.com
米国ニュージャージー州に本社を置く高性能FPGA/DSPボード及び高速AD&DAボードの専門メーカーで、特に高速無線信号処理に卓越した技術
を持っています。また、ソフトウェア無線の市場では高い評価を得ています。
MISH International Co., Ltd. 6
EXTCLK
XTALOSC
LVDSCLK &SYNC
CLOCKCONTROL
SYNC / GATE /TRIGGER
GENERATOR
INTERRUPTGENERATORSTATUS &
CONTROL
A/D
DIGITALRECEIVER
ANALOGINPUT DATA
SOURCESELECT
OUTPUTDATA
FORMATTER
CLOCK& SYNC
DRIVERS
MEZZANINEINTERFACE
DIGITALINPUT
DMA CONTROL& COUNTERS
FPGAUSER BLOCK
INPUT OUTPUT
STATUSCONTROL
DEFAULTBYPASS
ユーザー
アルゴリズム
PENTEK社GateFlowについて PENTEK社の提供しているGateFlowにはユーザーアルゴリズムを実装しやすいようにユーザーブロック
がVHDLコードで予め準備されています。よってユーザーはユーザーブロックのエリアのみ開発する事でFPGAにアルゴリズムを実装する事ができます
GateFlowに関してGateFlowに関して
MISH International Co., Ltd. 7
PENTEK社Model7640ブロックダイアグラム
GateFlowに関してGateFlowに関して
AD664514-BIT A/D
AD664514-BIT A/D
DAC568616-BIT D/A & DUC
GC40164-Ch DDC
Top_vp50.vhd
FLASH8M x 16
DDRSDRAM64M x 32
DDRSDRAM32M x 32
DDRSDRAM32M x 32
PCI 2.2 INTERFACE(64 Bits / 66 MHz)
RF In RF In RF Out RF Out
PCI BUS (64 Bits / 66 MHz)
P15 XMC VITA 42.0
(Serial RapidIO, PCI-Express, etc.)
P4 PMC FPGA I/O
(Option –104)
14 14 32
32 32 3264 64
adcdata.vhdadcdata.vhd
adc_data_router.vhdadc_data_router.vhd
cntrl_reg.vhdcntrl_reg.vhd
User_blockA.vhd
User_blockA.vhd
User_blockB.vhd
User_blockB.vhd
dram_dtl.vhddram_dtl.vhd
datapath.vhddatapath.vhdddc_data_router.vhdddc_data_router.vhd
data_router.vhddata_router.vhd
User_blockA.vhd
User_blockA.vhd
User_blockB.vhd
User_blockB.vhd
User_block.vhdUser_block.vhd
syncgate.vhdsyncgate.vhd
各User_blockに、それ
ぞれユーザーアルゴリズムを実装する事ができます
ユーザーアルゴリズム
ユーザーアルゴリズム
ユーザーアルゴリズム
ユーザーアルゴリズム
MISH International Co., Ltd. 8
MISHのアダプテーションキットに関して MISHで提供しているアダプテーションキットはGateFlowで提供しているユーザーブロックに
USER_BLOCK_SGというエンティティを追加して、Ub_sysgen_7x40_cwというコンポーネントでSystemGeneratorのモデルと統合しています
このアダプテーションキットを利用する事でユーザーはブロック線図で作成したモデルをVHDL言語を記述する事無くFPGAに実装する事ができます
アダプテーションキットに関してアダプテーションキットに関して
USER_BLOCK_SG (USER_BLOCK.VHD)
Data_In[31:0]
CLK
DVALID_IN
Data_Out[31:0]
DVALID_OUT
Ub_sysgen_7x40_cw
ub_data_In[31:0]
clk
ub_ce vout
ub_data_out[31:0]
MISH International Co., Ltd. 9
1) アルゴリズム開発1) アルゴリズム開発
Simulinkモデルの起動
アダプテーションキットで提供されているモデル”ub_sysgen_7x40.mdl”ファイルをダブルクリックしてSimulinkモデルを起動します
SimulinkモデルのTop画面
MISH International Co., Ltd. 10
1) アルゴリズム開発1) アルゴリズム開発
アルゴリズムの実装
青いブロック部分に、System Generatorで提供されているFPGA用ブロックセットを使用してユーザーアルゴリズムを実装します
Xilinxブロックへの入出力部はGateway In/Outを挿入してあります
MISH International Co., Ltd. 11
1) アルゴリズム開発1) アルゴリズム開発
アルゴリズムの実装
Simulinkライブラリブラウザを起動します
ライブラリブラウザからXilinx Blocksetを開きます
必要なブロックをドラッグ&ドロップで貼り付けます
配置したブロックを線で接続し、ブロックをダブルクリックしてパラメータを設定します
このボタンをクリックするとSimulinkライブラリブラウザが起動します
ライブラリブラウザ
Xilinx BlocksetをクリックするとFPGA用のブロックセットライブラリが表示されます
MISH International Co., Ltd. 12
1) アルゴリズム開発1) アルゴリズム開発
Simulinkモデルのシミュレーション
入力信号・出力波形表示ツール(Scope)等はSimulink標準のツールを使用してシミュレーションを行います
メニューバーから ボタンをクリックしてシミュレーションを実行します
シミュレーションの実行
MISH International Co., Ltd. 13
MATLAB/SimulinkにSystem Generatorをインストールすると、Simulink上でXilinx用のブロックセットを使用できるようになります
System Generatorで提供されているブロックセット
Basic Elementsブロック
デジタルロジックの基本ブロック
Communicationブロック
デジタル通信システムでよく使用される順方向誤り訂正ブロック及びモジュレータブロック
Control Logicブロック
制御回路及びステートマシン用のブロック
Data Typesブロック
データ型を変換するブロック(Gatewayブロックを含む)
DSPブロック
DSP(デジタル信号処理)ブロック
Mathブロック
演算ファンクションをインプリメントするブロック
Memoryブロック
メモリをインプリメントするブロック及びメモリにアクセスするためのブロック
Shared Memoryブロック
ザイリンクス共有メモリをインプリメントするブロック及び共有メモリにアクセスするためのブロック
Toolsブロック
コード生成(System Generatorブロック)、リソース予測、HDL協調シミュレーションなどを実行するユー
ティリティブロック
System GeneratorについてSystem Generatorについて
MISH International Co., Ltd. 14
Basic Elementsブロック一覧
ブロックブロック
Mux乗算器
Logical2、3、又は4つの固定小数点の値の論理演算
LFSRリニア・フィードバック・シフト・レジスタ
Inverter固定小数点型の論理コンポーネント
Gateway Outザイリンクス部分からの出力
Gateway Inザイリンクス部分への入力
Expressionビット単位の論理式を実行
Down Sampleサンプルレートを削減する
DelayLサイクルの固定遅延
ブロック名
Up Sampleサンプルレートを増加する
Time Division Multiplexer入力ポートの値を1つの高速レートの出力ストリームに多重化する
Time Division Demultiplexerシリアル入力を遅いレートの複数の出力に変換する
System Generatorコードジェネレータを起動する
Slice入力データからビットのシーケンスを切り取り新しいデータ値を作成する
Serial to Parallel指定した倍数のサイズを1つのまとめて出力する
Relationalコンパレータ
Reinterpret入力値に関係なく出力を新しいデータ型にする
RegisterDフリップフロップベースのレジスタ
Parallel to Serial入力ワードを多重化して出力する
ブロック名
Counterアップ/ダウンカウンタなどのカウンタ
Convert入力サンプルを指定した演算タイプの値に変換する
Constant固定小数点値、ブール値、DSP48命令
のいずれかの定数を生成
Concatnビットベクタを連結する
Clock Enable Probeクロックイネーブル信号を抽出する
Black BoxHDLモデルを変換する
BitBasher入力値をスライスし連結する
Assert信号にレートやデータ型をアサートする
Addressable Shift Register可変長のシフトレジスタ
ブロック名ブロック
System GeneratorについてSystem Generatorについて
MISH International Co., Ltd. 15
Communicationブロック一覧
Viterbi Decorder v6_0ビタビデコーダ
Viterbi Decorder v5_0ビタビデコーダ
RS Encoder v6_0リードソロモン符号化
RS Decorder v6_0リードソロモン復号化
Puncture入力ワードからユーザーが指定したビットのセットを削除する
Interleaver Deinterleaver v5_0インターリーバ/デインターリーバ
Interleaver Deinterleaver v4_0インターリーバ/デインターリーバ
Depunctureデパンクチャ符号で指定した位置の入力データにシンボルを挿入する
Convolutional Encoder v6_0たたみ込み符号のエンコーダ
ブロック名ブロック
System GeneratorについてSystem Generatorについて
MISH International Co., Ltd. 16
Control Logicブロック一覧
Logical2、3、又は4つの固定小数点の値のビット単位の論理演算を実行
Slice入力データからビットのシーケンスを切り取り新しいデータ値を作成する
Single Port RAMデータ入出力ポートが1つずつ付いたRAM
Shift入力信号を左または右にシフトする
ROMシングルポートのROM
Relationalコンパレータ
RegisterDフリップフロップベースのレジスタ
PicoBlaze MicrocontrollerPicoBlazeマクロを使用した8ビットのマイ
コン
Muxマルチプレクサ
MCodeMATLAB関数を実行する為のコンテナ
Inverter固定小数点の論理コンポーネント
FFT v4_1離散フーリエ変換を計算するアルゴリズム
Expressionビット単位の論理式を実行
EDK Processorエンベデッド・プロセッサ・システムに接続する
Dual Port RAMデュアルポートのRAM
Counterアップ/ダウンカウンタなどのカウンタ
Constant固定小数点、ブール値、DSP48命令の
いずれかの定数を生成
Block BoxHDLモデルをSystem Generator用に
変換する
ブロック名ブロック
System GeneratorについてSystem Generatorについて
MISH International Co., Ltd. 17
Data Typesブロック一覧
Slice入力データからビットのシーケンスを切り取り新しいデータ値を作成する
Shift入力信号を左または右にシフトする
Serial to Parallel指定した倍数のサイズを1つにまとめて出力する
Scale入力を2のべき乗でスケール変換する
Reinterpret入力値に関係なく出力を新しいデータ型にする
Parallel to Serial入力ワードを多重化して出力する
Gateway Outザイリンクス部分からの出力
Gateway Inザイリンクス部分への入力
Convert各入力サンプルが指定した演算タイプの値に変換される
Concatnビットベクタを連結する
ブロック名ブロック
System GeneratorについてSystem Generatorについて
MISH International Co., Ltd. 18
DSPブロック一覧
LFSRリニア・フィードバック・シフト・レジスタ
From FIFOFIFOのメモリ キューの後半分
FFT v4_1離散フーリエ変換を計算するアルゴリズム
FDAToolFDAToolソフトウェアへのインターフェイス
DSP48 MacroDSP48, DSP48A, DSP48Eをデバイスに依存せず
抽象化したもの
DSP48DSPアプリケーションを構築する
DDS v5_0ダイレクト・デジタル・シンセサイザ
DAFIR v9_0分散演算タイプのFIRフィルタ
ブロック名ブロック
System GeneratorについてSystem Generatorについて
MISH International Co., Ltd. 19
Mathブロック一覧
Threshold入力数の符号をテストする
SineCosineSin(x), cos(x)のどちらか、または両方を計算しROMに格納する
Shift入力信号を左または右にシフトする
Scale入力を2のべき乗でスケール変換する
Relationalコンパレータ
Reinterpret入力値に関係なく出力を新しいデータ型にする
Negate入力の論理否定(2の補数)
Mult乗算器
MCodeMATLAB関数を実行する為のコンテナ
Logical2、3、又は4つの固定小数点の値のビット単位の論理演算を実行
Inverter固定小数点型の論理コンポーネント
Expressionビット単位の論理式
Counterアップ/ダウンカウンタなどのカウンタ
Convert各入力サンプルを指定した演算タイプの値に変換する
Constant固定小数点、ブール値、DSP48命令の
いずれかの定数を生成
CMultGain演算子
AddSub加算器/減算器
Accumulator加算器または減算器ベースのスケーリングアキュムレータ
ブロック名ブロック
System GeneratorについてSystem Generatorについて
MISH International Co., Ltd. 20
Memoryブロック一覧
Single Port RAMデータ入出力ポートが各1つずつついたRAM
Shared Memory共有できるRAM
ROMシングルポートのROM
RegisterDフリップフロップベースのレジスタ
LFSRリニア・フィードバック・シフト・レジスタ
FFT v4_1離散フーリエ変換を計算するアルゴリズム
Dual Port RAMデュアルポートのRAM
DelayLサイクルの固定遅延
Addressable Shift Register可変長シフトレジスタ
ブロック名ブロック
System GeneratorについてSystem Generatorについて
MISH International Co., Ltd. 21
Shared Memoryブロック一覧
To RegisterDフリップフロップベースのレジスタの前半分
To FIFOFIFOのメモリ キューの前半分
Shared Memory Write共有メモリオブジェクトにデータを高速に書き込むための高速インターフェイス
Shared Memory Read共有メモリオブジェクトからデータを読み出すための高速インターフェイス
Shared Memory複数のデザインや1つのデザインの選択した箇所で共有できるRAM
Multiple Subsystem Generator複数のSystemGeneratorデザインを複数のクロックドメインを使用する1つの最上位レベルのHDLコンポーネントに
接続する
From RegisterDフリップフロップベースのレジスタの後半分
From FIFOFIFOのメモリ キューの後半分
ブロック名ブロック
System GeneratorについてSystem Generatorについて
MISH International Co., Ltd. 22
Toolsブロック一覧
WaveScope高度な機能を備えた使いやすい波形ビューア
Toolbar複数のユーティリティに素早くアクセスする
System Generatorコードジェネレータを起動する
Single-Step Simulationシングルステップモードの場合にクロックサイクルごとにシミュレーションを一時停止する
Resource EstimatorFPGAリソースを高速に概算する
PicoBlaze Instruction DisplayPicoBlazeデザインをデバッグする
Pause Simulation入力が0以外の場合にシミュレーションを一時停止する
ModelSim1つまたは複数のブラックボックスの協調シミュレーションをコンフィギュレーション・制御する
Indeterminate Probe入力データが不定値かどうかを示す
FDAToolFDAToolソフトウェアへのインターフェ
イス
Configurable Subsystem ManagerSimulinkのコンフィギャブルシステムの
機能を拡張したブロック
Clock Probe倍精度のクロック信号がSimulinkシス
テム周期と同じ周期で出力される
ChipScopeランタイムデバッグ及びFPGA内の信号
検証を実行
ブロック名ブロック
System GeneratorについてSystem Generatorについて
MISH International Co., Ltd. 23
2) VHDLコード自動生成2) VHDLコード自動生成
SystemGeneratorでVHDLコードを生成する
Simulinkモデルから上記System Generatorブロックをダブルクリックすると右のダイアログが現れます
NGC Netlistを選択します
Virtex2Pのxc2vp50-5ff1152を選択します
./ngc_netlistと入力します
XSTを選択します
VHDLを選択します
10と入力します
空欄のまま
1を入力します
Defaultを選択します
MISH International Co., Ltd. 24
2) VHDLコード自動生成2) VHDLコード自動生成
SystemGeneratorでVHDLコードを生成する
GenerateボタンをクリックするとVHDLコード生成がスタートします
これで終了です
MISH International Co., Ltd. 25
2) VHDLコード自動生成2) VHDLコード自動生成
指定されたフォルダにngc_netlistフォルダが生成され、VHDLコードが出力されます
MISH International Co., Ltd. 26
アダプテーションキットアダプテーションキット
出力されたVHDLコードをボードメーカーの提供する
サンプルコードに組み込む
PENTEKより提供されているGateFlow”FPGAデザインキット“を使用し”USER_BLOCK.VHD”にSystem Generatorで生成されたVHDLコードを組み込みます
MISH International Co., Ltd. 27
アダプテーションキットアダプテーションキット
出力されたVHDLコードを
ボードメーカーの提供するサンプルコードに組み込む
Ngc_netlistフォルダをGateFlowで提供されているISEプロジェクトフォルダにコピー&ペーストします
コピー&ペーストするだけ!
MISH International Co., Ltd. 28
3) VHDLコードのビルド3) VHDLコードのビルド
ISE プロジェクトの起動
Xc2vp50フォルダから7140_usr.iseファイルをダブルクリックしてISEプロジェクトを起動します
MISH International Co., Ltd. 29
3) VHDLコードのビルド3) VHDLコードのビルド
ISE FoundationでISEプロジェクトをビルドする
ProcessesウィンドウからGenerate Programming Fileを右クリックして”Run”を実行します
Synthesize, Implement Design, Generate Programming Fileの全ての処理が完了するまで約1時間かかります
ビルドが完了すると”top_vp50.bit”ファイルが出力されます(ROMに焼きこむ場合はmcsファイルに変換します)
MISH International Co., Ltd. 30
3) VHDLコードのビルド3) VHDLコードのビルド
ビルド環境について
ビルドの時間は開発効率に大きく影響しますので最適なビルド環境を選択しましょう
1) できるだけ性能の良いPCを選択します
2) メモリーは1GB以上を搭載します
3) CPUのクロックも高速なものを選定します
4) CPUの内部キャッシュが大きいものを選定します
MISH International Co., Ltd. 31
iMPACTでFPGAにダウンロード ISEに書き込みツールとして含まれているiMPACTを使用して、生成されたBitstreamを
JTAGケーブル(又はプログラム経由)でFPGAにダウンロードします
実機にてリアルタイムにシミュレーションが可能です
4) FPGAコードのダウンロード4) FPGAコードのダウンロード
Bitstream
iMPACT起動画面
MISH International Co., Ltd. 32
フィルターデザイン・デモフィルターデザイン・デモ
デモの概要PENTEK社製Model7640用アダプテーションキットを使用して、Simulinkモデル上でLowpassフィルターを設計する
ビルドしたビットストリームを実機にダウンロードする
信号発生器から800KHzのサイン波にノイズを付加した信号を出力し、ローパスフィルタでノイズをカットした波形をPC画面上に表示する
使用機材PENTEK社製Model7640デスクトップPCノートPCJTAGケーブル
信号発生器
使用ツールMATLAB/Simulink R2007aSystem Generator 9.2ISE Foundation 9.2Chip Scope Pro 9.2GateFlowAdaptation Kit
Windows PC
信号発生器
デモ構成図
MISH International Co., Ltd. 33
フィルターデザイン・デモフィルターデザイン・デモ
AD664514-BIT A/D
AD664514-BIT A/D
DAC568616-BIT D/A & DUC
GC40164-Ch DDC
Top_vp50.vhd
FLASH8M x 16
DDRSDRAM64M x 32
DDRSDRAM32M x 32
DDRSDRAM32M x 32
PCI 2.2 INTERFACE(64 Bits / 66 MHz)
RF In RF In RF Out RF Out
PCI BUS (64 Bits / 66 MHz)
P15 XMC VITA 42.0
(Serial RapidIO, PCI-Express, etc.)
P4 PMC FPGA I/O
(Option –104)
14 14 32
32 32 3264 64
adcdata.vhdadcdata.vhd
adc_data_router.vhdadc_data_router.vhd
cntrl_reg.vhdcntrl_reg.vhd
User_blockA.vhd
User_blockA.vhd
User_blockB.vhd
User_blockB.vhd
dram_dtl.vhddram_dtl.vhd
datapath.vhddatapath.vhdddc_data_router.vhdddc_data_router.vhd
data_router.vhddata_router.vhd
User_blockA.vhd
User_blockA.vhd
User_blockB.vhd
User_blockB.vhd
User_block.vhdUser_block.vhd
syncgate.vhdsyncgate.vhd
Model7640への実装Model7640のAD側のUser_Block AとUser_Block BにSimulink上で作成したフィルターを実装する
LowpassFilter
LowpassFilter
LowpassFilter
LowpassFilter
MISH International Co., Ltd. 34
フィルターデザイン・デモフィルターデザイン・デモ
SimulinkモデルTop画面SimulinkのTop画面からFDATool(フィルターデザインツール)を起動します
MISH International Co., Ltd. 35
フィルターデザイン・デモフィルターデザイン・デモ
FDAToolフィルターデザインツールでローパスフィルタを選択し、フィルタ次数・周波数仕様等を設定します
ローパスを選択
FIRを選択
フィルタ次数は64を設定
正規化を選択
パスバンドを0.1に設定
ストップバンドを0.2に設定
MISH International Co., Ltd. 36
フィルターデザイン・デモフィルターデザイン・デモ
フィルタ係数のエクスポートFDAToolのファイル->エクスポートでエクスポートダイアログが開きます
フィルタ係数をfilter1という名前にしてMATLABのワークスペースにエクスポートします
MISH International Co., Ltd. 37
フィルターデザイン・デモフィルターデザイン・デモ
Simulinkフィルター実装部下図オレンジ色のブロックにローパスフィルタを実装します
さらにその下のオレンジ色のブロックにはDDS (Direct Digital Synthesizer)ブロックを実装しており、切り替えができるように設計しています
MISH International Co., Ltd. 38
フィルターデザイン・デモフィルターデザイン・デモ
Simulink DAFIRフィルター部下図がDAFIRフィルターを実装しているFilter_Blockです
ブロックをダブルクリックするとダイアログが開きパラメータを設定することができます
MISH International Co., Ltd. 39
シミュレーション結果元の波形とフィルター通過後の波形を見ると、パスバンドはそのまま通過してストップバンドでノイズが遮断されているのがわかります
フィルターデザイン・デモフィルターデザイン・デモ
元信号波形 フィルター通過後波形
MISH International Co., Ltd. 40
フィルターデザイン・デモフィルターデザイン・デモ
実機上の動作結果下図はChAがフィルター通過後の波形(赤)、ChBがフィルターをバイパスした波形(青)です
同様にその下がChA, ChB共にDDSに切り替えた時の波形です
ChA:フィルター通過後
ChB:フィルターバイパス
MISH International Co., Ltd. 41
MIMO送受信機評価システム
EchoTekD/A
ECTR-114E
EchoTekD/A
ECTR-114E
VME Bus
Mercury MCJ9Mercury MCJ9
S-FPDP IF
Windows PC
Dual RACE++
IF 140MHz
(20MHz B/W)
Serial FPDP
CPU-54T
Solaris8
CPU-54T
Solaris8
PPC 7410 x4 PENTEK
A/D&FPGA6236&4205
PENTEKA/D&FPGA6236&4205
VME Bus
Mercury MCJ9Mercury MCJ9
S-FPDP IF
Windows PC
Dual RACE++
Serial FPDP
CPU-54T
Solaris8
CPU-54T
Solaris8
PPC 7410 x8
RF Unit
To/From 5GHz
Tx System Rx System
EchoTekD/A
ECDA-614
EchoTekD/A
ECDA-614
Control Signal
12 channels
ユーザー・アプリケーション例ユーザー・アプリケーション例
MISH International Co., Ltd. 42
ユーザー・アプリケーション例ユーザー・アプリケーション例
受信部データフロー
VIM
-CV
IM-B
VIM
-A
Swing Buffer4KW
PCI-I/F
PLX9656
PCI
Bridge
512M
SDRAM
PPC
MPC745x
PCI Bus, 64Bit / 66MHz
Model6236
Virtex-II FPGA-AB
Virtex-II FPGA-CD
Model4205 Simplified VIM BIFO/FPGA Configuration
UserBlockAB
UserBlockC
VIM
-DPCI-I/F
PLX9656
Swing Buffer4KW
VIM-A BIFO
VIM-B BIFO
VIM-C BIFO
VIM-D BIFO
6250c
Preamble Data
Received Data
AD
AD
MISH International Co., Ltd. 43
MIMO 受信部ブロックダイアグラム
UserBlock 6250c
ub_sysgen
UserBlock_C
ub_sysgen_4205cd
UserBlock_AB
ub_sysgen_4205ab
Preamble Data
Sync
-GI FFT
Sepalation
-GI FFT
De-Mapping
De-Mapping
Phase Tracking
Phase Tracking
Deinterleaver
Deinterleaver
Viterbi
Viterbi
Channel Estimation
614 Control
Detect
Packing
Received Data
ユーザー・アプリケーション例ユーザー・アプリケーション例
MISH International Co., Ltd. 44
2x2 MIMO Simulink モデル
ユーザー・アプリケーション例ユーザー・アプリケーション例
MISH International Co., Ltd. 45
開発システム外観
ユーザー・アプリケーション例ユーザー・アプリケーション例
ユーザーの研究テーマ:新世代移動機用適応アンテナシステムに関する研究開発
ホームページ:http://www2.nict.go.jp/u/u361/proj14.html
MISH International Co., Ltd. 46
まとめまとめ
☆☆☆☆☆☆5)開発効率
「書かれたとおりに処理」されるため、シミュレーションでチェックしきれなかったバグが入りやすく、ビルド回数は一般的に多くなる
Simulinkモデルの時点でシミュレーションができるので、シミュレーション結果がOKなら1回のビルドで同じ結果が得られる
4)ビルドの実行回数
ハードウェア記述言語で信号を正しく接続する必要がある
アダプテーションキットにて最適化している為、コピー&ペーストのみ
3)外部I/Oとの接続
外部デバイスの動き(モデル)を再現しなければ、正確なシミュレーションが行えない
Simulink上で容易にシミュレーションが可能2)シミュレーション
FPGA用のハードウェア記述言語を使用して論理回路を実装する必要がある
必要な機能はブロックセットで提供されているので簡単に実装できる
1)難易度
VHDL / Verilog HDLMATLAB/Simulink(アダプテーションキット)
MISH International Co., Ltd. 47
弊社ブースのご案内弊社ブースのご案内
ブースNo.30 ミッシュインターナショナル
弊社ブースにて実機によるデモンストレーションを行っておりますので是非弊社ブースまでお越しください。