JP2020528181A - Computer-implemented systems and methods for translating electronic design verification commands - Google Patents

Computer-implemented systems and methods for translating electronic design verification commands Download PDF

Info

Publication number
JP2020528181A
JP2020528181A JP2020502272A JP2020502272A JP2020528181A JP 2020528181 A JP2020528181 A JP 2020528181A JP 2020502272 A JP2020502272 A JP 2020502272A JP 2020502272 A JP2020502272 A JP 2020502272A JP 2020528181 A JP2020528181 A JP 2020528181A
Authority
JP
Japan
Prior art keywords
translating
verification
electronic design
command
specification database
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2020502272A
Other languages
Japanese (ja)
Inventor
ジェームズ、フェリシア
クラースニッキー、マイケル
ウ、シユアン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zipalog Inc
Original Assignee
Zipalog Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US15/654,469 external-priority patent/US10402505B2/en
Application filed by Zipalog Inc filed Critical Zipalog Inc
Publication of JP2020528181A publication Critical patent/JP2020528181A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/3167Testing of combined analog and digital circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

電子的設計の検証コマンドを翻訳するコンピュータ実装される方法は、電子的設計を受信するステップと、少なくとも1つの間接分岐貢献ステートメントを有し、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータの少なくとも1つを有する少なくとも1つのアナログテストハーネスモデルを受信するステップと、少なくとも1つのアナログテストハーネスモデルと、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータの少なくとも1つとに少なくとも部分的に基づいて、少なくとも1つの間接分岐貢献ステートメントを複数の直接分岐貢献演算子に翻訳するステップと、翻訳に少なくとも部分的に基づいてネットリストを生成するステップとを含む。A computer-implemented method of translating an electronic design validation command has at least one specification parameter that has at least one indirect branch contribution statement and a step to receive the electronic design and is stored in at least one specification database. A step of receiving at least one analog test harness model having at least one stimulus parameter stored in at least one specification database and at least one measurement parameter stored in at least one specification database. At least one analog test harness model, at least one specification parameter stored in at least one specification database, at least one stimulus parameter stored in at least one specification database, and at least one stored in at least one specification database. Generate a netlist based on the step of translating at least one indirect branch contribution statement into multiple direct branch contribution operators, and at least partly based on the translation, at least partially based on at least one of the measurement parameters. Including steps.

Description

関連出願への相互参照
本願は、2017年7月19日付けで出願された「COMPUTER IMPLEMENTED SYSTEM AND METHOD OF TRANSLATION OF VERIFICATION COMMANDS OF AN ELECTRONIC DESIGN」と題する米国特許出願第15/654,469号明細書(ZPLG−33603)の優先権及び/又は利益を主張するものである。米国特許出願第15/654,469号明細書は、2017年7月25日付けで米国特許第9,715,566号明細書として発行された、2015年5月8日付けで出願された「COMPUTER IMPLEMENTED SYSTEM AND METHOD OF TRANSLATION OF VERIFICATION COMMANDS OF AN ELECTRONIC DESIGN」と題する米国特許出願第14/707,689号明細書(代理人整理番号ZPLG−31865)の一部継続出願である。米国特許出願第14/707,689号明細書は、2014年5月9日付けで出願された「COMPUTER IMPLEMENTED SYSTEM AND METHOD OF TRANSLATION OF VERIFICATION COMMANDS OF AN ELECTRONIC DESIGN」と題する米国仮特許出願第61/991,072号明細書(代理人整理番号ZPLG−31865)の利益を主張する。米国特許出願第14/707,689号明細書及び同第61/991,072号明細書並びに米国特許第9,715,566号明細書は、その全体が参照により本明細書に援用される。
Mutual reference to related applications This application is filed on July 19, 2017, entitled "COMPUTER IMPLEMENTED SYSTEM AND METHOD OF TRANSRATION OF VERIFICATION COMMANDS OF AN ELECTRONIC DESIGN", US Pat. It claims the priority and / or benefit of (ZPLG-33603). U.S. Patent Application No. 15 / 654,469 was issued as U.S. Pat. No. 9,715,566 on July 25, 2017, and was filed on May 8, 2015. Part of U.S. Patent Application No. 14 / 707,689, entitled "COMPUTER IMPLEMENTED SYSTEM AND METHOD OF TRANSLATION OF VERIFICATION COMMANDS OF AN ELECTRONIC DESIGN" (agent reference number ZPLG-31865). U.S. Patent Application No. 14 / 707,689, entitled "COMPUTER IMPLEMENTED SYSTEM AND METHOD OF TRANSLATION OF VERIFICATION COMMANDS OF AN ELECTRONIC DESIGN," filed May 9, 2014, U.S.A. Claim the interests of specification 991,072 (agent reference number ZPLG-31865). U.S. Patent Application Nos. 14 / 707,689 and 61 / 991,072 and U.S. Pat. Nos. 9,715,566 are incorporated herein by reference in their entirety.

本方法及びシステムは、一般的にはアナログ及び混合信号集積回路の検証に関し、より具体的には、検証サブルーチンコマンド(verification subroutine command)を翻訳するシステム及び方法に関する。 The methods and systems generally relate to the verification of analog and mixed signal integrated circuits, and more specifically to the systems and methods of translating verification subroutine commands (verification subroutine commands).

電子的設計自動化(EDA)は、電子的ブロックを設計するためのソフトウェアである。電子的な信号、コンポーネント、及びブロックには大きく幾つかの種類がある(デジタル、アナログ、及び混合信号と呼ばれるデジタルとアナログとの混合物)。電子的設計は一般的に回路情報の以下のレベルのうち少なくとも1つを含む:システムレベル、アーキテクチャレベル、データフローレベル、電気的レベル、デバイスレベル、及びテクノロジーレベル等。 Electronic design automation (EDA) is software for designing electronic blocks. There are roughly several types of electronic signals, components, and blocks (digital and analog mixtures called digital, analog, and mixed signals). Electronic design generally includes at least one of the following levels of circuit information: system level, architecture level, data flow level, electrical level, device level, and technology level.

デジタル信号は、離散的な時刻値において発生し、典型的にはクロック信号に結び付けられる離散的な入出力値「0」及び「1」を有する。デジタル信号を入出力するデジタルコンポーネントは典型的には、静的なピン出力及び相互作用プロトコルを有する。デジタルコンポーネントで構成されるデジタルブロックは、確立され文書化された物理的レイアウト及び電気的相互作用を有する。デジタルブロック用のシミュレータは、離散時間イベント駆動型のシミュレータである。 The digital signal has discrete input / output values "0" and "1" that occur at discrete time values and are typically associated with the clock signal. Digital components that input and output digital signals typically have static pin outputs and interaction protocols. Digital blocks composed of digital components have an established and documented physical layout and electrical interactions. The simulator for digital blocks is a discrete-time event-driven simulator.

アナログ信号は一般に、時間と共に変化し得る連続的な入出力値を有する。アナログコンポーネントは、典型的には、入力、出力、トリガ、バイアス等を変更するようにカスタマイズ可能なレイアウトを有する。したがって、カスタマイズに起因して、アナログコンポーネントで構成されるアナログブロックは、デジタル回路ほどしっかりと確立又は文書化された物理的レイアウト又は電気的相互作用を有さないことがある。アナログブロック用のシミュレータは一般に、連続時間領域シミュレータを必要とする。 Analog signals generally have continuous input / output values that can change over time. Analog components typically have a layout that can be customized to change inputs, outputs, triggers, biases, and so on. Therefore, due to customization, analog blocks composed of analog components may not have as well established or documented physical layout or electrical interactions as digital circuits. Simulators for analog blocks generally require a continuous time domain simulator.

混合信号ブロックは、シミュレートされるコンポーネント内のデジタル信号ブロックとアナログ信号ブロックとの組み合わせである。シミュレーションに利用可能な最も一般的な選択肢は、アナログブロックのグループとしてコンポーネントをシミュレートするか、又はアナログコンポーネント/ブロック及びデジタルコンポーネント/ブロックを個別に解析して、領域間通信のためにデジタル領域とアナログ領域との境界において入出力を翻訳することである。 A mixed signal block is a combination of digital and analog signal blocks within a simulated component. The most common options available for simulation are to simulate the components as a group of analog blocks, or analyze the analog components / blocks and digital components / blocks individually with the digital domain for inter-domain communication. It is to translate the input and output at the boundary with the analog domain.

EDA内では、回路レビューの2つの大きな関連するカテゴリがある:シミュレーション及び検証。シミュレーションとは、回路の挙動を予測する数的解の集合である。検証とは、関連する条件下で(機能的検証)製造プロセスのバリエーションにわたり(パラメータ的検証)回路の挙動を記述する系統的な追求である。したがって、検証では一般に、シミュレーションと比べて、回路、回路の動作条件、製造動作バリエーションのはるかに広範囲のレビューが必要である。回路の機能性をあまり検証せずに多数回のシミュレーションを実行することが可能である。検証とは、様々な条件にわたる回路挙動及び回路性能評価の数学的モデル化である。究極的には、検証の成功測度は、回路設計がいかにうまく回路仕様に適合しているかを報告することである。アナログ及び混合信号検証方法論は、増大し続けるアナログ及び混合信号回路の複雑さ、コスト、及び計算的要求への対応に苦闘している。 Within EDA, there are two major related categories of circuit review: simulation and verification. A simulation is a set of numerical solutions that predict the behavior of a circuit. Verification is a systematic pursuit that describes the behavior of a circuit (parameter verification) across manufacturing process variations (functional verification) under relevant conditions. Therefore, verification generally requires a much wider review of circuits, circuit operating conditions, and manufacturing operational variations than simulations. It is possible to perform a large number of simulations without much verification of the functionality of the circuit. Verification is a mathematical modeling of circuit behavior and circuit performance evaluation over various conditions. Ultimately, the success measure of verification is to report how well the circuit design fits the circuit specifications. Analog and mixed-signal verification methodologies struggle to meet the ever-increasing complexity, cost, and computational demands of analog and mixed-signal circuits.

検証テストケースの数及び複雑さは、アナログ及び混合信号設計の複雑さに伴って増大する。加えて、回路のサイズが増大するにつれて、シミュレーション速度は低下し、メモリ使用量は増加する。したがって、回路を検証するための計算処理力は、回路の複雑さに伴って劇的に増大する恐れがある。さらに悪いことに、検証は通常、スケジュールの遅延が最も深刻だと見なされる設計サイクルの最後に行われる。したがって、検証は一般に、設計サイクル全体のうちの僅かな部分に相当量のシミュレーション処理力を必要とする活動であり、したがって、タイムツーマーケット要求を満たすために、一般に検証資源の効率的な使用が必要とされる。 The number and complexity of validation test cases increases with the complexity of analog and mixed signal designs. In addition, as the size of the circuit increases, the simulation speed decreases and the memory usage increases. Therefore, the computational power to verify a circuit can increase dramatically with the complexity of the circuit. To make matters worse, validation is usually done at the end of the design cycle, where schedule delays are considered the most severe. Therefore, validation is generally an activity that requires a significant amount of simulation processing power in a small part of the entire design cycle, and therefore efficient use of validation resources is generally used to meet time-to-market requirements. Needed.

今日の複雑な検証解決策は特に、関連する条件下で回路の動作が完全且つ効率的に検証されることを保証するための検証活動にエンジニアリングを絞っている。この絞りこまれたアナログ及び混合信号検証は、デジタル検証よりもはるかに手作業及び経験により行われる。この散発的な対話式アナログ検証は会社を危険に曝す。本開示は、より高い抽象度で検証タスクを定義できるようにし得る。本開示は、刺激(stimulus)又は刺激主張(stimulus assertions)と、出力測定値又は出力主張との複雑な関係を効率的に捕捉できるようにし得る。本開示は、トランジスタレベル回路、挙動モデルを用いて実装された回路、又は挙動モデルとトランジスタレベル実装との組み合わせを含む回路をテストできるようにし得る。標準的な分岐貢献ステートメントは、条件式が定数式でない限り、条件付き、ループ、命名、又は解析ベースのステートメントにおいて使用することができない。区別のために、本明細書ではこれらの標準的な分岐貢献ステートメントを直接分岐貢献ステートメントと呼ぶ。本開示において、間接分岐貢献ステートメント(IBCS)は、直接分岐貢献ステートメント(DBCS)よりも強力である。具体的には、間接分岐貢献ステートメントは、ユーザの設計、設計構成、シミュレーション/解析構成、検証状態、及び検証履歴に対して動的な条件付き及びループ構造で用いることができる。独立分岐貢献ステートメントを条件付き、ループ、命名、又は解析ベースのステートメントで使用すること又は独立分岐貢献ステートメントが進行中の解析から得られる異なる引数を返すことが長年にわたり必要とされていた。 Today's complex verification solutions specifically focus engineering on verification activities to ensure that circuit operation is fully and efficiently verified under relevant conditions. This refined analog and mixed signal verification is performed much more manually and empirically than digital verification. This sporadic interactive analog verification puts the company at risk. The present disclosure may allow the validation task to be defined with a higher degree of abstraction. The present disclosure may allow efficient capture of complex relationships between stimulus or stimulus assertions and output measurements or output claims. The present disclosure may allow testing of transistor-level circuits, circuits implemented using behavioral models, or circuits that include combinations of behavioral models and transistor-level mounting. Standard branch contribution statements cannot be used in conditional, loop, naming, or parsing-based statements unless the conditional expression is a constant expression. For the sake of distinction, these standard branch contribution statements are referred to herein as direct branch contribution statements. In the present disclosure, indirect branch contribution statements (IBCS) are more powerful than direct branch contribution statements (DBCS). Specifically, the indirect branch contribution statement can be used in a dynamic conditional and loop structure for the user's design, design configuration, simulation / analysis configuration, verification state, and verification history. It has long been required to use independent branch contribution statements in conditional, loop, naming, or parsing-based statements, or to return different arguments from the analysis in progress.

加えて、設計の複雑さの増大により、製品仕様へのトレーサビリティの必要性が増している。今日、多くの顧客及び産業は、各仕様及びテスト条件を確認する特定の検証テストの文書化を必要としている。本開示は、仕様データベースにリンクするパラメータを含むことができる高水準間接分岐貢献ステートメントの概念を含む。これらのパラメータは、限定ではなく、仕様限界、テスト刺激条件(例えば、供給電圧)、及び測定要件(例えば、特定の値の正味交差)を含むことができる。本開示では、検証コマンドの翻訳時、仕様データベースにアクセスし、パラメータを仕様データベースからの対応する厳密な値で置換することができる。他の選択肢は、リンクされたパラメータをネットリストに残し、シミュレーション時、仕様データベースにアクセスして、パラメータ値を抽出するというものである。 In addition, increasing design complexity has increased the need for traceability to product specifications. Today, many customers and industries need to document specific validation tests that confirm each specification and test conditions. The present disclosure includes the concept of a high-level indirect branch contribution statement that can include parameters that link to a specification database. These parameters are not limited and can include specification limits, test stimulus conditions (eg, supply voltage), and measurement requirements (eg, net crossover of specific values). In the present disclosure, when translating a validation command, the specification database can be accessed and parameters can be replaced with the corresponding exact values from the specification database. Another option is to leave the linked parameters in the netlist, access the spec database during simulation, and extract the parameter values.

アナログ及び混合信号回路のロバスト(robust)な検証は一般に、シミュレーションの加速に用い得るテストベンチ、性能評価ルーチン、及びマクロモデルへのかなりの投資を必要とする。この付帯事実の複雑さは、検証すべきアナログ及び混合信号集積回路の複雑さに伴って増大する。設計チームが設計資源を追加する場合、検証資源も追加する必要があり、設計コストが増大する。会社が製品を市場に出そうとしているとき、設計サイクルの最後に課される不可避の時間制約に起因して、それらの資源の効率的な使用が最優先事項となる。 Robust verification of analog and mixed-signal circuits generally requires a significant investment in test benches, performance evaluation routines, and macro models that can be used to accelerate simulations. The complexity of this incidental fact increases with the complexity of the analog and mixed signal integrated circuits to be verified. When the design team adds design resources, it is necessary to add verification resources as well, which increases the design cost. When a company is about to bring a product to market, efficient use of those resources is a top priority due to the inevitable time constraints imposed at the end of the design cycle.

電子製造業界における現行技術の軌道は、システムオンチップ(SoC)と呼ばれる単一チップ設計又は複数のチップが1つのパッケージに含まれるマルチチップモジュール(MCM)にますます向かいつつある。大半のシステムオンチップ及びマルチチップモジュールは一般に、あるレベルの混合信号検証を必要とする。混合信号設計のサイズ及び複雑さが増大するにつれて、このことは、ファーストパス設計の成功を保証し、タイムツーマーケットを短縮するために、検証に追加の負担を発生させる。アナログ及び混合信号ASIC設計の複雑さはムーアの法則に従ってきたが、設計検証における技術革新は一般にそうではない。 The current technology trajectory in the electronics manufacturing industry is increasingly moving towards single-chip designs called system-on-chip (SoC) or multi-chip modules (MCMs) in which multiple chips are contained in a single package. Most system-on-chip and multi-chip modules generally require some level of mixed-signal verification. As the size and complexity of mixed-signal designs increase, this creates an additional burden on validation to ensure the success of first-pass designs and reduce time-to-market. The complexity of analog and mixed-signal ASIC designs has followed Moore's Law, but technological innovations in design verification are generally not.

本開示の検証サブルーチンコマンドを翻訳する方法は、貴重な設計時間及び計算資源と、高価なシミュレータ資源とに特にフォーカスすることができる。本方法は、複雑な刺激の捕捉と、出力主張及び測定値の捕捉とをより効率的にする。結果として得られる知的なテストベンチは、検証を失敗させる領域を特定し、結果を手作業で解釈する必要性を大幅に低減することにより、設計チーム及び設計監理にはるかに即時のフィードバックを提供する。テスト効率の改善(すなわち、シミュレーション時間を浪費せず、出力解析の時間を短縮する)により、より効率的な資源の利用が可能になる。加えて、極めて重要なパラメータを仕様データベースに結び付けることにより、翻訳されたコマンドは、最新版の仕様にアクセスし、仕様から、生成された検証テスト及び結果へのトレーサビリティを提供することができる。 The method of translating the validation subroutine commands of the present disclosure can focus particularly on valuable design time and computational resources and expensive simulator resources. The method makes the capture of complex stimuli and the capture of power claims and measurements more efficient. The resulting intelligent test bench provides much more immediate feedback to the design team and design supervision by identifying areas where validation fails and significantly reducing the need to manually interpret the results. To do. Improved test efficiency (ie, less waste of simulation time and shorter output analysis time) allows for more efficient use of resources. In addition, by linking critical parameters to the specification database, translated commands can access the latest version of the specification and provide traceability from the specification to the generated validation tests and results.

本開示は、アナログ及び混合信号(A/MS)特定用途向け集積回路(ASIC)の電子的設計の検証中、検証サブルーチンコマンドを翻訳すること及び極めて重要なパラメータを仕様データベースにリンクすることに関する。アナログ及び混合信号集積回路は現代の多くの電子デバイスに存在し、それらの回路は、製造前、シミュレーションを介して検証する必要がある。 The present disclosure relates to translating verification subroutine commands and linking critical parameters to a specification database during verification of the electronic design of analog and mixed signal (A / MS) application specific integrated circuits (ASICs). Analog and mixed-signal integrated circuits exist in many modern electronic devices, and these circuits need to be verified through simulation before manufacturing.

本開示の電子的設計の検証コマンドの翻訳のコンピュータ実装されるシステム及び方法の単なる一例及びその態様によれば、電子的設計を受信するステップと、少なくとも1つの間接分岐貢献ステートメントを有し、仕様データベースからの少なくとも1つの仕様又は測定パラメータを有する少なくとも1つのアナログテストハーネスモデル(analog test harness model)を受信するステップと、少なくとも1つのアナログテストハーネスモデルに少なくとも部分的に基づいて、少なくとも1つの間接分岐貢献ステートメントを複数の直接分岐貢献演算子に翻訳するステップと、翻訳に少なくとも部分的に基づいてネットリストを生成するステップを含むが提供される。 According to just one example and embodiment of a computer-implemented system and method of translating an electronic design verification command of the present disclosure, the specification comprises a step of receiving the electronic design and at least one indirect branch contribution statement. At least one indirect based on the step of receiving at least one analog test harness model with at least one specification or measurement parameter from the database and at least partly based on at least one analog test harness model. It is provided with a step of translating the branch contribution statement into multiple direct branch contribution operators and a step of generating a netlist based on the translation at least in part.

本開示は、以下の詳細な説明及び図面を考慮することにより、より明確に理解される。 The present disclosure is more clearly understood by taking into account the following detailed description and drawings.

本開示の実施に適したコンピュータシステムを示すブロック図である。It is a block diagram which shows the computer system suitable for carrying out this disclosure. 本開示の実施に適したコンピュータネットワークシステムを示すブロック図である。It is a block diagram which shows the computer network system suitable for carrying out this disclosure. 低電圧損失(LDO)回路の一例を示す。An example of a low voltage loss (LDO) circuit is shown. 増幅回路の一例を示す。An example of an amplifier circuit is shown. 増幅器用のテストベンチピン出力を示す。The test bench pin output for the amplifier is shown. 一般的な階層構造の一例を示す。An example of a general hierarchical structure is shown. インスタンスパースされたテスト階層構造例を示す。An example of an instance-parsed test hierarchy is shown. 電力管理集積回路の第1のテストベンチ例を示す。An example of a first test bench of a power management integrated circuit is shown. 電力管理集積回路の第2のテストベンチ例を示す。A second test bench example of a power management integrated circuit is shown. 電力管理集積回路の第3のテストベンチ例を示す。An example of a third test bench of a power management integrated circuit is shown. 電子的設計の検証サブルーチンコマンド翻訳を有するマルチプレクサ及びオペアンプの一例を示す。An example of a multiplexer and an operational amplifier having a verification subroutine command translation of an electronic design is shown. 電子的設計の検証サブルーチンコマンド翻訳のBレベルの一例を示す。An example of B level of verification subroutine command translation of electronic design is shown. 電子的設計の検証サブルーチンコマンド翻訳のDレベルの一例を示す。An example of the D level of electronic design verification subroutine command translation is shown. 電子的設計の検証サブルーチンコマンド翻訳の階層構造の一例を示す。Verification of electronic design An example of the hierarchical structure of subroutine command translation is shown. 電子的設計の検証サブルーチンコマンド翻訳のEレベルの一例を示す。An example of E level of verification subroutine command translation of electronic design is shown. 電子的設計の検証サブルーチンコマンド翻訳の第1の例を示す。An electronic design verification subroutine A first example of command translation is shown. 電子的設計の検証サブルーチンコマンド翻訳の第2の例を示す。A second example of electronic design verification subroutine command translation is shown. 電子的設計の検証サブルーチンコマンド翻訳の第3の例を示す。A third example of electronic design verification subroutine command translation is shown. 電子的設計の検証サブルーチンコマンド翻訳の第4の例を示す。A fourth example of electronic design verification subroutine command translation is shown. 電子的設計の検証サブルーチンコマンド翻訳の第5の例を示す。A fifth example of electronic design verification subroutine command translation is shown. 電子的設計の検証サブルーチンコマンド翻訳の第6の例を示す。A sixth example of electronic design verification subroutine command translation is shown.

