Amazon Web Services ブログ

AWS で Siemens EDA Calibre を実行しチップ設計検証プロセスを加速

(この記事は、 Accelerate chip-design verification process by running Siemens EDA Calibre on AWS を翻訳したものです。)

Amazon はチップを設計するファブレス半導体企業でもあります。毎年複数のテープアウトを完了し、Kindle、FireTV、Echo などの製品を生み出しています。一方、Amazon Web Services (AWS) は Annapurna Labs の社内チームを通じてデータセンター運用向けの半導体設計を行っています。ARM ベースの CPU である AWS Graviton や、高性能 AI/ML 処理に使用される AWS Trainium および AWS Inferentia チップは、Annapurna を通じて発表された主力製品ラインの一部です 。

AWS と Siemens EDA は 2023 年 7 月に戦略的協業契約 (SCA) を締結し、EDA ワークロードの AWS への移行を加速させています。この提携を通じて両社は「Cloud Flight Plans」と呼ばれる一連のベストプラクティス、Infrastructure as Code スクリプト、本ドキュメントを含む Best-Known Method (BKM) を開発し、半導体業界のお客様が AWS 上で EDA ワークロードを迅速かつ効率的に展開・実行できるよう支援しています。

Siemens EDA は AWS と協力し Annapurna の製品の設計データに対し、nmDRC や nmLVS を含む複数の Calibre フローをベンチマーク検証しました。本稿ではこれらの検証結果、結論、推奨事項、およびクラウド上で Calibre を使い最良の結果を得るための一般的な BKM セットを紹介します。CAD、DevOps、IT エンジニアにとって、これらの調査は価値あるものとなるでしょう。

“Annapurna との proof-of-concept (POC) を通じて、AWS 上で Calibre を実行することで大幅なパフォーマンス向上を実現できることを検証しました。この POC から得られた結果と、AWS 上で Calibre フローを迅速に展開・実行するための実証済みの手法は Siemens Cloud Flight Plans を介してお客様にご覧いただけます。事実上無尽蔵な AWS の処理能力により、お客様は最適なコア数へシームレスに拡張でき、データセンター内のコンピューティングインフラの制約を克服できます。これにより、お客様はより高品質な設計のための分析を増やし、テープアウトスケジュールのリスクを軽減して、製品をより早く市場に投入することができます。” – Michael White, Senior Director Siemens EDA.

環境のセットアップ

Reference Environment Toolkit は Virtual Private Cloud (VPC) を用いた AWS 上のセキュアチャンバー内で Calibre を管理および起動するために使用されます。AWS ParallelCluster を使用し、Amazon Elastic Compute Cloud (EC2) インスタンス、Amazon Elastic File System (EFS) 、FSx ファイルシステム、およびチャンバーで使用されるその他の AWS サービスをデプロイします。チャンバーが完全にデプロイされたのち、ユーザーはヘッドノードで入力するキューマネージャーコマンドを通じてジョブを送信します。SLURM スケジューラーがジョブの処理要件を満たすためにコンピュートノードのスケールアップとスケールダウンを管理します。

以下の表は Annapurna のフルチップ設計の仕様を示しています:

以下の表は本稿の検証で使用された EC2 インスタンスの仕様を示しています:

ベンチマーク結果

Calibre nmDRC / 5nm 設計

図 A:リモートコア数の増加に伴う Calibre nmDRC 実行時間

図 B:リモートコア数の増加に伴う Calibre nmDRC のピークリモートメモリ使用量

図 A と図 B は N5 設計における Calibre nmDRC テスト結果を示しています。X 軸にはリモートコア数の増加に伴う実行時間 (図 A) と GB 単位のリモートメモリーの最大使用量 (図 B) を示しています。すべての実行で MTflex (Calibre の分散処理モードの一つ) を使用しました。これらの実行では、プライマリとリモートノードに同じマシンタイプ (r6i.32xlarge インスタンス) を使用する均質なクラスターを使用しました。

