(57)【特許請求の範囲】
【請求項１】
デバイスの配列を文字で表した配列リストデータ及び前記デバイスをシンボル図形で表したシンボル図形データを記憶する記憶手段と、
設計対象回路のネットリスト情報を入力する入力手段と、
少なくともダイアログウインドウ及びシンボリックレイアウトウインドウを表示する表示手段と、
前記記憶手段に記憶した配列リストデータを用いて前記ネットリスト情報に対応する配列リストを生成すると共に、前記記憶手段に記憶したシンボル図形データを用いて前記配列リストに対応するシンボル図形形式のレイアウトを生成し、前記配列リスト、シンボル図形形式レイアウトをダイアログウインドウ、シンボリックレイアウトウインドウに表示するレイアウト処理手段とを備えて成ることするアナログ機能ブロック設計システム。
【請求項２】
前記デバイスは、ＭＯＳトランジスタ、バイポーラトランジスタ、コンデンサ又は抵抗であると共に、前記シンボリックレイアウトウィンドウは前記デバイスの配置位置を規定する第１のメッシュと配線の配置位置を規定する第２のメッシュの少なくとも２種類のメッシュが定義されて成り、
前記レイアウト処理手段は、前記デバイス及び配線が各々、前記第１、第２のメッシュに整列するように前記シンボリックレイアウトウインドウに配置して表示することを特徴とする請求項１記載のアナログ機能ブロック設計システム。
【請求項３】
前記ダイアログウィンドウには設計対象回路のネットリスト情報に対応する基本モデルパターンの配列リストが表示されると共に、前記シンボリックレイアウトウィンドウには前記基本モデルパターンの配列リストに対応するシンボル図形形式のレイアウトが表示されることを特徴とする請求項２記載のアナログ機能ブロック設計システム。
【請求項４】
前記レイアウト処理手段は、前記基本モデルパターンに対して所定パラメータについての第１展開を行って第１展開モデルパターンの配列リストを生成する展開手段と、前記第１展開モデルパターンの配列リストに対応するシンボル図形形式のレイアウトを生成し前記シンボリックレイアウトウィンドウに表示するレイアウト生成手段とを備えて成ることを特徴とする請求項３記載のアナログ機能ブロック設計システム。
【請求項５】
前記展開手段は更に、前記第１展開モデルパターンに対して所定パラメータについての第２展開を行って第２展開モデルパターンの配列リストを生成し、前記レイアウト生成手段は更に、前記第２展開モデルパターンの配列リストに対応するシンボル図形形式のレイアウトを生成し前記シンボリックレイアウトウィンドウに表示することを特徴とする請求項４記載のアナログ機能ブロック設計システム。
【請求項６】
前記ダイアログウィンドウにおける前記デバイスの表示において、前記デバイスには少なくとも１文字を対応させ、前記デバイスがＭＯＳトランジスタである場合にはソース又はドレインのいずれかの端子の存在方向を少なくとも１文字にて前記デバイスを表す文字の片側に記載するようにして成ることを特徴とする請求項１乃至５のいずれか一に記載のアナログ機能ブロック設計システム。
【請求項７】
前記展開手段は、前記展開時に拡散共有を用いた展開を行う拡散共有展開手段及びレイアウトされた前記デバイス間に間隙がある場合にパッキングするパッキング手段の少なくとも一方を備えて成ることを特徴とする請求項４又は５記載のアナログ機能ブロック設計システム。
【請求項８】
前記設計対象回路は少なくとも１個のＭＯＳトランジスタにて機能を構成可能なバイアス回路又はスイッチ回路を有し、前記レイアウト処理手段は、前記ＭＯＳトランジスタを並列化することを特徴とする請求項１乃至７のいずれか一に記載のアナログ機能ブロック設計システム。
【請求項９】
前記設計対象回路は少なくとも２個のＭＯＳトランジスタにて機能を構成可能な差動対回路、カレントミラー回路又はインバータ回路を有し、前記レイアウト処理手段は、前記ＭＯＳトランジスタを並列化することを特徴とする請求項１乃至７のいずれか一に記載のアナログ機能ブロック設計システム。
【請求項１０】
前記レイアウト処理手段は、前記設計対象回路のネットリスト情報に対応する基本モデルパターンの配列リストを表示する際に、ライブラリ化された前記基本モデルパターンの接続情報と前記設計対象回路のネットリスト情報とを照合して一致する配列リストを表示することを特徴とする請求項３乃至５のいずれか一に記載のアナログ機能ブロック設計システム。
【請求項１１】
ＧＤＳあるいはＯＡＳＹＳ形式の回路図形データを、対応するシンボル図形形式のレイアウトデータに変換する変換手段を備えて成ることを特徴とする請求項１乃至１０のいずれか一に記載のアナログ機能ブロック設計システム。
【請求項１２】
コンピュータを、請求項１乃至１１のいずれか一に記載のアナログ機能ブロック設計システムとして機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＬＳＩ（Large Scale Integrated Circuit）等の半導体集積回路におけるアナログ機能ブロックを設計するシステムに関する。ここでアナログ機能ブロックとはオペアンプやアナログデジタル（ＡＤ）コンバータやデジタルアナログ（ＤＡ）コンバータに代表される外部アナログ信号インターフェイスを有する機能ブロックのみならず、インバータやフリップフロップのように外部デジタル信号インターフェイスを有していても内部動作がアナログであり機能ブロックの設計にアナログ機能設計もしくはアナログ回路シミュレーションを必要とするものも含んでいる。
【背景技術】
【０００２】
従来、オペアンプやＡＤ／ＤＡコンバータに代表されるようなアナログ機能ブロックを設計する際には、まずトランジスタ回路図ネットリストを作成し、アナログ回路シミュレータでシミュレーション確認し、続いてＬＳＩパターンエディタでトランジスタ回路をレイアウトし、しかる後に抵抗や容量を抽出してこれをアナログ回路シミュレータに再度戻して最終確認の回路シミュレーションを行っている。
【０００３】
ここで設計過程において、アナログ機能としては一定の回路構成が決定したとしても、頻繁に生ずるのが、局所的なＭＯＳトランジスタの実効Ｗ（トランジスタのパターン幅で、トランジスタの駆動能力に対応するパラメータ）の拡大要求による性能変更または調整である。
これは、回路図上においては論理的にはひとつのＭＯＳトランジスタであっても、性能要求に応じてトランジスタを並列展開して実効的にＷを増大させ駆動能力を向上させ性能を調整する必要が生ずることによる。
【０００４】
この種の並列展開にはパラメータ「Ｆ」とパラメータ「Ｍ」の２タイプが存在する。Ｆとは、“Ｆｉｎｇｅｒ”の略であり複数のトランジスタを拡散共有させゲートを配線により共有化させる並列化のパラメータであり、ゲート分割数を表し、結果として実効ＷはＦ倍となる。Ｍとは、“Ｍｕｌｔｉｐｌｅ”の略であり複数のトランジスタを独立に並列化し、その後配線によりソース、ドレイン、ゲートを共有させしめる一般的な並列化のパラメータであり、トランジスタ分割数を表し、結果として実効ＷはＭ倍となる。
【０００５】
パラメータＭの対象となるのはＦ倍化されたＷを有するトランジスタ群であり、パラメータＦとＭは組み合わせ可能である。その結果、実効ＷはＦ×Ｍ倍となる。この実効Ｗの増加をＦとＭなるパラメータで指定する手法は設計初期におけるアナログ回路シミュレーション段階では一般的かつ有効であり、市販されているアナログ回路シミュレータではＦとＭ相当のパラメータが通常設定可能である。
【０００６】
特にパラメータＦに関しては、拡散を共有させるため、単一のトランジスタを並列化させるＭとはモデル的に異なるため回路シミュレータ内部にモデル生成機能が備えられており、Ｆなるパラメータ指定により極めて正確なシミュレーションモデルが生成される。即ちＦは、回路シミュレータ側にてモデル生成を取り扱わねばならない状況にある。しかしながら、レイアウトの段階となると２次元空間的な自由度を含む設計を行う必要があるため、ＦとＭパラメータとレイアウトとの連動は自明ではなく、その組み合わせは膨大なものがある。
【０００７】
ここでＦに関するレイアウトは、拡散共有であるので自由度はそれほど無く、ある程度一意に決定される。しかし、Ｍは独立したトランジスタ群の空間的な組み合わせとなるのでそのレイアウト自由度は膨大である。ＦやＭのレイアウトに対処する方法としてプログラミング言語にてレイアウトを実現しようとする処理方法が提唱された。これは自由度の少ないＦに関してはある程度成功し、現在、Ｆに関するトランジスタ群のレイアウト生成は言語にて対応される場合も多い。
【０００８】
しかしながらパラメータＭに関しては、空間的な自由度が大きく、配線まで含む空間的トポロジ情報を言語にて記述するのは容易でなく、かつ他人がプログラムを見てもトポロジが分からないという可視化問題があるため受け入れられていない。
また、トランジスタ回路図上でトランジスタにパラメータを設定するという操作は極めて一般的に行われるが特許文献１に示すように、それはトランジスタ単体もしくは動作上でのパラメータ設定が通例であり、レイアウトと連動する所のＦやＭ、特にＭ、に関する複雑な並列レイアウト操作を述べているものではない。
【０００９】
また、アナログ設計における従来のレイアウトエディタとは、所謂ＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットで示されるデータ種類（パス、レクトアングル、バウンダリ）を操作するパターンエディタであった。これでは大規模化するアナログ機能ブロックの設計効率は改善されないという問題がある。
【００１０】
図３５は、従来のアナログ機能ブロック設計システムの処理を説明する図である。
従来のアナログ機能ブロック設計システムによってアナログ機能ブロックを設計する場合、例えば、図３５（ａ）のＭＯＳトランジスタ３４１の回路図上で操作部からパラメータＦとＭが指定されると、パラメータＦ、Ｍに応じたトランジスタ回路図、レイアウト図（図３５（ｂ）〜（ｄ））が生成される。前述したようにＦは拡散共有にてゲート共有されたトランジスタ群の構成を意味し、Ｍはその群を並列化したトランジスタ群の構成を意味しており、処理結果は内部モデルとして展開されアナログ回路シミュレータにてシミュレーションされる。
【００１１】
ここで、Ｆの展開であるが、図３５（ｂ）に示すような単一トランジスタ３４２ａ〜３４２ｆが連結されるモデルと捕らえると精度に大きな誤差が生ずる。すなわち、拡散を共有しているので容量等の数値は単体モデルを単純に連結したものではない。従って、Ｆの展開モデルは回路シミュレータに機能が内蔵されており、図３５（ｃ）に示すように独自のトランジスタ群（Ｆ＝３に等価なＭＯＳトランジスタ３４３ａ、３４３ｂの連結回路）モデルがその場で生成されると考える方が正確である。
【００１２】
Ｍに関してはＦ展開されたトランジスタ群の独立した並列化であり、やはりこれも回路シミュレータにて自動的に展開されてシミュレーションが行われる。これらのＦやＭの自動展開機能は、現在の市販アナログ回路シミュレータに通常装備されている機能であり解釈にも大きさ差異はない。
しかしながら、図３５（ｄ）に示すようなレイアウトを実施する段になると、特にＭに関して自由度が高い分だけ問題が生ずる。
【００１３】
即ち、Ｆの場合は拡散共有であるから１次元に並列にＭＯＳトランジスタ３４４ａ〜３４４ｃ、ＭＯＳトランジスタ３４４ｄ〜３４４ｆのように並べてソース、ドレインを共有化すればよいが、Ｍの場合にはトランジスタ３４４ａ〜３４４ｃ及びトランジスタ３４４ｄ〜３４４ｆをＸ方向に並べて配線３４５によって接続するようにしてもよく、Ｙ方向に並べて配線３４５によって接続してもよいことになる。
従ってＭの場合、レイアウトに当たっては空間自由度が大きいためより詳細な設計制御が必要となる。また、レイアウトエディタも従来のＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットを操作する機能のみでは作業効率が上がらない。トランジスタを認識しつつシンボリック化したレイアウトエディタが望まれる。
【００１４】
一方、Ｆについては自由度が限られている状況からライブラリ化されるのが通常である。即ち、あるトランジスタタイプについてＦ＝１、２、３、・・・のＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットパターンライブラリが用意されているか、もしくはそれらのパターンを生成する記述が用意されている場合が多い。これをトランジスタライブラリ（Ｆ展開を含む）と称し、より大きな機能をもつライブラリと区別する。
このように、アナログ機能ブロックの設計効率が悪いという問題がある。
【００１５】
【特許文献１】特開２００３−８６７０５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
本発明は、アナログ機能ブロックの設計過程において、アナログレイアウトの観点からアナログ設計の効率改善を図ることを課題としている。
また、本発明は、コンピュータを用いてアナログ機能ブロック設計システムを構築するのに好適なプログラムを提供することを課題としている。
【課題を解決するための手段】
【００１７】
本発明によれば、デバイスの配列を文字で表した配列リストデータ及び前記デバイスをシンボル図形で表したシンボル図形データを記憶する記憶手段と、設計対象回路のネットリスト情報を入力する入力手段と、少なくともダイアログウインドウ及びシンボリックレイアウトウインドウを表示する表示手段と、前記記憶手段に記憶した配列リストデータを用いて前記ネットリスト情報に対応する配列リストを生成すると共に、前記記憶手段に記憶したシンボル図形データを用いて前記配列リストに対応するシンボル図形形式のレイアウトを生成し、前記配列リスト、シンボル図形形式レイアウトをダイアログウインドウ、シンボリックレイアウトウインドウに表示するレイアウト処理手段とを備えて成ることするアナログ機能ブロック設計システムが提供される。
【００１８】
レイアウト処理手段は、憶手段に記憶した配列リストデータを用いてネットリスト情報に対応する配列リストを生成すると共に、記憶手段に記憶したシンボル図形データを用いて前記配列リストに対応するシンボル図形形式のレイアウトを生成し、前記配列リスト、シンボル図形形式レイアウトをダイアログウインドウ、シンボリックレイアウトウインドウに表示する。
【００１９】
ここで、前記デバイスは、ＭＯＳトランジスタ、バイポーラトランジスタ、コンデンサ又は抵抗であると共に、前記シンボリックレイアウトウィンドウは前記デバイスの配置位置を規定する第１のメッシュと配線の配置位置を規定する第２のメッシュの少なくとも２種類のメッシュが定義されて成り、前記レイアウト処理手段は、前記デバイス及び配線が各々、前記第１、第２のメッシュに整列するように前記シンボリックレイアウトウインドウに配置して表示するように構成してもよい。
【００２０】
また、前記ダイアログウィンドウには設計対象回路のネットリスト情報に対応する基本モデルパターンの配列リストが表示されると共に、前記シンボリックレイアウトウィンドウには前記基本モデルパターンの配列リストに対応するシンボル図形形式のレイアウトが表示されるように構成してもよい。
また、前記レイアウト処理手段は、前記基本モデルパターンに対して所定パラメータについての第１展開を行って第１展開モデルパターンの配列リストを生成する展開手段と、前記第１展開モデルパターンの配列リストに対応するシンボル図形形式のレイアウトを生成し前記シンボリックレイアウトウィンドウに表示するレイアウト生成手段とを備えて成るように構成してもよい。
【００２１】
また、前記展開手段は更に、前記第１展開モデルパターンに対して所定パラメータについての第２展開を行って第２展開モデルパターンの配列リストを生成し、前記レイアウト生成手段は更に、前記第２展開モデルパターンの配列リストに対応するシンボル図形形式のレイアウトを生成し前記シンボリックレイアウトウィンドウに表示するように構成してもよい。
【００２２】
また、前記ダイアログウィンドウにおける前記デバイスの表示において、前記デバイスには少なくとも１文字を対応させ、前記デバイスがＭＯＳトランジスタである場合にはソース又はドレインのいずれかの端子の存在方向を少なくとも１文字にて前記デバイスを表す文字の片側に記載するように構成してもよい。
また、前記展開手段は、前記展開時に拡散共有を用いた展開を行う拡散共有展開手段及びレイアウトされた前記デバイス間に間隙がある場合にパッキングするパッキング手段の少なくとも一方を備えて成るように構成してもよい。
【００２３】
また、前記設計対象回路は少なくとも１個のＭＯＳトランジスタにて機能を構成可能なバイアス回路又はスイッチ回路を有し、前記レイアウト処理手段は、前記ＭＯＳトランジスタを並列化するように構成してもよい。
また、前記設計対象回路は少なくとも２個のＭＯＳトランジスタにて機能を構成可能な差動対回路、カレントミラー回路又はインバータ回路を有し、前記レイアウト処理手段は、前記ＭＯＳトランジスタを並列化するように構成してもよい。
【００２４】
また、前記レイアウト処理手段は、前記設計対象回路のネットリスト情報に対応する基本モデルパターンの配列リストを表示する際に、ライブラリ化された前記基本モデルパターンの接続情報と前記設計対象回路のネットリスト情報とを照合して一致する配列リストを表示するように構成してもよい。
また、ＧＤＳあるいはＯＡＳＹＳ形式の回路図形データを、対応するシンボル図形形式のレイアウトデータに変換する変換手段を備えて成るように構成してもよい。
【００２５】
また、本発明によれば、コンピュータを前記いずれかのアナログ機能ブロック設計システムとして機能させることを特徴とするプログラムが提供される。
コンピュータは、プログラムを実行することにより、前記いずれかのアナログ機能ブロック設計システムとして機能する。
【発明の効果】
【００２６】
本発明に係るアナログ機能ブロック設計システムによれば、アナログ機能ブロックの設計過程において、アナログレイアウトの観点からアナログ設計の効率改善を図ることが可能になる。
また、本発明に係るプログラムは、コンピュータを用いて前記アナログ機能ブロック設計システムを構築することが可能になる。
【発明を実施するための最良の形態】
【００２７】
以下、図面を用いて本発明の実施の形態に係るアナログ機能ブロック設計システム及びプログラムについて説明する。尚、各図において、同一部分には同一符号を付している。
先ず本発明の実施の形態の概要を説明すると、本実施の形態では、アナログ機能ブロックの設計過程において、アナログレイアウトの観点からアナログ設計の効率改善を図るために主として次の３つの処理機能を備えている。
【００２８】
先ず１点目として、従来のＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットで示されるデータを操作するパターンエディタではなく、トランジスタを抽象化したシンボリックなデータとして取り扱いシンボリックレイアウトエディタを構築しアナログレイアウト作業の効率を改善する。
【００２９】
次に２点目として、回路シミュレーションの世界では既に確立されたトランジスタパラメータＦとＭに関して、前述シンボリックレイアウトエディタと蜜に連動させた設計機構を構築しアナログ設計作業の効率を改善する。そのためにダイアログウィンドウを配置制御の目的で導入しＦとＭ、特にＭの制御に対処する。
最後に３点目として、アナログ設計効率改善のために、既設計のアナログ機能ブロックをライブラリ化し再利用を積極的に図る設計機構を確立する。
【００３０】
前記１点目のシンボリックレイアウトエディタでは、アナログ設計に適したデバイス要素の抽象化を図りデバイス要素を第１の配置メッシュに割り当てる方式を採用する。配線は当然にしてトランジスタデバイスよりは細かな寸法であるから、第１の配置メッシュに対してより細分化した間隔の第２の配線メッシュを割り当てる。
【００３１】
この結果、デバイス要素の配置を第１の配置メッシュ単位で取り扱い、配線はより細かな第２の配線メッシュ単位で取り扱う２重化されたシンボリックなメッシュ構造「２重化構造メッシュ」が確立される。これにより、トランジスタ単位の取り扱いが規格化されるのでトランジスタ単位の取り扱い、即ち修正変更、は極めて容易となる。本発明によれば大規模駆動能力トランジスタ（即ち大規模Ｗ）が必要な場合は、容易に展開されて大規模Ｗが基本的な単位にて構築されるので規格化が容易となる特徴がある。
【００３２】
前記２点目のＦやＭなどの回路パラーメータを前述のシンボリックレイアウトエディタに伝達させる処理機能は、アナログ設計効率化のために極めて重要である。これを実現するために本実施の形態では、ダイアログウィンドウ上にてＭをＸ（Ｘ方向への繰り返し回数）、Ｙ（Ｘと直角なＹ方向への繰り返し回数）、Ｆｌｉｐ（反転）の組み合わせにて具現化させるようにしている。加えて本実施の形態では、Ｘ、Ｙ、Ｆｌｉｐ指定を２回独立に指定可能な機構を実現している。
【００３３】
これは、レイアウトとはＸ、Ｙの２次元にて行われるのでＸ方向の展開とＹ方向の展開と２段階の展開を独立に可能とすることが汎用性があり、かつ差動対やカレントミラーのように対象性を維持しながら展開させることが容易となり、かつ大規模なアナログ機能ブロックへの対処が可能となるからである。ここで、Ｆは拡散共有であるため通常Ｘ方向への展開のみにて拡散を共有させるので第１段階における展開のみにて対応させる。別の言い方をすれば、Ｆは１次元なので自由度はそれほど無くほとんど一意に解が決定する（ゲート端子の向きを上か下かにする制御程度）。
【００３４】
それに対し、Ｍは独立したトランジスタまたはトランジスタ群の並列化であるため自由度が極めて高い。Ｍ＝４として指定されたとしてもＸ方向に４並列からＹ方向に４並列まで全部で４種類の配列が可能でありこれに反転を加えれば非常に多くの組み合わせが生ずる。このためにＭについては、第１段階と第２段階の２回独立に指定制御可能とする。加えて、この自由度を詳細に制御する目的でダイアログウィンドウにて配置配列の指定を行いシンボリックレイアウトウィンドウに伝達させる。
【００３５】
前記３点目の既設計アナログマクロの再利用はアナログに限らずＬＳＩの設計において一般的に言われていることであり、所謂ライブラリ化である。ライブラリは、通常設計者が指定することにより組み込まれるものであるが、本実施の形態ではより優れた再利用の手法を実現している。
【００３６】
尚、ここでライブラリと称しているのは単なるトランジスタイプライブラリではなく、より大きな機能のことである。即ち本実施の形態では、指定された回路と存在するライブラリ群との間で自動照合を行い照合一致したライブラリを組み込み対象として表示する手段を有する。ここで、自動照合の際にはインスタンス名を照合のキーとして使用しない特徴を有する。
【００３７】
この結果、指定された回路では設計者はあらかじめ自由にトランジスタのインスタンス名の設定を行い、アナログ回路シミュレーションにより初期回路設計検証を行い、しかる後に本システムにて既設計のアナログライブラリと自動的に照合し一致した候補を選択することが可能である。これにより、初期設計段階とライブラリマッチングを前提としたアナログライブラリ設計段階とが独立並行して進められることになり、設計効率が極めて向上する。
【００３８】
また付加機能として、既存の設計資産をより有効に利用する目的で、本発明では機能マクロブロックレベルのＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットレイアウトデータからシンボリックレイアウトエディタのデータであるシンボリックな２重化構造メッシュ形式への変換と、変換されたデバイ要素メッシュデータからダイアログウィンドウにて使用する配置制御のデータへ変換する機能も実現している。
【００３９】
図２は、本実施の形態が直接回路シミュレーションの対象として出力する設計規模の概要を示す。但し、図２は本実施の形態の処理対象の一例を挙げているにすぎず、これらの範囲に限定されるものではない。
本実施の形態はアナログ動作を行う機能ブロックを設計対象としているので、直接取り扱うトランジスタ数は数百のオーダ（図２のメッシュ部分）がひとつの処理単位の目安となる。これは、アナログ回路シミュレーションの取り扱える規模からくる制限である。
【００４０】
しかしながら、シミュレーション目的にて直接データ操作するのは数百のトランジスタ単位であったとしても複数の機能ブロックに分けて設計を進める手法を取ったり、直接トランジスタを操作するのは部分的とし他の部分は階層化させるテクニックを用いて、より大規模な設計を進めることができる。実際、本実施の形態においてオペアンプやアナログデジタル（ＡＤ）／デジタルアナログ（ＤＡ）コンバータなどを設計対象としつつ、プロセッサなどの巨大なコアを置いてＬＳＩ設計を進める場合にも適用できる。
【００４１】
アナログ回路は周辺部に必要となる場合が多く、シンボリックレイアウトエディタとしては巨大なデータを取り扱える必要がある。従って、本実施の形態におけるレイアウト後の回路シミュレーション検証を目的とした最も一般的な設計対象範囲は、アナログ信号インターフェイスを有する機能ブロックにおいてはオペアンプ、ＡＤ／ＤＡコンバータ、カレントミラー、差動対、バイアス、スイッチ、インバータ等であり、デジタル信号インターフェイスを有する機能ブロックにおいては、ＦＦ、ＮＡＮＤ、ＮＯＲ、ＥＯＲ、ラッチ、インバータ、トランスファーゲート等である。尚、スイッチとトランスファーゲートは同じ機能である。
【００４２】
加えて、これら機能ブロックがＬＳＩの一部の機能である場合において全体をシンボリックレイアウトエディタで表示しながら所望の機能ブロックの修正編集を行う形態もある。これは特にアナログ信号インターフェイスを有するデジタルの大規模機能ブロックにおいて顕著である。
【００４３】
図１は、本実施の形態に係るアナログ機能ブロック設計システム及びプログラムの処理概要を示す図である。
システムに入力されるデータは、トランジスタ回路図相当のネットリスト情報１０１である。ネットリスト情報１０１は少なくとも設計対象回路のネットリストを含むデータである。本実施の形態では、ネットリスト情報１０１はパラメータＦやＭ等のパラメータが指定されたトランジスタレベルのネットリストであり、一般的な形式であるＳｐｉｃｅ形式やＥＤＩＦ形式等が利用できる。回路図データのバイナリデータベース形式でインターフェイスしてもよい。
【００４４】
最も一般的なＭＯＳトランジスタパラメータとしては、Ｆ、Ｍ、Ｌ、Ｗの４パラメータがある。ここで、Ｆ及びＭは前述したとおりであり又、Ｌとはゲート長、Ｗとはゲート幅である。これらパラメータの数値についてはあらかじめアナログ回路シミュレータにて検証済みのネットリストが入力される。本システムはＦとＭを実現するレイアウトシステムであるので、ＦとＭに着目して以降説明する。Ｌは通常レイアウト時には変えない。Ｗは、ＦとＭの実現により本システムで実効的に調整できる。
【００４５】
次の入力はライブラリである。本システムではライブラリは大きく分けて２種類ある。トランジスタライブラリ１０２とモデルパターンを表現しているモデルライブラリ１０５である。
トランジスタライブラリ１０２とは、トランジスタタイプを定義するＧＤＳあるいはＯＡＳＹＳ等の標準フォーマット形式のトランジスタ単体ライブライリでＦ展開形式も含むものである。Ｆ展開まで含むので、プログラミング言語で記述されてＧＤＳあるいはＯＡＳＹＳ等の標準フォーマット形式を生成するパッケージでもよい（これをパラメトリックセルと称する。）。トランジスタライブラリ１０２は、本実施の形態におけるＧＤＳあるいはＯＡＳＹＳ等の標準フォーマット変換の際に使用される。
【００４６】
モデルライブラリ１０５の方は、２つの主要なデータ内容に分かれる。１つはダイアログウィンドウにて表示編集されるところのトランジスタの並びをｓ／ｄ／Ａ／Ｂ形式にて抽象化して記載した配列リストデータであり、もう１つがシンボリックレイアウトウィンドウで使用されるシンボリックな２重化構造メッシュ形式のデータである。
モデルライブラリ１０５は、これら２種のデータ形式と２重化構造メッシュデータに付随する接続情報（ネットリスト相当のデータ）をもってセットとなる。本システムではモデルライブラリ１０５を使用して機能マクロブロックを生成するが、生成された機能マクロブロックは、再利用のために再度ライブラリ化が可能である。
【００４７】
次に、本システムに使用する処理装置（ＣＰＵ）の処理内容を表した処理機能ブロック１０６の処理に沿って、本システムの処理概要を説明する。
１）まずパラメータＦまたはＭが指定されていて展開処理したい対象回路（ブロック）をネットリスト上で指定する。この指定は、あらかじめ入力情報としてネットリストにて指定されていてもよい。
２）次に、対象回路と同一のトポロジを有するモデルライブラリ１０５を自動照合にて検出する。
３）次に、一致するモデルライブラリが存在した場合、各種パラメータ（特にＦとＭ）を対象回路から伝達設定させ、トランジスタ配列リストを経由して、対応するシンボリックな２重化構造メッシュデータを生成する。
【００４８】
４）次に、シンボリックな２重化構造メッシュデータを編集する。
５）その後、所定フォーマットデータ（例えば、ＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットデータ）に変換し、レイアウトデータファイル１０７を出力する。
また本システムでは、ライブラリ作成ユーティリティとして、既設計のＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットデータ１０３から、モデルライブラリ用データ（シンボリックな２重化構造メッシュデータと接続情報とトランジスタ配列リスト）１０４を生成する機能やデータ形式を変換する機能もある（パスを点線で示す）。
【００４９】
図３は、トランジスタ配列リスト形式の回路レイアウト３０１と、２重化構造メッシュ形式のシンボル図形形式の回路レイアウト３０２と、ＧＤＳあるいはＯＡＳＹＳ等の標準フォーマット形式の回路レイアウト３０３を示す図である。
ここで、トランジスタ配列リスト形式とは、１文字で表したＭＯＳトランジスタタイプ名の左側にソースを示す文字記号“ｓ”またはドレインを示す文字記号“ｄ”を付加して配列リスト形式に表現したもので、各トランジスタはソースｓ、ドレインｄによって相互に連結可能に構成される。
【００５０】
図３の例ではＡとＢの２タイプのＭＯＳトランジスタについて、２行２列（２×２）にてソースｓを左側にして配列されていることを示している。
ここで、トランジスタはタイプ名のみが指定され、各デバイスの固有名詞に相当するインスタンス名は指定されない。本システムでは、各デバイスに固有な名称であるインスタンス名は内部データとして存在するが本質的なデータではない。また、コンデンサ（容量）と抵抗もＣとＲの文字にてリスト表示される。
【００５１】
また、シンボリックな２重化メッシュ構造とは、シンボル図形形式レイアウトであり、デバイスまたはマクロの配置を定義する配置グリッドと、その間を接続する配線のトイポロジとコンタクト位置を定義する配線グリッドの少なくとも２種類のグリッドを持つメッシュ構造が定義され、表示編集されるシンボリックエディタのデータ構造ならびに表示形式を言う。
【００５２】
モデルライブラリ形式においては、トランジスタや容量や抵抗の配列リスト形式は対応するシンボリックな２重化構造メッシュ形式を有し、シンボリックな２重化構造メッシュ形式はトランジスタや容量や抵抗のライブラリを介してＧＤＳあるいはＯＡＳＹＳ等の標準フォーマット形式に自動変換される。すなわち、デバイスの種類としては、ＭＯＳトランジスタ、コンデンサＣ、抵抗Ｒおよびバイポーラトランジスタ（ＢＪＴ）がある。従って、ライブラリには、ＭＯＳのみならずバイポーラトランジスタとコンデンサと抵抗のＧＤＳあるいはＯＡＳＹＳ等の標準フォーマット形式を含む。
【００５３】
図３では、モデルライブラリ３０４中に定義されたデバイス（図３では、ＭＯＳトランジスタ、バイポーラトランジスタ、コンデンサ、抵抗を示している。）を使用して、配列リスト形式の回路レイアウト３０１に対応する２重化メッシュ形式のシンボル図形形式レイアウト３０２を生成した後、ＧＤＳやＯＡＳＹＳ等の標準フォーマット形式の回路レイアウトデータを生成している。
【００５４】
図４は、本実施の形態に係るアナログ機能ブロック設計の基本的な処理手順を示すフローチャートである。
図４において、まず入力データとしてトランジスタネットリスト相当のデータ（パラメータを含むネットリスト）が読み込まれる（ステップＳ４０１）。前記ネットリストは、外部機器から入力するように構成してもよく又、予め本システムの記憶手段に記憶しておいてもよい。
【００５５】
前者の場合には前記外部機器が入力手段を構成し、後者の場合には前記記憶手段が入力手段を構成することになる。
尚、前記ネットリストは、一般的な市販のトランジスタ回路図エントリツール４１０にて作成される（点線の箱にて表示）。この際、トランジスタパラメータであるＦやＭやＬやＷも指定され、あらかじめアナログ回路シミュレータにて検証されている。
【００５６】
次に、１）入力したネットリスト上でＦもしくはＭが指定されていて本システムにてレイアウト対象とするトランジスタ群をブロック指定する。ここで通常指定されるトランジスタ群とは、差動対、カレントミラー、バイアス、スイッチ、インバータ等である。次に指定されているモデルライブラリと指定されたトランジスタ群ブロックとの自動比較照合を行う。
【００５７】
通常、指定されるモデルライブラリは基本モデルパターンライブラリ１０５であり、対応するシンボリックな２重化構造メッシュデータが有する接続情報（ネットリスト相当のデータ）と指定されたトランジスタ群ブロックの回路図ネットリスト情報をトポロジの観点から比較する。一致したライブラリがあれば表示部にこれを表示してユーザに選択させる（ステップＳ４０２）。
【００５８】
次に、２）ダイアログウィンドウ上にて基本モデルパターンリスト１０５からユーザ選択された基本モデルパターンに相当するトランジスタ配列リストに対しＦを実施し、その後Ｘ、Ｙ、Ｆｌｉｐのパラメータを指定し第１展開モデルパターンに相当するトランジスタ配列リストとシンボリックな２重化構造メッシュデータを生成する。尚、複数のトランジスタをＸ方向に並設する場合にはＸを指定し、Ｙ方向に並設する場合にはＹを指定し、反転させる場合にはＦｌｉｐを指定する。続いて必要に応じ再度Ｘ、Ｙ、Ｆｌｉｐの指定を行い第２展開モデルパターンに相当するトランジスタ配列リストとシンボル図形形式の（シンボリックな）２重化構造メッシュデータを生成する（ステップＳ４０３）。
【００５９】
次に、３）生成されたシンボル図形形式の２重化構造メッシュデータは、シンボリックレイアウトエディタにより修正や変更等の編集処理が可能である（ステップＳ４０４）。
その後、４）編集処理が成されていれば編集処理後のものを最終的なシンボル図形形式の２重化構造メッシュデータとして確定し（ステップＳ４０５）、トランジスタライブラリ１０２を用いて前記データをＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットに変換して（ステップＳ４０６）、出力処理を行い処理を終える（ステップＳ４０７）。
【００６０】
本システムの入力はトランジスタネットリストであるのに対し出力はＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットである。必要なトランジスタレベルのネットリスト４１２は、出力されたＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットから、市販のネットリスト自動変換ツール４１１を用いて変換して得られる（点線の箱で表示）。
図示はしていないが、このようにして作成されたレイアウト、トランジスタネットリストは回路シミュレータによる最終検証に適用される。
【００６１】
ここではパラメータＦまたはＭをシンボリックレイアウト処理する基本モデルパターンとの自動照合からスタートする例で述べたが、より大きな第１展開モデルパターンや第２展開モデルパターンを自動照合の対象としてスタートすることも可能である。また、モデルライブラリ作成ツールとして既設計ＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットから変換するユーティリティ１０３、１０４も用意されている（パスを点線矢印で表示）。
【００６２】
モデルパターンには、基本モデルパターン、第１展開モデルパターン及び第２展開モデルパターンの３種類がある。
各モデルパターンは３種類のデータから構成される。それは、（１）ｓＡｄＢなどで表示される各デバイスの配列リスト、（２）前記配列リストに対応するシンボル図形形式の２重化構造メッシュデータ、及び（３）これに対応する各デバイス間の接続情報である。ここで前記（２）の対応するシンボリックな２重化構造メッシュデータの場合は配置情報は含むが配線情報は含まない場合もある。配線情報まで含む場合には複数のパターンバージョンが存在し得る。また前記（３）の接続情報は、ひとつの配列リストに対してひとつ存在する。
【００６３】
図５は、図４の処理ステップＳ４０２の詳細を示すフローチャートである。
図５には、オペアンプ５１０の差動対回路５００を展開したいトランジスタ群として指定し、既存の基本モデルパターンとの自動照合を行う例を示している。差動対回路５００の各トランジスタにはパラメータＦ、Ｍが指定され、予め回路シミュレーションを終えている段階にある。
【００６４】
図５において、中心となる処理はトポロジレベルでの自動照合である。結線が完結しているモデルライブラリ１０５として、配列リスト５１１（ここではＣＭＯＳ動作型１種とペア動作型１６種の基本モデルパターンを示している。）及びシンボリックな２重化構造メッシュデータ形式に対応する接続情報（２重化メッシュ形式と接続情報）５１２が存在している。
【００６５】
先ず、オペアンプ５１０のネットリストを記憶手段から読み出して入力し（ステップＳ５０１）、ユーザが操作手段によって、表示部に表示された回路図上で対象としたいブロックを指定する（ステップＳ５０２）。本例では、前記指定するブロックは差動対回路５００である。
次に、このモデルライブラリ１０５上の接続情報と指定されたブロックのネットリスト情報を以下の手順にて自動照合する（ステップＳ５０３）。
【００６６】
即ち、１）両回路の同電位端子を考慮した端子数の一致、２）続いて構成しているトランジスタ数とトランジスタタイプの一致、３）最後にグラフ照合アルゴリズムによるとトポロジの一致、である。
対象候補は表示部に表示するが、対象候補は複数検出される場合もあり、この場合に最終的には、表示された複数の対象候補の中から操作手段によってユーザが選択して決定することになる（ステップＳ５０４）。
【００６７】
図６に、グラフ照合アルゴリズムの詳細を示す。
まず、処理装置は入力されたネットリスト上で指定された対象回路Ａのネットリスト情報及びライブラリ上の比較対象回路の接続情報Ｂのどちらも並列化されている可能性があるので、並列化部分を単一化してパラメータＦ、Ｍ、Ｘ、Ｙの基本部分を復元する（ステップＳ６０１、Ｓ６０２）。
【００６８】
即ち、パラメータＦやＭの内容を単一縮退させるのである。Ｆは、対象回路Ａのネットリスト上でもライブラリ上の比較対象回路Ｂの接続情報でも、ひとつのトランジスタにパラメータが付随している形式であるので簡単である。Ｍは、接続情報においてはＸとＹにて並列展開されているので存在していれば縮退させる。
【００６９】
次に、処理装置はＦやＭによる並列化を縮退させた上での一致照合を取る（ステップＳ６０３）。これは、ＦやＭを展開する前の回路にて一致を判別し、候補が複数上がったらその中から選択する方法を採用しているからである。即ち、対象回路Ａのネットリスト情報上においてＦやＭはレンジで指定されている場合があり（どの数値を選択するかはレイアウト時のユーザの自由）、展開前の単一縮退させた状態にてまず一致を取る。この結果、両ブロックレベルの端指数が一致していなければ不一致と判断する。
【００７０】
処理装置は処理ステップＳ６０３において端子数が一致していると判断した場合、次にネット数、トランジスタ数及びトランジスタタイプを比較する（ステップＳ６０４）。ここで、トランジスタタイプとは、例えばＰＭＯＳやＮＭＯＳといった区別である。
処理装置は処理ステップＳ６０４において一致していなければ不一致と判断する。処理ステップＳ６０４において一致していると判断した場合、指定された対象回路Ａの１つのネットリスト情報と、モデルライブラリ上の比較対象回路Ｂの次の接続情報とに着目する（ステップＳ６０５）。
【００７１】
処理装置はモデルライブラリ上の比較対象回路Ｂに次の候補となる接続情報が存在する場合（ステップＳ６０６）、ネット内端子数が一致していれば、ネット内の各トランジスタタイプとゲート端子名と電源名（ＶＣＣやＧＮＤなど）に着目して一致するか否かを判断する（ステップＳ６０７）。
処理装置は、処理ステップＳ６０７において、着目した対象回路Ａのネットと、選択した比較対象回路Ｂの接続情報とが一致する場合、着目した対象回路Ａと比較対象回路Ｂのネットは一致すると判断する（ステップＳ６０９）。
【００７２】
処理装置は、次の対象回路Ａのネットが存在する場合には処理ステップＳ６０５に戻って処理を繰り返す（Ｓ６０９）。
対象回路Ａにおけるすべてのネットについて比較対象回路Ｂの接続情報と一致すれば、モジュールレベルで一致したと言える（ステップＳ６１０）。ここではトランジスタタイプ名とゲート端子名と電源名が照合のキーとなり、インスタンス名やネット名やソース端子名やドレイン端子名は照合のキー対象とならない特徴がある。また、ふたつの回路にてゲート端子名や電源名の対応を外部から指定する機能もある。
【００７３】
処理装置は、処理ステップＳ６０７において、一致しないと判断した場合、処理ステップＳ６０５に戻って、モデルライブラリ上の比較対象回路Ｂの次の接続情報に着目して処理を行う。
また、処理装置は、処理ステップＳ６０６においてモデルライブラリ上の比較対象回路Ｂに次の候補となるネットが存在しないと判断した場合、処理ステップＳ６０４においてネット数、トランジスタ数及びトランジスタタイプが一致していないと判断した場合、及び、処理ステップＳ６０３において端子数が一致していないと判断した場合には、次のライブラリ上の比較対象回路接続情報を入力して前記処理を繰り返す。
【００７４】
図７は、図４の処理ステップＳ４０３の詳細を説明する図で、基本パターン、モデルパターン及び配置パターンの関連とエディタを示す図である。
図７において、基本モデルパターン７０３から展開されたトランジスタ配列リストとシンボリックな２重化構造メッシュデータを作成するには以下の段階がある。それらは基本モデルパターン、第１展開モデルパターン及び第２展開モデルパターンである。
基本モデルパターン７０４とは、最小ひとつのトランジスタから構成される展開要素である。極めて多くの基本モデルパターンが定義可能である。
【００７５】
詳細は後述するが、本システムでは、１個のトランジスタから構成されるＭＯＳ基本動作型１種と、２個のトランジスタから構成されるＣＭＯＳ基本動作型１種と、より複雑な差動対回路やカレントミラー回路の並列展開を考慮して、最小２個、最大４個のトランジスタから構成される繰り返しを含む主要な配列リストに対応するペア動作型１６種を用いている（図１４参照）。
【００７６】
差動対回路やカレントミラー回路などの最低２つのトランジスタを前提とした機能を構成する回路はほとんどすべてが図１４の１６種類の配列リストにて対応可能である。バイアス回路やスイッチ回路といった最低１つのトランジスタを使って機能が表現できる回路構成もＭＯＳ基本動作型１種から構築可能である。
【００７７】
基本モデルパターンのトランジスタ配列リストに対応するシンボリックな２重化構造メッシュデータは、配線まで含めてモデルライブラリ化されている。ここで、まずＦが指定されている場合にはＦを実行させる。Ｆの実行は、ｓＡ型の配列リストには反映されない。また、Ｆが実行されてもシンボリックな２重化構造メッシュデータ上においても並列展開されるわけではない。Ｆが実行されても、ひとつのＦ＝ｎ型のデバイス要素として表示されるだけである。これは、Ｆはトランジスタモデルそのものに反映される内容であり、独立したトランジスタが並列化されるわけではないことによることと、抽象化を進めていることによる。
【００７８】
次にＭの処理であるが、これはＸとＹとによって詳細指定される。ＸとＹはＦにて展開されたトランジスタ群単位にて再度展開される。この際、ＸとＹにはＦｌｉｐ指定が可能である。このようにして第１展開モデルパターンのうち対応するトランジスタ配列リストがまず生成される。
ＦもＭも並列展開なので展開後の接続情報は自動生成され、既に配線済みの基本モデルパターンのシンボリックな２重化構造メッシュデータとこの自動生成された接続情報から第１モデルパターンにおけるシンボリックな２重化構造メッシュデータの配線が自動処理されることが可能である（ここで人手による配線にて配線完結させることも可能）。
【００７９】
このようにして第１展開モデルパターンの配列リストとシンボリックな２重化構造メッシュデータ両データが完成する。Ｆは拡散共有であるのでＸ方向１次元に展開され、この第１展開段階でのＭ展開は差動対やカレントミラーのように対象回路においてはＸとＹとに展開させることが多い。
その後、このような対象性を維持する必要がある回路は第２展開にて再びＸ方向とＹ方向にバランスを取りながら展開させることが可能となる。また、この第１展開時にはＭ展開における拡散共有の指定が可能である。即ち、Ｍ並列の展開時に並列となるソースまたはドレインを共有指定する。
【００８０】
続いて、再びＸ、Ｙ、Ｆｌｉｐの指定にもとずく第１展開モデルパターンを群とした第２回の展開が可能である。このようにして第２展開モデルパターンのトランジスタ配列リストとシンボリックな２重化構造メッシュデータが配線データ込みで完成する。
第２展開モデルパターンを作成する段階ではＦに関する処理は出来ない。それは第１展開モデルパターンを作成する段階で済ませておかなければならない。
【００８１】
この例では、トランジスタ配列リスト形式の基本モデルパターン７０４としてｓＡｄＢ／ｄＢｓＡ（「／」は改行を意味する。）が選択され、パラメータ７０５としてＡ、ＢともにＦ＝４とＭ＝４が設定され、Ｍ＝２を第１展開にてＸ方向にＦｌｉｐ（フリップ）展開して第１展開モデルパターン７０６を生成し、パラーメータ７０７として指定したＭ＝２を第２展開にてＹ方向へ展開させて第２展開モデルパターン７０８を生成する例を挙げている。第１展開モデルパターン７０６では、ｓＡｓＢの各トランジスタは内部でＦ展開され、Ｆ展開は配列リストには表示されない。
【００８２】
２重化構造メッシュエディタ７０１は、後述する処理装置（ＣＰＵ）２の一機能としてレイアウト処理手段を構成しており、基本モデルパターン７０４のトランジスタ配列リストと基本モデルパターン７０３の配置配線結果情報、２重化メッシュ形式シンボリックライブラリを用いて編集処理を行う。第１展開モデルパターン７０６、第２展開モデルパターン７０８は配置配線データ自動生成部７０２によって自動生成され、表示部に表示されて２重化構造メッシュエディタ７０１により編集される。
尚、パラーメータ７０７中に示すように、第２展開時には、展開すべき要素となる第１展開時のトランジスタ群に対するスペースをＸ、Ｙ各方向に指定できる。これは将来の電源配線用領域の確保等に有効である。
【００８３】
図８は、前記各モデルパターンの段階で対応するシンボリックな２重化構造メッシュデータから最終段階のＧＤＳあるいはＯＡＳＹＳ等の標準フォーマット変換へ移行する処理を示すフローチャートである。
図８において、基本モデルパターン配列リストは、基本トランジスタのみでレイアウトされ（ステップＳ８０１）、２重化構造メッシュ配置配線データが生成され（ステップＳ８０６）、後段でＧＤＳ等のフォーマットへの変換処理が行われる。
【００８４】
基本モデルパターン配列リストに対してパラメータ指定されたＦ、Ｍ、Ｆｌｉｐを実行すると（ステップＳ８０２）、第１展開モデルパターン配列リストを生成し（ステップＳ８０３）、第１展開モデルパターンの２重化構造メッシュ配置配線データが生成され（ステップＳ８０６）、後段でＧＤＳ等のフォーマットへの変換処理が行われる。
【００８５】
第１展開モデルパターンに対してパラメータ指定されたＭ、Ｆｌｉｐを実行すると（ステップＳ８０４）、第２展開モデルパターン配列リストを生成し（ステップＳ８０５）、第２展開モデルパターンの２重化構造メッシュ配置配線データを生成し（ステップＳ８０６）、後段でＧＤＳ等のフォーマットへの変換処理が行われる。
以上のように、本実施の形態に係る処理では、基本モデルパターンから第２展開モデルパターンまでの任意の段階にてＧＤＳあるいはＯＡＳＹＳ等の標準フォーマット出力することが可能であり、小規模なアナログ回路から大規模なアナログ回路までがひとつの考え方で対応可能となっている。
【００８６】
図９は、図４の処理ステップＳ４０３の後半と処理ステップＳ４０４の詳細を示す説明図で、デバイス配置自動生成と配線自動生成と機能ブロック出力の関係を示している。尚、図９におけるデータは図８とは連動していない。シンボリックな２重化構造メッシュエディタではどの段階においても介入可能であり、マニュアル操作にて修正可能である。
図９の例では、基本モデルパターンとしてＭＯＳ基本型１種のｓＡが指定され、これを第１展開は素通りさせている。配列リスト形式の第２展開モデルパターン９０１に示すように、第２展開でＭ＝２とＸ方向のスペースＰの指定を行いｓＡｓＡとして、最終的にＧＤＳあるいはＯＡＳＹＳ等の標準フォーマット変換されたデータが作成される例である。
尚、第１展開で拡散共有させてｓＡｄＡとさせ、第２展開を素通りさせてＧＤＳあるいはＯＡＳＹＳ等の標準フォーマット化することも可能である。
【００８７】
ＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットに変換する場合には、組み込むトランジスタのＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットライブラリまたはＦを実現するトランジスタのＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットライブラリを生成するプログラミング記述を有するトランジスタライブラリ２０２（即ちパラメトリックセル）、および線幅やコンタクトの形状を決定するルールファイル９０５を入力し、これらの入力と２重化構造メッシュエディタ７０１からのシンボル図形形式のレイアウトを用いてフォーマット変換部９０６によって前記フォーマットに変化し、ＧＤＳ形式の機能ブロック９０７（その一例を機能ブロック９０８として示している。）を出力する。
【００８８】
このようにして生成された各展開レベルのシンボリックな２重化構造メッシュデータ９０２は、部分回路要素９０４として、より上位のアナログ機能ブロック９０３に組み込み可能であり、それも本シンボリックな２重化構造メッシュエディタにて設計される。部分回路要素９０４は配置配線データ編集部９０９によって編集処理される。
【００８９】
図１０及び図１１は、ＧＤＳあるいはＯＡＳＹＳ等の標準フォーマット形式からユーザが所望する基本モデルパターンや第１展開モデルパターンのライブラリセットへ変換するユーティリティ（ライブラリ化ユーティリティ）の処理概要を示す図である。
図１０において、処理手順としては、まずＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットの回路レイアウト３０３をシンボル図形形式レイアウト（シンボリックな２重化構造メッシュデータ）３０２に変換してから配列リスト形式３０１に変換することになる。
【００９０】
本例では、配列リスト形式３０１はｓＡとなる。この際、拡散共有であるＦ（本例ではＦ＝５）を認識して縮退（並列化を単一化）させる。ここではＦに関して、単一のデバイスシンボルを対応させる例を示している。Ｍの並列化を認識して縮退させるか否かはユーザは選択可能である。Ｍの並列化を残したままで登録する場合には基本的には第１展開モデルパターンとしての登録となる。
【００９１】
図１１においても、Ｆ＝１即ちＦの指定がない点を除けば、図１０の処理と同様である。即ち、まずＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットの回路レイアウト３０３をシンボル図形形式のレイアウト（シンボリックな２重化構造メッシュデータ）３０２に変換してから配列リスト形式３０１に変換する。配列リスト形式３０１はｓＡｓＢ／ｓＣｓＤとなる。Ｍの並列化を残したままで登録する場合には基本的には第１展開モデルパターンとしての登録となる。
【００９２】
図１２は、図１０、図１１の処理を行うライブラリ化ユーティリティの処理手順を示すフローチャートである。
まず、処理装置は、ＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットの設計対象回路図データ１２１を入力して、当該回路のネットリスト情報を認識して抽出する（ステップＳ１２２）。
処理装置は、続いて拡散共有を認識しトランジスタ数を縮退させてＦを認識して抽出する（ステップＳ１２３）。
【００９３】
処理装置は、次に独立トランジスタの並列化を認識し、Ｍ（この場合は自動的にＸとＹも）を認識して抽出する（ステップＳ１２４）。このとき処理ステップＳ１２４においてＦｌｉｐの有無も認識される。但し、Ｆｌｉｐも含めてＭを縮退させるか否かは、操作手段による選択により、選択可能である。このようにして、処理ステップＳ１２３、Ｓ１２４の処理によって、Ｆ、Ｘ及びＹ方向のＭの数値及びＦｌｉｐの有無のデータ１２９が抽出される。
【００９４】
処理装置は続いて、水平ラインによる領域分割を行い、次に垂直ラインによる分割を行う（ステップＳ１２５）。この際、一般的にはデータは膨らむのでＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットの完全復元は出来ない（図３３に例を示す）。
このようにして最終的に縮退したトランジスタネットリスト情報１３０と、これに関連するＦ、Ｍ（ＸとＹ双方について）の値、および水平垂直ラインにて分割されたシンボリックな２重化メッシュ形式のデータ（シンボル図形形式レイアウトデータ）１２６が得られる。
【００９５】
処理装置は、シンボル図形形式レイアウトデータ１２６を配列リスト形式に変換処理を行い（ステップＳ１２７）、配列リスト形式データ１２８を生成する。
Ｍを縮退させた場合には、シンボリックな２重化メッシュ形式において配線データの復元は保証されない。縮退したトランジスタネットリスト情報が生成されているので、配置データのみシンボリックデータとして復元されれば充分だからである。
配線データも保存させたい場合にはＭ縮退を行わない。Ｍ縮退を行わなかった場合には、即ちＭ展開を保持したままの場合は、第１展開モデルライブラリとして作成され、第２展開が可能な状態のライブラリとなる。
【００９６】
図１３は、本発明の実施の形態に係るアナログ機能ブロック設計システムのブロック図である。
図１３において、アナログ機能ブロック設計システムは、処理装置（ＣＰＵ）２、キーボード７やマウス８等によって構成された入力部３、液晶表示器等によって構成された表示部１、磁気ディスク装置や半導体メモリによって構成された記憶部４を備えている。このように、本システムは、少なくともＣＰＵ２、記憶部４、入力部３及び表示部１を備えている。
【００９７】
記憶部４には、ＣＰＵ２が実行するプログラムが記憶されている。また、記憶部４は、本システムへの入力データ、本システムから外部へ出力する出力データ、処理途中に生じる中間データ等を記憶するデータ記憶部９と、設計ルール等を規定したルールファイルやライブラリファイルを記憶するファイル記憶部１０を備えている。
表示部１の画面上には少なくともダイアログウィンドウ５とシンボリックレイアウトウィンドウ６が表示形成される。
【００９８】
ダイアログウインドウ５には、基本モデルパターンの選択可能な態様での表示、展開の指示及び展開して得られた第１展開モデルパターンの表示、再度の展開指示及び展開して得られた第２展開モデルパターンの表示等が配列リスト形式で行われる。また、シンボリックレイアウトウインドウ６には、シンボル図形形式の回路レイアウト（シンボリック２重化構造メッシュ構造を有する回路レイアウト）等が表示される。
【００９９】
ＣＰＵ２は、１）トランジスタ回路図ネットリスト相当の情報（接続情報）の入力処理を行う手段、２）ダイアログウィンドウ５上にてトランジスタを要素とする配列制御を行う処理（例えば、基本モデルパターンの表示と選択処理、第１展開モデルパターンの指定と生成処理、第２展開モデルパターンの指定と生成処理）、３）シンボリックレイアウトウィンドウ６上にてトランジスタを要素とするメッシュ（配置メッシュ）上における配置と、配置メッシュをより細分化した間隔メッシュ（配線メッシュ）上において配線をメッシュ形式にて行うシンボリックな２重化メッシュ構造を有するデータ形式をシンボリックに表示編集する会話型の編集処理、４）シンボリックな２重化構造メッシュデータをＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットへ変換し出力する処理を行う。
【０１００】
また、ＣＰＵ２は前記処理に加えて、５）ＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットで入力された回路データを、基本モデルまたは第１展開モデルのライブラリ（配線リスト、２重化構造メッシュデータ、接続情報）を作成するユーティリティ機能を有するように構成されており、本システムを用いて、ユーザ側において基本モデルまたは第１展開モデルの種類を増やすことが出来るようになっている。
【０１０１】
また、ファイル記憶部１０に記憶したライブラリファイルとしては、１）トランジスタタイプをＧＤＳあるいはＯＡＳＹＳ等の標準フォーマット形式で記述するか、ＧＤＳあるいはＯＡＳＹＳ等の標準フォーマット形式を生成するプログラミング記述したＦ展開を含むトランジスタライブラリ、２）各種基本モデルパターンに属する配列リストとシンボリックな２重化構造メッシュデータと付随する接続情報がある。基本モデルパターンはユーザにて増やすことが出来る。また第１展開モデルをライブラリ化して自動照合の対象とすることも可能である。ルールファイルとしては、３）シンボリックな２重化構造メッシュにおけるトランジスタ種類やライン、コンタクト、端子等に関する定義がある。
【０１０２】
ここで、表示部１は表示手段を構成し、入力部３及び記憶部４は入力手段を構成し又、記憶部４は記憶手段を構成している。
また、入力部３及びＣＰＵ２は、レイアウト処理手段、展開手段、レイアウト生成手段、拡散共有展開手段、パッキング手段及び変換手段を構成している。
【０１０３】
記憶手段は、デバイスの配列を文字で表した配列リストデータ及び前記デバイスをシンボル図形で表したシンボル図形データを記憶することができる。
入力手段は、設計対象回路のネットリスト情報を入力することができる。
表示手段は、少なくともダイアログウインドウ及びシンボリックレイアウトウインドウを表示することができる。シンボリックレイアウトウィンドウはデバイスの配置位置を規定する第１のメッシュと配線の配置位置を規定する第２のメッシュの少なくとも２種類のメッシュを定義することができる。
【０１０４】
また、ダイアログウィンドウには設計対象回路のネットリスト情報に対応する基本モデルパターンの配列リストを表示すると共に、シンボリックレイアウトウィンドウには前記基本モデルパターンの配列リストに対応するシンボル図形形式のレイアウトを表示することができる。前記ダイアログウィンドウにおける前記デバイスの表示において、前記デバイスには少なくとも１文字を対応させ、前記デバイスがＭＯＳトランジスタである場合にはソース又はドレインのいずれかの端子の存在方向を少なくとも１文字にて前記デバイスを表す文字の片側に記載するようにすることができる。
【０１０５】
レイアウト処理手段は、前記記憶手段に記憶した配列リストデータを用いて前記ネットリスト情報に対応する配列リストを生成すると共に、前記記憶手段に記憶したシンボル図形データを用いて前記配列リストに対応するシンボル図形形式のレイアウトを生成し、前記配列リスト、シンボル図形形式レイアウトをダイアログウインドウ、シンボリックレイアウトウインドウに表示することができる。また、レイアウト処理手段は、デバイス及び配線が各々、第１、第２のメッシュに整列するようにシンボリックレイアウトウインドウに配置して表示することができる。
【０１０６】
また、レイアウト処理手段は、前記基本モデルパターンに対して所定パラメータについての第１展開を行って第１展開モデルパターンの配列リストを生成する展開手段と、前記第１展開モデルパターンの配列リストに対応するシンボル図形形式のレイアウトを生成し前記シンボリックレイアウトウィンドウに表示するレイアウト生成手段とを備えることができる。
【０１０７】
前記展開手段は更に、前記第１展開モデルパターンに対して所定パラメータについての第２展開を行って第２展開モデルパターンの配列リストを生成し、前記レイアウト生成手段は更に、前記第２展開モデルパターンの配列リストに対応するシンボル図形形式のレイアウトを生成し前記シンボリックレイアウトウィンドウに表示することができる。また、前記展開手段は、前記展開時に拡散共有を用いた展開を行う拡散共有展開手段及びレイアウトされた前記デバイス間に間隙がある場合にパッキングするパッキング手段の少なくとも一方を備えることができる。
【０１０８】
また、レイアウト処理手段は、設計対象回路が少なくとも１個のＭＯＳトランジスタにて機能を構成可能なバイアス回路又はスイッチ回路を有する場合、前記ＭＯＳトランジスタを並列化することができる。また、レイアウト処理手段は、設計対象回路が少なくとも２個のＭＯＳトランジスタにて機能を構成可能な差動対回路、カレントミラー回路又はインバータ回路を有する場合、前記ＭＯＳトランジスタを並列化することができる。
【０１０９】
また、レイアウト処理手段は、設計対象回路のネットリスト情報に対応する基本モデルパターンの配列リストを表示する際に、ライブラリ化された前記基本モデルパターンの接続情報と前記設計対象回路のネットリスト情報とを照合して一致する配列リストを表示することができる。
変換手段は、ＧＤＳあるいはＯＡＳＹＳ形式の回路図形データを、対応するシンボル図形形式のレイアウトデータに変換することができる。
【０１１０】
図１４は、本システムにおけるＭＯＳ基本動作型１種（ｓＡ）、ＣＭＯＳ基本動作型１種（ｓＡ／ｓＢ）及びペア動作型１６種（ペア動作型の一般的な形のもの１０種、ペア動作型の対称な形のもの６種）、計１８種の基本モデルパターンのトランジスタ配列リスト１４１である。これ以外の基本モデルも勿論定義可能である。
【０１１１】
ＭＯＳ型基本動作型としては：
ｓＡ．．．
ＣＭＯＳ基本動作型としては：
ｓＡ／ｓＢ．．．
【０１１２】
ペア動作型の一般的な形としては：
ｄＡｓＢ．．．、
ｓＡｄＢ．．．、
ｄＡｓＢ／ｄＣｓＤ、ｓＡｄＢ／ｓＣｄＤ、
ｄＡｓＢｄＡｓＢ．．．、ＡｄＢｓＡｓＢ．．．、ｄＡｓＡｄＢｓＢ．．．、ｓＡｄＡｓＢｄＢ．．．、
ｄＡｓＢ／ｄＡｓＢ．．．、
ｓＡｄＢ／ｓＡｄＢ．．．、
【０１１３】
対称な形としては：
ｄＡｓＢ／ｄＢｓＡ、
ｓＡｄＢ／ｓＢｄＡ、
ｄＡｓＢｄＢｓＡ／ｄＢｓＡｄＡｓＢｓ、
ＡｄＢｓＢｄＡ／ｓＢｄＡｓＡｄＢ、
ｄＡｓＢ／ｄＤｓＣ．．．、
ｓＡｄＢ／ｓＤｄＣ．．．、
等がある。ここで、記号「．．．」は繰り返し可能であることを意味し、記号「／」は改行を意味している。
【０１１４】
各基本モデルパターンの配列リストには、配線を含む複数のシンボリック２重化構造メッシュデータと接続情報１４２が対応している。
ＭＯＳやＣＭＯＳの基本動作型の基本パターンは単なる素材の域を出ない。しかしながら、本配列リストと対応する配線を含むシンボリックな２重化構造メッシュデータがあれば、差動対やカレントミラー等の最低ふたつのトランジスタを含む基本回路に対してＦやＭ（Ｘ，Ｙ）やＦｌｉｐを含む並列展開が容易に可能でありペア型動作の回路に対しては極めて有効である。
【０１１５】
加えて、並列展開された差動対等をシンボリックな２重化構造メッシュエディタ上にて他の回路ブロックと加え合わせ修正編集してオペアンプのような大規模アナログ機能ブロックを設計することももちろん可能である。
また図１４に示す１つの基本モデル配列リストに属するシンボリックな２重化構造メッシュデータ１４２、１４３は複数存在し得ることになる。但し、基本モデルパターンにおける接続情報は１つである。
【０１１６】
図１５は、本実施の形態におけるダイアログウィンドウ５の内容を示す図である。
１）まず選択された入力ネットリスト上の対象回路がリストアップされるボックス１５１がダイアログウインドウ５に表示される（図１５（ａ））。ここでは、トランジスタタイプ、Ｆ、Ｍ、Ｗ、Ｌの各種トランジスタパラメータが表示される。図１５（ａ）では、トランジスタタイプＡ、Ｂが設定されている。これらパラメータ条件にて初期回路シミュレーションがなされたものである。
【０１１７】
２）次に指定したモデルライブラリ、ここでは１６種類の基本モデルパターン（およびユーザ追加のパターン）と対象回路の自動照合を取った結果、候補となる配列リスト１５２が表示される（図１５（ｂ））。ここで候補が複数ある場合には入力部３によって選択する。
３）入力部３による選択操作が行われると選択された候補が配列リスト１５３として表示され、もしくは候補が１つしか無い場合には当該候補が配列リスト１５３として表示される（図１５（ｃ））。また、ダイアログウィンドウ５ではないが、対応するシンボリックな２重化構造メッシュデータ（シンボル図形形式レイアウト）１５４もシンボリックウィンドウ６上に表示される（図１５（ｄ））。
【０１１８】
ここで、複数のシンボリックな２重化構造メッシュデータ１５４がひとつの配列リスト候補に対応して存在する場合には、ユーザは入力部３を操作して、１つのシンボリックな２重化構造メッシュデータ１５４をシンボリックウィンドウ６上にて選択する。結果として１）で示される対象回路について３）で示される基本モデルパターン（配列リストとシンボリックな２重化構造メッシュデータのセット）が対応決定されたことになる。
【０１１９】
４）次に、入力部３を操作してダイアログウィンドウ５の展開指定ボックス１５５から、第１展開モデルパターン生成のために第１回目の展開指定を行う（図１５（ｅ））。Ｆは第１回目でのみ展開できるので、ここではＦおよびＭをＸとＹを用いて展開する。ＭのうちＸ展開については拡散共有を行うか否かの選択が可能である。またＸとＹにおいてはＦｌｉｐ指定も可能である。通常、第１回展開はＦとＸ展開を行う。
【０１２０】
５）続いて、第２展開モデルパターン生成のために第２回目の展開指定を行う（図１５（ｆ））。この場合、ダイアログウインドウ５の展開指示ボックス１５６から第２回目のＭに関する展開をＸとＹとで行う。勿論Ｆｌｉｐ指定もある。ここではＸ方向とＹ方向について要素間にスペースを空ける指示が出来る。通常、第２回目における展開はＹ方向展開である。この結果、ＸとＹとの２次元に展開され実効Ｗが増加した並列化回路が作成される。
【０１２１】
図１６は、本実施の形態におけるシンボリックレイアウトエディタによる２重化メッシュ構造を示す図で、シンボリックレイアウトウインドウ６の表示を示している。
間隔大なる第１のメッシュ１６１は、デバイス配置用のメッシュである。ここでデバイスとはＭＯＳトランジスタ、コンデンサＣ、抵抗Ｒ、バイポーラトランジスタＢＪＴ等がある。前記各デバイスは第１メッシュ１６１に整列する（例えば、デバイスの外周が第１メッシュ１６１と重なる）ように配置され、その状態で表示部１のシンボリックレイアウトウインドウ６に表示される。
【０１２２】
第１の配置メッシュ１６１よりも間隔が狭い間隔小なる第２のメッシュ１６２は、配線配置用メッシュで、配線以外にコンタクトや端子の配置が可能である。ここで第１のメッシュ１６１の間隔は、第２のメッシュ１６２の間隔の整数倍である。配線、コンタクト、端子は、第２メッシュ１６２に整列する（例えば、配線等の中心が第２メッシュ１６２と重なる）ように配置され、その状態で表示部１に表示される。
【０１２３】
図１６では、モデルライブラリ３０４中に定義されたデバイスを使用して、配列リスト形式の回路レイアウトに対応する２重化メッシュ形式のシンボル図形形式回路レイアウト３０２を生成した例を示している。
モデルライブラリ３０４には、ＭＯＳトランジスタ１６３、バイポーラトランジスタ１６４、抵抗１６５、コンデンサ１６６が定義されている。
【０１２４】
また、シンボル図形形式回路レイアウトとして、モデルライブラリ３０４に定義された４つのＭＯＳトランジスタを配線１６７によって接続したシンボル図形形式回路レイアウト３０２が表示されている。
モデルライブラリ３０４及びシンボル図形形式回路レイアウト３０２はシンボリックレイアウトウインドウに表示される。
【０１２５】
図１７は、基本モデルパターンから第１展開モデルパターンへの展開例を示す図である。
基本モデルパターン１７０は、図１７（ａ）に示すように２つのトランジスタＡとＢを並べて配置した「ｓＡｓＢ」なる配列リストで表され、これに対応するシンボル図形形式レイアウトはトランジスタＡとＢのゲートを配線１７１によって接続した構成となっている。各トランジスタＡ、ＢにはＦとＭが指定されており、各々Ｆ＝１、Ｍ＝４である。
【０１２６】
基本モデルパターン１７０に対して、第１展開（Ｘ方向のＭ＝２、Ｆｌｉｐ＝ＯＮ：Ｙ方向のＭ＝２、Ｆｌｉｐ＝ＯＦＦ）を実行すると、第１展開モデルパターンの配列リスト「ｓＡｄＢｓＢｄＡ／ｓＡｄＢｓＢｄＡ」が得られる。前記配列リストに対応する第１展開モデルパターンのシンボル図形形式レイアウトは、図１７（ｂ）に示すように、２つの基本モデルパターン１７０、１７０と、基本モデルパターン１７０を反転した２つのモデルパターン（反転モデルパターン）１７４とを２×２に配置して配線１７５によって接続した構成となっている。
【０１２７】
一方、図１７（ｃ）は、基本モデルパターン１７０に対して、他の第１展開（Ｘ方向のＭ＝４、Ｆｌｉｐ＝ＯＮ）を実施した例である。Ｆｌｉｐの意味は、展開された直後のモデルに対して適用される。本例を見ても分かるように、Ｆｌｉｐを繰り返すということは、結果として「Ｆｉｌｐ」と「元に戻る」を繰り返すということになる。繰り返しの原点は下方左下である（点線の箱にて表示）。
【０１２８】
基本モデルパターン１７０に対して、他の第１展開（Ｘ方向のＭ＝４、Ｆｌｉｐ＝ＯＮ）を実施すると、第１展開モデルパターンの配列リスト「ｓＡｄＢｓＢｄＡｓＡｄＢｓＢｄＡ」が得られる。前記配列リストに対応する第１展開モデルパターンのシンボル図形形式レイアウトは、図１７（ｃ）に示すように、基本モデルパターン１７０、基本モデルパターン１７０の反転モデルパターン１７４、反転モデルパターン１７４の反転モデルパターン（即ち、基本モデルパターン１７０）、基本モデルパターン１７０の反転モデルパターン１７４を順次Ｘ方向に並べて各ゲートを配線１７５によって接続した構成となる。
【０１２９】
図１８及び図１９は、各々、第１展開モデルパターン１８１、１９１から第２回展開モデルパターン１８２、１９２ヘの展開例である。第１展開モデルパターン１８１、１９１のいずれに対してもＸ＝２（Ｘ方向のＭ＝２）、Ｙ＝２（Ｙ方向のＭ＝２）を実行するが、図１８はＦｌｉｐ＝ＯＮ（Ｘ方向及びＹ方向ともにＦｌｉｐ＝ＯＮ）の例、図１９はＦｌｉｐ＝ＯＦＦ（Ｘ方向及びＹ方向ともにＦｌｉｐ＝ＯＦＦ）の例である。
【０１３０】
ＸとＹに関する展開の順序であるが、Ｘ方向に関してまず展開を行い、続いてＹ方向に関して展開を行う。ＸとＹに関するＦｌｉｐの解釈も同様で、ＸとＹともにＦｌｉｐ指定がなされている場合には、まずＸ方向に関してＦｌｉｐを繰り返す。従って、３以上のＦｌｉｐ数が指定されている場合には同じパターンが左右交互に出現する。続いてＹ方向のＦｌｉｐ展開をＸ方向に展開されたパターン全体に行う。従って、やはり同じパターンが上下交互に出現することになる。
【０１３１】
図１７〜図１９を見れば分かるように、本システムでは第２展開パターンと同一の結果を第１展開パターンにて得ることが可能である。これは展開性が単純である場合には２回の展開を必要としないケースがあるからである。しかしながら、各展開にて何を展開させるかはユーザによって方針が異なる。本システムは、２回の展開機能を提供すれば必要かつ十分でありそれ以上は冗長であること、およびＬＳＩ設計の２次元性から２回の展開機能を準備することが望ましい、などの観点からこれらの機能を提供するものである。
【０１３２】
図２０は、第１展開モデルパターン２００１について、Ｘ、Ｙ、Ｆｌｉｐ指定にて第２回展開を行うことによって第２展開モデルパターン２００２を生成し、その結果に対してパッキング処理を行うことによってデバイス間の間隙２００３を詰める例である。
パッキング処理は第１展開後と第２展開後の２段階にて実施可能である。図示はしていないが、第１展開後のパッキング処理では、拡散共有させてのパッキング処理が可能であり、拡散共有させるか否かの指定が可能である。第２展開後では拡散共有させてのパッキング処理は行わない。Ｆ展開も含めて拡散共有は第１展開時においてのみ行う処理内容である。また、パッキング処理するか否かを入力部３から指定可能であり、パッキング処理する旨が設定されている場合にパッキング処理して隙間を詰める。
【０１３３】
図２１は、第１展開モデルパターンにて確定したシンボリックな２重化構造メッシュ形式データを第２展開モデルパターンに展開する際の例であり、配線を含む展開例である。この例を見ても分かるように、シンボリックな２重化構造メッシュデータにて記述されている配線データもＸ方向およびＹ方向のＦｌｉｐ対象となる。
【０１３４】
図２１において、第１展開モデルパターン（配列リスト２１１、配列リスト２１１に対応する２重化構造メッシュデータ２１２）について第２展開（Ｘ方向のＭ＝２、Ｘ方向のＦｌｉｐ＝ＯＦＦ：Ｙ方向のＭ＝２、Ｙ方向のＦｌｉｐ＝ＯＦＦ）を行うことにより、第２展開モデルパターン２１３を生成する。
また、前記第１展開モデルパターンについて他の第２展開（Ｘ方向のＭ＝２、Ｘ方向のＦｌｉｐ＝ＯＮ：Ｙ方向のＭ＝２、Ｙ方向のＦｌｉｐ＝ＯＮ）を行うことにより、第２展開モデルパターン２１４を生成する。
【０１３５】
図２２は、ＣＭＯＳ基本モデルパターンとなる回路例で、ゲートＧが接続されたｓＡ／ｓＢのシンボリックな２重化構造メッシュデータの例である。
図２２（ａ）はＣＭＯＳトランジスタの回路構成図で、一方の極性のＭＯＳトランジスタ２２１と他方の極性のＭＯＳトランジスタ２２２の両ゲートを配線２２３によって接続した構成となっている。
図２２（ａ）のＣＭＯＳトランジスタは、配列リスト形式のＣＭＯＳ基本モデルパターン「ｓＡ／ｓＢ」として表される（図２２（ｂ））。
また、図２２（ａ）のＣＭＯＳトランジスタは、シンボリック図形形式レイアウトのモデルパターンとして図２２（ｃ）のように表される。
【０１３６】
図２３は、図２２に示すシンボリックな２重化構造メッシュデータ「ｓＡ／ｓＢ」なる基本モデルパターンから第１展開を素通りさせて（即ち、第１展開モデルパターンを生成することなく）Ｘ方向にスペースを指示すると共に、Ｘ方向のＦｌｉｐ＝ＯＮ、Ｘ方向のＭ＝２にて、第２展開モデルパターン「ｓＡ  ｄＡ／ｓＢ  ｄＢ」を作成した例である（ブランクはスペースを示す）。図２３（ａ）は配列リスト形式の第２展開モデルパターンを示し、又、図２３（ｂ）はシンボリック図形形式レイアウトの第２展開モデルパターンを示している。図２３（ｂ）中の２３１がスペースである。
【０１３７】
図２４は、配線を含んだ基本モデル２重化構造メッシュデータの例である。図２４（ａ）は配列リストデータ「ｓＡｓＢ」であり、又、図２４（ｂ）はそれに対応する２重化構造メッシュデータで、ＭＯＳトランジスタＡ、Ｂを配線２４１によって接続した構成である。
配線を含んだ基本モデルパターン「ｓＡｓＢ」のシンボリックな２重化構造メッシュデータにおいて、２つのデバイスＡ、Ｂをデバイス配置用の１つの第１メッシュに定義し、外部端子位置まで配線を引き出している例である。
【０１３８】
２つのデバイスＡ、Ｂを１つのメッシュに定義する手法は、液晶表示装置の薄膜トランジスタによるアナログ設計によく採り入れられる手法である。また配線を引き出しておく手法は、人手による配線を好むアナログエンジニヤには適しており、配置配線後冗長となった枝配線を自動的に削除する機能が用意されている。また、特性バランスを取る意味で枝冗長配線の削除そのものも処理対象と「する／しない」の選択が可能となっている。
【０１３９】
シンボリックな２重化構造メッシュエディタには自動配線機能も装備されており、自動配線を好むユーザは、通常ゲートのみ共有化配線を人手で行って他の配線は自動配線を適用するケースもある。アナログ設計では微妙な配線バランスが要求される場合も多く、何が何でも自動化というシステムはユーザに受け入れらない。本システムの一例として示すように、自動化機能も準備されつつ、且つ、入力部３を操作して人手による細かな制御が可能なシステムも望まれる。
【０１４０】
図２５は、図２４に示したユーザ登録の基本モデルパターン「ｓＡｓＢ」を、Ｍ＝４（Ｘ＝２、Ｙ＝２）にて、第１展開を素通りさせ、第２展開にてスペース指定を行いＭ展開させた例である。生成された配列リスト形式の第２展開モデルパターンは、図２５（ａ）に示すように「ｓＡｓＢ  ｓＡｓＢ／／ｓＡｓＢ  ｓＡｓＢ」となる。ここでブランクはスペースを示し、「／／」は改行後スペースを入れることを示している。
【０１４１】
図２５（ｂ）は、前記配列リスト形式データに対応するシンボル図形形式レイアウトであり、デバイス間にＸ方向スペース２５１、Ｙ方向スペース２５２が形成されている。
ＸとＹの展開が指示された場合には、ＸからＹの順、即ち（Ｘ＝２、Ｆｌｉｐ＝ＯＦＦ）、（Ｙ＝２、Ｆｌｉｐ＝ＯＦＦ）の順番にて実施される。この確保されたスペースは電源配線用に使用される。
【０１４２】
図２６にスイッチ回路の例を示す。図２６（ａ）に示すように、テクノロジは単一ＭＯＳ（例えばＮＭＯＳ）トランジスタであり、ＭＯＳ基本動作型１種の基本モデルパターンを使用してＭ展開を行う例である。
ここで初期ネットリスト入力時のパラメータＭは１２が指定されていたとする。そこに「ｓＡｄＢ」基本モデルパターンをＭＯＳトランジスタタイプＡ＝Ｂにて採用し（図２６（ｂ））、Ｘ方向に第１回展開を６回させてＭ＝１２相当とし（図２６（ｃ））、続いて第２回展開を１３回行い合計でＭ＝１５６相当とした例である（図２６（ｄ））。複数回に分けて展開するため、Ｍが大きい場合でも短時間で展開処理することが可能である。
【０１４３】
Ａ＝Ｂである場合にはＭＯＳトランジスタＡとＢのソースとドレインは区別されないので、「ｓＡｓＡ」の並びでもよい。また初期指定のＭを超えた場合には表示部１にワーニングが出るように構成しているが、基本的にはユーザ責任にて展開される。このようにしてレイアウト時に実効Ｗを調整させ各種のスイッチを作成することが可能である。また、ゲート端子をソースにつなげばバイアス回路を構成することになる。すべて並列化された回路が構成されることになる。
【０１４４】
これらスイッチ回路とバイアス回路の違いは、すべてシンボリックな２重化構造メッシュデータの違いとして反映されている。即ち、同じｓＡｓＡであってもシンボリックな２重化構造メッシュデータにおける接続情報は、ソース端子とドレイン端子が浮いているもの、ソース端子はＶＣＣ（またはＧＮＤ）ドレイン端子はＧＮＤ（またはＶＣＣ）に接続されているもの、ゲート端子がソース端子に接続されているもの、等の各種類のメッシュデータが存在しており自動化照合の段階で振るい分けられる。
【０１４５】
図２７は、オペアンプにおける差動対回路２７１の例である（図２７（ａ））。テクノロジは単一ＭＯＳ（例えばＮＭＯＳ）トランジスタである。ＭＯＳトランジスタＡ（Ｆ＝４、Ｍ＝２）、ＭＯＳトランジスタＢ（Ｆ＝４、Ｍ＝２）にて指定されたパラメータを基本モデルパターン配列リスト３０１の「ｓＡｄＢ／ｄＢｓＡ」からパラメータＦを第１展開させて生成している（図２７（ｂ））。その後、配列リストデータ３０１に対応するシンボル図形形式レイアウト３０２を生成し（図２７（ｃ）、シンボル図形形式レイアウト３０２（換言すれば、配列リストデータ３０１）に対応するＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットのレイアウト３０３を生成する（図２７（ｄ））。
【０１４６】
この例では、基本モデルパターンにて各トランジスタ群のＭ＝２が既に実現されているので第１展開モデル生成時にＦ展開を実行するだけで、あとは素通りであるがその後生成された図２７（ｂ）、（ｃ）の第１展開モデルに対して再度第２展開（Ｍ展開をＸとＹの両方向で）させてバランスを取りながら拡大させることが可能であり、かつこのような対称回路を展開させる場合においては極めて有用な機能となる。それは対称回路については常に対称性を維持しながら展開させる必要があるからであり、図２７に示す第１展開にて基本構造を展開させてその後第２展開にて重心（バランス）をより容易に制御することが可能となるからである。
同様にして、図２８に示すように、ＭＯＳトランジスタ３０４、３０５を有する対称回路であるカレントミラー回路についても構築できる。
【０１４７】
図２９〜図３１は、複数のトランジスタペアａ〜ｈを有するラッチ回路の例である。テクノロジはＣＭＯＳである。デジタル信号インターフェイスを有する回路においては、最終段のインバータバッファの実効Ｗを増加させたい場合に本システムが用いられる場合が多い。これはラッチに限らず、ＡＮＤゲートやＯＲゲートなどの一般的なゲート回路の最終段にも適用される。
図２９のトランジスタ回路図において、出力端子ＯＵＴのバッファｈにＭ＝２が指定されたとする。
【０１４８】
図３０は図２９のトランジスタ回路図に対応するシンボリックな２重化構造メッシュデータで、Ｍ＝２を実施する前のデータであり、図２９及び図３０のＣＭＯＳトランジスタペアａ〜ｈが相互に対応している。
ＣＭＯＳトランジスタペアｈに対してＭ＝２を実施した結果のシンボリックな２重化構造メッシュデータを図３１に示す。出力段のＣＭＯＳトランジスタペアｈに対して並列にＣＭＯＳトランジスタペアｉが形成されている。
【０１４９】
このような回路がトランジスタ回路図とシンボリックな２重化構造メッシュデータとでライブラリ化していれば、容易に出力段のバッファをＭ指定にて並列化させることが可能である。この場合は、第１回展開モデルとしてライブラリ化する例である。
ＡＳＩＣなどのデジタル回路におけるフリップフロップ回路（ＦＦ）やＮＡＮＤやＮＯＲなどのセルライブラリを第１回展開ライブラリとして本システムで登録しておけば、要求に応じて容易にＷを増やしたセルを設計提供できることを示している。また図３０には、並列化とは独立に拡散共有する例を示している。本シンボリックエディタでは、指示により配線パターンを使用せず拡散パターンを共有させることにより結線させる機能も有する。
【０１５０】
図３２は、大規模ＩＰ（例えばプロセッサ）がありこれはアナログ設計の対象ではないが、周辺部にＡＤ／ＤＡコンバータのようなアナログ機能ブロックが存在する場合において、本実施の形態のＦ、Ｍの展開機能を用いてＡＤ／ＤＡコンバータ等を設計する際に大規模ＩＰもシンボリックな２重化構造メッシュエディタに載せて（修正はしないけれども）データ対象としてあげておく設計手法の例である（図９参照の９０３、９０４参照）。
【０１５１】
所謂レイアウトにおける階層化設計であるが、本シンボリックな２重化構造メッシュエディタでは、このように大規模デジタル回路の周辺アナログ機能ブロックの設計にデジタル回路も含めて設計出来る。
図３２において、プロセッサ等の固定のハードウェアマクロ３２２とアナログ機能ブロック３２１が、デバイス配置用の第１メッシュ３２３に整列するように配置されている。アナログ機能ブロック３２１は、例えば、オペアンプの差動回路ＡＢＢＡで、設計対象回路であり、前述した処理によって変更等の処理が行われる。
【０１５２】
図３３及び図３４は、ＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットからシンボリックな２重化構造メッシュデータに変換する例を示す図である。変換処理は前述したようにして行われる（図１０〜図１２参照）。
図３３（ａ）は元のＧＤＳ形式レイアウトデータ、図３３（ｂ）はＦの認識及び水平ライン３３２による分割処理、図３３（ｃ）は図３３（ｂ）に対する垂直ライン３３３による分割処理である。ゲートが共通接続された４つのＭＯＳトランジスタ３３１からＦ＝４と認識する。また、水平ライン３３２及び垂直ライン３３３によって各ＭＯＳトランジスタが区分けされ、これらが配置されるメッシュ領域が決定される。
【０１５３】
図３４は、図３３（ｃ）に対応するシンボル図形形式レイアウトである。４つのトランジスタ３３１は、Ｆ＝４として単一シンボルのＭＯＳトランジスタ３３４にて表示され、各ＭＯＳトランジスタはデバイス配置用の第１メッシュに整列して配置されている。また、各配線は配線用の第２メッシュに整列して配置されている。
【０１５４】
本例を見れば分かるように、ＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットからシンボリックな２重化構造メッシュデータに変換する際には水平垂直に抽象化されるので、完全に一致したものにはならない場合が多い。それでも配線まで含めた回路をライブラリ化（特に第１展開モデルライブラリ）して再利用を図れる効果は大きい。
ユーザが指定する回路と第１展開モデルライブラリは、インスタンス名をキーとせずに自動照合可能であり、その後の第２回展開を行うか、もしくはシンボリックな２重化構造メッシュエディタにて修正可能であることは、既存のデータ再利用の観点から効果大である。
【０１５５】
尚、ライブラリ登録ということだけを考えればＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットに至る前の段階における配列リストやシンボリックな２重化構造メッシュデータの登録は可能であるが、ＧＤＳあるいはＯＡＳＹＳ等の標準フォーマット出力後の回路シミュレータにて動作確認されたデータをライブラリ化するという考えに基づき、基本モデルや第１展開モデルのライブラリ登録はＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットからのルートを作成することが好ましい。
【０１５６】
以上述べたように、本発明の実施の形態に係るアナログ機能ブロック設計システムでは、設計対象回路のネットリスト情報に基づいて設計対象回路を配線リスト形式３０１で表わす。配列リスト形式３０１では各ＭＯＳトランジスタのレイアウトを、トランジスタタイプ名Ａ、Ｂの左側にソースを示す記号「ｓ」またはドレインを示す記号「ｄ」を付加して表わし、各トランジスタはソースｓ、ドレインｄによって相互に連結可能に構成する。配線リスト形式３０１はモデルライブラリ３０４のシンボル図形を用いて対応するシンボル図形形式レイアウト３０２に変換する。
【０１５７】
シンボル図形形式レイアウト３０２ではデバイス配置用のメッシュと配線配置用メッシュに整列してトランジスタや配線を配置する。シンボル図形形式レイアウト３０２の状態で編集した後、ＧＤＳ形式等のレイアウト３０３に変換して出力する。これにより、アナログ機能ブロックの設計過程において、アナログレイアウトの観点からアナログ設計の効率改善を図っている。
【０１５８】
また、本発明の実施の形態に係るアナログ機能ブロック設計システムにおいては、デバイス配置用メッシュと細分化された配線配置用メッシュのシンボリックな２重化メッシュ構造を有するシンボリックレイアウトエディタと、Ｆ、Ｍパラメータ指定されたトランジスタ回路を２次元平面に、好ましくは最大２段階に分けて展開させるダイアログウィンドウによる展開制御とを有効に連動させて、アナログ機能ブロックの設計効率、特に差動対回路やカレントミラー回路に見られるような対象性を維持しつつ展開させる場合の設計容易性を高めている。
【０１５９】
またダイアログウィンドウ上にて配列リスト形式を表示しかつ２段階に分けた展開制御を行うことは、データの抽象化を推し進めるとともにＬＳＩの２次元平面設計操作に適した対象性を維持しながら展開する場合をも含めた汎用性のある設計制御手段を提供している。
【０１６０】
またトランジスタネットリストにて指定された対象回路と一致するモデルライブラリをインスタンス名をキーとせずトポロジカルに比較照合し自動的に検索する機能は、Ｆ、Ｍパラメータ指定されたレベルの回路規模を含む大きなアナログ機能マクロブロックに適用できる。まず、指定されたＭについては基本モデルパターンとして配列リストがシンボリックな２重化構造メッシュデータと接続情報まで含めてライブラリとして用意されていて自動照合にて特定させてから、ダイアログウィンドウにより第１展開可能である。加えて、基本モデルパターンのみならず第１展開モデルパターンにおいても自動照合が可能であるのでライブラリ資産化の価値は高い。
【０１６１】
また本実施の形態において使用するシンボリックレイアウトエディタは、Ｆ、Ｍパラメータ操作に有効であるばかりでなくその後のアナログ機能マクロブロックの設計に極めて有効である。
このようにシンボリックなデータ表現を用いているので、テクノロジの変化に対して柔軟に対応でき、かつライブラリ化し資産化する価値も高まる。
【０１６２】
資産化の観点から見れば、本発明が提供するＧＤＳあるいはＯＡＳＹＳ等の標準フォーマットからシンボリックな２重化構造メッシュデータのモデルライブラリに自動変換する手段も有効なツールであり、基本モデルパターンのみでなく、より複雑な第１展開モデルパターンのライブラリ化が可能でその後の第２回展開に利用できる所の資産利用価値は高い。
また、本発明の実施の形態によれば、キーボードやマウス等の入力手段、磁気ディスク装置などの記憶手段、表示手段及びＣＰＵを備えたコンピュータに実行させることによって前記アナログ機能ブロック設計システムを構築するプログラムを提供することができる。
【０１６３】
尚、前記実施の形態では最大２段階に展開する例で説明したが、必要に応じてそれ以上の複数段階に展開するように構成してもよい。
また、デバイスとして、主にＭＯＳトランジスタの例を挙げたが、抵抗やコンデンサ等のデバイスについても、同様に処理することが可能である。
また、モデルパターンを展開する際に指定するパラメータはＦやＭ等に限られず、用途や目的に応じて種々のパラメータを指定することができる。
【０１６４】
また、前記実施の形態では１台のコンピュータを用いてアナログ機能ブロック設計システムを構成するように構成したが、複数のコンピュータを用いて構成するようにしてもよい。
【産業上の利用可能性】
【０１６５】
オペアンプ、ＡＤコンバータ、ＤＡコンバータ等の外部アナログ信号インターフェイスを有するアナログ機能ブロックをはじめ、インバータやフリップフロップ等のように外部デジタル信号インターフェイスを有していても内部動作がアナログ動作を行うような半導体集積回路のアナログ機能ブロックを設計するシステムに利用可能である。
また、コンピュータを前記アナログ機能ブロックを設計するシステムとして機能させるプログラムに利用可能である。
【図面の簡単な説明】
【０１６６】
【図１】本発明の実施の形態に係るアナログ機能ブロック設計システム及びプログラムの処理概要を示す図である。
【図２】本発明の実施の形態に係るアナログ機能ブロック設計システムが処理する設計規模の概要を示す図である。
【図３】本発明の実施の形態における処理を説明する説明図で、配列リスト形式、シンボル図形形式レイアウト及び標準フォーマット形式レイアウトの対応図である。
【図４】本発明の実施の形態に係るアナログ機能ブロック設計システムの基本的な処理手順を示すフローチャートである。
【図５】本発明の実施の形態に係るアナログ機能ブロック設計システムの一部処理手順の詳細を示すフローチャートである。
【図６】本発明の実施の形態に係るアナログ機能ブロック設計システムの一部処理手順の詳細を示すフローチャートである。
【図７】本発明の実施の形態に係るアナログ機能ブロック設計システムの一部処理手順の詳細を示す説明図である。
【図８】本発明の実施の形態に係るアナログ機能ブロック設計システムの一部処理手順の詳細を示すフローチャートである。
【図９】本発明の実施の形態に係るアナログ機能ブロック設計システムの一部処理手順の詳細を示す説明図である。
【図１０】本発明の実施の形態に係るアナログ機能ブロック設計システムのデータ変換処理機能を示す説明図である。
【図１１】本発明の実施の形態に係るアナログ機能ブロック設計システムのデータ変換処理機能を示す説明図である。
【図１２】本発明の実施の形態に係るアナログ機能ブロック設計システムの処理手順の詳細を示すフローチャートである。
【図１３】本発明の実施の形態に係るアナログ機能ブロック設計システムのブロック図である。
【図１４】本発明の実施の形態に係るアナログ機能ブロック設計システムにおいて使用する基本モデルパターンを示す図である。
【図１５】本発明の実施の形態に係るアナログ機能ブロック設計システムにおけるダイアログウィンドウの内容を示す図である。
【図１６】本発明の実施の形態に係るアナログ機能ブロック設計システムにおけるシンボリックレイアウトウインドウの表示を示す図である。
【図１７】本発明の実施の形態に係るアナログ機能ブロック設計システムにおいて基本モデルパターンから第１展開モデルパターンへの展開例を示す図である。
【図１８】本発明の実施の形態に係るアナログ機能ブロック設計システムにおいて第１展開モデルパターンから第２展開モデルパターンへの展開例を示す図である。
【図１９】本発明の実施の形態に係るアナログ機能ブロック設計システムにおいて第１展開モデルパターンから第２展開モデルパターンへの展開例を示す図である。
【図２０】本発明の実施の形態に係るアナログ機能ブロック設計システムにおいて第１展開モデルパターンから第２展開モデルパターンへの展開例を示す図である。
【図２１】本発明の実施の形態に係るアナログ機能ブロック設計システムにおいて第１展開モデルパターンから第２展開モデルパターンへの展開例を示す図である。
【図２２】本発明の実施の形態に係るアナログ機能ブロック設計システムにおいて使用する基本モデルパターンの例を示す図である。
【図２３】本発明の実施の形態に係るアナログ機能ブロック設計システムにおいて基本モデルパターンから第２展開モデルパターンへの展開例を示す図である。
【図２４】本発明の実施の形態に係るアナログ機能ブロック設計システムにおいて使用する配線を含んだ基本モデルシンボル図形形式レイアウトの例である。
【図２５】本発明の実施の形態に係るアナログ機能ブロック設計システムにおいて基本モデルパターンから第２展開モデルパターンへの展開例を示す図である。
【図２６】本発明の実施の形態に係るアナログ機能ブロック設計システムにおけるスイッチ回路の展開例を示す図である。
【図２７】本発明の実施の形態に係るアナログ機能ブロック設計システムにおける差動対回路の展開例を示す図である。
【図２８】本発明の実施の形態に係るアナログ機能ブロック設計システムにおいて展開するカレントミラー回路を示す図である。
【図２９】本発明の実施の形態に係るアナログ機能ブロック設計システムにおけるラッチ回路の展開例を示す図である。
【図３０】本発明の実施の形態に係るアナログ機能ブロック設計システムにおけるラッチ回路の展開例を示す図である。
【図３１】本発明の実施の形態に係るアナログ機能ブロック設計システムにおけるラッチ回路の展開例を示す図である。
【図３２】本発明の実施の形態に係るアナログ機能ブロック設計システムにおける変更処理の態様例を示す図である。
【図３３】本発明の実施の形態に係るアナログ機能ブロック設計システムにおけるフォーマット変換処理を示す図である。
【図３４】本発明の実施の形態に係るアナログ機能ブロック設計システムにおけるフォーマット変換処理を示す図である。
【図３５】従来のアナログ機能ブロック設計システムの処理を説明する図である。
【符号の説明】
【０１６７】
１・・・表示部
２・・・ＣＰＵ
３・・・入力部
４・・・記憶部
５・・・ダイアログウィンドウ
６・・・シンボリックレイアウトウィンドウ
７・・・キーボード
８・・・マウス
９・・・データ記憶部
１０・・・ファイル記憶部
【図１】
0004909230.tif 000002
【図２】
0004909230.tif 000003
【図３】
0004909230.tif 000004
【図４】
0004909230.tif 000005
【図５】
0004909230.tif 000006
【図６】
0004909230.tif 000007
【図７】
0004909230.tif 000008
【図８】
0004909230.tif 000009
【図９】
0004909230.tif 000010
【図１０】
0004909230.tif 000011
【図１１】
0004909230.tif 000012
【図１２】
0004909230.tif 000013
【図１３】
0004909230.tif 000014
【図１４】
0004909230.tif 000015
【図１５】
0004909230.tif 000016
【図１６】
0004909230.tif 000017
【図１７】
0004909230.tif 000018
【図１８】
0004909230.tif 000019
【図１９】
0004909230.tif 000020
【図２０】
0004909230.tif 000021
【図２１】
0004909230.tif 000022
【図２２】
0004909230.tif 000023
【図２３】
0004909230.tif 000024
【図２４】
0004909230.tif 000025
【図２５】
0004909230.tif 000026
【図２６】
0004909230.tif 000027
【図２７】
0004909230.tif 000028
【図２８】
0004909230.tif 000029
【図２９】
0004909230.tif 000030
【図３０】
0004909230.tif 000031
【図３１】
0004909230.tif 000032
【図３２】
0004909230.tif 000033
【図３３】
0004909230.tif 000034
【図３４】
0004909230.tif 000035
【図３５】
0004909230.tif 000036