詳細な説明中の参照符号は、別段のことが記される場合を除き、様々な図中の同様の参照符号に対応する。書面中で用いられる右、左、後、上、下、上側、側面等の記述的用語及び方向的用語は、特に断らない限り、紙上に配置された通りの図面自体を参照し、本開示の物理的限定を言及しない。図面は一定の縮尺ではなく、図示され論じられる例の幾つかの特徴は、本開示の原理及び特徴並びに利点を例示するために、単純化又は誇張されている。 Reference numerals in the detailed description correspond to similar reference numerals in various figures, unless otherwise noted. Descriptive and directional terms such as right, left, rear, top, bottom, top, side, etc. used in the document refer to the drawings themselves as arranged on paper, unless otherwise noted. Does not mention physical limitations. The drawings are not to a constant scale and some features of the examples illustrated and discussed are simplified or exaggerated to illustrate the principles and features and advantages of the present disclosure.

詳細な説明
本開示の特徴及び他の詳細について、添付図面を参照してより詳細にこれより説明し、添付図面中、開示される事項の様々な例示が示され及び/又は記載される。本明細書に記載される特定の例は、本開示の限定としてではなく、例として示されることが理解される。さらに、開示される事項は、本明細書に記載されるいずれの例にも限定されるものとして解釈されるべきではない。これらの例は、本開示が完全且つ完成したものとなり、開示される事項の範囲を当業者に十分に伝えるように提供される。本開示の本質的特徴は、本開示の範囲から逸脱することなく、様々な例において採用し得る。
Detailed Description The features and other details of the present disclosure will be described in more detail with reference to the accompanying drawings, and various examples of the matters disclosed will be shown and / or described in the accompanying drawings. It is understood that the particular examples described herein are presented as examples, not as limitations of the present disclosure. Moreover, the matters disclosed should not be construed as being limited to any of the examples described herein. These examples are provided to make this disclosure complete and complete and to fully inform those skilled in the art the scope of the matters to be disclosed. The essential features of the present disclosure may be adopted in various examples without departing from the scope of the present disclosure.

本明細書において用いられる用語は、特定の例を記述することのみを目的としており、開示される事項の限定としては意図されていない。全体を通して、同様の番号は同様の要素を参照する。本明細書において用いられる場合、「及び/又は(and/or)」という用語は、関連して列挙される項目のうち1つ又は複数のありとあらゆる組み合わせを包含する。また、本明細書において用いられる場合、単数形「a」、「an」及び「the」は、別段のことが状況により明確に示される場合を除き、複数形も同様に含むことが意図される。本明細書において用いられる場合、「備える、含む(comprises)」及び/又は「備えている、含んでいる(comprising)」という用語は、記述された特徴、整数(integers)、ステップ、動作、要素、及び/又はコンポーネントの存在を指定するが、他の特徴、整数、ステップ、動作、要素、コンポーネント、及び/又はこれらの群のうち1つ又は複数の存在又は追加を排除しないことが理解される。また、本明細において用いられる場合、第1の及び第2の、上及び下、及び右等の関係語は、ある主体又は動作を別の主体又は動作と区別するためだけに用いられることがあり、必ずしもそのような主体間又は動作間の任意の実際のそのような関係又は順序を要求又は示唆するものではない。 The terms used herein are for the purpose of describing specific examples only and are not intended to limit the matters disclosed. Throughout, similar numbers refer to similar elements. As used herein, the term "and / or (and / or)" includes any combination of one or more of the items listed in connection. Also, as used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the circumstances clearly indicate otherwise. .. As used herein, the terms "comprising, including" and / or "comprising, including" are described features, integers, steps, actions, elements. , And / or specify the presence of a component, but it is understood that it does not exclude the presence or addition of one or more of other features, integers, steps, actions, elements, components, and / or groups of these. .. Also, as used herein, the first and second, upper and lower, and right related terms may be used only to distinguish one subject or action from another. , Does not necessarily require or suggest any actual such relationship or order between such actors or actions.

アナログ及び混合信号IC設計への参入障壁のコストは、特に、パッケージされたASICの形態又は顧客のシステムオンチップ(SoC)若しくはマルチチップモジュール(MCM)に集積されるモジュールの形態でASIC知的財産を開発しているファブレス企業に特有のものである。例えば、ファブレス設計センターに5人のIC設計エンジニアが配置されている場合、そのチームに設計ツールを持たせることは、人員を4倍にするのと財務的に等価である。これは、毎年のライセンス料、インストール及びサポート、トレーニング等のみではないEDAツールを所有することの高いコストに起因する。検証コマンドの翻訳を通じてシステムの使用を縮小することは、より効率的な資源割り振りを可能にする。 The cost of entry barriers to analog and mixed signal IC design is ASIC intellectual property, especially in the form of packaged ASICs or modules integrated into the customer's system-on-chip (SoC) or multi-chip modules (MCMs). It is unique to the fabless company that is developing. For example, if a fabless design center has five IC design engineers, having that team have design tools is financially equivalent to quadrupling the workforce. This is due to the high cost of owning EDA tools, not just annual license fees, installation and support, training, etc. Reducing system usage through translation of validation commands allows for more efficient resource allocation.

アナログ及び混合信号検証は時間及び計算機集約的である。回路が仕様に合わせて機能することを保証するためには、一般に、様々な条件及び様々な製造条件において様々な入力に対する回路の機能性をシミュレートすることが必要になる。 Analog and mixed signal verification are time and computer intensive. In order to ensure that the circuit works to specifications, it is generally necessary to simulate the functionality of the circuit for different inputs under different conditions and different manufacturing conditions.

分岐貢献ステートメントは、アナログネット及びポート間の連続的な時間における挙動を記述するのに利用される。1つ又は複数のアナログネット間の数学的関係を記述するために、直接貢献ステートメントは分岐貢献演算子<+を利用する。これらの直接貢献ステートメントは、定数式である引数を利用する。標準的な分岐貢献ステートメントは、条件式が定数式でない限り、条件付き、ループ、命名、又は解析ベースのステートメントで使用することができない。区別のために、本明細書ではこれらの標準的な分岐貢献ステートメントを直接分岐貢献ステートメントと呼ぶ。本開示において、間接分岐貢献ステートメント(IBCS)は、直接分岐貢献ステートメント(DBCS)よりも強力である。具体的には、間接分岐貢献ステートメントは、ユーザの設計、設計構成、シミュレーション/解析構成、検証状態、及び検証履歴に対して動的な条件付き及びループ構造で用いることができる。間接分岐貢献ステートメントは、ネットリストの内容に基づいて直接分岐貢献ステートメントを生成する動的コードを可能にする。 Branch contribution statements are used to describe the behavior of analog nets and ports in continuous time. Direct contribution statements utilize the branch contribution operator <+ to describe the mathematical relationship between one or more analog nets. These direct contribution statements make use of arguments that are constant expressions. Standard branch contribution statements cannot be used in conditional, loop, naming, or parsing-based statements unless the conditional expression is a constant expression. For the sake of distinction, these standard branch contribution statements are referred to herein as direct branch contribution statements. In the present disclosure, indirect branch contribution statements (IBCS) are more powerful than direct branch contribution statements (DBCS). Specifically, the indirect branch contribution statement can be used in a dynamic conditional and loop structure for the user's design, design configuration, simulation / analysis configuration, verification state, and verification history. Indirect branch contribution statements allow dynamic code to generate direct branch contribution statements based on the contents of the netlist.

AMST(商標)(アナログ混合信号テスト)は、アナログ/混合信号(A/MS)刺激と、主張及び出力測定値とを指定するモジュールである。AMSTは、刺激と出力主張との間の複雑な関係を効率的に捕捉することができる。AMST言語(AMSTL(商標))において指定される検証モデルは、続けてVerilog−A/AMS(商標)に翻訳される比較的高水準のコマンドを捕捉する。それぞれ、アナログ及び混合信号を定義する標準化された言語であるVerilog−A、Verilog−AMS、VHDL−AMS、又はSystemC−AMS等。このコードは、アナログシミュレータの直接分岐貢献ステートメントをサポートする任意の言語標準の生成に用いることもできると考えられる。 AMST ™ (Analog Mixed Signal Test) is a module that specifies analog / mixed signal (A / MS) stimuli and assertion and output measurements. AMST can efficiently capture complex relationships between stimuli and power claims. The validation model specified in the AMST language (AMSTR ™) subsequently captures relatively high level commands translated into Verilog-A / AMS ™. Verilog-A, Verilog-AMS, VHDL-AMS, SystemC-AMS, etc., which are standardized languages that define analog and mixed signals, respectively. This code could also be used to generate any language standard that supports the direct branch contribution statement of the analog simulator.

AMSTLは、結果として生じる翻訳されたコードが、回路の挙動モデルで用いられるか、それともテストハーネスで用いられるかに関わらず、IBCSを伴う比較的高水準のコマンドを捕捉するのに用いることができる。回路の挙動モデルではなくAMST内で主張を捕捉することの価値は、回路の表現に関わらず、検証コマンドを再利用できることである。例えば、図15において、AMP_AMSTブロックは、オペアンプ及びマルチプレクサがトランジスタレベルの結線図として表現されているか、それとも挙動モデルとして表現されているかに関わらず、同じコマンド及び主張を実行する。このときAMP_AMSTは、これらの回路と共に再利用することができる検証知的財産(VIP)として機能する。この概念は、アナログ設計知的財産(IP)を第三者に提供する場合を考えると、特に貴重となる。購入者は、購入したIPと共により大きなSOC内に埋め込むことができる検証IPを有する。このVIPは、購入した設計IPが不適切に使用されるリスクを低減する。検証IPは、デジタル回路及びトップレベルの入出力についての証明された概念であるが、埋め込まれたアナログIPと共に提供することは従来、実用的ではなかった。 AMSTL can be used to capture relatively high level commands with IBCS, whether the resulting translated code is used in a circuit behavior model or in a test harness. .. The value of capturing claims within AMST rather than the circuit behavior model is that the validation commands can be reused regardless of the representation of the circuit. For example, in FIG. 15, the AMP_AMST block executes the same commands and claims regardless of whether the op amps and multiplexers are represented as transistor-level wiring diagrams or behavioral models. At this time, AMP_AMST functions as a verification intellectual property (VIP) that can be reused together with these circuits. This concept is especially valuable when considering providing analog design intellectual property (IP) to a third party. The purchaser has a verification IP that can be embedded in a larger SOC along with the purchased IP. This VIP reduces the risk of improper use of purchased design IP. Verification IP is a proven concept for digital circuits and top-level I / O, but it has traditionally been impractical to provide with embedded analog IP.

言語AMSTLは、アナログ混合信号集積回路設計について、挙動、刺激、出力、測定値等を記述することを意図しており、アナログシミュレータへの入力が意図される標準的なハードウェア記述言語において利用可能なものより高水準の構造を提供する。1つの利点は、AMSTLにおいてIBCSが利用可能であることに基づく効率の改善である。加えて、AMSTLコードをパースして、任意の所望の標準言語を出力することができる。モジュールAMSTは、アナログ混合信号検証知的財産の挙動モデルであり、設計内の階層構造の任意のレベルに存在することが意図される。モジュールは、監視している、刺激している、及び/又は評価しているIPと共に存在することができる。モデルの出力形式(Verilog−A、Verilog−AMS、VHDL−AMS等)は、ネットリストを通してアナログ又は混合信号シミュレータに入力することができる。 Language AMSTL is intended to describe behavior, stimuli, outputs, measurements, etc. for analog mixed signal integrated circuit design and is available in standard hardware description languages intended for input to analog simulators. It provides a higher standard of structure than the analog one. One advantage is the improvement in efficiency based on the availability of IBCS in AMSTR. In addition, the AMSTR code can be parsed to output any desired standard language. Module AMST is a behavioral model of analog mixed signal verification intellectual property and is intended to be present at any level of the hierarchical structure in the design. The module can be present with the IP being monitored, stimulating, and / or evaluating. The output format of the model (Verilog-A, Verilog-AMS, VHDL-AMS, etc.) can be input to the analog or mixed signal simulator through the netlist.

AMSTは、仕様データベースにリンクするパラメータを含むことができる。仕様データベースは、以下の種類の情報の少なくとも1つを含む:仕様限界、測定条件、又は刺激条件。仕様限界とは、特定のテストで許されている性能の限界を記述する値である。例えば、SOCの仕様は、供給電流と呼ばれる仕様を含み得る。供給電流は、最小限界値、典型的な限界値、及び/又は最大限界値を含み得る。例えば、供給電流は、テスト中又は指定された測定条件中、最小限界を決して下回るべきではなく、且つ指定された最大限界を決して超えるべきではない。「典型的な」値は、大抵の場合、室温での性能として定義される通常条件下でのその部品の性能についての情報として提供される。厳密に言えば、「典型的な」値は動作の限界ではない。「測定条件」とは、刺激を含む任意のテスト条件を広く記述するのに用いることができる用語であるが、この考察では、測定条件は、測定をいつ行うことができるかを定義する条件を記述するのに用いられる。例えば、測定条件は、チップにおける電圧調整器出力が特定の値を超える場合のみ、供給電流を測定すべきであることを記述し得る。刺激条件は、チップ又はチップ上の特定のピンに適用される電圧、電流、温度等の刺激を記述する。例えば、供給電流測定は、供給電圧が特定の電圧に等しい場合として定義することもできる。この例では、供給電圧は刺激である。目標は、検証オートメーションが、所与の測定の測定要件及び刺激要件を捕捉すると共に、仕様限界が満たされたことを一揃いの検証刺激が示すことができるように、指定されたパラメータをモニタ又は測定することである。 AMST can include parameters that link to the specification database. The specification database contains at least one of the following types of information: specification limits, measurement conditions, or stimulus conditions. The specification limit is a value that describes the performance limit allowed in a particular test. For example, SOC specifications may include a specification called supply current. The supply current may include a minimum limit value, a typical limit value, and / or a maximum limit value. For example, the supply current should never be below the minimum limit and never exceed the specified maximum limit during testing or under specified measurement conditions. A "typical" value is often provided as information about the performance of the part under normal conditions, which is defined as performance at room temperature. Strictly speaking, the "typical" value is not the limit of operation. "Measurement condition" is a term that can be used to broadly describe any test condition, including stimuli, but in this discussion, the measurement condition is a condition that defines when a measurement can be made. Used to describe. For example, the measurement conditions may describe that the supply current should be measured only if the voltage regulator output on the chip exceeds a certain value. The stimulus condition describes a stimulus such as voltage, current, temperature applied to the chip or a particular pin on the chip. For example, supply current measurement can also be defined as when the supply voltage is equal to a particular voltage. In this example, the supply voltage is a stimulus. The goal is to monitor or monitor specified parameters so that validation automation captures the measurement and stimulus requirements of a given measurement and allows a set of validation stimuli to indicate that the specification limits have been met. To measure.

仕様データベースにリンクされるこれらのパラメータは、一意の識別子を有する。これらの識別子は、検証活動vs仕様に関する決定的なトレーサビリティの機会を提供する。アナログ検証についての今日典型的な実装は、仕様検証テストが所与の仕様をテストしていることをエンジニアが記述する(グラフィカルインターフェース等を通して)ことを含む。例えば、検証テスト及び出力測定値名は特定の仕様に関連付け得るが、仕様が変更された場合、それに合うように検証テストを自動的に更新することができるメカニズムはない。変更vs検証テストが実行される時間の自動追跡を可能にするリンクもない。換言すれば、仕様データベースと検証テストとの間にリンクがなければ、検証テストが、仕様変更前に行われたのか、それとも仕様変更後に行われたのかを自動的に判断する機会がない。また、仕様における値及び検証テストにおける値が一致しない場合、手動不一致が生じる恐れがある。本開示内に記載される手法は、仕様に関連する極めて重要なパラメータを仕様データベース内に維持し、高水準検証テストがそのデータベースから一意に特定されたパラメータを含み、高水準AMSTLフォーマットからVerilog−AMS等のより低水準の実装に翻訳するとき又は仕様データベースにアクセスすることにより作成されたパラメータファイルを通してシミュレートするときのいずれかで、パラメータの値をインスタンス化できるようにする。定義上、検証中に用いられるパラメータは、仕様データベース内のパラメータに一致する。 These parameters linked to the specification database have a unique identifier. These identifiers provide a definitive traceability opportunity for validation activity vs. specifications. Today's typical implementation of analog verification involves the engineer describing (through a graphical interface, etc.) that the specification verification test is testing a given specification. For example, validation tests and output reading names can be associated with a particular specification, but there is no mechanism that can automatically update the validation test to match a specification change. There is also no link that allows automatic tracking of the time the change vs validation test is performed. In other words, if there is no link between the specification database and the validation test, there is no opportunity to automatically determine if the validation test was done before or after the specification change. In addition, if the values in the specifications and the values in the verification test do not match, a manual mismatch may occur. The techniques described in this disclosure maintain very important parameters related to the specification in the specification database, the high-level validation test contains parameters uniquely identified from that database, and the high-level AMSTR format Verilog- Allow instantiation of parameter values either when translating into a lower level implementation such as AMS or when simulating through a parameter file created by accessing the specification database. By definition, the parameters used during validation match the parameters in the specification database.

ネットリストは、
1)コンポーネント(例えば、トランジスタ、抵抗器、コンデンサ、挙動モデル、AMST、デジタルゲート)の記述及び設計を構成するコンポーネントの属性(例えば、PMOS2はW=1umを有する)、
2)設計の接続性(例えば、PMOS1のドレインはNMOS2のゲートへの接続である)、
3)特定のシミュレーションタスクに対する設計の階層構造の構成(例えば、PLL1はモデルとして表現され、LDO3はトランジスタレベルで表現される)、
4)シミュレーションタイプ(例えば、過渡シミュレーション)、持続時間(例えば、2ms)、許容度設定(例えば、iabstol<10e−10)、デジタルパーティションとアナログパーティションとの間のインタフェース要素の構成、及び出力信号選択を含むシミュレーションタスクの構成、
5)検証活動に関する任意の信号又は要素の予測性能値、信号遷移、信号形状、デューティサイクル等の検証データベース内の任意の情報
を含むがこれらに限定されない、検証プロジェクト及びシミュレーションタスクに関する情報を含む1つ又は複数のデータベースの表現である。
Netlist
1) Component attributes that make up the description and design of components (eg, transistors, resistors, capacitors, behavior models, AMST, digital gates) (eg, ProLiant 2 has W = 1um),
2) Design connectivity (eg, the drain of epitaxial 1 is the connection to the gate of NMOS 2),
3) Hierarchical configuration of the design for a particular simulation task (eg, PLL1 is represented as a model and LDO3 is represented at the transistor level),
4) Simulation type (eg, transient simulation), duration (eg, 2 ms), tolerance setting (eg, iabstal <10e-10), configuration of interface elements between digital and analog partitions, and output signal selection. Configuration of simulation tasks, including
5) Includes information about verification projects and simulation tasks, including but not limited to any information in the verification database such as predicted performance values, signal transitions, signal shapes, duty cycles, etc. of any signal or element related to verification activity 1 A representation of one or more databases.

ネットリストはシミュレーションへの入力である。シミュレーションの目的は、ネットリストにおいて指定される刺激条件及び精度基準下で、ネットリストに記述される回路の挙動を予測することである。シミュレーションは集積回路(IC)設計の必須部分であり、その理由は、a)IC設計のためのフォトマスクは非常に高価であり、b)ICの製造は長時間を要し、c)IC内部の信号を調べることは極めて困難であり、d)現代のIC設計のブレッドボーディングは非実用的であるためである。シミュレーションはシミュレータを用いて実行される。高水準では、集積回路をシミュレートする手法が3つある:SPICEレベルシミュレーション、デジタルレベルシミュレーション、及び混合モードシミュレーション。SPICEレベルシミュレータは、ネットリストを、陰的積分法、ニュートン法、及びスパース行列技法を用いて解かれる連立非線形微分代数方程式へと縮小する。SPICEレベルシミュレータは、1組の絶対的許容度又は相対的許容度のもとで、電荷を保存し、キルヒホッフの電流法則及びキルヒホッフの電圧法則を満たす。デジタルシミュレータは、ネットリストを、離散的なイベントによってトリガされる1組のブール関数へと縮小する。デジタルシミュレータは、電荷を保存せず、キルヒホッフの電流法則及びキルヒホッフの電圧法則を満たさない。しかし、デジタルシミュレータは、はるかに大規模な回路をより高い抽象度レベルでシミュレートすることができる。混合モード(AMS)シミュレーションは、SPICEレベルシミュレータをデジタルシミュレータと組み合わせる。このタイプのシミュレーションでは、SPICEレベルシミュレータを用いて設計の一部をシミュレートし、SPICEレベルパーティション内のコンポーネントのネット電圧及び端子電流を予測し、一方で、デジタルシミュレータを用いて、デジタルパーティション内のコンポーネントのデジタル出力を予測する。混合モードシミュレーションでは、SPICEレベルパーティション及びデジタルパーティションはインタフェース要素を用いて接続され、インタフェース要素は、基本的レベルでは、(SPICEパーティションからデジタルパーティションへと向かう信号については)理想化された1ビットアナログ−デジタルコンバータであり、(デジタルパーティションからSPICEパーティションへと向かう信号については)1ビットデジタル−アナログコンバータである。 The netlist is the input to the simulation. The purpose of the simulation is to predict the behavior of the circuits described in the netlist under the stimulus conditions and accuracy criteria specified in the netlist. Simulation is an essential part of integrated circuit (IC) design, because a) photomasks for IC design are very expensive, b) IC manufacturing takes a long time, and c) inside the IC. It is extremely difficult to examine the signal of d) because the breadboarding of modern IC design is impractical. The simulation is performed using a simulator. At high levels, there are three methods of simulating integrated circuits: SPICE level simulation, digital level simulation, and mixed mode simulation. The SPICE level simulator reduces the netlist to simultaneous nonlinear differential algebraic equations that can be solved using implicit integration, Newton's, and sparse matrix techniques. The SPICE level simulator stores charges under a set of absolute or relative tolerances and satisfies Kirchhoff's current law and Kirchhoff's voltage law. The digital simulator shrinks the netlist into a set of Boolean functions triggered by discrete events. Digital simulators do not store charges and do not satisfy Kirchhoff's current law and Kirchhoff's voltage law. However, digital simulators can simulate much larger circuits at higher levels of abstraction. Mixed mode (AMS) simulation combines a SPICE level simulator with a digital simulator. In this type of simulation, a SPICE level simulator is used to simulate part of the design to predict the net voltage and terminal current of the components in the SPICE level partition, while a digital simulator is used in the digital partition. Predict the digital output of the component. In a mixed mode simulation, the SPICE level partition and the digital partition are connected using an interface element, and the interface element is an idealized 1-bit analog (for the signal going from the SPICE partition to the digital partition) at the basic level. It is a digital converter, a 1-bit digital-to-analog converter (for signals going from the digital partition to the SPICE partition).

