fpgaを用いたモータ制御回路の モデルベース開発事例 · →...

Post on 24-Oct-2019

0 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

FPGAを用いたモータ制御回路のモデルベース開発事例

富士通アドバンストテクノロジ株式会社複合回路技術統括部)LSI技術開発部大友 尉央 (ohtomo.yasuo@jp.fujitsu.com)

0

2016/06/28MathWorks Automotive Conference 2016 講演資料

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

1.会社紹介

2.LSI/FPGA設計・開発

3.モータ制御回路開発

4.まとめ

5.MathWorks様への要望

Agenda

1

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

1.会社紹介

2.LSI/FPGA設計・開発

3.モータ制御回路開発

4.まとめ

5.MathWorks様への要望

Agenda

2

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

会社概要

社名 : 富士通アドバンストテクノロジ株式会社(略称: FATEC)

設立 : 2007年10月01日

従業員数 : 約400名

所在地 : 川崎市中原区【富士通㈱ 川崎工場内】

事業内容 :

•電子機器の設計、開発、製造、販売ならびに保守業務

•開発環境、製造環境等を開発・提供、および関連するコンサルティング業務

1. 会社紹介

3

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

製品&サービス

開発プラットフォーム、設計受託とテクノロジ、設計~製造受託の3分野で、お客様のものづくりを支援する企業です

弊社ホームページより(http://www.fujitsu.com/jp/group/fatec/)

1. 会社紹介

4

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

所属部署

複合回路技術統括部)LSI技術開発部

業務内容

富士通社内向けのLSI/FPGAの設計・開発

•旧富士通半導体部門のマイコン向けマクロ開発

•携帯電話などの無線通信向けLSI開発

•高速光伝送装置などの通信装置向けLSI開発

近年は社外のお客様向けの設計・開発も携わっている

1. 会社紹介

5

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

1.会社紹介

2.LSI/FPGA設計・開発

3.モータ制御回路開発

4.まとめ

5.MathWorks様への要望

Agenda

6

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

開発フロー

2. LSI/FPGA設計・開発

要求

仕様

仕様

設計

回路

設計

検証

物理

設計

製造

実機

検証

7

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

開発フロー

2. LSI/FPGA設計・開発

要求

仕様

仕様

設計

回路

設計

検証

物理

設計

製造

実機

検証

『開発のインプットとして、要求仕様をお客様より提供いただき、開発に着手するプロセス』

→ お客様とともに要求仕様からの検討も可能

8

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

開発フロー

2. LSI/FPGA設計・開発

要求

仕様

仕様

設計

回路

設計

検証

物理

設計

製造

実機

検証

『要求仕様をどのようなアルゴリズムで開発していくか、アルゴリズムをどのようなアーキテクチャで実現するかを検討・仕様化するプロセス』

→ 長年のLSI/FPGA設計・開発の経験による強み・仕様検討技術(アルゴリズム検討、アーキテクチャ検討、HW/SW分割検討)・仕様設計技術(ディジタル信号処理、回路小型化、低消費電力化)・モデル開発技術(C言語、MATLAB®、高位設計)

9

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

開発フロー

2. LSI/FPGA設計・開発

要求

仕様

仕様

設計

回路

設計

検証

物理

設計

製造

実機

検証

『仕様設計をもとに実現する回路を設計し、仕様設計プロセスにて作成したモデルを用いて、モデルと回路の一致検証を行なうプロセス』

→ さまざまな言語、ツールに対応可能・ハードウェア設計言語(Verilog、VHDL、SystemC)・ハードウェア設計/検証ツール(シミュレーション、合成)

10

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

開発フロー

2. LSI/FPGA設計・開発

要求

仕様

仕様

設計

回路

設計

検証

物理

設計

製造

実機

検証

『回路情報をもとにチップ上に回路の配置・配線を行ない、LSI/FPGAの製造を行なうプロセス』

→ 弊社では、以下の内容を担当・LSI開発 :仮合成のタイミング確認まで・FPGA開発:合成、配置配線、回路データ作成まで

