• 検索結果がありません。

アルゴリズム開発からHDL実装へのパス

N/A
N/A
Protected

Academic year: 2021

シェア "アルゴリズム開発からHDL実装へのパス"

Copied!
45
0
0

読み込み中.... (全文を見る)

全文

(1)

© 2 0 0 9 20 12 T h e Ma th W o rks , In c.

HDL Coder

HDL Verifier

R2006b-R2013a 新機能紹介

(2)

R2012a以降のHDLプロダクト名称変更

MATLABからの

HDL生成機能

HDL Coder

EDA

Simulator Link

HDL Verifier

Simulink HDL Coder

System Object FIL新機能追加

(3)

© 2 0 0 9 20 12 T h e Ma th W o rks , In c.

HDL Coder

(旧Simulink HDL Coder)

R2012aからMATLABコードからのHDL生成機能追加に伴いHDL Coderに名称変更

(4)

対応ブロック関連(1/2)

 サポートブロック

 R2007a: Sign

 R2007b: Unit Delay Enabled , Divide, sqrt, Rate Transition, Up/DownSample, Dual Port RAM

 R2008a: Discrete-Time Integrator, conj, reciprocal, FIR Decimation Filter, Discrete FIR Filter, CIC Decimation Filter, NCO, Sine Wave, Saturation, Simple Dual Port RAM, Single Port RAM, PN Sequence Generator

 R2008b: CIC Interpolation Filter, FIR Interpolation Filter, LMS Adaptive Filter, Extract Bits, DocBlock, FFT, HDL Counter, Bitwise Operator

 R2009a: Saturation Dynamic, Go To, From, Biquad Filter, Enabled Subsystem

 R2009b: Streaming FFT, Triggered Subsystem, Lookup Table(n-D), Prelookup, Direct Lookup Table(n-D), Discrete FIR Filter

(5)

対応ブロック関連(2/2)

 サポートブロック

 R2010a: Trigonometric Function(CORDIC sin, cos, sincos), Reset付き Delay, Reset& Enable付きDelay, PID, Repeat, BPSK

Modulator/Demodulator, M-PSK Modulator/Demodulator, QPSK Modulator/Demodulator, Convolutional Interleaver/Deinterleaver, Viterbi Decoder

 R2010b: FIFO, QAM Mod/Demod, General Multiplexed Interleaver/Deinterleaver, Convolutional Encoder

 R2011a: cos+jsin, Magnitude-Angle to Complex, Global Goto/From

 R2012a: Discrete Transfer Fcn, Bus Creator/Selector, CRC Generator, Programmable Filter, PID/Integrator with reset

 R2012b: RS Encoder/Decoder HDL Optimized, State Transition Table

 R2013a: NCO HDL Optimized, Bias, Relay, Dot Product, 複数入力の MinMax, 符号有無の異なる3入力以上の加減算器

(6)

対応System Object

 サポートSystem Object

 R2012a: comm.BPSKModulator, PSKModulator, QPSKModulator,

ConvolutionalDeinterleaver, ConvolutionalInterleaver, ViterbiDecoder, dsp.Delay, Maximum, Minimum

 R2012b: comm.BPSKDemodulator, QPSKDemodulator, PSKDemodulator, RectangularQAMDemodulator,

RectangularQAMModulator , dsp.BiquadFilter, hdlram

 R2013a: comm.HDLCRCGenerator, comm.HDLCRCDetector, comm.HDLRSEncoder, comm.HDLRSDecoder, dsp.HDLNCO

(7)

Programmable Filterに対応したDiscrete FIR

Filterブロック

(DSP System Toolbox)

より使いやすくなった

(8)

9

最適化関連

 R2010b:リソースシェアリングに対応  R2011a:リソースシェアリング機能においてフィードバックループ(IIRフィル タなど)に対応  R2011a:複数パスの遅延の調整  R2011b:中間信号の最小化、Interpolation FilterのSerial/DA対応 Serial Implementationでの乗算器のPipeline対応  R2012a:Tree構造のAdder/Multiplier/MinMaxに対して分散Pipeline対応、 Serial ArchitectureのFIRフィルタにおいて複素信号対応、 サブシステム階層のフラット化(リソースシェアリング範囲の拡大)、 MATLABコードのループやベクタに対するStreaming対応  R2012b:Biquad Filterブロックがリソースシェアリングに対応、 Discrete FIR Filterブロックがマルチチャンネル対応

 R2013a:シングルレートでのリソースシェアリング、 MATLAB Functionブロック内のリソースシェアリング Sqrt, 1/Sqrt, 除算をシングルレートのままコード生成 複素乗算器がシェアリング、Distributed Pipeliningに対応 Delay Balancingをサブシステムごとに設定可能