シミュレーションは以下の出力を生成することができる:
1)ネット電圧及び端子電流の連続時間/連続値波形;
2)論理ネット出力の離散時間/離散値デジタル波形;
3)ネットリストに含まれていた任意のAMSTモジュールを含む任意の挙動モデルによって書かれた任意のデータ;
4)主張違反メッセージ;
5)主張測定値;並びに
5)モデル挙動についてのデバッグ情報、回路収束困難度等。
The simulation can produce the following output:
1) Continuous time / continuous value waveform of net voltage and terminal current;
2) Discrete time / discrete value digital waveform of logical net output;
3) Any data written by any behavioral model, including any AMST module included in the netlist;
4) Claim violation message;
5) Claimed measurements; and 5) Debugging information about model behavior, circuit convergence difficulty, etc.

シミュレーションからの出力は、1つ又は複数のデータベースに記憶される。これらの出力は、続けて、回路の安定性を評価するのに用いられる。このプロセスは手動であってもよい。設計者は、例えば、波形をグラフィカル波形ビューワでレビューすることができる。このプロセスは自動化されてもよい。ソフトウェアプログラムは波形結果及びAMST出力をプログラムに従って解析して、回路シミュレーションにおいて満足された1組の設計目的及び1組の失敗した設計目的を要約するスペックコンプライアンス行列を構築することができる。これらの仕様測定値は、仕様データベース内の特定の測定条件又は刺激条件について記述される特定の仕様にリンクすることができるため、検証プロセスからの結果は所望の仕様に直接リンクすることができる。 The output from the simulation is stored in one or more databases. These outputs are subsequently used to evaluate the stability of the circuit. This process may be manual. The designer can, for example, review the waveform with a graphical waveform viewer. This process may be automated. The software program can analyze the waveform results and AMST output according to the program to build a spec compliance matrix summarizing a set of satisfied design objectives and a set of failed design objectives in the circuit simulation. Since these specification measurements can be linked to specific specifications described for specific measurement or stimulus conditions in the specification database, the results from the verification process can be linked directly to the desired specifications.

間接分岐貢献ステートメント(IBCS)を用いて行い得ることの例。
1.任意の数のピンを有するバス(例えば、基準電流バス)をサポートする間接分岐貢献ステートメントを書く。バスのサイズが設計者によって変更されると、実際の直接分岐貢献ステートメントの数は動的に再構成される。
2.ネット名又は回路接続性からスペック限界を抽出する間接分岐貢献ステートメントを書く。これにより、供給接続性チェックの実装が可能になる。
3.以前のシミュレーション結果に基づいて、限界を設定する間接分岐貢献ステートメントを書く。
4.追加のチェックを、ブロックのトランジスタレベルの実装についてのみ追加する間接分岐貢献ステートメントを書く。
An example of what can be done using the Indirect Branch Contribution Statement (IBCS).
1. 1. Write an indirect branch contribution statement that supports a bus with an arbitrary number of pins (eg, a reference current bus). When the size of the bus is changed by the designer, the actual number of direct branch contribution statements is dynamically reconstructed.
2. 2. Write an indirect branch contribution statement that extracts the spec limits from the net name or circuit connectivity. This makes it possible to implement a supply connectivity check.
3. 3. Write an indirect branch contribution statement that sets limits based on the results of previous simulations.
4. Write an indirect branch contribution statement that adds additional checks only for the transistor-level implementation of the block.

これらのケースのそれぞれにおいて、間接分岐貢献ステートメントを構成するコードは、言語標準と互換性のあるVerilog−A/AMSステートメントを生成する。 In each of these cases, the code that makes up the indirect branch contribution statement produces a Verilog-A / AMS statement that is compatible with the language standard.

したがって、開示される検証コマンドの翻訳のシステム及び方法は、以下の課題のうち1つ又は複数を解決し得る:プログラミング時間の短縮を通してコンピュータ及び人的資源のより効率的な使用を可能にすること、市場に出すまでのタイムラグを短縮すること、及び/又はより焦点を絞ったより完全な検証確認を保証すること。 Therefore, the disclosed validation command translation systems and methods may solve one or more of the following challenges: enabling more efficient use of computer and human resources through reduced programming time. To reduce the time lag to market and / or to ensure a more focused and more complete verification confirmation.

図1のコンピュータシステムは、本開示を実施し得る、例示的なコンピュータシステム100のシステムアーキテクチャを示す。図1の例示的なコンピュータシステムは、説明のためだけのものである。本説明では、パーソナルコンピュータ等の特定のコンピュータシステムを記述する際に一般的に用いられる用語を参照し得るが、本説明及び本概念は、図1には類似しないアーキテクチャを有するシステムを含め、他のシステムにも同等に当てはまる。 The computer system of FIG. 1 illustrates the system architecture of an exemplary computer system 100 that may implement the present disclosure. The exemplary computer system of FIG. 1 is for illustration purposes only. In this description, terms commonly used when describing a specific computer system such as a personal computer can be referred to, but this description and this concept include systems having an architecture not similar to FIG. The same applies to the system of.

コンピュータシステム100は、典型的には、1つ又は複数のマイクロプロセッサを用いて実装し得る中央演算処理装置(CPU)110と、情報の一時的記憶のためのランダムアクセスメモリ(RAM)112と、情報の永続的記憶のための読み出し専用メモリ(ROM)114とを含む。RAMを制御するためにメモリコントローラ116が提供される。バス118は、コンピュータシステムのコンポーネントを相互接続する。バスを制御するために、バスコントローラ120が提供される。システムのコンポーネントからの様々な割り込み信号を受け取って処理するために、割り込みコントローラ122が用いられる。フラッシュ124、DVD(登録商標)126、又はハードディスク128、例えばソリッドステートドライブにより大容量記憶を提供し得る。データ及びソフトウェアは、フラッシュドライブ及びDVD等のリムーバブルメディアを介してコンピュータシステムと交換し得る。フラッシュドライブは、ユニバーサルシリアルバス(USB)ドライブ130に挿入可能であり、ユニバーサルシリアルバス(USB)ドライブ130はコントローラ132によってバスに接続される。同様に、DVDはDVDドライブ134に挿入可能であり、DVDドライブ134はコントローラ136によってバスに接続される。ハードディスクは固定ディスクドライブ138の一部であり、固定ディスクドライブ138はコントローラ140によってバスに接続される。 The computer system 100 typically includes a central processing unit (CPU) 110 that can be implemented using one or more microprocessors, a random access memory (RAM) 112 for temporary storage of information, and more. Includes a read-only memory (ROM) 114 for persistent storage of information. A memory controller 116 is provided to control the RAM. Bus 118 interconnects the components of a computer system. A bus controller 120 is provided to control the bus. An interrupt controller 122 is used to receive and process various interrupt signals from system components. Mass storage may be provided by flash 124, DVD® 126, or hard disk 128, such as a solid state drive. Data and software can be exchanged with computer systems via removable media such as flash drives and DVDs. The flash drive can be inserted into the universal serial bus (USB) drive 130, and the universal serial bus (USB) drive 130 is connected to the bus by the controller 132. Similarly, the DVD can be inserted into the DVD drive 134, which is connected to the bus by the controller 136. The hard disk is part of the fixed disk drive 138, which is connected to the bus by the controller 140.

コンピュータシステムに対するユーザ入力は、幾つかのデバイスによって提供可能である。例えば、キーボード142及びマウス144がコントローラ146によってバスに接続される。オーディオ変換器148は、マイクロホン及びスピーカとして機能し得、図示のようにオーディオコントローラ150によってバスに接続される。ペン及び/又はタブレット等の他の入力デバイスが、バス並びに適切なコントローラ及びソフトウェアに接続されてもよい。システムRAMへの直接メモリアクセスを行うために、DMAコントローラ152が提供される。 User input to a computer system can be provided by several devices. For example, the keyboard 142 and the mouse 144 are connected to the bus by the controller 146. The audio converter 148 can function as a microphone and speaker and is connected to the bus by the audio controller 150 as shown. Other input devices such as pens and / or tablets may be connected to the bus and suitable controllers and software. A DMA controller 152 is provided for direct memory access to the system RAM.

ビデオディスプレイ156を制御するビデオサブシステム154によって、視覚的表示が生成される。コンピュータシステムは通信アダプタ158も含み、通信アダプタ158は、概略的にバス160及びネットワーク162によって示されるローカルエリアネットワーク(LAN)若しくはワイドエリアネットワーク(WAN)又は他の適したネットワークにシステムを相互接続できるようにする。 A visual display is generated by the video subsystem 154 that controls the video display 156. The computer system also includes a communication adapter 158, which can interconnect the system to a local area network (LAN) or wide area network (WAN) or other suitable network, roughly represented by bus 160 and network 162. To do so.

コンピュータシステムの動作は一般に、少数の例を挙げれば、Microsoft Corporationから入手可能なWindows(登録商標)及びWindows 7オペレーティングシステム、Unix(登録商標)、Linux(登録商標)、又はApple OS X(登録商標)オペレーティングシステム等のオペレーティングシステムによって制御され調整される。オペレーティングシステムは、システム資源の割り振りを制御し、特に処理のスケジューリング、メモリの管理、ネットワーキング、及びI/Oサービス等のタスクを実行する。 The behavior of computer systems is generally the Windows® and Windows 7 operating systems, Windows®, Linux®, or Apple OS X® (registered trademarks) available from Microsoft Corporation, to name a few. ) It is controlled and adjusted by the operating system such as the operating system. The operating system controls the allocation of system resources and specifically performs tasks such as processing scheduling, memory management, networking, and I / O services.

コンピュータシステム図2はシステム200を示し、システム200では、コンピュータユーザ210はネットワーク212に接続され、ネットワーク212はクラウド214及び計算ファーム216に接続される。 Computer system FIG. 2 shows system 200, in which computer user 210 is connected to network 212 and network 212 is connected to cloud 214 and compute farm 216.

低電圧損失(LDO)300回路の概略例を図3に示す。LDOは増幅器A1を有し、増幅器A1は、反転入力(「−入力」)、非反転入力(「+入力」)、出力、正電圧入力「+V」、及び負電圧入力「−V」を有する。LDO回路は、電圧入力Vin及び電圧出力Voutを有する。LDOは、電力出力ブロックQ1、Q2、及びR2を有する。LDOフィードバック回路は、R3、R4、D1及びR1で構成される。増幅器A1はシンボルと呼ばれ、要素D1、R1、R2、R3、R4、C1、C2、Q1、及びQ2はプリミティブと呼ばれる。 A schematic example of a low voltage loss (LDO) 300 circuit is shown in FIG. The LDO has an amplifier A1, which has an inverting input (“-input”), a non-inverting input (“+ input”), an output, a positive voltage input “+ V”, and a negative voltage input “-V”. .. The LDO circuit has a voltage input Vin and a voltage output Vout. The LDO has power output blocks Q1, Q2, and R2. The LDO feedback circuit is composed of R3, R4, D1 and R1. The amplifier A1 is called a symbol, and the elements D1, R1, R2, R3, R4, C1, C2, Q1 and Q2 are called primitives.

増幅器A1 400回路の概略例を図4に示す。増幅器のシンボルは、トランジスタQ3、Q4、Q5、Q6、Q7、及びQ8と、抵抗器R5とで構成される。増幅器A1は反転入力(「−入力」)、非反転入力(「+入力」)、出力、正電圧入力「+V」、及び負電圧入力「−V」を有する。 A schematic example of the amplifier A1 400 circuit is shown in FIG. The symbol of the amplifier is composed of transistors Q3, Q4, Q5, Q6, Q7, and Q8, and a resistor R5. The amplifier A1 has an inverting input (“− input”), a non-inverting input (“+ input”), an output, a positive voltage input “+ V”, and a negative voltage input “−V”.

図5は、増幅器A1 510のテストベンチ500を示す。テストベンチは、接続されたデバイスに実行される、入力、出力、及びテスト条件等の具体的な構成である。テストベンチは、反転入力512、非反転入力514、正電源入力516、負電源入力518、出力520を有する。テストベンチは、関連付けられた接続、電源供給、IO等を有し、これらはテストベンチコラテラルと呼ばれる。回路の周縁部分は、検証ハーネスと呼ばれる。ピン出力及び検証ハーネスの動作は、テストされる回路に整合する必要がある。 FIG. 5 shows the test bench 500 of the amplifier A1 510. The test bench is a concrete configuration of inputs, outputs, test conditions, etc. executed on the connected device. The test bench has an inverting input 512, a non-inverting input 514, a positive power input 516, a negative power input 518, and an output 520. The test bench has associated connections, power supplies, IOs, etc., which are referred to as test bench collateral. The peripheral part of the circuit is called the verification harness. The pin output and verification harness operation must match the circuit being tested.

図6は、テスト中のデバイス(DUT)を伴うテストベンチの一般的な階層構造の例600を示す。階層構造はレベルA、B、C及びデバイスに従って並びにインスタンス1、2、及び3に従って配置される。接続線は、特定の検証で階層構造を通してどのモデル同士が接続されているかを示す。レベル及びインスタンス内で、複数のビュータイプが存在可能である。これらの例は、幾つかの可能な階層構造構成を示し、事例及びビュー又はビュータイプの限定を意図しない。 FIG. 6 shows an example 600 of a typical hierarchical structure of a test bench with a device under test (DUT). The hierarchy is arranged according to levels A, B, C and devices and according to instances 1, 2, and 3. Connection lines indicate which models are connected through a hierarchical structure in a particular validation. Multiple view types can exist within a level and instance. These examples show some possible hierarchical structures and are not intended to limit cases and views or view types.

集積回路設計階層構造は、階層構造表現を利用した集積回路設計の表現である。この表現により、トランジスタ、抵抗器、コンデンサ、及びデバイスを接続する金属線等の数百万個のコンポーネントを含み得る複雑な設計のより効率的な作成が可能になる。設計プロセスの任意の時点において用いられる設計階層構造表現は、実行されている設計ステップ及びアナログ、デジタル、又はメモリ等の設計機能のタイプに基づいて様々であり得る。 The integrated circuit design hierarchical structure is an expression of integrated circuit design using the hierarchical structure representation. This representation allows for the more efficient creation of complex designs that can contain millions of components such as transistors, resistors, capacitors, and metal wires connecting devices. The design hierarchical representation used at any point in the design process can vary based on the design steps being performed and the type of design function, such as analog, digital, or memory.

設計を製造すべき場合、表現をマッピングし得るように設計のレイアウトが作成される。このマッピングにより、マスクセットの個々のレベルでパターンを作成して、設計製造を可能にすることができる。一般に、レイアウト表現を作成する設計フローは、デジタル機能ブロック及びサブシステムと比べて、アナログでは非常に異なる。 If the design should be manufactured, the layout of the design is created so that the representation can be mapped. This mapping allows patterns to be created at the individual levels of the mask set to enable design and manufacture. In general, the design flow for creating layout representations is very different for analog compared to digital functional blocks and subsystems.

設計プロセスの早期では、設計の大部分は、初めて設計されいかなる既存のレイアウト表現も持たずに存在し得る。設計の他の部分は既に証明されていることがあり、これらはより高レベルの抽象度において表現し得、又は組み合わせでレイアウト表現を含み得る。 Early in the design process, most of the design is designed for the first time and can exist without any existing layout representation. Other parts of the design may have already been proven and these may be represented at a higher level of abstraction or may include layout representations in combination.

本明細書においてビューと呼ばれる幾つかの一般的なタイプの設計表現は、様々なビュータイプを含み得る。概略ビュータイプは、線又はネットで示される接続を有するブロック又はコンポーネントと、ピンを通した階層構造の他のレベルへの接続とのピクチャである。Spiceビュータイプは、コンポーネント及び関連付けられたパラメータの表現であり、場合によっては、spiceネットリストへとインスタンス化される特定のデバイスモデルを含む。LVSExtractは、レイアウトビューを解析し、個別のコンポーネント及び接続性をリバースエンジニアリングするツールによって作成されるビュータイプである。このタイプのビューのバリエーションは、物理的レイアウトから生成される、設計者によって描かれなかった抽出された寄生的コンポーネントを含むこともできる。レイアウトビュータイプは、設計のその部分の配線を含む特定の幾何学的配置の表現である。Verilog(商標)ビュータイプは、標準化されたVerilog(商標)フォーマットのテキストファイルである。Verilog−A(商標)ビュータイプは、標準化されたVerilog−A(商標)文法のテキストファイルである。Verilog−AMS(商標)ビュータイプは、標準化されたVerilog−AMS(商標)文法のテキストファイルである。ビュータイプの名称は、電子的設計自動化ツールプロバイダに応じて異なり得るが、その例としてSpectreHDL及びHDL−Aが挙げられる。 Some common types of design representations, referred to herein as views, may include various view types. A schematic view type is a picture of a block or component with a connection represented by a line or net and a connection to another level of hierarchical structure through pins. A Spice view type is a representation of a component and associated parameters, optionally including a particular device model that is instantiated into a spice netlist. LVSExtract is a view type created by tools that analyze layout views and reverse engineer individual components and connectivity. Variations on this type of view can also include extracted parasitic components that were not drawn by the designer, generated from the physical layout. A layout view type is a representation of a particular geometric arrangement that includes wiring for that part of the design. The Verilog ™ view type is a standardized Verilog ™ format text file. The Verilog-A ™ view type is a standardized Verilog-A ™ grammar text file. The Verilog-AMS ™ view type is a standardized Verilog-AMS ™ grammar text file. The name of the view type may vary depending on the electronic design automation tool provider, and examples thereof include Spectre HDL and HDL-A.

他のタイプのビュータイプは、階層構造の組織化及び可読性を支援し得る。一例として、回路図入力システム等のグラフィック設計ツールは、配置されたグラフィックにシンボルビュータイプを使用し得る。シンボルは、階層構造を通してインスタンスを接続するピンと、ブロックの機能を示す図面とを含み得る。例として、演算増幅器、基本デジタルゲート、トランジスタ、及び抵抗器等の共通シンボルが挙げられる。 Other types of view types can support hierarchical organization and readability. As an example, graphic design tools such as schematic capture systems may use the symbol view type for the placed graphics. Symbols can include pins that connect instances through a hierarchical structure and drawings that show the functionality of the block. Examples include common symbols such as operational amplifiers, basic digital gates, transistors, and resistors.

記述の複雑性にさらに加えて、設計階層構造のあるレベルにおける所与のブロックは、同じビュータイプの複数のビューを含み得る。一例は、所与のブロックの様々なVerilog(商標)表現であり、例えば、レイアウトに基づく注釈付きタイミングを有する表現、推定タイミングを有する表現、タイミングを有さない表現、又はゲートレベル若しくはレジスタ転送レベル(RTL)等の異なるレベルの設計表現である。同様に、アナログビューも多数の回路図ビューを有し得る:例えば、最終トランジスタレベル設計にマッピングされるビュー、より高レベルのモデリングのための挙動ブロックの配置を含むビュー、レイアウトからの寄生的要素を含み得るビュー、混合信号シミュレーション用にアナログブロックとデジタルブロックとの間にインタフェース要素を含むビュー。また、アナログブロックの場合、同じブロックに複数のVerilog−A(商標)又はVerilog−AMS(商標)モデルビューが存在し得、ここで、モデルは異なるシミュレーション演習の目的に基づいて異なる機能性及び精度を含む。これら複数のビュー及びビュータイプは、特定のタスク又は解析に用いられる構成にマッピングされる。 In addition to the complexity of the description, a given block at some level of the design hierarchy can contain multiple views of the same view type. One example is various Verilog ™ representations of a given block, such as layout-based annotated timing representations, estimated timing representations, timingless representations, or gate level or register transfer levels. It is a design expression of a different level such as (RTL). Similarly, an analog view can have many schematic views: for example, a view that maps to a final transistor level design, a view that includes the placement of behavior blocks for higher level modeling, parasitic elements from the layout. A view that contains an interface element between the analog and digital blocks for mixed signal simulation. Also, in the case of analog blocks, there can be multiple Verilog-A ™ or Verilog-AMS ™ model views in the same block, where the models have different functionality and accuracy based on the purpose of different simulation exercises. including. These multiple views and view types are mapped to the configuration used for a particular task or analysis.

ビューの名称は往々にして、特定のビューがどのタイプの解析に有用であり得るかについてのヒントを提供するように作成される。ビューの名称は、以下に列挙されるもの等を含み得る。Schematicは、トランジスタレベル又は挙動モデル等の階層構造の何らかのレベルにおいて評価し得るブロックの配置を含む回路図ビューである。Schematic_behavioralは、挙動的要素を含む回路図ビューである。Schematic_parasiticsは、レイアウトから抽出又は推定される寄生的コンポーネントを含む回路図ビューである。Spiceは、特定のアナログシミュレータのネットリスト及びコンポーネントに実装される情報を含むspiceビューである。Behavioral_vaは、Verilog−A(商標)を評価し得るアナログシミュレータの特定のブロックをモデル化するVerilog−A(商標)フォーマットのテキストビューであり、Behavioral_vamsは、Verilog−A(商標)及びVerilogを評価し得る混合信号シミュレータの特定のブロックをモデル化するVerilog−AMS(商標)フォーマットのテキストビューである。 View names are often created to provide hints as to what type of analysis a particular view can be useful for. View names may include those listed below. Schematic is a schematic view that includes an arrangement of blocks that can be evaluated at some level of a hierarchical structure, such as a transistor level or a behavioral model. Schematic_behabialal is a schematic view that includes behavioral elements. Schematic_parasitics is a schematic view containing parasitic components extracted or deduced from the layout. A Spice is a spice view that contains information implemented in a netlist and components of a particular analog simulator. Behavioral_va is a text view in Verilog-A ™ format that models specific blocks of analog simulators that can evaluate Verilog-A ™, and Behavioral_vams evaluates Verilog-A ™ and Verilog. A text view in Verilog-AMS ™ format that models a particular block of the mixed signal simulator obtained.

