fpga開発を加速するhdl codertm/hdl verifiertm...4...

14
1 © 2016 The MathWorks, Inc. FPGA開発を加速するHDL Coder TM /HDL Verifier TM MathWorks Japan アプリケーションエンジニアリング部 松本 充史

Upload: others

Post on 05-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: FPGA開発を加速するHDL CoderTM/HDL VerifierTM...4 モデルベースデザインはギャップを解消 設計フロー 上流から下流まで同一環境を利用 アルゴリズムモデルをリファインして

1© 2016 The MathWorks, Inc.

FPGA開発を加速するHDL CoderTM/HDL VerifierTM

MathWorks Japan

アプリケーションエンジニアリング部

松本 充史

Page 2: FPGA開発を加速するHDL CoderTM/HDL VerifierTM...4 モデルベースデザインはギャップを解消 設計フロー 上流から下流まで同一環境を利用 アルゴリズムモデルをリファインして

2

一般的なFPGA設計における課題

設計フロー

上流でMATLAB/Simulinkを使用してアルゴリズム開発

紙ベースの仕様書でHW設計者に仕様を伝達

課題

情報伝達にミスが発生し、製品開発に遅延が発生

仕様のエラーが発見されても仕様モデルに対するトレーサビリティが取れない

テストベンチ作成が工数大FPGA実装

論理合成

テストベンチ作成

HDL設計(VHDL/Verilog)

固定小数点設計(C/HDL)

機能設計(ブロック図)

設計仕様(Word)

仕様検討(MATLAB)

ギャップ

Page 3: FPGA開発を加速するHDL CoderTM/HDL VerifierTM...4 モデルベースデザインはギャップを解消 設計フロー 上流から下流まで同一環境を利用 アルゴリズムモデルをリファインして

3

統合とテスト統合テスト

設計システムレベルデザイン

処理ロジック 電気機構

要求仕様

モデルは上位レベルの検証環境

各種ライブラリの使用によりテストケースの作成と解析が容易

モデルは実行可能な仕様書としてコミュニケーションを補間

テスト

& 検証

各プロセスごとのテスト機能によりエラーを早期発見

コード生成によりシステムレベルデザインと等価な実装を担保実装

エミュレータ組み込みハードウェア

組み込みソフトウェア

Page 4: FPGA開発を加速するHDL CoderTM/HDL VerifierTM...4 モデルベースデザインはギャップを解消 設計フロー 上流から下流まで同一環境を利用 アルゴリズムモデルをリファインして

4

モデルベースデザインはギャップを解消

設計フロー

上流から下流まで同一環境を利用

アルゴリズムモデルをリファインして実装用モデルを作成

課題の解消

モデルが実行可能な仕様書となり情報伝達ミスを解消

モデル間、モデル-HDL間のトレーサビリティ

テストベンチの自動生成

FPGA実装

論理合成

テストベンチ生成

HDLコード生成(VHDL/Verilog)

固定小数点設計(Simulink)

機能設計(Simulink)

設計仕様(Simulink+Word)

仕様検討(MATLAB)

ギャップ

Page 5: FPGA開発を加速するHDL CoderTM/HDL VerifierTM...4 モデルベースデザインはギャップを解消 設計フロー 上流から下流まで同一環境を利用 アルゴリズムモデルをリファインして

5

動作原理:MCU/MPU vs. ASIC/FPGA

動作原理プログラム読み出し⇒命令デコード⇒演算(パイプライン有)⇒レジスタ(メモリ)に保存

逐次処理

1サイクル周期:kHz~数MHz

動作原理演算に必要な回路を合成して論理回路を形成、同期回路

並列処理

1サイクル周期:MHz~数百MHz

MCU/MPU ASIC/FPGAMultiCore, GPU, etc

内部レジスタ(演算結果保存)

演算回路

プログラムメモリ命令デコード

Page 6: FPGA開発を加速するHDL CoderTM/HDL VerifierTM...4 モデルベースデザインはギャップを解消 設計フロー 上流から下流まで同一環境を利用 アルゴリズムモデルをリファインして

6

HDL Coderモデルの抽象度はRTL+α

オレンジ色はFFに相当するDelayブロック

視認性の高いブロック線図で詳細設計が可能

Delayブロック=FF

パイプライン自動挿入とリソース共有の自動化

高/低抽象度ブロックからのHDL生成が可能– 高抽象度:Sin/Cos, フィルタ, 誤り訂正(RS)、FFT、ベクトル信号等

– 低抽象度:+, ×, 論理演算、比較演算などHDL記述と同レベル

Page 7: FPGA開発を加速するHDL CoderTM/HDL VerifierTM...4 モデルベースデザインはギャップを解消 設計フロー 上流から下流まで同一環境を利用 アルゴリズムモデルをリファインして

7

HDL Verifierによる協調検証

VHDL/Verilogコードの検証⇒HDLシミュレータとのコシミュレーション

FPGAの動作検証/検証の高速化⇒FPGAボードとのコシミュレーション

HDL

生成

FPGAボード

JTAG/Ethernet

/PCIe通信

Page 8: FPGA開発を加速するHDL CoderTM/HDL VerifierTM...4 モデルベースデザインはギャップを解消 設計フロー 上流から下流まで同一環境を利用 アルゴリズムモデルをリファインして

