(57)【要約】　【課題】　少なくとも１つの回路構成要素を一緒に配線することにより、少なくとも１つのサブ回路を実現することができるプログラム可能な回路デバイスをプログラムするための装置を提供する。　【解決手段】　プログラム可能な回路デバイスは、プログラム可能な計算デバイス、ユーザ・インタフェース、および設計ツールを含む。ユーザ・インタフェースは、プログラム可能な計算デバイスに関連している。設計ツールは、プログラム可能な計算デバイスに関連していて、ユーザ・インタフェースのところでユーザと相互作用を行うように構成されている。設計ツールは、プログラム可能なデバイスのサブ回路の複数の構成、トポロジー、およびパラメータのうちの少なくとも１つを定義するための情報を含むサブ回路定義を含むプログラム可能な計算デバイスで実施されたコンピュータ・プログラム・コードを含む。本発明は、また、この目的のための方法も含む。【選択図】　　　図１
2004094950.tif 000002
【特許請求の範囲】
【請求項１】
　少なくとも１つの回路構成要素を一緒に配線することにより少なくとも１つのサブ回路を実現することができるプログラム可能な回路デバイスをプログラムするための装置であって、
　プログラム可能な計算デバイスと、
　前記プログラム可能な計算デバイスに関連するユーザ・インタフェースと、
　前記プログラム可能な計算デバイスに関連していて、前記ユーザ・インタフェースのところで、ユーザと相互作用を行うことができるように構成されている設計ツールとを備え、該設計ツールが、プログラム可能なデバイスのサブ回路の複数の構成、トポロジー、およびパラメータのうちの少なくとも１つを定義するための情報を含むサブ回路定義を含む前記プログラム可能な計算デバイスで実施されたコンピュータ・プログラム・コードを備える装置。
【請求項２】
　前記サブ回路定義が、１つまたはそれ以上のアルゴリズムの形の情報を含む、請求項１に記載の装置。
【請求項３】
　前記情報の少なくとも一部が、インタープリタ・コードで実現される、請求項２に記載の装置。
【請求項４】
　前記情報が、前記設計ツールに記憶されているデータ、および前記ユーザ・インタフェースにより受信したデータと結合している、請求項２に記載の装置。
【請求項５】
　前記サブ回路定義が、サブ回路トポロジーに関する情報を含む、請求項１に記載の装置。
【請求項６】
　前記サブ回路定義が、サブ回路トポロジーと構成要素の値の関係を、前記ユーザ・インタフェースが表示するもっと高いレベルのパラメータにマッピングするために使用することができる前記サブ回路に関する情報を含む、請求項１に記載の装置。
【請求項７】
　前記サブ回路定義が、シミュレーションを通して識別された前記サブ回路の性能に関する情報を含む、請求項１に記載の装置。
【請求項８】
　前記構成可能なハードウェア・デバイスが、フィールド・プログラマブル・アナログ・アレイ（ＦＰＡＡ）を備える、請求項１に記載の装置。
【請求項９】
　前記サブ回路定義が、前記プログラム可能なデバイスのサブ回路に対する複数の構成を制御できるように、前記ユーザ・インタフェースを定義し、制御するための情報を含む、請求項１に記載の装置。
【請求項１０】
　前記サブ回路定義が、前記プログラム可能なデバイスのサブ回路の構成を修正するための情報を含む、請求項１に記載の装置。
【請求項１１】
　前記サブ回路定義が、前記ユーザ・インタフェースのところで実施されたユーザの選択からの情報を含む、請求項１に記載の装置。
【請求項１２】
　前記サブ回路定義が、前記サブ回路の正しい使用に関するエラー・チェックを行うために使用することができる情報を含む、請求項１に記載の装置。
【請求項１３】
　前記サブ回路定義が、もっと大きなアナログ回路内に置かれた場合に、前記サブ回路の動作をシミュレートするために使用することができる情報を含む、請求項１に記載の装置。
【請求項１４】
　前記サブ回路定義が、前記サブ回路の記号的表示を形成するために使用することができる情報を含む、請求項１に記載の装置。
【請求項１５】
　前記サブ回路定義が、前記サブ回路のバージョン数を決定するために使用することができる情報を含む、請求項１に記載の装置。
【請求項１６】
　前記サブ回路定義が、特定の設計ツールまたは前記設計ツールのバージョンとの前記サブ回路の互換性を決定するために使用することができる情報を含む、請求項１４に記載の装置。
【請求項１７】
　前記サブ回路定義が、プログラム可能なデバイスとの前記サブ回路の互換性を決定するために使用することができる情報を含む、請求項１３に記載の装置。
【請求項１８】
　前記アルゴリズムがコード・ルーチンを含む、請求項１に記載の装置。
【請求項１９】
　前記コード・ルーチンが「Ｃ」言語コードを備える、請求項１８に記載の装置。
【請求項２０】
　プログラム可能なデバイスをプログラムするための装置であって、
　プログラム可能なコンピュータと、
　前記プログラム可能なコンピュータに関連するユーザ・インタフェースと、
　前記プログラム可能なデバイス内でサブ回路を実現する目的で、回路構成要素を一緒に配線するために、ユーザ・インタフェースのところでユーザ入力に応答する前記サブ回路の少なくとも１つのパラメータに対する複数の値を定義するのに使用することができる前記プログラム可能なデバイスのサブ回路に関する情報を含む少なくとも１つのサブ回路定義を含む前記プログラム可能なコンピュータで実施されたコンピュータ・プログラム・コードとを備える装置。
【請求項２１】
　前記情報が、前記サブ回路の複数の構成を定義するために使用することができる、請求項２０に記載のシステム。
【請求項２２】
　前記情報が、前記サブ回路の複数のトポロジーを定義するために使用することができる、請求項２０に記載のシステム。
【請求項２３】
　前記情報が、複数の構成の中から、前記サブ回路を選択的に構成することができるように、前記ユーザ・インタフェースを制御するために使用することができる、請求項２０に記載のシステム。
【請求項２４】
　前記ユーザ・インタフェースが、前記サブ回路の構成を修正するために使用することができる情報をユーザが選択することができるようにする、請求項２０に記載のシステム。
【請求項２５】
　前記サブ回路定義が複数のネット・リストを備える、請求項２０に記載のシステム。
【請求項２６】
　前記ネット・リストが、設計中のプログラム可能なデバイス上に位置するアナログ構成要素への参照を含む、請求項２５に記載のシステム。
【請求項２７】
　設計中の前記プログラム可能なデバイスが、フィールド・プログラマブル・アナログ・アレイ（ＦＰＡＡ）を備える、請求項２６に記載のシステム。
【請求項２８】
　前記ネット・リストが、サブ回路のユーザが選択した構成を実現するための回路構成要素の接続方法を詳細に記述している接続情報を含む、請求項２６に記載のシステム。
【請求項２９】
　前記サブ回路定義が、特定のサブ回路を定義している情報を含む１つのテキスト・ファイルを含む、請求項２０に記載のシステム。
【請求項３０】
　前記特定のサブ回路が、半サイクル利得段を備える、請求項２９に記載のシステム。
【請求項３１】
　プログラム可能な回路デバイスをプログラムするための方法であって、
　プログラム可能なコンピュータに、回路構成要素に対する設計ツールおよびサブ回路定義を供給するステップと、
　前記プログラム可能なコンピュータにより、プログラム可能な回路デバイス内でサブ回路を実現するために、回路構成要素を一緒に配線する回路設計を生成するステップとを含む方法。
【請求項３２】
　回路設計を生成するステップが、特定のサブ回路定義内に含まれているデータを読み出すステップを含む、請求項３１に記載の方法。
【請求項３３】
　ユーザ・インタフェースを供給するステップをさらに含み、回路設計を生成するステップが、少なくとも１つのサブ回路設計をもっと大きな回路設計に組み立てるステップを含む、請求項３１に記載の方法。
【請求項３４】
　特定のサブ回路を設計するために使用することができる、各サブ回路定義に対してユーザ・インタフェースを供給するステップをさらに含み、回路設計を生成するステップが、前記ユーザ・インタフェースによりサブ回路設計を構成するステップを含む、請求項３１に記載の方法。
【請求項３５】
　前記サブ回路定義が、インタープリタ・コードを含み、回路設計を生成するステップが、前記インタープリタ・コードを実行するステップを含む、請求項３１に記載の方法。
【請求項３６】
　前記設計ツールと通信するユーザ・インタフェースを供給するステップと、前記ユーザ・インタフェースに特定のプログラム可能なデバイスに特有の機能を供給するステップとをさらに含む、請求項３１に記載の方法。
【請求項３７】
　前記設計ツールが、前記サブ回路定義に含まれている回路設計および情報によりシミュレーションをセットアップし実行するように、ユーザにより構成される、請求項３１に記載の方法。
【請求項３８】
　前記設計ツールにより、前記回路設計に対する回路シミュレーションの結果を表示するステップをさらに含む、請求項３１に記載の方法。
【請求項３９】
　プログラム可能なデバイスにダウンロードするために、前記回路設計を適当にフォーマットされたデータに変換するステップをさらに含む、請求項３１に記載の方法。
【請求項４０】
　前記プログラム可能なデバイスに適当にフォーマットされたデータのダウンロードを容易にするステップをさらに含む、請求項３９に記載の方法。
【請求項４１】
　回路に構成することができる回路構成要素を有するプログラム可能なデバイスをプログラムするための装置であって、
　プログラム可能なコンピュータと、
　プログラム可能なデバイスのサブ回路構成要素を回路設計内に一緒に配線し、前記サブ回路の一意の複数の構成を定義するために使用することができる情報を含む少なくとも１つのサブ回路定義を含む前記プログラム可能なコンピュータで実施されたコンピュータ・プログラム・コードとを備える装置。
【請求項４２】
　前記サブ回路定義が複数のネット・リストを備える、請求項４１に記載の装置。
【請求項４３】
　選択したネット・リストが、前記プログラム可能なデバイス上に位置する回路構成要素への参照を含む、請求項４１に記載の装置。
【請求項４４】
　前記サブ回路定義が、ユーザが、サブ回路設計に対するパラメータを設定することができるようにする情報を含む、請求項４１に記載の装置。
【請求項４５】
　フィールド・プログラマブル・アナログ・アレイ（ＦＰＡＡ）で回路を実現することができるようにするために、回路構成要素を一緒に構成するための方法であって、
　ユーザが、プログラム可能なコンピュータのユーザ・インタフェースを通して、ＦＰＡＡでサブ回路を実現するために、回路構成要素の構成を定義することができるサブ回路定義を含む命令により前記プログラム可能なコンピュータをプログラムするステップと、
　ユーザ・インタフェースを通して、ＦＰＡＡでサブ回路を実現する回路構成要素の特定の構成を定義するステップとを含む方法。
【請求項４６】
　前記対応するサブ回路のトポロジーを定義するステップをさらに含む、請求項４５に記載の方法。
【請求項４７】
　前記サブ回路のパラメータを定義するステップをさらに含む、請求項４６に記載の方法。
【請求項４８】
　前記命令により前記ユーザ・インタフェースを制御するステップをさらに含む、請求項４７に記載の方法。
【請求項４９】
　前記サブ回路の構成を修正するために、前記ユーザ・インタフェースによりユーザの選択を供給するステップをさらに含む、請求項４５に記載の方法。
【請求項５０】
　構成を定義するステップが、サブ回路および回路のうちの一方を形成するために回路構成要素を一緒に配線するステップを含む、請求項４５に記載の方法。
【請求項５１】
　前記回路構成要素を、フィールド・プログラマブル・アナログ・アレイ（ＦＰＡＡ）に対する回路設計に組み立てるステップをさらに含む、請求項４５に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
　本発明は、構成可能なデバイスに関し、特にアナログ回路構成要素のようなサブ回路および回路に構成することができる回路構成要素を有するプログラム可能なデバイスのプログラミングに関する。
【背景技術】
【０００２】
（コンピュータ・プログラムのリストの付録への相互参照）
　本明細書の一部であるＣＤ−ＲＯＭ付録Ａは、１つのファイルからなるＣＤ−ＲＯＭ付録である。ＣＤ−ＲＯＭ付録Ａは、ソフトウェア・プログラムを含むコンピュータ・プログラムのリストの付録である。付録Ａは、引用によって本明細書の記載に援用する。コピーを含むＣＤ−ＲＯＭの数は全部で２つであり、それぞれが、下記の１つのファイルを含む。
【０００３】
　　　　　名称　　　　　　　　大きさ　　　　　　　　　　作成日　　
　　ＧＡＩＮＨＡＬＦ　　　　３２，３６１　　　　　１２−０１−００
（著作権について）
　本特許明細書の開示の一部は、著作権により保護されている資料を含む。著作権の所有者は、特許商標庁の特許ファイルまたは記録に記載されている本特許明細書または特許の開示をファクシミリでコピーすることをすべての人に許可するが、そうでない場合には、すべての著作権を留保する。
【０００４】
　回路設計のいろいろな問題を解決するために、最近、構成可能なデバイスが盛んに使用されるようになってきている。構成可能なデバイスの一例としては、サブ回路および回路に構成することができる回路構成要素を含むプログラム可能なデバイスがある。構成可能なデバイスの一例としては、フィールド・プログラマブル・アナログ・アレイ（ＦＰＡＡ）がある。
【０００５】
　フィールド・プログラマブル・アナログ・アレイ（ＦＰＡＡ）は、アナログ回路構成要素およびスイッチの集合体からなる。特定の回路設計を実現する目的で、構成要素を相互に接続するためにスイッチを使用することができる。スイッチは、また、個々のアナログ回路構成要素の値を設定するためにも使用することができる。ＦＰＡＡのスイッチを設定するために、任意のビット・ストリームをＦＰＡＡにダウンロードすることができ、ＦＰＡＡは特定の回路を定義することができる。しかし、どんなに小さいＦＰＡＡでも、設定を必要とする数千のスイッチを有する。それ故、回路設計の問題およびスイッチ設定の問題を簡単に行うための技術の開発が待望されている。さらに、特定のアナログ回路設計をシミュレートするための技術の改善も待望されている。
【０００６】
　例えば、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）は、種々のサブ回路および回路を実現するために、デジタル回路構成要素の集合体、およびデジタル構成要素を一緒に接続するために使用することができるスイッチの集合体を含む。しかし、フィールド・プログラマブル・アナログ・アレイ（ＦＰＡＡ）内のアナログ構成要素の設計および接続は、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）内のデジタル構成要素の設計および接続よりかなり異なる。第一に、デジタル設計ソフトウェア・ツールは、アナログ領域で使用するように容易に適合させることができない。第二に、アナログ構成要素は、多くの場合、利得、周波数、抵抗等のような調整可能な値を含む。第三に、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）と一緒に使用するシミュレータは、通常、アナログ回路には適用できないデジタル論理シミュレータである。
【０００７】
　周知の技術の場合、全カスタム集積回路設計は、比較的時間の掛かるもので、広範なアナログ設計の専門知識を必要とした。特に、プログラム可能なデバイスおよびＦＰＡＡを使用した場合には、アレイをプログラムするための適当なデータがあれば、回路を迅速に生産および変更することができる。しかし、そうするには、複雑で、アレイを構成する技術を使用する回路のアレイ・アーキテクチャおよび設計の両方の深い知識を必要とするカスタム・プログラミング・データを生成しなければならない。
【０００８】
　ＦＰＡＡにより実施した回路機能の態様を変更するために、ＦＰＡＡに隣接してマイクロプロセッサを設置しなければならない場合には、回路設計者は、アレイ・アーキテクチャ、その技術を使用する、ＦＰＡＡが形成されている回路の設計、ＦＰＡＡでそのような回路を実現するための特定のデータ・シーケンスの構造についての深い知識が必要であった。
【特許文献１】米国特許第６，２７２，６６９　Ｂ１号
【特許文献２】米国特許出願番号１０／１７１，３３４
【発明の開示】
【発明が解決しようとする課題】
【０００９】
　それ故、上記技術は、実施するのが難しく非常な労力を必要とする複雑なカスタム・プログラミング・データの生成を含む。それ故、この問題を克服するためには改善が必要である。
【００１０】
　従って、アナログ構成要素を含むプログラム可能なデバイスをプログラムすることができるようにするためにも改善を行う必要がある。
【課題を解決するための手段】
【００１１】
　コンピュータ援用設計（ＣＡＤ）ツールでサブ回路のグループを組み立てて回路を設計するための方法および装置が開発されている。ＣＡＤツールを使用すれば、回路設計を回路を実現するプログラム可能なデバイスをプログラムするのに必要な、適当にフォーマットされたデータに変換することができる。
【００１２】
　ある態様によれば、本発明は、少なくとも１つの回路構成要素を一緒に配線することにより少なくとも１つのサブ回路を実現することができるプログラム可能な回路デバイスをプログラムするための装置を提供する。プログラム可能な回路デバイスは、プログラム可能な計算デバイス、ユーザ・インタフェース、および設計ツールを含む。ユーザ・インタフェースは、プログラム可能な計算デバイスに関連している。設計ツールは、プログラム可能な計算デバイスに関連していて、ユーザ・インタフェースのところでユーザと相互作用を行うことができるように構成されている。設計ツールは、プログラム可能なデバイスのサブ回路の複数の構成、トポロジー、およびパラメータのうちの少なくとも１つを定義するための情報を含むサブ回路定義を含むプログラム可能な計算デバイスで実施されたコンピュータ・プログラム・コードを含む。
【００１３】
　他の態様によれば、本発明は、プログラム可能なデバイスをプログラムするための装置を提供する。この装置は、プログラム可能なコンピュータ、ユーザ・インタフェース、およびコンピュータ・プログラム・コードを含む。ユーザ・インタフェースは、プログラム可能なコンピュータに関連している。コンピュータ・プログラム・コードは、プログラム可能なコンピュータで実施され、少なくとも１つのサブ回路定義を含む。少なくとも１つのサブ回路定義は、プログラム可能なデバイスでサブ回路を実現する目的で、回路構成要素を一緒に配線するために、ユーザ・インタフェースのところでユーザ入力に応答するサブ回路の少なくとも１つのパラメータに対する複数の値を定義するのに使用することができるプログラム可能なデバイスのサブ回路に関する情報を含む。
【００１４】
　さらに他の態様によれば、本発明は、プログラム可能な回路デバイスをプログラムするための方法を提供する。この方法は、プログラム可能なコンピュータに、回路構成要素に対する設計ツールおよびサブ回路定義を供給するステップと、プログラム可能なコンピュータにより、プログラム可能な回路デバイスでサブ回路を実現するために、回路構成要素を一緒に配線する回路設計を生成するステップとを含む。
【００１５】
　さらに他の態様によれば、本発明は、回路に構成することができる回路構成要素を有するプログラム可能なデバイスをプログラムするための装置を提供する。この装置は、プログラム可能なコンピュータおよびコンピュータ・プログラム・コードを含む。コンピュータ・プログラム・コードは、少なくとも１つのサブ回路定義を含むプログラム可能なコンピュータで実施される。サブ回路定義は、プログラム可能なデバイスのサブ回路構成要素を回路設計内に一緒に配線するための情報を含む。サブ回路定義は、サブ回路の一意の複数の構成を定義するために使用することができる。
【００１６】
　さらに他の態様によれば、本発明は、プログラマブル・アナログ・アレイ（ＦＰＡＡ）で回路を実現することができるようにするために、回路構成要素を一緒に構成するための方法を提供する。この方法は、ユーザが、プログラム可能なコンピュータのユーザ・インタフェースを通して、ＦＰＡＡでサブ回路を実現するために、回路構成要素の構成を定義することができるサブ回路定義を含む命令によりプログラム可能なコンピュータをプログラムするステップと、ユーザ・インタフェースを通して、ＦＰＡＡでサブ回路を実現する回路構成要素の特定の構成を定義するステップとを含む。
【００１７】
　添付の図面を参照しながら、本発明の好ましい実施形態について以下に説明する。
【発明を実施するための最良の形態】
【００１８】
　米国特許法の本質的な目的、すなわち、「科学および有用な技術の進歩を促進する目的」（第１条第８節）を推進するために本明細書を提出する。
【００１９】
　本出願人の発明の好ましい実施形態について説明する。図面を参照しながら、プログラム可能な回路デバイスをプログラムするためのシステムおよび方法を含む例示としての実施例について以下に説明し、記述する。好ましい実施形態を参照しながら本発明について説明するが、本発明はこのような実施形態に制限されるものではなく、上記実施形態よりは広い場合があるが、添付の特許請求の範囲内に含まれる別のもの、等価のもの、および変形したものを含むことを理解されたい。
【００２０】
　本発明が分りにくくなるのを避けるために、本発明の実施に密接に関連している詳細な点だけを詳細に説明するが、必要に応じて、現在分かっている周辺の詳細な点を、該当する技術において現在分かっているものとして引用により本明細書の記載に援用するものとする。
【００２１】
　本明細書においては、「サブ回路」という用語は、より大きい回路のマクロ構成要素として使用するために入手することができる接続している構成要素のネットワークを意味する。サブ回路は、ある回路の一部または全部を形成することができる。回路は、複数の接続しているサブ回路を含むことができる。例えば、スーパーヘテロダイン受信機回路は、完全なスーパーヘテロダイン受信機回路を形成するために一緒に接続している無線周波（ＲＦ）増幅器サブ回路、発振器サブ回路、ミキサ・サブ回路、中間周波（ＩＦ）増幅器サブ回路、検出器サブ回路、オーディオ増幅器サブ回路、および電源サブ回路を備える。
【００２２】
　本明細書においては、「フィールド・プログラマブル・アナログ・アレイ（ＦＰＡＡ）」という用語は、プログラム可能な相互接続および構成可能なアナログ・ブロックのアレイを使用するアナログ回路を実施するためにプログラムし、構成することができる集積回路を意味する。より詳細に説明すると、ＦＰＡＡは、アナログ回路構成要素およびスイッチの集合体を含む。特定の回路設計を実現する目的で構成要素を相互に接続するためにスイッチを使用することができる。スイッチは、また、個々のアナログ回路構成要素の値を設定するためにも使用することができる。２進ビット・ストリームをプログラム可能なデバイスまたはＦＰＡＡにダウンロードすることにより、デバイスをプログラムするためにスイッチを設定することができ、デバイスは、デバイス上の特定の回路またはサブ回路を定義する。どんなに簡単なＦＰＡＡでも、特定の回路設計を実現するために設定しなければならない数千のスイッチを有する。それ故、回路設計の問題およびスイッチ設定の問題を簡単に行うために、本明細書に記載する改善が使用される。さらに、同様に、本明細書に記載した改善による特定のアナログ回路設計をシミュレートするために設置されている。
【００２３】
　本明細書においては、「Ｃ」コードという用語は、プログラム・コードの特定の例を意味する。ＰＡＳＣＡＬ、ビジュアル・ベーシック、Ｆｏｒｔｒａｎおよび他の周知のプログラム・コードを含む他の特定のプログラム・コードも使用することができることを理解されたい。
【００２４】
　図１は、参照番号１０で示すプログラム可能な回路デバイスをプログラムするために、基本的なシステム構成を使用する本出願人の発明の好ましい実施形態を示す。システム１０は、パーソナル・コンピュータ（ＰＣ）１４のようなプログラム可能な計算デバイス１２を含む。
【００２５】
　図１に示すように、システム１０は、プログラム可能な制御デバイス１８を使用するプログラム可能な回路デバイス２０をプログラムすることができるような方法で、ソフトウェアおよびハードウェアの組合わせにより実行される。より詳細に説明すると、ソフトウェアは、中央処理装置（ＣＰＵ）プログラムによりコントローラ・プログラムを開発する際に使用するために、緊密に結合している制御を必要とする情報を入手することができるように、プログラム可能な回路デバイス２０をプログラムするためのエクスポートされたデバイス情報の形で供給される。プログラム可能な制御デバイス１８は、次に、（ａ）構成データの全部または一部を修正し、次に、構成データをプログラム可能な回路デバイス２０のレジスタに適用することにより、または（ｂ）プログラム可能な回路デバイス２０のレジスタ内に含まれている構成データの全部または一部を直接修正することにより、プログラム可能な回路デバイス２０が、修正した構成データを使用できるようにする。構成データを使用して、プログラム可能な回路デバイス２０は、ソフトウェアの結果としてプログラムされる。システムのソフトウェアの態様は、従来技術のシステムの通常の構成データの他に、プログラム可能な回路デバイス２０の機能の全部または一部を修正するために、第２の構成可能なデバイスが使用することができるコードを生成する。
【００２６】
　図１に示すように、ある形のプログラム可能な計算デバイス１２は、パーソナル・コンピュータ（ＰＣ）１４を備える。ＰＣ１４は、マイクロコントローラ・ユニット（ＭＣＵ）２２、メモリ２８、設計ツール３０、ユーザ・インタフェース３４、および構成可能なアナログ・モジュール（ＣＡＭ）ライブラリ４０を含む。ＭＣＵ２２は、処理回路２６を含む中央処理装置（ＣＰＵ）２４を含む。設計ツール３０は、１つまたはそれ以上の回路設計３６が生成され、モデル化されるコンピュータ援用設計（ＣＡＤ）ツール３２を含む。各回路設計３６は、ネット・リスト３８の形をしている回路モデル情報を含む。
【００２７】
　ＣＡＭライブラリ４０は、各サブ回路に関する情報を含む複数のサブ回路定義４２を含む。ある場合には、サブ回路定義は、構成可能なアナログ・モジュール（ＣＡＭ）である。それ故、ＣＡＭライブラリ４０は、複数のＣＡＭを備える。プログラム可能な制御デバイス１８は、アプリケーション・プログラム４４およびユーザ・インタフェース４６を含む。動作中、アプリケーション・プログラム４４は、関連するアプリケーション・システムで、ソフトウェアの監視および制御機能を実施するためのコンピュータ・プログラム・コードを含む。ユーザ・インタフェース４６により上記監視および制御機能が可能になる。
【００２８】
　ある形のプログラム可能な回路デバイス２０は、フィールド・プログラマブル・アナログ・アレイ（ＦＰＡＡ）２１を備える。ＦＰＡＡ２１は、ハードウェア４８およびメモリ５６を含む。ハードウェア４８は、プログラミングにより複数の一意の構成に構成することができる。より詳細に説明すると、回路５０は、サブ回路５２および回路構成要素５４を必要な構成に配線または接続することによりＦＰＡＡ２１で実現される。
【００２９】
　設計ツール３０は、ＡｎａｄｉｇｍＤｅｓｉｇｎｅｒ２を備える。初期のバージョンであるＡｎａｄｉｇｍＤｅｓｉｇｎｅｒは、現在、英国のＡｎａｄｉｇｍ社が公開していて、ｈｔｔｐ：／／ｗｗｗ．ａｎａｄｉｇｍ．ｃｏｍからダウンロードして使用することができ、引用によって本明細書の記載に援用する。将来のリリース・バージョンは、ＡｎａｄｉｇｍＤｅｓｉｇｎｅｒの上記初期のバージョンに追加される本発明の態様を含むものと思われる。その詳細については以下に説明する。
【００３０】
　上記技術によれば、プログラミング・データの生成が、コンピュータ援用設計（ＣＡＤ）ツールの使用により非常に簡単になる。ＣＡＤツールは、回路設計者に周知の方法で設計を表し、ＦＰＡＡをプログラムするのに必要な対応するデータを自動的に生成する。コンピュータ援用設計（ＣＡＤ）ツールを使用しない場合には、このようなプログラミングを修正または生成する機能は制限され、ほとんど実際には使用できない。
【００３１】
　動作中、設計ツール３０は、構成データの最初の一組を生成する。構成データは、エクスポートしたデバイス情報によりＰＣ１６内のコンパイラ（図示せず）に供給される。さらに、またはそうしたい場合には、構成データは、ＰＣ１６のユーザ・プログラム（図示せず）によりコンパイラに供給される。引用によって本明細書の記載に援用する、「プログラム可能な半導体デバイスを構成するための方法」（Ｍｅｔｈｏｄ　ｆｏｒ　Ｃｏｎｆｉｇｕｒｉｎｇ　ａ　Ｐｒｏｇｒａｍｍａｂｌｅ　Ｓｅｍｉｃｏｎｄｕｃｔｏｒ　Ｄｅｖｉｃｅ）という名称の米国特許第６，２７２，６６９　Ｂ１号が、プログラム可能な半導体デバイスの構成方法をより詳細に開示している。引用によって本明細書の記載に援用する、「構成可能なハードウェア・デバイスでアナログ素子を構成するためのシステムおよび方法」（Ｓｙｓｔｅｍ　ａｎｄ　Ｍｅｔｈｏｄ　ｆｏｒ　Ｃｏｎｆｉｇｕｒｉｎｇ　Ａｎａｌｏｇ　Ｅｌｅｍｅｎｔｓ　ｉｎ　ａ　Ｃｏｎｆｉｇｕｒａｂｌｅ　Ｈａｒｄｗａｒｅ　Ｄｅｖｉｃｅ）という名称の米国特許出願番号１０／１７１，３３４が、構成可能なハードウェア・デバイスでアナログ素子を構成するための装置および方法をさらに詳細に開示している。
【００３２】
　公開されていて使用することができる市販のＡｎａｄｉｇｍＤｅｓｉｇｎｅｒで現在入手できるこれらの上のＡｎａｄｉｇｍＤｅｓｉｇｎｅｒ２に追加された特定の改善としては、ＣＡＤツールで、サブ回路設計のグループを一緒に組み立てることにより回路を設計する機能等がある。設計が済むと、回路（またはサブ回路）設計を、フィールド・プログラマブル・アナログ・アレイ（ＦＰＡＡ）のようなプログラム可能なデバイスで実現することができる。ＣＡＤツールは、回路設計をデバイスをプログラムするのに必要な適当にフォーマットされたデータに変換するための機構を供給する。各サブ回路に対するサブ回路定義は、ＣＡＤツールと互換性を持つが、ＣＡＤツールの一部ではない。サブ回路定義は、個々にまたはグループで携帯することができる。より詳細に説明すると、サブ回路定義は、それをＣＡＤツールと一緒に使用するために、コンパイルする必要はない。それ故、サブ回路定義は、ＣＡＤツールとの互換性を維持しながら、関連するサブ回路の機能を変更するために、容易に生成または修正することができる。
【００３３】
　サブ回路定義は、いくつかのことを行うために必要なサブ回路に関する情報を含む。第１に、サブ回路定義は、サブ回路の複数の構成、トポロジーおよびパラメータを定義するために必要なサブ回路に関する情報を含む。第２に、サブ回路定義は、これらの複数の構成の制御を可能にするユーザ・インタフェースを定義し、制御するために必要なサブ回路に関する情報を含む。第３に、サブ回路定義は、ユーザの選択に基づくサブ回路の構成を修正するのに必要なサブ回路に関する情報を含む。第４に、サブ回路定義は、サブ回路の正しい使用に関するエラーのチェックを行うために必要なサブ回路に関する情報を含む。第５に、サブ回路定義は、もっと大きなアナログ回路でのサブ回路の動作をシミュレートするのに必要なサブ回路に関する情報を含む。第６に、サブ回路定義は、サブ回路の記号的表示を行うのに必要なサブ回路に関する情報を含む。第７に、サブ回路定義は、サブ回路のバージョン数を決定するのに必要なサブ回路に関する情報を含む。第８に、サブ回路定義は、特定のＣＡＤツールとのサブ回路の互換性、または特定のＣＡＤツールのバージョン数を決定するのに必要なサブ回路に関する情報を含む。第９に、サブ回路定義は、ＦＰＡＡのようなプログラム可能なデバイスとのサブ回路の互換性を決定するのに必要なサブ回路に関する情報を含む。
【００３４】
　サブ回路に関する情報の中のあるものは、インタープリタ・コードに実現することができるアルゴリズムの形で含まれている。アルゴリズム内の情報が、ＣＡＤツール内に記憶しているデータ、およびＣＡＤツールが作動したユーザ・インタフェースから入手したデータと結合すると、アルゴリズムは、必要な情報をＣＡＤツールに返送する。例えば、ユーザの選択（上記項目３）に応じて、サブ回路の構成の修正に関する情報はこの方法で処理される。
【００３５】
　（図１の）ＣＡＤツール３２はいくつかのことを実行する機能を有する。第１に、ＣＡＤツールは、サブ回路定義に含まれるデータを読み出すことができる。第２に、ＣＡＤツールは、ユーザが、サブ回路をもっと大きい回路に組み立てることができるユーザ・インタフェースを供給する。第３に、ＣＡＤツールは、ユーザが、そのサブ回路設計の構成および動作を変更することができるように、各サブ回路に対してユーザ・インタフェースを供給することができる。第４に、ＣＡＤツールは、サブ回路定義に含まれているインタープリタ・コードを作動させることができる。第５に、ＣＡＤツールは、ユーザ・インタフェースに、特殊なプログラム可能なデバイスに特有な機能を供給することができる。第６に、ＣＡＤツールは、サブ回路定義に含まれる回路設計および情報によりシミュレーションをセットアップおよび実行することができる。第７に、ＣＡＤツールは、シミュレーションの結果を表示することができる。第８に、ＣＡＤツールは、プログラム可能なデバイスにダウンロードするために、回路設計を適当にフォーマットされたデータに変換することができる。第９に、ＣＡＤツールは、適当にフォーマットされたデータをプログラム可能なデバイスに容易にダウンロードすることができる。
【００３６】
　本発明の実施例により、有意な設計の専門知識を、シミュレーションにより示すように、サブ回路トポロジー、サブ回路トポロジーおよび構成要素の値のユーザ・インタフェースが表示するもっと高いレベルのパラメータとの関係、およびサブ回路の性能を含むサブ回路定義内に入れることができる。サブ回路定義は、ＣＡＤツールと一緒に、プログラム可能なデバイス・アーキテクチャの特定の詳細を含む。それ故、この技術を使用する人は、回路設計またはプログラム可能なデバイスの専門家でなくてもよい。それどころか、ユーザは、サブ回路のユーザ・インタフェースおよびＣＡＤツールが表すもっと高いレベルの抽出を行うことができる。それ故、回路の設計、およびＦＰＡＡチップをプログラムするための適当なフォーマットへの回路の変換の両方を比較的迅速に容易に行うことができる。
【００３７】
　構成可能なアナログ・モジュール（ＣＡＭ）の形をしているサブ回路定義は、ＦＰＡＡチップのようなプログラム可能なデバイスで構成することができる１つまたはそれ以上のサブ回路（回路）の完全な内蔵定義を含む。サブ回路定義は、サブ回路定義の内蔵部分を形成し、他のサブ回路と密接に相互作用を行う「Ｃ」コードを含む。ＣＡＭは、構成およびシミュレーション・モデルを定義する「Ｃ」コードの「断片」（ｓｎｉｐｐｅｔ）または比較的小さなセグメントを含む。
【００３８】
　図２〜図７は、本発明の１つの可能な実施例を示す。しかし、もっと広い適用を有する他の実施例も可能であり、添付の特許請求の範囲内に含まれることを理解されたい。
【００３９】
　図２は、ＡｎａｄｉｇｍＤｅｓｉｇｎｅｒ２の半サイクル利得段５８を実現する特定のアナログ回路（またはサブ回路）のセットアップである。ＡｎａｄｉｇｍＤｅｓｉｇｎｅｒ２のアプリケーションをスタートすると、ユーザに対して、設計ツール・アプリケーション・ウィンドウ６２内に図２のスクリーン画像６０が提示される。特定のチップ設計ができるようにするために、ＡＮ２２０Ｅ０４のＦＰＡＡチップ設計６４が、作業スペース６６内に表示される。
【００４０】
　スクリーン画像６０は、ヘッダ６８、ユーザが選択できるように複数のメニュー項目７１〜７３が表示されるメニューバー７０、複数の選択することができるツールバー・ボタン７６および７８が表示されるツールバー７４を含む。
【００４１】
　図２に示す「編集」、「シミュレーション」、「構成」および「設定」に対する特定のメニュー項目を除いて、メニューバー７０の残りのメニュー項目は、ＡｎａｄｉｇｍＤｅｓｉｇｎｅｒ、すなわち、ＡｎａｄｉｇｍＤｅｓｉｇｎｅｒ２の初期のバージョンで現在使用できる。それ故、このような他のメニュー項目の機能的詳細は、本発明が分かりにくくなると困るので、本明細書においてはあまり詳細には説明しない。代わりに、「編集」および「シミュレーション」メニュー項目７１および７３が供給する追加の機能および詳細について以下により詳細に説明する。
【００４２】
　チップ設計６４は、ＡｎａｄｉｇｍＤｅｓｉｇｎｅｒ２により特定のチップ設計が生成する最初のテンプレートを供給する。より詳細に説明すると、チップ設計６４は、入力セル６７および６９のような複数の入力セル、および出力セル７７および７９のような複数の出力セルを含む。
【００４３】
　本発明の実施例によれば、サブ回路定義は、ＣＡＤツールのＣＡＭライブラリ内に位置する構成可能なアナログ・モジュール（ＣＡＭ）を備える。一実施例によれば、ＣＡＭは、サブ回路記述に対応する特殊なサブ回路を定義するために必要なすべての情報を含む１つのテキスト・ファイルである。図２の半サイクル利得段５８は、ＣＡＭの一例である。
【００４４】
　図２に示すように、一組の信号発生器９５および９７が、入力セル６７の入力リードに接続している。各信号発生器９５および９７は、後で必要な入力ピンのところにマウスおよびカーソルにより置かれる信号発生器９５および９７に対するアイコンを始動させるツールバー・ボタン７８を選択することにより生成される。信号発生器９５または９７のアイコンを選択するために右クリックすることによりメニュー項目が表示される。次に、「信号発生器設定」というタイトルの選択したメニュー項目が表示される。このようなメニュー項目を選択すると、図４のスクリーン画像１２４が、すなわち、（図４の）信号発生器制御ダイアログ・ボックス１２５が始動する。
【００４５】
　さらに、ツールバー・ボタン７６を選択することにより、サブ回路設計内の選択した位置に複数のオシロスコープ・プローブ８７，８９，９１および９３を適用することができる。それにより、マウスを一回左クリックすることにより、コンピュータのマウスおよびカーソルにより位置決めおよび設置することができる移動可能なオシロスコープ・アイコンが表示され、カーソルは適当なノードのところに位置している。設置すると、ユーザは、「オシロスコープ」メニュー項目を含むメニューを始動するオシロスコープ・プローブ・アイコン８７，８９，９１または９３上を右クリックすることができる。マウスおよびカーソルによりメニューを選択すると、図５のオシロスコープ・ダイアログ・ボックス１５７が始動する。
【００４６】
　スクリーン画像６０は、対応する「半サイクル利得段」サブ回路の適当な構成を決定するために、インタープリタ・コードと一緒に使用することができるユーザが選択したオプションをユーザにレンダリングすることができる。構成は、対応するＣＡＭ内に含まれているネット・リストの中の１つにより指定される。各ネット・リストは、コンデンサ、演算増幅器（オペアンプ）、およびＦＰＡＡまたはチップ上に位置するその他のアナログ構成要素への参照を含む。ネット・リストは、また、「半サイクル利得段」のユーザが選択した構成を実現するするための、これらの構成要素の接続方法を示す接続情報も含む。
【００４７】
　より詳細に説明すると、図３は、（図２の）半サイクル利得段５８用のＣＡＭパラメータ・ダイアログ・ボックス８１に対するスクリーン画像８０である。ユーザは、（図２の）「編集」ボタン７１を選択することによりスクリーン画像８０へとナビゲートし、次に、「編集」ボタン７１から垂れ下がっているプルダウン・メニューから「新しいＣＡＭ挿入」（図示せず）を選択する。次に、「ＣＡＭ選択」ダイアログ・ボックス（図示せず）が表示されるので、ユーザは、図３の半サイクル利得段ＣＡＭ記述に対する、対応するディスプレイ・スクリーン８０およびユーザ・インタフェース８３をスタートするためには、スクロール・ダウン・リストから複数のＣＡＭの中の１つを選択し、「ＯＫ」ボタンをクリックしさえすればよい。
【００４８】
　図３に示すように、ＣＡＭは、ユーザ・インタフェース８３を表示する「ＣＡＭパラメータ設定」ダイアログ・ボックス８１を設定するために使用される情報を含む。図２の半サイクル利得段ＣＡＭに対するユーザ・インタフェース８３は、それによりユーザが、サブ回路定義に基づいて、結果として得られるサブ回路の特性を調整することができる種々のオプションを含む。
【００４９】
　ユーザ・インタフェース８３は、「ＣＡＭパラメータ設定」へのダイアログ・ボックス８１の機能を記述しているヘッダ８２を含む。ユーザ・インタフェース８３は、また、「事例の名称およびクロック周波数」フィールド８４、「注」フィールド８６、「記号」フィールド８８、「ＣＡＭオプション」フィールド９０、および「ＣＡＭパラメータ」フィールド９２を含む。ユーザ・インタフェース８３は、さらに、「ＯＫ」ボタン９４、「キャンセル」ボタン９６、「ヘルプ」ボタン９８、および「ＭＣＵコード」ボタン１００を含む。
【００５０】
　「事例の名称およびクロック周波数」フィールド８４は、「事例の名称」記述子ボックス１０４、および「クロック周波数」スクローリング・リスト・ボックス１０６を含む。記述子ボックス１０４内の事例の名称は、サブ回路定義により現在構成中のサブ回路の名称を識別する。「クロック周波数」スクローリング・リスト・ボックス１０６により、ユーザは、ダイアログ・ボックス８１内で識別され、記号８８により表示される各ＣＡＭのサブ回路のクロック周波数を選択的に構成することができる。
【００５１】
　「注」フィールド８６は、ダイアログ・ボックス８１に関連するＣＡＭに対応するサブ回路定義により、現在構成中のサブ回路に関する情報を含む。例えば、特定の回路特性を「注」フィールド８６内にテキストにより表示することができる。
【００５２】
　「記号」フィールド８８は、各ＣＡＭにより識別され、ダイアログ・ボックス８１により、関連するサブ回路定義により構成されるサブ回路の図形的記述を含む。図３に示すように、半サイクル利得段回路の表示は、「記号」フィールド８８内に表示される。
【００５３】
　「ＣＡＭオプション」フィールド９０は、ユーザが、ユーザ・インタフェース８３により、ダイアログ・ボックス８１内で識別した、結果として得られるサブ回路設計に対するサブ回路記述の構成をさらに調整することができる「極性」ラジオ・ボタン１０８および１１０、および「サンプリング入力」ラジオ・ボタン１１２および１１４を含む。例えば、ユーザは、ラジオ・ボタン１０８および１１０をそれぞれ選択することにより、結果として得られる半サイクル利得段サブ回路を非倒置とするか、倒置とするかを選択することができる。さらに、サンプリング入力段階を、「段階１」ラジオ・ボタン１１２および「段階２」ラジオ・ボタン１１４をそれぞれ選択することにより選択することができる。
【００５４】
　「ＣＡＭパラメータ」フィールド９２は、パラメータとして「利得」を識別する「パラメータ」記述子フィールド１１６、「値」入力フィールド１１８、「制限」範囲フィールド１２０、および「実行済み」記述子フィールド１２２を含む。図３に示すように、フィールド９２は、「パラメータ」記述子フィールド１１６内に「利得」を含み、フィールド１１８内に「１」の「値」を有し、フィールド１２０内に０．０１〜１００の「制限」範囲を有し、フィールド１２２内には、１．００の「実行済み」値を有する。
【００５５】
　「ＯＫ」ボタン９４により、ユーザは、ダイアログ・ボックス８１により選択したかまたは入力した構成オプションを選択的に受け入れることができる。「キャンセル」ボタン９６により、ユーザは、ダイアログ・ボックス８１により現在表示されているが、未決定の構成オプションをキャンセルすることができる。「ヘルプ」ボタン９８を押すと、ユーザに対してヘルプ・メニューが表示され、ダイアログ・ボックス８１の使用に関する使用方法およびナビゲーションのためのヘルプを提供する。最後に、「Ｃコード」ボタン１０２を押すと、新しいウィンドウが表示され、それによりユーザは、マイクロプロセッサを使用している場合には、ＦＰＡＡを動的に更新するために、マイクロプロセッサと一緒に使用することができる機能を選択することができる。
【００５６】
　付録Ａの図３の「半サイクル利得段」の構成可能なアナログ・モジュール（ＣＡＭ）は、また、半サイクル利得段に対する利得および極性のような対応する回路（または、サブ回路）に対する種々のパラメータをユーザが設定することができるようにするために使用することができる情報も含む。図３は、付録ＡのＣＡＭ内に含まれる情報から生成されるスクリーン画像８０内のダイアログ・ボックス８１を示す。例示としての「半サイクル利得段」ＣＡＭは、付録Ａに示す通りで、図３のダイアログ・ボックス８１を生成するために使用されるＣＡＭファイルの内容を含む。図３のダイアログ・ボックス８１が示す半サイクル利得段ＣＡＭは、また、ユーザが供給する値に基づいて、フィールド・プログラマブル・アナログ・アレイ（ＦＰＡＡ）内のアナログ構成要素に対する値を計算するのに使用することができる式を含む。例えば、利得は２つのコンデンサの値の比により決定される。ユーザは単に利得に対する値を入力しさえすれば、必要な利得を実現または決定する比を発見する目的で、２つのコンデンサに対する適当な値を計算するために、ＣＡＭ内の式の解釈が行われる。
【００５７】
　さらに、（図３の）付録ＡのＣＡＭは、回路設計中に使用した場合、ＣＡＭの動作をシミュレートするために使用することができる「Ｃ」コードの形をしている式を含む。これらの式は、シミュレーションを実行中に、「Ｃ」インタープリタで使用することができる。
【００５８】
　ＣＡＭは、また、ビットマップ情報、およびその上にまたはその代わりとして、表示することができる線画情報を含む。ＣＡＭは、また、複数のビットマップ、およびそうしたい場合、またはさらに、ＣＡＭサブ回路の異なる構成に対応する線画を含むこともできる。
【００５９】
　図１に戻って説明すると、ＣＡＤツール３２は、ＡＮ２０シリーズのＦＰＡＡ（またはチップ）と一緒に使用するために構成されたＡｎａｄｉｇｍＤｅｓｉｇｎｅｒを備える。次に、ＣＡＭは、すでに定義したように、ユーザの制御の下で、ＣＡＤツール３２内に読み込まれる。ＣＡＤツール３２の目的は、ユーザがＣＡＭを選択することができるようにし、ＣＡＭに対する構成を選択することができるようにし、（利得または周波数のような）ＣＡＭに対するパラメータを設定できるようにし、ＣＡＭをコンピュータ・スクリーン上に設置することができるようにし、ＣＡＭをコンピュータ・スクリーンの周囲で移動させることができるようにし、ＣＡＭに対応する回路内の接点に「ワイヤ」を取り付けることができるようにし、もっと複雑な回路を形成するために、回路設計で回路素子を一緒に配線することができるようにし、回路をシミュレートすることができるようにし、シミュレーションの結果を表示することができるようにし、ＦＰＡＡ（またはチップ）にダウンロードした場合に、回路を実施するビット・ストリームを生成することができるようにし、また、実際に、回路をテストすることができるように、ＦＰＡＡ（または、チップ）にビット・ストリームを実際にダウンロードすることができるようにすることである。
【００６０】
　図４は、「信号発生器制御」ダイアログ・ボックス１２５用のスクリーン画像１２４である。ダイアログ・ボックス１２５は、「信号発生器制御」ヘッダ１２６、波形ボタン１２８，１３０，１３２，１３４，１３６および１３８、および「波形データ生成」フィールド１４０、および「終了」ボタン１４２を含む。ボタン１２８，１３０，１３２，１３４，１３６および１３８は、（図２の）信号発生器ボタン７８が選択された場合、（図２の）信号発生器９５または９７が、すでに設置されている指定のピンまたはセルのところで、対応する信号を生成するために、必要な信号発生器を構成するためにそれぞれ選択される。
【００６１】
　例えば、波形ボタン１２８を選択すると、選択したピンのところに正弦波を供給するように信号発生器が構成される。波形ボタン１３０を選択すると、方形波を供給するように信号発生器が構成される。波形ボタン１３２を選択すると、三角波を供給するように信号発生器が構成される。波形ボタン１３４を選択すると、のこぎり波を供給するように信号発生器が構成される。波形ボタン１３６を選択すると、ディラック・インパルスを供給するように信号発生器が構成される。最後に、波形ボタン１３８を選択すると、任意の波形を供給するように信号発生器が構成される。
【００６２】
　「波形データ生成」フィールド１４０は、「振幅設定」フィールド１４４、「電圧オフセット設定」フィールド１４６、および「周波数設定」フィールド１４８を含む。「振幅設定」フィールド１４４は、信号発生器に対して選択した信号の電圧振幅を入力するための「ボルト」入力フィールド１５０を含む。「電圧オフセット設定」フィールド１４６は、ユーザが、信号発生器に対して選択した信号の電圧オフセットを設定することができる「ボルト」入力フィールド１５２を含む。「周波数設定」フィールド１４８は、ユーザが、信号発生器に対して選択した信号の周波数を設定することができる「ボルト」入力フィールド１５４を含む。
【００６３】
　図５は、「オシロスコープ」ダイアログ・ボックス１５７に対するスクリーン画像１５６である。（図２の）「オシロスコープ」ボタン７８を選択すると、（図２の）チップ設計６４内の特定の位置にマウスカーソルにより位置させ、設置することができる移動可能なオシロスコープ・アイコンが表示される。マウスカーソルでクリックすることにより、アイコンが適当なノードのところに位置すると、ユーザは、オシロスコープ・プローブ・アイコン８７（図２参照）上で右クリックすることができ、それにより、「オシロスコープ」メニュー項目を含むメニューが表示される。マウスカーソルにより、「オシロスコープ」メニュー項目を選択すると、図５のオシロスコープ・ダイアログ・ボックス１５７が表示される。
【００６４】
　それ故、「オシロスコープ」ダイアログ・ボックス１５７は、「チャネル選択」ボックス１７０，１７２，１７４および１７６が識別したチャネルに対応するチャネル１〜４に対して、時間領域出力１６２，１６４，１６６および１６８が表示される信号出力表示フィールド１５８を含む。例を挙げて説明すると、オシロスコープ出力波形１６２は、「チャネル１」に対応する（図２の）オシロスコープ・プローブ・アイコン８７が識別したオシロスコープ出力に対応する。同様に、「チャネル２」に対する出力は、（図２の）オシロスコープ・プローブ８９に対応する出力１６４からなる。「チャネル３」に対する出力１６６は、（図２の）オシロスコープ・プローブ・アイコン９１に対応する「チャネル３」に対するものである。最後に、出力１６８は、（図２の）オシロスコープ・プローブ・アイコン９３からの「チャネル４」に対応する。
【００６５】
　「オシロスコープ」ダイアログ・ボックス１５７は、チャネル選択ボックス１７０，１７２，１７４および１７６が表示される「データ表示」フィールド１６０を含む。「区分毎のボルト」スクローリング・リスト・ボックス１７８は、縦座標、すなわち、ｙ軸の電圧のスケールに対応する各チャネルのためのものである。第２のスクローリング・リスト・ボックス１８０は、「位置」スクローリング・リスト・ボックス１８０に対するチャネル１〜４のためのものである。各チャネル１〜４は、また、表示フィールド１５８内の横座標、すなわち、ｘ軸に沿った対応する時間における各チャネルに対して、特定の電圧値が表示される「電圧」データ入力フィールド１８２を含む。さらに、「区分毎の時間」スクローリング入力フィールド１８４により、ユーザは、信号出力表示フィールド１５８内で区分毎の時間を調整することができる。さらに、「時間」入力フィールド１８６は、表示フィールド１５８内のカーソル・ラインの位置が示す選択した時間に対応し、また、個々のデータ入力フィールド１８２内に表示された電圧に対応する時間を表示する。
【００６６】
　スクローリング時間ラインバー１８８により、ユーザは、表示フィールド１５８内の横座標時間ラインに沿って特定の位置を選択することができ、次に、チャネル１〜４に対する入力フィールド１８２内、および時間入力フィールド１８６内に対応する電圧を表示することができる。それ故、スクローリング時間ラインバー１８８は、データ・フィールド１５８の横座標、すなわち、時間領域に対応する。
【００６７】
　「グリッド」ボタン１９０により、ユーザは、（図５の）信号出力表示フィールド１５８内に示すように、グリッド・ラインをオン／オフすることができる。「カーソル」ボタン１９２は、ユーザがマウスにより移動することができるカーソルをスクリーン画像１５６上に置く。「電圧」データ入力フィールド１８２および「時間」入力フィールド１８６は、カーソル位置のところのデータに対応する値を表示する。「閉じる」ボタン１９４により、ユーザは、スクリーン画像１５６を閉じることができる。
【００６８】
　図６は、プログラム可能な回路デバイスをプログラムするための例示としての１つの方法である。図６に示すように、論理的流れ図は、プログラム可能な回路デバイス、特に、フィールド・プログラマブル・アナログ・アレイ（ＦＰＡＡ）のようなアナログ素子を有するプログラム可能な回路デバイスをプログラムするステップを示す。
【００６９】
　ステップ「Ｓ１」において、プログラム可能なコンピュータに、設計ツール、サブ回路定義、およびユーザ・インタフェースが供給される。ステップ「Ｓ１」を実行した後で、プロセスはステップ「Ｓ２」に進む。
【００７０】
　ステップ「Ｓ２」において、回路設計を生成するステップは、特定のサブ回路定義内に含まれているデータを読み出す。ステップ「Ｓ２」の後で、プロセスはステップ「Ｓ３」に進む。
【００７１】
　ステップ「Ｓ３」において、回路設計を生成するステップは、ユーザ・インタフェース設計によるサブ回路設計の構成を実行する。ステップ「Ｓ３」の後で、プロセスはステップ「Ｓ４」に進む。
【００７２】
　ステップ「Ｓ４」において、システムは、プログラム可能な回路デバイス内でサブ回路を実現するために、回路構成要素を一緒に配線する回路設計またはサブ回路設計を生成する。ステップ「Ｓ４」を実行した後で、プロセスはステップ「Ｓ５」に進む。
【００７３】
　ステップ「Ｓ５」において、回路設計およびサブ回路定義に含まれている情報によりシミュレーションをセットアップし、実行するために、ユーザは、設計ツールによりシステムを構成する。ステップ「Ｓ５」を実行した後で、プロセスはステップ「Ｓ６」に進む。
【００７４】
　ステップ「Ｓ６」において、プロセスは、設計ツールによる回路設計に対する回路シミュレーションの結果を表示する。ステップ「Ｓ６」を実行した後で、プロセスはステップ「Ｓ７」に進む。
【００７５】
　ステップ「Ｓ７」において、プロセスは、プログラム可能なデバイスにダウンロードするために、回路設計またはサブ回路設計を、適当にフォーマットされたデータに変換する。ステップ「Ｓ７」を実行した後で、プロセスは終了する。
【００７６】
　図７は、フィールド・プログラマブル・アナログ・アレイ（ＦＰＡＡ）内で回路を実現することができるように、回路構成要素を一緒に構成するための例示としてのもう１つの方法を示す。
【００７７】
　ステップ「Ｓ１」において、プログラム可能なコンピュータに、設計ツール、サブ回路定義、およびユーザ・インタフェースが供給される。ステップ「Ｓ１」を実行した後で、プロセスはステップ「Ｓ２」に進む。
【００７８】
　ステップ「Ｓ２」において、プロセスは、ＦＰＡＡでサブ回路を実現する目的で、ユーザがプログラム可能なコンピュータのユーザ・インタフェースにより回路構成要素の構成を定義することができるようにするサブ回路定義を含む命令によりプログラム可能なコンピュータをプログラムする。ステップ「Ｓ２」を実行した後で、プロセスはステップ「Ｓ３」に進む。
【００７９】
　ステップ「Ｓ３」において、プロセスは、対応するサブ回路のトポロジーを定義する。ステップ「Ｓ３」を実行した後で、プロセスはステップ「Ｓ４」に進む。
【００８０】
　ステップ「Ｓ４」において、プロセスは、サブ回路のパラメータを定義する。ステップ「Ｓ４」を実行した後で、プロセスはステップ「Ｓ５」に進む。
【００８１】
　ステップ「Ｓ５」において、プロセスは、さらに、命令によりユーザ・インタフェースを制御する。ステップ「Ｓ５」を実行した後で、プロセスはステップ「Ｓ６」に進む。
【００８２】
　ステップ「Ｓ６」において、プロセスは、サブ回路の構成を修正するために、ユーザ・インタフェースによりユーザの選択を供給する。ステップ「Ｓ６」を実行した後で、プロセスはステップ「Ｓ７」に進む。
【００８３】
　ステップ「Ｓ７」において、プロセスは、回路構成要素をサブ回路および回路のうちの１つと一緒の配線を含む構成を定義する。ステップ「Ｓ７」を実行した後で、プロセスはステップ「Ｓ８」に進む。
【００８４】
　ステップ「Ｓ８」において、プロセスは、回路構成要素をＦＰＡＡのための回路設計に組み立てる。ステップ「Ｓ８」を実行した後で、プロセスは終了する。
【００８５】
　特許法に従って、構造上および方法上の機能に多かれ少なかれ特有の言語により本発明を説明してきた。しかし、本発明は、図面に示し今迄説明してきた特定の機能に限定されないことを理解されたい。何故なら、本明細書で開示した手段は、本発明を実行するための好適な形からなるからである。それ故、本発明は、等価の原則に従って正しく解釈した添付の特許請求の範囲の正しい範囲内で任意の形にし、また任意の修正を行うことができる。
【００８６】
　本発明で使用するコンピュータープログラムリスト（付録Ａ）は下記のとおりである。
ＧＡＩＮＨＡＬＦ
// Invention Title:
// APPARATUS FOR PROGRAMMING 
// A PROGRAMMABLE DEVICE, AND METHOD
//
// Computer Program Listing Using CD-ROM Contents:
//
ADVERSION: 2.0.16
MODULE:
MODULE_TYPE: STANDARD
MODULE_ID: GainHalf
IPCHECKSUM: 205POL333P6MP2
MODULE_NAME: Half Cycle Gain Stage
MODULE_VERSION: 1.0.3
ADVERSION: 2.0.16
CHIPVERSION: AN220E04, AN120E04
// Created 1 DEC 2000 - TJS
// Copyright (C) 2000, 2001, 2002 Anadigm. All rights reserved.
CIRCUIT:
NETLIST: noninv_p1
INPUT: In 1 0 left 0 18
OUTPUT: Out 0 1 right 49 18
CLOCKA:
SUBNET: 
dynswitch3 Din node1 In SigGnd clockA phase1
cap Cin node2 node1
cap Cout node2 node3
dynswitch3 Dout node3 Out SigGnd clockA phase2
dynswitch2 Doff node2 Out clockA phase1
opamp A1 Out node2
ENDSUBNET:
ENDNETLIST:
NETLIST: noninv_p2
INPUT: In 0 1 left 0 18
OUTPUT: Out 1 0 right 49 18
CLOCKA:
SUBNET: 
dynswitch3 Din node1 In SigGnd clockA phase2
cap Cin node2 node1
cap Cout node2 node3
dynswitch3 Dout node3 Out SigGnd clockA phase1
dynswitch2 Doff node2 Out clockA phase2
opamp A1 Out node2
ENDSUBNET:
ENDNETLIST:
NETLIST: inv_p1
INPUT: In 1 0 left 0 18
OUTPUT: Out 1 0 right 49 18
CLOCKA:
SUBNET: 
dynswitch3 Din node1 In SigGnd clockA phase1
cap Cin node2 node1
cap Cout node2 node3
dynswitch3 Dout node3 Out SigGnd clockA phase1
dynswitch2 Doff node2 Out clockA phase2
opamp A1 Out node2
ENDSUBNET:
ENDNETLIST:
NETLIST: inv_p2
INPUT: In 0 1 left 0 18
OUTPUT: Out 0 1 right 49 18
CLOCKA:
SUBNET:
dynswitch3 Din node1 In SigGnd clockA phase2
cap Cin node2 node1
cap Cout node2 node3
dynswitch3 Dout node3 Out SigGnd clockA phase2
dynswitch2 Doff node2 Out clockA phase1
opamp A1 Out node2
ENDSUBNET:
ENDNETLIST:
ENDCIRCUIT:
DIALOGITEMS: 
DIALOGITEMLIST: DEFAULT
VALUE: G Gain 1.0 "0.01 to 100" 
RADIO: pol Polarity "Non-inverting" "Inverting"
RADIO: isp "Input Sampling Phase" "Phase 1" "Phase 2"
ENDDIALOGITEMLIST:
ENDDIALOGITEMS:
CCODE:
FUNCTIONS:
FUNCTION: setGainHalf(double G):double
DESCRIPTION: 
A full floating point method for setting the gain of this module.
ENDDESCRIPTION:
BODY:
DataType::Byte cap1;
DataType::Byte cap2;
ApiCall::ChooseCapRatio(G, &cap1, &cap2);
ApiCall::SetCapValue(Component::Cin,cap1);
ApiCall::SetCapValue(Component::Cout,cap2);
return (double) cap1 / (double) cap2;
ENDBODY:
ENDFUNCTION:
FUNCTION: fixed_setGainHalf(double G):double
DESCRIPTION:
A full fixed-point method for setting the gain of the module. It
accepts floating-point inputs and returns a floating-point result.
ENDDESCRIPTION:
BODY:
DataType::Byte cap1;
DataType::Byte cap2;
ApiCall::FixedChooseCapRatio(G, &cap1, &cap2);
ApiCall::SetCapValue(Component::Cin,cap1);
ApiCall::SetCapValue(Component::Cout,cap2);
return ApiCall::FixedToFloat(ApiCall::FixedDivide(ApiCall:: _
IntToFixed(cap1),ApiCall::IntToFixed(cap2)));
ENDBODY:
ENDFUNCTION:
ENDFUNCTIONS:
CODEGROUP: DEFAULT
FUNCTIONSET: Gain 
setGainHalf
fixed_setGainHalf
ENDFUNCTIONSET:
ENDCODEGROUP:
ENDCCODE:
NOTES:
NOTETEXT: clock4
*******************WARNING*******************
It is not recommended to run this CAM's clock (CLOCKA) at a frequency
greater than 4 MHz.
*******************WARNING*******************
ENDNOTETEXT:
NOTETEXT: none
This chip's remaining resources are not sufficient to implement a Half
Cycle Gain Stage.
It may be possible to fit this Module by reducing the chip resources
used by other CAMs.
ENDNOTETEXT:
ENDNOTES:
DIALOGEQUATIONS:
//*********************************************************
int adjustCap( double Cap )
{
int fixedCap;
if ( Cap < 1.0 ) fixedCap = 1;
else if ( Cap > 255.0 ) fixedCap = 255;
else fixedCap = Round(Cap);
return fixedCap;
} 
//*********************************************************
double aG;
int C1 = 1, C2 = 1;
int dC1, dC2=255;
double err =99999;
double bestErr = 999;
string result, symbolID, circuitID, notesID="NAMENULL";
//Set limits based on Gain Bandwidth passed in (GBW_MHz)
double GBW = GBW_MHz*1000000.0*2.0*3.14159;
double maxG = Max(.01,Min(100,(-1.0+(GBW/(4.6*clocka*2)))));
//Clamp desired value if it exceeds new limit due to clock change
if (G>maxG) G=Round(maxG,(2 - Int(Log10(maxG))));
while ( dC2 >0 && err!=0)
{
dC1 = adjustCap(G*dC2);
aG = 1.0 * dC1/dC2 ;
bestErr = Abs( ( G - aG) / G);
if( bestErr < err ) 
{ 
err = bestErr;
C1 = dC1;
C2 = dC2;
}
dC2 --;
}
aG = 1.0* C1/C2;
if (pol == 1 && isp == 1)
{ symbolID = "noninv_p1";
circuitID = "noninv_p1";
}
else if (pol == 1 && isp == 2)
{ symbolID = "noninv_p2";
circuitID = "noninv_p2";
}
else if (pol == 2 && isp == 1)
{ symbolID = "inv_p1";
circuitID = "inv_p1";
}
else if (pol == 2 && isp == 2)
{ symbolID = "inv_p2";
circuitID = "inv_p2";
}
if (inv_p2_available == 0)
//this circuit can't be fit in this chip
notesID = "none";
else if (clocka > 4000100)
notesID = "clock4";
//warn about recommended clock limit
result = "VALUE: G " + StrMake(aG,(2 - Int(Log10(aG)))) 
+ " CAPACITOR: Cin " + StrMake(C1) 
+ " CAPACITOR: Cout " + StrMake(C2) 
+ " SYMBOL: " + symbolID
+ " CIRCUIT: " + circuitID
+ " NOTES: " + notesID
+ " DIALOGITEMS: DEFAULT"
+ " PLIMITS: G 0.01 "+ StrMake(maxG,(3 - Int(Log10(maxG))))
+ " CODEGROUP: DEFAULT";
ENDDIALOGEQUATIONS:
//SIMSTEP: FROMCLOCK
SIMEQUATIONS:
string answer;
double Vout, Vin;
int outputZEROonPhase1;
if (pol == 1 && isp == 1)
{ Vin = In_CLOCKA_1;
outputZEROonPhase1 = 1;
}
else if (pol == 1 && isp == 2)
{ Vin = In_CLOCKA_1;
outputZEROonPhase1 = 0;
}
else if (pol == 2 && isp == 1)
{ Vin = -In_CLOCKA_0;
outputZEROonPhase1 = 0;
}
else if (pol == 2 && isp == 2)
{ Vin = -In_CLOCKA_0;
outputZEROonPhase1 = 1;
}
if(CLOCKAPHASE1 == outputZEROonPhase1)  Vout = 0;
else     Vout = Vin*Cin/Cout;
if (Vout > 4.0) Vout = 4.0;
if (Vout < -4.0) Vout = -4.0;
answer = "Out "+StrMake(Vout);
return answer;
ENDSIMEQUATIONS:
SYMBOL:
BITMAP: noninv_p1
BEGIN_BITMAP_FILE_HEADER:
424D860B00000000000036040000
END_BITMAP_FILE_HEADER:
BEGIN_BITMAPINFOHEADER:
280000003200000024000000010008000000000050070000230B0000230B00000001000
000010000
END_BITMAPINFOHEADER:
BEGIN_BITMAP_COLOR_MAP_TABLE:
00000000330000006600000099000000CC000000FF00000000003300330033006600330
099003300CC003300FF0033000000
6600330066006600660099006600CC006600FF006600000099003300990066009900990
09900CC009900FF0099000000CC00
3300CC006600CC009900CC00CC00CC00FF00CC000000FF003300FF006600FF009900FF0
0CC00FF00FF00FF00003300003333
00006633000099330000CC330000FF33000000333300333333006633330099333300CC3
33300FF3333000033660033336600
6633660099336600CC336600FF33660000339900333399006633990099339900CC33990
0FF3399000033CC003333CC006633
CC009933CC00CC33CC00FF33CC000033FF003333FF006633FF009933FF00CC33FF00FF3
3FF00006600003366000066660000
99660000CC660000FF66000000663300336633006666330099663300CC663300FF66330
00066660033666600666666009966
6600CC666600FF66660000669900336699006666990099669900CC669900FF669900006
6CC003366CC006666CC009966CC00
CC66CC00FF66CC000066FF003366FF006666FF009966FF00CC66FF00FF66FF000099000
0339900006699000099990000CC99
0000FF99000000993300339933006699330099993300CC993300FF99330000996600339
966006699660099996600CC996600
FF99660000999900339999006699990099999900CC999900FF9999000099CC003399CC0
06699CC009999CC00CC99CC00FF99
CC000099FF003399FF006699FF009999FF00CC99FF00FF99FF0000CC000033CC000066C
C000099CC0000CCCC0000FFCC0000
00CC330033CC330066CC330099CC3300CCCC3300FFCC330000CC660033CC660066CC660
099CC6600CCCC6600FFCC660000CC
990033CC990066CC990099CC9900CCCC9900FFCC990000CCCC0033CCCC0066CCCC0099C
CCC00CCCCCC00FFCCCC0000CCFF00
33CCFF0066CCFF0099CCFF00CCCCFF00FFCCFF0000FF000033FF000066FF000099FF000
0CCFF0000FFFF000000FF330033FF
330066FF330099FF3300CCFF3300FFFF330000FF660033FF660066FF660099FF6600CCF
F6600FFFF660000FF990033FF9900
66FF990099FF9900CCFF9900FFFF990000FFCC0033FFCC0066FFCC0099FFCC00CCFFCC0
0FFFFCC0000FFFF0033FFFF0066FF
FF0099FFFF00CCFFFF00FFFFFF000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
000000000000000000000000000000000000000000000000
END_BITMAP_COLOR_MAP_TABLE:
BEGIN_BITMAP_DATA:
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000910000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000091919100000000000000000000000
00000000000000000000000000000
0000000000000000000000000000000000000000000000BC91919191000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000BCC8C8919191910000000
00000000000000000000000000000
000000000000000000000000000000000000000000000000000000BCC8C8C8C89191919
10000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000BCC8C8C8C8C8C
89191910000000000000000000000
00000000000000000000000000000000000000AFAFAF0000000000AF000000BCC8C8C8C
8C8C8C8C891919100000000000000
00000000000000000000000000000000000000000000AF000000000000AF000000BCC8C
8C8C8C8C8C8C8C891919191000000
00000000000000000000000000000000000000000000AFAFAFAFAF00000000AF000000B
CC8C8C8C8C8C8C8C8C8C8C8919191
9100000000000000000000000000000000000000000000AF0000AF0000AF000000AF000
000BCC8C8C8C8C8C8C8C8C8C8C8C8
C8919191910000000000000000000000000000000000000000AF0000AF0000AF0000AFA
F000000BCC8C8C8C8C8C8C8C8C8C8
C8C8C8C8C89191910000000000000000000000000000000000000000AFAFAFAFAF00000
000AF000000BCC8C8C8C8C8C8C8C8
C84F4F4F4FC8C8C8C89191910000000000000000000000000000000000000000AF00000
000000000000000BCC8C8C8C8C8C8
C8C84FC8C8C84F4FC8C8C8C8919191910000000000000000000000000000000000AFAFA
F000000000000000000BCC8C8C8C8
C8C8C84FC8C8C8C8C84FC8C8C8C8C8C8919191910000000000000000000000000000000
00000000000000000000000BCC8C8
C8C8C8C8C84FC8C8C8C8C84FC8C8C8C8C8C8C8C891919191000000000000000000009B9
B9B9B9B9B9B9B9B9B9B9B9B9B9BBC
C8C8C8C8C8C8C84FC8C8C84F4F4FC8C8C8C8C8C8C8C8C8C8D7D7BC9B9B9B9B9B9B9B000
00000000000000000000000000000
00BCC8C8C8C8C8C8C84FC8C8C8C8C8C8C8C8C8C8C8C8C8C8D7D7D7D7000000000000000
00000000000000000000000000000
000000BCC8C8C8C8C8C8C84FC8C8C8C8C8C8C8C8C8C8C8C8D7D7D7D7000000000000000
00000000000000000000000000000
0000000000BCC8C8C8C8C8C8C84FC8C8C8C8C84FC8C8C8C8D7D7D7D7000000000000000
00000000000000000000000000000
00000000000000BCC8C8C8C8C8C8C8C84FC8C8C84FC8C8C8C8D7D7D7000000AFAFAF000
000AFAFAFAF000000000000000000
000000000000000000BCC8C8C8C8C8C8C8C8C84F4F4F4FC8C8D7D7D7000000000000AF0
000000000AF000000000000000000
0000000000000000000000BCC8C8C8C8C8C8C8C8C8C8C8C8C8D7D7D7D70000000000AFA
FAFAFAF00000000AF000000000000
00000000000000000000000000BCC8C8C8C8C8C8C8C8C8C8C8D7D7D7D7000000000000A
F0000AF0000AF00000000AF000000
000000000000000000000000000000BCC8C8C8C8C8C8C8C8C8D7D7D7D70000000000000
000AF0000AF0000AF00AF0000AF00
0000000000000000000000000000000000BCC8C8C8C8C8C8C8C8D7D7D70000000000000
000000000AFAFAFAFAF000000AFAF
AF000000000000000000000000000000000000BCC8C8C8C8C8C8D7D7D70000000000000
00000000000000000AF0000000000
000000000000000000000000000000000000000000BCC8C8C8C8D7D7D7D700000000000
0000000000000000000AFAFAF0000
0000000000000000000000000000000000000000000000BCC8C8D7D7D7D700000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000BCD7D7D7D700000000000
00000000000000000000000000000
000000000000000000000000000000000000000000000000000000D7D7D700000000000
00000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000D700000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000
END_BITMAP_DATA:
ENDBITMAP:
BITMAP: noninv_p2
BEGIN_BITMAP_FILE_HEADER:
424D860B00000000000036040000
END_BITMAP_FILE_HEADER:
BEGIN_BITMAPINFOHEADER:
280000003200000024000000010008000000000050070000230B0000230B00000001000
000010000
END_BITMAPINFOHEADER:
BEGIN_BITMAP_COLOR_MAP_TABLE:
00000000330000006600000099000000CC000000FF00000000003300330033006600330
099003300CC003300FF0033000000
6600330066006600660099006600CC006600FF006600000099003300990066009900990
09900CC009900FF0099000000CC00
3300CC006600CC009900CC00CC00CC00FF00CC000000FF003300FF006600FF009900FF0
0CC00FF00FF00FF00003300003333
00006633000099330000CC330000FF33000000333300333333006633330099333300CC3
33300FF3333000033660033336600
6633660099336600CC336600FF33660000339900333399006633990099339900CC33990
0FF3399000033CC003333CC006633
CC009933CC00CC33CC00FF33CC000033FF003333FF006633FF009933FF00CC33FF00FF3
3FF00006600003366000066660000
99660000CC660000FF66000000663300336633006666330099663300CC663300FF66330
00066660033666600666666009966
6600CC666600FF66660000669900336699006666990099669900CC669900FF669900006
6CC003366CC006666CC009966CC00
CC66CC00FF66CC000066FF003366FF006666FF009966FF00CC66FF00FF66FF000099000
0339900006699000099990000CC99
0000FF99000000993300339933006699330099993300CC993300FF99330000996600339
966006699660099996600CC996600
FF99660000999900339999006699990099999900CC999900FF9999000099CC003399CC0
06699CC009999CC00CC99CC00FF99
CC000099FF003399FF006699FF009999FF00CC99FF00FF99FF0000CC000033CC000066C
C000099CC0000CCCC0000FFCC0000
00CC330033CC330066CC330099CC3300CCCC3300FFCC330000CC660033CC660066CC660
099CC6600CCCC6600FFCC660000CC
990033CC990066CC990099CC9900CCCC9900FFCC990000CCCC0033CCCC0066CCCC0099C
CCC00CCCCCC00FFCCCC0000CCFF00
33CCFF0066CCFF0099CCFF00CCCCFF00FFCCFF0000FF000033FF000066FF000099FF000
0CCFF0000FFFF000000FF330033FF
330066FF330099FF3300CCFF3300FFFF330000FF660033FF660066FF660099FF6600CCF
F6600FFFF660000FF990033FF9900
66FF990099FF9900CCFF9900FFFF990000FFCC0033FFCC0066FFCC0099FFCC00CCFFCC0
0FFFFCC0000FFFF0033FFFF0066FF
FF0099FFFF00CCFFFF00FFFFFF000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
000000000000000000000000000000000000000000000000
END_BITMAP_COLOR_MAP_TABLE:
BEGIN_BITMAP_DATA:
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000910000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000091919100000000000000000000000
00000000000000000000000000000
0000000000000000000000000000000000000000000000BC91919191000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000BCC8C8919191910000000
00000000000000000000000000000
000000000000000000000000000000000000000000000000000000BCC8C8C8C89191919
10000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000BCC8C8C8C8C8C
89191910000000000000000000000
00000000000000000000000000000000000000AFAFAF000000AFAFAFAF0000BCC8C8C8C
8C8C8C8C891919100000000000000
00000000000000000000000000000000000000000000AF0000000000AF00000000BCC8C
8C8C8C8C8C8C8C891919191000000
00000000000000000000000000000000000000000000AFAFAFAFAF00000000AF000000B
CC8C8C8C8C8C8C8C8C8C8C8919191
9100000000000000000000000000000000000000000000AF0000AF0000AF00000000AF0
000BCC8C8C8C8C8C8C8C8C8C8C8C8
C8919191910000000000000000000000000000000000000000AF0000AF0000AF00AF000
0AF0000BCC8C8C8C8C8C8C8C8C8C8
C8C8C8C8C89191910000000000000000000000000000000000000000AFAFAFAFAF00000
0AFAFAF0000BCC8C8C8C8C8C8C8C8
C84F4F4F4FC8C8C8C89191910000000000000000000000000000000000000000AF00000
000000000000000BCC8C8C8C8C8C8
C8C84FC8C8C84F4FC8C8C8C8919191910000000000000000000000000000000000AFAFA
F000000000000000000BCC8C8C8C8
C8C8C84FC8C8C8C8C84FC8C8C8C8C8C8919191910000000000000000000000000000000
00000000000000000000000BCC8C8
C8C8C8C8C84FC8C8C8C8C84FC8C8C8C8C8C8C8C891919191000000000000000000009B9
B9B9B9B9B9B9B9B9B9B9B9B9B9BBC
C8C8C8C8C8C8C84FC8C8C84F4F4FC8C8C8C8C8C8C8C8C8C8D7D7BC9B9B9B9B9B9B9B000
00000000000000000000000000000
00BCC8C8C8C8C8C8C84FC8C8C8C8C8C8C8C8C8C8C8C8C8C8D7D7D7D7000000000000000
00000000000000000000000000000
000000BCC8C8C8C8C8C8C84FC8C8C8C8C8C8C8C8C8C8C8C8D7D7D7D7000000000000000
00000000000000000000000000000
0000000000BCC8C8C8C8C8C8C84FC8C8C8C8C84FC8C8C8C8D7D7D7D7000000000000000
00000000000000000000000000000
00000000000000BCC8C8C8C8C8C8C8C84FC8C8C84FC8C8C8C8D7D7D7000000AFAFAF000
0000000AF00000000000000000000
000000000000000000BCC8C8C8C8C8C8C8C8C84F4F4F4FC8C8D7D7D7000000000000AF0
00000000000AF0000000000000000
0000000000000000000000BCC8C8C8C8C8C8C8C8C8C8C8C8C8D7D7D7D70000000000AFA
FAFAFAF00000000AF000000000000
00000000000000000000000000BCC8C8C8C8C8C8C8C8C8C8C8D7D7D7D7000000000000A
F0000AF0000AF000000AF00000000
000000000000000000000000000000BCC8C8C8C8C8C8C8C8C8D7D7D7D70000000000000
000AF0000AF0000AF0000AFAF0000
0000000000000000000000000000000000BCC8C8C8C8C8C8C8C8D7D7D70000000000000
000000000AFAFAFAFAF00000000AF
00000000000000000000000000000000000000BCC8C8C8C8C8C8D7D7D70000000000000
00000000000000000AF0000000000
000000000000000000000000000000000000000000BCC8C8C8C8D7D7D7D700000000000
0000000000000000000AFAFAF0000
0000000000000000000000000000000000000000000000BCC8C8D7D7D7D700000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000BCD7D7D7D700000000000
00000000000000000000000000000
000000000000000000000000000000000000000000000000000000D7D7D700000000000
00000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000D700000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000
END_BITMAP_DATA:
ENDBITMAP:
BITMAP: inv_p1
BEGIN_BITMAP_FILE_HEADER:
424D860B00000000000036040000
END_BITMAP_FILE_HEADER:
BEGIN_BITMAPINFOHEADER:
280000003200000024000000010008000000000050070000230B0000230B00000001000
000010000
END_BITMAPINFOHEADER:
BEGIN_BITMAP_COLOR_MAP_TABLE:
00000000330000006600000099000000CC000000FF00000000003300330033006600330
099003300CC003300FF0033000000
6600330066006600660099006600CC006600FF006600000099003300990066009900990
09900CC009900FF0099000000CC00
3300CC006600CC009900CC00CC00CC00FF00CC000000FF003300FF006600FF009900FF0
0CC00FF00FF00FF00003300003333
00006633000099330000CC330000FF33000000333300333333006633330099333300CC3
33300FF3333000033660033336600
6633660099336600CC336600FF33660000339900333399006633990099339900CC33990
0FF3399000033CC003333CC006633
CC009933CC00CC33CC00FF33CC000033FF003333FF006633FF009933FF00CC33FF00FF3
3FF00006600003366000066660000
99660000CC660000FF66000000663300336633006666330099663300CC663300FF66330
00066660033666600666666009966
6600CC666600FF66660000669900336699006666990099669900CC669900FF669900006
6CC003366CC006666CC009966CC00
CC66CC00FF66CC000066FF003366FF006666FF009966FF00CC66FF00FF66FF000099000
0339900006699000099990000CC99
0000FF99000000993300339933006699330099993300CC993300FF99330000996600339
966006699660099996600CC996600
FF99660000999900339999006699990099999900CC999900FF9999000099CC003399CC0
06699CC009999CC00CC99CC00FF99
CC000099FF003399FF006699FF009999FF00CC99FF00FF99FF0000CC000033CC000066C
C000099CC0000CCCC0000FFCC0000
00CC330033CC330066CC330099CC3300CCCC3300FFCC330000CC660033CC660066CC660
099CC6600CCCC6600FFCC660000CC
990033CC990066CC990099CC9900CCCC9900FFCC990000CCCC0033CCCC0066CCCC0099C
CCC00CCCCCC00FFCCCC0000CCFF00
33CCFF0066CCFF0099CCFF00CCCCFF00FFCCFF0000FF000033FF000066FF000099FF000
0CCFF0000FFFF000000FF330033FF
330066FF330099FF3300CCFF3300FFFF330000FF660033FF660066FF660099FF6600CCF
F6600FFFF660000FF990033FF9900
66FF990099FF9900CCFF9900FFFF990000FFCC0033FFCC0066FFCC0099FFCC00CCFFCC0
0FFFFCC0000FFFF0033FFFF0066FF
FF0099FFFF00CCFFFF00FFFFFF000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
000000000000000000000000000000000000000000000000
END_BITMAP_COLOR_MAP_TABLE:
BEGIN_BITMAP_DATA:
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000910000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000091919100000000000000000000000
00000000000000000000000000000
0000000000000000000000000000000000000000000000BC91919191000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000BCC8C8919191910000000
00000000000000000000000000000
000000000000000000000000000000000000000000000000000000BCC8C8C8C89191919
10000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000BCC8C8C8C8C8C
89191910000000000000000000000
00000000000000000000000000000000000000AFAFAF0000000000AF000000BCC8C8C8C
8C8C8C8C891919100000000000000
00000000000000000000000000000000000000000000AF000000000000AF000000BCC8C
8C8C8C8C8C8C8C891919191000000
00000000000000000000000000000000000000000000AFAFAFAFAF00000000AF000000B
CC8C8C8C8C8C8C8C8C8C8C8919191
9100000000000000000000000000000000000000000000AF0000AF0000AF000000AF000
000BCC8C8C8C8C8C8C8C8C8C8C8C8
C8919191910000000000000000000000000000000000000000AF0000AF0000AF0000AFA
F000000BCC8C8C8C8C8C8C8C8C8C8
C8C8C8C8C89191910000000000000000000000000000000000000000AFAFAFAFAF00000
000AF000000BCC8C8C8C8C8C8C8C8
C84F4F4F4FC8C8C8C89191910000000000000000000000000000000000000000AF00000
000000000000000BCC8C8C8C8C8C8
C8C84FC8C8C84F4FC8C8C8C8919191910000000000000000000000000000000000AFAFA
F000000000000000000BCC8C8C8C8
C8C8C84FC8C8C8C8C84FC8C8C8C8C8C8919191910000000000000000000000000000000
00000000000000000000000BCC8C8
C8C8C8C8C84FC8C8C8C8C84FC8C8C8C8C8C8C8C891919191000000000000000000009B9
B9B9B9B9B9B9B9B9B9B9B9B9B9BBC
4F4F4F4F4FC8C84FC8C8C84F4F4FC8C8C8C8C8C8C8C8C8C8D7D7BC9B9B9B9B9B9B9B000
00000000000000000000000000000
00BCC8C8C8C8C8C8C84FC8C8C8C8C8C8C8C8C8C8C8C8C8C8D7D7D7D7000000000000000
00000000000000000000000000000
000000BCC8C8C8C8C8C8C84FC8C8C8C8C8C8C8C8C8C8C8C8D7D7D7D7000000000000000
00000000000000000000000000000
0000000000BCC8C8C8C8C8C8C84FC8C8C8C8C84FC8C8C8C8D7D7D7D7000000000000000
00000000000000000000000000000
00000000000000BCC8C8C8C8C8C8C8C84FC8C8C84FC8C8C8C8D7D7D7000000AFAFAF000
0000000AF00000000000000000000
000000000000000000BCC8C8C8C8C8C8C8C8C84F4F4F4FC8C8D7D7D7000000000000AF0
00000000000AF0000000000000000
0000000000000000000000BCC8C8C8C8C8C8C8C8C8C8C8C8C8D7D7D7D70000000000AFA
FAFAFAF00000000AF000000000000
00000000000000000000000000BCC8C8C8C8C8C8C8C8C8C8C8D7D7D7D7000000000000A
F0000AF0000AF000000AF00000000
000000000000000000000000000000BCC8C8C8C8C8C8C8C8C8D7D7D7D70000000000000
000AF0000AF0000AF0000AFAF0000
0000000000000000000000000000000000BCC8C8C8C8C8C8C8C8D7D7D70000000000000
000000000AFAFAFAFAF00000000AF
00000000000000000000000000000000000000BCC8C8C8C8C8C8D7D7D70000000000000
00000000000000000AF0000000000
000000000000000000000000000000000000000000BCC8C8C8C8D7D7D7D700000000000
0000000000000000000AFAFAF0000
0000000000000000000000000000000000000000000000BCC8C8D7D7D7D700000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000BCD7D7D7D700000000000
00000000000000000000000000000
000000000000000000000000000000000000000000000000000000D7D7D700000000000
00000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000D700000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000
END_BITMAP_DATA:
ENDBITMAP:
BITMAP: inv_p2
BEGIN_BITMAP_FILE_HEADER:
424D860B00000000000036040000
END_BITMAP_FILE_HEADER:
BEGIN_BITMAPINFOHEADER:
280000003200000024000000010008000000000050070000230B0000230B00000001000
000010000
END_BITMAPINFOHEADER:
BEGIN_BITMAP_COLOR_MAP_TABLE:
00000000330000006600000099000000CC000000FF00000000003300330033006600330
099003300CC003300FF0033000000
6600330066006600660099006600CC006600FF006600000099003300990066009900990
09900CC009900FF0099000000CC00
3300CC006600CC009900CC00CC00CC00FF00CC000000FF003300FF006600FF009900FF0
0CC00FF00FF00FF00003300003333
00006633000099330000CC330000FF33000000333300333333006633330099333300CC3
33300FF3333000033660033336600
6633660099336600CC336600FF33660000339900333399006633990099339900CC33990
0FF3399000033CC003333CC006633
CC009933CC00CC33CC00FF33CC000033FF003333FF006633FF009933FF00CC33FF00FF3
3FF00006600003366000066660000
99660000CC660000FF66000000663300336633006666330099663300CC663300FF66330
00066660033666600666666009966
6600CC666600FF66660000669900336699006666990099669900CC669900FF669900006
6CC003366CC006666CC009966CC00
CC66CC00FF66CC000066FF003366FF006666FF009966FF00CC66FF00FF66FF000099000
0339900006699000099990000CC99
0000FF99000000993300339933006699330099993300CC993300FF99330000996600339
966006699660099996600CC996600
FF99660000999900339999006699990099999900CC999900FF9999000099CC003399CC0
06699CC009999CC00CC99CC00FF99
CC000099FF003399FF006699FF009999FF00CC99FF00FF99FF0000CC000033CC000066C
C000099CC0000CCCC0000FFCC0000
00CC330033CC330066CC330099CC3300CCCC3300FFCC330000CC660033CC660066CC660
099CC6600CCCC6600FFCC660000CC
990033CC990066CC990099CC9900CCCC9900FFCC990000CCCC0033CCCC0066CCCC0099C
CCC00CCCCCC00FFCCCC0000CCFF00
33CCFF0066CCFF0099CCFF00CCCCFF00FFCCFF0000FF000033FF000066FF000099FF000
0CCFF0000FFFF000000FF330033FF
330066FF330099FF3300CCFF3300FFFF330000FF660033FF660066FF660099FF6600CCF
F6600FFFF660000FF990033FF9900
66FF990099FF9900CCFF9900FFFF990000FFCC0033FFCC0066FFCC0099FFCC00CCFFCC0
0FFFFCC0000FFFF0033FFFF0066FF
FF0099FFFF00CCFFFF00FFFFFF000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
000000000000000000000000000000000000000000000000
END_BITMAP_COLOR_MAP_TABLE:
BEGIN_BITMAP_DATA:
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000910000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000091919100000000000000000000000
00000000000000000000000000000
0000000000000000000000000000000000000000000000BC91919191000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000BCC8C8919191910000000
00000000000000000000000000000
000000000000000000000000000000000000000000000000000000BCC8C8C8C89191919
10000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000BCC8C8C8C8C8C
89191910000000000000000000000
00000000000000000000000000000000000000AFAFAF000000AFAFAFAF0000BCC8C8C8C
8C8C8C8C891919100000000000000
00000000000000000000000000000000000000000000AF0000000000AF00000000BCC8C
8C8C8C8C8C8C8C891919191000000
00000000000000000000000000000000000000000000AFAFAFAFAF00000000AF000000B
CC8C8C8C8C8C8C8C8C8C8C8919191
9100000000000000000000000000000000000000000000AF0000AF0000AF00000000AF0
000BCC8C8C8C8C8C8C8C8C8C8C8C8
C8919191910000000000000000000000000000000000000000AF0000AF0000AF00AF000
0AF0000BCC8C8C8C8C8C8C8C8C8C8
C8C8C8C8C89191910000000000000000000000000000000000000000AFAFAFAFAF00000
0AFAFAF0000BCC8C8C8C8C8C8C8C8
C84F4F4F4FC8C8C8C89191910000000000000000000000000000000000000000AF00000
000000000000000BCC8C8C8C8C8C8
C8C84FC8C8C84F4FC8C8C8C8919191910000000000000000000000000000000000AFAFA
F000000000000000000BCC8C8C8C8
C8C8C84FC8C8C8C8C84FC8C8C8C8C8C8919191910000000000000000000000000000000
00000000000000000000000BCC8C8
C8C8C8C8C84FC8C8C8C8C84FC8C8C8C8C8C8C8C891919191000000000000000000009B9
B9B9B9B9B9B9B9B9B9B9B9B9B9BBC
4F4F4F4F4FC8C84FC8C8C84F4F4FC8C8C8C8C8C8C8C8C8C8D7D7BC9B9B9B9B9B9B9B000
00000000000000000000000000000
00BCC8C8C8C8C8C8C84FC8C8C8C8C8C8C8C8C8C8C8C8C8C8D7D7D7D7000000000000000
00000000000000000000000000000
000000BCC8C8C8C8C8C8C84FC8C8C8C8C8C8C8C8C8C8C8C8D7D7D7D7000000000000000
00000000000000000000000000000
0000000000BCC8C8C8C8C8C8C84FC8C8C8C8C84FC8C8C8C8D7D7D7D7000000000000000
00000000000000000000000000000
00000000000000BCC8C8C8C8C8C8C8C84FC8C8C84FC8C8C8C8D7D7D7000000AFAFAF000
000AFAFAFAF000000000000000000
000000000000000000BCC8C8C8C8C8C8C8C8C84F4F4F4FC8C8D7D7D7000000000000AF0
000000000AF000000000000000000
0000000000000000000000BCC8C8C8C8C8C8C8C8C8C8C8C8C8D7D7D7D70000000000AFA
FAFAFAF00000000AF000000000000
00000000000000000000000000BCC8C8C8C8C8C8C8C8C8C8C8D7D7D7D7000000000000A
F0000AF0000AF00000000AF000000
000000000000000000000000000000BCC8C8C8C8C8C8C8C8C8D7D7D7D70000000000000
000AF0000AF0000AF00AF0000AF00
0000000000000000000000000000000000BCC8C8C8C8C8C8C8C8D7D7D70000000000000
000000000AFAFAFAFAF000000AFAF
AF000000000000000000000000000000000000BCC8C8C8C8C8C8D7D7D70000000000000
00000000000000000AF0000000000
000000000000000000000000000000000000000000BCC8C8C8C8D7D7D7D700000000000
0000000000000000000AFAFAF0000
0000000000000000000000000000000000000000000000BCC8C8D7D7D7D700000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000BCD7D7D7D700000000000
00000000000000000000000000000
000000000000000000000000000000000000000000000000000000D7D7D700000000000
00000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000D700000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000
00000000000000000000000000000000000000000000
END_BITMAP_DATA:
ENDBITMAP:
ENDSYMBOL:
REVISION_HISTORY:
REVISION_ENTRY: 1.0.1
Updated C Code for API functions and enumerated types.
END_REVISION_ENTRY:
REVISION_ENTRY: 1.0.2
Corrected notes typo.
END_REVISION_ENTRY:
REVISION_ENTRY: 1.0.3
Added warning for maximum recommended clock rate.
END_REVISION_ENTRY:
END_REVISION_HISTORY:
ENDMODULE:
【図面の簡単な説明】
【００８７】
【図１】本発明の一実施形態によるプログラム可能なデバイスをプログラムするための例示としてのシステムの基本的なシステム構成の全体的なブロック図である。
【図２】図１の設計ツール・アプリケーション・ウィンドウおよび半サイクル利得段のスクリーン画像である。
【図３】図２のスクリーン画像のポップアップ・ウィンドウの形をしているユーザ・インタフェースを備える「ＣＡＭモジュール・パラメータ設定」ダイアログ・ボックスである。
【図４】図２のスクリーン画像のポップアップ・ウィンドウを備える信号発生器制御ダイアログ・ボックスである。
【図５】図２のスクリーン画像のポップアップ・ウィンドウを備えるオシロスコープ・ダイアログ・ボックスである。
【図６】プログラム可能な回路デバイスのプログラミングを実施するためのプロセス段階を示すプロセスの流れ図である。
【図７】フィールド・プログラマブル・アナログ・アレイ（ＦＰＡＡ）内で回路を実現することができるようにするために、回路構成要素を一緒に構成するためのプロセス段階を示す他のプロセスの流れ図である。
【図１】
2004094950.tif 000003
【図２】
2004094950.tif 000004
【図３】
2004094950.tif 000005
【図４】
2004094950.tif 000006
【図５】
2004094950.tif 000007
【図６】
2004094950.tif 000008
【図７】
2004094950.tif 000009