図6に示す具体例では、テスト中のデバイスA1、インスタンス1を有する一般的な階層構造の例は、以下の構成に基づいて定義される:A1、インスタンス1及びB1、インスタンス1は、Schematicレベルモデルを用いてモデル化される。B2、インスタンス1は、Schematic_behavioralモデルを用いてモデル化され、C1、インスタンス1及びC2、インスタンス1は、Schematicモデルを用いてモデル化される。C1、インスタンス2及びC3、インスタンス1は、Behavioral_vaモデルを用いてモデル化される。階層構造の最下部では、デバイス1、2、及び3、インスタンス1、2、及び3が、Spiceを用いてモデル化される。 In the specific example shown in FIG. 6, an example of a general hierarchical structure having device A1 and instance 1 under test is defined based on the following configuration: A1, instance 1 and B1, and instance 1 are Schematic level. It is modeled using a model. B2, instance 1 is modeled using the Schematic_behavioral model, and C1, instance 1 and C2, instance 1 are modeled using the Schematic model. C1, instance 2 and C3, instance 1 are modeled using the Behavioral_va model. At the bottom of the hierarchy, devices 1, 2, and 3, instances 1, 2, and 3 are modeled using Spice.

図6に示す具体例では、デバイス1、インスタンス2はダミーデバイスであり、したがって、シミュレータマトリックスを変更しない。デバイス1、インスタンス2は、ダミーデバイスとして接続されるC1、インスタンス1回路図内に配置されており、したがって、シミュレータ内にスタンプされるA1、インスタンス1マトリックスの一部ではない。 In the specific example shown in FIG. 6, the device 1 and the instance 2 are dummy devices, and therefore the simulator matrix is not changed. The device 1 and the instance 2 are arranged in the C1 and instance 1 schematics connected as dummy devices and are therefore not part of the A1 and instance 1 matrix stamped in the simulator.

変更が、検証の再実行を必要とするか否かは、階層構造を通した接続によって部分的に決まる。一般的な階層構造の例でのこの具体的な例であるテスト中のデバイスA1、インスタンス1では、デバイス1、インスタンス2のSchematicビューが変更された場合、このデバイスはダミーデバイスであり、シミュレータ内にスタンプされるマトリックスを変更しないため、シミュレータを再実行する必要はない。 Whether or not the change requires a rerun of validation depends in part on the connection through the hierarchy. In the device A1 and instance 1 under test, which is a concrete example of this in a general hierarchical structure example, if the Schematic view of device 1 and instance 2 is changed, this device is a dummy device and is in the simulator. There is no need to rerun the simulator as it does not change the matrix stamped with.

図6へのビューでは、C1、インスタンス1のSchematicビューは、シミュレータモデルの構成の一部をなし、これが変更され、変更がシミュレータマトリックスに影響を与えるのに十分なほど実体的なものである場合、テストベンチ1を再実行する必要がある。C1、インスタンス2のSchematicビューは、シミュレータモデル例の構成の一部を形成せず、したがって、これが変更された場合、テストベンチ1を再実行する必要はない。 In the view to FIG. 6, the Schematic view of C1, Instance 1 is part of the configuration of the simulator model, where it is modified and the modification is substantive enough to affect the simulator matrix. , Testbench 1 needs to be rerun. The Schematic view of C1, instance 2 does not form part of the configuration of the simulator model example and therefore does not need to rerun Test Bench 1 if it changes.

より抽象的なレベルでは、C1のSchematicビューが変更され、したがって、インスタンス1及び2内の回路図ビューが変更され、シミュレータマトリックス内にスタンプされる情報の変更に影響を与える場合、テストベンチ1を再実行する必要がある。C1のSchematicビューに対する非実体的な変更が、例えば、コメントの追加により行われ、マトリックス内のシミュレータによってスタンプされる情報に変更が行われなかった場合、この設計構成を再実行する必要はない。構成に変更が行われたか否か及びマトリックスのスタンプの影響を判断することは、必要となる検証実行の回数に大きな影響を与え得ることは明白である。 At a more abstract level, if the Schematic view of C1 is modified and therefore the schematic view in Instances 1 and 2 is modified to affect the modification of the information stamped in the simulator matrix, test bench 1 is used. Need to be re-executed. If an insubstantial change to the Schematic view of C1 is made, for example, by adding a comment and the information stamped by the simulator in the matrix is not changed, then there is no need to re-execute this design configuration. It is clear that determining whether configuration changes have been made and the impact of matrix stamping can have a significant impact on the number of validation runs required.

図7は、電力管理チップPMIC700をモデル化するために選び得る様々なモデルビューの幾つかを示す。PMIC_testbenchは、刺激及び出力を有するBehavioral_vamsレベル及びBehavioral_vaレベルを有する。PMICは、Schematicレベル及びSchematic_behavioralレベルを有する。LDO、LDOイネーブル(enable)制御、及びバッテリスーパーバイザ(battery supervisor)は、Schematicレベル、Schematic_behavioralレベル、及びBehavioral_vamsレベルにおいて定義される。電圧基準、LDOフィードバック、及びLDO比較器は、Schematicレベル及びBehavioral_vaレベルにおいて定義される。LDO増幅器は、Schematicレベル及びSchematic_parasiticsレベルにおいて定義される。挙動増幅器(Behavioral Amplifier)及び挙動的バイアス(Behavioral Bias)は、Behaviorl_vaレベルにおいて定義される。LDO制御論理は、Schematicレベル及びVerilog(商標)レベルにおいて定義される。デバイス1〜Xは、Spiceレベルにおいて定義される。 FIG. 7 shows some of the various model views that can be selected to model the power management chip PMIC700. PMIC_testbench has a Behavioral_vams level and a Behavioral_va level with stimulation and output. The PMIC has a Schematic level and a Schematic_behavioral level. LDOs, LDO enable controls, and battery supervisors are defined at the Schematic level, the Schematic_behavioral level, and the Behavioral_vams level. Voltage references, LDO feedback, and LDO comparators are defined at the Schematic and Behavioral_va levels. LDO amplifiers are defined at the Schematic level and the Schematic_parasitics level. The Behavioral Amplifier and the Behavioral Bias are defined at the Behavioral_va level. LDO control logic is defined at the Schematic and Verilog ™ levels. Devices 1-X are defined at the Spece level.

図8は、電力管理チップ800の図6に記載される電力管理チップPMICの第1のテスト階層構造を示す。この図は、Spiceプリミティブコンポーネント構成が定義される場合の階層構造の一部を示す。このモデルでは、デバイス1、インスタンス2はダミーデバイスであり、シミュレータマトリックスを変更しない。 FIG. 8 shows a first test hierarchical structure of the power management chip PMIC described in FIG. 6 of the power management chip 800. This figure shows a part of the hierarchical structure when the Spice primitive component configuration is defined. In this model, device 1 and instance 2 are dummy devices and do not change the simulator matrix.

図9は、電力管理チップ900の図7に記載される電力管理チップPMICの第2のテスト階層構造を示す。この図は、幾つかのアナログ挙動的レベルモデルと、幾つかのVerilog(商標)表現と、幾つかのSpiceプリミティブコンポーネントとを有する可能な混合構成の1つの階層構造の一部を示す。 FIG. 9 shows a second test hierarchical structure of the power management chip PMIC described in FIG. 7 of the power management chip 900. This figure shows part of one hierarchical structure of possible mixed configurations with some analog behavioral level models, some Verilog ™ representations, and some Spece primitive components.

図10は、電力管理チップ1000の図7に記載される電力管理チップPMICの第3のテスト階層構造を示す。この図は、挙動的構成が定義される場合の階層構造の一部を示す。 FIG. 10 shows a third test hierarchical structure of the power management chip PMIC described in FIG. 7 of the power management chip 1000. This figure shows a part of the hierarchical structure when the behavioral configuration is defined.

図11は、比較的大規模なシステムオンチップ(SOC)内に含まれる増幅器の幾つかの典型的な特徴を有する演算増幅器の簡単な例を示す。この簡単な例でも、混合信号設計に対する今日の検証課題の増大する複雑さを実証することができる。増幅器に入力を供給するのは単純なマルチプレクサ(mux)である。マルチプレクサへの制御信号IN_CTRLは、マルチプレクサブロック内の一連の論理ゲートへのデジタル入力信号として機能する。これらのゲートは次に、スイッチを制御して、2ペアのアナログ入力:ペア1(IN_POS_1及びIN_NEG_1)並びにペア2(IN_POS_2及びIN_NEG_2)から選択する。例えば、論理レベル「0」に等しいIN_CTRLの値は、IN_POS_1及びIN_NEG_1に接続されたスイッチを閉じることができ、一方、論理レベル「1」のIN_CTRL値は、IN_POS_2及びIN_NEG_2に接続されたスイッチを閉じることができる。次に、選択されたアナログ入力はマルチプレクサから出力される。このとき、これらの信号は増幅器入力に接続される。マルチプレクサブロックは電源供給への接続も有する。この場合、アナログ信号はブロックを通過するため、電源供給接続は、アナログ供給電圧AVDD及びGNDへのものである。 FIG. 11 shows a simple example of an operational amplifier with some typical features of an amplifier contained within a relatively large system on chip (SOC). This simple example can also demonstrate the increasing complexity of today's validation challenges for mixed signal designs. It is a simple multiplexer (mux) that supplies the input to the amplifier. The control signal IN_CTRL to the multiplexer functions as a digital input signal to a series of logic gates in the multiplexer block. These gates then control the switch to select from two pairs of analog inputs: pair 1 (IN_POS_1 and IN_NEG_1) and pair 2 (IN_POS_2 and IN_NEG_1). For example, a value of IN_CTRL equal to logic level "0" can close the switch connected to IN_POS_1 and IN_NEG_1, while an IN_CTRL value of logic level "1" closes the switch connected to IN_POS_1 and IN_NEG_1. be able to. The selected analog input is then output from the multiplexer. At this time, these signals are connected to the amplifier input. The multiplexer block also has a connection to the power supply. In this case, the power supply connection is to the analog supply voltages A VDD and GND because the analog signal passes through the block.

増幅器ブロックについても、電源供給接続は、アナログ供給電圧AVDD及びGNDへのものである。なお、複雑なSOCでは、複数の内部電源供給を有することは珍しいことではない。アナログブロックの場合でさえも、異なる電源供給レベル等の選択肢があり得る。他の場合、同じ電圧レベルを供給し得るが、1つの供給源は、給電線上の任意のノイズの影響を受けやすいことがある、極めて重要なブロックに対して使用し得る。よりノイズの多い他のブロック(典型的には、高周波スイッチング等の機能に起因する)は、同じ電圧レベルの別の供給源に接続し得る。この理由から、デジタルブロックは略常に、アナログブロックとは別個に給電される。さらに、電力削減の重要さの増大に伴い、様々な動作モード中、幾つかの電源供給はオフにし得る。その結果、設計エンジニアは、所与のブロックが、適切な時間に利用可能な供給源に接続されていることを検証する必要がある場合もある。 Also for the amplifier block, the power supply connection is to the analog supply voltages A VDD and GND. It is not uncommon for a complex SOC to have multiple internal power supplies. Even in the case of analog blocks, there may be options such as different power supply levels. In other cases, the same voltage level can be supplied, but one source can be used for critical blocks that can be sensitive to any noise on the feed line. Other blocks that are noisier (typically due to features such as high frequency switching) may be connected to different sources of the same voltage level. For this reason, digital blocks are almost always powered separately from analog blocks. Moreover, with the increasing importance of power reduction, some power supplies can be turned off during various modes of operation. As a result, design engineers may need to verify that a given block is connected to an available source at the appropriate time.

比較的大規模なチップ内の別の共通構成は、アナログ機能に必要なバイアス電流の多くを提供する共通ブロックを有することである。この例では、増幅器は1uAバイアス電流の入力を有する。別の共通選択肢は、トリム(trim)及び制御又はプログラム可能性の信号を含む。この例では、増幅器は、利得値を設定することができる2つの制御ビットGAIN_CTRL<1:0>と、利得値を僅かに調整する3ビットGAIN_TRIM<2:0>とを有する。典型的には、各デバイスがテストされ、製造プロセスのバリエーションを補償して所望の利得値を指定された値になるべく近く整合させるのに用いられる場合、トリムが実行される。この場合、GAIN_CTRLは、特定の用途に最良の利得設定を選ぶプログラム可能性特徴である。イネーブル(enable)信号は、チップが動作している間、増幅器の電源をオン又はオフに切り替えられるようにする。これらのタイプの制御は多くの場合、消費電力を最小に抑えるため、チップのクリーンな電源投入シーケンスを可能にするため、及び障害状況中に保護を提供するために提供される。 Another common configuration within a relatively large chip is to have a common block that provides much of the bias current required for analog functionality. In this example, the amplifier has an input with a 1uA bias current. Other common options include trim and control or programmable signals. In this example, the amplifier has two control bits GAIN_CTRL <1: 0> in which the gain value can be set and a 3-bit GAIN_TRIM <2: 0> in which the gain value is slightly adjusted. Trimming is typically performed when each device is tested and used to compensate for manufacturing process variations and match the desired gain value as close as possible to the specified value. In this case, GAIN_CTRL is a programmable feature that selects the best gain setting for a particular application. The enable signal allows the amplifier to be powered on or off while the chip is operating. These types of controls are often provided to minimize power consumption, allow for a clean power-on sequence of the chip, and provide protection during failure situations.

この簡単な例で、多くの検証要件例がある。これらの要件は、幾つかのカテゴリに分けることができる:
・動作機能−増幅器及びマルチプレクサはそれぞれの機能的要件を満たすか
−マルチプレクサは選択された入力信号を正しくマルチプレクサ出力に渡すか
−増幅器は期待される挙動:利得、スルーレート、入力範囲、出力範囲等を満たすか
・電源供給及びバイアス
−ブロックは適切な電源供給に接続され、正しいバイアスを受けているか
−供給源及びバイアスは、期待される時に利用可能であり、期待される範囲内で動作しているか
・制御信号
−制御信号のあらゆる設定で、正しい挙動が観測されるか
・故障状況
−ブロックピンのいずれかが許容又は期待される範囲外の様式で挙動した場合、ブロックは適宜動作するか、又はその状況は、対処が可能ではない(他の場所で阻止される)か、若しくは対処が期待できないか
In this simple example, there are many examples of verification requirements. These requirements can be divided into several categories:
-Operating function-Does the amplifier and multiplexer meet their respective functional requirements? -Does the multiplexer correctly pass the selected input signal to the multiplexer output? -The amplifier behaves as expected: gain, through rate, input range, output range, etc. Satisfies • Power supply and bias-Is the block connected to the proper power supply and is properly biased? -The source and bias are available when expected and operate within the expected range. -Whether the correct behavior is observed in all settings of the control signal-control signal-Failure status-If any of the block pins behaves in a manner outside the permissible or expected range, does the block behave appropriately? Or is the situation unmanageable (stopped elsewhere) or unpredictable?

本特許では、価値の多くは、可能性の多数の組み合わせをステップスルーするプロセスをより効率的に管理することの結果として得られる。最良の例の1つは、多数のデジタル制御又はトリム選択肢を単にステップスルーすることである。さらに、仕様データベースにリンクすることにより、設計プロセスを通して変わる要件を容易に更新、管理することができ、仕様データベース変更に基づいて、必要な場合、シミュレーションを再実行することができる。さらに、検証活動からの結果は次に、仕様データベース内で管理される要件と比較することができる。 In this patent, much of the value comes as a result of more efficient management of the process of stepping through a large number of possible combinations. One of the best examples is simply stepping through a large number of digital control or trim options. In addition, by linking to the specification database, requirements that change throughout the design process can be easily updated and managed, and simulations can be re-run if necessary based on changes in the specification database. In addition, the results from verification activities can then be compared to the requirements managed within the specification database.

比較的大規模なSOCと、このSOCに対するトップレベルテストベンチとの状況内でこの簡単な例を考える。このテストベンチは、チップの多数のテストベンチのうちの1つであり得るが、この例は、増幅器に向けて開発された検証知的財産が、トップレベルテストベンチからでもいかに活用可能であるかを示すことができる。図6に示す階層構造的概念は、テストベンチの例をいかに構築し得るかを示すように埋めることができる。この例では、図6からのA1は、チップと、システム入力、出力負荷、及び外部電源供給又はチップの他のコンポーネントを表すのに必要な全ての回路又はモデルと、ソフトウェアを介してプログラムに従って記述することができるテスト構成の部分とを含むトップレベルテストベンチを表す。この階層構造の例は、図6の図において見て取ることができる。上述のように、階層構造内の各項目は、利用可能な情報とブロックの意図される目的とに応じて多くのタイプのビューによって表すことができる。 Consider this simple example in the context of a relatively large SOC and a top-level test bench for this SOC. This test bench can be one of many test benches on the chip, but this example shows how the verification intellectual property developed for amplifiers can be leveraged from top-level test benches as well. Can be shown. The hierarchical concept shown in FIG. 6 can be embedded to show how the test bench example can be constructed. In this example, A1 from FIG. 6 is programmed through software with the chip and all the circuits or models needed to represent the system inputs, output loads, and other components of the external power supply or chip. Represents a top-level test bench that includes parts of the test configuration that can be. An example of this hierarchical structure can be seen in the figure of FIG. As mentioned above, each item in the hierarchy can be represented by many types of views, depending on the information available and the intended purpose of the block.

図6のレベル「B」に相関する、この例における階層構造の第2のレベルは、このトップレベルテストベンチ内に配置された全ての要素を含む。最初の要素はチップ自体である。この例では、チップはセルB1として識別される。B2は、チップへのシステム入力を表す回路又はモデルを含むセルであることができる。B3は、システム提供電源供給及びチップから見たシステム出力負荷を表すモデル又は回路を含むセルであることができる。この例では、B4は、チップのピンに直接又は他のブロックに接続し、任意のブロック内の任意のパラメータ化された機能に値を提供し、及び/又はシミュレーション中に特定の性能をモニタし測定するために、ソフトウェアに書かれたブロックである。この簡単な例には、増幅器ブロックの例の比較的低いレベルでの信号の作成に繋がる信号のみが含まれる。 The second level of the hierarchical structure in this example, which correlates to level "B" in FIG. 6, includes all elements placed within this top level test bench. The first element is the chip itself. In this example, the chip is identified as cell B1. B2 can be a cell containing a circuit or model that represents a system input to the chip. B3 can be a cell containing a model or circuit that represents the system output load as seen from the system-provided power supply and chip. In this example, the B4 connects directly to the pins of the chip or to other blocks, provides values for any parameterized function within any block, and / or monitors specific performance during simulation. A block written in software for measurement. This simple example includes only the signals that lead to the production of the signal at the relatively low level of the amplifier block example.

ソフトウェアで捕捉可能なこのブロックB4は、典型的には、集積回路設計をターゲットとした高水準言語(SystemVerilog、Verilog、Verilog−AMS、Verilog−A、SystemC、VHDL等)を用いるが、C、C++、TCL、PERL等のより汎用性の高い言語及びスクリプトを活用してもよい。ソフトウェア部分は、刺激を生成し、既存の回路若しくはシステムブロックにおけるパラメータの設計値を定義し、又はシミュレーション全体を通して性能を測定しモニタし得る。例えば、SystemVerilogのユニバーサル検証方法論(UVM)は、スコアボード関数を定義しモニタすると共に刺激を定義するための共通の構造を含む。デジタル検証方法論はまた、特定の機能又はプロトコルをターゲットとした多くの特定の検証知的財産(VIP)も含む。インスタンス化される場合、ユニバーサルシリアルバス(USB)、シリアル周辺機器インタフェース(SPI)バス等の定義された通信標準規格は、検証プロセス中、インタフェースを通してデータを供給すると共に、インタフェースがプロトコル規格に整合していることをテストし確認するために活用することができる特定の検証IPを有することになる。この例では、デジタルトリム及び制御は、SPIインタフェースを通して又はチップ自体によってプログラムされると仮定する。 This software-capturable block B4 typically uses high-level languages targeting integrated circuit design (SystemVerilog, Verilog, Verilog-AMS, Verilog-A, SystemC, VHDL, etc.), but C, C ++. , TCL, PERL, and other more versatile languages and scripts may be utilized. The software part can generate stimuli, define design values for parameters in existing circuits or system blocks, or measure and monitor performance throughout the simulation. For example, SystemVerilog's Universal Verification Methodology (UVM) includes a common structure for defining and monitoring scoreboard functions as well as defining stimuli. Digital verification methodologies also include many specific verification intellectual property (VIPs) targeting specific features or protocols. When instantiated, defined communication standards such as the Universal Serial Bus (USB) and Serial Peripheral Interface (SPI) Bus supply data through the interface during the verification process and the interface conforms to the protocol standard. You will have a specific verification IP that you can use to test and verify that you are doing so. In this example, digital trim and control are assumed to be programmed through the SPI interface or by the chip itself.

図12のテストベンチでは、外部電源供給VDD_EXTが、TOP_AMST内のVerilog−Aコードによって生成されている。この場合、VDD_EXTは、SUPPLIES_AND_OUTPUTSブロックへの入力である。このブロックは次に、VDDを出力し、VDDは主外部電源供給としてSOCに接続される。入力については、INPUTSブロック内でシステム入力が生成され、次に、SOCに接続する前にTOP_AMSTブロックを通過する。入力がテストハーネスを通過することにより、シミュレーション全体を通して入力信号の電圧及び電流の両方をモニタ(又は他の計算のパラメータとして使用)できるようになる。同様に、SOCからのVOUTは、SUPPLIES_AND_OUTPUTSブロックに入る前にTOP_AMSTを通過する。最後に、モニタリングのために、SUPPLIES_AND_OUTPUTSブロックからTOP_AMSTにVOUT_EXTが供給される。どの信号がAMSTテストハーネスブロックを通過すべきかの決定は、システムと、システム全体を適宜表すためにチップ周辺に必要とされる回路/モデルの量とに強く依存する。究極的には、それらの決定は、システム設計及び検証計画によって決まる。 In the test bench of FIG. 12, the external power supply VDD_EXT is generated by the Verilog-A code in TOP_AMST. In this case, VDD_EXT is an input to the SUPPLIES_AND_OUTPUTS block. This block then outputs VDD, which is connected to the SOC as a main external power supply. For inputs, system inputs are generated within the INPUTS block and then pass through the TOP_AMST block before connecting to the SOC. As the input passes through the test harness, both the voltage and current of the input signal can be monitored (or used as parameters for other calculations) throughout the simulation. Similarly, the VOUT from the SOC passes through TOP_AMST before entering the SUPPLIES_AND_OUTPUTS block. Finally, VOUT_EXT is supplied from the SUPPLIES_AND_OUTPUTS block to TOP_AMST for monitoring. Determining which signal should pass through the AMST test harness block depends strongly on the system and the amount of circuit / model required around the chip to properly represent the entire system. Ultimately, those decisions depend on the system design and verification plan.

