シリーズ全体を読む
この記事は、Quilterの物理法則に基づくレイアウト自動化を使い、NXP i.MX 8M Mini搭載コンピューターを再現した過程を詳しく紹介するシリーズの一部です。
Project Speedrunは、当社の物理駆動型AIを使って1台の完全なコンピューターをできるだけ速く設計するという挑戦です。本ブログシリーズでは、そのシステムがどのように開発されたか、そしてその背後にあるエンジニアリング上の判断を記録しています。 まずはProject Speedrunの概要と結果をご覧ください。
Project Speedrunは、ますます難易度の高い基板でQuilterに挑戦させることでPCB設計を加速しようとする、私たちの継続的な取り組みの延長線上にあります。各サイクルは、チームが目指すべき単一の方向性と、実際のハードウェアをテストして進捗を測る手段を提供します。
2023年にはArduino Unoを再現しました。2024年にはテスト用ハードウェアに注力し、32個の加速度センサーへの読み書きを同時に行うマルチセンサーFPGAアレイを完成させました。2025年には、はるかに要求の厳しいターゲットを選びました。i.MX 8M Miniベースの完全なコンピューターです。NXP i.MX 8M Miniプラットフォームは、航空宇宙、自動車、産業制御、セーフティクリティカルな製品で使われる基板の代表例です。

完全な組み込みコンピューターでQuilterを評価することにしたのは、高速メモリ、ミックスドシグナルインターフェース、高密度なBGAファンアウト、配電、そして複数のサブシステムにまたがる配線制約といった、現代のPCBレイアウトの主要な要件をすべて試すことになるからです。Linuxを起動し、周辺インターフェースを動作させ、アプリケーションを実行し、安定した高速リンクを維持できるシステムであれば、まだ改善の余地があるとしても、その基盤となるレイアウトが設計の電気的・物理的要件を満たしていることの強力な証拠となります。
比較のベースラインとして、同じ設計をプロに提出して見積もりを取りました。ベースボードは手作業のレイアウトで238時間、SOMは190時間と見積もられ、合計で428時間、2か月以上に及ぶレイアウト作業でした。Quilterを使うことで、エンジニアがレイアウトに費やした時間はわずか38.5時間(ベースボードのクリーンアップが12時間、SOMのクリーンアップが26.5時間)で、四半期に及ぶレイアウトスケジュールが約1週間に短縮されました。
ただし、こうした自動化を実行する前に、制約、意図、機械的要件が明確になるよう設計を準備する必要がありました。
Quilterによる設計 – 概要
AIシステムを最大限に活用するには、ワークフローと期待の両方を変える必要があります。AIを生産的に活用しているソフトウェアエンジニアは、プロンプトの組み立て方、生成されたコードのレビュー方法、そして自動化を信頼できる場面と監督が必要な場面を学んできました。ハードウェアも同じです。
Quilterは同じ原則に基づいて設計されています。役に立つためには、推測に頼るのではなく物理に基づいて推論できるだけの十分な情報と制約が必要です。実際には、レイアウトを3つのステップからなるプロセスとして扱うことを意味します。
- 準備 – 意図が明確になるよう、基板、制約、環境を定義する。
- ツールの実行 – Quilterに制約の検証、配置、配線を実行させる。
- レビューとクリーンアップ – 人間の判断が依然として価値を生む部分にそれを適用し、製造に向けて仕上げる。
Project Speedrunでは、まさにこの構成に従い、まずi.MX 8M Miniの設計を準備して、Quilterが扱うべき適切な情報を持てるようにしました。
準備
NXPはこのプラットフォームの完全な回路図とCADファイルを公開しています。これらはもともとCadence Allegroで設計されたものです。私たちの目標は、回路図を同一に保ち、レイアウト部分だけをQuilterで検証することでした。これにより明確なベースラインが得られました。基板が動作しなければ、それは私たちのレイアウトが原因ということになります。
当時、QuilterはまだCadenceツールと直接連携していなかったため、最初のステップはプロジェクトをAltium Designerに変換することでした。これにより、次のものが得られました。
- 制約生成のために注釈を付け、構造化できる回路図シート。
- 新しい配置、ルーム、機械的制約の基礎として使える基板ファイル。
後ほど明らかになる理由から、回路は2枚の基板に分割されています。
- i.MX 8M Miniプロセッサー、LPDDR4、eMMC、および周辺部品を搭載したシステムオンモジュール(SOM)。
- SOMをイーサネット、音声、カメラ、ディスプレイ、ストレージ、拡張といった実際のインターフェースへと引き出すベースボード。
設計をAltiumに取り込んだことで、Quilterが重要な点を理解できるように回路図と基板を整え始めることができました。
回路図
どの設計でもそうですが、すべては回路図から始まります。Quilterは回路図を単なる接続図としてではなく、基板全体にわたる制約情報のコンテキストとして使用します。回路図の構成方法は、AIがレイアウトについてどれだけうまく推論できるかに直接影響します。
このプロジェクトでは、いくつかの具体的なパターンが重要でした。
.webp)
バイパスコンデンサ
Quilterは、部品のピンとグランドの間に明示的に接続されているバイパスコンデンサを自動検出します。i.MX 8M Miniの設計では、ツールが確実に識別してそのように扱えるよう、デカップリングコンデンサがこのパターンに従うようにしました。
.webp)
ネットクラスとインピーダンスグループ
ネットディレクティブを使用して、電源ネット、高速インターフェース、インピーダンス制御信号のクラスを定義しました。回路図上でこれらのネットを指定しておくことで、設計をQuilterに取り込んだ後に、配線幅、間隔、差動インピーダンスなどの制約を適用するためのすっきりとした方法を整えました。

