• Home
  • :
  • Community
  • :
  • Blogs
  • :
  • カスタムIC/ミックスシグナル
  • :
  • Spectre Tech Tips: Spectre Strobe機能の使用

カスタムIC/ミックスシグナル Blogs

  • Subscriptions

    Never miss a story from カスタムIC/ミックスシグナル. Subscribe for in-depth analysis and articles.

    Subscribe by email
  • More
  • Cancel
  • All Blog Categories
  • Breakfast Bytes
  • Cadence Academic Network
  • Cadence Support
  • Computational Fluid Dynamics
  • CFD(数値流体力学)
  • 中文技术专区
  • Custom IC Design
  • カスタムIC/ミックスシグナル
  • 定制IC芯片设计
  • Digital Implementation
  • Functional Verification
  • IC Packaging and SiP Design
  • In-Design Analysis
    • In-Design Analysis
    • Electromagnetic Analysis
    • Thermal Analysis
    • Signal and Power Integrity Analysis
    • RF/Microwave Design and Analysis
  • Life at Cadence
  • Mixed-Signal Design
  • PCB Design
  • PCB設計/ICパッケージ設計
  • PCB、IC封装:设计与仿真分析
  • PCB解析/ICパッケージ解析
  • RF Design
  • RF /マイクロ波設計
  • Signal and Power Integrity (PCB/IC Packaging)
  • Silicon Signoff
  • Solutions
  • Spotlight Taiwan
  • System Design and Verification
  • Tensilica and Design IP
  • The India Circuit
  • Whiteboard Wednesdays
  • Archive
    • Cadence on the Beat
    • Industry Insights
    • Logic Design
    • Low Power
    • The Design Chronicles
Custom IC Japan
Custom IC Japan
18 May 2022

Spectre Tech Tips: Spectre Strobe機能の使用

 Spectre®回路シミュレータをご利用のお客様で、SpectreのStrobe機能で対応可能な用途にmaxstep機能を使用しているケースが時々見受けられます。そこでこのブログでは、SpectreのStrobe機能の使い方を中心に説明します。

Virtuoso® Visualization and Analysis XL (ViVA XL)やOCEANなどのツールで波形のポストプロセスを行う目的でSpectreシミュレーションを実行し、このポストプロセスを等間隔で行う場合、Strobeは最適な機能です。

シミュレーションした設計の波形に対して、高速フーリエ変換(FFT)を行うことを想定してみましょう。Strobe機能がない場合、Spectreのタイムポイントとポストプロセスのタイムポイントが一致しません。そのため、ポストプロセスではタイムステップの補間が必要となり、FFT測定に誤差が生じます。FFTのタイムポイントに正確にタイムステップを追加し、実施するようにStrobeを設定すれば、測定精度を大幅に向上させることができます。

Spectre のStrobeオプションは、すべてtransientステートメントに含まれます。 skipstartとskipstopはStrobeウィンドウ、 strobedelayは skipstartからStrobe開始までの遅延時間、 strobeperiodはStrobeウィンドウ内のStrobeタイムポイントの周期を定義します。

tr1 tran skipstart=100n skipstop=200n strobedelay=10p strobeperiod=20p

Strobe機能は、transientステートメントにstrobeperiodオプションが定義されているときのみ有効です。さらに、strobeoutputというパラメータがあり、Strobeポイントのみを波形ファイルに書き込むのか(デフォルト値の strobeoutput=strobeonlyで指定)、通常のタイムステップとStrobeポイントの両方を書き込むのか(strobeoutput=all) を定義します。

上の図からわかるように、Strobeは後の FFT ポイントに正確にタイムポイントを強制します。Strobeとは逆に、maxstepはシミュレータのステップサイズを制限しますが、FFTのタイムポイントでタイムステップを強制することはありません。つまり、maxstepでも補間エラーは発生します。

