Cベース設計とは? 導入の課題は? ――人手による介入が必須,完全自動合成は幻想

藤田昌宏

tag: 半導体

技術解説 2003年3月 3日

●Cベース設計の合成では人手の介入が不可欠

 次に,以上述べてきたCベース設計手法,特に図5で示したようなハードウェア・ソフトウェア協調設計をC言語に基づいて行う場合のEDA技術(合成技術と検証技術)について考えてみることにします.図5に示したように,システムLSIでは,それを構成する各ブロックごとに,以下のような実現方法が要求仕様に合わせて適用されます.

1)すべてソフトウェア
2)すべてカスタム・ハードウェア
3)ソフトウェアとカスタム・ハードウェアの混合
4)複数のソフトウェアが並列に動作

 これらを合成することを考えると,基本的に以下のEDA技術が必要になります

a)ハードウェアのビヘイビア合成技術
b)RTLからの自動合成技術
c)ソフトウェアの最適化コンパイラ

  c)の「ソフトウェアの最適化コンパイラ」については,通常のRISCプロセッサなどに対する最適化コンパイラの技術がかなり進んでおり,人手によるコンパイルと同等以上のコードを生成できるようになっています.しかし,組み込み機器などで利用するDSP(ディジタル信号処理プロセッサ)や特殊なプロセッサについては,コード最適化が必ずしも十分でない場合も多く見受けられます.このような特定用途のプロセッサに対する最適化コンパイラ技術については,依然として研究的要素の大きな課題であるという認識が必要です.

 a)の「ハードウェアのビヘイビア合成技術」についても,特定用途向けプロセッサ用の最適化コンパイラと同じような状況です.うまく品質の高い合成が行える場合もあるが,その一方で,「ひどい」合成結果 となってしまう場合もあるということです.言い換えると,入力となるC言語の記述のしかたに合成結果が大きく依存するのです.利用には,それなりのくふうが必要となります.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日