FormalRTL: Verified RTL Synthesis at Scale

この論文は、曖昧な仕様や形式保証の欠如といった産業規模のハードウェア設計における課題を克服するため、ソフトウェア参照モデルを形式仕様として統合し、計画・合成・形式等価性検査を密接に連携させる新しいマルチエージェントフレームワーク「FormalRTL」を提案し、大規模な産業グレードのベンチマークによる評価でその有効性を示したものです。

Kezhi Li, Min Li, Xiangyu Wen, Shibo Zhao, Jieying Wu, Junhua Huang, Qiang Xu

公開日 Wed, 11 Ma
📖 1 分で読めます☕ さくっと読める

Each language version is independently generated for its own context, not a direct translation.

🏗️ 背景:なぜこれが難しいのか?

今、AI の性能が向上するにつれて、GPU や NPU といった「計算を専門にするチップ」の設計が非常に難しくなっています。
これまでの AI(大規模言語モデル)は、文章からコードを書くのが得意ですが、**「自然言語(英語や日本語)だけで、複雑な電子回路の設計図(RTL コード)を完璧に作るのは、まだ無理がある」**というのが現状です。

  • 問題点 1: 指示が曖昧。「もっと速くして」と言われても、具体的にどう回路を組めばいいか AI は迷います。
  • 問題点 2: 複雑すぎる計算。普通の足し算ならいいですが、AI 向けの特殊な小数計算などは、シミュレーション(試運転)だけでは「ある特定の状況でバグが出る」という見落としが起きがちです。

💡 解決策:FormalRTL(フォーマル RTL)の登場

この論文では、**「AI に設計図を書かせる前に、まず『正解のモデル』を用意する」**という新しいアプローチをとっています。

🍳 料理の例えで説明します

  1. 従来のやり方(失敗しやすい):

    • 料理長(AI)に「美味しいカレーを作って」とだけ言います。
    • 料理長は「たぶんこうだろう」と適当に作ります。
    • 味見(シミュレーション)をしますが、たまたま美味しい時もあり、まずい時もあります。「本当に完璧な味か?」は保証されません。
  2. FormalRTL のやり方(成功する):

    • まず、プロの料理人が書いた**「完璧なレシピと味付けの基準(C 言語の参考モデル)」**を用意します。
    • AI(料理長)には、「この基準レシピを見ながら、同じ味のカレーを作ってください」と指示します。
    • AI が作ったカレーを、**「基準レシピ」と「AI のカレー」を同時に食べ比べる機械(形式検証ツール)**に入れます。
    • もし味が少しでも違えば、機械は**「ここが塩味が足りない(エラー)」**と具体的に教えてくれます。
    • AI はその指摘を受けて修正し、**「完全に味が一致するまで」**作り直します。

🤖 システムの仕組み:3 人の AI チーム

FormalRTL は、1 人の AI が全部やるのではなく、3 人の専門家がチームを組んで働きます。

  1. 計画担当(Planning Agent):

    • 役割: 大きな仕事を細分化する「プロジェクトマネージャー」。
    • 動き: 参考レシピ(C コード)を解析して、「まずは玉ねぎを切る部分から作りましょう」「次にスパイスを混ぜる部分」と、小さなタスクに分解します。
    • メリット: 一度に全部作ろうとすると AI は混乱しますが、小さく分ければ確実に作れます。
  2. 作成担当(Initializing Agent):

    • 役割: 実際に設計図を書く「職人」。
    • 動き: 分解された小さなタスクごとに、回路の設計図(RTL コード)を書きます。同時に、先ほどの「味見機械」が使えるようにする準備もします。
  3. 修正担当(Debugging Agent):

    • 役割: 間違いを直す「検査員兼リカバリーチーム」。
    • 動き: 味見機械(形式検証ツール)から「ここが間違っている」という**具体的なエラー報告(カウンター例)**を受け取ります。
    • すごいところ: 単に「バグあり」ではなく、「12 行目の計算式が間違っている」とピンポイントで指摘してくれるため、AI はすぐに修正できます。

📊 結果:どれくらいすごいのか?

研究者たちは、このシステムを使って、1000 行を超える複雑な回路の設計を AI にやらせました。

  • 初回成功率: 最初は半分くらいしか成功しませんでしたが、修正を繰り返すことで、ほぼ 100% 成功させました。
  • 規模: 従来の AI 研究では「足し算回路」程度しか作れませんでしたが、今回は**「産業レベルの複雑な計算回路」**も作れることを証明しました。
  • 品質: 人間が手作業で設計したものと比べると、少し面積や速度は劣るものの、**「絶対に間違っていない(正解である)」**という点が最大の特徴です。

🚀 まとめ:なぜこれが重要なのか?

これまでの AI は「なんとなくコードを書く」のが得意でしたが、FormalRTL は**「正解の基準を持って、間違いを数学的に証明しながら作る」**ことに成功しました。

これは、**「AI が作った半導体が、実際にスマホや AI チップに入っても、絶対にバグで壊れない」**という信頼性を初めて保証する一歩です。今後は、この技術を使って、より複雑で高性能なチップを、人間が手作業で設計するよりもはるかに早く、安全に作れるようになるでしょう。

一言で言えば:

「AI に設計図を書かせる際、『正解のレシピ』と『自動検査機』をセットにして、間違いをゼロにするシステムを作りました」