© 2010-2017 All Rights Reserved, Overtone Co.,Ltd. © 2010-2017 All Rights Reserved, Overtone Co.,Ltd. オーバートーン株式会社 開発部 澤村明寛
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd. © 2010-2017 All Rights Reserved, Overtone Co.,Ltd.
オーバートーン株式会社
開発部 澤村明寛
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd.
IoTとは
2
http://bdm.change-jp.com/?p=1677
IoTとは「有線および無線ネットワークを介してリンクされた組み込みセンサーを使用して、デバイス同士が互いにデータ通信する機能」 http://www.whitehouse.gov/sites/default/files/docs/big_data_privacy_report_may_1_2014.pdf
ヒトの操作によるのではなく、 デバイス自身がネットワークに発信
するのがミソ
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd.
デバイス単体としての機能は、単純・単機能のものから複雑・高機能なものまでさまざま
デバイス単体に搭載される技術は、必ずしも画期的、革新的なものばかりではない
技術そのものより、その使いこなし方のイノベーション
稼働する個体数がこれまでとは桁違いに大量
プロプライエタリではなくオープンな規格に対応
Time to Marketがより重要
etc…
IoTデバイスの特徴
3
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd.
デバイス単体ではなく、SW/HWを横断した システム全体を見据えた仕様策定、仕様理解
大量の個体に対する設計問題の改修コストに対応する高品質設計
開発期間短縮
etc…
IoTデバイス開発の課題
4
IoTデバイスと言っても、 開発手法やマネジメントの重要さは
何も変わらない
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd. 5
試作
ハードウェア設計・検証 ソフトウェア設計・検証
システム設計~詳細設計
RTL検証
実機検証
HW/SW 協調検証
論理・ タイミング検証
要求仕様
RTL プログラム設計
論理回路設計 (論理合成・配置配線)
ASIC/ASSP/FPGA
C/C++コード
システム仕様書
詳細仕様書
コーディング NSL Overture®
アルゴリズム設計 アーキテクチャ設計
UMLクラス図 UMLアクティビティ図 UMLステートチャート
RTL自動生成
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd.
UML to RTL/NSL開発事例
6
Video over IP Bridge
AXI3
UART
GEMAC Gb Eth PHY
ARM CPU
AXI4 AXI4
S
S
M
CPU用DDR3
VoIP送信 IP core
UART Station
S M
M
M
M S S
S S M
S
M S
intr
M
S
M S
M
M M S S
拡張ボード
USB-UART
USB-JTAG
RTP
packets
TS (serial)
開発Host PC
for SDK
ZYNQ (PS) 開発Host PC
for UART
ASI入力 TS (parallel)
IP網 & VoIP受信機器
DVB-ASI
ZYNQ (PL)
selector
GP
UART Station
Camera
Image
Capture
Multi layer
Mixing engine
1D/2D
Rectangle
DMAC
2D Bi-linear
Image Scaller
Image
processing
And Video out
CRTC
General purpose
MPU bus I/F Register
controller
Frame-buffer Window RAM
(32KB)
Color palette
Index RAM
(4KB)
General
purpose
I/O conttoller
Interrupt
Status/Control
5channel
Frame-buffer
SDRAM
controller
Link-array-
chain
Rectangle
DMA
Command
buffer
Clock/Reset
System
management
2D Video Display Controller
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd.
ハードウェア記述言語NSLとは
同期回路モデリング/HW記述言語の進化形
振る舞いの記述でRTL相当の設計が可能 RTL設計では、エンジニアはアルゴリズムと、それを実現する順序回路の最適化を同時に考えています。
NSLによる設計では、エンジニアはアルゴリズムや動作に集中し、データパス化やステートマシンの自動生成をNSL処理系がサポートします。
オブジェクト指向による可読性の高い動作記述 UMLダイアグラムとの高い親和性
簡潔かつ馴染みやすい構文を提供.
既存の設計資産(IPコア)の流用も可能.
7
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd.
設計言語の進化
8
SW記述
HW記述
バイナリコード ニーモニック 高級言語
C++/JAVA etc.
Trレベル
回路図 ゲートレベル回路図
ネットリスト
RTL
Verilog/VHDL
NSL
?
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd.
NSL記述の特徴1 サイクルアキュレート設計、暗黙のクロックとリセット
並行動作、逐次動作、FSM、ループを文法レベルで サポートし、機能・振る舞いをわかりやすく記述
< ループ処理系 > □ For 文
For ( loop := 0x00 ; loop != 0xFF; loop++ ) { … }
□ While 文 While ( AdrsAck != 1’b0 ) { SRAM_nCS() // Assert SRAM CS* }
< 並行動作 > < 逐次動作 > { seq {
文1; 文1: 文2; 文2: } }
< FSM > □ state文
state_name state1, state2; state state1 { goto state2; _display("in state1 %d",c1); } state state2 {
goto state1; _display("in state2 %d",c2); }
9
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd.
NSL記述の特徴2 振る舞い記述の文法サポートにより記述量が減少
ソースコードの可読性やメンテナンス性の向上
10
Verilog HDLのライン数
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd.
Verilog HDLとNSLの比較
11
declare counter4 { output dout[4] ; } module counter4 { reg cnt[4] = 0; cnt++ ; dout = cnt ; }
module counter4 ( reset , clk , dout ); input reset, clk; wire reset, clk; output [3:0] dout; wire [3:0] dout; reg [3:0] cnt; assign dout = cnt; always @(posedge clk or posedge reset) begin if (reset) cnt <= 4'b0000; else cnt <= (cnt+4'b0001); end endmodule
NSL cnt[3:0]
dout[3:0]
+1
Verilog HDL 4bitカウンタ
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd.
UML to RTLはUMLをハードウェア開発に利用します。
UMLはグラフィカルな表現の仕様記述言語です。
ソフトウェア開発ですでに普及し、設計品質や開発効率の向上に成果を上げています。
NSLをUML記述で包みます。
UML to RTLでは3種類のUML図を使用します。
クラス図: 設計対象の静的構造を示します
アクティビティ図: 動作を自由に記述できます
ステートチャート図: 状態遷移図により、動作を記述できます
UML to RTL TechnologyTM
12
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd.
クラス図
13
設計対象の静的構造を示します。
"クラス"はmoduleに対応
各moduleの機能、I/Fと階層構造を表現
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd.
アクティビティ図
14
• 各クラスに定義された機能を実現するの動作、振る舞いを定義します。
• 単一サイクルの動作の記述が基本
• 並行動作、レジスタ代入、複数クロックにわたる逐次動作、ループ動作も記述可能
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd.
ステートチャート図
15
• 状態遷移による動作の記述
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd.
UML to RTL Technology
SW/HW一体の高効率設計フローを実現
16
HW仕様UML
詳細設計 詳細仕様
UML 自動生成 RTL
協調検証 "合成可能な"仕様書
設計者間の相互理解と
設計者自身の気付きを促進
システム 要求仕様
要求分析
システム レベル UML
システム 方式設計
SW仕様UML
詳細設計 詳細仕様
UML コーディング ソースコード
SW/HW間の相互理解
SW設計
HW設計
作りこみ品質の向上
総バグの削減
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd. 17
弊社が行ったIP開発実験(*)により 以下の通りHW設計生産性向上の効果が確認されました。
0 0.5 1 1.5 2
UML to RTL
RTL設計
設計工数(詳細設計以降)
50%削減
0 10 20 30
UML to RTL
RTL設計
人月あたりコード生産性(RTL換算)
5倍向上
0 2 4 6 8
UML to RTL
RTL設計
ライン数あたりバグ件数 (RTL換算)
80%削減
(*) 第三者設計会社にて、Video Over IPブリッジの開発を実施。 従来RTLとUML to RTL TechnologyTMでの並行開発により工数、生産性等を比較。
単位:人月 単位:kLine/人月 単位:件/kLine
XC7Z045
69300LUT/25000REG NSL 11KLine
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd. 18
相反する課題を解決し スムーズな製品開発へ
製品性
Time to Market
開発費
UML to RTLは設計品質の向上により 開発効率向上を実現します
工数
時間
開発期間短縮
上流設計へのリソースシフト
開発工数の平準化
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd.
さいごに
がおすすめする
UML to RTL TechnologyTMは
IoTシステムの設計に必要な
設計品質確保・開発効率化を実現する開発手法です。
お気軽にご質問ください。
展示ブース でお待ちしております。
19
© 2010-2017 All Rights Reserved, Overtone Co.,Ltd. 20
称号 オーバートーン株式会社
設立 2010年1月29日
代表 代表取締役会長 佐藤 敏明 代表取締役社長(CEO) 佐藤 正 技術取締役(CTO) 清水 尚彦
資本金 6,300万円
所在地 ◆本社
東京都青梅市仲町295番地
りそな銀行青梅プラザ3F
◆東京オフィス
東京都中央区日本橋兜町18-5
日本橋兜町ビル2F
事業 内容
◆半導体デバイス向け高位設計ツール
の開発・販売
◆IP開発及び販売と、サポートを含む
エンジニアリング・サービスの提供
沿革 1981年 NTTが半導体設計手法の研究開始
1985年 NTTが“SFL/PARTHENON”を発表
1992年 (NPO)パルテノン研究会発足
2002年 “NSL/合成エンジン”の開発開始
IP ARCH, inc.がSFL2VL, SFL2VH発表
2008年 IP ARCH, inc.が機能記述型言語NSL
及び合成エンジンを発表
2009年 IP ARCH, inc.がUML2NSLを発表
研究会に会社設立準備委員会を設置
2010年1月 オーバートーン設立
10月 NSL Core販売
12月 2Dグラフィック処理のIPコア
自社開発・販売
2012年 エンジニアリングサービス事業開始
▼会社概要
(注) IP ARCH, inc.は、当社CTO清水尚彦が米国に設立した研究開発会社。