11

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

開発フロー

2. LSI/FPGA設計・開発

要求

仕様

仕様

設計

回路

設計

検証

物理

設計

製造

実機

検証

『LSI/FPGAを実機にて検証を行なうプロセス』→ LSI/FPGAの実機検証経験あり

・実機検証に必要な各種計測機器を保有

◆富士通社内で開発している装置に搭載されるFPGAに関して、各FPGAベンダーと連携して部品採用可否の先行評価→ FPGAデバイス、開発環境など、非常に精通した部署

12

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

FPGAの概要

Field Programmable Gate Array

基本ゲート(AND, NOT)のブロックを多数集積し、スイッチで相互接続した演算ユニットで構成

プログラムによりスイッチなどの設定を変更することで、回路のハードウエア構成を変更できる

マイクロプロセッサーに比べて、処理が高速で消費電力が低いという特徴がある

2. LSI/FPGA設計・開発

日経エレクトロニクス 2016年1月号 「FPGAビッグバン、データ中心時代の主役へ」より

13

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

FPGAの用途は急激に拡大■従来・携帯電話基地局、テレビなどの家電製品

■近年・大規模/超高性能向け

石油探索、金融計算、クラウド・小型/低消費電力向けADAS(先進運転支援システム)

■今後・科学技術計算、機械学習、ロボット、ウェアラブル端末・・・

2. LSI/FPGA設計・開発

日経エレクトロニクス 2016年1月号 「FPGAビッグバン、データ中心時代の主役へ」より

14

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

FPGAが各分野におけるキーデバイスに①前述の通り、用途は急激に拡大②微細化技術が限界に近づいている

ことに加えて、マルチコア化の限界も指摘され始めている

③演算性能がCPUやGPUを超え始めている

④ハードウェア設計言語のみでなく、C, C++言語でもFPGA設計できる開発環境を整備

→ ハードウェア設計者に限らず、ソフトウェア設計者も利用可能

2. LSI/FPGA設計・開発

日経エレクトロニクス 2016年1月号 「FPGAビッグバン、データ中心時代の主役へ」より

15

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

1.会社紹介

2.LSI/FPGA設計・開発

3.モータ制御回路開発

4.まとめ

5.MathWorks様への要望

Agenda

16

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

開発背景

3. モータ制御回路開発

・社外のモータ制御装置を開発しているお客様より

・『マイコンを用いてソフトウェアにて実現していた機能を、制御周期

高速化のため専用ハードウェアに置き換えて機能を実現したい』

という要望

・トライアルとしてお客様指定のFPGAボードにて、早期の試作/

検証を希望

17

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

開発要求

3. モータ制御回路開発

要求

仕様

仕様

設計

回路

設計

検証

物理

設計

製造

実機

検証

18

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

開発要求

3. モータ制御回路開発

要求

仕様

仕様

設計

回路

設計

検証

物理

設計

製造

実機

検証

◆開発インプット・要求仕様書(I/F情報、精度情報など)・モータ制御システムのSimulink®モデル(お客様の方でモータ制御システムをMATLABでモデリング開発)

19

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

開発要求

3. モータ制御回路開発

要求

仕様

仕様

設計

回路

設計

検証

物理

設計

製造

実機

検証

◆FPGA開発(合成、配置配線、回路データ作成)・FPGA :ザイリンクス社製 Zynq®-7000 All Programmable SoC・開発環境 :ザイリンクス社 Vivado® Design Suite

20

