パーシャル・リコンフィグレーションをデザインする

パーシャル・リコンフィグレーションをデザインする
-画像処理フィルタ回路の実装事例-
2015年10⽉27⽇
FPGA⽀援センター(略称:FSC)
Copyright 2015, Toshiba Digital Media Engineering Corporation.
Agenda
• アジェンダ
– 弊社概要
– リコンフィグレーションの弊社の取り組み
– リコンフィグレーション開発事例紹介
• 画像処理回路の実装要件
• 想定アプリケーションに適したリコンフィグレーション
• 開発事例の紹介
– デザイン・フロー
– Vivado開発実践(エリア指定、Tclスクリプト)
• まとめ
– ザイリンクス社殿への要望
Copyright 2015, Toshiba Digital Media Engineering Corporation.
2/34ページ
弊社概要
社名
東芝デジタルメディアエンジニアリング株式会社
設⽴
2000年4⽉
TOSHIBA DIGITAL MEDIA ENGINEERING CORPORATION
代表者
代表取締役社⻑ 南野 伸之(なんの のぶゆき)
沿⾰
1981年
1982年
1985年
1990年
2000年
東芝オーディオビデオエンジニアリング株式会社
東芝コンピュータエンジニアリング株式会社
東芝ソフトウェアエンジニアリング株式会社
東芝コミュニケーションテクノロジ株式会社
4社合併
設⽴
設⽴
設⽴
設⽴
東芝デジタルメディアエンジニアリング株式会社 設⽴
従業員
1,504名 (2015年4⽉1⽇現在)
所在地
本社事業所:東京都⻘梅市新町
末広事業所:東京都⻘梅市末広
⼩向事業所:神奈川県川崎市幸区
⽴川事業所:東京都⽴川市錦町
本社事業所
⼩向事業所
Copyright 2015, Toshiba Digital Media Engineering Corporation.
末広事業所
⽴川事業所
3/34ページ
強み・特徴
ワンストップソリューション
企画・提案から設計・評価・導⼊に⾄る幅広い業務プロセスにシームレスでサポート、
お客様のニーズにワンストップで対応します
企画 提案
調査分析・コンセプト⽴案
開発仕様策定
開
開発
発設
設計
計評
評価
価
ハードウェア開発・設計・評価
ソフトウェア開発・設計・評価
シミュレーション
信頼性評価・認証
製品化対応
システム導⼊・運⽤
⽣産対応・設備開発
■ニーズや他社の動向を調査分析し、コンセプトを⽴案
■新しい価値を提供する機能や技術を提案、
ベネフィットを明確にし、開発仕様を作成
■各種ハードウェアおよびソフトウェアの開発・設計
■設計プロセス上流から、電気系・機構系のさまざまな
シミュレーションを⾏うことで、短納期・⾼品質化を実現
■信頼性評価は東芝基準をリファレンス。恒温槽や機構
系試験器などの⾃社設備を活⽤。
認証取得サポートや⼯場監査のコンサルティングも
■製品やシステム・ソフトウェアの導⼊後に不具合や変更
が⽣じた場合、解析や改善設計を実施
■東芝Grの関係会社や海外EMSと連携し、さまざまな
製造形態に対応。⾃動化設備の開発も実施
Copyright 2015, Toshiba Digital Media Engineering Corporation.
お客様の問題解決に
軸をおいたサポート体制
現状を改善する
コンサルティングサービスも
超量産設計の実績あり。
少規模⽣産でも
⼩回りのきく体制で
ワンストップサポートから
ご希望により
部分対応でも
4/34ページ
デジタルメディア機器開発設計で培ったエンジニアリング総合⼒
・画像/⾳声信号処理技術
・画像/⾳声評価技術
・各種データ処理技術
・各種I/F技術
(PCIe、USB3.0他)
・プロセッサ応⽤技術
・⾼速データバス技術
・携帯無線規格/機器技術
・無線規格取得
・アンテナパターン設計
プロトタイプ
リファレンスモデル
・各種メカ/筐体設計試作
・評価/検査装置開発設計
・製造設備設計
・回路基板設計
・部品実装技術
・製品/部品の信頼性評価、規格取得
・⾼速伝送回路解析、共振解析など
Copyright 2015, Toshiba Digital Media Engineering Corporation.
・アプリケーションソフト開発
・GUI/グラフィックス開発
・映像機器向けソフト開発
・無線機器向けソフト開発
・ミドルウエア/OS/ドライバ開発
・Webサービス
・動画/⾳声コーデック
・ファイルシステム
・セキュリティ技術
・機器組み込みF/W開発
・プロトタイプ設計試作
・FPGA/LSI設計
・モジュール設計試作
・東芝Gr製造会社/パートナーと
連携した⽣産⽀援
・専⽤電源回路/装置の設計
・EMI対策
5/34ページ
Agenda
• アジェンダ
– 弊社概要
– リコンフィグレーションの弊社の取り組み
– リコンフィグレーション開発事例紹介
• 画像処理回路の実装要件
• 想定アプリケーションに適したリコンフィグレーション
• 開発事例の紹介
– デザイン・フロー
– Vivado開発実践(エリア指定、Tclスクリプト)
• まとめ
– ザイリンクス社殿への要望
Copyright 2015, Toshiba Digital Media Engineering Corporation.
6/34ページ
リコンフィグレーションの弊社の取り組み
• これまでの取り組み
– 2013年
•
後期 ・静的リコンフィグレーション技術に初対応
実績:気象レーダ装置
・東芝Gr.内覧会「FPGAコンフィグレーション技術の応⽤」を出展
- 静的リコンフィグレーション技術を初出展
・動的リコンフィグレーション技術に着⼿
– 2014年
•
前期 ・ESEC2014展「FPGAリコンフィグレーション技術」を出展
ESEC2014報道記事
“動的リコンフィグレーション技術”を参考出展<報道発表>
・パーシャル・リコンフィグレーション技術に着⼿
•
後期 ・ET2014展「FPGAリコンフィグレーションによる信頼性技術」を出展
・⾃社の研究開発費で「リコンフィグレーション要素技術開発」に着⼿
1) リコンフィグレーション技術蓄積、開発環境を構築
2) 2プレーン型リコンフィグレーション・プラットフォームを開発
– 2015年
•
前期 ・ESEC2015展 「FPGAリコンフィグ開発環境」を出展
・⾃社の研究開発費で「リコンフィグレーション・プラットフォーム開発」着⼿
1) 1プレーン型リコンフィグレーション・プラットフォームを開発
Copyright 2015, Toshiba Digital Media Engineering Corporation.
7/34ページ
パーシャル・リコンフィグレーションとは
• システム全体を停⽌させることなく、回路ブロックの⼀部
をダイナミックに再構成することができる技術。
限られた⾯積で、多くの機能を処理できるようにするために有効な仕組み
• メリット
– 製品⾯
• システムの柔軟性、多機能と装置の⼩型化
– コスト⾯
• チップ⾯積の削減、BOMコストの低減
– 運⽤⾯
• フィールドでのアップグレード性、メンテナンス性の向上
• システムダウンタイム、電⼒消費の削減
Copyright 2015, Toshiba Digital Media Engineering Corporation.
8/34ページ
パーシャル・リコンフィグレーションとは
• パーシャル・リコンフィグレーション(回路再構成技術)
ICAP/PCAP
パーシャル⽤Xilinx社IP
– 静的リコンフィグレーション
•
システムを停⽌させての回路再構成
Controler
Controler
– 動的リコンフィグレーション
•
システムを稼働させながらの回路再構成
ICAP/PCAP
再構成エリア
ROM/RAM
– パーシャルリコンフィグレーション
•
動的リコンフィグレーション
パーシャル・リコンフィグレーション
静的リコンフィグレーション
ROM/RAM
FPGA
専⽤開発ツール
不要
⼀部の機能回路を再構成
再構成エリア
FPGA
専⽤開発ツール
Xilinx社提供
パーシャル・リコンフィグレーションの展開
⾮シームレス切替
シームレス切替
Copyright 2015, Toshiba Digital Media Engineering Corporation.
信頼性対応
多数決システム
9/34ページ
パーシャル・リコンフィグレーション技術の取り組み
• リコンフィグレーション・プラットフォーム紹介
– プラットフォーム構成(1プレーン/2プレーン)でアプリケーションに適した再構成を実現
Switch
Buffer
リコンフィグレーション・プラットフォーム⼀覧
プラットフォーム構成
想定アプリケーション
特徴
①1プレーン
通信/画像⽋損を許容する
・通信/画像データ
・固定レート
②1プレーン+バッファー ・リアルタイム対応
③2プレーン
・画像データ
・可変レート
・ノンリアルタイム対応
備考
回路規模 ⼩
なし
通信/画像⽋損を許容しない
回路規模 中
データ間⽋あり
バッファ制御
動作切替時のパラメータ保持
データ間⽋なし
2プレーン切替制御
動作切替時のパラメータ保持
Copyright 2015, Toshiba Digital Media Engineering Corporation.
回路規模 ⼤
10/34ページ
開発事例
• 開発事例概要
「パーシャル・リコンフィグレーションによる画像処理フィルタの書替」
– 背景
• パーシャル・リコンフィグレーション技術導⼊
– 問題点
• 技術者にとって技術的ハードルが⾼い
– 取り組み
• リコンフィグレーション開発環境のプラットフォーム化
• ⼩型化と多機能実装の両⽴の実現
Copyright 2015, Toshiba Digital Media Engineering Corporation.
11/34ページ
開発事例
• 画像処理フィルタ回路の実装事例
– 実装したシステムの概要
Xilinx社FPGA Zynq
• 再利⽤可能な開発デザイン
– 開発環境のプラットフォーム化(ハード、ソフト、開発環境)
Copyright 2015, Toshiba Digital Media Engineering Corporation.
12/34ページ
Agenda
• アジェンダ
– 弊社概要
– リコンフィグレーションの弊社の取り組み
– リコンフィグレーション開発事例紹介
• 画像処理回路の実装要件
• 想定アプリケーションに適したリコンフィグレーション
• 開発事例の紹介
– デザイン・フロー
– Vivado開発実践(エリア指定、Tclスクリプト)
• まとめ
– ザイリンクス社殿への要望
Copyright 2015, Toshiba Digital Media Engineering Corporation.
13/34ページ
パーシャル・リコンフィグレーション・ツールの遷移
– Xilinx社デザイン・ツール
一部のユーザ限定
 1996年
 1999年
 2009年
 2010年
 2011年
 2012年
 2013年