8

課題車載カメラの画像処理IPコアの開発・検証と効率的な固定小数点化

ソリューションMATLABとSimulinkでアルゴリズムをモデリング、固定小数点化を行い、シミュレーションで検証を実施。さらに合成可能なHDLを生成。

結果 複数のパラメータで設計の最適化

手書きよりも効率的なHDLコードを生成

ハードウェア設計経験の無いエンジニアが、複雑な画像処理アルゴリズムを6か月でFPGAにプロトタイプ実装しASIC用IPコアを開発

“モデルベースデザインでアルゴリズム

とシステムの検証を早期に行うことがで

き、仕様変更にも早急に対応でき、さら

に従来の設計フローよりもより多くの設

計パターンを試すことができました。

モデルベースデザインはアルゴリズム開

発者とRTLエンジニア間のギャップを解

消するのに役立ちます。”

神谷 衛

ルネサスシステムデザインLink to user story

ルネサス社がASIC用画像処理IPをモデルベースデザインで設計および実装

Page 9: FPGA開発を加速するHDL CoderTM/HDL VerifierTM...4 モデルベースデザインはギャップを解消 設計フロー 上流から下流まで同一環境を利用 アルゴリズムモデルをリファインして

9

課題自動車用ECUのMPUとセンサ間のインターフェース用ミックスドシグナルASIC

の実装

ソリューションSimulinkを使用しシステムレベルのモデリングおよびリファインを行い、HDL Coderを使用してVHDLを生成

結果 最終SiPでハードウェアリソースの削減によりチップ単価低減

短時間でSimulinkモデルから効率的なVHDL生成することで、Time-to-market を削減

アナログ回路のSimulinkモデルから離散時間連続値ビヘイビアHDLを生成することで、ミックスドシグナルシミュレーションを高速化

Link to EETimes article

BoschがMixed-Signal System-in-Package

(SiP)自動車用ASICの実装を自動化

面積 消費電力 工数

手書き 参照値 参照値 > 1週間

HDL Coder 0.83倍 0.71倍 30時間

“The characteristics of the hand-coded

digital design could be surpassed in terms

of area and power by using an automatic

transition and our optimizations. These

results were achieved by automatically

adapting the design to the characteristics

of the surrounding system, while the

hand-coded design was developed

isolated from the overall system.”

Andreas Mauderer and Jan-Hendrik Oetjens

Robert Bosch GmbH

Page 10: FPGA開発を加速するHDL CoderTM/HDL VerifierTM...4 モデルベースデザインはギャップを解消 設計フロー 上流から下流まで同一環境を利用 アルゴリズムモデルをリファインして

10

Simulinkライセンス不要のViewer

Simulink Report Generator™

– Simulinkモデルからレポート生成

– Webブラウザで閲覧可能なビューを生成

– モデルの比較・マージ

ブラウザで表示しているモデルのビュー

選択したブロックのパラメータが表示

Page 11: FPGA開発を加速するHDL CoderTM/HDL VerifierTM...4 モデルベースデザインはギャップを解消 設計フロー 上流から下流まで同一環境を利用 アルゴリズムモデルをリファインして

11

コード生成レポートでのモデルのビュー

Simulink Coder/HDL Coderのコード生成レポート– Webブラウザで閲覧可能

– モデルとC/HDLコードのトレーサビリティ

– Simulink Report Generatorがあればコード+モデルのビューを生成可能

モデルのビュー

HDL Coderのコード生成レポート

コードとモデルがリンク

Page 12: FPGA開発を加速するHDL CoderTM/HDL VerifierTM...4 モデルベースデザインはギャップを解消 設計フロー 上流から下流まで同一環境を利用 アルゴリズムモデルをリファインして

12

モデルの自動チェック機能:モデルアドバイザー

Simulink Verification and Validationで各種ルール用モデルのチェッカーを提供

– J-MAABスタイルガイドライン

– IEC61508 / ISO26262 / DO-178B

– HDL Coderは未対応⇒ユーザの要望次第

– MATLABコードでカスタム

チェッカーの作成が可能

モデルアドバイザーのレポート

Page 13: FPGA開発を加速するHDL CoderTM/HDL VerifierTM...4 モデルベースデザインはギャップを解消 設計フロー 上流から下流まで同一環境を利用 アルゴリズムモデルをリファインして

13

各種規格への対応

HDLコーディング標準に対応– 国内デファクトスタンダードの

VHDL/Verilogコーディングルール

– 日本ユーザの要望により実現

– ルールのカスタマイズ

– レポートの日本語化

機能安全規格ツール認証– ユーザ製品の認証にツール認証は

必須でない

– ユーザ側で認証取得は可能

⇒DO-254, IEC-61508

– ユーザの要望次第

Page 14: FPGA開発を加速するHDL CoderTM/HDL VerifierTM...4 モデルベースデザインはギャップを解消 設計フロー 上流から下流まで同一環境を利用 アルゴリズムモデルをリファインして

14© 2016 The MathWorks, Inc.

ご清聴ありがとうございました。

© 2016 The MathWorks, Inc. MATLAB and Simulink are registered trademarks of The MathWorks,

Inc. See www.mathworks.com/trademarks for a list of additional trademarks. Other product or brand

names may be trademarks or registered trademarks of their respective holders.