(9)

各種最適化機能

HDL Coder

 パラメータ設定による時分割リソースシェアリング⇒小面積化  分散パイプライン自動挿入⇒クロック高速化、モデルの再利 用性向上  RAMマッピング⇒DelayブロックをBRAM用HDL生成 Distributed Pipelining On RAM Mapping On

(10)

シングルレートのシェアリング

FPGA clk = 100MHz Embedded Processor 制御対象 Digital Controller 100 KHz (センサーデータ) 1000 cycles マルチレート (従来) シングルレートで サイクル数(レイテンシ) を指定 13a  面積最適化のためにオーバー クロッキングが不要

(11)

生成コードのバリエーション関連

 R2008b/9a:Digital Filterから生成するアーキテクチャの追加

 CSD, FCSD, Distributed Arithmetic  R2007b:マルチレートモデル対応  R2008a:複素データ対応 FPGA ベンダツールとのインタフェース機能の追加  R2008b:Constantブロックでの ’Z’(High-Z) ,’X’(不定)値に 対応  R2009a:ROMコードの生成に対応

 R2012a:Altera/XilinxのFloating Point演算ライブラリに対応

(12)

FPGAベンダFloating Pointライブラリへの

自動マッピング

 Altera Megafunction Floating Pointライブラリ

 Xilinx LogiCORE IP Floating Pointライブラリ

(13)

FPGAベンダFloating Pointライブラリへの

自動マッピング

デバイス固有の リソース情報 自動的に必要な パイプラインを挿入

(14)

対応しているFloating Pointライブラリ

(15)

HDLプロパティ設定

 HDLコントロールファイルの自動生成(R2008a)

 パラメータでの入出力パイプライン処理に対応(R2008a)

 分散パイプライン処理に対応(R2008b)

 Global Over Sampling Clockに対応(R2009b)

 Simulinkサブシステムの分散パイプライン対応(R2010a)

 HDLコントロールファイルを廃止し、GUIで設定が可能

(R2010b)

(16)

HDLプロパティ設定

 MATLAB FunctionブロックにおけるPersistentをRAMにマッピ ング(R2011b)  コメントヘッダのTime/Dateスタンプの無効化(R2011b)  リユースサブシステムに対するチューナブルパラメータ設定 (R2011b)  MATLAB Functionに対する分散パイプライン対応(R2011b)  HDLプロパティのファイル保存(R2012b)

(17)

エントリー関連

 Variable-Step Solverに条件付きで対応(R2008a)

 Embedded MATLAB Functionからのコード生成に対応(R2007a)

 Embedded MATLAB Functionでのデフォルトデータタイプ設定

に対応(R2008a)  Stateflowでの固定小数点データタイプに対応(R2007a)  Stateflowの真理値表からのコード生成に対応(R2008b)  Stateflowでのイベント入力に対応(R2009b)  MATLAB Functionブロックにおける構造体データタイプからの コード生成に対応(R2011b)  MATLAB-to-HDLフローからMATLAB Functionブロック生成 (R2012b)

(18)

テストベンチ関連

 設定パラメータの追加(R2008a)

 テストベンチのデータ部をファイル分割(R2008a)

 HDL検証用Simulinkモデル(EDA Simulator Linkモデル)の自

動生成機能(R2009b)

 ワークフローアドバイザでモデルテストベンチと実行を自動化

(R2012b)

(19)

ユーザビリティ

 MATLAB EditorのVHDL/Verilog Syntaxへの対応(R2009b)

 レポートファイルの生成とモデルとのリンク機能の追加 (R2009a)  要求ドキュメントとのリンク機能の追加(R2009b)  Goto/Fromブロックの階層をまたいだ使用に対応(R2011a)  下位階層サブシステムからのコード生成対応(R2012a)  SystemGeneratorブロックを含むモデルからのHDL生成が自 動化に対応(R2012a)  Bus信号に対応(R2012a)  Simulinkモデルエディタの改善(Simulink機能)(R2012b)  コード生成レポートにモデルのWeb表示(R2012b)

