ハードウェア・ソフトウェア協調設計とは、シリコンの設計とそこで動作するソフトウェアの開発を並行して行い、相互にデータや制約条件をやり取りするエンジニアリング手法です。従来のフローでは、ハードウェアとソフトウェアは別々に開発され、設計プロセスの後半で統合されます。協調設計フローでは、ソフトウェアのワークロードを視野に入れてチップのアーキテクチャに関する決定を下し、ハードウェアの制約に基づいてソフトウェアを修正・洗練させます。目指すのは、要求の厳しいパフォーマンスと効率性の目標を達成するために、両者が密接に適合したシステムです。
このアプローチが最も重要となるのは、システムの許容マージンが小さく、限られた電力バジェット内で高い演算スループットを発揮し、目標速度で通信し、信頼性高く動作することが求められる場合です。物理AIシステムは、まさにこの範疇に属します。協調設計によって生み出されるアクセラレータの定義については、AIアクセラレータとはをご参照ください。本稿では、効率的なAIシステムオンチップ(SoC)をもたらす協調設計ワークフローに焦点を当てます。
物理AIシステムは、複数のセンサーを介して環境を認識し、多数の入力を解釈して行動する必要があります。多くの場合、ミリ秒単位の処理が求められ、バッテリー電源で動作します。クラウド上ではなくデバイス上で大規模なマルチモーダルモデルを実行すると、センサーやアクチュエータの近傍で演算処理が行われるため、レイテンシが削減される一方で、効率的な処理に対する要求がチップ自体に集中することになります。これを困難にし、協調設計を必要不可欠なものにしている要因として、3つの制約が挙げられます。
| 制約事項 | 物理AIにおいて困難な理由 | 共設計によるアプローチ |
| 電力あたりのパフォーマンス | モバイルシステムは自ら電源を保持して稼働するため、単純なスループットではなく、電力予算内でのスループット(ワットあたりのTOPS)が重要な指標となります。 | 初期段階からアーキテクチャと同時に消費電力を最適化 |
| レイテンシ | リアルタイムでの動作を実現するためには、センサー、演算器、アクチュエータの間で信号を十分な速度で伝送する必要があります。 | ワークロードに合わせたアクセラレータおよびメモリ・アーキテクチャの選定 |
| 熱的および物理的制限 | 効率的なシリコンは発熱を抑え、物理デバイスのサイズおよび重量の制限に適合します。 | 電力イングリティおよびサーマルを考慮したサインオフ |
汎用プロセッサがこれら3つの要件を同時に満たすことは稀です。要件を満たすには、実行するソフトウェアと協調して設計されたニューラル・プロセッシング・ユニット(NPU)やAIアクセラレータIPなどの専用シリコンが必要です。マルチモーダル物理AIが次世代NPUに求める要件については、次世代NPUが物理AIに不可欠な理由で検証しています。
図1 — 3つの制約事項。 物理AI向けSoCは、電力あたりのパフォーマンス、レイテンシ、熱的制限を同時に満たす必要があります。いずれか一つだけを単独で最適化しようとすると、他の要素が損なわれる傾向があるため、ハードウェアとソフトウェアは順次ではなく並行して設計されます。
物理AI向けSoCの共設計では、フローの各ステージにおいてハードウェアとソフトウェアの両方の視点を統合します。シノプシス(Synopsys, Inc. Nasdaq: SNPS)は、設計、サインオフ、検証のすべてのステージで使用されるツールを提供しています。
図2 — 共設計のワークフロー。 4つのステージが相互にフィードバックを行います。アーキテクチャ検討ではターゲット・ワークロードに対する構造を定義し、電力・パフォーマンス最適化では設計を許容予算内に収め、AI駆動型最適化では設計空間を探索し、統合・検証ではテープアウト前にハードウェアとソフトウェアが正しく動作することを確認します。点線のフィードバック矢印は反復的な性質を示しており、どのステージでの発見事項も、以前の決定事項を見直す材料となります。
1. アーキテクチャ検討
共設計は、RTL(レジスタ転送レベル)コードが記述される前の段階から、ターゲット・ワークロードに対して候補となるアーキテクチャを評価することで開始されます。Synopsys Platform Architectは、プロセッサ、メモリ、インターコネクトの選択に関する早期の検討をサポートし、設計が目的のAIワークロードをどのように処理するか、またボトルネック(多くの場合メモリ帯域幅)がどこに発生するかをアーキテクトが把握できるようにします。Synopsys RTL Architectは、早期のアーキテクチャ検討と最適化を実行し、PPA(電力・性能・面積)および混雑度への影響についてRTLの分析と最適化を行います。
2. 電力およびパフォーマンスの最適化
ワットあたりの性能が設計上の最大の制約となるため、電力解析と最適化は、後工程での確認ではなく、早期に実施されます。Synopsys SpyGlass PowerはRTL段階で消費電力を評価して削減し、Synopsys RedHawk-SCはフローの後半でパワーインテグリティのサインオフを提供します。Synopsys PrimePowerは、初期のRTL探索から最終的なゲートレベルのサインオフまでをカバーする、包括的かつ物理情報を考慮したサインオフ精度の電力解析ソリューションを提供します。また、Synopsys Fusion Compilerは、電力要件を考慮した論理合成からレイアウトまでの物理実装を実行します。複数の段階で電力を最適化することで、設計の進行に伴う電力予算内での収束を維持します。
3. AIを活用した設計最適化
設計空間の探索自体も、AIによって加速させることができます。Synopsys DSO.aiは、機械学習を適用して設計空間を探索し、手動での反復作業では通常同じスケジュール内に収まらない優れたPPA(電力・性能・面積)結果を導き出します。Synopsys 3DIC Compilerは、チップとパッケージのコデザインを統合する、スケーラブルかつ自動化された単一の環境を提供することで、3D IC設計特有の課題に対応します。これにより、複雑なマルチダイ設計において、PPAの改善と市場投入までの期間短縮を実現します。
4. 統合と検証
アクセラレータとそれを囲むSoCは緊密に統合され、シリコンの製造前にハードウェアとソフトウェアの両方を検証する必要があります。Synopsys ZeBuエミュレーションシステムにより、チームはハードウェア設計に対して実際のソフトウェアワークロードを早期に実行できるため、テープアウトの遥か前にハードウェアとソフトウェアの協調検証を完了させることができます。シリコンが存在する前に実稼働ソフトウェアを実行して設計を検証することは、設計段階で使用され、ライフサイクル全体を通じて活用可能な電子ハードウェアの仮想レプリカであるエレクトロニクス・デジタルツインを活用することを意味します。アクセラレータは、完全なSoCに必要なインターフェイス、ファウンデーション、セキュリティIPとともに統合されます。
フローの各段階は、それぞれ異なる機能を持つツールに依存しています。スケジュール上の位置づけではなく、機能ごとに分類することで、それぞれのツールが果たす役割が明確になります。
| ステージ / 機能 | 機能の説明 | シノプシス テクノロジ |
| アーキテクチャ探索 | AIワークロードに対するアーキテクチャの評価、PPAおよび混雑度を考慮したRTLの最適化 | Platform Architect、RTL Architect |
| RTL電力解析 | RTL段階での早期の電力削減 | SpyGlass Power |
| 電力解析とサインオフ | RTLからゲートレベルサインオフまでの物理情報を考慮した電力解析 | PrimePower |
| パワーインテグリティ・サインオフ | フロー後半における電力供給の確認 | RedHawk-SC |
| 論理合成と実装 | 電力要件を考慮した論理合成からレイアウトまでの実行 | Fusion Compiler |
| AI駆動型の設計空間最適化 | 消費電力、パフォーマンス、面積(PPA)の向上を追求 | DSO.ai |
| 3D-IC設計 | マルチダイに向けたチップとパッケージの協調設計を統合 | 3DIC Compiler |
| ハードウェア・ソフトウェア検証 | シリコン試作前に設計データ上でソフトウェアを実行 | ZeBuエミュレーション |
協調設計の価値は、実際の量産シリコンにおいて顕著に表れます。エッジAI企業であるSiMa.ai社がマルチモーダル・フィジカルAI向けに第2世代のModalix SoCを設計した際、シノプシスのツールとIPを活用して設計からテープアウトまでの全フローを自社内で完結させ、一発でのバグのない(A0)シリコン試作を達成しました。SiMa.ai社は、Modalixが「代替ソリューションの10倍のワットあたりパフォーマンス」を実現し、4チップクラスターとして構成した場合には「最大200 TOPS」を発揮するとしています。
開発チームは、エミュレーションを活用した早期のハードウェア・ソフトウェア統合に成功の要因があったとしています。SiMa.ai社のハードウェアエンジニアリング担当副社長であるSrivi Dhruvanarayan氏は、「ZeBuを使用することで、チップが手元に届く前段階からLlamaモデルのワークロードを実行することができました。これにより、設計の健全性とソフトウェアの成熟度に対する確信を得ることができました」と述べています。詳細については、SiMa.aiの導入事例をご覧ください。
協調設計と従来の逐次型フローの違いは、両者を並べて比較することで最も明確になります。
| ディメンション | 従来の逐次型設計 | ハードウェア・ソフトウェア協調設計 |
| 作業の順序 | ハードウェアを優先し、ソフトウェアはシリコン完成後に着手 | ハードウェアとソフトウェアを並行して開発 |
| 統合のタイミング | テープアウト後の後段階 | エミュレーションや仮想モデルを活用した早期段階 |
| 電力最適化 | 終盤に近い段階で検証 | アーキテクチャの段階から最適化 |
| リピン(再設計)のリスク | 製造後に問題が表面化するため、リスクが高くなる | 問題が早期に表面化し、コストを抑制 |
| Physical AIの電力・コスト要件に対応 | 電力あたりの性能目標の達成が困難 | 目標達成に向けた設計 |
図3:共設計と逐次設計の比較。従来の逐次型タイムラインでは、ソフトウェアの統合はシリコンの完成を待つため、問題の発見が遅れ、多大なコストが発生します。これに対し、共設計タイムラインでは、ハードウェアとソフトウェアが並行して進められ、エミュレーション上で早期に統合されるため、テープアウト前に問題を発見して修正できます。共設計タイムラインは、Physical AIの要件を満たす手法として示されています。
優れた電力あたり性能
シリコンとソフトウェアの統合設計により、モバイル向けPhysical AIに不可欠なTOPS/W(ワットあたり演算性能)目標の達成が可能になります。これは汎用的なアプローチでは達成が困難な目標です。
初回シリコン製造の成功
テープアウト前にハードウェアとソフトウェアの検証を共同で行うことで、多額のコストと数カ月のスケジュール遅延を招く再スピンのリスクを低減します。
市場投入までの期間の短縮
ハードウェアとソフトウェアを逐次ではなく並行して開発することで、開発期間全体を短縮します。
開発リスクの低減
エミュレーションや仮想モデルを活用して統合上の問題を早期に表面化させることで、修正コストが低い段階での発見が可能になります。
| 業種 | 共設計が重要となる領域 | 例 |
| 自動車 | 安全性と電力の制約が求められるADASおよび自動運転SoC | ソフトウェアスタックと共設計された認識・推論用シリコン |
| ロボティクス | 認識・制御のためのオンデバイス推論 | ロボット工学のワークロードに最適化された効率的なアクセラレータ |
| エッジAIデバイス | 厳しい電力制限下での常時稼働認識機能 | ローカルでマルチモーダルモデルを実行するスマートカメラおよびセンサー |
| ドローンおよびUAV | 軽量かつ低電力の自律動作 | 効率性を考慮して共設計された飛行・航法用コンピュート |
システムの複雑性
ハードウェアとソフトウェアの共同設計は相互依存する決定事項を増加させるため、厳密なアーキテクチャとチーム間の密接な連携が求められます。
ツールとIPの統合
効率的なSoCには、アクセラレータ、インターフェイス、基盤、セキュリティに関する各IPの連携が不可欠であり、一貫したツールチェーンによる統合がその効果を高めます。
メモリ帯域幅
大規模AIモデルはメモリバウンドになりがちであり、電力バジェットを超過せずに十分な帯域幅を確保することが、共同設計における重要な課題となります。
ハードウェア・ソフトウェア検証の労力
シリコン試作前にハードウェアとソフトウェアの正常な連動を検証するには、エミュレーションおよび仮想モデルのインフラストラクチャと、代表的なテストワークロードを構築する労力が必要です。
ハードウェア・ソフトウェア協調設計とは、完全なシステムがパフォーマンス、電力、レイテンシの目標を確実に達成できるよう、チップとそこで稼働するソフトウェアを並行して設計する手法です。ハードウェアとソフトウェアを個別に開発し、設計プロセスの後段で統合する逐次的なフローに代わるものです。
物理AIシステムは、厳格な電力、レイテンシ、熱的制約の下で、デバイス上で負荷の高いAIワークロードを実行する必要があります。シリコンとソフトウェアを共同で設計することで、エンジニアはこれらの制約を満たすように両者を密に最適化できます。これは、逐次的なフローではめったに達成できないアプローチです。
ニューラル・プロセッシング・ユニット(NPU)は、汎用プロセッサよりもはるかに効率的にAI推論を実行する専用シリコンです。AI SoCにおいては、パーセプション(認識)および推論ワークロードを処理し、物理AIデバイスが電力バジェットの制約内でリアルタイムにセンサーデータを処理することを可能にします。
TOPS/W(ワットあたりのテラ演算数)は、チップが消費する1ワットの電力あたりに何テラ演算を実行できるかを測定する指標です。独自の電源を搭載するモバイル物理AIシステムでは、バッテリー駆動時間と熱挙動の両方を決定づけるため、生のスループットよりもこの電力効率の指標が重要となります。
エミュレーションを活用することで、チームはチップの製造前に、ハードウェア設計に対して実際のソフトウェアワークロードを実行検証できます。この早期の統合により、修正コストが低い段階でパフォーマンスや電力の問題が表面化し、テープアウト時にハードウェアとソフトウェアが正しく連携するという確信が得られます。
従来の設計では、ハードウェアが最初に完成し、シリコンが入手可能になってからソフトウェアが統合されるため、統合時の課題が後工程で表面化します。協調設計では、ハードウェアとソフトウェアが並行して開発され、早期に検証が統合されるため、再設計(リスピン)のリスクが軽減され、厳格な効率目標の達成につながります。
一般的なカテゴリには、アーキテクチャ探索(Synopsys Platform Architect、RTL Architect)、RTLおよび電力最適化(SpyGlass Power、PrimePower、Fusion Compiler)、パワーインテグリティサインオフ(RedHawk-SC)、AIを活用した設計空間最適化(DSO.ai)、3D-IC設計(3DIC Compiler)、ならびにハードウェア・ソフトウェア検証用のエミュレーション(ZeBu)が含まれます。
いいえ。協調設計により、統合および検証作業の多くはシリコン製造前のバーチャルモデルやエミュレーションに移行しますが、特に安全性がクリティカルな製品においては、最終的な検証に物理ハードウェアが依然として必要です。
効率的な物理AI SoCの構築は、設計フロー全体を通じたシリコンとソフトウェアの整合性に左右されます。AI SoC向けシノプシスIPおよび設計ソリューションの詳細をご覧ください。
参考資料