(57)【特許請求の範囲】
【請求項１】
コンピュータが論理セルのアナログモデルを生成する方法であって、
前記論理セルについて、前記論理セルの入力遷移に応答して起こる前記論理セルの出力遷移を示す少なくとも１つのエントリを含む論理遷移データを、前記論理セルのデジタルモデルの解析に基づき生成するステップと、
前記論理セルについて、前記論理遷移データの各エントリに関連付けられた遷移タイミングパラメータを含む、パラメータ化された遷移に基づくアナログモデルを生成するステップと、
前記論理セルについて、前記パラメータ化された遷移に基づくアナログモデルと、前記論理セルを特徴付ける１又はそれ以上のアナログネットリストとに基づき、アナログモデルを生成するステップと
を有し、
前記アナログモデルは、
前記論理セルの入力を夫々表す１又はそれ以上の入力ノードと、
前記論理セルの出力を夫々表す１又はそれ以上の出力ノードと、
前記１又はそれ以上の入力ノードの夫々を入力として受け、該入力に基づき出力を計算するよう構成される、前記論理セルのブール論理をモデル化するための論理ブロックと、
前記論理ブロックの出力を選択入力として受け、自身のデータ入力部で低閾信号及び高閾信号を受け、遷移アナログ信号を出力するよう構成されるマルチプレクサと、
前記１又はそれ以上の入力ノードの夫々を入力として受け、前記１又はそれ以上の入力ノードの値と、前記パラメータ化された遷移に基づくアナログモデルから選択されるパラメータとに基づき遷移タイミングパラメータを出力するよう構成される、遷移に基づくパラメータブロックと、
前記マルチプレクサの出力及び前記遷移タイミングパラメータを受け、前記１又はそれ以上の入力ノードへの入力に応答して前記論理セルの挙動をモデル化する出力論理信号を出力するよう構成される遷移関数ブロックと
を有する、方法。
【請求項２】
前記アナログモデルは１又はそれ以上の入力キャパシタンスを有し、各入力キャパシタンスは夫々の入力ノードへ結合される、
請求項１に記載の方法。
【請求項３】
前記アナログモデルは、前記遷移関数ブロックの出力へ結合される抵抗を有し、該抵抗は、前記論理セルの出力での負荷をモデル化する、
請求項１に記載の方法。
【請求項４】
特定のエントリについての遷移タイミングパラメータは、前記特定のエントリについての入力遷移と出力遷移との間の遅延、前記特定のエントリについての出力遷移立ち上がり時間、前記特定のエントリについての出力遷移立ち下がり時間、及び前記特定のエントリについて出力負荷をモデル化するための前記特定のエントリについての負荷抵抗、のうち少なくとも１つを含む、
請求項１に記載の方法。
【請求項５】
前記アナログモデルを最適化するステップを更に有し、
前記アナログモデルの最適化は、
前記論理セルの出力タイミング特性の第１の組を決定するよう、前記アナログモデルを、１又はそれ以上のアナログネットリストにおいて具現される前記論理セルの寄生キャパシタンスに基づきシミュレーションするステップと、
前記論理セルの出力タイミング特性の第２の組を決定するよう、前記アナログモデルを、前記パラメータ化された遷移に基づくアナログモデルの選択されたパラメータに基づきシミュレーションするステップと、
前記論理セルの前記出力タイミング特性の第１の組と前記論理セルの前記出力タイミング特性の第２の組との間のパーセント誤差が許容範囲内にある場合に、前記選択されたパラメータを含めるよう前記アナログモデルを更新するステップと
を有する、請求項１に記載の方法。
【請求項６】
前記デジタルモデルは、デジタルモデリング言語において具現される、
請求項１に記載の方法。
【請求項７】
前記アナログモデルは、アナログモデリング言語において具現される、
請求項１に記載の方法。
【請求項８】
前記パラメータ化された遷移に基づくアナログモデルは、アナログモデリング言語において具現される、
請求項１に記載の方法。
【請求項９】
プロセッサによって実行される場合に、前記プロセッサに、
論理セルについて、前記論理セルの入力遷移に応答して起こる前記論理セルの出力遷移を示す少なくとも１つのエントリを含む論理遷移データを、前記論理セルのデジタルモデルの解析に基づき生成させ、
前記論理セルについて、前記論理遷移データの各エントリに関連付けられた遷移タイミングパラメータを含む、パラメータ化された遷移に基づくアナログモデルを生成させ、
前記論理セルについて、前記パラメータ化された遷移に基づくアナログモデルと、前記論理セルを特徴付ける１又はそれ以上のアナログネットリストとに基づき、アナログモデルを生成させる
コンピュータにより実行可能な命令を有し、
前記アナログモデルは、
前記論理セルの入力を夫々表す１又はそれ以上の入力ノードと、
前記論理セルの出力を夫々表す１又はそれ以上の出力ノードと、
前記１又はそれ以上の入力ノードの夫々を入力として受け、該入力に基づき出力を計算するよう構成される、前記論理セルのブール論理をモデル化するための論理ブロックと、
前記論理ブロックの出力を選択入力として受け、自身のデータ入力部で低閾信号及び高閾信号を受け、遷移アナログ信号を出力するよう構成されるマルチプレクサと、
前記１又はそれ以上の入力ノードの夫々を入力として受け、前記１又はそれ以上の入力ノードの値と、前記パラメータ化された遷移に基づくアナログモデルから選択されるパラメータとに基づき遷移タイミングパラメータを出力するよう構成される、遷移に基づくパラメータブロックと、
前記マルチプレクサの出力及び前記遷移タイミングパラメータを受け、前記１又はそれ以上の入力ノードへの入力に応答して前記論理セルの挙動をモデル化する出力論理信号を出力するよう構成される遷移関数ブロックと
を有する、プログラム。
【請求項１０】
プロセッサと、
前記プロセッサへ連通可能に結合され、該プロセッサによって読出可能な１又はそれ以上のコンピュータにより実行可能な命令を記憶したコンピュータ読み取り可能な媒体と
を有し、
前記命令は、読み出され実行される場合に、前記プロセッサに、
論理セルについて、前記論理セルの入力遷移に応答して起こる前記論理セルの出力遷移を示す少なくとも１つのエントリを含む論理遷移データを、前記論理セルのデジタルモデルの解析に基づき生成させ、
前記論理セルについて、前記論理遷移データの各エントリに関連付けられた遷移タイミングパラメータを含む、パラメータ化された遷移に基づくアナログモデルを生成させ、
前記論理セルについて、前記パラメータ化された遷移に基づくアナログモデルと、前記論理セルを特徴付ける１又はそれ以上のアナログネットリストとに基づき、アナログモデルを生成させ、
前記アナログモデルは、
前記論理セルの入力を夫々表す１又はそれ以上の入力ノードと、
前記論理セルの出力を夫々表す１又はそれ以上の出力ノードと、
前記１又はそれ以上の入力ノードの夫々を入力として受け、該入力に基づき出力を計算するよう構成される、前記論理セルのブール論理をモデル化するための論理ブロックと、
前記論理ブロックの出力を選択入力として受け、自身のデータ入力部で低閾信号及び高閾信号を受け、遷移アナログ信号を出力するよう構成されるマルチプレクサと、
前記１又はそれ以上の入力ノードの夫々を入力として受け、前記１又はそれ以上の入力ノードの値と、前記パラメータ化された遷移に基づくアナログモデルから選択されるパラメータとに基づき遷移タイミングパラメータを出力するよう構成される、遷移に基づくパラメータブロックと、
前記マルチプレクサの出力及び前記遷移タイミングパラメータを受け、前記１又はそれ以上の入力ノードへの入力に応答して前記論理セルの挙動をモデル化する出力論理信号を出力するよう構成される遷移関数ブロックと
を有する、コンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、概して、シミュレーション及び検証のための回路設計のモデル化に関し、より具体的には、物理設計のシステムレベルでのシミュレーション及び検証のための方法及びシステムに関する。
【背景技術】
【０００２】
集積回路は、デジタル、アナログ、又は混合信号回路を有してよい。同じ集積回路内にアナログブロック及びデジタルブロックの両方を有する混合信号設計は、ますます目にするようになりつつある。しばしば、混合信号集積回路は機能ブロックに分割されることがある。そのような分割は、回路のアナログ部分とデジタル部分とをブロックに分けて、かかる集積回路を設計する際の複雑さをより扱いやすいものとすることができる。それらの個々のブロックは、ブロックの機能の設計及び検証に適したＥＤＡ（Electronic  Design  Automation）ツールを用いて、別々に設計及び検証をされてよい。更に、各ブロックは、ＥＤＡツールを用いて物理レイアウトのために自動的に合成されてよく、あるいは、手動でレイアウトされてよい。次いで、物理ブロックは、混合信号回路の完成した設計を形成するようレイアウトにおいて又は回路上で組み立てられてよい。
【０００３】
集積回路のサイズは、数十億個のトランジスタを含むよう大きくなっており、テープアウトの前にシステムレベルで物理設計を検証する際に相当な複雑性を生じさせる。検証のために、アナログ設計者は、システム全体がＳＰＩＣＥのような精度を有してシミュレーションされることを好み、デジタル設計者は、基本的にアナログ部品を取り去る高度な検証メソドロジを好む。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
以上より、有効なレベルの検証を依然として保ちながら検証の複雑性を低減するアプローチが望まれている。
【課題を解決するための手段】
【０００５】
本開示は、混合信号集積回路を検証するための既存の方法及びシステムに付随する欠点及び問題を軽減又は解消する方法及びシステムを開示する。
【０００６】
方法は、論理セルについて、該論理セルの入力遷移に応答して起こる論理セルの出力遷移を示す少なくとも１つのエントリを含む論理遷移データを、前記論理セルのデジタルモデルの解析に基づき生成するステップを有してよい。方法は、前記論理セルについて、前記論理遷移データの各エントリに関連付けられた遷移タイミングパラメータを含む、パラメータ化された遷移に基づくアナログモデルを生成するステップを更に有してよい。方法は、前記論理セルについて、前記パラメータ化された遷移に基づくアナログモデルと、前記論理セルを特徴付ける１又はそれ以上のアナログネットリストとに基づき、アナログモデルを生成するステップを更に有してよい。前記アナログモデルは、（ｉ）前記論理セルの入力を夫々表す１又はそれ以上の入力ノードと、（ｉｉ）前記論理セルの出力を夫々表す１又はそれ以上の出力ノードと、（ｉｉｉ）前記１又はそれ以上の入力ノードの夫々を入力として受け、該入力に基づき出力を計算するよう構成される、前記論理セルのブール論理をモデル化するための論理ブロックと、（ｉｖ）前記論理ブロックの出力を選択入力として受け、自身のデータ入力部で低閾信号及び高閾信号を受け、遷移アナログ信号を出力するよう構成されるマルチプレクサと、（ｖ）前記１又はそれ以上の入力ノードの夫々を入力として受け、前記１又はそれ以上の入力ノードの値と、前記パラメータ化された遷移に基づくアナログモデルから選択されるパラメータとに基づき遷移タイミングパラメータを出力するよう構成される、遷移に基づくパラメータブロックと、（ｖｉ）前記マルチプレクサの出力及び前記遷移タイミングパラメータを受け、前記１又はそれ以上の入力ノードへの入力に応答して前記論理セルの挙動をモデル化する出力論理信号を出力するよう構成される遷移関数ブロックとを有する。
【０００７】
本開示のある実施形態の技術上の利点には、論理セルの論理関数並びに負荷及びタイミング特性を維持するようアナログモデリング言語において混合信号回路の論理セルをモデル化するアプローチがある。そのようなモデル化は、従来のアプローチと比較して、論理セルを含むより大きい回路のより効率的なシミュレーション及び検証を可能にする。
【０００８】
他の技術上の利点は、以下の説明、図面及び特許請求の範囲から当業者には容易に認識されるであろう。更に、特定の利点が先に挙げられたが、様々な実施形態は、それらの利点の全て又は一部を有してよく、あるいは、それらの利点を全く有さなくてもよい。
【発明の効果】
【０００９】
本発明の実施形態によれば、有効なレベルの検証を依然として保ちながら検証の複雑性を低減することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】本開示のある実施形態に従うコンピュータ装置の例のブロック図を表す。
【図２】本開示のある実施形態に従う、所与の論理セルについてアナログモデルを生成するフローの例の図を表す。
【図３】本開示のある実施形態に従うＸＯＲ論理ゲート及びそのＸＯＲ論理ゲートのための入出力遷移経路の遷移設定の組を表す。
【図４】本開示のある実施形態に従う、遷移関数の変数を明示する入出力波形の例の信号プロットを表す。
【図５】本開示のある実施形態に従う所与の論理セルのアナログモデルの例を表す。
【図６】本開示のある実施形態に従う、所与の論理セルのアナログモデルを最適化するフローの例の図を表す。
【発明を実施するための形態】
【００１１】
本発明及びその利点のより完全な理解のために、添付の図面とともに以下の説明が参照される。
【００１２】
実施形態及びそれらの利点は、図１乃至６の参照により最もよく理解される。同じ参照符号は、同じ又は対応する部分を示すために使用される。
【００１３】
図１は、本開示のある実施形態に従う例となるコンピュータ装置１０２のブロック図を表す。コンピュータ装置１０２は、ビジネス上、科学上、制御上、又は他の目的のためにあらゆる形態の情報、知能、又はデータを計算し、分類し、処理し、送信し、受信し、検索し、発生させ、切り替え、記憶し、表示し、証明し、検出し、記録し、再生し、操作し、又は利用するよう動作可能なあらゆる手段又は手段の集合体を有してよい。例えば、コンピュータ装置１０２は、パーソナルコンピュータ、ネットワーク記憶装置、又はその他の適切な装置であってよく、大きさ、形状、性能、機能、及び価格において様々であってよい。ある実施形態において、コンピュータ装置１０２は、パーソナルコンピュータ又はワークステーション（例えば、デスクトップコンピュータ又はポータブルコンピュータ）であってよい。他の実施形態において、コンピュータ装置１０２は、プロセッサ１０３、及びコンピュータ１０３と連通可能に結合されたメモリ１０４を有してよい。
【００１４】
プロセッサ１０３は、プログラム命令を解釈及び／又は実行し且つ／あるいはデータを処理するよう構成されたあらゆるシステム、装置、又は機器を有してよく、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、あるいは、プログラム命令を解釈及び／又は実行し且つ／あるいはデータを処理するよう構成されたその他のデジタル又はアナログ回路を有してよいが、これらに限られない。幾つかの実施形態において、プロセッサ１０３が解釈及び／又は実行するプログラム命令且つ／あるいは処理するデータは、メモリ１０４に記憶されており、且つ／あるいは、メモリ１０４から伝送されてよい。
【００１５】
メモリ１０４は、プロセッサ１０３と連通可能に結合されてよく、時間期間にプログラム命令又はデータを保持するよう構成されたあらゆるシステム、装置、又は機器を有してよい（例えば、コンピュータ読み取り可能な媒体）。メモリ１０４は、ランダムアクセスメモリ（ＲＡＭ）、電気的消去・プログラム可能型読出専用メモリ（ＥＥＰＲＯＭ）、ＰＣＭＣＩＡカード、フラッシュメモリ、磁気記憶装置、光学磁気記憶装置、固体状態記憶装置、あるいは、コンピュータ装置１０２への電力がオフされた後にデータを保持する揮発性又は不揮発性メモリのあらゆる適切なセクション及び／又はアレイを有してよい。図１に示されるように、メモリ１０４は、モデル生成モジュール１０６、アナログネットリスト１０８、デジタルモデル１１０、パラメータ化された遷移に基づくアナログモデル１１２、及びアナログモデル１１４を記憶してよい。
【００１６】
モデル生成モジュール１０６は、アナログネットリスト１０８、デジタルモデル１１０、及び／又は他の適切なデータを受け取って、かかるデータの解析に基づき、所与の論理セルについてアナログモデルを生成するよう構成されたあらゆるシステム、装置、又は機器を有してよい。モデル生成モジュール１０６の機能及び論理セルのアナログモデルのその生成に関する詳細は、以下、図２乃至６の説明に関して、より詳しく記載される。
【００１７】
アナログネットリスト１０８は、所与の論理セルに関して、かかる論理セルのアナログ回路素子及び／又はアナログ回路素子によって要約若しくはモデル化されるかかる論理セルの特性を示す１又はそれ以上のデータファイルを有してよい。例えば、所与の論理セルのためのアナログネットリスト１０８は、その所与の論理セルのレイアウト抽出された寄生キャパシタンス及び抵抗を含むＳＰＩＣＥネットリスト、すなわち、セルのファンアウト（fanout）データ（セルの入力キャパシタンスに対するセルの出力キャパシタンスの比、及び／又は論理セルの他の適切なアナログ部品表現）を有してよい。
【００１８】
デジタルモデル１１０は、所与の論理セルに関して、デジタルモデリング言語を含む１又はそれ以上のデータファイルを有してよい。例えば、所与の論理セルのためのデジタルモデル１１０は、ヴェリログ（Verilog）、ＶＨＤＬ、又は所与のセルの論理表現を詳述する他の論理リスティングを有してよい。
【００１９】
パラメータ化された遷移に基づくアナログモデル１１２は、入出力遷移経路（以下でより詳細に記載されるように、デジタルモデル１１０の解析に基づき生成される。）及びアナログネットリスト１０８（例えば、レイアウト抽出されたＳＰＩＣＥ寄生抵抗及びキャパシタンスのネットリスト）に基づき生成される所与の論理セルのパラメータ化されたモデルを有してよい。そのようなパラメータ化されたモデルは、論理セルの各入出力遷移に関連する様々なパラメータ（例えば、遅延、立ち上がり時間、立ち下がり時間、出力抵抗、等）を有してよい。幾つかの実施形態において、パラメータ化された遷移に基づくアナログモデル１１２は、アナログモデリング言語（ヴェリログＡ）において具現されてよい。パラメータ化された遷移に基づくアナログモデル１１２は、以下で図２乃至６の説明に関してより詳しく記載されるように、モデル生成モジュール１０６によって生成されてよい。
【００２０】
アナログモデル１１４は、所与の論理セルに関して、回路のシミュレーション及び／又は検証を実行するよう他の論理セルのアナログモデルに関して使用されうる論理セルのアナログ表現を有してよい。幾つかの実施形態において、アナログモデル１１４は、アナログモデリング言語（ヴェリログＡ）において具現されてよい。アナログモデル１１４は、以下で図２乃至６の説明に関してより詳しく記載されるように、モデル生成モジュール１０６によって生成されてよい。
【００２１】
図２は、本開示の実施形態に従う、所与の論理セルについてアナログモデル１１４を生成する例となるフロー２００の図を表す。図２に示されるように、フロー２００は、４つのメインステップ２０２、２０４、２０６及び２０８を有してよい。かかる４つのステップが表されているが、幾つかの実施形態においては、ステップは異なる順序において起こってよいことが知られている。それらの及び他の実施形態において、アナログモデル１１４の生成は、より多い又はより少ないステップにより達成されてよい。
【００２２】
ステップ２０２で、モデル生成モジュール１０６は、論理セルがデジタルモデル１１０においてモデル化される場合に、その論理セルの入力と出力との間の論理関係を読み出して分析してよい。そのような論理関係に基づき、論理セルの出力での遷移を生じさせる全ての起こり得る入力状態が収集され、論理セルのための論理遷移データとして記憶される。実例として、図３は、標準的なＸＯＲ論理ゲートと、そのＸＯＲ論理ゲートのためのデジタルモデル（例えば、ヴェリログモデル）の解析に基づき生成されうる入出力遷移経路の組を含む論理遷移データとを示す。幾つかの実施形態において、ユーザ選択が、ステップ２０２で生成されるモデリング遷移に組み込まれてよい。例えば、より簡単な遷移モデルが、精度が失われるという犠牲を払って性能を改善するために使用されてよい。そのような簡単なモデルは、他の入力での変化を考慮しない一入力対一出力遷移を有してよい。更に、論理セルの入力遷移及び出力遷移を示すよう、論理遷移データは、論理セルの入力遷移及び出力負荷の遷移時間又はスルーレート（slew  rate）を含む（しかし、これに限られない。）論理セルに関する他の情報も示してよい。
【００２３】
ステップ２０４で、モデル生成モジュール１０６は、パラメータ化された遷移に基づくアナログモデル１１２を生成するために、アナログネットリスト１０８（例えば、レイアウト抽出されたＳＰＩＣＥ寄生キャパシタンスのネットリスト及びファンアウトデータ）の１又はそれ以上と、ステップ２０２で生成された論理遷移データとを読み出して解析してよい。パラメータ化された遷移に基づくアナログモデル１１２は、遷移関数（例えば、以下でより詳細に記載される遷移関数５１６）に基づいてよい。遷移関数の演算は、図４において表される。遷移関数は、出力遷移を発生しうる入力オペランドに対する演算を有してよい。入力遷移からの出力遷移の遅延、並びに出力遷移の立ち上がり及び／又は立ち下がり時間は、遷移関数に対するパラメータとして特定されてよい。遷移点は、遷移の種類が推定されうる遷移信号波形上の単一点であってよい。しばしば、遷移点は、信号がその低閾値と高閾値との間の中間点を横断する点である。スプリアス遷移がモデル化されるべき場合に、遷移点は、現在の値からの小さい割合又は何らかの変化として定義されてよい。パラメータ“DELAY”は、入力の遷移点（例えば、中間点）からその対応する出力の遷移点（例えば、中間点）までの時間遅延を有してよい。パラメータ“trise”及び“tfall”は、夫々、出力遷移の立ち上がり時間及び立ち下がり時間を有してよい。パラメータDELAY、trise及びtfallは、定数であってよく、あるいは、値がアナログモデル１１４の他の部分によって制御され得る変数であってよい。
【００２４】
パラメータ化された遷移に基づくアナログモデル１１２に関し、ステップ２０２で生成された論理遷移データにおけるあらゆるエントリは、パラメータの組にマッピングしてよい。夫々のエントリのそのようなパラメータは、立ち上がり遅延（tdr）、立ち下がり遅延（tdf）、立ち上がり遷移時間（trise）、立ち下がり遷移時間（tfall）、並びに立ち下がり及び立ち上がり遷移の出力抵抗（夫々Ronf及びRonr）を有してよい。言い換えると、遷移関数の引数tdr、tdf、trise及びtfall、並びにRonf及びRonrは、夫々、遷移テーブル内の要素の組である領域を有する関数の範囲としてモデル化されてよい。Ronf及びRonrは、以下でより詳細に記載されるように、出力負荷によって引き起こされる遅延効果をモデル化するために使用されてよい。かかるパラメータ関数は、入力遷移に続く０から１までの出力の遷移を表す次の式によって表される：
V(504)＝vss      t＜tin01＋tfr−trise／2の場合
V(504)＝vss＋（vdd−vss）・（t−tin01−tdr＋trise／2）／trise
（tin01＋tdr−trise／2）≦t≦（tin01＋tdr＋trise／2）の場合
V(504)＝vdd      t＞tin01＋tdr＋trise／2の場合
Ronr・Cload・dV(506)／dt＝V(506)−V(504)
ここで、tは、時間であり、V(504)は、図５のノード５０４での電圧であり、V(506)は、図５のノード５０６での電圧であり、tin01は、出力を論理０から論理１に切り替えるゲートに対する入力の遷移の絶対時間であり、Cloadは、図５のノード５０６での集中キャパシタンス負荷であり、dV(506)／dtは、ｔに対するV(506)の導関数であり、tdr、trise及びRonrは、アナログモデルパラメータである。実際上、モデリング言語としてヴェリログＡを用いる場合には、シミュレータはV(504)の遷移を平滑化するので、V(504)を表す式は近似である。最終の線形微分方程式は、V(506)を計算するようシミュレータによって解かれる。シミュレータは、ノード５０６での負荷が集中しているとの制限を有さない点に留意されたい。なお、本開示に従ってモデルを構築する場合に、集中容量性負荷を用いることは、シミュレーション出力からのパラメータRonrの抽出を簡単にする。立ち下がり遷移に関するV(504)及びV(506)の式は、モデルパラメーがtdf、tfall、及びRonfによって置換され且つvdd及びvssが交換される点を除いて、上記の式と同じ形をとる。
【００２５】
パラメータ化された遷移に基づくアナログモデル１１２から、アナログモデル１１４が生成され得る。図５は、本開示のある実施形態に従う、所与の論理セルの例となるアナログモデル１１４を表す。アナログモデル１１４は、１又はそれ以上の入力ノード５０２、１又はそれ以上の内部出力ノード５０４、及び１又はそれ以上の出力ノード５０６を有してよい。入力ノード５０２は、モデル化される論理セルの入力に相当し、出力ノード５０４は、モデル化される論理セルの出力に相当する。図５に示されるように、各入力ノード５０２は、夫々の入力キャパシタンス５０８に結合されてよい。各入力キャパシタンスは、アナログネットリスト１０８（キャパシタンス抽出されたＳＰＩＣＥネットリスト）における１又はそれ以上の値に基づき求められてよい。
【００２６】
入力ノード５０２は、論理ブロック５１０及び遷移に基づくパラメータブロック５１２の夫々へ結合されてよい。論理ブロック５１０は、モデル化される論理セルのブール論理をモデル化してよい。入力ノード５０２での入力値及び論理ブロック５１０の論理表現に基づき、論理ブロック５１０は、出力されるブール値を計算してよい。論理ブロック５１０の出力は、マルチプレクサ段５１４の選択ポートへ結合されてよい。マルチプレクサ段５１４の入力ポートは、夫々、低閾信号レベル（例えば、vss）及び高閾信号レベル（例えば、vdd）へ結合されてよい。よって、マルチプレクサ段５１４の出力は、アナログ信号領域における遷移を生じうる。そのような遷移は、遷移関数５１６への入力オペランドとして適用されてよい。
【００２７】
遷移に基づくパラメータブロック５１２は、パラメータ化された遷移に基づくアナログモデル１１２に基づいてよく、あるいは、それに相当してよい。入力ノード５０２での入力遷移及びパラメータ化された遷移に基づくアナログモデル１１２のパラメータ化された関数に基づき、遷移に基づくパラメータブロック５１２は、delay、trise、及びtfallの値を出力してよい。それらの出力値は、遷移関数５１６への入力オペランドとして適用されてよい。
【００２８】
それらの入力オペランドに基づき、遷移関数５１６は、論理セルがアナログ部品のみを用いて完全に合成されてモデル化された場合に見られるような特性を近似する特性（例えば、スルー及び遅延）を有するアナログ信号を内部出力ノード５０４へ出力してよい。遷移関数５１６によってモデル化された遅延は、無負荷の出力に存在する遅延を有してよい。従って、抵抗Ron５１８が内部出力ノード５０４と出力ノード５０６との間に結合されてよく、それにより、出力負荷によって引き起こされる遅延効果は出力ノード５０６においてモデル化され得る。更に、Ronの値は、立ち上がり及び立ち下がり出力遷移の効果と、異なる入力−出力経路の効果とを表すよう、アナログモデル１１４において動的に変更されてよい。図５は、様々な構成要素ブロックを有する概略図としてアナログモデル１１４を表すが、アナログモデル１１４及びその様々な構成要素は、アナログモデリング言語（例えば、ヴェリログＡ）においてモデル化されてよい。
【００２９】
ステップ２０６で、モデル生成モジュール１０６は、パラメータ化された遷移に基づくアナログモデル１１２の最適値を決定するよう最適化ステップを実行してよい。図６は、本開示のある実施形態に従う、所与の論理セルのアナログモデル１１４を最適化する例となるフローの図を表す。かかる最適化を実行するよう、アナログシミュレーション試験ベンチ（例えば、ＳＰＩＣＥを用いる。）は、所与の論理セルについて、ステップ２０２でその論理セルについて生成された論理遷移データの全てのエントリについて出力遅延及びスルーを測定するよう、生成されてよい。試験ベンチは、論理遷移データにおいて存在するエントリと同数の論理セルのインスタンスを有してよい。論理セルデータにおける各エントリは、入力励起（input  excitation）及び出力負荷整合エントリ（output  load  matching  entry）を有する論理セルの対応するインスタンスを有してよい。この試験ベンチは、アナログネットリスト１０８（例えば、抵抗／キャパシタンス抽出されたネットリスト）において具現される論理セルの寄生特性を有して実行されてよく、論理セルの出力の遅延及び遷移（スルー）時間は、比較のために記録されてよい。
【００３０】
最適化の一部として、試験ベンチは、パラメータ化された遷移に基づくアナログモデル１１２及びパラメータ化された遷移に基づくアナログモデル１１２のための選択されたパラメータを有して実行されてもよい。論理セルの出力の遅延及び遷移時間は、寄生特性を含んだ予め記録されたシミュレーションと比較されてよい。寄生特性シミュレーション及びパラメータベース・シミュレーションの遅延及び遷移時間の間のパーセント誤差が特定の値（例えば、図６に示される１％）よりも小さい場合には、最適化ステップは終了してよく、選択されたパラメータは記憶されてよい。パーセント誤差が特定の値よりも大きい場合には、図６に表されるループは、パラメータの様々な値により繰り返されてよい。それらの異なるパラメータは、図６に表されるループの事前の繰り返しに基づき、例えば、二分探索（bisection）、ニュートン・ラフソン法、レーベンバーグ・マルカート法、又は他を含む標準的な数値法によって選択されてよい。更に、又は代替的に、幾つかの市販のシミュレータ（例えば、ＨＳＰＩＣＥ）は、内部でループの繰り返しを行うよう用いられるオプティマイザを組み込むことができる。幾つかの実施形態において、ループは、パーセント誤差が特定の値よりも小さくなるまで繰り返してよい。他の実施形態では、ループは、特定の数の繰り返しの後に終了してよい。
【００３１】
ステップ２０８で、モデル生成モジュール１０６は、ステップ２０６の最適化において選択されたアナログモデルパラメータによりアナログモデル１１４を更新してよい。アナログモデル１１４は、論理セルを含むより大きい混合信号回路のシミュレーション及び／又は検証において、その夫々の論理セルをモデル化するために使用されてよい。
【００３２】
コンピュータ装置１０２の構成要素は、インターフェース、ロジック、メモリ、及び／又は他の適切な要素を含んでよい。インターフェースは、入力を受信し、出力を送信し、入力及び／又は出力を処理し、且つ／あるいは、他の適切な動作を実行する。インターフェースは、ハードウェア及び／又はソフトウェアを有してよい。
【００３３】
ロジックは、構成要素の動作を実行し、例えば、入力から出力を生成するよう命令を実行する。ロジックは、ハードウェア、ソフトウェア、及び／又は他のロジックを含んでよい。ロジックは、１又はそれ以上の有形なコンピュータ読み取り可能な記憶媒体においてエンコードされてよく、コンピュータ（例えば、コンピュータ装置１０２）によって実行される場合に動作を実行してよい。あるロジック、例えばプロセッサは、構成要素の動作を管理してよい。プロセッサの例には、１又はそれ以上のコンピュータ、１又はそれ以上のマイクロコンピュータ、１又はそれ以上のアプリケーション、及び／又は他のロジックがある。
【００３４】
メモリは情報を記憶する。メモリは、１又はそれ以上の有形なコンピュータ読み取り可能な及び／又はコンピュータ実行可能な記憶媒体を有してよい。メモリの例には、コンピュータメモリ（例えば、ランダムアクセスメモリ（ＲＡＭ）又は読出専用メモリ（ＲＯＭ））大容量記憶媒体（例えば、ハードディスク）、リムーバブル記憶媒体（例えば、コンパクトディスク（ＣＤ）又はデジタルバーサタイルディスク（ＤＶＤ））、データベース及び／又はネットワーク記憶装置（例えば、サーバ）、及び／又は他のコンピュータ読み取り可能な媒体がある。
【００３５】
改良、追加、又は削除が、本発明の適用範囲から逸脱することなしに、コンピュータ装置１０２に対してなされてよい。コンピュータ装置１０２の構成要素は一体化又は分割されてよい。更に、システム１００の動作は、より多い、より少ない、又は他の構成要素によって実行されてよい。更に、コンピュータ装置１０２の動作は、あらゆる適切なロジックを用いて実行されてよい。本願において用いられるように、「各」又は「夫々」は、組の各員又は組のサブセットの各員をいう。
【００３６】
本開示は特定の実施形態に関して記載されてきたが、実施形態の変更及び置換は当業者に明らかであろう。従って、実施形態についての上記の説明は本開示を制限しない。他の変更、置換、及び代替は、特許請求の範囲によって定義されるように、本開示の主旨及び適用範囲から逸脱することなしに可能である。
【００３７】
また、以下の付記が、上記の実施形態に関連して開示される。
【００３８】
（付記１）
論理セルのアナログモデルを生成する方法であって、
前記論理セルについて、前記論理セルの入力遷移に応答して起こる前記論理セルの出力遷移を示す少なくとも１つのエントリを含む論理遷移データを、前記論理セルのデジタルモデルの解析に基づき生成するステップと、
前記論理セルについて、前記論理遷移データの各エントリに関連付けられた遷移タイミングパラメータを含む、パラメータ化された遷移に基づくアナログモデルを生成するステップと、
前記論理セルについて、前記パラメータ化された遷移に基づくアナログモデルと、前記論理セルを特徴付ける１又はそれ以上のアナログネットリストとに基づき、アナログモデルを生成するステップと
を有し、
前記アナログモデルは、
前記論理セルの入力を夫々表す１又はそれ以上の入力ノードと、
前記論理セルの出力を夫々表す１又はそれ以上の出力ノードと、
前記１又はそれ以上の入力ノードの夫々を入力として受け、該入力に基づき出力を計算するよう構成される、前記論理セルのブール論理をモデル化するための論理ブロックと、
前記論理ブロックの出力を選択入力として受け、自身のデータ入力部で低閾信号及び高閾信号を受け、遷移アナログ信号を出力するよう構成されるマルチプレクサと、
前記１又はそれ以上の入力ノードの夫々を入力として受け、前記１又はそれ以上の入力ノードの値と、前記パラメータ化された遷移に基づくアナログモデルから選択されるパラメータとに基づき遷移タイミングパラメータを出力するよう構成される、遷移に基づくパラメータブロックと、
前記マルチプレクサの出力及び前記遷移タイミングパラメータを受け、前記１又はそれ以上の入力ノードへの入力に応答して前記論理セルの挙動をモデル化する出力論理信号を出力するよう構成される遷移関数ブロックと
を有する、方法。
【００３９】
（付記２）
前記アナログモデルは１又はそれ以上の入力キャパシタンスを有し、各入力キャパシタンスは夫々の入力ノードへ結合される、
付記１に記載の方法。
【００４０】
（付記３）
前記アナログモデルは、前記遷移関数ブロックの出力へ結合される抵抗を有し、該抵抗は、前記論理セルの出力での負荷をモデル化する、
付記１に記載の方法。
【００４１】
（付記４）
特定のエントリについての遷移タイミングパラメータは、前記特定のエントリについての入力遷移と出力遷移との間の遅延、前記特定のエントリについての出力遷移立ち上がり時間、前記特定のエントリについての出力遷移立ち下がり時間、及び前記特定のエントリについて出力負荷をモデル化するための前記特定のエントリについての負荷抵抗、のうち少なくとも１つを含む、
付記１に記載の方法。
【００４２】
（付記５）
前記アナログモデルを最適化するステップを更に有し、
前記アナログモデルの最適化は、
前記論理セルの出力タイミング特性の第１の組を決定するよう、前記アナログモデルを、１又はそれ以上のアナログネットリストにおいて具現される前記論理セルの寄生キャパシタンスに基づきシミュレーションするステップと、
前記論理セルの出力タイミング特性の第２の組を決定するよう、前記アナログモデルを、前記パラメータ化された遷移に基づくアナログモデルの選択されたパラメータに基づきシミュレーションするステップと、
前記論理セルの前記出力タイミング特性の第１の組と前記論理セルの前記出力タイミング特性の第２の組との間のパーセント誤差が許容範囲内にある場合に、前記選択されたパラメータを含めるよう前記アナログモデルを更新するステップと
を有する、付記１に記載の方法。
【００４３】
（付記６）
前記デジタルモデルは、デジタルモデリング言語において具現される、
付記１に記載の方法。
【００４４】
（付記７）
前記アナログモデルは、アナログモデリング言語において具現される、
付記１に記載の方法。
【００４５】
（付記８）
前記パラメータ化された遷移に基づくアナログモデルは、アナログモデリング言語において具現される、
付記１に記載の方法。
【００４６】
（付記９）
コンピュータ読み取り可能な媒体と、
前記コンピュータ読み取り可能な媒体に坦持され、プロセッサによって読出可能であり、読み出され実行される場合に、前記プロセッサに、
論理セルについて、前記論理セルの入力遷移に応答して起こる前記論理セルの出力遷移を示す少なくとも１つのエントリを含む論理遷移データを、前記論理セルのデジタルモデルの解析に基づき生成させ、
前記論理セルについて、前記論理遷移データの各エントリに関連付けられた遷移タイミングパラメータを含む、パラメータ化された遷移に基づくアナログモデルを生成させ、
前記論理セルについて、前記パラメータ化された遷移に基づくアナログモデルと、前記論理セルを特徴付ける１又はそれ以上のアナログネットリストとに基づき、アナログモデルを生成させる
コンピュータにより実行可能な命令と
を有し、
前記アナログモデルは、
前記論理セルの入力を夫々表す１又はそれ以上の入力ノードと、
前記論理セルの出力を夫々表す１又はそれ以上の出力ノードと、
前記１又はそれ以上の入力ノードの夫々を入力として受け、該入力に基づき出力を計算するよう構成される、前記論理セルのブール論理をモデル化するための論理ブロックと、
前記論理ブロックの出力を選択入力として受け、自身のデータ入力部で低閾信号及び高閾信号を受け、遷移アナログ信号を出力するよう構成されるマルチプレクサと、
前記１又はそれ以上の入力ノードの夫々を入力として受け、前記１又はそれ以上の入力ノードの値と、前記パラメータ化された遷移に基づくアナログモデルから選択されるパラメータとに基づき遷移タイミングパラメータを出力するよう構成される、遷移に基づくパラメータブロックと、
前記マルチプレクサの出力及び前記遷移タイミングパラメータを受け、前記１又はそれ以上の入力ノードへの入力に応答して前記論理セルの挙動をモデル化する出力論理信号を出力するよう構成される遷移関数ブロックと
を有する、製品。
【００４７】
（付記１０）
前記アナログモデルは１又はそれ以上の入力キャパシタンスを有し、各入力キャパシタンスは夫々の入力ノードへ結合される、
付記９に記載の製品。
【００４８】
（付記１１）
前記アナログモデルは、前記遷移関数ブロックの出力へ結合される抵抗を有し、該抵抗は、前記論理セルの出力での負荷をモデル化する、
付記９に記載の製品。
【００４９】
（付記１２）
特定のエントリについての遷移タイミングパラメータは、前記特定のエントリについての入力遷移と出力遷移との間の遅延、前記特定のエントリについての出力遷移立ち上がり時間、前記特定のエントリについての出力遷移立ち下がり時間、及び前記特定のエントリについて出力負荷をモデル化するための前記特定のエントリについての負荷抵抗、のうち少なくとも１つを含む、
付記９に記載の製品。
【００５０】
（付記１３）
前記コンピュータにより実行可能な命令は、読み出され実行される場合に、前記プロセッサに、更に、前記アナログモデルを最適化させ、
前記アナログモデルの最適化は、
前記論理セルの出力タイミング特性の第１の組を決定するよう、前記アナログモデルを、１又はそれ以上のアナログネットリストにおいて具現される前記論理セルの寄生キャパシタンスに基づきシミュレーションするステップと、
前記論理セルの出力タイミング特性の第２の組を決定するよう、前記アナログモデルを、前記パラメータ化された遷移に基づくアナログモデルの選択されたパラメータに基づきシミュレーションするステップと、
前記論理セルの前記出力タイミング特性の第１の組と前記論理セルの前記出力タイミング特性の第２の組との間のパーセント誤差が許容範囲内にある場合に、前記選択されたパラメータを含めるよう前記アナログモデルを更新するステップと
を有する、付記９に記載の製品。
【００５１】
（付記１４）
前記デジタルモデルは、デジタルモデリング言語において具現される、
付記９に記載の製品。
【００５２】
（付記１５）
前記アナログモデルは、アナログモデリング言語において具現される、
付記９に記載の製品。
【００５３】
（付記１６）
前記パラメータ化された遷移に基づくアナログモデルは、アナログモデリング言語において具現される、
付記９に記載の製品。
【００５４】
（付記１７）
プロセッサと、
前記プロセッサへ連通可能に結合され、該プロセッサによって読出可能な１又はそれ以上のコンピュータにより実行可能な命令を記憶したコンピュータ読み取り可能な媒体と
を有し、
前記命令は、読み出され実行される場合に、前記プロセッサに、
論理セルについて、前記論理セルの入力遷移に応答して起こる前記論理セルの出力遷移を示す少なくとも１つのエントリを含む論理遷移データを、前記論理セルのデジタルモデルの解析に基づき生成させ、
前記論理セルについて、前記論理遷移データの各エントリに関連付けられた遷移タイミングパラメータを含む、パラメータ化された遷移に基づくアナログモデルを生成させ、
前記論理セルについて、前記パラメータ化された遷移に基づくアナログモデルと、前記論理セルを特徴付ける１又はそれ以上のアナログネットリストとに基づき、アナログモデルを生成させ、
前記アナログモデルは、
前記論理セルの入力を夫々表す１又はそれ以上の入力ノードと、
前記論理セルの出力を夫々表す１又はそれ以上の出力ノードと、
前記１又はそれ以上の入力ノードの夫々を入力として受け、該入力に基づき出力を計算するよう構成される、前記論理セルのブール論理をモデル化するための論理ブロックと、
前記論理ブロックの出力を選択入力として受け、自身のデータ入力部で低閾信号及び高閾信号を受け、遷移アナログ信号を出力するよう構成されるマルチプレクサと、
前記１又はそれ以上の入力ノードの夫々を入力として受け、前記１又はそれ以上の入力ノードの値と、前記パラメータ化された遷移に基づくアナログモデルから選択されるパラメータとに基づき遷移タイミングパラメータを出力するよう構成される、遷移に基づくパラメータブロックと、
前記マルチプレクサの出力及び前記遷移タイミングパラメータを受け、前記１又はそれ以上の入力ノードへの入力に応答して前記論理セルの挙動をモデル化する出力論理信号を出力するよう構成される遷移関数ブロックと
を有する、コンピュータシステム。
【００５５】
（付記１８）
前記アナログモデルは１又はそれ以上の入力キャパシタンスを有し、各入力キャパシタンスは夫々の入力ノードへ結合される、
付記１７に記載のコンピュータシステム。
【００５６】
（付記１９）
前記アナログモデルは、前記遷移関数ブロックの出力へ結合される抵抗を有し、該抵抗は、前記論理セルの出力での負荷をモデル化する、
付記１７に記載のコンピュータシステム。
【００５７】
（付記２０）
特定のエントリについての遷移タイミングパラメータは、前記特定のエントリについての入力遷移と出力遷移との間の遅延、前記特定のエントリについての出力遷移立ち上がり時間、前記特定のエントリについての出力遷移立ち下がり時間、及び前記特定のエントリについて出力負荷をモデル化するための前記特定のエントリについての負荷抵抗、のうち少なくとも１つを含む、
付記１７に記載のコンピュータシステム。
【００５８】
（付記２１）
前記コンピュータにより実行可能な命令は、読み出され実行される場合に、前記プロセッサに、更に、前記アナログモデルを最適化させ、
前記アナログモデルの最適化は、
前記論理セルの出力タイミング特性の第１の組を決定するよう、前記アナログモデルを、１又はそれ以上のアナログネットリストにおいて具現される前記論理セルの寄生キャパシタンスに基づきシミュレーションするステップと、
前記論理セルの出力タイミング特性の第２の組を決定するよう、前記アナログモデルを、前記パラメータ化された遷移に基づくアナログモデルの選択されたパラメータに基づきシミュレーションするステップと、
前記論理セルの前記出力タイミング特性の第１の組と前記論理セルの前記出力タイミング特性の第２の組との間のパーセント誤差が許容範囲内にある場合に、前記選択されたパラメータを含めるよう前記アナログモデルを更新するステップと
を有する、付記１７に記載のコンピュータシステム。
【符号の説明】
【００５９】
１０２  コンピュータ装置
１０３  プロセッサ
１０４  メモリ
１０６  モデル生成モジュール
１０８  アナログネットリスト
１１０  デジタルモデル
１１２  パラメータ化された遷移に基づくアナログモデル
１１４  アナログモデル
５０２  入力ノード
５０４  内部出力ノード
５０６  出力ノード
５０８  入力キャパシタンス
５１０  論理ブロック
５１２  遷移に基づくパラメータブロック
５１４  マルチプレクサ段
５１６  遷移関数
５１８  抵抗
【図１】
0005935544.tif 000002
【図２】
0005935544.tif 000003
【図３】
0005935544.tif 000004
【図４】
0005935544.tif 000005
【図５】
0005935544.tif 000006
【図６】
0005935544.tif 000007