図13では、階層構造の比較的低いレベルの信号は、それらの信号がトップレベルのピンに運ばれない限りアクセスすることができない。チップを表すインスタンスB1の階層構造をさらに考える。この例では、チップの階層構造の次のレベルは、C1 SOC_COREと、C2 SOC_PAD_RINGとを含む。次に、C1を下り、上からD1 AMP_COREサブシステム、D2 PWR_MGMT(チップの電力管理機能)、及びD3 DIG_CTRLを見る。 In FIG. 13, relatively low level signals of the hierarchical structure are inaccessible unless they are carried to the top level pins. Further consider the hierarchical structure of instance B1 representing the chip. In this example, the next level of chip hierarchy includes C1 SOC_CORE and C2 SOC_PAD_RING. Next, go down C1 and look at the D1 AMP_CORE subsystem, D2 PWR_MGMT (chip power management function), and D3 DIG_CTRL from the top.

図15では、amp_coreサブシステム内にさらに下り、サブシステム要素:E1 mux、E2 amp、及びこのサブシステムの検証IPを含むVerilogAMSブロックであるE3 AMP_AMSTを示す。 FIG. 15 further descends into the amp_core subsystem and shows the E3 AMP_AMST, a Verilog AMS block containing subsystem elements: E1 mux, E2 amp, and verification IP for this subsystem.

デジタルトリムビットを有する簡単なバンドギャップの場合を考える。回路の目的は、環境(例えば、温度)変化及びプロセス(例えば、酸化物の厚さ)変化にわたり予測可能な出力電圧を生成することである。デジタルトリムビットは、予測可能なステップサイズを有する出力値の範囲を提供する。このバンドギャップのAMSTは、電源供給、負荷コンポーネント、及びデジタルトリム値を含むバンドギャップのテスト回路全体を定義する必要がある。最初に、簡単な供給源の定義を見てみる:

# 供給開始ランプ時刻
my $glSupplyRampStartObj = $glAMSTObj->create_variable("glSupplyRampStartDbl", 50e-9);
# 供給終了ランプ時刻
my $glSupplyRampEndObj = $glAMSTObj->create_variable("glSupplyRampEndDbl", 100e-9);
# 供給電圧値
my $glAvddValObj = $glAMSTObj->create_variable("glAvddValDbl", 5);
# 供給のPWLを生成
$glAMSTObj->create_vpwl(
"arP0" => "AVDD",
"arP1" => "AVSS",
"arPwlRef" => [
0, 0,
$glSupplyRampStartObj, 0,
$glSupplyRampEndObj,
$glAvddValObj
]
);
Consider the case of a simple bandgap with a digital trim bit. The purpose of the circuit is to generate a predictable output voltage over environmental (eg, temperature) and process (eg, oxide thickness) changes. Digital trim bits provide a range of output values with a predictable step size. This bandgap AMST needs to define the entire bandgap test circuit, including power supply, load components, and digital trim values. First, let's take a look at a simple source definition:

# Supply start lamp time
my $ glSupplyRampStartObj = $ glAMSTObj-> create_variable ("glSupplyRampStartDbl", 50e-9);
# Supply end lamp time
my $ glSupplyRampEndObj = $ glAMSTObj-> create_variable ("glSupplyRampEndDbl", 100e-9);
# Supply voltage value
my $ glAvddValObj = $ glAMSTObj-> create_variable ("glAvddValDbl", 5);
# Generate supply PWL
$ glAMSTObj-> create_vpwl (
"arP0"=>"AVDD",
"arP1"=>"AVSS",
"arPwlRef"=> [
0, 0,
$ glSupplyRampStartObj, 0,
$ glSupplyRampEndObj,
$ glAvddValObj
]
);

この例は、t=0において0V、t=50nsにおいて0V、t=100nsにおいて5Vである簡単な区分的線形供給を生成する。全ての変数がパラメータ化されていることに注意する。プログラムは、このAMSTファイルを読み込み、次に変数及びそのタイプのリストを抽出することができる。この能力により、ユーザは、これらの値を変更/スイープし、同じグループのAMSTテストベンチから様々なテストベクトルを構築することができる。参照により、追加の回路コンポーネントをインスタンス化することも可能である。例えば、以下のコードはバンドギャップにVerilog−A負荷抵抗器を追加する:

# プログラム的に負荷抵抗器を定義
$glAMSTObj->add_module_instance(
"arModuleName" => "resistor",
"arModuleFilename" => "behav_resistor.va",
"arParameterValueMap" => {
"r" => $glOutputLoadObj
},
"arNodeNetMap" => {
"IN_NODE0" => "VBG",
"OUT_NODE1" => "AVSS",
}
);
This example produces a simple piecewise linear supply of 0V at t = 0, 0V at t = 50ns, and 5V at t = 100ns. Note that all variables are parameterized. The program can read this AMST file and then extract a list of variables and their types. This ability allows the user to modify / sweep these values and build various test vectors from the same group of AMST test benches. It is also possible to instantiate additional circuit components by reference. For example, the code below adds a Verilog-A load resistor to the bandgap:

# Programmatically define load resistors
$ glAMSTObj-> add_module_instance (
"arModuleName"=>"resistor",
"arModuleFilename"=>"behav_resistor.va",
"arParameterValueMap"=> {
"r"=> $ glOutputLoadObj
},
"arNodeNetMap"=> {
"IN_NODE0"=>"VBG",
"OUT_NODE1"=>"AVSS",
}
);

トリムビットの可能な組み合わせ全てについてバンドギャップをテストする必要がある。以下の文法は、全てのトリムビットの全因子実験をセットアップする:

# デジタル入力の可能な組み合わせを全てテスト
$glAMSTObj->create_voltage_full_factorial(
"arFactDelay" => $glSupplyRampEndObj,
"arFactStateValRef" => [0, $glAvddValObj],
"arFactStateDurRef" => [0.50, 0.50],
"arFactChgTimeRef" => [2e-9, 2e-9],
"arFactMinPeriod" => 10e-6,
"arFactSignalRef" => [
{ "arP0"=>"DTRIM[0:2]",
"arP1"=>"AVSS"}
]
);
gets expanded into:

module amst(...)
output [2:0] DTRIM;
electrical [2:0] DTRIM;
output AVSS;
electrical AVSS;
parameter real glSupplyRampEndDbl = 1e-07;
parameter real glAvddValDbl = 5;
real loDtrimVal2loAvssValBit0;
real loDtrimVal2loAvssValBit1;
real loDtrimVal2loAvssValBit2;
analog begin
@ (initial_step) begin
loDtrimVal2loAvssValBit0 = 0;
loDtrimVal2loAvssValBit1 = 0;
loDtrimVal2loAvssValBit2 = 0;
end
...
// DTRIM[0]
@(timer(glSupplyRampEndDbl, 1e-05, 1p))
loDtrimVal2loAvssValBit0 = 0;
@(timer((glSupplyRampEndDbl + 0.5 * 1e-05), 1e-05, 1p))
loDtrimVal2loAvssValBit0 = glAvddValDbl;
V(DTRIM[0], AVSS) <+ transition(loDtrimVal2loAvssValBit0, 0, 2e-09, 2e-09);
// DTRIM[1]
@(timer(glSupplyRampEndDbl, (1e-05 * 2), 1p))
loDtrimVal2loAvssValBit1 = 0;
@(timer((glSupplyRampEndDbl + (0.5 * 1e-05 * 2)), (1e-05 * 2), 1p))
loDtrimVal2loAvssValBit1 = glAvddValDbl;
V(DTRIM[1], AVSS) <+ transition(loDtrimVal2loAvssValBit1, 0, 2e-09, 2e-09);
// DTRIM[2]
@(timer(glSupplyRampEndDbl, (1e-05 * 4), 1p))
loDtrimVal2loAvssValBit2 = 0;
@(timer((glSupplyRampEndDbl + (0.5 * 1e-05 * 4)), (1e-05 * 4), 1p))
loDtrimVal2loAvssValBit2 = glAvddValDbl;
V(DTRIM[2], AVSS) <+ transition(loDtrimVal2loAvssValBit2, 0, 2e-09, 2e-09);
...
endmodule
Bandgap should be tested for all possible combinations of trim bits. The following grammar sets up an all-factor experiment for all trim bits:

#Test all possible combinations of digital inputs
$ glAMSTObj-> create_voltage_full_factorial (
"arFactDelay"=> $ glSupplyRampEndObj,
"arFactStateValRef"=> [0, $ glAvddValObj],
"arFactStateDurRef"=> [0.50, 0.50],
"arFactChgTimeRef"=> [2e-9, 2e-9],
"arFactMinPeriod"=> 10e-6,
"arFactSignalRef"=> [
{"arP0"=>"DTRIM [0: 2]",
"arP1"=>"AVSS"}
]
);
gets expanded into:

module amst (...)
output [2: 0] DTRIM;
electrical [2: 0] DTRIM;
output AVSS;
electrical AVSS;
parameter real glSupplyRampEndDbl = 1e-07;
parameter real glAvddValDbl = 5;
real loDtrimVal2loAvssValBit0;
real loDtrimVal2loAvssValBit1;
real loDtrimVal2loAvssValBit2;
analog begin
@ (initial_step) begin
loDtrimVal2loAvssValBit0 = 0;
loDtrimVal2loAvssValBit1 = 0;
loDtrimVal2loAvssValBit2 = 0;
end
...
// DTRIM [0]
@ (timer (glSupplyRampEndDbl, 1e-05, 1p))
loDtrimVal2loAvssValBit0 = 0;
@ (timer ((glSupplyRampEndDbl + 0.5 * 1e-05), 1e-05, 1p))
loDtrimVal2loAvssValBit0 = glAvddValDbl;
V (DTRIM [0], AVSS) <+ transition (loDtrimVal2loAvssValBit0, 0, 2e-09, 2e-09);
// DTRIM [1]
@ (timer (glSupplyRampEndDbl, (1e-05 * 2), 1p))
loDtrimVal2loAvssValBit1 = 0;
@ (timer ((glSupplyRampEndDbl + (0.5 * 1e-05 * 2)), (1e-05 * 2), 1p))
loDtrimVal2loAvssValBit1 = glAvddValDbl;
V (DTRIM [1], AVSS) <+ transition (loDtrimVal2loAvssValBit1, 0, 2e-09, 2e-09);
// DTRIM [2]
@ (timer (glSupplyRampEndDbl, (1e-05 * 4), 1p))
loDtrimVal2loAvssValBit2 = 0;
@ (timer ((glSupplyRampEndDbl + (0.5 * 1e-05 * 4)), (1e-05 * 4), 1p))
loDtrimVal2loAvssValBit2 = glAvddValDbl;
V (DTRIM [2], AVSS) <+ transition (loDtrimVal2loAvssValBit2, 0, 2e-09, 2e-09);
...
endmodule

上記定義は、3個のトリム信号が存在することを述べている。各信号は、テストする必要がある2つの有効値を有する。全因子は可能な状態を全て列挙する。したがって、3個の2進変数の場合、有効な信号の組み合わせを全てテストする1組8つの期間を得る。テスト回路及び刺激が定義されると、測定値及び主張を定義する必要がある。簡単な電圧測定値の一例:

my $glVbgTrim0MeasObj = $glAMSTObj->create_voltage_measure(
"arMeasureNet" => "VBG",
"arRefNet" => "AVSS",
"arMinVal" => 0.850,
"arMaxVal" => 0.900
);
The above definition states that there are three trim signals. Each signal has two valid values that need to be tested. All factors list all possible states. Therefore, in the case of three binary variables, one set of eight periods is obtained to test all valid signal combinations. Once the test circuit and stimulus are defined, measurements and claims need to be defined. An example of a simple voltage measurement:

my $ glVbgTrim0MeasObj = $ glAMSTObj-> create_voltage_measure (
"arMeasureNet"=>"VBG",
"arRefNet"=>"AVSS",
"arMinVal"=> 0.850,
"arMaxVal"=> 0.900
);

出力ノードVBGが0.850〜0.900である時は常に、この電圧測定値は真である。この測定は、シミュレーションのあらゆる時間ステップで実行され評価される。ブール測定値の集まりを組み合わせて、条件付き主張を生成することができる。例えば、以下の主張は、DTRIM[2:0]ビットが「000」であり、VDD供給がその最小閾値を超えている場合、上で定義された$glVbgTrim0MeasObj測定値(0.850≦VBG≦0.900)は真でなければならないということを述べている。

# DTRIM=“000”の場合 => VBG=0.9
$glAMSTObj->create_conditional_assert(
"arAssertNameStr" => 'when DTRIM=\"000\" => VBG=0.9',
"arCondition" => assert_and(
$glVddAboveMin,
assert_not($glDtrim0MeasObj),
assert_not($glDtrim1MeasObj),
assert_not($glDtrim2MeasObj)
),
"arAssertDelay" => $loMeasureDelayDbl,
"arAssert" => assert_and(
$glVbgTrim0MeasObj,
$glPgoodMeasObj
),
"arAssertAtLeastOnce" => 1
);
This voltage measurement is true whenever the output node VBG is between 0.850 and 0.900. This measurement is performed and evaluated at every time step of the simulation. You can combine a collection of Boolean measurements to generate a conditional claim. For example, the following claim is that if the DTRIM [2: 0] bit is "000" and the VDD supply exceeds its minimum threshold, the $ glVbgTrim0MeasObj measurement defined above (0.850≤VBG≤0) .900) states that it must be true.

# When DTRIM = "000"=> VBG = 0.9
$ glAMSTObj-> create_conditional_assert (
"arAssertNameStr"=>'when DTRIM = \ "000 \"=> VBG = 0.9',
"arCondition"=> assert_and (
$ glVddAboveMin,
assert_not ($ glDtrim0MeasObj),
assert_not ($ glDtrim1MeasObj),
assert_not ($ glDtrim2MeasObj)
),
"arAssertDelay"=> $ loMeasureDelayDbl,
"arAssert"=> assert_and (
$ glVbgTrim0MeasObj,
$ glPgoodMeasObj
),
"arAssertAtLeastOnce"=> 1
);

