レイアウト設計期間と工数を大きく削減! Hierarchical Metal Fill Database Flowのご紹介
~タイミング考慮メタルフィル設計フローの効果とは~
メタルフィルの必要性とその影響
レイアウト設計においてメタル層の粗密により生じる配線膜厚のばらつきは製造工程で大きな問題になります。そのためパターン占有率を均一化する平坦化アプローチとしてメタルフィルは不可欠な技術となってます。ケイデンスではCadence® CMP Predictor (CCP) によるCMPシミュレーションの技術を提供してます。図1にあるように、メタルフィルなしの場合の膜厚は凸凹していますが、メタルフィル追加により、膜厚ばらつきが抑えられて平坦化されています。一方、配線膜厚回路特性を考えた場合、配線近傍にメタルフィルが置かれるため、寄生容量が増加し、タイミング悪化の問題が生じます。タイミングは16nmノードでは35%悪化、10nmノードでは235%悪化する事例があり、7nmや5nmではさらに悪化します。タイミングへの影響を最小にしつつ、パターン占有率を均一化するため、先端ノードではプロセスは複雑化し、それにともないメタルフィル生成ルールもますます複雑化しています。
図1:メタルフィルの必要性とその影響
従来設計フローにおける課題
物理設計でメタルフィルを考慮せずにタイミング最適化を行い、その後、配置配線ツールの外部でサインオフのメタルフィルを挿入するフローが従来フロー (図2参照) になります。メタルフィル挿入により、タイミングが悪化するためRC抽出でのスケール・ファクターを適用したとしても、相関性をとるのは困難でタイミングのクローズには多くのイタレーションが必要となります。また先端テクノロジーノードになるにつれ、メタルフィルの影響は大きくなり、メタルフィル生成時間とRC抽出時間も増大するため、設計全体のTAT改善にはイタレーション回数削減だけでなく、1回のイタレーションTAT短縮も課題となります。
図2:従来設計フローにおける課題
タイミング考慮メタルフィル設計フロー
ケイデンスは、Innovus (Innovus™ Implementation System) をプラットフォームとしたメタルフィルの影響を考慮した物理設計環境を提供しております。フローはInnovus上でIn-Designサインオフ・メタルフィル考慮によるトータルデザインでのTAT削減を目的としています。
このフローにより1回のイタレーションTAT短縮だけでなく、イタレーション回数自体を削減するため、トータル設計TATを大幅に短縮することが可能になります。本フローは4つの機能、 (1) Innovus上でQuantus™ IVMF (ヴァーチャルメタルフィル)、(2) Pegasus (Cadence® Pegasus™ Verification System) サインオフ・メタルフィル生成、(3) Pegasusインクリメンタル・メタルフィル/QuantusインクリメンタルRC抽出、(4) Pegasusクリティカルネット周辺のメタルフィル削除機能、より構成されています。さらに新しく組み込まれたHierarchical Metal Fill Databaseにより、フィル生成後のデータを簡単に、効率良くハンドリングすることが可能になりました。それぞれ機能の詳細についてご紹介します。
図3:タイミング考慮メタルフィル設計フロー
(1)Quantus IVMF (ヴァーチャルメタルフィル)
実メタルフィルのパターンを生成してRC抽出する場合は、メタルフィル生成とメタルフィル込みでのRC抽出の両方が必要なため、メタルフィルなしの実行時間と比較して約3倍の時間を要します。QuantusのIVMF (ヴァーチャルメタルフィル) 機能 (図4 参照) では、仮想的なメタルフィルを設定してRC抽出することで、これらの時間を削減します。仮想的なメタルフィルのため精度が懸念されますが、図4の右プロットに示すように、サインオフ・メタルフィルとヴァーチャルメタルフィルそれぞれでQuantus実行した容量の各ノードは45度線にのりばらつきも小さく良くコリレーションがとれています。また、タイミング解析表より、タイミング違反10個のヴァーチャルメタルフィル結果に対して、サインオフ・メタルフィルでは15個とこちらもコリレーションがよくとれています。実行時間例は、メタルフィルありのフローと比較して、TATは約3倍高速、メモリは半減しています。QuantusのIVMF機能をInnovusのタイミング最適化の初期ステップで適用することで、サインオフ・メタルフィル生成後のタイミングとのミスマッチを最小にすることができます。デザインフローの初期段階でIVMFを使用することで、タイミングクローズのためのイタレーション回数を減らすことができます。
図4:Quantus IVMF(ヴァーチャルメタルフィル)機能
(2)Innovus上でPegasusサインオフ・メタルフィル生成機能
ファンダリより認証されたPegasusメタルフィル生成ルールを使用し、add_metal_fill_signoff -fillコマンド実行することで、Innovus上にサインオフ・メタルフィルが生成されます(図5 参照)。生成されたメタルフィルのプロパティはFILLWIREやFILLWIREOPCなど適切に設定されますので、その後のフローで通常のメタルフィルのパターンと同様の取り扱いが可能です。また、メタルフィルと同様にメタルフィル間のダミーヴィアもサポートされています。Hierarchical Metal Fill Database Flow (図6 参照) では、この生成されたメタルフィルをmetal Fill DBとしてInnovusデータベースに保存し、Innovus, Quantus, Pegasusが必要なときにアクセスすることでメタルフィル考慮の処理を可能にします。以前、Innovusにダミーフィルを読み込むフローでは、読み込み時間がかかり、メモリ使用量も増加し、メタルフィルのデータがフラット化するため出力データのサイズ増大、という問題がありました。Hierarchical Metal Fill Databaseでは、メタルフィルデータ階層構造を維持したまま保存されるため、データサイズが約1/3に削減します(図7参照)。またInnovus, Quantus, Pegasusそれぞれが必要なときにアクセスするため、TATは約1.2~3倍改善し、メモリ使用量も平均20%削減されます。metal Fill DB 考慮でRC抽出することで、サインオフと同等のタイミング解析が可能です。そして、タイミング違反の場合はECO実行、再配線、更新したメタルフィルでのRC抽出とタイミング確認が必要になりますが、一連の処理がすべてInnovus上で可能であり、特にECO変更量が少ない場合には、次に紹介するインクリメンタル機能がTAT削減に有効になります。
図5:Innovus上でPegasusサインオフ・メタルフィル生成
図6:Hierarchical DB Flow
図7:評価結果
(3)インクリメンタル・メタルフィル生成/インクリメンタルRC抽出機能
先端ノード設計では、1つ1つのジョブ実行に時間を要するため、さまざまなレイアウト工程やツールにおいて変更箇所だけに必要な処理を行うインクリメンタルな処理が必要とされています。メタルフィルにおいても、インクリメンタル処理はTAT削減に重要になります。図6のHierarchical Metal Fill DatabaseのIncremental Dummy FillステップとIncremental Extractionステップがこれに相当します。初期のサインオフ・メタルフィル生成を行い、RC抽出とタイミング解析を行い、ECOを実行すると、ある配線パターンは消えて、ある配線パターンは新しく生成されます。新しく追加された配線パターンは初期メタルフィルとの間にDRC違反を起こしますので、削除が必要になります。また、配線の消えたパターンの空いた領域にはメタルフィルを追加することが必要になります。この一連の処理を実行するのがPegasusのインクリメンタル・メタルフィル生成機能add_metal_fill_signoff -incrementalコマンドになります(図8参照)。この機能は、3つの要望事項を満足しています。1つ目は、ファンダリにより提供されるメタルフィル生成ルールをそのまま適用できること。2つ目はデザイン変更量が少なくなる程、実行時間が削減されること。3つ目は精度です、インクリメンタル機能使用した場合としない場合でタイミング結果はほぼ一致すること。 サインオフ・メタルフィル生成時間と比較してインクリメンタル・メタルフィル機能を適用すると、デザイン変更量が多い場合は約50%に、変更量が少ない場合は約80%と、変更量が少なければ、より短時間で処理が可能になります。RC抽出でも同様に、ネット差異だけでなくメタルフィル差異についてもチェックしてインクリメンタル処理を行います。インクリメンタルRC抽出でも変更量が少なければ、より短時間でRC抽出され、大幅な処理時間の短縮が期待できます。これら2つのインクリメンタル機能により、イタレーション時のTATを大幅に削減します。
図8:Pegasusインクリメンタル・メタルフィル生成機能
(4)タイミング違反を修正するクリティカルネット周辺のメタルフィル削除機能
最後はクリティカルネット周辺のメタルフィル削除機能になります。これは、サインオフ・メタルフィルから少しだけメタルフィルを間引くことで、DRC密度ルールやCMP平坦化基準を満たしつつ、タイミング違反を修正する機能になります。以前はダミーフィルをInnovusに読み込み、trimMetalFillNearNetコマンドでクリティカルネット周辺のメタルフィルを削除していましたが、メモリ使用量が増加し、メタルフィルのデータがフラット化するため出力データサイズが増大してしまう、という問題がありました。Hierarchical Fill Database Flowではadd_metal_fill_signoff -trimコマンドに置き換わり、全ての問題が解決されています。図9に示すように、メタルフィル生成後に、タイミング解析でクリティカルネットをみつけて、その周辺のメタルフィルを削除します。クリティカルネットの定義はユーザーによる設定、もしくは、PegasusはInnovusやTempus™ Signoffのタイミングレポートより自動で設定されます。先端ノードでは、同層のメタルフィルだけでなく上下層のメタルフィルの寄生容量の影響が顕著であることがわかっていますので、上下層も削除するオプションが組み込まれています。図9の右上表には、メタルフィルなしでタイミング違反が1個だったものが、メタルフィル生成により26個に増加しましたが、クリティカルネット周辺のメタルフィルを削除することで6個まで削減しています。 “メタルフィル削除してタイミング改善しても、密度違反がでてしまえば元も子もない。”とよく質問されますが、本コマンドには、最小密度をキープする-union_densityオプションが組み込まれ、レイヤー毎にキープしたい最小密度を設定することも可能です。
図9:クリティカルネット周辺のメタルフィル削除機能
デザインフローのTAT削減
図10にメタルフィルの種類による1回のイタレーションのTAT比較を示します。ヴァーチャルメタルフィルの場合は、メタルフィルなしの場合よりも約1.2倍、サインオフ・メタルフィルでは約2.5倍TATがかかります。ECO規模にもよりますが、インクリメンタル・メタルフィル生成/インクリメンタルRC抽出機能を適用することで、メタルフィルなしでのTAT以下まで時間短縮されます。この1回のイタレーションTATを基に、実際に設計したときのトータルTATを見積もったグラフが図11です。従来設計フローでは、メタルフィルなしでのInnovusでの最適化が1回とサインオフでのイタレーション19回の計20回と仮定しています。タイミング考慮メタルフィル設計フローでは、ヴァーチャルメタルフィルでのInnovusの最適化が1回とサインオフでのメタルフィルが3回、インクリメンタルが16回の計20回と仮定しています。この例では、設計トータルTATが11日から4日に削減されます。またイタレーション数は計20回と両フローで同じと仮定していますが、タイミング考慮メタルフィル設計フローではタイミングクローズがスムーズに行えるため、イタレーション回数自体も削減できることが期待できます。是非、ケイデンスが提案するタイミング考慮メタルフィル設計フローをご適用いただき、設計期間の短縮にお役立てください。
図10:1回のイタレーションでのTAT削減率
図11:トータルフローでのTAT削減率
フィールドエンジニアリング&サービス本部
デジタル&サインオフ
市川 仁子
Archive
2023 Issues
2022 Issues
2021 Issues
2020 Issues