X 軸はリモートコア数を示し、実行を重ねるごとに 2 倍ずつ増加させています。各実行では一貫して 64 コアのプライマリマシンを使用しました。

青色の線はベースラインを示し、Calibre 2021.1 (本番環境で Annapurna がこれらの設計に使用したバージョン) と TSMC のストックルールを使用しました。

緑色の線は Calibre プロダクトエンジニアが最適化したルールを使用した、より新しいバージョンの Calibre (2023.1) を示しています。これらの実行では OASIS ファイルからデータを読み込む代わりに、再利用可能な階層データベース (RHDB) から設計データを復元しました。これにより、実行ごとに約 20 分の時間が節約されました。点線はこれら 2 つの実行セット間における所用時間の削減割合を示しています。

オレンジ色の線は Calibre nmDRC Recon の結果を示し、ファウンドリルールのサブセットを自動的に選択して実行します。Siemens EDA は完全な Calibre の実行を行う前に、初期のラフな設計に対して Calibre nmDRC Recon を実行することを常に推奨しています。これにより、設計の大きなエラーを迅速に発見し、短いサイクルタイムで排除することができます。

ピークメモリのグラフは物理メモリに十分な余裕があったことを示しています。各リモートノードは 1TB の RAM を搭載しています。

Calibre nmLVS / 5nm 設計

図 C:マルチプロセッサコア数の増加に伴う Calibre nmLVS 実行時間

図 D:リモートコア数の増加に伴う Calibre nmLVS のピークメモリ使用量

これらの Calibre nmLVS の実行は -turbo オプション (マルチスレッド) を使用して単一の r6i.32xlarge マシン上で行われました。ホストマシンは 1TB のメモリを搭載していましたが、必要量をはるかに超えていたため、このジョブには c6i.32xlarge マシンで十分だったと考えられます。

これらは完全なルールセット (緑色の線) と Calibre nmLVS Recon (オレンジ色の線) の結果です。この結果は、テストに使用されたコア数全体にわたって良好なスケーラビリティを示しています。この場合の最適なオプショ ンは c6i.32xlarge ホスト (64 物理コア、256GB メモリ) で専用ジョブとして実行することです。

ベンチマークに基づくその他の調査結果と推奨事項

このセクションでは、Annapurna のベンチマークから得られた具体的な調査結果と、これらの観察に基づく推奨事項について説明します。

Calibre nmDRC Recon
Calibre nmDRC Recon は完全なルールセットを短時間と低費用で実行し、設計の初期段階で大きなエラーの迅速な発見に役立ちます。Calibre nmDRC の Recon 機能は、設計の初期段階で最も適用可能な設計ルールのサブセットを自動的に選択します。これにより問題を早期に発見でき、設計チームは迅速にデバッグし将来検証作業に必要な時間と検証の実行総数を減らすことができます。

一般的にメモリ容量が仮想マシンの選択を決定する
メモリは通常、クラウドで Calibre を実行するために必要なマシンの種類を決める重要な要素です。一般的に、プライマリマシンはリモートマシンよりも多くのメモリを使用します。メモリの推奨事項はテクノロジーノードによって変化します。より高度なテクノロジーノードではより多くのメモリが必要です。Siemens EDA は 7nm や 5nm において、Calibre nmDRC 実行にコアあたり 16 GB のメモリ量を推奨しています。r6i インスタンスはこの点で完璧です。r6i.32xlarge インスタンスには 64 物理コアと 1TB のメモリ (64 x 16 = 1024) を搭載しています。Annapurna の設計に対するすべての DRC テストでは、推奨メモリ量の半分未満でピークに達しました。

最新バージョンの Calibre を使用する
本稿で説明したベンチマークの実行に際しては、利用可能な最新リリースである Calibre バージョン 2023.4 を使用しました。以前のリリースと比較し、新バージョンでは全体的なパフォーマンスと多数のコアに対するスケーラビリティを向上させています。