(20)

Simulink R2012bの画面

 タブブラウザ風の画面構成により階層間の移動が容易に  エディタのレスポンス向上:パラメータ画面開く、回転、配線  配線のルーティングアルゴリズムを改善  シミュレーションのステップバック機能追加  保存形式の変更  ブロックのコメントアウト機能  モデルの解析機能  アップデートアドバイザ  パフォーマンスアドバイザ などなど多数

(21)

Stateflow新機能:状態遷移表

 R2012bから状態遷移図だけでなく状態遷移表が追加  抜け・漏れの確認が容易 遷移条件 遷移アクション 遷移先状態 状態アクション >> sf_seqrec_STT

(22)

コード生成レポートにモデルのWeb表示

 モデルの階層間の移動、パラメー タの表示  VHDL/Verilogソースとのリンク  非MATLAB環境で一般的なブラウ ザを利用して表示可能  デザインレビューなどに活用

 Simulink Report Generatorライセ ンスが必要

(23)

Logic Analyzer System Object(コード)

 DSP System Toolboxで機能提供  System Objectコードによる表示 dsp.LogicAnalyzer  カーソルで所望ポイントの値を表示  アナログ/デジタル表示  各種フォーマットでの表示 Binary, Hex, Octal, Signed/ Unsigned decimal  色、高さなどのオプション  今後Simulinkブロックで提供予定 複数ロジックデータの表示 Dividers Waves

Cursors Analog Display Format

Logical transitions

(24)

ワークフローアドバイザ

 HDL Workflow AdvisorでXILINX ISEとの連携(R2010a)

 同Altera QuartusIIとの連携(R2010b)

 ターゲットに開発ボードを追加、コンフィギュレーションファイル

のダウンロード機能を追加(R2011a)

 対応ボード:Speedgoat IO301, 303, 311, 325, ML401, ML402, ML506, SP605, Spartan-3A DSP1800A, XUP Atlys Spartan-6

 FPGA-in-the-Loopでの検証メニュー追加(R2011b)

 Alteraの開発ボードがターンキー機能に対応(R2012a)

 対応ボード: Arria II GX FPGA dev kit, Cyclone III FPGA dev kit, Cyclone IV GX FPGA dev kit, DE2-115 dev board (from Terasic)

(25)

MATLABからHDL生成関連

 R2012a:MATALBからHDL生成機能の追加

 R2012b:固定小数点化における静的レンジ解析、シミュレーシ ョンにおけるレンジのヒストグラム解析機能追加

(26)

R2012a新機能

MATLABからのHDLコード生成

 浮動小数点MATLABコード⇒固定小数点化⇒HDL生成

(27)

MATLAB⇒HDL生成フロー

HDL生成 HDLプロパティ設定(最適化、スタイル) 自動固定小数点化(テストベンチ基準) GUI起動 アルゴリズムとテストベンチを作成  最適化機能 • RAM Mapping • Distributed Pipelining

(28)

MATLABコードからMATLAB

Functionブロックの生成

 MATLABファイル⇒HDL のワークフローで 浮動⇒固定小数点化  固定小数点化した MATLABコードから Simulinkで使用するため のMATLAB Functionブロ ックを自動生成

(29)

MATLABコードからHDL生成における浮動=>固

定小数点変換新機能

シミュレーション結果から ヒストグラムを表示、 静的解析による各変数の 最小/最大値の計算 シミュレーション結果による 最小/最大値の計算

(30)

© 2 0 0 9 20 12 T h e Ma th W o rks , In c.

HDL Verifier(旧EDA Simulator Link)

R2009bからEDA Simulator Link MQ/IN/DSがマージされEDA Simulator Linkに変更

(31)

HDL Cosimulation

 Cosimブロックの無効化スイッチ追加(R2007a)  TCL送信のためのMATLAB関数tclHDLSim追加(R2007b)  TimeScaleFactorの自動計算機能追加(R2008b)  Direct Feedthroughにより組み合わせ回路だけの検証に対応 (R2010a)

 Batch, CLI(Command Line Interface)モードの追加(R2010a)

 edaCosimAssist機能によりブロック生成をサポート(R2010b)  VCD Fileブロックがアクセラレータに対応(R2010b)  64bit Windowsに対応(R2010b)  edaCosimAssist機能が名称変更してcosimWizardに(R2011a)  ModelSim 10.0a, 6,6dに対応(R2011b)  可変ステップ連続ソルバに対応(R2011b)