出力電圧をある時点で測定するとより簡単であろう(例えば、100usにおいてVBGは0.850〜0.900の間でなければならない)。このタイプのチェックもまた、AMSTLで容易に実装可能である。しかし、上の主張は、単一の時点においてのみならず、主張条件が満たされている間は常に、バンドギャップスペックのサブセットを明示的に捕捉し(例えば「DTRIM=000の場合 => VBG=0.9」)、スペックのその部分が真であることを確認するため、はるかに強力である。 It would be easier to measure the output voltage at some point (for example, at 100us VBG should be between 0.850 and 0.900). This type of check can also be easily implemented in AMSTR. However, the above claim explicitly captures a subset of the bandgap specs, not only at a single point in time, but whenever the claim conditions are met (eg, "For DTRIM = 000 => VBG =". 0.9 "), much more powerful to make sure that part of the spec is true.

次の例では、以下のコードが、測定目的のための直接分岐貢献ステートメントを生成する。この例では、基準電流のワイヤバスを16本有する。以下の文法を用いて、1us後に電流が0.9750nA〜1.1750nAとであることを保証する。

zip_setup_std_supplies(
50e-09, 100e-09,
[
["Ib_750n_AMST_IN[0:15]", "Ib_750n_AMST_OUT[0:15]", 0]
]
);

zip_assert_output_currents(
0.9, 1.1, 1e-06,
{
"Ib_750n_AMST_IN[0:15]" => 750e-09
}
);


parameter real loSupplyRampStartDbl = 5e-08;
parameter real loSupplyRampEndDbl = 1e-07;
parameter real loIb_750n_AMST_INValDbl = 0;
parameter real arVolEnGndMin1 = 2.85;
parameter real arVolEnGndMax1 = 3.15;
parameter real arCurIb_750n_amst_in0Min1 = 6.75e-07;
parameter real arCurIb_750n_amst_in0Max1 = 8.25e-07;

real loChangeTimeV1;
real loIb_750n_amst_inValBit0;

// アナログ条件付き主張1を作成する
integer loVolEnGndAboveMin1;
integer loVolEnGndAboveMax1;
integer loCurIb_750n_amst_in0AboveMin1;
integer loCurIb_750n_amst_in0AboveMax1;
integer loCondition1;
integer loOldCondition1;
integer loSat1;
integer loFail1;
integer loDisplay1;
integer loAssert1;
integer loMeasure1;
real loCheckTime1;
integer loAssertOutOn1;

analog begin
@ (initial_step) begin
loChangeTimeV1 = 0;
loIb_750n_amst_inValBit0 = 0;

// アナログ条件付き主張1を作成する
loVolEnGndAboveMin1 = 0;
loVolEnGndAboveMax1 = 0;
loCurIb_750n_amst_in0AboveMin1 = 0;
loCurIb_750n_amst_in0AboveMax1 = 0;
loCondition1 = 0;
loOldCondition1 = 0;
loSat1 = 0;
loFail1 = 0;
loDisplay1 = 0;
loAssert1 = 0;
loMeasure1 = 0;
loCheckTime1 = 0;
loAssertOutOn1 = 0;
end

V(NEG_Ib_750n_amst_in0, Ib_750n_AMST_OUT[0]) <+ transition(loIb_750n_amst_inValBit0, 0, loChangeTimeV1, loChangeTimeV1);

V(Ib_750n_AMST_IN[0], NEG_Ib_750n_amst_in0) <+ 0;

// 電流: 2.85<EN<3.15の場合 ==> 6.75e-07 < Ib_750n_AMST_IN[0] < 8.25e-07
loDisplay1 = 1;
`ZIP_VCROSS_TO_BLN(EN, GND, arVolEnGndMin1, loVolEnGndAboveMin1);
`ZIP_VCROSS_TO_BLN(EN, GND, arVolEnGndMax1, loVolEnGndAboveMax1);
`ZIP_ICROSS_TO_BLN(Ib_750n_AMST_IN[0], NEG_Ib_750n_amst_in0, arCurIb_750n_amst_in0Min1, loCurIb_750n_amst_in0AboveMin1);
`ZIP_ICROSS_TO_BLN(Ib_750n_AMST_IN[0], NEG_Ib_750n_amst_in0, arCurIb_750n_amst_in0Max1, loCurIb_750n_amst_in0AboveMax1);
loCondition1 = (loVolEnGndAboveMin1 && !loVolEnGndAboveMax1);
if (loCondition1 && !loOldCondition1) begin
loAssertOutOn1 = 0;
loCheckTime1 = $abstime + 1e-06;
end
@(timer(loCheckTime1)) begin
loAssertOutOn1 = 1;
end
loAssert1 = (loCurIb_750n_amst_in0AboveMin1 && !loCurIb_750n_amst_in0AboveMax1);
if (loCondition1 && loAssertOutOn1) begin
loMeasure1 = loAssert1;
if ((loSat1 && !loFail1 && loMeasure1) || (!loSat1 && loFail1 && !loMeasure1)) begin
loDisplay1 = 0;
end
if (loDisplay1) begin
if (loMeasure1) begin
loSat1 = 1;
loFail1 = 0;
$fdisplay(fileDescriptor, "CURRENT: when 2.85<EN<3.15 ==> 6.75e-07 < Ib_750n_AMST_IN[0] < 8.25e-07 succeeds %e", $abstime);
end else begin
loSat1 = 0;
loFail1 = 1;
$fdisplay(fileDescriptor, "CURRENT: when 2.85<EN<3.15 ==> 6.75e-07 < Ib_750n_AMST_IN[0] < 8.25e-07 fails %e", $abstime);
end
end
end
loOldCondition1 = loCondition1;
end
In the following example, the following code generates a direct branch contribution statement for measurement purposes. In this example, there are 16 reference current wire buses. The following syntax is used to guarantee that the current is 0.9 * 750nA to 1.1 * 750nA after 1 us.

zip_setup_std_supplies (
50e-09, 100e-09,
[
["Ib_750n_AMST_IN [0:15]", "Ib_750n_AMST_OUT [0:15]", 0]
]
);

zip_assert_output_currents (
0.9, 1.1, 1e-06,
{
"Ib_750n_AMST_IN [0:15]"=> 750e-09
}
);

...
parameter real loSupplyRampStartDbl = 5e-08;
parameter real loSupplyRampEndDbl = 1e-07;
parameter real loIb_750n_AMST_INValDbl = 0;
parameter real arVolEnGndMin1 = 2.85;
parameter real arVolEnGndMax1 = 3.15;
parameter real arCurIb_750n_amst_in0Min1 = 6.75e-07;
parameter real arCurIb_750n_amst_in0Max1 = 8.25e-07;

real loChangeTimeV1;
real loIb_750n_amst_inValBit0;

// Create analog conditional claim 1
integer loVolEnGndAboveMin1;
integer loVolEnGndAboveMax1;
integer loCurIb_750n_amst_in0AboveMin1;
integer loCurIb_750n_amst_in0AboveMax1;
integer loCondition1;
integer loOldCondition1;
integer loSat1;
integer loFail1;
integer loDisplay1;
integer loAssert1;
integer loMeasure1;
real loCheckTime1;
integer loAssertOutOn1;

analog begin
@ (initial_step) begin
loChangeTimeV1 = 0;
loIb_750n_amst_inValBit0 = 0;

// Create analog conditional claim 1
loVolEnGndAboveMin1 = 0;
loVolEnGndAboveMax1 = 0;
loCurIb_750n_amst_in0AboveMin1 = 0;
loCurIb_750n_amst_in0AboveMax1 = 0;
loCondition1 = 0;
loOldCondition1 = 0;
loSat1 = 0;
loFail1 = 0;
loDisplay1 = 0;
loAssert1 = 0;
loMeasure1 = 0;
loCheckTime1 = 0;
loAssertOutOn1 = 0;
end

V (NEG_Ib_750n_amst_in0, Ib_750n_AMST_OUT [0]) <+ transition (loIb_750n_amst_inValBit0, 0, loChangeTimeV1, loChangeTimeV1);

V (Ib_750n_AMST_IN [0], NEG_Ib_750n_amst_in0) <+ 0;

// Current: 2.85 <EN <3.15 ==> 6.75e-07 <Ib_750n_AMST_IN [0] <8.25e-07
loDisplay1 = 1;
`ZIP_VCROSS_TO_BLN (EN, GND, arVolEnGndMin1, loVolEnGndAboveMin1);
`ZIP_VCROSS_TO_BLN (EN, GND, arVolEnGndMax1, loVolEnGndAboveMax1);
`ZIP_ICROSS_TO_BLN (Ib_750n_AMST_IN [0], NEG_Ib_750n_amst_in0, arCurIb_750n_amst_in0Min1, loCurIb_750n_amst_in0AboveMin1);
`ZIP_ICROSS_TO_BLN (Ib_750n_AMST_IN [0], NEG_Ib_750n_amst_in0, arCurIb_750n_amst_in0Max1, loCurIb_750n_amst_in0AboveMax1);
loCondition1 = (loVolEnGndAboveMin1 &&! loVolEnGndAboveMax1);
if (loCondition1 &&! loOldCondition1) begin
loAssertOutOn1 = 0;
loCheckTime1 = $ abstime + 1e-06;
end
@ (timer (loCheckTime1)) begin
loAssertOutOn1 = 1;
end
loAssert1 = (loCurIb_750n_amst_in0AboveMin1 &&! loCurIb_750n_amst_in0AboveMax1);
if (loCondition1 && loAssertOutOn1) begin
loMeasure1 = loAssert1;
if ((loSat1 &&! LoFail1 && loMeasure1) || (! loSat1 && loFail1 &&! LoMeasure1)) begin
loDisplay1 = 0;
end
if (loDisplay1) begin
if (loMeasure1) begin
loSat1 = 1;
loFail1 = 0;
$ fdisplay (fileDescriptor, "CURRENT: when 2.85 <EN <3.15 ==> 6.75e-07 <Ib_750n_AMST_IN [0] <8.25e-07 succeeds% e", $ abstime);
end else begin
loSat1 = 0;
loFail1 = 1;
$ fdisplay (fileDescriptor, "CURRENT: when 2.85 <EN <3.15 ==> 6.75e-07 <Ib_750n_AMST_IN [0] <8.25e-07 fails% e", $ abstime);
end
end
end
loOldCondition1 = loCondition1;
end

一例では、図16は、電子的設計を受信するステップ1610と、少なくとも1つの間接分岐貢献ステートメントを有し、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータのうち少なくとも1つを有する少なくとも1つのアナログテストハーネスモデルを受信するステップ1612とを含む、電子的設計の検証コマンドの翻訳の、電気的設計からネットリストへのコンピュータ実装される方法1600を示す。この方法はまた、少なくとも1つのアナログテストハーネスモデルと、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータの少なくとも1つとに少なくとも部分的に基づいて、少なくとも1つの間接分岐貢献ステートメントを複数の直接分岐貢献演算子に翻訳するステップ1614と、翻訳に少なくとも部分的に基づいてネットリストを生成するステップ1616を含む。電子的設計は階層構造の複数のレベルを含み得る。アナログテストハーネスは、最も低いレベルにモジュールとして存在し得、その場合、任意の階層構造レベルに対する、回路と共にパッケージされたテストベンチとして機能する。図6を再び参照すると、電子的設計は、異なる階層構造のレベルを組み込む、図において接続された各ブロックを包含する。トップレベル階層構造はA1であり、次のレベルの階層構造はBであり、これはB1及びB2を含み、B階層構造の下には、C1、C2、及びC3を有するC階層構造がある。この具体例では、B1レベル以下では、モデルはSchematicモデル及びSpiceモデルで構成される。B2レベルでは、モデルはSchematic_behavioralモデル及びBehavioral_vaモデルを包含する。この例では、アナログテストモデルはA1、インスタンス1レベルに接続され、テスト中のコンポーネントのそれぞれに接続する線であるネットリストを通して接続される。 In one example, FIG. 16 has step 1610 to receive an electronic design and at least one indirect branch contribution statement, at least one specification parameter stored in at least one specification database, stored in at least one specification database. Electronic design, including at least one stimulus parameter, and step 1612 to receive at least one analog test harness model having at least one of the at least one measurement parameter stored in the at least one specification database. A computer-implemented method 1600 from electrical design to netlist of translation of verification commands is shown. The method also includes at least one analog test harness model, at least one specification parameter stored in at least one specification database, at least one stimulus parameter stored in at least one specification database, and at least one specification database. To translate at least one indirect branch contribution statement into multiple direct branch contribution operators, at least partially based on at least one of the at least one measurement parameter stored in, and at least partially based on the translation. 1616 includes step 1616 to generate a netlist. Electronic design can include multiple levels of hierarchy. The analog test harness can exist as a module at the lowest level, in which case it acts as a test bench packaged with the circuit for any hierarchical level. With reference to FIG. 6 again, the electronic design includes each block connected in the figure, incorporating different levels of hierarchy. The top level hierarchy is A1 and the next level hierarchy is B, which includes B1 and B2, and below the B hierarchy is a C hierarchy having C1, C2, and C3. In this specific example, below the B1 level, the model is composed of a Schematic model and a Spice model. At the B2 level, the models include the Schematic_behavioral model and the Behavioral_va model. In this example, the analog test model is connected to the A1, instance 1 level, and is connected through a netlist, which is a line connecting to each of the components under test.

一例では、間接分岐貢献ステートメントはループし得、ループにおいて、脱出条件が満たされるまで、一連の命令が繰り返される。間接ステートメントは条件付きであってもよく、条件付きの場合、真又は偽のブール条件と、入力、出力、又はデバイスの命名がパースされ、1組の命令を推測する命名と、ネットへの出力又は入力のいずれかが解析され、解析に基づいて判断が下される解析とに基づいて動作が行われる。 In one example, an indirect branch contribution statement can loop, in which a series of instructions is repeated until the escape condition is met. The indirect statement may be conditional, where it parses true or false Boolean conditions and input, output, or device naming, infers a set of instructions, and outputs to the net. Alternatively, one of the inputs is analyzed and the operation is performed based on the analysis in which the judgment is made based on the analysis.

アナログテストハーネスモデルは、トップブロックレベルから個々の回路等まで、設計の階層構造の任意のレベルに配置することができる。アナログテストハーネスモデルの一例は、低レベルのブロック内で記述され、設計内のモジュールを形成するものであり、設計において、テストモジュールは個別のブロック内に含まれる。アナログテストハーネスモデルを個別のブロックに含めることに関連して生じ得る一利点は、モジュール内での自己検証をサポートするために、回路設計と共に送信することができることである。幾つかの使用モデルでは、テストハーネスモデルは、ネット又はテストハーネス内で用いられるポート名により接続し得、回路図に物理的に配置されず、テストハーネスモデルはネットリストに含められる。この手法は多くの場合、別個のテキストファイルとしてより容易に管理することができるが、ネットリスト内に包含される情報を包含するために、アナログ及び混合信号設計内で用いられる。例としては、トランジスタ等の基本コンポーネントのSPICEモデルファイル、プログラミングで書かれる挙動モデル、又はデジタル機能のハードウェア言語及びレジスタ転送レベル(RTL)記述が挙げられる。 The analog test harness model can be placed at any level of the design hierarchy, from the top block level to individual circuits and the like. An example of an analog test harness model is described within a low level block to form a module within the design, where the test module is contained within a separate block. One advantage that can occur in connection with including the analog test harness model in separate blocks is that it can be transmitted with the circuit design to support self-verification within the module. In some usage models, the test harness model can be connected by the net or the port name used within the test harness, is not physically placed on the schematic, and the test harness model is included in the netlist. This technique can often be more easily managed as a separate text file, but is used in analog and mixed signal designs to contain the information contained within the netlist. Examples include SPICE model files for basic components such as transistors, behavioral models written in programming, or hardware language and register transfer level (RTL) descriptions for digital functions.

一例では、ネットリストは、電子的設計の接続性、基本的にはあるデバイスのどの端子が別のデバイスのどの端子に接続されるかを提供する。ネットリストは、各デバイスについてデバイスの詳細を含むこともできる。 In one example, a netlist provides electronically designed connectivity, essentially which terminal of one device is connected to which terminal of another device. The netlist can also include device details for each device.

一例では、アナログテストハーネスモデルに基づいて間接分岐貢献ステートメントを複数の直接分岐貢献演算子に翻訳することは、1つのブランケットステートメントを、そのブランケットステートメントのスパンを包含する一連の個々のステートメントに変換することである。基本的には、「index conditions<1:10>」というステートメントは、「condition 1」、「condition 2」、…、「condition 10」に分解される。 In one example, translating an indirect branch contribution statement into multiple direct branch contribution operators based on an analog test harness model translates one blanket statement into a series of individual statements that include the span of that blanket statement. That is. Basically, the statement "index connections <1:10>" is decomposed into "condition 1", "condition 2", ..., "Condition 10".

翻訳は、Verilog−A(商標)文法及びVerilog−AMS(商標)文法の少なくとも一方で少なくとも構成し得る標準化されたアナログハードウェア記述言語を利用し得る。 Translations may utilize standardized analog hardware description languages that can at least construct at least one of the Verilog-A grammar and the Verilog-AMS grammar.

別の例では、図17は、電子的設計の表現を受信するステップ1710と、電子的設計の表現と共に、少なくとも1つの間接分岐貢献ステートメントを有し、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータの少なくとも1つを有する少なくとも1つのアナログテストハーネスモデルを受信するステップ1712とを含む、電子的設計の検証コマンドの翻訳の、電子的設計からネットリストへのコンピュータ実装される方法1700を示す。この方法はさらに、少なくとも1つのアナログテストハーネスモデルと、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータの少なくとも1つと、電子的設計とに少なくとも部分的に基づいて、少なくとも1つの間接分岐貢献ステートメントを複数の直接分岐貢献演算子に翻訳するステップ1714と、翻訳に少なくとも部分的に基づいてネットリストを生成するステップ1716を含む。図7を再び参照すると、設計例の階層構造及びモデルのそれぞれが示されている。検証の目標の1つは、設計の各ブロック及び各モデルを適切な条件でテストすることである。間接分岐貢献ステートメントを翻訳することは、循環の少なくとも一部を自動化することによりこの多次元のタスクを支援する。 In another example, FIG. 17 has at least one indirect branch contribution statement with step 1710 receiving the representation of the electronic design and the representation of the electronic design, and at least one stored in at least one specification database. Receives at least one analog test harness model having at least one specification parameter, at least one stimulus parameter stored in at least one specification database, and at least one measurement parameter stored in at least one specification database. A computer-implemented method 1700 of electronic design verification commands from electronic design to netlist, including with step 1712, is shown. The method further comprises at least one analog test harness model, at least one specification parameter stored in at least one specification database, at least one stimulus parameter stored in at least one specification database, and at least one specification database. In step 1714, translating at least one indirect branch contribution statement into multiple direct branch contribution operators, at least in part based on at least one of the at least one measurement parameter stored in and the electronic design. Includes step 1716 to generate a netlist based at least in part. With reference to FIG. 7 again, the hierarchical structure of the design example and each of the models are shown. One of the goals of the verification is to test each block of design and each model under appropriate conditions. Translating an indirect branch contribution statement assists in this multidimensional task by automating at least part of the cycle.

少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの刺激、少なくとも1つの刺激主張、少なくとも1つの出力主張、及び/又は少なくとも1つの出力測定値を有し得る。電子的設計の表現は、アナログ又は混合信号であってもよく、少なくとも1つのトランジスタレベル回路部、少なくとも1つの挙動モデル化された回路部、物理設計に少なくとも部分的に基づく少なくとも1つの寄生モデルに基づく少なくとも1つの回路、及び/又は少なくとも1つの挙動モデル化された回路を含んでもよい。 At least one analog test harness model can have at least one stimulus, at least one stimulus claim, at least one power claim, and / or at least one power measurement. The representation of the electronic design may be an analog or mixed signal, with at least one transistor level circuit, at least one behavior modeled circuit, and at least one parasitic model based on at least a physical design. It may include at least one circuit based on and / or at least one behavior modeled circuit.

別の例では、図18は、電子的設計の表現を受信するステップ1810と、少なくとも1つの刺激及び少なくとも1つの刺激主張のうち少なくとも一方を有し、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータのうち少なくとも1つを有する少なくとも1つのアナログテストハーネスモデルを受信するステップ1812と、電子的設計に対する少なくとも1つの検証サブルーチンコマンドを受信するステップ1814であって、少なくとも1つの検証サブルーチンコマンドは、少なくとも1つの間接分岐貢献ステートメントを有する、少なくとも1つの検証サブルーチンコマンドを受信するステップ1814を有する、電子的設計の検証コマンドの翻訳の、電子的設計からネットリストへのコンピュータ実装される方法1800を示す。この方法はまた、少なくとも1つの検証サブルーチンコマンドと、少なくとも1つのアナログテストハーネスモデルと、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータのうち少なくとも1つと、電子的設計とに少なくとも部分的に基づいて、少なくとも1つの検証サブルーチンコマンドを対応する標準化されたアナログハードウェア記述言語に翻訳するステップ1816と、翻訳に少なくとも部分的に基づいてネットリストを生成するステップ1818とを含む。刺激主張は、電子システム内の属性定義及び制約等を定義し得る。図8を再び参照すると、電子的設計は、PMIC_testbenchに続く接続されたブロックのそれぞれを包含し、少なくとも1つのアナログテストハーネスモデルは、PMIC_testbenchと記されたブロックに関係する。そのモデルのネットリストは、図8の接続線である各接続を示す。この設計に関連付けられた階層構造は、LDO、バッテリスーパーバイザ、及び電圧基準のブロックが、階層構造においてPMICブロックより低いことを示す。さらに、このモデルは主に、設計の概略部分をレビューする。少なくとも1つの間接分岐貢献ステートメントを複数の直接分岐貢献演算子に翻訳する能力は、各階層構造及び設計の各部分を設計内の各ブロックについてレビューする効率を上げ得る。 In another example, FIG. 18 has at least one of step 1810 receiving a representation of the electronic design and at least one stimulus and at least one stimulus claim and is stored in at least one specification database. Receives at least one analog test harness model having one specification parameter, at least one stimulus parameter stored in at least one specification database, and at least one of at least one measurement parameter stored in at least one specification database. Step 1812 and step 1814 to receive at least one validation subroutine command for the electronic design, wherein at least one validation subroutine command receives at least one validation subroutine command having at least one indirect branch contribution statement. 1800 is a computer-implemented method of translating an electronic design verification command, from electronic design to netlist, with step 1814. This method also includes at least one validation subroutine command, at least one analog test harness model, at least one spec parameter stored in at least one spec database, and at least one stimulus stored in at least one spec database. Standardized analog hardware corresponding to at least one validation subroutine command based on at least one of the parameters and at least one measurement parameter stored in at least one specification database and the electronic design. It includes step 1816 translating into a descriptive language and step 1818 generating a netlist based at least in part on the translation. The stimulus claim can define attribute definitions, constraints, etc. in the electronic system. Referring again to FIG. 8, the electronic design includes each of the connected blocks following the PMIC_testbench, and at least one analog test harness model relates to the block marked PMIC_testbench. The netlist of the model shows each connection, which is the connection line of FIG. The hierarchical structure associated with this design indicates that the LDO, battery supervisor, and voltage reference blocks are lower in the hierarchical structure than the PMIC blocks. In addition, this model primarily reviews the outline of the design. The ability to translate at least one indirect branch contribution statement into multiple direct branch contribution operators can increase the efficiency of reviewing each hierarchy and each part of the design for each block in the design.

標準化されたアナログハードウェア記述言語は、Verilog−A(商標)文法及びVerilog−AMS(商標)文法のうち少なくとも一方を少なくとも含み得る。少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの出力主張及び少なくとも1つの出力測定値のうち少なくとも一方を有し得る。 A standardized analog hardware description language may include at least one of the Verilog-A grammar and the Verilog-AMS grammar. At least one analog test harness model may have at least one output claim and at least one output measurement.

別の例では、図19は、電子的設計の表現を受信するステップ1910と、少なくとも1つの出力主張及び少なくとも1つの出力測定値のうち少なくとも一方を有し、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータのうち少なくとも1つを有する少なくとも1つのアナログテストハーネスモデルを受信するステップ1912と、電子的設計に対する少なくとも1つの検証サブルーチンコマンドを受信するステップ1914であって、少なくとも1つの検証サブルーチンコマンドは、少なくとも1つの間接分岐貢献ステートメントを有する、電子的設計に対する少なくとも1つの検証サブルーチンコマンドを受信するステップ1914を有する、電子的設計の検証コマンドの翻訳のコンピュータ実装される方法1900の検証サブルーチンを介するネットリストに対する電子的設計を示す。この方法はまた、少なくとも1つの検証サブルーチンコマンドと、少なくとも1つのアナログテストハーネスモデルと、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータの少なくとも1つと、電子的設計とに少なくとも部分的に基づいて、少なくとも1つの検証サブルーチンコマンドを標準化されたアナログハードウェア記述言語の対応する少なくとも1つに翻訳するステップ1916と、翻訳に少なくとも部分的に基づいてネットリストを生成するステップ1918とを含む。図9を再び参照すると、電子的設計は、PMIC_testbenchに続く接続されたブロックのそれぞれを包含し、少なくとも1つのアナログテストハーネスモデルは、PMIC_testbenchと記されたブロックに関連する。ネットリストは各ブロックを接続する線で示される接続性を示す。この設計に関連付けられた階層構造は、LDO、バッテリスーパーバイザ、及び電圧基準のブロックが、階層構造においてPMICブロックより低いことを示す。このモデルは、モデルの概略、概略挙動的、及びbehavioral.vaの各態様をレビューする。全体の電子的設計は図8と同じであるが、テストされる対象、階層構造、及び接続性は異なる。少なくとも1つの間接分岐貢献ステートメントを複数の直接分岐貢献演算子に翻訳する能力は、様々なモデル及び階層構造をより完全にレビューすることを支援する。 In another example, FIG. 19 has at least one of step 1910 receiving a representation of the electronic design and at least one output claim and at least one output measurement and is stored in at least one specification database. At least one analog test harness model having at least one specification parameter, at least one stimulus parameter stored in at least one specification database, and at least one of at least one measurement parameter stored in at least one specification database. 1912 and step 1914 to receive at least one validation subroutine command for the electronic design, wherein the at least one validation subroutine command has at least one indirect branch contribution statement for the electronic design. A computer-implemented method of translating an electronic design verification command, having step 1914 to receive one verification subroutine command, shows the electronic design for a netlist via the verification subroutine of 1900. This method also includes at least one validation subroutine command, at least one analog test harness model, at least one spec parameter stored in at least one spec database, and at least one stimulus stored in at least one spec database. A standardized analog hardware description language with at least one validation subroutine command based on at least one of the parameters, and at least one measurement parameter stored in at least one specification database, and electronic design. Includes step 1916 to translate into at least one corresponding and step 1918 to generate a netlist based at least in part on the translation. With reference to FIG. 9 again, the electronic design includes each of the connected blocks following the PMIC_testbench, and at least one analog test harness model relates to the block labeled PMIC_testbench. The netlist shows the connectivity indicated by the line connecting each block. The hierarchical structure associated with this design indicates that the LDO, battery supervisor, and voltage reference blocks are lower in the hierarchical structure than the PMIC blocks. This model is a schematic, schematic behavioral, and behavioral. Review each aspect of va. The overall electronic design is the same as in FIG. 8, but the objects tested, the hierarchy, and the connectivity are different. The ability to translate at least one indirect branch contribution statement into multiple direct branch contribution operators assists in a more complete review of various models and hierarchies.

標準化されたアナログハードウェア記述言語は、Verilog−A(商標)文法及びVerilog−AMS(商標)文法のうち少なくとも一方で少なくとも構成し得る。少なくとも1つの検証サブルーチンコマンドは、少なくとも1つの仕様サブセットを有し得る。少なくとも1つのアナログハーネスモデルは、少なくとも1つの出力主張及び少なくとも1つの出力測定値のうち少なくとも一方に少なくとも部分的に基づいて、少なくとも1つの仕様サブセットを確認し得る。少なくとも1つの仕様サブセットは、データ変換を有し得る。 A standardized analog hardware description language may consist of at least one of the Verilog-A grammar and the Verilog-AMS grammar. At least one validation subroutine command can have at least one specification subset. At least one analog harness model may confirm at least one specification subset based at least in part on at least one of at least one output claim and at least one output measurement. At least one specification subset may have data transformations.

別の例では、図20は、非一時的なコンピュータ可用媒体2000上に実施される抽出されたデータ比較コンピュータプログラム製品を介する電子的設計を示し、非一時的なコンピュータ可用媒体は、一連の命令を記憶しており、一連の命令は、プロセッサによって実行されると、プロセッサに電子的設計の検証コマンドの翻訳の方法を実行させ、方法は、少なくとも1つのアナログテストハーネスモデルを受信するステップ2010であって、少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの刺激及び少なくとも1つの刺激主張のうち少なくとも一方を有し、少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータのうち少なくとも1つを有し、上記パラメータの少なくとも1つはパラメータ化された変数として扱われる、少なくとも1つのアナログテストハーネスモデルを受信するステップ2010と、電子的設計に対する少なくとも1つの検証サブルーチンコマンドを受信するステップ2012であって、少なくとも1つの検証サブルーチンコマンドは、少なくとも1つの間接分岐貢献ステートメントを有する、少なくとも1つの検証サブルーチンコマンドを受信するステップ2012とを有する。この方法はまた、少なくとも1つのアナログテストハーネス及び少なくとも1つの検証サブルーチンコマンドに少なくとも部分的に基づいて、少なくとも1つの規則を検索するステップ2014と、少なくとも1つの検証サブルーチンコマンドと、検索された少なくとも1つの規則と、少なくとも1つのアナログテストハーネスモデルと、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータのうちの少なくとも1つであって、パラメータ化された変数として上記パラメータの少なくとも1つを扱う、少なくとも1つと、電子的設計とに少なくとも部分的に基づいて、少なくとも1つの検証サブルーチンコマンドを対応する少なくとも1つの標準化されたアナログハードウェア記述言語に翻訳するステップ2016を含む。この方法は、翻訳に少なくとも部分的に基づいてネットリストを生成するステップ2018と、少なくとも1つのアナログテストハーネスモデルを少なくとも部分的に利用して、少なくとも1つのサブコンポーネントを電気的にシミュレートするステップ2020と、電気的シミュレーションを受ける電子的設計の少なくとも1つの性能属性を抽出するステップ2022と、抽出された少なくとも1つの性能属性及び少なくとも1つの出力測定値を少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータと比較するステップ2024とをさらに含む。図10を再び参照すると、電子的設計は、PMIC_testbenchに続く接続されたブロックのそれぞれを包含し、少なくとも1つのアナログテストハーネスモデルは、PMIC_testbenchと記されたブロックに関連する。この例では、PMIC階層構造及びLDO、バッテリスーパーバイザ、及び電圧基準の階層構造がレビューされる。最高レベルにおいて、PMICは概略レベルでレビューされ、LDOはBehavioral_vamsにおいてレビューされ、バッテリスーパーバイザはBehavioral_vamsにおいてレビューされ、電圧基準はBehavioral_vaレベルでレビューされる。 In another example, FIG. 20 shows an electronic design via an extracted data comparison computer program product performed on a non-temporary computer-enabled medium 2000, where the non-temporary computer-enabled medium is a series of instructions. When a series of instructions is executed by the processor, it causes the processor to perform a method of translating the verification command of the electronic design, the method of receiving at least one analog test harness model in step 2010. The at least one analog test harness model has at least one stimulus and at least one stimulus claim, and the at least one analog test harness model is at least one stored in at least one specification database. It has at least one of one specification parameter, at least one stimulus parameter stored in at least one specification database, and at least one measurement parameter stored in at least one specification database, and at least one of the above parameters. Step 2010, which receives at least one analog test harness model treated as a parameterized variable, and step 2012, which receives at least one validation subroutine command for the electronic design, the at least one validation subroutine command is: It has a step 2012 of receiving at least one validation subroutine command having at least one indirect branch contribution statement. The method also finds at least one rule based on at least one analog test harness and at least one validation subroutine command in step 2014, at least one validation subroutine command, and at least one retrieved. One rule, at least one analog test harness model, at least one specification parameter stored in at least one specification database, at least one stimulus parameter stored in at least one specification database, and at least one specification database. At least one of the stored at least one measurement parameter, which treats at least one of the above parameters as a parameterized variable, at least one, and at least in part based on electronic design. Includes step 2016 to translate one validation subroutine command into the corresponding at least one standardized analog hardware description language. This method electrically simulates at least one subcomponent using at least a partial use of at least one analog test harness model and step 2018 to generate a netlist based at least partially on the translation. 2020, step 2022 to extract at least one performance attribute of the electronic design to be electrically simulated, and at least one extracted performance attribute and at least one output measurement stored in at least one specification database. It further includes step 2024 for comparison with one specification parameter. With reference to FIG. 10 again, the electronic design includes each of the connected blocks following the PMIC_testbench, and at least one analog test harness model relates to the block labeled PMIC_testbench. In this example, the PMIC hierarchy and the LDO, battery supervisor, and voltage reference hierarchy are reviewed. At the highest level, the PMIC is reviewed at the schematic level, the LDO is reviewed at the Behavioral_vams, the battery supervisor is reviewed at the Behavioral_vams, and the voltage reference is reviewed at the Behavioral_vams level.

コンピュータプログラム製品は、少なくとも1つのパラメータ化された変数を固定するステップ、少なくとも1つの別個のシミュレーション実行において少なくとも1つのパラメータ化された変数を変化させるステップ、及び/又は少なくとも1つのシミュレーション実行内で少なくとも1つのパラメータ化された変数を変化させるステップをさらに含み得る。シミュレーション中又はシミュレーション後、少なくとも1つの性能属性を抽出し得る。少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの出力主張及び少なくとも1つの出力測定値のうち少なくとも一方を有し得る。 The computer program product has a step of fixing at least one parameterized variable, a step of changing at least one parameterized variable in at least one separate simulation run, and / or at least within at least one simulation run. It may further include the step of changing one parameterized variable. At least one performance attribute can be extracted during or after the simulation. At least one analog test harness model may have at least one output claim and at least one output measurement.

別の例では、図21は、非一時的なコンピュータ可用媒体2100上に実施されるコンピュータプログラム製品2100の抽出されたデータ比較を介する電子的設計を示し、非一時的なコンピュータ可用媒体は、一連の命令を記憶しており、一連の命令は、プロセッサによって実行されると、プロセッサに電子的設計の検証コマンドの翻訳の方法を実行させ、方法は、少なくとも1つのアナログテストハーネスモデルを受信するステップ2110であって、少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの出力主張及び少なくとも1つの出力測定値のうち少なくとも一方を有し、少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータのうち少なくとも1つを有し、上記パラメータの少なくとも1つはパラメータ化された変数として扱われる、少なくとも1つのアナログテストハーネスモデルを受信するステップ2110と、電子的設計に対する少なくとも1つの検証サブルーチンコマンドを受信するステップ2112であって、少なくとも1つの検証サブルーチンコマンドは、少なくとも1つの間接分岐貢献ステートメントを有する、少なくとも1つの検証サブルーチンコマンドを受信するステップ2112とを含む。この方法はまた、少なくとも1つのアナログテストハーネス及び少なくとも1つの検証サブルーチンコマンドに少なくとも部分的に基づいて、少なくとも1つの規則を検索するステップ2114と、少なくとも1つの検証サブルーチンコマンドと、検索された少なくとも1つの規則と、少なくとも1つのアナログテストハーネスモデルと、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータのうち少なくとも1つであって、上記パラメータの少なくとも1つはパラメータ化された変数として扱われる、少なくとも1つと、電子的設計とに少なくとも部分的に基づいて、少なくとも1つの検証サブルーチンコマンドを標準化されたアナログハードウェア記述言語の少なくとも1つに対応するものに翻訳するステップ2116と、翻訳に少なくとも部分的に基づいてネットリストを生成するステップ2118とを含む。この方法は、少なくとも1つのアナログテストハーネスモデルに少なくとも部分的に利用して少なくとも1つのサブコンポーネントを電気的にシミュレートするステップ2120と、電気的シミュレーションを受けている電子的設計の少なくとも1つの性能属性を抽出するステップ2122と、抽出された少なくとも1つの性能属性及び少なくとも1つの出力主張及び少なくとも1つの出力測定値のうち少なくとも一方を少なくとも1つの仕様データベース内の少なくとも1つの仕様と比較するステップ2124とをさらに含む。図10を再び参照すると、電子的設計は、PMIC_testbenchに続く接続されたブロックのそれぞれを包含し、少なくとも1つのアナログテストハーネスモデルは、PMIC_testbenchと記されたブロックに関連する。この例では、PMIC階層構造及びLDO、バッテリスーパーバイザ、及び電圧基準の階層構造がレビューされる。最高レベルにおいて、PMICは概略レベルでレビューされ、LDOはBehavioral_vamsにおいてレビューされ、バッテリスーパーバイザはBehavioral_vamsにおいてレビューされ、電圧基準はBehavioral_vaレベルでレビューされる。 In another example, FIG. 21 shows an electronic design through an extracted data comparison of computer program product 2100 performed on a non-temporary computer-enabled medium 2100, where the non-temporary computer-enabled medium is a series. When a series of instructions is executed by a processor, it causes the processor to perform a method of translating an electronic design verification command, the method of receiving at least one analog test harness model. 2110, at least one analog test harness model having at least one of at least one output claim and at least one output measurement, and at least one analog test harness model stored in at least one specification database. It has at least one of the specified parameters, at least one stimulus parameter stored in at least one specification database, and at least one measurement parameter stored in at least one specification database. At least one is treated as a parameterized variable, step 2110 receiving at least one analog test harness model and step 2112 receiving at least one verification subroutine command for the electronic design, at least one validation. The subroutine command includes step 2112 to receive at least one validation subroutine command having at least one indirect branch contribution statement. The method also retrieves at least one rule based on at least one analog test harness and at least one validation subroutine command, at least in part, in step 2114, at least one validation subroutine command, and at least one retrieved. In one rule, at least one analog test harness model, at least one specification parameter stored in at least one specification database, at least one stimulus parameter stored in at least one specification database, and at least one specification database. At least one of at least one stored measurement parameter, at least one of the above parameters being treated as a parameterized variable, at least one and at least in part based on electronic design. It includes step 2116 translating one validation subroutine command into the equivalent of at least one of the standardized analog hardware description languages, and step 2118 generating a netlist based at least in part on the translation. This method is at least partially utilized in at least one analog test harness model to electrically simulate at least one subcomponent in step 2120 and at least one performance of the electronic design undergoing electrical simulation. Step 2122 to extract the attributes and step 2124 to compare at least one of the extracted at least one performance attribute and at least one output claim and at least one output measurement with at least one specification in the at least one specification database. And further include. With reference to FIG. 10 again, the electronic design includes each of the connected blocks following the PMIC_testbench, and at least one analog test harness model relates to the block labeled PMIC_testbench. In this example, the PMIC hierarchy and the LDO, battery supervisor, and voltage reference hierarchy are reviewed. At the highest level, the PMIC is reviewed at the schematic level, the LDO is reviewed at the Behavioral_vams, the battery supervisor is reviewed at the Behavioral_vams, and the voltage reference is reviewed at the Behavioral_vams level.

標準化されたアナログハードウェア記述言語は、Verilog−A(商標)及びVerilog−AMSのうち少なくとも一方を含み得る。さらに、この方法は、指定された結果に少なくとも部分的に基づいて少なくとも1つのアナログテストハーネスモデルを変更するステップ、指定された結果に少なくとも部分的に基づいて少なくとも1つの検証サブルーチンコマンドを変更するステップ、及び/又は少なくとも1つのパラメータ化された変数を変更するステップを含み得る。電子的設計は、結果として、少なくとも1つの能動回路及び少なくとも1つの受動回路のうち少なくとも一方を生成し得、少なくとも1つの能動回路を生成する電子的設計は、少なくとも1つの利得と、少なくとも1つの電気的信号の少なくとも1つの方向とのうち少なくとも一方を調整し得る。少なくとも1つの検証サブルーチンコマンドは、少なくとも1つの仕様サブセットを有し得、少なくとも1つのアナログハーネスモデルは、少なくとも1つの出力主張及び少なくとも1つの出力測定値のうち少なくとも一方に少なくとも部分的に基づいて、少なくとも1つの仕様サブセットを確認し得る。 A standardized analog hardware description language may include at least one of Verilog-A ™ and Verilog-AMS. In addition, this method modifies at least one analog test harness model based on at least partly based on the specified result, and modifies at least one validation subroutine command based on at least partly based on the specified result. , And / or at least one parameterized variable may include a step of changing. An electronic design can result in at least one of at least one active circuit and at least one passive circuit, and an electronic design that produces at least one active circuit has at least one gain and at least one. At least one of at least one direction of the electrical signal may be adjusted. At least one validation subroutine command can have at least one specification subset, and at least one analog harness model is at least partially based on at least one output claim and at least one output measurement. At least one specification subset can be identified.

本明細書では、本開示の様々な例示のための例の作成及び使用が考察されるが、本開示が多種多様な特定の状況で説明することができる概念を提示することを理解されたい。本開示は特定の例に関して示され説明されたが、本明細書を読み理解した当業者は、均等物及び変更を考えつくことが明白である。本開示は、そのような均等物及び変更を含み、添付の特許請求の範囲によってのみ限定される。 Although the creation and use of examples for various embodiments of the present disclosure is considered herein, it should be understood that the present disclosure presents concepts that can be explained in a wide variety of specific situations. Although the present disclosure has been shown and described with respect to specific examples, it will be apparent to those skilled in the art who have read and understood the specification to come up with equivalents and modifications. The present disclosure includes such equivalents and modifications and is limited only by the appended claims.

方法及び装置は、ローカルで又は分散して又はリモートで実施し得、ステップのデータはローカルで又はリモートで記憶し得ることを理解されたい。明瞭さのため、該当する技術分野の当業者にはありふれた機能、コンポーネント、及びシステムの詳細な記載は含まれない。本開示の方法及び装置は、速度効率の改善、計算時間の短縮、及び再検証数の低減等を含むが、これに限定されない1つ又は複数の利点を提供する。本開示は特定の例示のための例を参照して記載されたが、本明細書に記載されたものは限定的な意味で解釈されることを意図しない。例えば、特定の場合、本開示から逸脱せずに、示され説明された例におけるステップの変形又は組み合わせが使用可能である。例示のための例の様々な変更及び組み合わせ並びに他の利点及び例は、図面、明細書、及び特許請求の範囲を参照した上で当業者には明白である。 It should be understood that the methods and devices can be performed locally or in a distributed manner or remotely, and the step data can be stored locally or remotely. For clarity, detailed descriptions of features, components, and systems common to those skilled in the art are not included. The methods and devices of the present disclosure provide one or more advantages including, but not limited to, improved speed efficiency, reduced calculation time, reduced number of revalidations, and the like. Although the present disclosure has been described with reference to examples for particular illustration, what is described herein is not intended to be construed in a limited sense. For example, in certain cases, variations or combinations of steps in the examples shown and described can be used without departing from the present disclosure. Various modifications and combinations of examples for illustration and other advantages and examples will be apparent to those skilled in the art with reference to the drawings, specification and claims.

Claims (45)

電子的設計の検証コマンドを翻訳するコンピュータ実装される方法であって、
前記電子的設計を受信するステップと、
少なくとも1つの間接分岐貢献ステートメントを有し、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、前記少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び前記少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータの少なくとも1つを有する少なくとも1つのアナログテストハーネスモデルを受信するステップと、
前記少なくとも1つのアナログテストハーネスモデルと、前記少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、前記少なくとも1つの仕様データベースに記憶された前記少なくとも1つの刺激パラメータ、及び前記少なくとも1つの仕様データベースに記憶された前記少なくとも1つの測定パラメータの前記少なくとも1つとに少なくとも部分的に基づいて、前記少なくとも1つの間接分岐貢献ステートメントを複数の直接分岐貢献演算子に翻訳するステップと、
前記翻訳に少なくとも部分的に基づいてネットリストを生成するステップと、
を含む、方法。
A computer-implemented method of translating electronic design verification commands,
The step of receiving the electronic design and
At least one specification parameter having at least one indirect branch contribution statement and stored in at least one specification database, at least one stimulus parameter stored in the at least one specification database, and in the at least one specification database. A step of receiving at least one analog test harness model having at least one of the stored at least one measurement parameter.
The at least one analog test harness model, at least one specification parameter stored in the at least one specification database, the at least one stimulus parameter stored in the at least one specification database, and the at least one specification database. The step of translating the at least one indirect branch contribution statement into a plurality of direct branch contribution operators, at least partially based on the at least one of the at least one measurement parameter stored in.
The steps to generate a netlist based at least in part on the translation,
Including methods.
前記翻訳は、標準化されたアナログハードウェア記述言語を有する、請求項1に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The translation is a computer-implemented method of translating the electronic design verification command according to claim 1, which has a standardized analog hardware description language. 前記標準化されたアナログハードウェア記述言語は、Verilog−A(商標)文法及びVerilog−AMS(商標)文法のうち少なくとも一方を少なくとも含む、請求項2に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The computer for translating the electronic design verification command according to claim 2, wherein the standardized analog hardware description language includes at least one of the Verilog-A grammar and the Verilog-AMS grammar. How to be implemented. 電子的設計の検証コマンドの翻訳のコンピュータ実装される方法であって、
前記電子的設計の表現を受信するステップと、
前記電子的設計の前記表現と共に、少なくとも1つの間接分岐貢献ステートメントを有し、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、前記少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び前記少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータの少なくとも1つを有する少なくとも1つのアナログテストハーネスモデルを受信するステップと、
前記少なくとも1つのアナログテストハーネスモデルと、前記少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、前記少なくとも1つの仕様データベースに記憶された前記少なくとも1つの刺激パラメータ、及び前記少なくとも1つの仕様データベースに記憶された前記少なくとも1つの測定パラメータの前記少なくとも1つと、前記電子的設計とに少なくとも部分的に基づいて、前記少なくとも1つの間接分岐貢献ステートメントを複数の直接分岐貢献演算子に翻訳するステップと
前記翻訳に少なくとも部分的に基づいてネットリストを生成するステップと、
を含む、方法。
A computer-implemented method of translating electronic design verification commands,
The step of receiving the representation of the electronic design,
At least one specification parameter having at least one indirect branch contribution statement with said representation of the electronic design and stored in at least one specification database, at least one stimulus parameter stored in said at least one specification database. And the step of receiving at least one analog test harness model having at least one of the at least one measurement parameter stored in the at least one specification database.
The at least one analog test harness model, at least one specification parameter stored in the at least one specification database, the at least one stimulus parameter stored in the at least one specification database, and the at least one specification database. The step of translating the at least one indirect branch contribution statement into a plurality of direct branch contribution operators, at least in part based on the at least one of the at least one measurement parameter stored in the computer and the electronic design. The steps to generate a netlist based at least in part on the translation,
Including methods.
前記少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの刺激を有する、請求項4に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The computer-implemented method of translating an electronic design verification command according to claim 4, wherein the at least one analog test harness model has at least one stimulus. 前記少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの刺激主張を有する、請求項4に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The computer-implemented method of translating the electronic design verification command according to claim 4, wherein the at least one analog test harness model has at least one stimulus claim. 前記少なくとも1つのアナログテストハーネスモデルは、仕様データベースからの少なくとも1つの刺激パラメータを含む少なくとも1つの刺激主張を有する、請求項4に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The computer-implemented method of translating an electronic design verification command according to claim 4, wherein the at least one analog test harness model has at least one stimulus claim including at least one stimulus parameter from a specification database. 前記少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの出力主張を有する、請求項4に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The computer-implemented method of translating an electronic design verification command according to claim 4, wherein the at least one analog test harness model has at least one output claim. 前記少なくとも1つのアナログテストハーネスモデルは、仕様データベースからの少なくとも1つの仕様パラメータを含む少なくとも1つの出力主張を有する、請求項4に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The computer-implemented method of translating an electronic design verification command according to claim 4, wherein the at least one analog test harness model has at least one output claim that includes at least one specification parameter from a specification database. 前記少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの出力測定値を有する、請求項4に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The computer-implemented method of translating an electronic design verification command according to claim 4, wherein the at least one analog test harness model has at least one output measurement. 前記少なくとも1つのアナログテストハーネスモデルは、仕様データベースからの少なくとも1つの測定パラメータを含む少なくとも1つの出力主張を有する少なくとも1つの出力測定を有する、請求項4に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The translation of the electronic design verification command according to claim 4, wherein the at least one analog test harness model has at least one output measurement having at least one output claim including at least one measurement parameter from the specification database. How to be implemented on a computer. 前記電子的設計の前記表現はアナログである、請求項4に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 A computer-implemented method of translating an electronic design verification command according to claim 4, wherein the representation of the electronic design is analog. 前記電子的設計の前記表現は混合信号である、請求項4に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 A computer-implemented method of translating an electronic design verification command according to claim 4, wherein the representation of the electronic design is a mixed signal. 前記電子的設計の前記表現は、少なくとも1つのトランジスタレベル回路部を有する、請求項4に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The computer-implemented method of translating the electronic design verification command according to claim 4, wherein the representation of the electronic design has at least one transistor level circuit section. 前記電子的設計の前記表現は、少なくとも1つの挙動モデル化された回路部を有する、請求項4に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The computer-implemented method of translating an electronic design verification command according to claim 4, wherein the representation of the electronic design has at least one behavior-modeled circuit unit. 前記電子的設計の前記表現は、物理設計に少なくとも部分的に基づく少なくとも1つの寄生モデルに基づく少なくとも1つの回路を有する、請求項4に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The computer-implemented translation of the electronic design verification command according to claim 4, wherein the representation of the electronic design has at least one circuit based on at least one parasitic model that is at least partially based on the physical design. Method. 前記電子的設計の前記表現は、少なくとも1つの挙動モデル化された回路を有する、請求項4に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The computer-implemented method of translating the electronic design verification command according to claim 4, wherein the representation of the electronic design has at least one behavior-modeled circuit. 電子的設計の検証コマンドの翻訳のコンピュータ実装される方法であって、
前記電子的設計の表現を受信するステップと、
少なくとも1つの刺激及び少なくとも1つの刺激主張のうち少なくとも一方を有し、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、前記少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び前記少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータのうち少なくとも1つを有する少なくとも1つのアナログテストハーネスモデルを受信するステップと、
前記電子的設計に対する少なくとも1つの検証サブルーチンコマンドを受信するステップであって、前記少なくとも1つの検証サブルーチンコマンドは、少なくとも1つの間接分岐貢献ステートメントを有する、少なくとも1つの検証サブルーチンコマンドを受信するステップと、
前記少なくとも1つの検証サブルーチンコマンドと、前記少なくとも1つのアナログテストハーネスモデルと、前記少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、前記少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び前記少なくとも1つの仕様データベースからの少なくとも1つの測定パラメータのうち少なくとも1つと、前記電子的設計とに少なくとも部分的に基づいて、前記少なくとも1つの検証サブルーチンコマンドを対応する標準化されたアナログハードウェア記述言語に翻訳するステップと、
前記翻訳に少なくとも部分的に基づいてネットリストを生成するステップと、
を含む、方法。
A computer-implemented method of translating electronic design verification commands,
The step of receiving the representation of the electronic design,
At least one specification parameter having at least one stimulus and at least one of the at least one stimulus claims and stored in at least one specification database, at least one stimulus parameter stored in the at least one specification database, and A step of receiving at least one analog test harness model having at least one of at least one measurement parameter stored in the at least one specification database.
A step of receiving at least one verification subroutine command for the electronic design, wherein the at least one verification subroutine command has at least one indirect branch contribution statement and a step of receiving at least one verification subroutine command.
The at least one verification subroutine command, the at least one analog test harness model, at least one specification parameter stored in the at least one specification database, and at least one stimulus parameter stored in the at least one specification database. , And standardized analog hardware corresponding to the at least one verification subroutine command, at least in part based on at least one of the at least one measurement parameter from the at least one specification database and the electronic design. Steps to translate into a description language,
The steps to generate a netlist based at least in part on the translation,
Including methods.
前記標準化されたアナログハードウェア記述言語は、Verilog−A(商標)文法及びVerilog−AMS(商標)文法のうち少なくとも一方を少なくとも含む、請求項18に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The computer for translating the electronic design verification command according to claim 18, wherein the standardized analog hardware description language includes at least one of the Verilog-A grammar and the Verilog-AMS grammar. How to be implemented. 前記少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの出力主張及び少なくとも1つの出力測定値のうち少なくとも一方を有する、請求項18に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The computer-implemented method of translating an electronic design verification command according to claim 18, wherein the at least one analog test harness model has at least one output claim and at least one output measurement. 電子的設計の検証コマンドの翻訳のコンピュータ実装される方法であって、
前記電子的設計の表現を受信するステップと、
少なくとも1つの出力主張及び少なくとも1つの出力測定値のうち少なくとも一方を有し、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、前記少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び前記少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータのうち少なくとも1つを有する少なくとも1つのアナログテストハーネスモデルを受信するステップと、
前記電子的設計に対する少なくとも1つの検証サブルーチンコマンドを受信するステップであって、前記少なくとも1つの検証サブルーチンコマンドは、少なくとも1つの間接分岐貢献ステートメントを有する、前記電子的設計に対する少なくとも1つの検証サブルーチンコマンドを受信するステップと、
前記少なくとも1つの検証サブルーチンコマンドと、前記少なくとも1つのアナログテストハーネスモデルと、前記少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、前記少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び前記少なくとも1つの仕様データベースからの少なくとも1つの測定パラメータの前記少なくとも1つと、前記電子的設計とに少なくとも部分的に基づいて、前記少なくとも1つの検証サブルーチンコマンドを前記標準化されたアナログハードウェア記述言語の対応する少なくとも1つに翻訳するステップと、
前記翻訳に少なくとも部分的に基づいてネットリストを生成するステップと、
を含む、方法。
A computer-implemented method of translating electronic design verification commands,
The step of receiving the representation of the electronic design,
At least one specification parameter having at least one output claim and at least one output measurement and stored in at least one specification database, at least one stimulus parameter stored in the at least one specification database. And the step of receiving at least one analog test harness model having at least one of the at least one measurement parameter stored in the at least one specification database.
A step of receiving at least one verification subroutine command for the electronic design, wherein the at least one verification subroutine command has at least one verification subroutine command for the electronic design having at least one indirect branch contribution statement. Steps to receive and
The at least one verification subroutine command, the at least one analog test harness model, at least one specification parameter stored in the at least one specification database, and at least one stimulus parameter stored in the at least one specification database. And the standardized analog hardware description of the at least one verification subroutine command based at least in part on the at least one of the at least one measurement parameter from the at least one specification database and the electronic design. Steps to translate into at least one corresponding language, and
The steps to generate a netlist based at least in part on the translation,
Including methods.
前記標準化されたアナログハードウェア記述言語は、Verilog−A(商標)文法及びVerilog−AMS(商標)文法のうち少なくとも一方を含む、請求項21に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The computerized implementation of the translation of the electronic design verification command according to claim 21, wherein the standardized analog hardware description language includes at least one of the Verilog-A grammar and the Verilog-AMS grammar. How to be done. 前記少なくとも1つの検証サブルーチンコマンドは、少なくとも1つの仕様サブセットを有する、請求項21に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The computer-implemented method of translating an electronic design verification command according to claim 21, wherein the at least one verification subroutine command has at least one subset of specifications. 前記少なくとも1つのアナログハーネスモデルは、少なくとも1つの出力主張及び少なくとも1つの出力測定値に少なくとも部分的に基づいて、前記少なくとも1つの仕様サブセットを確認する、請求項23に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 23. The electronic design validation of claim 23, wherein the at least one analog harness model confirms the at least one specification subset based at least in part on at least one output claim and at least one output measurement. A computer-implemented method of translating commands. 前記少なくとも1つのアナログハーネスモデルは、少なくとも1つの出力主張の前記少なくとも1つと、少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、前記少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び前記少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータの前記少なくとも1つとに少なくとも部分的に基づいて、前記少なくとも1つの仕様サブセットを確認する、請求項23に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 The at least one analog harness model includes at least one of the at least one output claim, at least one specification parameter stored in at least one specification database, and at least one stimulus parameter stored in the at least one specification database. The electronic design according to claim 23, which confirms the at least one specification subset, at least in part, based on at least one of the at least one measurement parameter stored in the at least one specification database. A computer-implemented method of translating validation commands. 前記少なくとも1つの仕様サブセットはデータ変換を有する、請求項23に記載の電子的設計の検証コマンドの翻訳のコンピュータ実装される方法。 A computer-implemented method of translating an electronic design verification command according to claim 23, wherein the at least one specification subset has data conversion. 非一時的なコンピュータ可用媒体上に実施されるコンピュータプログラム製品であって、前記非一時的なコンピュータ可用媒体は、一連の命令を記憶しており、前記一連の命令がプロセッサによって実行されると、前記一連の命令は、前記プロセッサに電子的設計の検証コマンドの翻訳の方法を実行させ、前記方法は、
少なくとも1つのアナログテストハーネスモデルを受信するステップであって、前記少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの刺激及び少なくとも1つの刺激主張のうち少なくとも一方を有し、前記少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータ、前記少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び前記少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータのうち少なくとも1つを有し、前記パラメータの少なくとも1つはパラメータ化された変数として扱われる、少なくとも1つのアナログテストハーネスモデルを受信するステップと、
前記電子的設計に対する少なくとも1つの検証サブルーチンコマンドを受信するステップであって、前記少なくとも1つの検証サブルーチンコマンドは、少なくとも1つの間接分岐貢献ステートメントを有する、少なくとも1つの検証サブルーチンコマンドを受信するステップと、
前記少なくとも1つのアナログテストハーネス及び前記少なくとも1つの検証サブルーチンコマンドに少なくとも部分的に基づいて、少なくとも1つの規則を検索するステップと、
前記少なくとも1つの検証サブルーチンコマンドと、前記検索された少なくとも1つの規則と、前記少なくとも1つのアナログテストハーネスモデルと、前記少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータ、前記少なくとも1つの仕様データベースに記憶された前記少なくとも1つの刺激パラメータ、及び前記少なくとも1つの仕様データベースに記憶された前記少なくとも1つの仕様パラメータのうちの前記少なくとも1つであって、パラメータ化された変数として前記パラメータの少なくとも1つを扱う、前記少なくとも1つと、前記電子的設計とに少なくとも部分的に基づいて、前記少なくとも1つの検証サブルーチンコマンドを対応する少なくとも1つの標準化されたアナログハードウェア記述言語に翻訳するステップと、
前記翻訳に少なくとも部分的に基づいてネットリストを生成するステップと、
前記少なくとも1つのアナログテストハーネスモデルを少なくとも部分的に利用して、少なくとも1つのサブコンポーネントを電気的にシミュレートするステップと、
前記電気的シミュレーションを受ける前記電子的設計の少なくとも1つの性能属性を抽出するステップと、
前記抽出された少なくとも1つの性能属性及び少なくとも1つの出力測定値を少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータと比較するステップと、
を含む、電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。
A computer program product implemented on a non-temporary computer-enabled medium, wherein the non-temporary computer-enabled medium stores a series of instructions, and when the series of instructions is executed by a processor, The series of instructions causes the processor to execute a method of translating an electronic design verification command.
A step of receiving at least one analog test harness model, wherein the at least one analog test harness model has at least one stimulus and at least one stimulus claim, said at least one analog test harness. The model has at least one measurement parameter stored in at least one specification database, at least one stimulus parameter stored in the at least one specification database, and at least one specification parameter stored in the at least one specification database. A step of receiving at least one analog test harness model, which has at least one of the above and at least one of the parameters is treated as a parameterized variable.
A step of receiving at least one verification subroutine command for the electronic design, wherein the at least one verification subroutine command has at least one indirect branch contribution statement and a step of receiving at least one verification subroutine command.
A step of searching for at least one rule based at least in part on the at least one analog test harness and the at least one verification subroutine command.
The at least one validation subroutine command, the at least one retrieved rule, the at least one analog test harness model, the at least one measurement parameter stored in the at least one specification database, the at least one specification. At least one of the at least one stimulus parameter stored in the database and at least one of the at least one specification parameter stored in the at least one specification database, and at least one of the parameters as a parameterized variable. A step of translating the at least one validation subroutine command into the corresponding at least one standardized analog hardware description language, at least in part based on the at least one and the electronic design, which deals with one.
The steps to generate a netlist based at least in part on the translation,
A step of electrically simulating at least one subcomponent, at least partially utilizing the at least one analog test harness model.
The step of extracting at least one performance attribute of the electronic design to be subjected to the electrical simulation,
A step of comparing at least one extracted performance attribute and at least one output measurement with at least one specification parameter stored in at least one specification database.
Computer program products that implement how to translate electronic circuit design verification commands, including.
前記少なくとも1つのパラメータ化された変数を固定するステップをさらに含む、請求項27に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 A computer program product that implements a method of translating a validation command for an electronic circuit design according to claim 27, further comprising fixing the at least one parameterized variable. 少なくとも1つの別個のシミュレーション実行において、前記少なくとも1つのパラメータ化された変数を変化させるステップをさらに含む、請求項27に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 A computer program product that implements a method of translating a validation command for an electronic circuit design according to claim 27, further comprising changing the at least one parameterized variable in at least one separate simulation run. 少なくとも1つのシミュレーション実行内で、前記少なくとも1つのパラメータ化された変数を変化させるステップをさらに含む、請求項27に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 A computer program product that implements the method of translating a validation command for electronic circuit design according to claim 27, further comprising changing the at least one parameterized variable within at least one simulation run. 前記少なくとも1つの性能属性は、前記シミュレーション中、抽出される、請求項27に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 A computer program product that implements the method of translating the electronic circuit design verification command according to claim 27, wherein the at least one performance attribute is extracted during the simulation. 前記少なくとも1つの性能属性は、前記シミュレーション後、抽出される、請求項27に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 A computer program product that implements the method of translating the electronic circuit design verification command according to claim 27, wherein the at least one performance attribute is extracted after the simulation. 前記少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの出力主張及び少なくとも1つの出力測定値のうち少なくとも一方を有する、請求項27に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 The computer program that implements the method of translating the electronic circuit design verification command of claim 27, wherein the at least one analog test harness model has at least one output claim and at least one output measurement. Product. 前記少なくとも1つのアナログテストハーネスモデルは、前記少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータ、前記少なくとも1つの仕様データベースに記憶された前記少なくとも1つの測定パラメータ、及び前記少なくとも1つの仕様データベースに記憶された前記少なくとも1つの刺激パラメータのうち前記少なくとも1つとともに、少なくとも1つの出力主張及び少なくとも1つの出力測定値のうち少なくとも一方を有する、請求項27に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 The at least one analog test harness model includes at least one specification parameter stored in the at least one specification database, the at least one measurement parameter stored in the at least one specification database, and the at least one specification database. 27. The electronic circuit design verification command according to claim 27, which has at least one of the at least one stimulus parameter and at least one of the at least one output claim and at least one output measurement value stored in. A computer program product that implements how to translate. 非一時的なコンピュータ可用媒体上に実施されるコンピュータプログラム製品であって、前記非一時的なコンピュータ可用媒体は、一連の命令を記憶しており、前記一連の命令がプロセッサによって実行されると、前記一連の命令は、前記プロセッサに電子的設計の検証コマンドの翻訳の方法を実行させ、前記方法は、
少なくとも1つのアナログテストハーネスモデルを受信するステップであって、前記少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの出力主張及び少なくとも1つの出力測定値のうち少なくとも一方を有し、前記少なくとも1つのアナログテストハーネスモデルは、少なくとも1つの仕様データベースに記憶された少なくとも1つの測定パラメータ、前記少なくとも1つの仕様データベースに記憶された少なくとも1つの刺激パラメータ、及び前記少なくとも1つの仕様データベースに記憶された少なくとも1つの仕様パラメータのうち少なくとも1つを有し、前記パラメータの少なくとも1つはパラメータ化された変数として扱われる、少なくとも1つのアナログテストハーネスモデルを受信するステップと、
前記電子的設計に対する少なくとも1つの検証サブルーチンコマンドを受信するステップであって、前記少なくとも1つの検証サブルーチンコマンドは、少なくとも1つの間接分岐貢献ステートメントを有する、少なくとも1つの検証サブルーチンコマンドを受信するステップと、
前記少なくとも1つのアナログテストハーネス及び前記少なくとも1つの検証サブルーチンコマンドに少なくとも部分的に基づいて、少なくとも1つの規則を検索するステップと、
前記少なくとも1つの検証サブルーチンコマンドと、前記検索された少なくとも1つの規則と、前記少なくとも1つのアナログテストハーネスモデルと、前記少なくとも1つの仕様データベースに記憶された前記少なくとも1つの仕様パラメータ又は前記少なくとも1つの測定パラメータと、前記電子的設計とに少なくとも部分的に基づいて、前記少なくとも1つの検証サブルーチンコマンドを対応する標準化されたアナログハードウェア記述言語の少なくとも1つに翻訳するステップと、
前記翻訳に少なくとも部分的に基づいてネットリストを生成するステップと、
前記少なくとも1つのアナログテストハーネスモデルに少なくとも部分的に利用して少なくとも1つのサブコンポーネントを電気的にシミュレートするステップと、
前記電気的シミュレーションを受けている前記電子的設計の少なくとも1つの性能属性を抽出するステップと、
前記抽出された少なくとも1つの性能属性及び少なくとも1つの出力主張及び少なくとも1つの出力測定値のうち前記少なくとも一方を少なくとも1つの仕様データベース内の少なくとも1つの仕様と比較するステップと、
を含む、コンピュータプログラム製品。
A computer program product implemented on a non-temporary computer-enabled medium, wherein the non-temporary computer-enabled medium stores a series of instructions, and when the series of instructions is executed by a processor, The series of instructions causes the processor to execute a method of translating an electronic design verification command.
A step of receiving at least one analog test harness model, wherein the at least one analog test harness model has at least one of at least one output claim and at least one output measurement, said at least one analog. The test harness model has at least one measurement parameter stored in at least one specification database, at least one stimulus parameter stored in the at least one specification database, and at least one stored in the at least one specification database. A step of receiving at least one analog test harness model that has at least one of the specification parameters and at least one of the parameters is treated as a parameterized variable.
A step of receiving at least one verification subroutine command for the electronic design, wherein the at least one verification subroutine command has at least one indirect branch contribution statement and a step of receiving at least one verification subroutine command.
A step of searching for at least one rule based at least in part on the at least one analog test harness and the at least one verification subroutine command.
The at least one verification subroutine command, the at least one searched rule, the at least one analog test harness model, the at least one specification parameter stored in the at least one specification database, or the at least one. A step of translating the at least one validation subroutine command into at least one of the corresponding standardized analog hardware description languages, at least in part based on the measurement parameters and the electronic design.
The steps to generate a netlist based at least in part on the translation,
A step of electrically simulating at least one subcomponent that is at least partially utilized in the at least one analog test harness model.
A step of extracting at least one performance attribute of the electronic design undergoing the electrical simulation,
A step of comparing at least one of the extracted at least one performance attribute and at least one output claim and at least one output measurement with at least one specification in the at least one specification database.
Including computer program products.
前記標準化されたアナログハードウェア記述言語は、Verilog−A(商標)文法及びVerilog−AMS(商標)文法のうち少なくとも一方を含む、請求項35に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 The method of translating the electronic circuit design verification command according to claim 35, wherein the standardized analog hardware description language includes at least one of a Verilog-A grammar and a Verilog-AMS grammar. Computer program products to implement. 指定された結果に少なくとも部分的に基づいて前記少なくとも1つのアナログテストハーネスモデルを変更するステップをさらに含む、請求項35に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 A computer program product that implements a method of translating a validation command for an electronic circuit design according to claim 35, further comprising modifying the at least one analog test harness model based on at least a part of the specified result. 指定された結果に少なくとも部分的に基づいて前記少なくとも1つの検証サブルーチンコマンドを変更するステップをさらに含む、請求項35に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 A computer program product that implements the method of translating a verification command for an electronic circuit design according to claim 35, further comprising the step of modifying the at least one verification subroutine command based on at least a portion of the specified result. 前記少なくとも1つのパラメータ化された変数を変更するステップをさらに含む、請求項35に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 A computer program product that implements a method of translating a validation command for an electronic circuit design according to claim 35, further comprising the step of modifying the at least one parameterized variable. 前記電子的設計は、少なくとも1つの能動回路及び少なくとも1つの受動回路のうち少なくとも一方を生成する、請求項35に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 A computer program product that implements a method of translating a verification command for an electronic circuit design according to claim 35, wherein the electronic design produces at least one of at least one active circuit and at least one passive circuit. 前記電子的設計は、少なくとも1つの利得及び少なくとも1つの電気信号の少なくとも1つの方向のうち少なくとも一方を調整する少なくとも1つの能動回路を生成する、請求項35に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 The verification command for an electronic circuit design according to claim 35, wherein the electronic design produces at least one active circuit that adjusts at least one gain and at least one direction of at least one electrical signal. A computer program product that implements how to translate. 前記少なくとも1つの検証サブルーチンコマンドは、少なくとも1つの仕様サブセットを有する、請求項35に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 A computer program product that implements a method of translating a verification command for an electronic circuit design according to claim 35, wherein the at least one verification subroutine command has at least one subset of specifications. 前記少なくとも1つの検証サブルーチンコマンドは、少なくとも1つの仕様サブセットを有し、前記少なくとも1つの仕様データベースに記憶された前記少なくとも1つの測定パラメータ、前記少なくとも1つの仕様データベースに記憶された前記少なくとも1つの刺激パラメータ、及び前記少なくとも1つの仕様データベースに記憶された前記少なくとも1つの仕様パラメータのうち少なくとも1つを有する、請求項35に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 The at least one validation subroutine command has at least one specification subset, the at least one measurement parameter stored in the at least one specification database, and the at least one stimulus stored in the at least one specification database. A computer program product that implements a method of translating a verification command for an electronic circuit design according to claim 35, which has parameters and at least one of the at least one specification parameter stored in the at least one specification database. 前記少なくとも1つのアナログハーネスモデルは、少なくとも1つの出力主張及び少なくとも1つの出力測定値のうち前記少なくとも一方に少なくとも部分的に基づいて前記少なくとも1つの仕様サブセットを確認する、請求項42に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 42. The electronic according to claim 42, wherein the at least one analog harness model confirms the at least one specification subset based on at least one of the at least one output claim and at least one output measurement. A computer program product that implements how to translate circuit design verification commands. 前記少なくとも1つのアナログハーネスモデルは、前記少なくとも1つの仕様データベースに記憶された前記少なくとも1つの測定パラメータ、前記少なくとも1つの仕様データベースに記憶された前記少なくとも1つの刺激パラメータ、及び前記少なくとも1つの仕様データベースに記憶された前記少なくとも1つの仕様パラメータのうち少なくとも1つと共に、少なくとも1つの出力主張及び少なくとも1つの出力測定値のうち前記少なくとも一方に少なくとも部分的に基づいて前記少なくとも1つの仕様サブセットを確認する、請求項42に記載の電子回路設計の検証コマンドを翻訳する方法を実施するコンピュータプログラム製品。 The at least one analog harness model includes the at least one measurement parameter stored in the at least one specification database, the at least one stimulus parameter stored in the at least one specification database, and the at least one specification database. Confirm the at least one specification subset based on at least one of the at least one specification parameter stored in, and at least one of the at least one output claim and at least one output measurement. A computer program product that implements the method of translating the verification command of the electronic circuit design according to claim 42.
JP2020502272A 2017-07-19 2018-07-19 Computer-implemented systems and methods for translating electronic design verification commands Pending JP2020528181A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/654,469 US10402505B2 (en) 2014-05-09 2017-07-19 Computer implemented system and method of translation of verification commands of an electronic design
US15/654,469 2017-07-19
PCT/US2018/042793 WO2019018589A1 (en) 2017-07-19 2018-07-19 Computer implemented system and method of translation of verification commands of an electronic design

Publications (1)

Publication Number Publication Date
JP2020528181A true JP2020528181A (en) 2020-09-17

Family

ID=65016230

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020502272A Pending JP2020528181A (en) 2017-07-19 2018-07-19 Computer-implemented systems and methods for translating electronic design verification commands

Country Status (3)

Country Link
EP (1) EP3655963A4 (en)
JP (1) JP2020528181A (en)
WO (1) WO2019018589A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116108778B (en) * 2023-01-12 2024-03-01 上海合见工业软件集团有限公司 Component layering method, device and medium for digital circuit schematic diagram

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07282121A (en) * 1994-04-11 1995-10-27 Hitachi Ltd Simulation input method
US20120198405A1 (en) * 2009-03-06 2012-08-02 Cadence Design Systems, Inc. Method and apparatus for ams simulation of integrated circuit design
JP2017516223A (en) * 2014-05-09 2017-06-15 ジパログ・インコーポレイテッドZipalog, Inc. Computer-implemented system and method for translation of electronic design verification commands

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8326592B2 (en) * 2007-12-21 2012-12-04 Cadence Design Systems, Inc. Method and system for verifying electronic designs having software components
US8639981B2 (en) * 2011-08-29 2014-01-28 Apple Inc. Flexible SoC design verification environment
US9886536B2 (en) * 2015-04-27 2018-02-06 Zipalog, Inc. System and method for passive verification

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07282121A (en) * 1994-04-11 1995-10-27 Hitachi Ltd Simulation input method
US20120198405A1 (en) * 2009-03-06 2012-08-02 Cadence Design Systems, Inc. Method and apparatus for ams simulation of integrated circuit design
JP2017516223A (en) * 2014-05-09 2017-06-15 ジパログ・インコーポレイテッドZipalog, Inc. Computer-implemented system and method for translation of electronic design verification commands

Also Published As

Publication number Publication date
EP3655963A4 (en) 2021-04-14
WO2019018589A1 (en) 2019-01-24
EP3655963A1 (en) 2020-05-27

Similar Documents

Publication Publication Date Title
JP6893232B2 (en) Computer-implemented method and recording medium for translation of electronic design verification commands
US11657201B2 (en) Computer implemented system and method of identification of useful untested states of an electronic design
US9536028B2 (en) Method and system of change evaluation of an electronic design for verification confirmation
US10599793B2 (en) System and method for passive verification
US11704448B2 (en) Computer implemented system and method of translation of verification commands of an electronic design
US20120166168A1 (en) Methods and systems for fault-tolerant power analysis
JP2020528181A (en) Computer-implemented systems and methods for translating electronic design verification commands
JP2017516224A (en) Computer-implemented system and method for identifying useful untested states of electronic design
Mohsin Verification of a Single Port RAM Using UVM Methodology

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220201

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20220428

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220603

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20221004