メンター・グラフィックスは、EDAのテクノロジ・リーダーとして様々な最先端技術情報を定期的に発信しています。こちらのTechnology Reportsでは、その最先端の製品情報や技術情報を分野別に取り上げ、電子製品開発の各工程におけるソリューションとしてご紹介しています。
2010年
シリコンテストおよび歩留まり解析(DFT)
- 診断ドリブン歩留まり解析で原因をより早期に特定
-
65nm以下の先端テクノロジ・ノードで開発されているICは、わずかな製造ばらつきがICの性能低下や故障を招く原因になります。さらに、設計に固有なフィーチャーに影響される新しい欠陥メカニズムが生まれています。製造プロセスと、ばらつきに対してより敏感になったレイアウト・フィーチャー間の複雑な関係により、システマティックな不良に起因する歩留まり低下問題が顕在化しています。歩留まり解析手法を強化しなければ、量産までの期間は長期化し、最終歩留まりも満足のいくものとならず、製品品質にも影響が出る可能性があり、結果として、メーカーの収益性が脅かされます。診断ドリブンの歩留まり解析とは、出荷テスト結果、ボリューム診断の結果を統計的に解析して、物理解析を行う以前に歩留まり低下の根本原因を特定する手法です。この手法により、原因特定までのサイクルを、従来比較で75-90%短縮することができます。本稿では、Tessent™ DiagnosisならびにTessent YieldInsight™を使った診断ドリブンの歩留まり解析フローの導入メリットを紹介します。
65nm以下の先端テクノロジ・ノードで開発されているICは、わずかな製造ばらつきがICの性能低下や故障を招く原因になります。さらに、設計に固有なフィーチャーに影響される新しい欠陥メカニズムが生まれています。製造プロセスと、ばらつきに対してより敏感になったレイアウト・フィーチャー間の複雑な関係により、システマティックな不良に起因する歩留まり低下問題が顕在化しています。歩留まり解析手法を強化しなければ、量産までの期間は長期化し、最終歩留まりも満足のいくものとならず、製品品質にも影響が出る可能性があり、結果として、メーカーの収益性が脅かされます。診断ドリブンの歩留まり解析とは、出荷テスト結果、ボリューム診断の結果を統計的に解析して、物理解析を行う以前に歩留まり低下の根本原因を特定する手法です。この手法により、原因特定までのサイクルを、従来比較で75-90%短縮することができます。本稿では、Tessent™ DiagnosisならびにTessent YieldInsight™を使った診断ドリブンの歩留まり解析フローの導入メリットを紹介します。
2009年
組込みソフトウェア
- Nucleus OSを使った医療機器の設計
-
エレクトロニクス機器の設計と開発は決して単純な作業ではありません。特に医療向け機器には特有の複雑さがあります。エレクトロニクス機器開発のコストが増大を続ける中、開発チームはコスト問題に取り組むためCOTS(Commercial Off The Shelf)ソフトウェアの利用を進めつつあります。問題は、コンシューマ向けエレクトロニクス機器や携帯電話などの分野で使用されているCOTSソフトウェアが、安全性が重要となる機器の開発にも使用できるかということです。本稿ではこれらの共通点について議論し、医療機器の開発にNucleus® OSアプローチを使用することの利点について紹介します。
IC設計
- チップ・アセンブリの課題に取り組む:物理設計後期のボトルネックを解消
-
今日の数百万ゲート規模のSoCは、その規模と複雑性がますます拡大し、チップをより小さく分割した階層チップ設計手法が必須となってきています。大規模 SoCにおいて階層手法が必要となるのは、この手法が設計自動化ツールのキャパシティを拡張、ツールの処理時間を短縮し、最終段階での設計変更を最小限に抑えることができるためです。しかし階層手法に則ったフローを使用しても、現在のフィジカル・インプリメンテーション・ツールは、チップの仕様条件をアグレッシブなスケジュール内に達成する上で様々な問題に直面しています。本稿では、チップ・アセンブリの課題について確認し、すべての問題を包括的に解決できるインプリメンテーション・システムの条件について解説します。
- Olympus-SoCを使った低消費電力物理設計
-
消費電力の削減は、45/32nmテクノロジ・ノードにおいて鍵となる設計課題となりました。パッケージ・コストを削減し、バッテリ寿命を延ばす必要性から、多くの設計において消費電力の最適化はタイミング同様に重要です。しかしながら、低消費電力チップ設計の複雑さは性能とTime-to-Market にマイナスの影響を与えかねません。設計者はマクロレベルの機能的複雑性の問題(複数の動作モード)と、マイクロレベルのプロセスおよび製造上の問題(複数の設計コーナー)の両方に対応しなければなりませんが、これらの間で消費電力、タイミング、シグナル・インテグリティ(SI)、製造可能性、面積収束の条件は競合する可能性があります。
本稿では、現在低消費電力IC設計に使用されているテクニックについて説明し、低消費電力設計の主要な課題について解説したのち、Olympus- SoC配置配線システムが物理設計フローのすべてのステップを通じて最適な低消費電力ソリューションをどのように実現しているかについて紹介します。
エレクトロニクス機器の設計と開発は決して単純な作業ではありません。特に医療向け機器には特有の複雑さがあります。エレクトロニクス機器開発のコストが増大を続ける中、開発チームはコスト問題に取り組むためCOTS(Commercial Off The Shelf)ソフトウェアの利用を進めつつあります。問題は、コンシューマ向けエレクトロニクス機器や携帯電話などの分野で使用されているCOTSソフトウェアが、安全性が重要となる機器の開発にも使用できるかということです。本稿ではこれらの共通点について議論し、医療機器の開発にNucleus® OSアプローチを使用することの利点について紹介します。
今日の数百万ゲート規模のSoCは、その規模と複雑性がますます拡大し、チップをより小さく分割した階層チップ設計手法が必須となってきています。大規模 SoCにおいて階層手法が必要となるのは、この手法が設計自動化ツールのキャパシティを拡張、ツールの処理時間を短縮し、最終段階での設計変更を最小限に抑えることができるためです。しかし階層手法に則ったフローを使用しても、現在のフィジカル・インプリメンテーション・ツールは、チップの仕様条件をアグレッシブなスケジュール内に達成する上で様々な問題に直面しています。本稿では、チップ・アセンブリの課題について確認し、すべての問題を包括的に解決できるインプリメンテーション・システムの条件について解説します。
消費電力の削減は、45/32nmテクノロジ・ノードにおいて鍵となる設計課題となりました。パッケージ・コストを削減し、バッテリ寿命を延ばす必要性から、多くの設計において消費電力の最適化はタイミング同様に重要です。しかしながら、低消費電力チップ設計の複雑さは性能とTime-to-Market にマイナスの影響を与えかねません。設計者はマクロレベルの機能的複雑性の問題(複数の動作モード)と、マイクロレベルのプロセスおよび製造上の問題(複数の設計コーナー)の両方に対応しなければなりませんが、これらの間で消費電力、タイミング、シグナル・インテグリティ(SI)、製造可能性、面積収束の条件は競合する可能性があります。
本稿では、現在低消費電力IC設計に使用されているテクニックについて説明し、低消費電力設計の主要な課題について解説したのち、Olympus- SoC配置配線システムが物理設計フローのすべてのステップを通じて最適な低消費電力ソリューションをどのように実現しているかについて紹介します。
2008年
IC設計
機能検証
- OVM: オープンで相互運用可能な検証メソドロジ
-
メンター・グラフィックスとケイデンスが共同で開発したプロジェクトOVM(Open Verification Methodology)は、SystemVerilogのオープンな検証手法です。OVMが、通信メカニズムやユーティリティなどのクラスライブラリを提供するため、ユーザはSystemVerilogを使って検証の問題に専念することができます。
OVMには、ユーザがコード化した検証すべきコンポーネントを再利用できるようにするため、さまざまなコンポーネントが互いに持っている関係をアーキテクチャに織り込んでいます。
ここで重要なことは、コンポーネントのインタフェースをきちんと定義しておくことです。インタフェースがそろっていれば、テスト環境を簡単に作成でき、テスト環境の一部に変化が起きてもコンポーネントを分離してモジュールにすることも可能になります。
OVM WorldのWebサイトは2008年1月に公開されましたが、2008年10月現在5500人以上が登録しオンライン・フォーラムにおいて540ものスレッドに参加しています。
詳細は、www.ovmworld.orgを参照ください。
- インテリジェント・テストベンチの自動化: 約束から現実解へ
-
機能検証ツール「Questa®」と、インテリジェント・テストベンチ自動化ツール「inFact™」を組み合わせると、少人数の設計チームでも、従来の制約付きランダム・テスト手法よりも短時間かつ少ないリソースで、SoC設計をフルに検証できるようになります。
この論文で紹介するI2Cコントローラ回路のテストは、APBバス・インタフェース、プロセッサへのIRQインタフェース、DMAコントローラ・インタフェース、I2Cバス・インタフェースの4つのインタフェースを含んでいます。
従来の制約付きランダム・テストでは66万回のテストが必要であったのに対して、inFactでは6万回のテストで済みました。inFactでは、ルール・グラフを作成し、その上を繰り返し移動し、固有のケースがすべて試されるまでテスト・プログラムが生成されるので、カバレッジ到達時間が短くなります。複数のアルゴリズムを利用して、インテリジェントなテスト・シーケンスを生成してシミュレーションをしています。もちろんランダム・テストもこのアルゴリズムの1つです。
- アサーションは足りていますか?
-
機能的な意図や設計実装の正しさについて、定義を形式的に入力した「アサーション」が検証をより確実にする手段として検証プロセスに取り入れられるようになってきました。
設計検証言語SystemVerilogは、検証の一部としてアサーションをカバーしています。現在、必要なアサーションの欠落を検出する方法としてアサーション密度というメトリクス(指標)が提案されています。これまでは、コード数に対するアサーション数を測定するAPLOC(Assertions PerLines Of Code)が用いられていましたが、APLOC数は現実を正しく表すとは言えません。DUTの論理構造に基づくアサーション密度の測定手法の方が、より現実的と言えます。
ここでは、レジスタが論理回路の状態を保持する要素として、レジスタからレジスタまで、あるいはレジスタからアサーションまでの距離を用いた最小レジスタ距離をMSD(Minimum Sequential Distance)として、アサーション密度の測定基準とすることを提案しています。このMSDが特定の数値を超えた場合、アサーション密度が欠落していると判断するものです。
- マルチコア・デザインにおける同期障害のデバッグ
-
マルチコア・プロセッサ・システムでは、互いに独立しているコア間の同期に起因する問題が多くなります。そこで、個々の問題を切り分ける能力が解決のキーポイントとなってきます。共有メモリが壊れたり、スレッドの順番が崩れメッセージが届かないといった問題が起きたり、同時に走っているスレッドがお互いに見合っているうちにロックしないままデッドロック状態に陥ってしまったり---というようなことがしばしば発生します。
メンター・グラフィックスは統合マルチコア・コード・デバッガQuesta Codelinkを提供しています。これは、システム内の各コアに使うソース、変数、メモリなどを表示でき、システム内で何が発生しているかを的確に知ることができます。Questaを使って、こういった状態を表示することでシミュレーションの再生に、それまで十数時間かかっていた処理を数秒で済ませることが可能になりました。
さらに、インタラクティブにデバッグできるうえ、RTLプロセッサ・モデル上で実行するコードもデバッグできます。現時点ではARMコアやMIPSコアを中心にサポートしています。
- メカトロニクス・アプリケーションにおけるFPGAの設計と検証
-
オートモーティブにおけるFPGAの適用が注目を浴びています。FPGAを自動車に応用するに当たり、まず設計手法の確立が最大の問題となります。
この分野ではフィードバック制御が重要視され、センサー、アナログ/デジタル回路、アクチュエーターといった、一連の制御ループをFPGAを使って設計することになります。特に、デジタルではない部分の設計が問題です。時間連続性、微分方程式、台数方程式、伝達関数、物理学、アナログ回路モデルSPICE、統計分布などをどう表現して設計に取り込めばよいのでしょうか。
ここでメンター・グラフィックスが提案するのは、VHDLを拡張した「VHDL-AMS言語」です。この言語を用いれば、どのようなモデルでも非線形微分方程式や台数方程式で表現することが可能となります。VHDL- AMSは、FPGA設計者にはまだ馴染みのない言語ですが、デジタル以外のコンテキストにおける条件定義や、その検証には強力なツールとなるでしょう。
- Ethernet検証IP: AVMからOVMへの簡単な移行事例
-
オープンソースの検証メソドロジの潮流を作ったAVM(Advanced Verification Methodology)は、新たな設計検証言語、SystemVerilogを用いて発展してきました。そして今、OVM(Open Verification Methodology)へと、その発展を続けています。AVMからOVMへは、幸いにも既存コードを変更することなく移行できます。
検証 IPが単独で充分に検証されたものだとしても、ユーザ環境であるチップで充分に使えるとは限りません。OVM手法は、検証IPがブロック単位からチップレベルへの再利用、そしてシーケンスのレイヤ化機能を定義しています。これによりAVMで開発された検証IPは、OVM互換の検証IPとして容易に移行できるのです。
米Sibridge社はEthernet検証IPの移行において、AVMからOVMへの互換性レイヤを用い、OVM互換とすることに成功しました。この論文では、容易な方法で検証IPをスケーラブルに移行できることをSibridge社の検証IPを例に解説しています。
メンター・グラフィックスとケイデンスが共同で開発したプロジェクトOVM(Open Verification Methodology)は、SystemVerilogのオープンな検証手法です。OVMが、通信メカニズムやユーティリティなどのクラスライブラリを提供するため、ユーザはSystemVerilogを使って検証の問題に専念することができます。
OVMには、ユーザがコード化した検証すべきコンポーネントを再利用できるようにするため、さまざまなコンポーネントが互いに持っている関係をアーキテクチャに織り込んでいます。
ここで重要なことは、コンポーネントのインタフェースをきちんと定義しておくことです。インタフェースがそろっていれば、テスト環境を簡単に作成でき、テスト環境の一部に変化が起きてもコンポーネントを分離してモジュールにすることも可能になります。
OVM WorldのWebサイトは2008年1月に公開されましたが、2008年10月現在5500人以上が登録しオンライン・フォーラムにおいて540ものスレッドに参加しています。
詳細は、www.ovmworld.orgを参照ください。
機能検証ツール「Questa®」と、インテリジェント・テストベンチ自動化ツール「inFact™」を組み合わせると、少人数の設計チームでも、従来の制約付きランダム・テスト手法よりも短時間かつ少ないリソースで、SoC設計をフルに検証できるようになります。
この論文で紹介するI2Cコントローラ回路のテストは、APBバス・インタフェース、プロセッサへのIRQインタフェース、DMAコントローラ・インタフェース、I2Cバス・インタフェースの4つのインタフェースを含んでいます。
従来の制約付きランダム・テストでは66万回のテストが必要であったのに対して、inFactでは6万回のテストで済みました。inFactでは、ルール・グラフを作成し、その上を繰り返し移動し、固有のケースがすべて試されるまでテスト・プログラムが生成されるので、カバレッジ到達時間が短くなります。複数のアルゴリズムを利用して、インテリジェントなテスト・シーケンスを生成してシミュレーションをしています。もちろんランダム・テストもこのアルゴリズムの1つです。
機能的な意図や設計実装の正しさについて、定義を形式的に入力した「アサーション」が検証をより確実にする手段として検証プロセスに取り入れられるようになってきました。
設計検証言語SystemVerilogは、検証の一部としてアサーションをカバーしています。現在、必要なアサーションの欠落を検出する方法としてアサーション密度というメトリクス(指標)が提案されています。これまでは、コード数に対するアサーション数を測定するAPLOC(Assertions PerLines Of Code)が用いられていましたが、APLOC数は現実を正しく表すとは言えません。DUTの論理構造に基づくアサーション密度の測定手法の方が、より現実的と言えます。
ここでは、レジスタが論理回路の状態を保持する要素として、レジスタからレジスタまで、あるいはレジスタからアサーションまでの距離を用いた最小レジスタ距離をMSD(Minimum Sequential Distance)として、アサーション密度の測定基準とすることを提案しています。このMSDが特定の数値を超えた場合、アサーション密度が欠落していると判断するものです。
マルチコア・プロセッサ・システムでは、互いに独立しているコア間の同期に起因する問題が多くなります。そこで、個々の問題を切り分ける能力が解決のキーポイントとなってきます。共有メモリが壊れたり、スレッドの順番が崩れメッセージが届かないといった問題が起きたり、同時に走っているスレッドがお互いに見合っているうちにロックしないままデッドロック状態に陥ってしまったり---というようなことがしばしば発生します。
メンター・グラフィックスは統合マルチコア・コード・デバッガQuesta Codelinkを提供しています。これは、システム内の各コアに使うソース、変数、メモリなどを表示でき、システム内で何が発生しているかを的確に知ることができます。Questaを使って、こういった状態を表示することでシミュレーションの再生に、それまで十数時間かかっていた処理を数秒で済ませることが可能になりました。
さらに、インタラクティブにデバッグできるうえ、RTLプロセッサ・モデル上で実行するコードもデバッグできます。現時点ではARMコアやMIPSコアを中心にサポートしています。
オートモーティブにおけるFPGAの適用が注目を浴びています。FPGAを自動車に応用するに当たり、まず設計手法の確立が最大の問題となります。
この分野ではフィードバック制御が重要視され、センサー、アナログ/デジタル回路、アクチュエーターといった、一連の制御ループをFPGAを使って設計することになります。特に、デジタルではない部分の設計が問題です。時間連続性、微分方程式、台数方程式、伝達関数、物理学、アナログ回路モデルSPICE、統計分布などをどう表現して設計に取り込めばよいのでしょうか。
ここでメンター・グラフィックスが提案するのは、VHDLを拡張した「VHDL-AMS言語」です。この言語を用いれば、どのようなモデルでも非線形微分方程式や台数方程式で表現することが可能となります。VHDL- AMSは、FPGA設計者にはまだ馴染みのない言語ですが、デジタル以外のコンテキストにおける条件定義や、その検証には強力なツールとなるでしょう。
オープンソースの検証メソドロジの潮流を作ったAVM(Advanced Verification Methodology)は、新たな設計検証言語、SystemVerilogを用いて発展してきました。そして今、OVM(Open Verification Methodology)へと、その発展を続けています。AVMからOVMへは、幸いにも既存コードを変更することなく移行できます。
検証 IPが単独で充分に検証されたものだとしても、ユーザ環境であるチップで充分に使えるとは限りません。OVM手法は、検証IPがブロック単位からチップレベルへの再利用、そしてシーケンスのレイヤ化機能を定義しています。これによりAVMで開発された検証IPは、OVM互換の検証IPとして容易に移行できるのです。
米Sibridge社はEthernet検証IPの移行において、AVMからOVMへの互換性レイヤを用い、OVM互換とすることに成功しました。この論文では、容易な方法で検証IPをスケーラブルに移行できることをSibridge社の検証IPを例に解説しています。