また、Spectreのフーリエ素子を使用してFFTを行い、FFTのタイムポイントでタイムステップを強制することも可能です。しかし、FFT要素の機能は限られているため、ほとんどの場合、StrobeとViVA XL Calculatorの組み合わせがより良い解決策となります。

Virtuoso® ADE Explorerからトランジェントノイズシミュレーションを実行し、PSDを測定する場合、GUIではすでにPSD測定ポイントでStrobeを有効にする選択が提供されます。

定期的な測定は行わないが、ユーザ定義のタイムポイントを計算するようにシミュレーションを強制する必要がある場合、strobetimesオプションを使用することができます。

tr2 tran stop=20n strobetimes=[3.23n 5.01n 10.17n 15.98n 16.11n 19.01n]

さて、どのような場合に maxstepの使用が推奨されるのでしょうか?
一般的には、maxstepの設定はお勧めしません。時折、不適切なmaxstepの使用によるSpectreのパフォーマンスの問題について、お客様からご意見を頂くことがあります。

それでも、maxstepオプションが有効な場合がいくつかあります:

Spectre が非常に大きなタイムステップを選択しているために発振しない場合、maxstepを設定すると有利な場合があります。
ジッターやクロック周波数を測定する場合、LTE誤差を減らすためにmaxstepを使用することがあります。reltolの制約と比較して、大きなステップにのみ影響を与えるため、より良いパフォーマンスを提供します。
maxstepがトランジェント時間の一部にのみ必要な場合、動的に変更することで全体のシミュレーション性能を最適化することができます。次のステートメントは、シミュレーションの最初の20nsに20psのmaxstepを使用し、その後200nsに緩和するものです。

tr1 tran stop=200n param=maxstep param_vec=[0 20p 20n 200n]

Spectre X では、ネットリストでグローバルに設定された maxstepオプションを尊重するために-preset_override=maxstepオプションを使用する必要があることに留意してください。ただし、maxstepを動的に変更する場合は、-preset_overrideオプションは必要ありません。

結論として:

  • FFTやそれに類似した測定でシミュレーションを行う場合は、Strobe機能を使って補間誤差をなくしてください。maxstepはこの目的には使用しないでください。
  • 一般的に、精度をコントロールするためにmaxstepを使用することは避けてください。代わりに、Spectre Xの+presetの設定を使用してください。
  • まれに、上級ユーザがジッターやクロック周波数の測定中にSpectreの精度を微調整したり、発振を開始したり維持したりするためにmaxstepを使用することがあります。

関連リソース

  • Spectre Classic Simulator, Spectre Accelerated Parallel Simulator (APS), and Spectre Extensive Partitioning Simulator (XPS) User Guide
  • Introducing Spectre X (英語版/日本語版)
  • Getting the most out of Spectre X
  • How to use the Spectre fourier primitive?
  • SPECTRE 日本語資料

また、ケイデンスのサポートAEに連絡して、ガイドを受けることもできます。

ケイデンスの製品とサービスに関する更なる情報をお求めの場合は、www.cadence.comを訪れてください。

Stefan Wuensche
Translator: Naoto Hasegawa

Spectre Tech Tipsについて

Spectre Tech Tipsは、Spectreシミュレーション・プラットフォームの機能や可能性を探求することを目的としたブログ・シリーズです。このシリーズでは、Spectreの有用な機能や改善についての知見を提供することに加えて、このプラットフォームに関連するあらゆることについての知識と経験を共有する、様々なブロガーや専門家の声を届けます。 

カスタムIC/ミックスシグナル Blogs 無料定期購読のご案内 

新規ブログが公開された際に通知を受け取る方法を、こちらにてご案内しています。是非ご登録ください。

Tags:
  • Fast Fourier Transform |
  • ADE Explorer |
  • strobe |
  • Spectre Circuit Simulator |
  • Virtuoso Analog Design Environment |
  • Virtuoso IC6.1.8 |
  • japanese blog |
  • ADE Assembler |