高位合成ツール導入のメリットとして、入力記述量の削減がある。高位合成に入力する動作レベルのC言語系の記述の方が、論理合成に入力するRTLのHDL記述よりも抽象度が高いからだ。ただし、「それだけでは、ICの大規模化・複雑化による設計工数の増大に対処しきれない」との発言を、講演で聞いた。
この発言の主は、アドバンテストの長谷川崇氏(共通技術本部 設計技術部ESL設計推進課 課長)である(図1)。同氏は「CyberWorkBench Forum 2014」(NECが2014年2月5日に東京で開催)に、高位合成を含むNECのC言語入力ESL(electronic system level)設計システム「CyberWorkBench」(以下、CWB)のユーザーとして登壇し、高位合成やCWBの使いこなしなどについて講演した。
アドバンテストは、メモリーICテスターのピンエレクトロニクスに向けたASICの設計にCWBを適用した際の経緯に関して、2008年に講演している(Tech-On!関連記事)。この時に発表されたのが、高位合成を利用して設計したメモリーICテスターのピンエレクトロニクス向けASICの第1弾だった。その後も、同ASIC設計への高位合成の適用は続き、現在、第5弾の設計が終わったばかりだという。
メモリーICテスターのピンエレクトロニクス向けASICは、日経テクノロジーオンライン(旧Tech-On!)のEDA Onlineで高位合成の適用先としてよく登場するSoCとは異なり、チップ全体がほぼデータパスである(図2)。その意味では高位合成が適用しやすく、恩恵を受けやすい。アドバンテストは、高位合成を適用する際の目標として、人手記述するコード量をRTL設計に比べて1/5に削減することを掲げた。
CWBには、NECが高位合成向けに独自拡張したC言語である「BDL」を使って入力する。これによって、クロックやリセットなどの記述が不要になる。しかし、アドバンテストの第1弾のASICでは、人手記述するコード量は2/3程度に削減したものの、目標である1/5にはほど遠かった。目標達成のためとは言っても、ASICに実装する機能を削るわけにいかない。そこでアドバンテストでは、さらに抽象度の高い記述からBDLコードを自動作成するツールを開発した。