富士通九州ネットワークテクノロジーズ(富士通QNET)は、RTL設計者の視点で米Bluespec社の言語やツールを評価し、その結果に関して「Bluespec User Group Meeting 2012 Oct.」(Bluespec社の販売代理店のサイバネットシステムが2012年10月12日に開催)で講演した。登壇したのは、富士通QNETの若吉光春氏(第一開発統括部 第一開発部)である。

図1●講演する若吉光春氏(写真奥) サイバネットシステムが撮影。
図1●講演する若吉光春氏(写真奥)
サイバネットシステムが撮影。
[画像のクリックで拡大表示]
図2●C言語/SystemCと高位合成、Bluespec手法、Verilog\-HDL/VHDLのRTL設計の違い 富士通QNETのスライドをTech\-On!が編集。
図2●C言語/SystemCと高位合成、Bluespec手法、Verilog-HDL/VHDLのRTL設計の違い
富士通QNETのスライドをTech-On!が編集。
[画像のクリックで拡大表示]

 日本では、Bluespec社と言えば、合成ツールの「Bluespec Compiler」が注目されていて、その合成ツールとC言語/SystemC入力の高位合成ツールとの比較の話も多い。が、両者には少し(かなり?)の違いがある。C言語/SystemC入力の高位合成ツールは、(可能かどうかはさておいて)ソフトウェア設計者(HDLを学びたくない設計者?)をハードウェア設計に取り込みたいという意図がある。それに対して、Bluespec社はあくまでハードウェア設計者を狙っていると、筆者は初めて同社を取材したときに熱心に語られた(Tech-On!関連記事1)。

HDLは設計に関して進化していない

 ここでいうハードウェア設計者は、HDLを使ってRTLで論理設計している設計者を指す。この意味で、今回の若吉氏の試みは、Bluespec社の思いに合致している(図1)。その若吉氏が、最初に述べたのが、「Verilog-HDLやVHDLには、ここ20年間ほど、設計機能に関してこれといった進化がない」ことである。「最近、Verilog-HDLがSystemVerilogという形で進化したものの、SystemVerilogで強化されたのは検証周り。20年前と比べてハードウェア設計は大規模・複雑化しているのに、HDLはそれに追いついていない」(同氏)。

 「だからこそC言語/SystemC入力の高位合成」という声が、C言語/SystemC推進派から記聞こえてくる。この声に対する若吉氏の意見はこうだ。「C言語/SystemCベースの高位合成が効果を発揮できるのは、アルゴリズム系のみ。例えば、パイプライン動作をはじめから想定している信号処理や、プロセサ処理のハードウェア化のようにレイテンシ・タイミング要求が厳しくない処理である。それ以外、例えば、バスプロトコル制御やDMA制御、インタフェース回路には向いていない。こうした回路はリソースやタイミングを人手設計したい」(同氏)。Verilog-HDLやVHDLのRTL設計よりは生産性を上げたいが、C言語/SystemCベースの高位合成の効果が薄い領域で期待されるのが、Bluespec社の手法だとした(図2