サブ回路への論理的なグループ化
わかりやすさとレイアウト制御のために、関連する部品をサブ回路にグループ化しました。これは階層回路図でも、ブランケットディレクティブ(たとえば、3.3 Vレール上のすべて、または電源段内のすべてをグループ化)でも行えます。これらのグループは後にPCB上のルームとなり、詳細な配置はQuilterに任せつつ、フロアプランに影響を与える手段になりました。
共通しているのは、回路図上の各判断が構造を加えるという点です。どの部品がまとまるべきか、どのネットに特別な扱いが必要か、どこに最も厳しい電気的ルールが適用されるかをQuilterに伝えます。その構造こそが、単なる幾何学的なレイアウトではなく、物理駆動型のレイアウトを可能にします。
基板
回路図が整ったら、次は基板ファイルに取り掛かりました。ここでは、機械的制約、固定位置、フロアプランに関する判断を取り込みます。
.webp)
まず基板外形を定義し、すべての位置固定部品を配置しました。
- コネクタ(イーサネット、USB、音声、M.2など)
- ユーザーインターフェース(ボタン、スイッチ)
- 機械的な要素(取り付け穴、切り欠き、基板端)
これらの部品は筐体、面付け、機械図面に従う必要があるため、ハード制約として扱われます。Quilterはこれらを避けて作業し、移動や変更は一切行いません。
.webp)
次に、回路図上のグループを使ってPCB上にルームを生成しました。各ルームは、電源段、メモリインターフェース、周辺機器クラスターなど、まとめて配置すべき、または基板の特定の領域に配置すべき論理ブロックを表します。私たちはこれらのルームを手作業で配置し、全体的なフロアプランを確立しました。
- ノイズの多い電源段を敏感なアナログ部から遠ざける。
- 高速インターフェースを適切な基板端に沿って配置する。
- プロセッサー、メモリ、コネクタの間に妥当な配線チャネルを確保する。
その境界の内側で、固定されていない部品の詳細な配置はQuilterが担います。エンジニアがフロアプランを、Quilterが内部の配置を担うというこのバランスにより、設計の機械的・アーキテクチャ上の意図を損なうことなく、Quilterに最大限の自由度と成功の機会を与えられます。
良い入力が高速なサイクルを可能にする
Quilterのために設計を準備することは、人間のレイアウトエンジニアのために必要な準備作業と同じです。明確な回路図、定義された制約、そして製造についての妥当な理解です。変わるのは、その情報の使われ方です。エンジニアが自らレイアウトを行ったり、専門家の順番待ちでプロジェクトが停滞したりするのではなく、準備が完了すれば設計はそのまま自律的なレイアウトへと進みます。この下準備こそが、四半期かかるサイクルを1週間へと加速させるのです。
