再利用可能な階層データベース
Calibre nmDRC 実行の最初のステップでは、OASIS または GDS 設計ファイルを読み込み、階層データベース (HDB) を作成します。この HDB は Calibre nmDRC ソフトウェアが特定のルールデッキと設計を効率的に実行するために不可欠です。Calibre での検証では、再利用可能な階層データベース (RHDB) が導入されており、これをディスクに保存して後続の実行の基礎として使用できます。RHDB を使用する利点は OASIS または GDS ファイルと比較してファイルの読み込み時間が大幅に短縮されることです。RHDB の構築には少ない CPU コア数が必要ですが、一般的に Calibre フローの中で最もメモリを集中的に使用するステップです。

ルールデッキを分割する
Siemens EDA はファウンドリパートナーと緊密に協力して Calibre ルールデッキのバランスを取り、多数のコアにわたって適切にスケールし、Calibre の顧客が 1 日に複数の設計を完了できるようにしています。ただし、 3nm 以降では一部のルールチェックは他のルールよりも多くのコア数にスケールします。このため、ファウンドリは DRC 用の分割ルールデッキを提供し始めています。例えば、ファウンドリは DRC チェックの完全なセットを、電圧依存ルール用のファイル、静電気放電 (ESD) ルールとラッチアップチェック用の別のファイル、および残りのコアな DRC チェック用の三種のファイルに分割することがあります。これらの各ルールセットは他のものと独立して並行して実行できます。

ジョブに適したコア数を選択する
ベンチマークは、500 から 1000 のリモート物理コア間でのパフォーマンススケーリング曲線の最適なポイントを示しています。このポイントはパフォーマンス (スループット) とコンピューティングコストの間の最良のバランスを表しています。この数値は設計データとプロセスに依存します。実際には、Calibre の顧客はフルチップの先端ノード DRC 検証に少なくとも 500 のリモートコアを使用することが予想されます。

結論

クラウドは EDA ワークロード向けに調整されたマシンへの無制限のアクセスを提供します。これにより、高度な EDA ツールのユーザーは望み通りに作業し、いつでもジョブを起動し、仕事を完了するために必要なリソースを自由に使用できます。本番やテープアウトの状況でも同様です。リソースの制約がないため、例えば、DRC 実行が終了してリソースを解放するのを待ってから LVS 実行を開始する必要はありません。複数のジョブを複数のフローで並行して実行することは、設計サイクルを加速し、直列に実行する場合と同じコストであるために有利です。

クラウドコンピューティングは初期コンセプト (IC) 設計から NPI (新製品導入) までの期間を短縮します。コンピューティング需要が増加する先端テクノロジーノードにおいては、より効果的です。ファブレス半導体企業として Annapurna Labs は高度な SoC を構築するための拡張性と弾力性のあるコンピューティングパワーを AWS クラウドに完全に依存しています。“IC 物理検証プロセスで Siemens EDA Calibre ツールを使用することで、特にバースト時に、AWS の分散クラウドインフラストラクチャとサービスを活用して DRC を効率的に実行する能力が劇的に向上しました” と Annapurna Labs のエンジニアリング担当副社長 Shahar Even Zur 氏は述べています。

詳細については、AWS の営業担当者にお問い合わせいただくか、Siemens Calibre nmDRC および AWS EDA ワークロードをご覧ください。

Siemens EDA について

Siemens EDA は Siemens Digital Industries Software の一部門であり、EDA のソフトウェアとハードウェアにおけるテクノロジーリーダーです。Siemens EDA は設計とシステムレベルのスケーリングの課題に対応する実績のあるソフトウェアツールと業界をリードするテクノロジーを提供し、次のテクノロジーノードへの移行時により予測可能な結果をもたらします。

翻訳はソリューションアーキテクトの酒井 賢が担当しました。原文はこちら です。