XC6200
in Virtex
New Flow Early Access
ISE12 Production
ISE13 7Series
ISE14 Zynq
Vivado 2013.3からサポート開始
※パーシャル・リコンフィグレーション実⾏は追加ライセンスが必要
Copyright 2015, Toshiba Digital Media Engineering Corporation.
14/34ページ
Vivadoでデザインする
パーシャル・リコンフィグレーション実装作業-1
 システム構造検討(初期評価)
 ボトム・アップによる合成設計
 現状はTcl(Tool Command Language)による制約設計
 Pblock(パーティション機能)で配置(XYレンジ)管理
 .dcp(Design Check Point)による再配置配線フロー
-各設計段階のスナップショット(配置配線情報を格納)
-RP領域にHD.RECONFIGURABLEを設定
Static Logic
RP_a
RP_b
RM_a1
RM_b1
RM_a2
RM_b2
RM_a3
RM_b3
Static.dcp
RP_a.dcp
RP_b.dcp
Copyright 2015, Toshiba Digital Media Engineering Corporation.
※RP:リコンフィギュアラブル・パーティション
※RM:リコンフィギュアラブル・モジュール
15/34ページ
Vivadoでデザインする
パーシャル・リコンフィグレーション実装作業-2
周辺回路制御(デカップリング対応)
パーシャル・リコンフィギュレーションでは、FPGAの回路がリアルタイムに書
き換わる時の誤動作対策が必須
 誤動作を防ぐため書き換え中はスタテック側を⼀部リセット
 バス接続はハンドシェイクシーケンスのロック回避策が必要
