【画像処理のKIT】開発ユーザーの立場2
第2回目は、「FPGAの回路合成ツール」についてです。
FPGAメーカーさん以外にも、開発環境は出されてますが我々はそれぞれのFPGAメーカーさんが提供されている開発環境を使ってます。
チップの構造を熟知しているメーカーさんだからこそ。と言う機能もありますし、チップを市場投入してから解った不具合に対し開発環境が、その不具合を回避してくれる(もしくはその機能を使えなくしてくれる)対応が素早いからです。
チップ内の配線自由度が高いX社。
こちらのツールは、自由度が高いと言う長所があるだけに配置配線も選択が多くツール開発者は困っているのでしょう。
配線次第で信号遅延のバラツキが多く、遅い信号と速い信号とは何倍もの開きがあります。トグルレートを指定した信号は、指定値で合成成功するまで頑張りますが、指定してない信号は、優先を下げて配線されます。しかし全ての信号を指定すると、フッティング失敗で終わったり。そられを最適化する為論理合成やフィティング時間も、多くかかります。
ゲート規模が小さいデバイスでは、あまり気になりませんが、大規模な回路になると、この待ち時間はエンジニア泣かせです。それでもゲート単価は、無視できない競争力がありますが。
一方、大昔から開発ツールも自社開発されている為か、チップのアーキテクチャの違いからか、論理合成やフッティングが比較的早いA社。しかし、相対的な話だけで大規模になると時間はかかりますが。
こちらは、信号の配線遅延のバラツキが比較的すくなく、エンジニアが手を抜きがちですが。
チップの動作速度やゲートあたりの単価だけでなく、開発期間の短縮や、エンジニアスキルを考慮し「開発環境」も、ターゲットデバイスを選択する尺度に加える事が必要ですが、長所短所が異なるので、悩みも増えますね。