ESL合成の利用が広がってくるに連れ、次のステップがどうなるかに関心が移る。一つの疑問として残りそうなことは、データパス以外の構造や、コントロール回路のロジックの合成がどうなるかということであろう。従来のパイプライン型のデータパスでは要求仕様が満足できないような場合、この点は重大事となる(図A)。
もちろん、この面での研究成果も出つつある。
期待できる徴候の1つが、ごく最近になって米Cadence Design Systems社が長らくうわさされてきたESLツールについて発表したことである。このツールは同社バークレー研究所の数年間にわたる研究成果をベースにしたものだ。RTLコードを生成するツールのことを同社は「C-to-Si Compiler」と呼んでいる。その評価については、ユーザーの使用経験談が出回るまで待つことにしておこう。以前にも類似した内容がいくつかのメーカーから発表されたが、今回の発表に関するCadence社の資料を見て興味が持たれる点として、セールスポイントをツールのコントロール回路のロジック合成機能に絞った点が挙げられる。つまり、この機能に関しては相応の改善が図られていると推測できるのである。
コンフィギュラブルプロセッサメーカー米Tensilica社の主任科学者であり、長らくコントロール回路のロジック合成に取り組んできたGrant Martin氏は、「現状のレベルでは、ESLツールの得意分野はやはりデータパスだ。例外を挙げるならばネットワーク分野が考えられる。この分野では米BlueSpec社のESL合成ツールセットがパケット識別エンジンの合成などに使用されている」と述べる。
Martin氏は、C言語を基にコントロール回路のロジックをRTL合成することについて、いくつかの指摘を行った。この分野で、これまでに最良の結果が得られた戦略は、C言語のコードへの依存性を少なくすることであり、データパスに対するツールのようにはアルゴリズム面に重点を置かないことだった。このことは、C言語がコントロール回路のロジックを記述する言語として劣っていることを意味するものではない。C言語を使ってコントロールロジックを表現することを好む人たちもいる。しかし、C言語では一般的にコントロールアルゴリズムの実行時間が扱われないが、ハードウエアになれば各サイクル時間が問題になる。
さらに、コントロールロジックを専門とする設計者は自身のツールと設計フローを自作してきた。そうした設計者にとって新たなアプローチは、生産性を大きく向上するものであると同時に自らの立場を傷つけるものでないことが示されない限り、興味のないことであろう。
とはいえ、ネットワーク設計の経験に基づいて新たなアプローチを採用した設計者もいる。また、コントロールロジックの合成が成功している用途もある。Tensilica社のMartin氏は、「当社は自社開発ツールを使用して拡張インストラクションに対応したCPUコアのコントロールロジックを合成している。理論的にはもっと汎用的なツールも利用可能だが、当社が開発したような専用ツールがより汎用的なものになる可能性もある」と述べる。
Copyright © ITmedia, Inc. All Rights Reserved.