デカップリング対策はユーザ側で実装
Copyright 2015, Toshiba Digital Media Engineering Corporation.
16/34ページ
Vivadoでデザインする
パーシャル・リコンフィグレーション実装作業-3
Partial Bit streamサイズからコンフィグレーション時間を導く
– コンフィグレーション時間(書替時間)
• Zynqの場合
– PCAP(Processor configuration access port)使⽤
– PCAPインタフェース:32ビットデータ幅、最⼤100MHzクロック動作
– ダウンロードスループット:400 MB /s
• 書替時間
– 画像処理回路のPartial Bit streamサイズを1Mbyteとした場合
– 理論値上の書替時間:1Mbyte / 400MB ≒ 2.5ms
参考)XC7Z020
※Xilinx資料参照
Full Bit Stream
備考
Bit Stream Size
4,045,564 Byte
Configuration Time
9.7ms
理論値
Configuration Time - BSP
32ms(理論値の3.3倍)
測定平均値
Configuration Time - OS
44ms(理論値の4.6倍)
測定平均値
Copyright 2015, Toshiba Digital Media Engineering Corporation.
17/34ページ
画像処理フィルタ回路の実装上のポイント
• 画像処理フィルタ回路の実装検討
実装要件
検討内容
検討結果
RM対応設計
・書替時の誤動作対策
・RM毎の遅延対策
デカップリング回路
レイテンシ対策回路を追加
コンフィグレーション時間
の⾒積(書替時間)
・実装3種フィルタの⾒積
・バス稼働率の⾒積
最⼤サイズ
130KB
書替時間
0.4ms(理論値)
書替時間
2ms(OS動作値)
最⼤バス稼働率
38%
画像データ⽋落防⽌対策
フレーム同期化回路を追加
Sobelフィルタ,Sepiaフィルタ,Medianフィルタ
<書替時間の計算式>
= Partial Bit stream(最⼤サイズ) / ダウンスループット
1.メモリスループット(32bitDDR3メモリ使⽤)
<最⼤メモリスループット計算式>
= DDRビット幅xDDRデータレートMHz/s
2.バスアクセススループット
<最⼤バス稼働率計算式>
= FullHD 60fpsデータ量xチェンネル数 / メモリスループット
出⼒画像シームレス
対応
結果:2プレーンによるリコンフィグ・プラットフォーム構築
※RM:リコンフィギュアラブル・モジュール
Copyright 2015, Toshiba Digital Media Engineering Corporation.
18/34ページ
画像処理フィルタ回路の実装上のポイント
• RM毎の遅延対策
– レイテンシ対策回路
• 遅延原因
– RM毎に画像処理アルゴリズムが異なる為、回路構成による遅延が発⽣
– コンフィグレーション時間は同じだが、書替直後の画像出⼒に時間差が⽣じる
画像入力データ
画像入力データ
画像入力データ
RM-1
RM-2
RM-3
画像処理データ
画像出力データ
遅延差
画像出力データ
対策例:最⼤遅延に合わせたフレームメモリ制御回路
Copyright 2015, Toshiba Digital Media Engineering Corporation.
19/34ページ
想定アプリケーションに適したリコンフィグレーション
• 画像処理に適した構成提案
• 2プレーンでコマ落ちのない画像処理を実現
画像処理アプリケーションに適した提案
リコンフィグレーション構成 想定アプリケーション
・画像データ
2プレーン
・可変レート
・ノンリアルタイム対応
特徴
技術テーマ
データ間⽋なし
2プレーン切替制御
動作切替時のパラメータ保持
Copyright 2015, Toshiba Digital Media Engineering Corporation.
20/34ページ
ハードウエアシステムデザイン
• パーシャル・リコンフィグレーション・システム
– 2プレーン・プラットフォーム
Bootとコンフィギュレーション・シーケンス
①SDよりPSのBootイメージロード (OS、 アプリ)
②PL部のFull bit streamのロード(Logic)
③SDからDDR3にPR bit streamを展開(置換⽤Logic)
④DDR3からPCAP経由でPR bit streamのロード
(Xilinx社資料掲載図)
※PR: Partial Reconfiguration
展開したプラットフォーム構成
Copyright 2015, Toshiba Digital Media Engineering Corporation.
21/34ページ
ハードウエアシステムデザイン
• 2プレーン・プラットフォーム
• ビデオフォームなど⽋落なく安全に切替可能な回路構成
Output
“X”
RM-A出⼒
RM-A出⼒
“0”
RM-1
RM-2
RM-3
RM-B出⼒
“0”
RM-B出⼒
同期化回路
レイテンシ回路
Copyright 2015, Toshiba Digital Media Engineering Corporation.
22/34ページ
ソフトウエアシステムデザイン
• FPGA内SWモジュール構成と制御環境
– Linux環境上にWebサーバ、TCP/IPを実装し、htmlインタフェースを稼働
– 制御⽤PCからEthernet経由で、htmlインタフェースを使いリコンフィグを実⾏
– Linuxアプリケーションは、リコンフィグの実⾏をデバイス・ドライバに要求
– デバイス・ドライバはデバイス・コンフィグレーション(PCAP)に対しリコンフィグを命令
– エラー発⽣した時は、デバイス・ドライバのエラー値をUSB経由で制御⽤PCにエラー表⽰
– リコンフィグ正常終了した時は、htmlインタフェースからEthernet経由で制御⽤PCにステータス表⽰
評価ボード(ZC702)
EtherNET
(開発⽤PC)
USBケーブル
(PCAP)
Copyright 2015, Toshiba Digital Media Engineering Corporation.
23/34ページ
ソフトウエア開発環境デザイン
• SW開発環境構築と作業効率化
• 仮想PC導⼊で開発作業環境を構築
– Win7環境とLinux環境をPC1台に集約
– Win7ソフト(FPGAツール等)とLinuxソフト(SDK等)連携
– FPGA実装ファイル作成からSW開発までをPC1台で対応
SDカード
評価ボード
(ZC702)
USBケーブル
EtherNET
Win PC
ネットワーク確認⽤
(ターミナル兼⽤)
開発⽤PC
SW開発環境構成
SW実装環境
Copyright 2015, Toshiba Digital Media Engineering Corporation.
24/34ページ
パーシャル・リコンフィグレーション実装
• Vivadoデザインフロー
– パーシャル・リコンフィグレーション・デザイン・フロー
1.
2.
3.
4.
5.
6.
7.
システム・デザイン(システム構造設計:スタテック部とPR部)
スタテックモジュールとRMを合成
物理制約を作成しリコンフィグ領域を定義
1stインプリメント(ベースとなるスタテックとRMをインプリメント)
2ndインプリメント(1stをベースに他のRM分をインプリメント)
検証ユーティリティ実⾏
ビット・ストリーム作成
※RM:リコンフィギュアラブル・モジュール
Copyright 2015, Toshiba Digital Media Engineering Corporation.
25/34ページ
パーシャル・リコンフィグレーション実装
• 詳細デザインフロー
RMの数だけ作業とファイル管理が発⽣
Copyright 2015, Toshiba Digital Media Engineering Corporation.
26/34ページ
パーシャル・リコンフィグレーション実装
• エリア指定
– 苦労した点
• RM領域の⾒積精度
– インプリ後、タイミングエラー等の原因
– FixするまでRP領域を引き直し
• Pblock配置制約(デバイス制約)
– フレーム単位の配置制約。ロジック・リソースを有効活⽤できない
– 対策と対応
• トップモデル(スタテック+最⼤RM)での⼗分なRM領域検証
• Pblockプロパティで有効なリソースと利⽤可能なリソースを確認
• 配置配線を考慮しRM領域は広く設定
• Pblockサイズの配置はリソース列(CLB、BRAM、DSP)が配置条件
RM領域の条件を満たす事が後⼯程の作業負担軽減する
Copyright 2015, Toshiba Digital Media Engineering Corporation.
27/34ページ
パーシャル・リコンフィグレーション実装
• Tclスクリプト
– 苦労した点
• Tclフローのみ、GUIフローがない
• Tclスクリプト構成と理解
• インスタンス名を間違えてもエラー表⽰されない(Vivado課題)
– 対策・対応
• サンプルコマンドを活⽤ 資料:UG909、UG947、UG835
• Tclスクリプトを共有するXilinx Tcl store(オープンソース)を参考
• システム構造に合わせオプションコマンド追加
• パーシャル・リコンフィグレーション・デザイン・フローに沿って実⾏体系を構築
• メッセージレベルはユーザ側で修正が必要(WARNIG→Error)
set_msg_config でメッセージレベルを変更
Tclスクリプト構築は時間を要すが、Tcl環境が⽴上れば開発は加速する
Copyright 2015, Toshiba Digital Media Engineering Corporation.
28/34ページ
パーシャル・リコンフィグレーション実装
 エラー表⽰の有効活⽤