(http://japan.xilinx.com/products/silicon-devices/soc/zynq-7000.html)

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

3. モータ制御回路開発FPGA(Zynq-7000 All Programmable SoC)

内部構成図

モータ制御回路

ARMコア

未使用

プロセッシングシステムブロック

プログラマブルロジックブロック

ARMコア、各種外部インタフェースを内蔵

ユーザが任意に作成したディジタル回路を実装

21

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

開発要求

3. モータ制御回路開発

要求

仕様

仕様

設計

回路

設計

検証

物理

設計

製造

実機

検証

◆お客様指定のモータキット付きFPGAボードを使用・FPGAボード :アヴネット社製 ZedBoard・モータキット :アナログ・デバイセズ社製 AD-FMCMOTCON1-EBZ ボード

22

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

(https://wiki.analog.com/_detail/resources/eval/user-guides

/mc_system.jpg?id=resources:eval:user-guides:ad-fmcmotcon1-ebz)

3. モータ制御回路開発モータキット(アナログ・デバイセズ社製)

FPGA(Zynq-7000)

FPGAボード(アブネット社製 ZedBoard )

23

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

開発背景

3. モータ制御回路開発

・社外のモータ制御装置を開発しているお客様より

・『マイコンを用いてソフトウェアにて実現していた機能を、制御周期

高速化のため専用ハードウェアに置き換えて機能を実現したい』

という要望

・トライアルとしてお客様指定のFPGAボードにて、早期の試作/

検証を希望

リファレンスとなるSimulinkモデルがあり、

早期の開発が必要なことから、開発期間の短縮を期待して、

HDLコード作成は、HDL Coder™を採用し、開発を受託

24

分類/重要度 必須強く推奨

推奨 参考

アーキテクチャ設計

ブロック設定

データ型設定

速度・面積の最適化

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

開発前準備

HDL Modeling Guidelineの確認・MathWorks Japanより発行・HDL Coderユーザ向けのドキュメント・モデルの記述についてルールを規定

3. モータ制御回路開発

分類/重要度 必須強く推奨

推奨 参考

アーキテクチャ設計 ● ● ● ●

ブロック設定 ● - - -

データ型設定 ● - - -

速度・面積の最適化 ● - - -

→ ●項目についてプロジェクトに適用25

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

開発内容詳細

■モータ制御システムのモデル修正

•ハードウェア化するブロックの抽出

•HDL生成を考慮したモデルの修正

•HDL生成未対応のSimulinkライブラリ

•HDL生成未対応ライブラリ利用の確認

•Double型から固定小数点化モデルへの変更

■HDL CoderでのHDLコード生成■HDL Verifier™での協調検証■FPGAへの回路実装■実機検証

3. モータ制御回路開発

26

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

モータ制御システムのモデル修正

・モータ制御システム全系の検討用に作成されたモデル

・ハードウェア化する部分以外のモデルも含まれている

・HDL生成未対応のSimulinkライブラリが利用されてる

・現状のままでは、HDL CoderでのHDLコード生成は、不可

・ハードウェア化するブロックの抽出

・HDL生成を考慮したモデルの修正

3. モータ制御回路開発(開発内容詳細)

27

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

モータ制御システムのモデル修正

ハードウェア化するブロックの抽出

お客様より提供いただいたモータ制御システムのSimulinkモデル

から、ハードウェア化するモータ制御回路ブロックを抜き出し

抜き出したハードウェア化するモータ制御回路ブロックをまとめて、

1つのサブシステム化

3. モータ制御回路開発(開発内容詳細)

28

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

お客様提供のモータ制御システムのSimulinkモデル図

モータ

HW化

HW化HW

HW化

ハードウェア化対象ブロック抜き出し

インバータ

3. モータ制御回路開発(開発内容詳細)

29

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

弊社にて作成したSimulinkモデル図

インバータ

HW化

モータ

ハードウェア化対象ブロックサブシステム化

3. モータ制御回路開発(開発内容詳細)

30

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

モータ制御システムのモデル修正

HDL生成を考慮したモデルの修正

HDL生成未対応のSimulinkライブラリ

→ 利用可能なライブラリは、ライブラリブラウザーにて確認

3. モータ制御回路開発(開発内容詳細)

31

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

モータ制御システムのモデル修正

HDL生成を考慮したモデルの修正

HDL生成未対応ライブラリ利用の確認

→ コンフィギュレーションパラメーターで【HDL生成可チェック】

3. モータ制御回路開発(開発内容詳細)

32

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

モータ制御システムのモデル修正

HDL生成を考慮したモデルの修正HDL生成未対応ライブラリ利用の確認

→ コンフィギュレーションパラメーターで【HDL生成可チェック】

・HDLコード生成チェックレポートがWebブラウザにて表示され、

HDL生成未対応ライブラリの利用(Error)を確認

・下記Error機能をHDL生成対応ライブラリを用いてモデル修正

算術関数(Math Function: square)

三角関数(Trigonometric Function: sin, cos)

平方根関数(sqrt)

3. モータ制御回路開発(開発内容詳細)

33

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

3. モータ制御回路開発(開発内容詳細)

モデル修正の例:三角関数(Trigonometric Function: sin)

ブロックパラメータ(三角関数ライブラリ)

ブロックパラメータ(1-D Lookup Tableライブラリ)

サイン波形情報

1-D Lookup Tableライブラリを用いて、サイン波形情報をテーブル化→ 三角関数ライブラリと同等の機能を実現

モデル全体で三角関数を使用している箇所が複数あり→ 1つのテーブルを共有して、回路規模を抑えている

34

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

モータ制御システムのモデル修正

HDL生成を考慮したモデルの修正

Double型から固定小数点化モデルへの変更

・ハードウェア化のため、固定小数点化モデルに変更

・各データの必要ビット数やデータ範囲、精度誤差の許容範囲は、

要求仕様書に定義

Double型モデルと固定小数点化モデルの差分比較を

Simulink上でシミュレーションし、要求仕様書の許容範囲内で

あることを確認

3. モータ制御回路開発(開発内容詳細)

35

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

弊社にて作成したハードウェア化対象ブロックの最上位階層のSimulinkモデル図

3. モータ制御回路開発(開発内容詳細)

サブブロック

サブブロック

・各データのビット数やデータ範囲、精度誤差の許容範囲が、要求仕様書に定義・Double型から固定小数点化モデルを変更

サブブロック

サブブロック

36

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

3. モータ制御回路開発(開発内容詳細)

Double型モデルと固定小数点化モデルの差分比較シミュレーションの結果例

37

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

HDL CoderでのHDLコード生成・HDLコードを自動生成する他ツールの利用経験あり

(可読性が非常に悪かった)

・HDL Coderは、どの程度の記述レベルとなっているか興味

生成されたHDLコードの中身を確認

・可読性がそれほど悪くなく、人の目でも意外と読める

・型通りのコード生成でなく、回路化を考えられている

3. モータ制御回路開発(開発内容詳細)

38

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

assign Operator2_relop = max <= in;assign switch_compare_2 = Operator2_relop > 1'b0;assign Operator1_relop = min >= in;assign switch_compare_1 = Operator1_relop > 1'b0;assign Switch1_out = (switch_compare_1 == 1'b0 ? in : min);assign Switch2_out = (switch_compare_2 == 1'b0 ? Switch1_out : max);assign out = Switch2_out;

→ 可読性が悪くない

HDL CoderでのHDLコード生成の例(1)【大小比較処理】

最大値(max)

最小値(min)

入力

最大値比較

最小値比較

出力(min≦入力≦max)

Switch選択信号 0のとき →【F】側を出力選択信号 0以外 →【T】側を出力

3. モータ制御回路開発(開発内容詳細)

39

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

assign Gain_cast = {{2{Delay_out[15]}}, {Delay_out, 14'b00000000000000}};assign Gain_out = Gain_cast[30:14];

→ 回路化を考慮・論理シフト演算処理(×[1/2])にて、×[1/2]処理を実現・乗算処理を未使用

HDL CoderでのHDLコード生成の例(2)【乗算処理(×1/2)】

×[1/2](論理シフト演算)

×[1/2] 処理

3. モータ制御回路開発(開発内容詳細)

40

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

HDL Verifierでの協調検証・HDLワークフローアドバイザーの【すべて実行】にて、生成HDLと

モデルのCosimulation(協調検証)を実行

・HDLシミュレータは、Mentor Graphics社のQuesta® SIM

・生成HDLとモデルの動作一致を確認

3. モータ制御回路開発(開発内容詳細)

41

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

FPGAへの回路実装・実機検証の際に、モータ制御回路ブロックへのパラメータ設定や

各種信号モニタを、パソコンにて制御

・パソコンとのインタフェース回路(PC I/F)の実装が必要

・SimulinkでPC I/Fブロックのモデル開発を検討

・早期の試作/検証

・PC I/Fブロックは、過去の開発にて設計経験あり

・その資産を流用し、ハードウェア言語にて直接に設計

3. モータ制御回路開発(開発内容詳細)

42

(http://japan.xilinx.com/products/silicon-devices/soc/zynq-7000.html)

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

モータ制御回路

ARMコア

未使用

PCI/F

USBUART変換

パソコン

FPGAボード モータキットボード

3. モータ制御回路開発(開発内容詳細)

43

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

実機検証

お客様と合意の実機検証項目

パソコンからモータ制御回路ブロックへの動作指示設定に対して、期待通りのモータ回転動作を実機にて確認

モータ制御回路ブロックに修正の入る手戻り無し

3. モータ制御回路開発(開発内容詳細)

→ 開発期間を短縮化でき、また、モデルベース開発における前プロセスでの検証の有効性を確認

44

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

1.会社紹介

2.LSI/FPGA設計・開発

3.モータ制御回路開発

4.まとめ

5.MathWorks様への要望

Agenda

45

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

HDLコード作成にHDL Coderを採用したモデルベース開発にて、生産性と品質の向上

•開発期間:従来手法と比べ、25%程度の短縮

•品質向上:実機検証プロセス時に不具合なし

MATLAB, Simulink, HDL Coderを利用した開発経験の向上

→ Simulinkモデルからハードウェア化を検討されているなら、今回の開発フローと同様に、ご協力が可能

4. まとめ

要求仕様

仕様設計

回路設計/検証

物理設計/製造

実機検証

従来

今回要求仕様

物理設計/製造

仕様設計

回路設計/検証

実機検証

46

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

1.会社紹介

2.LSI/FPGA設計・開発

3.モータ制御回路開発

4.まとめ

5.MathWorks様への要望

Agenda

47

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

MATLABは、それなりに高い(1)

5. MathWorks様への要望

・今回購入したライセンスは、数セットのみ

・常時利用可能なユーザを増やしたいが、ライセンス数がネック

ライセンスフリーでSimulinkモデル図を確認できるビューア

『Simulink Viewer(仮称)』、

または、ライセンスフリーでSimulinkモデル図を編集のみ可能な

エディター『Simulink Editor(仮称)』を希望

⇒ さらなるユーザの拡大が図れる

48

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

MATLABは、それなりに高い(2)

5. MathWorks様への要望

今回のような開発では、お客様とMATLABライセンスの構成を

合わせる必要有り

購入金額の範囲内で、MATLABライセンスを自由に組み替え

できる購入形態を希望

⇒ お客様ごとにライセンス構成を合わせて準備するといった手間が

なくなり、開発に注力できる

49

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

HDL Modeling Guideline

5. MathWorks様への要望

・HDL Coderユーザにとって、非常に有効なガイドライン

・項目によっては、ツール上でError/Warningを出す項目と、

Error/Warningが出ないで、設計者が意識しておく必要がある

内容と、混在している

ツールの機能として、HDL Coderのツール実行時にガイドライン

項目を確認するチェッカー機能の追加を希望

⇒ ツール任せにでき、ユーザの負荷軽減が図れる

50

Copyright 2016 FUJITSU ADVANCED TECHNOLOGIES LIMITED

HDL Coderの機能安全規格での認証

5. MathWorks様への要望

HDL Coderは、機能安全規格の認証が取れていない

Embedded Coder®のような安全規格での認証を希望

IEC 61508: 2010(SIL 1-3)

ISO 26262: 2011(ASIL A-D)

EN 50128 : 2010(SIL 1-4)

⇒ HDL Coder生成RTLの品質向上

HDL Coder利用のユーザ拡大

(http://jp.mathworks.com/products/iec-61508/supported/index.html)

51

top related