JP2004094956A - スイッチドキャパシタ回路をシミュレートするための装置および方法 - Google Patents
スイッチドキャパシタ回路をシミュレートするための装置および方法 Download PDFInfo
- Publication number
- JP2004094956A JP2004094956A JP2003307684A JP2003307684A JP2004094956A JP 2004094956 A JP2004094956 A JP 2004094956A JP 2003307684 A JP2003307684 A JP 2003307684A JP 2003307684 A JP2003307684 A JP 2003307684A JP 2004094956 A JP2004094956 A JP 2004094956A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- sub
- design tool
- programmable
- user interface
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/36—Circuit design at the analogue level
- G06F30/367—Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
Abstract
【課題】 フィールド・プログラマブル・アナログ・アレイ(FPAA)で実現可能なスイッチドキャパシタ回路のシミュレーションを行うことができるようにする装置および方法を提供すること。
【解決手段】 スイッチドキャパシタ回路をシミュレートするための装置。この装置は、プログラム可能な計算デバイス、設計ツール、および動作シミュレータを含む。設計ツールは、プログラム可能な計算デバイスに関連していて、ユーザと相互作用を行うように構成されている。設計ツールは、プログラム可能な回路デバイスのサブ回路を定義するためのサブ回路定義を含む。動作シミュレータは、設計ツールに関連している。動作シミュレータは、サブ回路の出力をサブ回路への入力の関数として与える一組の個々の時間領域方程式により、各サブ回路を表示するように構成されている。
【選択図】 図1
【解決手段】 スイッチドキャパシタ回路をシミュレートするための装置。この装置は、プログラム可能な計算デバイス、設計ツール、および動作シミュレータを含む。設計ツールは、プログラム可能な計算デバイスに関連していて、ユーザと相互作用を行うように構成されている。設計ツールは、プログラム可能な回路デバイスのサブ回路を定義するためのサブ回路定義を含む。動作シミュレータは、設計ツールに関連している。動作シミュレータは、サブ回路の出力をサブ回路への入力の関数として与える一組の個々の時間領域方程式により、各サブ回路を表示するように構成されている。
【選択図】 図1
Description
本発明は、プログラム可能で、構成可能なデバイスに関する。より詳細には、本発明は、スイッチドキャパシタ回路の設計およびシミュレーションに関する。
(関連出願への相互参照)
本出願は、引用によって本明細書の記載に援用する、2002年8月29日付けの「スイッチドキャパシタ回路をシミュレートするための装置および方法」という名称の米国仮特許出願番号60/407,509の優先権を主張する。
本出願は、引用によって本明細書の記載に援用する、2002年8月29日付けの「スイッチドキャパシタ回路をシミュレートするための装置および方法」という名称の米国仮特許出願番号60/407,509の優先権を主張する。
現在、いくつかのスイッチドキャパシタ・シミュレータが使用されている。トランジスタ・レベルのシミュレータは、スイッチドキャパシタ回路をシミュレートする場合、動作が遅くて使いものにならない。
スイッチドキャパシタ回路は、個々のタイム・サンプルしたデータ・システムと見なすことができるので、回路の一時的な動作はモデル化する必要はない。このタイプのシミュレーションは、トランジスタ・レベルのシミュレーションより高速でなければならない。
米国仮特許出願番号60/407,509
種々のソフトウェア・パッケージを使用する差分方程式に基づいて、カスタム・シミュレーションをより高速で書き込むことができるが、再構成可能なFPAAで可能な各回路に対して、カスタム・プログラムを書くことは実際には不可能である。
本発明は、フィールド・プログラマブル・アナログ・アレイ(FPAA)で実現可能なスイッチドキャパシタ回路のシミュレーションを行うことができるようにする装置および方法を提供する。この技術を使用すれば、シミュレーションが行われるFPAA設計システムを再度コンパイルしなくてもすむ。
ある態様によれば、本発明は、スイッチドキャパシタ回路をシミュレートするための装置を提供する。この装置は、プログラム可能な計算デバイス、設計ツール、および動作シミュレータを含む。設計ツールは、プログラム可能な計算デバイスに関連していて、ユーザと相互作用を行うように構成されている。設計ツールは、プログラム可能な回路デバイスのサブ回路を定義するためのサブ回路定義を含む。動作シミュレータは、設計ツールに関連している。動作シミュレータは、サブ回路の出力をサブ回路への入力の関数として与える一組の個々の時間領域方程式により各サブ回路を表示するように構成されている。
他の態様によれば、本発明は、フィールド・プログラマブル回路デバイスで実現されるスイッチドキャパシタ回路をシミュレートするための方法を提供する。該方法は、プログラム可能な計算デバイスと、プログラム可能な計算デバイスに関連する設計ツールと、設計ツールに関連する動作シミュレータとを供給するステップと;プログラム可能な回路デバイスのサブ回路を定義するためのサブ回路定義を含むプログラム可能な計算デバイスでコンピュータ・プログラム・コードを実施するステップと;出力を入力の関数として与える一組の個々の時間領域方程式により表される各サブ回路により、1つまたはそれ以上のサブ回路の集合体として回路をモデル化するステップとを含む。
さらに他の態様によれば、本発明は、スイッチドキャパシタ回路をシミュレートするための方法を提供する。該方法は、ユーザ・インタフェースを有するプログラム可能な計算デバイスと、プログラム可能な計算デバイスに関連する設計ツールと、構成可能なアナログ・モジュールの出力を構成可能なアナログ・モジュールの入力の関数として与える一組の個々の時間領域方程式により、個々の構成可能なアナログ・モジュールを表示するための設計ツールに関連するシミュレータを供給するステップと;ユーザ・インタフェースにより特定の構成可能なアナログ・モジュールを選択するステップと;選択した構成可能なアナログ・モジュールを他の構成可能なアナログ・モジュールに関連するユーザ・インタフェース上に設置するステップと;選択した構成可能なアナログ・モジュールをユーザ・インタフェースにより他の構成可能なアナログ・モジュールと一緒に配線するステップとを含む。
下記の添付の図面を参照しながら、本発明の好ましい実施形態について以下に説明する。
米国特許法の本質的な目的、すなわち、「科学および有用な技術の進歩を促進する目的」(第1条第8節)を推進するために本明細書を提出する。
フィールド・プログラマブル・アナログ・アレイ(FPAA)で実現することができるスイッチドキャパシタ回路をシミュレートするには、ある装置および方法が必要である。上記方法は、新しいサブ回路を迅速に実施することができるように、非常に柔軟なものでなければならない。新しいサブ回路を追加した場合に、シミュレーションが行われるFPAA設計システムを再度コンパイルしなくてもすむものでなければならない。シミュレーション時間は、最短でなければならない。
本発明は、回路がサブ回路の集合体としてモデル化されるスイッチドキャパシタ回路をシミュレートするための方法を提供する。この方法は、シミュレーションを、設計に使用される同じCADツール内で実行することができるように、CADツールにより回路を設計するための方法と互換性を持つ。「動作」シミュレータは、各サブ回路が、その出力をその入力の関数として与える一組の個々の時間領域方程式により表されるように考案された。
サブ回路シミュレーションは、CADツールと互換性を持ち、CADツールにより使用されるが、CADツールの一部ではない。サブ回路シミュレーション・モデルは、サブ回路定義の一部である。この方法を使用すれば、新しいサブ回路に対するシミュレーション・サポートを迅速に開発し、試験することができる。この方法を使用すれば、新しいサブ回路が生成された場合、または古いサブ回路を修正した場合、CADツールを再度コンパイルする必要がなくなる。
サブ回路シミュレーション・モデルは、インタープリタ・コードで実行することができるアルゴリズムの形をしている。CADツール内に記憶しているシミュレート中の回路の状態に関するデータと結合した場合、これらのアルゴリズムは、出力電圧のようなサブ回路の状態に関する情報を返送する。
シミュレータは、選択した回路ノードに入力記号を供給するための手段と、選択したノードから出力データを表示するための手段とを含む。ユーザは、各サブ回路に、1つまたはそれ以上のクロック信号を割り当てることができる。シミュレータは、また、クロックのチクタク音をシミュレートする。シミュレータは、特定の順序で個々の動作サブ回路モデルを実行することにより動作する。この実行順序は、クロックのチクタク音および種々のサブ回路を接続している配線により決まる。各サブ回路モデルは、サブ回路に関連する任意のクロックの遷移のところでだけ実行される。前の実行の結果は、動作モデル化への入力状態を決定するために使用される。この方法は、スイッチドキャパシタ回路を個々のタイム・サンプルしたシステムとしてモデル化する。
以下の説明は、本発明の1つの可能な実施方法の説明であるが、より広い適用範囲を持つ他の実施方法も容易に生成することができる。
シミュレーション・モデルは、この実施形態の場合にはAN20に対するAnadigmDesignerであるCADツールにより任意の時間に読み出すことができる構成可能なアナログ・モジュール(CRM)と呼ばれるテキスト・ファイルである。方程式は、Cコード・テキストの形をしている。シミュレータは、AnadigmDesigner内に常駐している。ユーザは、コンピュータ・スクリーン上でCAMを選択し、設置し、それらCAMを一緒に「配線」することにより、複雑な回路を生成するためにAnadigmDesignerを使用することができる。ユーザは、次に、シミュレーションのための回路をセットアップするために、「信号発生器」および「オシロスコープ・プローブ」を設置することができる。信号発生器は、入力源として機能する。オシロスコープ・プローブは、特定の出力ノードからの出力データを収集し、記憶し、シミュレーションが終了した後でデータを表示する。AnadigmDesignerの各CAMは、内部では「オブジェクト」として表現される。各CAMオブジェクトは、CAMファイルからCコード・テキストの形で、その方程式を入手し、それらを内部のシミュレーションの実行中に使用できる場所に記憶する。
シミュレーションの実行中には、シミュレータは、「ワイヤ・リスト」、すなわち、各CAMに対する入力が始まる場所を決定する目的で、ユーザがCAMを接続するために行った配線のリストを使用する。ユーザが使用することができる配線作業は、確実に、有効な接続だけが行われるようにする。シミュレーション方程式は、各CAMに関連するクロックが決める順序で順次実行される。AnadigmDesignerは、また、正しくシミュレートできない「ゼロ遅延ループ」を検出するためのロジックを含み、このようなループが存在する場合にユーザに警告する。CAMへの入力は、ユーザが行った配線により、他のCAMまたは信号発生器からくる。方程式は、これらの式およびその適当な入力値および式が必要とする内部にセーブした任意の値をCインタープリタに送ることにより実行される。Cインタープリタは、実際にかなりの高速で動作し、シミュレートは短時間で行われる。
図1は、本発明の好ましい実施形態である。この図は、参照番号10で示す、スイッチドキャパシタ回路をシミュレートするための基本的システム構成を示す。システム10は、パーソナル・コンピュータ(PC)14のようなプログラム可能な計算デバイス12を含む。
図1に示すように、システム10は、プログラム可能な制御デバイス18により、プログラム可能な回路デバイス20をプログラミングすることができる方法で、ソフトウェアおよびハードウェアを組み合わせることにより実施される。より詳細に説明すると、密接な結合制御を使用できるようにするために必要な情報を、中央処理装置(CPU)プログラムにより、コントローラ・プログラムの開発の際に使用することができるようにするために、ソフトウェアは、プログラム可能な回路デバイス20をプログラミングするためのエクスポートされたデバイス情報の形で供給される。プログラム可能な制御デバイス18は、次に、(a)構成データの全部または一部を修正し、プログラム可能な回路デバイス20のレジスタに構成データを適用するか、(b)プログラム可能な回路デバイス20のレジスタ内に含まれている構成データの全部または一部を直接修正することにより、プログラム可能な回路デバイス20が修正した構成データを使用できるようにする。構成データを使用して、プログラム可能な回路デバイス20は、一連のソフトウェアとしてプログラムされる。システムのソフトウェア態様は、従来技術のシステムの通常の構成データの他に、プログラム可能な回路デバイス20の機能の全部または一部を修正するために、第2の構成可能なデバイスが使用することができるコードを生成する。
図1に示すように、あるタイプのプログラム可能な計算デバイス12は、パーソナル・コンピュータ(PC)14を備える。PC14は、マイクロコントローラ・ユニット(MCU)22、メモリ28、設計ツール30、ユーザ・インタフェース34、および構成可能なアナログ・モジュール(CAM)ライブラリ40を含む。MCU22は、処理回路26を含む中央処理装置(CPU)24を含む。設計ツール30は、1つまたはそれ以上の回路設計36が生成され、モデル化されるコンピュータ援用設計(CAD)ツール32を含む。各回路設計36は、ネットリスト38の形をしている回路モデル情報を含む。
CAMライブラリ40は、スイッチドキャパシタ回路のような各サブ回路に関する情報を含む複数のサブ回路定義42を含む。ある場合には、サブ回路定義は、構成可能なアナログ・モジュール(CAM)である。それ故、CAMライブラリ40は、複数のCAMを備える。プログラマブル制御デバイス18は、アプリケーション・プログラム44およびユーザ・インタフェース46を含む。動作中、アプリケーション・プログラム44は、関連するアプリケーション・システムで、ソフトウェアの監視および制御機能を実施するためのコンピュータ・プログラム・コードを含む。ユーザ・インタフェース46により、上記監視および制御機能が可能になる。
ある形のプログラマブル回路デバイス20は、フィールド・プログラマブル・アナログ・アレイ(FPAA)21を備える。FPAA21は、ハードウェア48およびメモリ56を含む。ハードウェア48は、プログラミングにより複数の一意の構成に構成することができる。より詳細に説明すると、回路50は、サブ回路(スイッチドキャパシタ回路など)52および回路構成要素54を必要な構成に配線または接続することによりFPAA21内で実現される。
設計ツール30は、AnadigmDesigner2を備える。初期のバージョンであるAnadigmDesignerは、英国のAnadigm社が公開していて、http://www.anadigm.comからダウンロードして使用することができる。AnadigmDesignerは、引用によって本明細書の記載に援用する。
上記技術によれば、回路のシミュレーションおよびプログラミング・データの生成が、コンピュータ援用設計(CAD)ツールの使用により非常に簡単になる。CADツールは、回路設計者に周知の方法で設計を表し、FPAAをプログラムするのに必要な対応するデータを自動的に生成する方法で設計を表示する。このようなコンピュータ援用設計(CAD)ツールを使用しない場合には、このようなプログラミングを修正または生成する機能は制限され、ほとんど実際には使用できない。
動作中、設計ツール30は、構成データの最初の一組を生成する。構成データは、エクスポートしたデバイス情報により、PC16内のコンパイラ(図示せず)に供給される。さらに、またはそうしたい場合には、構成データは、PC16のユーザ・プログラム(図示せず)によりコンパイラに供給される。引用によって本明細書の記載に援用する「プログラム可能な半導体デバイスを構成するための方法」という名称の米国特許第6,272,669B1号に、プログラム可能な半導体デバイスの構成方法がより詳細に開示されている。引用によって本明細書の記載に援用する「構成可能なハードウェア・デバイスでアナログ素子を構成するためのシステムおよび方法」(System and Method for Configuring Analog Elements in a Configurable Hardware Device)という名称の米国特許出願番号10/171,334に構成可能なハードウェア・デバイスでアナログ素子を構成するための装置および方法がさらに詳細に開示されている。
公開されていて使用することができる市販のAnadigmDesignerで現在使用することができる改善に追加された特定の改善としては、スイッチドキャパシタ回路をシミュレートする機能、およびCADツールで、サブ回路設計のグルーブを一緒に組み立てることにより回路を設計する機能等がある。設計が済むと、回路(またはサブ回路)設計を、フィールド・プログラマブル・アナログ・アレイ(FPAA)のようなプログラム可能なデバイスで実現することができる。CADツールは、回路設計をデバイスをプログラムするのに必要な適当にフォーマットされたデータに変換するための機構を供給する。各サブ回路に対するサブ回路定義は、CADツールと互換性を持つが、CADツールの一部ではない。サブ回路定義は、個々にまたはグループで携帯することができる。より詳細に説明すると、サブ回路定義は、それをCADツールと一緒に使用するために、コンパイルする必要はない。それ故、サブ回路定義は、CADツールとの互換性を維持しながら、関連するサブ回路の機能を変更するために、容易に生成または修正することができる。
サブ回路定義は、いくつかのことを行うために必要なサブ回路に関する情報を含む。第1に、サブ回路定義は、サブ回路の複数の構成、トポロジーおよびパラメータを定義するために必要なサブ回路に関する情報を含む。第2に、サブ回路定義は、これらの複数の構成の制御を可能にするユーザ・インタフェースを定義し、制御するために必要なサブ回路に関する情報を含む。第3に、サブ回路定義は、ユーザの選択に基づくサブ回路の構成を修正するのに必要なサブ回路に関する情報を含む。第4に、サブ回路定義は、サブ回路の正しい使用に関するエラーのチェックを行うために必要なサブ回路に関する情報を含む。第5に、サブ回路定義は、もっと大きなアナログ回路でのサブ回路の動作をシミュレートするのに必要なサブ回路に関する情報を含む。第6に、サブ回路定義は、サブ回路の記号的表示を行うのに必要なサブ回路に関する情報を含む。第7に、サブ回路定義は、サブ回路のバージョン数を決定するのに必要なサブ回路に関する情報を含む。第8に、サブ回路定義は、特定のCADツールとのサブ回路の互換性、または特定のCADツールのバージョン数を決定するのに必要なサブ回路に関する情報を含む。第9に、サブ回路定義は、FPAAのようなプログラム可能なデバイスとのサブ回路の互換性を決定するのに必要なサブ回路に関する情報を含む。
サブ回路に関する情報の中のあるものは、インタープリタ・コードに実現することができるアルゴリズムの形で含まれている。アルゴリズム内の情報が、CADツール内に記憶しているデータ、およびCADツールが作動したユーザ・インタフェースから入手したデータと結合すると、アルゴリズムは、必要な情報をCADツールに返送する。例えば、ユーザの選択(上記項目3)に応じて、サブ回路の構成の修正に関する情報はこの方法で処理される。
(図1の)CADツール32はいくつかのことを実行する機能を有する。第1に、CADツールは、サブ回路定義に含まれるデータを読み出すことができる。第2に、CADツールは、ユーザが、サブ回路をもっと大きい回路に組み立てることができるユーザ・インタフェースを供給する。第3に、CADツールは、ユーザが、そのサブ回路設計の構成および動作を変更することができるように、各サブ回路に対してユーザ・インタフェースを供給することができる。第4に、CADツールは、サブ回路定義に含まれているインタープリタ・コードを作動させることができる。第5に、CADツールは、ユーザ・インタフェースに、特殊なプログラム可能なデバイスに特有な機能を供給することができる。第6に、CADツールは、サブ回路定義に含まれる回路設計および情報によりシミュレーションをセットアップおよび実行することができる。第7に、CADツールは、シミュレーションの結果をチェックすることができる。第8に、CADツールは、プログラム可能なデバイスにダウンロードするために、回路設計を適当にフォーマットされたデータに変換することができる。第9に、CADツールは、適当にフォーマットされたデータをプログラム可能なデバイスに容易にダウンロードすることができる。
上記特徴により、有意な設計の専門知識を、シミュレーションにより示すように、サブ回路トポロジー、サブ回路トポロジーおよび構成要素の値のユーザ・インタフェースが表示するもっと高いレベルのパラメータとの関係、およびサブ回路の性能を含むサブ回路定義内に入れることができる。サブ回路定義は、CADツールと一緒に、プログラム可能なデバイス・アーキテクチャの特定の詳細を含む。それ故、この技術を使用する人は、回路設計またはプログラム可能なデバイスの専門家でなくてもよい。それどころか、ユーザは、サブ回路のユーザ・インタフェースおよびCADツールが表すもっと高いレベルの抽出を行うことができる。それ故、回路の設計、およびFPAAチップをプログラムするための適当なフォーマットへの回路の変換の両方を比較的迅速に容易に行うことができる。
構成可能なアナログ・モジュール(CAM)の形をしているサブ回路定義は、FPAAチップのようなプログラム可能なデバイスで構成することができる1つまたはそれ以上のサブ回路(スイッチドキャパシタ回路のような回路)の完全な内蔵定義を含む。サブ回路定義は、サブ回路定義の内蔵部分を形成し、他のサブ回路と密接に相互作用を行う「C」コードを含む。CAMは、構成およびシミュレーション・モデルを定義する「C」コードの「断片」(snippet)または比較的小さなセグメントを含む。
図2〜図4は、本発明の1つの可能な実施形態を示す。しかし、もっと広い適用性を有する他の実施形態も可能であり、添付の特許請求の範囲に入ることを理解されたい。
図2は、AnadigmDesigner2、すなわち、AnadigmDesignerの新しいバージョンの半サイクル利得段58を実現する特定のアナログ回路(またはサブ回路)のセットアップである。AnadigmDesigner2(CADツール)のアプリケーションをスタートすると、ユーザに対して、設計ツール・アプリケーション・ウィンドウ62に図2のスクリーン画像60が表示される。特定のチップ設計ができるようにするために、AN220E04 FPAAチップ設計64が作業スペース66内に表示される。
スクリーン・ディスプレイ60は、ヘッダ68、ユーザが選択できるように複数のメニュー項目71〜73が表示されるメニューバー70、複数の選択することができるツールバー・ボタン76および78が表示されるツールバー74を含む。
図2に示す「編集」、「シミュレーション」、「構成」および「設定」、およびスイッチドキャパシタ回路のシミュレーションに対する特定のメニュー項目を除いて、メニューバー70の残りのメニュー項目は、AnadigmDesigner、すなわち、AnadigmDesigner2の初期のバージョンで現在使用できる。それ故、このような他のメニュー項目の機能的詳細は、本発明が分かりにくくなると困るので、本明細書においてはあまり詳細には説明しない。代わりに、「編集」メニュー項目71および「シミュレーション」メニュー項目73が供給する追加の機能および詳細について以下により詳細に説明する。
チップ設計64は、AnadigmDesigner2により特定のチップ設計が生成される最初のテンプレートを供給する。より詳細に説明すると、チップ設計64は、入力セル67および69のような複数の入力セル、および出力セル77および79のような複数の出力セルを含む。
この実施形態によれば、サブ回路定義は、CADツールのCAMライブラリ内に位置する構成可能なアナログ・モジュール(CAM)を備える。ある実施形態によれば、CAMは、サブ回路記述に対応する特殊なサブ回路を定義するために必要なすべての情報を含む1つのテキスト・ファイルである。図2の半サイクル利得段58は、CAMの一例である。
図2に示すように、一組の信号発生器95および97が、入力セル67の入力リードに接続している。各信号発生器95および97は、後で必要な入力ピンのところにマウスおよびカーソルにより置かれる信号発生器95および97に対するアイコンを始動させる、ツールバー・ボタン78を選択することにより生成される。信号発生器95または97のアイコンを選択するために右クリックすることによりメニュー項目が表示される。次に、「信号発生器設定」というタイトルの選択したメニュー項目が表示される。このようなメニュー項目を選択すると、図3のスクリーン・ディスプレイ124が、すなわち、(図3の)信号発生器制御ダイアログ・ボックス125が始動する。
さらに、ツールバー・ボタン76を選択することにより、サブ回路設計内の選択した位置に複数のオシロスコープ・プローブ87,89,91および93が適用される。それにより、マウスを1回左クリックすることにより、コンピュータのマウスおよびカーソルにより位置決めおよび設置することができる移動可能なオシロスコープ・アイコンが表示され、カーソルはすでに適当なノードのところに位置している。設置すると、ユーザは、「オシロスコープ」メニュー項目を含むメニューを始動するオシロスコープ・プローブ・アイコン87,89,91または93上を右クリックすることができる。マウスおよびカーソルによりあるメニューを選択すると、図4のオシロスコープ・ダイアログ・ボックス157が始動する。
スクリーン・ディスプレイ60は、対応する「半サイクル利得段」サブ回路の適当な構成を決定するために、インタープリタ・コードと一緒に使用することができるユーザが選択したオプションを、ユーザが使用できるようにする。構成は、対応するCAMに含まれているネットリストの中の1つにより指定される。各ネットリストは、コンデンサ、演算増幅器(オペアンプ)、およびFPAAまたはチップ上に位置するその他のアナログ構成要素への参照を含む。ネットリストは、また、「半サイクル利得段」のユーザが選択した構成を実現するするためのこれら構成要素の接続方法を示す接続情報も含む。
図3は、「信号発生器制御」ダイアログ・ボックス125用のスクリーン画像124である。ダイアログ・ボックス125は、「信号発生器制御」ヘッダ126、波形ボタン128,130,132,134,136および138、および「波形データ発生」フィールド140、および「終了」ボタン142を含む。ボタン128,130,132,134,136および138は、(図2の)信号発生器95または97が、(図2の)信号発生器ボタン78を選択することにより、すでに設置されている指定のピンまたはセルのところで、対応する信号を発生するために必要な信号発生器を構成するためにそれぞれ選択される。
例えば、波形ボタン128を選択すると、選択したピンのところに正弦波を供給するように信号発生器が構成される。波形ボタン130を選択すると、方形波を供給するように信号発生器が構成される。波形ボタン132を選択すると、三角波を供給するように信号発生器が構成される。波形ボタン134を選択すると、のこぎり波を供給するように信号発生器が構成される。波形ボタン136を選択すると、ディラック・インパルスを供給するように信号発生器が構成される。最後に、波形ボタン138を選択すると、任意の波形を供給するように信号発生器が構成される。
「波形データ発生」フィールド140は、「振幅設定」フィールド144、「電圧オフセット設定」フィールド146、および「周波数設定」フィールド148を含む。「振幅設定」フィールド144は、信号発生器に対して選択した信号の電圧振幅を入力するための「ボルト」入力フィールド150を含む。「電圧オフセット設定」フィールド146は、ユーザが、信号発生器に対して選択した信号の電圧オフセットを設定することができる、「ボルト」入力フィールド152を含む。「周波数設定」フィールド148は、ユーザが、信号発生器に対して選択した信号の周波数を設定することができる「ボルト」入力フィールド154を含む。
図4は、「オシロスコープ」ダイアログ・ボックス157に対するスクリーン画像156である。(図2の)「オシロスコープ」ボタン78を選択すると、(図2の)チップ設計64内の特定の位置にマウスカーソルにより位置させ、設置することができる移動可能なオシロスコープ・アイコンが表示される。マウスカーソルを1回クリックすることにより、アイコンが適当なノードのところに位置すると、ユーザは、オシロスコープ・プローブ・アイコン87上で右クリックすることができ(図2参照)、それにより、「オシロスコープ」メニュー項目を含むメニューが表示される。マウスカーソルにより、「オシロスコープ」メニュー項目を選択すると、図4のオシロスコープ・ダイアログ・ボックス157が表示される。
それ故、「オシロスコープ」ダイアログ・ボックス157は、「チャネル選択」ボックス170,172,174および176が識別したチャネルに対応するチャネル1〜4に対して、時間領域出力162,164,166および168が表示される信号出力表示フィールド158を含む。例を挙げて説明すると、オシロスコープ出力波形162は、「チャネル1」に対応する(図2の)オシロスコープ・プローブ・アイコン87が識別したオシロスコープ出力に対応する。同様に、「チャネル2」に対する出力は、(図2の)オシロスコープ・プローブ89に対応する出力164からなる。「チャネル3」に対する出力166は、(図2の)オシロスコープ・プローブ・アイコン91に対応する。最後に、出力168は、(図2の)オシロスコープ・プローブ・アイコン93からの「チャネル4」に対応する。
「オシロスコープ」ダイアログ・ボックス157は、チャネル選択ボックス170,172,174および176が表示される「データ表示」フィールド160を含む。「区分毎のボルト」スクローリング・リスト・ボックス178は、縦座標、すなわち、y軸の電圧のスケールに対応する各チャネルのためのものである。第2のスクローリング・リスト・ボックス180は、「位置」スクローリング・リスト・ボックス180に対するチャネル1〜4のためのものである。各チャネル1〜4は、また、表示フィールド158内の横座標、すなわち、x軸に沿った対応する時間における各チャネルに対して特定の電圧値が表示される「電圧」データ入力フィールド182を含む。さらに、「区分毎の時間」スクローリング入力フィールド184により、ユーザは、信号出力表示フィールド158内で区分毎の時間を調整することができる。さらに、「時間」入力フィールド186は、表示フィールド158内のカーソル・ラインの位置が示す選択した時間に対応し、また、個々のデータ入力フィールド182内に表示された電圧に対応する時間を表示する。
スクローリング時間ラインバー188により、ユーザは、表示フィールド158内の横座標時間ラインに沿って特定の位置を選択することができ、次に、チャネル1〜4に対する入力フィールド182内に対応する電圧を表示し、時間入力フィールド186内に時間を表示する。それ故、スクローリング時間ラインバー188は、データ・フィールド158の横座標、すなわち、時間領域に対応する。
「グリッド」ボタン190により、ユーザは、(図4の)信号出力表示フィールド158内に示すように、グリッド・ラインをオン/オフすることができる。「カーソル」ボタン192は、ユーザがマウスにより移動することができるカーソルをスクリーン・ディスプレイ156上に置く。「電圧」データ入力フィールド182および「時間」入力フィールド186は、カーソル位置のところのデータに対応する数値を表示する。「クローズ」ボタン194により、ユーザは、スクリーン・ディスプレイ156を閉じることができる。
本発明を、スイッチドキャパシタ回路の例示としての特定の実施例として説明してきたが、本発明の装置および方法は、任意のサンプリングしたデータ・システムに対しても同様に使用することができる。例えば、本発明の装置および方法は、また、スイッチドキャパシタ回路、デジタル信号処理、パルスをベースとするシステム、または任意の他のサンプリングしたデータ・システムにも適用することができる。
特許法に従って、構造上および方法上の機能に多かれ少なかれ特有の言語により本発明を説明してきた。しかし、本発明は、図面に示し今迄説明してきた特定の機能に限定されないことを理解されたい。何故なら、本明細書で開示した手段は、本発明を実行するための好適な形からなるからである。それ故、本発明は、等価の原則に従って正しく解釈した添付の特許請求の範囲の正しい範囲内で任意の形にし、また任意の修正を行うことができる。
Claims (29)
- スイッチドキャパシタ回路をシミュレートするための装置であって、
プログラム可能な計算デバイスと、
前記プログラム可能な計算デバイスに関連していて、ユーザと相互作用を行うように構成されていて、プログラム可能な回路デバイスのサブ回路を定義するためのサブ回路定義を含む前記プログラム可能な計算デバイスで実施されるコンピュータ・プログラム・コードを含む設計ツールと、
前記設計ツールと関連していて、前記サブ回路の出力を前記サブ回路への入力の関数として与える一組の個々の時間領域方程式により各サブ回路を表示するように構成されている動作シミュレータとを備える装置。 - さらに、前記プログラム可能な計算デバイスに関連しているユーザ・インタフェースを備え、ユーザが前記ユーザ・インタフェースのところで前記設計ツールと相互作用を行うことができるように構成されている、請求項1に記載の装置。
- 前記一組の個々の時間領域方程式が、前記サブ回路に対するサブ回路シミュレーション・モデルにより供給される、請求項2に記載の装置。
- 各サブ回路シミュレーション・モデルが、前記設計ツールと互換性を持ち、前記設計ツールにより使用されるが、前記設計ツールの一部ではない、請求項3に記載の装置。
- 各サブ回路シミュレーション・モデルがサブ回路定義の一部である、請求項3に記載の装置。
- 前記サブ回路定義が、新しいサブ回路が生成されるか、または現在のサブ回路が前記設計ツールのユーザにより修正された場合に、前記設計ツールを再コンパイルする必要がないような方法で、サブ回路シミュレーション・モデルを供給する、請求項5に記載の装置。
- サブ回路シミュレーション・モデルが、1つまたはそれ以上のアルゴリズムを備える、請求項3に記載の装置。
- 前記1つまたはそれ以上のアルゴリズムそれぞれの少なくとも一部が、インタープリタ・コードで実現される、請求項7に記載の装置。
- 前記設計ツールが、シミュレートされている回路の状態についてのデータを記憶するように構成されている、請求項8に記載の装置。
- 前記動作シミュレータが、前記アルゴリズムをシミュレートされている前記回路の状態についての前記データと結合し、前記サブ回路の状態についての情報を返送するように構成されている、請求項9に記載の装置。
- 前記動作シミュレータが、前記サブ回路の出力電圧についての情報を返送する、請求項10に記載の装置。
- 前記設計ツールが、フィールド・プログラマブル・アナログ・アレイのサブ回路を定義するように構成されている、請求項1に記載の装置。
- 前記サブ回路が、フィールド・プログラマブル・アナログ・アレイ内で実現されたスイッチドキャパシタ回路を備える、請求項12に記載の装置。
- 前記動作シミュレータが、入力信号を前記サブ回路の選択した回路ノードに供給するように構成されている、請求項1に記載の装置。
- 前記動作シミュレータが、前記サブ回路の選択した回路ノードからの出力データを表示するように構成されている、請求項1に記載の装置。
- 前記設計ツールにより、ユーザが、複数の各サブ回路に、1つまたはそれ以上のクロック信号を割り当てることができる、請求項1に記載の装置。
- 前記動作シミュレータが、クロックのチクタク音をシミュレートし、少なくとも一部がクロックのチクタク音および前記サブ回路を相互に接続している配線レイアウトで決まる特定の順序で個々の動作サブ回路モデルを実行するように構成されている、請求項16に記載の装置。
- 前記サブ回路シミュレーション・モデルが、前記設計ツールが読むことができるテキスト・ファイルの形の構成可能なアナログ・モジュールにより供給される、請求項3に記載の装置。
- 前記構成可能なアナログ・モジュールが選択され、前記プログラム可能な計算デバイスのメモリ内の、他のサブ回路に対して検出できる位置に置かれ、次に、前記サブ回路が一緒に配線される、請求項18に記載の装置。
- フィールド・プログラマブル回路デバイスで実現される、スイッチドキャパシタ回路をシミュレートするための方法であって、
プログラム可能な計算デバイスと、前記プログラム可能な計算デバイスに関連する設計ツールと、前記設計ツールに関連する動作シミュレータとを供給するステップと、
プログラム可能な回路デバイスのサブ回路を定義するためのサブ回路定義を含む、前記プログラム可能な計算デバイスでコンピュータ・プログラム・コードを実施するステップと、
出力を入力の関数として与える一組の個々の時間領域方程式により表される各サブ回路により、1つまたはそれ以上のサブ回路の集合体として回路をモデル化するステップとを含む方法。 - 前記プログラム可能な計算デバイスに関連するユーザ・インタフェースを供給するステップと、前記ユーザ・インタフェース上にモデル化した回路を視覚的にレンダリングするステップをさらに含む、請求項20に記載の方法。
- 前記ユーザ・インタフェース上に複数のサブ回路を視覚的にレンダリングするステップと、前記サブ回路の中の少なくとも2つを相互に配線するステップとをさらに含む、請求項21に記載の方法。
- 少なくとも1つの信号発生器を、前記一緒に配線したサブ回路に関連する前記ユーザ・インタフェース上に設置するステップをさらに含む、請求項22に記載の方法。
- 少なくとも1つのオシロスコープ・プローブを、前記一緒に配線したサブ回路に関連する前記ユーザ・インタフェース上に設置するステップをさらに含む、請求項22に記載の方法。
- サブ回路が、前記設計ツールが読むことができるテキスト・ファイルの形の構成可能なアナログ・モジュールにより供給される、請求項20に記載の方法。
- スイッチドキャパシタ回路をシミュレートするための方法であって、
ユーザ・インタフェースを有するプログラム可能な計算デバイスと、前記プログラム可能な計算デバイスに関連する設計ツールと、前記構成可能なアナログ・モジュールの出力を前記構成可能なアナログ・モジュールの入力の関数として与える一組の個々の時間領域方程式により、個々の構成可能なアナログ・モジュールを表示するための前記設計ツールに関連するシミュレータを供給するステップと、
前記ユーザ・インタフェースにより特定の構成可能なアナログ・モジュールを選択するステップと、
前記選択した構成可能なアナログ・モジュールを、他の構成可能なアナログ・モジュールに関連する前記ユーザ・インタフェース上に置くステップと、
前記選択した構成可能なアナログ・モジュールを、前記ユーザ・インタフェースにより、前記他の構成可能なアナログ・モジュールと一緒に配線するステップとを含む方法。 - 前記シミュレータが、前記ある構成可能なアナログ・モジュールを他の構成可能なアナログ・モジュールと一緒に接続するために、ユーザが行った配線のリストを含む配線リストを使用する、請求項26に記載の方法。
- 個々の時間領域方程式の各組が、シミュレーション方程式を供給し、さらに、各構成可能なアナログ・モジュールに関連するクロックが決めた順序で順次シミュレーション方程式を実行するステップを含む、請求項26に記載の方法。
- 正確にシミュレートできないサブ回路の回路内のゼロ遅延ループを検出するステップと、ゼロ遅延ループを検出した場合、ユーザに警告するステップとをさらに含む、請求項28に記載の方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US40750902P | 2002-08-29 | 2002-08-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004094956A true JP2004094956A (ja) | 2004-03-25 |
Family
ID=31496017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003307684A Withdrawn JP2004094956A (ja) | 2002-08-29 | 2003-08-29 | スイッチドキャパシタ回路をシミュレートするための装置および方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20040122643A1 (ja) |
EP (1) | EP1394704A3 (ja) |
JP (1) | JP2004094956A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013254457A (ja) * | 2012-06-08 | 2013-12-19 | Renesas Electronics Corp | 半導体装置のシミュレータ、シミュレーション方法及びシミュレーションプログラム |
JP2014182734A (ja) * | 2013-03-21 | 2014-09-29 | Renesas Electronics Corp | 半導体装置のシミュレータ、シミュレーション方法及びシミュレーションプログラム |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10803215B2 (en) | 2018-12-18 | 2020-10-13 | International Business Machines Corporation | Incremental generation of quantum circuits |
US11487401B2 (en) * | 2020-03-31 | 2022-11-01 | Keysight Technologies, Inc. | System and method for selectively displaying waveforms using graphical user interface |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4677587A (en) * | 1985-05-14 | 1987-06-30 | Sanders Associates, Inc. | Program simulation system including means for ensuring interactive enforcement of constraints |
US5867399A (en) * | 1990-04-06 | 1999-02-02 | Lsi Logic Corporation | System and method for creating and validating structural description of electronic system from higher-level and behavior-oriented description |
US5572437A (en) * | 1990-04-06 | 1996-11-05 | Lsi Logic Corporation | Method and system for creating and verifying structural logic model of electronic design from behavioral description, including generation of logic and timing models |
US5794062A (en) * | 1995-04-17 | 1998-08-11 | Ricoh Company Ltd. | System and method for dynamically reconfigurable computing using a processing unit having changeable internal hardware organization |
US6346824B1 (en) * | 1996-04-09 | 2002-02-12 | Xilinx, Inc. | Dedicated function fabric for use in field programmable gate arrays |
JP2000513523A (ja) * | 1996-06-21 | 2000-10-10 | オーガニック システムズ インコーポレイテッド | プロセスの即時制御を行う動的に再構成可能なハードウェアシステム |
US5838165A (en) * | 1996-08-21 | 1998-11-17 | Chatter; Mukesh | High performance self modifying on-the-fly alterable logic FPGA, architecture and method |
GB2321322B (en) * | 1996-10-28 | 2001-10-10 | Altera Corp | Remote software technical support |
US5931959A (en) * | 1997-05-21 | 1999-08-03 | The United States Of America As Represented By The Secretary Of The Air Force | Dynamically reconfigurable FPGA apparatus and method for multiprocessing and fault tolerance |
US6311149B1 (en) * | 1997-08-18 | 2001-10-30 | National Instruments Corporation | Reconfigurable test system |
US6078736A (en) * | 1997-08-28 | 2000-06-20 | Xilinx, Inc. | Method of designing FPGAs for dynamically reconfigurable computing |
US6339827B1 (en) * | 1997-11-12 | 2002-01-15 | International Business Machines Corporation | Method for securing sensitive data in a LDAP directory service utilizing a client and/or server control |
US6091263A (en) * | 1997-12-12 | 2000-07-18 | Xilinx, Inc. | Rapidly reconfigurable FPGA having a multiple region architecture with reconfiguration caches useable as data RAM |
US6272669B1 (en) * | 1997-12-15 | 2001-08-07 | Motorola, Inc. | Method for configuring a programmable semiconductor device |
US6230307B1 (en) * | 1998-01-26 | 2001-05-08 | Xilinx, Inc. | System and method for programming the hardware of field programmable gate arrays (FPGAs) and related reconfiguration resources as if they were software by creating hardware objects |
US6327253B1 (en) * | 1998-04-03 | 2001-12-04 | Avid Technology, Inc. | Method and apparatus for controlling switching of connections among data processing devices |
US6092174A (en) * | 1998-06-01 | 2000-07-18 | Context, Inc. | Dynamically reconfigurable distributed integrated circuit processor and method |
US6314553B1 (en) * | 1998-11-02 | 2001-11-06 | Intel Corporation | Circuit synthesis and verification using relative timing |
US6324676B1 (en) * | 1999-01-14 | 2001-11-27 | Xilinx, Inc. | FPGA customizable to accept selected macros |
US6357037B1 (en) * | 1999-01-14 | 2002-03-12 | Xilinx, Inc. | Methods to securely configure an FPGA to accept selected macros |
US6260139B1 (en) * | 1999-01-26 | 2001-07-10 | Xilinx, Inc. | FPGA control structure for self-reconfiguration |
US6308311B1 (en) * | 1999-05-14 | 2001-10-23 | Xilinx, Inc. | Method for reconfiguring a field programmable gate array from a host |
JP3743487B2 (ja) * | 1999-07-14 | 2006-02-08 | 富士ゼロックス株式会社 | プログラマブル論理回路装置、情報処理システム、プログラマブル論理回路装置への回路の再構成方法、プログラマブル論理回路装置用の回路情報の圧縮方法 |
US6288566B1 (en) * | 1999-09-23 | 2001-09-11 | Chameleon Systems, Inc. | Configuration state memory for functional blocks on a reconfigurable chip |
US6584601B1 (en) * | 2000-02-07 | 2003-06-24 | National Instruments Corporation | System and method for converting graphical programs into hardware implementations which utilize probe insertion |
US6326806B1 (en) * | 2000-03-29 | 2001-12-04 | Xilinx, Inc. | FPGA-based communications access point and system for reconfiguration |
US6826717B1 (en) * | 2000-06-12 | 2004-11-30 | Altera Corporation | Synchronization of hardware and software debuggers |
-
2003
- 2003-08-28 US US10/652,223 patent/US20040122643A1/en not_active Abandoned
- 2003-08-29 EP EP03255373A patent/EP1394704A3/en not_active Withdrawn
- 2003-08-29 JP JP2003307684A patent/JP2004094956A/ja not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013254457A (ja) * | 2012-06-08 | 2013-12-19 | Renesas Electronics Corp | 半導体装置のシミュレータ、シミュレーション方法及びシミュレーションプログラム |
JP2014182734A (ja) * | 2013-03-21 | 2014-09-29 | Renesas Electronics Corp | 半導体装置のシミュレータ、シミュレーション方法及びシミュレーションプログラム |
Also Published As
Publication number | Publication date |
---|---|
EP1394704A3 (en) | 2005-02-09 |
EP1394704A2 (en) | 2004-03-03 |
US20040122643A1 (en) | 2004-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hutchings et al. | A CAD suite for high-performance FPGA design | |
US7340693B2 (en) | System for designing re-programmable digital hardware platforms | |
US7742903B2 (en) | Variants in graphical modeling environments | |
US7730353B2 (en) | Memory-based trigger generation scheme in an emulation environment | |
US20170074932A1 (en) | Integrated circuit verification using parameterized configuration | |
US20080147371A1 (en) | User Defined Virtual Instruments in a Simulation Environment | |
WO2007032767A2 (en) | Extensible internal representation of systems with parallel and sequential implementations | |
Hutchings et al. | Designing and debugging custom computing applications | |
US7031899B2 (en) | System for characterizing simulated circuit logic and behavior | |
Große et al. | Efficient Automatic Visualization of SystemC Designs. | |
US6643836B2 (en) | Displaying information relating to a logic design | |
Khan et al. | gNOSIS: A board-level debugging and verification tool | |
US8082139B1 (en) | Displaying signals of a design block emulated in hardware co-simulation | |
JP2004094956A (ja) | スイッチドキャパシタ回路をシミュレートするための装置および方法 | |
US6978435B2 (en) | Apparatus for programming a programmable device, and method | |
US7991606B1 (en) | Embedded logic analyzer functionality for system level environments | |
Lin et al. | Computational support for multiplicity in hierarchical electronics design | |
JP4979329B2 (ja) | 回路構成情報生成装置、制御装置、回路検証システム、回路検証方法、回路構成情報生成プログラム及び制御プログラム | |
Glick et al. | Maverick: A stand-alone CAD flow for partially reconfigurable FPGA modules | |
US8756539B2 (en) | NetList maintenance in a circuit diagram | |
Akpan | Model-based FPGA embedded-processor systems design methodologies: Modeling, syntheses, implementation and validation | |
Iskander et al. | Using partial reconfiguration and high-level models to accelerate FPGA design validation | |
Hutchings et al. | Developing and debugging FPGA applications in hardware with JHDL | |
Compan et al. | GENVIEW: a portable source-level debugger for macrocell generators | |
New | Python based FPGA design-flow |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20061107 |