スクリプト活⽤例:誤った.ngcファイル指定を検出させる
ngcファイルを使⽤できないデバイスに誤って使⽤した場合のWARNINGメッセージ
---------------------------------------------------------------------### add_files { ./xilinx/RAM2RW020080_CORE.ngc }
WARNING: [filemgmt 56-95] NGC files are only supported with 7-series and older devices, skipping
file: './xilinx/RAM2RW020080_CORE.ngc'
----------------------------------------------------------------------
このメッセージをINFOに変えるには
set_msg_config -id "filemgmt 56-95" -new_severity "INFO"へ変更可能。
※ERROR->WARNING/INFOなどへ変更できる機能拡張も希望
<関連エンハンス希望>
ERRORメッセージは1件検出でツール実⾏が中断。
WARNING/INFOメッセージは最⼤表⽰回数を変更(-limit)できる。
ただしERRORは変更できない。ERRORメッセージも変更ができるようにならないと、
1件ごとにERROR対策作業が必要。⾮常に作業効率が悪い。
Copyright 2015, Toshiba Digital Media Engineering Corporation.
29/34ページ
まとめ
•Vivadoを使った開発事例から
– パーシャル・リコンフィグレーションを成功させるには
 システム・デザイン
仕様要件からシステム構造を定める
 実装課題と対策