(32)

HDL Cosimulation

 SystemObjectを使ったMATLABコードでのコシムに対応

(R2012a)

 ModelSim 10.0cに対応(R2012a)

 Simulink Design Verifierとの連携(R2012a)

 HDL Coderのワークフローアドバイザでモデルテストベンチと

実行を自動化(R2012b)

(33)

Simulink Design Verifierとの連携

フルカバレッジテストベクタ生成

フルカバレッジの テストベクタを自動生成

Simulink Verification & Validationによる

カバレッジレポート

(34)

Simulink Design Verifierとの連携

フルカバレッジテストベクタ生成

HDLシミュレータでカバレ ッジオプションを追加する ことでカバレッジ測定 自動生成(HDL Coder)ま たはマニュアル作成のテス フルカバレッジの テストベクタ 協調 シミュレーション

(35)

MATLAB System Objectによるシミュレーション

HDL Verifier新機能

 System Object:高速ストリーミング処理が可能なMATLAB オブジェクト  HDL協調シミュレーションをストリーミングで高速実行  >> cosimWizardでオブジェクトを自動生成

(36)

FPGA-in-the-Loop Simulation(FIL)

FPGAボード高速動作でのプロトタイプ検証(

R2011a

 Xilinx対応ボード:Xilinx SP601, SP605, XUP Atlys

Spartan-6, ML605, ML505, ML506, ML507, XUP V5-LX110T, ML401, ML402, ML403

 Altera対応ボード(R2012a):Arria II GX FPGA dev kit,

Cyclone III FPGA dev kit, Cyclone IV GX FPGA dev kit, DE2-115 dev board (from Terasic), Nios II Embedded

Evaluation Kit, Altera DSP Stratix V(R2013a)

FPGA in-the loop

(37)

FPGA-in-the-Loop Simulation(FIL)

 R2012b:カスタムボード対応 SystemObjectに対応

1000Baseだけでなく100 Base-T Ethernet対応

 R2013a :Altera DSP Dev Kit Stratix Vに対応

(38)

カスタムボード設定用GUI

 Wizardでカスタムボードの設定・登録が可能に

(39)

対応FPGAボードの追加

 Altera FPGA Families:

 Cyclone III

 Cyclone IV E

 Cyclone IV GX

 Arria II GX

 Stratix IV

 Xilinx FPGA Families

 Kintex7

 Virtex6 ( for Turnkey)

 Virtex5

 Virtex4

 Spartan6

 Spartan3A-DSP ( for FIL)

(40)

Alteraボード用HSMCカード対応

 Terasic Ethernet-HSMC カード対応

 AlteraボードにEthernet用ドーターボードを追加し、FIL実行が可能に

(41)

TLM Generator

 SystemC TLM2.0に準拠したコード生成に対応(R2010a)

 制限を緩和:入力または出力だけのモデルに対応(R2010b)

 テンポラルデカップリングに対応(R2010b)

 必須オプションの変更(R2013a)

(42)
(43)

Golden Model

Virtual Platform

(44)

HDL Simulator

Cosim Model

Cosim

(45)

FPGA Development Board

Model

FIL

HDL Simulator

参照

関連したドキュメント

Under the assumption that we can reach from any feasible state any feasible sequence of states in bounded time, we show that every e ffi cient solution is also overtaking, thus

Although PM method has very similar smoothing results to the shock filter, their behavior has two differences: one is the PM method will not stop diffusion at corner while shock

仕上げを含む製造プロセスの手順によって品質が担保され ます。すべての継手も ASME BPE 規格に正確に準拠して おり、 ASME BPE

(Robertson and others have given examples fulfilling (a), and examples fulfilllng (b), but these examples were not solid, normed sequence spaces.) However, it is shown that

We will show that under different assumptions on the distribution of the state and the observation noise, the conditional chain (given the observations Y s which are not

By our convergence analysis of the triple splitting we are able to formulate conditions on the filter functions to obtain second-order convergence in τ independent of the plasma

36 investigated the problem of delay-dependent robust stability and H∞ filtering design for a class of uncertain continuous-time nonlinear systems with time-varying state

Li, “Simplified exponential stability analysis for recurrent neural networks with discrete and distributed time-varying delays,” Applied Mathematics and Computation, vol..