【EDSF 2011】DOCEA,アーキテクチャ・レベルで消費電力などを見積もるEDAツールを展示
DOCEA Power社はフランスの新興EDAベンダーで,「ACEplorer」と呼ぶEDAツールを開発・提供している。このツールは,アーキテクチャ・レベルやハードウェア-ソフトウェア協調検証の段階で,消費電力と熱を見積もる。これらの見積もり結果を見て,設計者が最適な動作手順と条件を設定することを想定している。他の熱解析ツールとの協調シミュレーションがオプションで可能になる。日本の代理店はエッチ・ディー・ラボ(本社:神奈川県)が務める。
同社によれば,消費電力の削減には,アーキテクチャ・レベルでの対策が最も効果がある。論理合成後やゲート・レベルなど,開発の後段になればなるほど,対症療法となってしまい,大きな改善が難しくなってくるという。同社のRidha Hama氏(Sales & Marketing Director)によると,消費電力の削減においては,動作手順や条件を最適化することを真っ先に行うべきである。具体的には,インプリメンテーション工程に入る前のアーキテクチャ設計段階やハード-ソフト協調検証の段階で,消費電力の見積もりと動作の見直しを十分に繰り返して最適解を割り出す。そして,その最適解に沿って機能設計し,後の工程に進むべきだという。
アーキテクチャ・レベルではSystemCで動作検証する方法もあるが,シミュレーションが重くなるために,消費電力および熱に特化したシミュレーション環境をDOCEAは用意し,高速に実行できるようにした。これまで,RTL(register transfer level)以降の低消費電力化については,複数のEDAベンダーから製品やソリューションが提案されている。それよりも高い抽象度でEDAがアプローチするのは珍しい。
ACEplorerは,セット全体やボード単位,SiP,3次元IC,SoCなどあらゆるレベルのシステム設計やソフトウェア開発などに応用可能だとする。システムに搭載されるCPUやメモリ,機能ブロックなど,構成要素単位に消費電力のモデルを準備しておく。それらは過去の製品における実績値や,IPコアごとに個別に見積もったりして,予め登録する。
この際,消費電力削減手法(例えば,電源遮断やDVSF,クロック・ゲーティング等)による消費電力削減の効果もライブラリとして登録しておく。リーク量を設定することが可能で,ダイナミック・パワーとリーク量を別々に見積もることができる。これで例えば,機能が同じIPコアでも複数世代のシリコン・プロセス向け実装(設計)してあれば,プロセス世代別にリーク量を登録しておき,ダイナミック・パワーとリーク量の兼ね合いを見ながら,プロセス世代を選ぶといった使い方が考えれれる。
構成要素の消費電力のモデルがそろったら,次は動作シナリオを設定する。ACEplorerのシミュレーションは,ステート・マシンの設定に従って実行される。米Synopsys, Inc.のESLツール「Platform Architect」の出力も利用することも可能である。機能動作の順番や消費電力低減手法の適用時期などを組み換えて,シナリオごとにシミュレーションし,設定されたターゲット以内に収まるようにしていく。またDOEを設定しておき,スクリプトを与えることによって自動実行し,最適な結果を導き出すこともできる。
ACEplorerはシミュレーションの結果として,動作シナリオの設定値や時間軸をベースにしたダイナミック・パワーやリーク量を出力する。UPF(Unified Power Format)に準拠した低消費電力設計仕様を自動生成し,インプリメンテーション設計の工程に渡すことができる。
独自の熱解析ソルバを備えており,パッケージの熱シミュレーション・モデルを与えて,消費電力のシミュレータと協調動作させることで,消費電力と熱の練成解析を可能にしている。これで例えば,熱の上限を設けたうえで,電源オンのシーケンスや動作条件の最適化を行うことができる。
練成解析の結果の活用方法としては,以下のものが考えられる。まずシナリオごとの消費電力と熱の経過時間ごとのプロファイルを可視化する。これによって,システム設計者やインプリメンテーション設計の担当者などが,開発チーム内で情報を共有したり早期のフィードバックを行う。また顧客との情報共有もあり得る。要求機能の実現性やリスクを査定し,機能の再設定などの協議を行う際に使える。今回のツールの使用実績としては,携帯電話機設計への適用事例が紹介されていた。
詳細設計段階での低消費電力化には限界がある。消費電力と熱の問題を後工程に先送りせずに,システム全体で最適化するには,DOCEAが提供する初期段階での検討環境が必要だと感じた。課題としては,このツールを使う場合に,IPコアなど構成部品ごとに消費電力のモデルを用意しなければならないことを挙げられる。また,用意した構成部品の消費電力モデルの精度が低いと,後工程との相関が問題になる恐れがある。しかし,動作シナリオを最適にするという目的においては,有効なツールになると考えられる。