システム構造から課題を全て抽出し対策する
デカップリング対策、システム構造に関わる対策(レイテンシ対策等)
 実装作業
Vivado制約ルールに従いシステム・デザインを実装する
パーシャル・リコンフィグレーションの成功は
システム構造の課題対策で決まる
Copyright 2015, Toshiba Digital Media Engineering Corporation.
30/34ページ
Agenda
• アジェンダ
– 会社概要
– リコンフィグレーションの弊社の取り組み
– リコンフィグレーション開発事例紹介
• 画像処理回路の実装要件
• 想定アプリケーションに適したリコンフィグレーション
• 開発事例の紹介
– デザイン・フロー
– Vivado開発実践(エリア指定、Tclスクリプト)
• まとめ
– ザイリンクス社殿への要望
Copyright 2015, Toshiba Digital Media Engineering Corporation.
31/34ページ
パーシャル・リコンフィグレーション実装
•ザイリンクス社殿への要望
– GUIサポート
• Tclフローは⼤変よいが、初級ユーザはGUI操作を好む
GUIによる対話型操作の実現を
– その他
• インプリメント済みリコンフィギャラブルモジュールの再利⽤
• パーシャル・リコンフィグレーションにタンデムROM機能を組込む
• メッセージレベルの拡張機能追加
さらに使いやすい統合開発ツール提供をお願いします
Copyright 2015, Toshiba Digital Media Engineering Corporation.
32/34ページ
ご清聴ありがとうございました。
Copyright 2015, Toshiba Digital Media Engineering Corporation.
33/34ページ
Copyright 2015, Toshiba Digital Media Engineering Corporation.
34/34ページ