メンター、SoCのデータパスUだけではなくコントロールUにもC言語設を拡張
メンター・グラフィックスは、C言語によるLSI設}法や検証を、来のデータパスUv路だけではなく、コントロールUv路にも適できるようにCatapult C Synthesisを拡張、これによりフルチップの高位合成ができるようになった。極めて複雑なデジタルLSI、SoCを開発する屬如RTL作成までの工数が]くなり、また設データを再Wしやすくなる。

データパスは、デジタルロジックv路の中で加Qやロード/ストアなどの演Q処理を行うデータ経路であり、コントロールv路は命令にって何をどうするべきか、メモリーやデータパスに指令を出すv路である。デジタルv路のシーケンスにpって演Qするのはプログラムによって}順をしっかり書けば演Qできるため、データパスv路のC言語サポートは可Δ世辰拭しかし、バスにおいてデータが合するときの判や、優先順位の定などのコントロールv路ではC言語設はこれまでできなかった。コントロールv路では、的モデルによる調停が要であり、データのL落や無することもきる。データがない場合でもジョブを実行したり新したりしなければならない。このため化した言語が要とされていた。
SoCの中のプロセッサコアはARMやMIPS、SH、Vシリーズ、PowerPCなどをコアとして使えばBりるが、周辺v路や通信バスU御など複雑になってきたコントロールロジックv路では、設が複雑になりC言語からRTLをO動收する高位合成\術が望まれていた。直接RTLを求める}法ではタイミングを考慮した設や検証に時間がかかる屬法∪濕に混入するバグもHくなる。RTLの検証にはi後の工を行ったり来たりするv数が\え、時間がかかっていた。少しでもバグらすためにも設の抽度を屬欧C言語をWする桔,求められ、ESL(electronic system level)と}ばれるC言語設がもてはやされてきた。
ESLを使えば、抽度が高まり、コーディングを少なくできるため、設時間も検証時間も]くなる。このような高集積なSoCは通信インフラ機_や画欺萢、宇宙豢機_などの応に使われている。
これまでのメンターのESLツールであるCatapult C Synthesisでは、内陬屮蹈奪のU御、複数ブロックのデータフローU御に関してはC言語設が出来ていた。今v、Catapult C Synthesisの拡張によって、クロックで信、U御する同期式を使いながら外陬屮蹈奪までもU御するようにC言語(C++ソース)で的に定Iできるようになった。アービターを使ってジョブの優先順位をつける場合、データをDりに行くのか待たせるのかを判するなど、クロック関係を表現できるとメンターは言う。的にC++ソースをどう表現するのかについては言及しないが、同期U御可ΔC++の仕組みを提供する、とメンター・グラフィックス・ジャパンのテクニカル・セールス本陬轡縫▲▲廛螢院璽轡腑鵐┘鵐献縫△療邉智昭は述べる。
同期U御可ΔC++の仕組みについて的な詳細について触れないが、U御チャンネルを分岐すること、さらにクロックによるコントロールユニットと、データによるアルゴリズム処理とのインターフェースを導入、合成する、としている。
C言語記述からRTLを合成するだけではなく、検証やデバッグもできるような環境を作った。收されたRTLを検証する。RTL動作とC++ソースのバックアノテートを行い、ソースコードのデバッグを行う。
今v、コントロールv路までC言語設ができるようになったことで、フルチップの高位合成が可Δ砲覆襪世韻任呂覆、低消J電設もできるようになる。的にはクロックゲーティングのU入可Δ幣貊蠅O動的に見つけられるため、}Tが不要になる。また、v路ブロックの動作Xを把曚掘△匹v路がVまっているかを通瑤垢襪燭瓩離侫薀阿鮃臉することもできる。
メンターは、このツールの拡張版をj}半導メーカーに実証してもらっており、としてのk般x場への提供はQ内までに行う予定になっている。