(57)【要約】【課題】  複数の回路デザイン間におけるインクルード処理により、各レイヤが合成されたパターンデータにおいて、それぞれの回路デザインに属する回路レイアウトパターンにおける各レイヤの判別が行えるＬＳＩレイアウト装置を提供する。【解決手段】  本発明は、回路レイアウトパターンのパターンデータを記憶するレイアウトデータベースと、読み込まれたパターンデータを記憶するエディティングバッファと、回路デザイン毎に設けられた、パターンデータの記憶されたエディティングバッファを示すデザイン情報が記憶されたデザインテーブルと、表示する回路レイアウトパターンのディスプレイ情報を記憶するディスプレイテーブルと、デザイン情報から回路レイアウトパターンのレイヤをエディティングバッファから読み出し、この各レイヤのパターンデータを表示する表示部とを有し、各レイヤ単位に識別情報を付与するLSIレイアウト装置である。【選択図】    図１
2005338916.tif 000002
【特許請求の範囲】
【請求項１】
異なる回路デザインに属する回路レイアウトパターンを用い、ＬＳＩのレイアウトパターン設計を行う際、該回路レイアウトパターンを構成する各レイヤのパターンデータの表示及び編集を行うＬＳＩレイアウト装置であって、
前記回路レイアウトパターンを構成する各レイヤのパターンデータが、回路デザイン毎に記憶されるレイアウトデータベースと、
表示画面に表示される際、前記レイアウトデータベースから読み込まれる該回路レイアウトパターンを記憶するエディティングバッファと、
前記回路デザイン毎に設けられ、回路レイアウトパターンが記憶されている前記エディティングバッファのアドレス情報を含むデザイン情報が記憶されたデザインテーブルと、
前記表示画面に対応し、該表示画面に表示する回路レイアウトパターンを示すディスプレイ情報が記憶されたディスプレイテーブルと、
前記ディスプレイ情報を参照して、所定の回路レイアウトパターンのレイヤを各エディティングバッファから、前記デザイン情報により読み出し、この各レイヤのパターンデータを前記表示画面に表示する表示部と
を有し、
いずれの回路デザインに含まれるかを示す識別情報を、該各レイヤ単位に付与することを特徴とするＬＳＩレイアウト装置。
【請求項２】
前記デザインテーブル毎に対応して設けられ、前記各レイヤを示すレイヤ番号及びエディティングバッファのアドレスを含むレイヤバッファ情報が記憶されたバッファヘッダテーブルと、
前記ディスプレイテーブルに対応して設けられ、前記レイヤ番号を含む、前記各回路レイアウトパターンを表示画面上に表示するために必要な表示情報が記憶されたディスプレイヘッダテーブルと
を有し、
ディスプレイテーブルのディスプレイ情報により、表示画面上に各レイヤを表示する際、前記ディスプレイヘッダテーブルに記憶された前記レイヤ番号に対応するレイヤのパターンデータを、前記バッファヘッダテーブルを介して、前記エディティングテーブルから読み出すことを特徴とする請求項１に記載のＬＳＩレイアウト装置。
【請求項３】
前記ディスプレイテーブルを複数有し、該ディスプレイテーブル毎に対応してディスプレイヘッダテーブルを設けることを特徴とする請求項２記載のＬＳＩレイアウト装置。
【請求項４】
前記識別情報が各レイヤのレイヤ番号に付加される所定の文字または数字で表されることを特徴とする請求項１から請求項３のいずれかに記載のＬＳＩレイアウト装置。
【請求項５】
異なる回路デザインに属する回路レイアウトパターンを用い、ＬＳＩのレイアウトパターン設計を行う際、該回路レイアウトパターンを構成する各レイヤのパターンデータの表示及び編集を行うＬＳＩレイアウト方法であって、
前記回路レイアウトパターンを構成するレイヤのパターンデータが回路デザイン毎に対応して、レイアウトデータベースに記憶する記憶過程と、
表示画面に表示される際、前記レイアウトデータベースから読み込まれる該回路レイアウトパターンをエディティングバッファに記憶するバッファ過程と、
前記回路デザイン毎に設けられ、回路レイアウトパターンが記憶されている前記エディティングバッファのアドレス情報を含むデザイン情報を、デザインテーブルに記憶するデザインテーブル記憶過程と、
前記表示画面に対応し、該表示画面に表示する回路レイアウトパターンを示すディスプレイ情報を、ディスプレイテーブルに記憶するディスプレイテーブル記憶過程と、
前記ディスプレイ情報を参照して、所定の回路レイアウトパターンのレイヤを各エディティングバッファから、前記デザイン情報により読み出し、この各レイヤのパターンデータを前記表示画面に表示する表示過程と
を有し、
いずれの回路デザインに含まれるかを示す識別情報を、該各レイヤ単位に付与することを特徴とするＬＳＩレイアウト方法。
【請求項６】
前記デザインテーブル毎に対応して設けられ、前記各レイヤを示すレイヤ番号及びエディティングバッファのアドレスを含むレイヤバッファ情報をバッファヘッダテーブルへ記憶するバッファヘッダテーブル記憶過程と、
前記ディスプレイテーブルに対応して設けられ、前記レイヤ番号を含む、前記各回路レイアウトパターンを表示画面上に表示するために必要な表示情報を、ディスプレイヘッダテーブルへ記憶するディスプレイヘッダテーブル記憶過程と
を有し、
ディスプレイテーブルのディスプレイ情報により、表示画面上に各レイヤを表示する際、前記ディスプレイヘッダテーブルに記憶された前記レイヤ番号に対応するレイヤのパターンデータを、前記バッファヘッダテーブルを介して、前記エディティングテーブルから読み出すことを特徴とする請求項５に記載のＬＳＩレイアウト方法。
【請求項７】
異なる回路デザインに属する回路レイアウトパターンを用い、ＬＳＩのレイアウトパターン設計を行う際、該回路レイアウトパターンを構成する各レイヤのパターンデータの表示及び編集を行うＬＳＩレイアウト処理を、コンピュータに実行させるプログラムであって、
前記回路レイアウトパターンを構成するレイヤのパターンデータが回路デザイン毎に対応して、レイアウトデータベースに記憶する記憶処理と、
表示画面に表示される際、前記レイアウトデータベースから読み込まれる該回路レイアウトパターンをエディティングバッファに記憶するバッファ処理と、
前記回路デザイン毎に設けられ、回路レイアウトパターンが記憶されている前記エディティングバッファのアドレス情報を含むデザイン情報を、デザインテーブルに記憶するデザインテーブル記憶処理と、
前記表示画面に対応し、該表示画面に表示する回路レイアウトパターンを示すディスプレイ情報を、ディスプレイテーブルに記憶するディスプレイテーブル記憶処理と、
前記ディスプレイ情報を参照して、所定の回路レイアウトパターンのレイヤを各エディティングバッファから、前記デザイン情報により読み出し、この各レイヤのパターンデータを前記表示画面に表示する表示処理と
を有し、
いずれの回路デザインに含まれるかを示す識別情報を、該各レイヤ単位に付与することを特徴とするコンピュータ実行可能なＬＳＩレイアウトプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＬＳＩ（大規模集積回路）を設計する際に用いられるＬＳＩレイアウト装置及びそのレイアウト方法並びにレイアウトプログラムに関する。
【背景技術】
【０００２】
通常、ＬＳＩを製造するとき、ＬＳＩの仕様決定から量産に入るまで、仕様に基づく基本設計，ハードウェア記述言語におけるＲＴＬ（Register Transfer Level）による回路構成記述、ハードウェア記述言語レベルでの論理合成、合成された回路の論理検証、この合成回路のマスクパターン作成を行うレイアウトパターン設計、作成されたマスクによる試作、試作後の量産、量産品のテスティングなどの順に、複数の処理が行われる。
ＬＳＩの製造工程においては、回路機能を構成する複数の素子を、上記マスクを用いてシリコン等の基板上に形成する。
また、ＬＳＩの設計において、素子構造を形成するレイアウトパターン設計は、比較的自動化が進んでおり、ほぼ実用レベルに達している。
【０００３】
通常、自動設計ツールにおいては、論理合成された回路に対応するレイアウトパターンが、回路レイアウト情報として、予めレイアウトデータベースとして準備されている。
そして、以下に示す特許文献１〜３には、上述したレイアウトデータベースを作成したり、このレイアウトデータベースを用いてレイアウトパターン設計を行うＬＳＩレイアウト装置が記載されている。
【特許文献１】特開平０９−２３７８３９号公報
【特許文献２】特開平１１−２９７８３６号公報
【特許文献３】特開２０００−３１４９５４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上述したレイアウトデータベースは、所定の機能デバイス、すなわち回路デザインにおける回路レイアウトパターンによるレイヤのセットから構成されている。
ここで、複数の機能デバイスを複数、例えば２種類を組み合わせて１つのＬＳＩを構成しようとする際、両者の接続作業を行うために、２種のレイアウトデータベース（例えば、レイヤセットＡ及びレイヤセットＢ）に属する、各々のレイヤのパターンデータを、同時に表示装置に表示する必要がある。
従来のＬＳＩレイアウト装置においては、編集処理において、例えば、レイヤセットＡにおけるレイヤのパターンデータが、エディティングバッファに読み込まれ、次に、レイヤセットＢにおけるレイヤのパターンデータが読み込まれ、エディティングバッファにおいて、レイヤセットＡのパターンデータに対して、レイヤセットＢのパターンデータが上書きされ、２つのレイアウトセットのパターンデータが混在したものとなる。
【０００５】
すなわち、エディティングバッファにおいて、レイヤセットＡに対して、レイヤセットＢのパターンデータがインクルードされた状態となる。
これにより、エディティングバッファにおいて混在したレイアウトパターンが、装置の表示装置に表示されることとなる。
ここで、エディティングバッファとは、表示画面上においてレイアウトパターンの編集を行う際、編集対象のレイアウトデータベースの各レイヤのパターンデータを一時的に保持する記憶部である。
【０００６】
しかしながら、従来のＬＳＩレイアウト装置においては、レイアウトパターンのレイヤが同一のレイヤ番号を有する場合、エディティングバッファにおいて、レイヤセットＡとレイヤセットＢとの各レイヤのパターンデータが混在してしまうこととなり、混在後のレイアウトパターンがいずれのレイヤセットに属するかを、データ的に区別できなくなる。
したがって、従来のＬＳＩレイアウト装置においては、作業の取り消しを行うアンドゥ機能を有しているが、一端、インクルードが行われたエディティングバッファでのレイアウトデータベースに対して、元に戻すための分離を行うことができない。
【０００７】
このため、従来のＬＳＩレイアウト装置においては、異なったレイアウトセットを間違ってインクルードしてしまったり、任意のレイアウトセットに対してインクルードが複数回実行されたりしたとき、エディティングバッファの内容が次々に更新されてしまい、初期の状態に戻すことができなくなり、容易に、編集の処理をやり直すことができなくなるという問題があった。
本発明は、このような事情に鑑みてなされたもので、複数の回路デザイン間におけるインクルード処理により、複数の回路デザインのレイヤが合成されたパターンデータにおいて、それぞれの回路デザインに属するレイヤのパターンデータの識別ができるＬＳＩレイアウト装置及びそのレイアウト方法並びにレイアウトプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明は、異なる回路デザインに属する回路レイアウトパターンを用い、ＬＳＩのレイアウトパターン設計を行う際、該回路レイアウトパターンを構成する各レイヤのパターンデータの表示及び編集を行うＬＳＩレイアウト装置であって、前記回路レイアウトパターンを構成する各レイヤのパターンデータが、回路デザイン毎に記憶されるレイアウトデータベース（例えば、一実施形態におけるレイアウトデータベース１１）と、表示画面に表示される際、前記レイアウトデータベースから読み込まれる該回路レイアウトパターンを記憶するエディティングバッファ（例えば、一実施形態におけるエディティングバッファ２５）と、前記回路デザイン毎に設けられ、回路レイアウトパターンが記憶されている前記エディティングバッファのアドレス情報を含むデザイン情報が記憶されたデザインテーブル（例えば、一実施形態におけるデザインテーブル２４）と、前記表示画面に対応し、該表示画面に表示する回路レイアウトパターンを示すディスプレイ情報が記憶されたディスプレイテーブル（例えば、一実施形態におけるディスプレイテーブル２２）と、前記ディスプレイ情報を参照して、所定の回路レイアウトパターンのレイヤを各エディティングバッファから、前記デザイン情報により読み出し、この各レイヤのパターンデータを前記表示画面に表示する表示部（例えば、一実施形態における表示部４）とを有し、前記エディティングバッファに、前記回路レイアウトパターンの各レイヤを格納する際、いずれの回路デザインに含まれるかを示す識別情報を、該各レイヤ単位に付与することを特徴とするＬＳＩレイアウト装置である。
【０００９】
本発明は、異なる回路デザインに属する回路レイアウトパターンを用い、ＬＳＩのレイアウトパターン設計を行う際、該回路レイアウトパターンを構成する各レイヤのパターンデータの表示及び編集を行うＬＳＩレイアウト方法であって、前記回路レイアウトパターンを構成するレイヤのパターンデータが回路デザイン毎に対応して、レイアウトデータベースに記憶する記憶過程（例えば、一実施形態におけるステップＳ０）と、表示画面に表示される際、前記レイアウトデータベースから読み込まれる該回路レイアウトパターンをエディティングバッファに記憶するバッファ過程（例えば、一実施形態におけるステップＳ７，Ｓ８）と、前記回路デザイン毎に設けられ、回路レイアウトパターンが記憶されている前記エディティングバッファのアドレス情報を含むデザイン情報を、デザインテーブルに記憶するデザインテーブル記憶過程（例えば、一実施形態におけるステップＳ３〜Ｓ６）と、前記表示画面に対応し、該表示画面に表示する回路レイアウトパターンを示すディスプレイ情報を、ディスプレイテーブルに記憶するディスプレイテーブル記憶過程（例えば、一実施形態におけるステップＳ９〜Ｓ１４）と、前記ディスプレイ情報を参照して、所定の回路レイアウトパターンのレイヤを各エディティングバッファから、前記デザイン情報により読み出し、この各レイヤのパターンデータを前記表示画面に表示する表示過程（例えば、一実施形態におけるステップＳ１７，１８）とを有し、前記エディティングバッファに、前記回路レイアウトパターンの各レイヤを格納する際、いずれの回路デザインに含まれるかを示す識別情報を、該各レイヤ単位に付与することを特徴とするＬＳＩレイアウト方法である。
【００１０】
本発明は、異なる回路デザインに属する回路レイアウトパターンを用い、ＬＳＩのレイアウトパターン設計を行う際、該回路レイアウトパターンを構成する各レイヤのパターンデータの表示及び編集を行うＬＳＩレイアウト処理を、コンピュータに実行させるプログラムであって、前記回路レイアウトパターンを構成するレイヤのパターンデータが回路デザイン毎に対応して、レイアウトデータベースに記憶する記憶処理（例えば、一実施形態におけるステップＳ０）と、表示画面に表示される際、前記レイアウトデータベースから読み込まれる該回路レイアウトパターンをエディティングバッファに記憶するバッファ処理（例えば、一実施形態におけるステップＳ７，Ｓ８）と、前記回路デザイン毎に設けられ、該回路レイアウトパターンが記憶されている前記エディティングバッファのアドレス情報を含むデザイン情報を、デザインテーブルに記憶するデザインテーブル記憶処理（例えば、一実施形態におけるステップＳ３〜Ｓ６）と、前記表示画面に対応し、該表示画面に表示する回路レイアウトパターンを示すディスプレイ情報を、ディスプレイテーブルに記憶するディスプレイテーブル記憶処理（例えば、一実施形態におけるステップＳ９〜Ｓ１４）と、前記ディスプレイ情報を参照して、所定の回路レイアウトパターンのレイヤを各エディティングバッファから、前記デザイン情報により読み出し、この各レイヤのパターンデータを前記表示画面に表示する表示処理（例えば、一実施形態におけるステップＳ１７，１８）とを有し、前記エディティングバッファに、前記回路レイアウトパターンの各レイヤを格納する際、いずれの回路デザインに含まれるかを示す識別情報を、該各レイヤ単位に付与することを特徴とするコンピュータ実行可能なＬＳＩレイアウトプログラムである。
【００１１】
上述した構成により、本発明のＬＳＩレイアウト装置、その方法及びそのプログラムは、任意の回路レイアウトパターンに対して、他の回路レイアウトパターンをインクルードしたとき、回路デザイン毎の識別情報が各レイヤに付与されていることにより、上記任意の回路レイアウトパターンの各レイヤが同一のレイヤ番号を有していたとしても、それぞれ異なったエディティングバッファに書き込まれるため、合成された状態で表示されたとしても、実質的に異なる回路レイアウトパターンが一つのエディテイングバッファで合成されているわけではないので、回路デザイン毎に各レイヤのパターンデータを容易に認識することができる。
これにより、本発明のＬＳＩレイアウト装置、その方法及びそのプログラムは、編集の結果をレイアウトデータベースに戻す際、各レイヤに付与されている上記識別情報を参照して、各回路デザインに対応する各レイヤのパターンデータを、エディティングバッファから読み出し、各レイヤのパターンデータを対応するレイアウトデータベースに書き込むことが可能となり、従来のように、複数の回路デザインのパターンデータを合成させてしまい、初期状態に戻すことが出来ないような破壊的な編集操作を、レイアウトデータベースに対して行うことを防止することができる。
【００１２】
また、本発明は、前記デザインテーブル毎に対応して設けられ、前記各レイヤを示すレイヤ番号及びエディティングバッファのアドレスを含むレイヤバッファ情報が記憶されたバッファヘッダテーブル（例えば、一実施形態におけるエディティングバッファヘッダ２１）と、前記ディスプレイテーブルに対応して設けられ、前記レイヤ番号を含む、前記各回路レイアウトパターンを表示画面上に表示するために必要な表示情報が記憶されたディスプレイヘッダテーブル（例えば、一実施形態におけるディスプレイヘッダ２３）とを有し、ディスプレイテーブルのディスプレイ情報により、表示画面上に各レイヤを表示する際、前記ディスプレイヘッダテーブルに記憶された前記レイヤ番号に対応するレイヤのパターンデータを、前記バッファヘッダテーブルを介して、前記エディティングテーブルから読み出すことを特徴とするＬＳＩレイアウト装置である。
【００１３】
本発明は、前記デザインテーブル毎に対応して設けられ、前記各レイヤを示すレイヤ番号及びエディティングバッファのアドレスを含むレイヤバッファ情報をバッファヘッダテーブルへ記憶するバッファヘッダテーブル記憶過程（例えば、一実施形態におけるステップＳ５，Ｓ６）と、前記ディスプレイテーブルに対応して設けられ、前記レイヤ番号を含む、前記各回路レイアウトパターンを表示画面上に表示するために必要な表示情報を、ディスプレイヘッダテーブルへ記憶するディスプレイヘッダテーブル記憶過程（例えば、一実施形態におけるステップＳ１３，Ｓ１４）とを有し、ディスプレイテーブルのディスプレイ情報により、表示画面上に各レイヤを表示する際、前記ディスプレイヘッダテーブルに記憶された前記レイヤ番号に対応するレイヤのパターンデータを、前記バッファヘッダテーブルを介して、前記エディティングテーブルから読み出すことを特徴とするＬＳＩレイアウト方法である。
上述した構成により、本発明のＬＳＩレイアウト装置及びその方法は、上述した構成により、回路レイアウトパターン毎にレイヤのエディティングバッファを、各レイアウトデータベース及び表示画面単位で独立に管理することが可能となり、各レイヤが属する回路レイアウトパターンに関係なく、容易に、表示画面に表示するレイヤを選択することができる。
【００１４】
また、本発明は、前記ディスプレイテーブルを複数有し、該ディスプレイテーブル毎に対応してディスプレイヘッダテーブルを設けることを特徴とするＬＳＩレイアウト装置である。
上述した構成により、本発明のＬＳＩレイアウト装置は、装置のディスプレイに、複数の表示画面（ウインドウ）を表示する際、各表示画面を独立に管理することが可能となり、各表示画面に表示する各レイヤの属する回路レイアウトパターンに関係なく、容易に、表示画面に表示するレイヤを選択することができる。
【００１５】
また、本発明は、前記識別情報が各レイヤのレイヤ番号に付加される所定の文字または数字で表されることを特徴とするＬＳＩレイアウト装置である。
上述した構成により、本発明のＬＳＩレイアウト装置は、予め設定された回路デザインを識別する識別情報を、元のレイヤ番号に対するオア演算等により、容易に付加することが可能となり、識別番号の付与を容易に行うことができ、かつエディティングバッファにおいて各レイヤの判別処理を簡易な手段により行うことができる。
【発明の効果】
【００１６】
以上説明したように、本発明によれば、レイアウトデータベースから読み出した各回路パターンにおける各レイヤのパターンデータを、エディティングバッファに記憶させる際、各レイヤ単位にいずれの回路デザインに含まれるかを示す識別番号を付与するので、編集の結果をレイアウトデータベースに戻す際、各レイヤに付与されている上記識別情報を参照して、各回路デザインに対応する各レイヤのパターンデータを、エディティングバッファから読み出し、各レイヤのパターンデータを対応する回路デザインのレイアウトデータベースに書き込むことが可能となる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の一実施形態によるＬＳＩレイアウト装置を図面を参照して説明する。図１は同実施形態の一構成例を示すブロック図である。
この図において、ＬＳＩレイアウト装置は、主記憶部１とＬＳＩレイアウト部６とから構成されている。主記憶部１には、回路デザイン毎に対応し、各回路デザインに属する回路レイアウトパターンを含む回路レイアウト情報が格納された複数のレイアウトデータベース１１が設けられている。
ここで、回路デザインとは、例えば、製造工程において同一の加工寸法で製造可能、すなわちマスクデザインルール等が同様な、メモリ回路やロジック回路のライブラリで別々に設計された、所定の機能を有する回路の設計情報（例えば、ハードマクロやソフト・マクロの各レイアウト階層（レイヤ）におけるレイアウトパターン情報）である。
【００１８】
また、ＬＳＩレイアウト部６は、補助記憶部２，制御部３及び表示部４とから構成されている。
記補助記憶部２には、エディティングバッファヘッダ２１，ディスプレイヘッダ２３，ディスプレイテーブル２２，デザインテーブル２４，及びエディティングバッファ２５等の記憶領域を有している。これらの記憶領域各々には、ユーザが異なる複数の回路デザインに属する回路レイアウトパターンを用い、これらを組み合わせて、ＬＳＩの回路レイアウトパターンの編集操作を行うとき、この編集操作に基づき、制御部３が各回路レイアウトパターンの編集処理や表示部５への表示処理を行う場合に用いる、各回路レイアウトパターンの管理をする管理データが記憶されている。
【００１９】
エディティングバッファ２５は、各回路レイアウトパターンに対応し、レイヤ毎に設けられ、各レイヤのパターンデータが記憶されている。
ここで、デザインテーブル２４の示す回路レイアウトパターンにおける各レイヤのパターンデータと、各エディティングバッファ２５内のレイヤのパターンデータとは、図２に示すように、エディティングバッファヘッダ２１により対応付けられている。
すなわち、デザインテーブル２４は、図２に示すように、上述したエディティングバッファヘッダアドレスを含めて、この回路デザインのデザイン名、初期作成者名、最終変更者名、初期作成日、最終変更日、最大レイヤ層数、全体のメモリ使用領域などのデザイン情報を有している。
ここで、デザインテーブル２４に記載されているエディティングバッファヘッダアドレスが、このデザインテーブル２４に記載された回路デザインの回路レイアウトパターンにおける各レイヤに対応するエディティングバッファヘッダ２１のアドレスを示している。
また、エディティングバッファヘッダ２１には、エディティングバッファ２５に読み込まれた回路レイアウトパターンの各レイヤに対して、１対１に対応するレイヤバッファ情報がエントリー単位に記憶されている。
【００２０】
ここで、回路レイアウトパターンが「poly」，「n-well」，「p-well」，「contact」，「diff p+」，「diff n+」，「via-1」，「via-2」，「metal-2」及び「metal-3」の名称の各レイヤのパターンデータから構成されている場合、上記エントリーはこれらの各レイヤ（製造工程においてフォトリソグラフィに用いられる各マスクに対応するマスクレイヤ）に１対１で対応し、かつレイヤ番号も上記レイヤ名にリンクされている（関連づけられている）。
このエントリーは、図２に示すように、エントリーフィールドにおいて、いずれの回路デザインに属するかを示すデザイン番号，レイヤの名称，レイヤ番号，及びこのエントリーに対応するレイヤのパターンデータが記憶されるエディティングバッファ２５の先頭アドレス等のレイヤバッファ情報を有している。
【００２１】
制御部３は、主記憶部１から読み出した回路レイアウトパターンを、エディティングバッファ２５へ各回路レイアウトパターンににおけるレイヤ毎に対応して書き込むとき、デザインテーブル２４及びエディティングバッファヘッダ２１を形成する。
また、制御部３は、エディティングバッファヘッダ２１の各エントリーフィールドにおいて、レイヤ番号を書き込むとき、このレイヤがいずれの回路デザインに属するかの識別情報として、所定の数値または文字の識別子を、レイヤ番号に付与する。
すなわち、図３に示す回路デザインＡ及びＢように、回路デザインの回路レイアウトパターンにおいて、レイアウト装置は慣習的に、レイアウトパターンにおける各レイヤ番号を割り当てており、同様のレイヤの種類に対して同一の数字が用いられる場合が多い。
【００２２】
例えば、レイヤ名「poly」のレイヤ番号は回路デザインＡ及びＢともに「１０１」の同一のレイヤ番号が用いられているとき、回路デザインＡとＢとを用いてレイアウトパターンの編集を行う場合、回路デザインＡの回路レイアウトパターンを先に読み込み、後に、この回路レイアウトパターンに対して、回路デザインＢの回路レイアウトパターンをインクルード処理する。
これにより、表示画面においては、回路デザインＡの回路レイアウトパターンにおけるレイヤ番号「１０１」と、回路デザインＢの回路レイアウトパターンにおけるレイヤ番号「１０１」との、同一のレイヤ番号同士のパターンデータが混在した状態となる。
【００２３】
このとき、制御部３は、エディティングバッファヘッダ２１におけるエントリーフィールドに各レイヤ番号を書き込む際、このレイヤ番号に対して、上述したように識別子として、所定の数値または文字を論理和演算（オア演算）し、新たにレイヤ識別番号を生成し、このレイヤ識別番号をエントリーフィールドへ書き込む。ここで、論理和演算される所定の数値または文字が回路デザインを識別する識別子となる。
識別子としての所定の数値は、主記憶部１におけるレイアウトデータベース１１で用いられている本来のレイヤ番号より桁数の大きい数値を用い、オア演算を行った場合に、本来のレイヤ番号の各桁の数値を変化させないものが管理を容易とする。
また、識別子としての所定の文字も、オア演算により、レイヤ番号の最下位桁の後ろに付加（「１０１Ａ」）し、またはレイヤ番号の最上位桁の上に付加（「Ａ１０１」）しても良い。
また、制御部３は、回路デザインのデザイン名またはデザイン番号と、この回路デザインに付加した識別子との対応関係を、補助記憶部２に設けられた対応テーブル５に書き込む。
【００２４】
図１に戻り、表示部４は、ディスプレイテーブル２２毎に表示画面（ウィンドウ）を生成し、この各表示画面において、このディスプレイテーブル２２に示されたディスプレイヘッダ２３を参照し、このディスプレイヘッダ２３に記載されている単数または複数のエディティングバッファ２５に格納されているパターンデータを表示する。
上記ディスプレイテーブル２２は、表示部４における表示画面毎に作成され、図４に示すように、上述したディスプレイヘッダアドレスを含めて、表示画面の名称（例えば、図５における表示画面４−１）であるディスプレイ名、この表示画面の初期作成者、初期作成日、最終変更日、最大レイヤ数、全体のメモリ使用領域などのディスプレイ情報を有している。ここで、ディスプレイテーブル２２の示す回路レイアウトパターンの各レイヤと、この表示部４における表示画面単位におけるレイヤとは、図４に示すように、ディスプレイヘッダ２３により１対１に対応付けられている。
【００２５】
すなわち、ディスプレイテーブル２２に記載されているディスプレイヘッダアドレスが、対応する表示画面単位に表示されるレイヤを管理するディスプレイヘッダ２３のアドレスを示している。このディスプレイヘッダ２３には、表示対象の表示画面に表示される各レイヤに１対１に対応して、表示情報を示すエントリーが記憶されている。
このエントリーは、図４に示すように、各エントリーフィールドにおいて、上述したディスプレイヘッダアドレスだけでなく、いずれのレイヤかを示すレイヤ番号，このレイヤを表示するときの色を示す表示の色、レイアウトパターンの柄を示す表示のパターン、表示の優先順位を示す表示順、表示を行うか否かを示す表示のイネーブル、このレイアウトパターンの表示位置を示す表示の座標、及び表示するときの回転角度を示す表示の回転等の情報を有している。
【００２６】
次に、図１，図５及び図６を参照して、本発明の一実施形態によるＬＳＩレイアウト装置の一動作例を説明する。図５は、２つの異なる表示画面を表示部４に表示する場合において、各表示画面毎のエディティングバッファヘッダ２１とディスプレイヘッダ２３との関連を説明する概念図である。図６は、上記ＬＳＩレイアウト装置の画面処理の流れを示すシーケンス図である。
ここで、主記憶部１における異なったデバイスのレイアウトデータベース１１から、各々回路デザインＡ及びＢの回路レイアウトパターンを読み出し、表示部４に表示される２つの表示画面において、回路デザインＡ及びＢ各々のレイヤを、それぞれの表示画面毎に合成して表示する場合を、動作例として説明する。また、回路デザインＡをメモリデバイスとし、回路デザインＢをロジックデバイスとする。
予め主記憶部１には、所望のＬＳＩのレイアウト設計に必要な回路デザインが、ユーザにより外部から入力されて予め格納される（ステップＳ０）。
【００２７】
ユーザが回路デザインＡの配線を、回路デザインＢの配線に対応させ、両者を複合して新たなデバイス設計を行うために、回路レイアウトパターンを読み出す処理を行う読出命令を入力する。
これにより、制御部３は、編集対象の回路デザインＡと、この回路デザインＡに対してインクルード処理を行う回路デザインＢとを、主記憶部１のそれぞれのレイアウトデータベース１１から読み出す（ステップＳ１，Ｓ２）。
そして、制御部３は、上記読出命令により、レイアウトデータベース１１から、回路デザインＡ及びＢ各々のデザイン名、初期作成者名、最終変更者名、初期作成日、最終変更日、最大レイヤ層数、全体のメモリ使用領域を含むデザイン情報を読み出し、デザイン回路Ａのデザインテーブル２４−１と、デザイン回路Ｂのデザインテーブル２４−２とを、補助記憶部２に生成する（ステップＳ３，Ｓ４）。
【００２８】
次に、制御部３は、補助記憶部２において、回路デザインＡに対応して、回路デザインＡの回路レイアウトパターンを記憶させるエディティングバッファ２５−１に対応したエディティングバッファヘッダ２１−１を生成し（ステップＳ５）、同様に、回路デザインＢに対応して、回路デザインＡの回路レイアウトパターンを記憶させるエディティングバッファ２５−２に対応したエディティングバッファヘッダ２１−２を生成する（ステップＳ６）。
この時点において、制御部３は、生成したエディティングバッファヘッダ２１−１及び２１−２各々のエディティングバッファヘッダアドレスを、デザインテーブル２４−１，２４−２それぞれへ書き込む。
【００２９】
エディティングバッファヘッダ２１−１は、エディティングバッファ２５−１の各レイヤに対応した領域毎のエントリーに回路デザインＡのレイヤバッファ情報が記憶されており、回路デザインＡの回路レイアウトパターンにおける各レイヤ番号と、このレイヤのパターンデータが記憶されているエディティングバッファ２５−１の領域とを関連づけている。
同様に、エディティングバッファヘッダ２１−２は、エディティングバッファ２５−２の各レイヤに対応した領域毎のエントリーに回路デザインＢのレイヤバッファ情報が記憶されており、回路デザインＢの回路レイアウトパターンにおける各レイヤ番号と、このレイヤのパターンデータが記憶されているエディティングバッファ２５−２の領域とを関連づけている。
【００３０】
ここで、制御部３は、各レイヤ番号に対して、識別子として所定の数値を付与する。
すなわち、制御部３は、そのレイアウトデータベース１１内の回路レイアウトパターンにおける各レイヤを編集する際、エディティングバッファヘッダ２１を生成する時点において、本来持つレイヤ番号に識別子としての数値を加算して、新たにレイヤ識別番号として管理する。
この結果、このレイヤ識別番号は、レイヤ番号としての本来の意義はなくなり、ＬＳＩレイアウト装置が内部的に、レイヤのパターンデータを管理する管理番号としての意味を有することになる。
このとき、例えば、レイアウトデータベース１１における回路デザインが本来特つレイヤ番号を１０００の桁の範囲内で設定しておき、識別する識別子としての数値を１００００の桁以上の範囲で設定しておく。
【００３１】
これにより、回路デザインＡに対応するエディティングバッファヘッダ２１−１を生成する際、図３に示すように、回路デザインＡの回路レイアウトパターンが元来持つレイヤ番号に対し、回路デザインＡを示す識別子として、５００００を論理和演算（または加算）し、５０１０１から始まるレイヤ識別番号に変換している。
同様に、制御部３は、回路デザインＢに対応するエディティングバッファヘッダ２１−２を生成する際、図３に示すように、回路デザインＢの回路レイアウトパターンが元来持つレイヤ番号に対し、回路デザインＢを示す識別子として、６００００を論理和演算し、６０１０１から始まるレイヤ識別番号に変換している。
このとき、制御部３は、対応テーブル５に、回路デザインＡと識別子５００００との対応関係、及び回路デザインＢと識別子６００００との対応関係を書き込む。
【００３２】
従来の場合、同一番号のレイヤが上書きされたものは、同一のエディティングバッファにおいて混合されてしまうため、回路デザインＡのものか、回路デザインＢのものかの区別はつかなくなる。
そのため、上述したように、ＬＳＩレイアウト装置が異なる回路デザインを複数用いて編集作業を行う場合、もともとのレイヤ番号を管理するのではなく、一旦、回路デザインを識別できる別のレイヤ識別番号に変換し、異なるエディティングバッファに記憶させて管理するようにする。
これにより、異なる回路デザインにおける同様のレイヤを、同一のレイヤ番号により管理することがなくなるので、上述したように同一のエディティングバッファに記憶されず、破壊的な編集がなされることが無くなる。
そして、編集される回路デザインＡ及びＢの回路レイアウトパターンが、表示部４の表示画面において合成されて表示された後にも、異なる回路レイアウトパターンにおける各々のレイヤのパターンデータの区別を付けることが可能となる。
【００３３】
次に、制御部３は、主記憶部１１の回路デザインＡのレイアウトデータベース１１から、回路デザインＡの回路レイアウトパターンにおける各レイヤのパターンデータを読み出し、エディティングバッファヘッダ２１−１の各エントリーのエディティングバッファアドレスに対応させて、エディティングバッファ２５−１の所定の領域に、読み出したレイヤのデータを書き込む（ステップＳ７）。
同様に、制御部３は、主記憶部１１の回路デザインＢのレイアウトデータベース１１から、回路デザインＢの回路レイアウトパターン各々のレイヤのデータを読み出し、エディティングバッファヘッダ２１−２の各エントリーのエディティングバッファアドレスに対応させて、エディティングバッファ２５−２の所定の領域に、読み出したレイヤのデータを書き込む（ステップＳ８）。
【００３４】
次に、ユーザが、表示画面４−１と、表示画面４−２とを、表示部４に表示する表示命令を、ＬＳＩレイアウト装置に入力する（ステップＳ９，Ｓ１０）。
これにより、制御部３は、上記表示命令により、ユーザが入力する、表示画面の名称であるディスプレイ名，初期作成者名，最終変更者名，初期作成日，最終変更日，最大レイヤ層数，全体のメモリ使用領域等に基づき、また、画面１のディスプレイテーブル２２−１と、画面２のディスプレイテーブル２２−２とを、補助記憶部２に生成する（ステップＳ１１，Ｓ１２）。
【００３５】
そして、制御部３は、補助記憶部２において、表示画面４−１に表示させるレイヤの情報を記憶するディスプレイヘッダ２３−１を生成し、同様に、表示画面４−２に表示させるレイヤの情報を記憶させるディスプレイヘッダ２３−２を生成する。
また、制御部３は、生成したディスプレイヘッダ２３−１及び２３−２のディスプレイヘッダアドレスを、ディスプレイテーブル２２−１，２２−２各々へ書き込む。
ここで、ユーザにより、表示部４に表示された回路デザインＡ及びＢ各々の回路レイアウトにおけるレイヤ一覧表から、表示画面４−１及び表示画面４−２に表示するレイヤが選択される。
これにより、制御部３は、ユーザが入力する表示画面４−１及び表示画面４−２に各々表示するレイヤの表示情報を、それぞれディスプレイヘッダ２３−１及び２３−２における各エントリーの領域に書き込む。
【００３６】
ここで、回路デザインＡの回路レイアウトパターンにはレイヤＡ１〜Ａ７があり、回路デザインＢの回路レイアウトパターンにはレイヤＢ１〜Ｂ７があるとする。
そして、ユーザが、回路デザインＡのメモリデバイスと回路デザインＢのロジックデバイスとの各配線層の接続位置を編集するため、回路デザインＡにおけるレイヤＡ２，Ａ３，Ａ４，Ａ５，Ａ６及び回路デザインＢにおけるレイヤＢ２，Ｂ７を表示画面４−１に表示し、一方、回路デザインＡにおけるレイヤＡ１，Ａ７，Ａ６，Ａ３及び回路デザインＢにおけるレイヤＢ１，Ｂ３，Ｂ６を表示画面４−２に表示するように、表示部４の選択画面において、各回路レイアウトパターンにおけるレイヤの選択処理を行う。
【００３７】
これにより、制御部３は、図５に示すように、ディスプレイヘッダ２３−１において、レイヤＡ２，Ａ３，Ａ４，Ａ５，Ａ６，Ｂ２，Ｂ７に対応するエントリーを作成して、各々のエントリーフィールドにレイヤの表示情報を書き込む（ステップＳ１３）。
また、同様に、制御部３は、ディスプレイヘッダ２３−２において、レイヤＡ１，Ａ７，Ａ６，Ａ３，Ｂ１，Ｂ３，Ｂ６に対応するエントリーを作成して、各々のエントリーフィールドにレイヤの表示情報を書き込む（ステップＳ１４）。
ここで、表示情報における表示の色，表示のパターン，表示順，表示のイネーブル，表示の座標，表示の回転は、ユーザの入力により設定される。
【００３８】
次に、制御部３は、ディスプレイテーブル２２−１を参照し、対応するディスプレイヘッダ２３−１の各エントリーに記載されている各レイヤ識別番号により、エディティングバッファヘッダ２１−１，２１−２を介し、上記各レイヤそれぞれのレイアウトパターンである画像データをエディティングバッファ２５−１，２５−２から読み出す。
そして、制御部３は、エディティングバッファ２５−１，２５−２から読み出した各レイヤの画像データを、表示部４の表示画面４−１に対応する表示バッファの領域に書き込む（ステップＳ１５）。
【００３９】
また、同様に、制御部３は、ディスプレイテーブル２２−２を参照し、対応するディスプレイヘッダ２３−２に基づき、エディティングバッファヘッダ２１−１，２１−２を介し、エディティングバッファ２５−１，２５−２から読み出した各レイヤの画像データを表示部４の表示画面４−１に対応する表示バッファの領域に書き込む（ステップＳ１６）。
そして、制御部３は、上記各々の表示バッファに書き込まれた画面１及び画面２の画像データを表示部４へ表示する（ステップＳ１７，Ｓ１８）。
【００４０】
上述したように、編集対象のデザイン回路Ａと、このデザイン回路Ａにインクルードされる回路デザインＢとは、各同一のレイヤにおけるパターンデータとして区別が無いが、本実施形態のように、レイヤ番号に対して識別子を設けることにより、レイアウトパターンにおいて同一のレイヤであっても、格納されるエディティングバッファが異なるため、レイヤが合成されて混在してしまうことがなく、回路デザインＡ及びＢのいずれの回路レイアウトパターンに属したものかを明確に判定できる。
【００４１】
そして、制御部３は、ユーザの編集終了の命令が入力されると、回路デザインＡ及びＢの各レイヤの編集を終了し、この編集結果をレイアウトデータベース１１へ戻す。
このとき、制御部３は、エディティングバッファ２３−１に記載されているレイヤ識別番号を読み込み、対応テーブル５を参照して、回路デザインと識別子との関係から、エディティングバッファ２５−１に記憶されているレイヤが回路デザインＡに対応していると判定し、レイヤ番号から識別子を選択的に除去し、得られたレイヤ番号に基づいて、エディティングバッファ２５−１の各レイヤを、回路デザインＡのレイアウトデータベース１１の各レイヤに対応する領域に上書きする。
【００４２】
同様に、制御部３は、エディティングバッファ２３−２に記載されているレイヤ識別番号を読み込み、対応テーブル５を参照して、回路デザインと識別子との関係から、エディティングバッファ２５−２に記憶されているレイヤが回路デザインＢに対応していると判定し、レイヤ識別番号から識別子を選択的に除去し、得られたレイヤ番号に基づいて、エディティングバッファ２５−２の各レイヤを、回路デザインＢのレイアウトデータベース１１の各レイヤに対応する領域に上書きする。
【００４３】
なお、図１におけるＬＳＩレイアウト部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによりＬＳＩのレイアウト処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境（あるいは表示環境）を備えたＷＷＷシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【００４４】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【図面の簡単な説明】
【００４５】
【図１】本発明の一実施形態によるＬＳＩレイアウト装置の構成例を示すブロック図である。
【図２】図１におけるデザインテーブル，エディティングバッファヘッダ及びエディティングバッファの関係を示す概念図である。
【図３】回路デザインＡ及び回路デザインＢの各レイヤの元のレイヤ番号と、識別子を付加した新たなレイヤ番号との関係を示す図である。
【図４】ディスプレイテーブルとディスプレイヘッダとの関係を示す概念図である。
【図５】回路デザインＡと回路デザインＢとの回路レイアウトパターンにおける各レイヤの表示処理を説明する概念図である。
【図６】回路デザインＡと回路デザインＢとの回路レイアウトパターンにおける各レイヤの表示処理を説明するシーケンス図である。
【符号の説明】
【００４６】
１…主記憶部
２…補助記憶部
３…制御部
４…表示部
５…対応テーブル
６…ＬＳＩ設計部
４−１，４−２…表示画面
１１…レイアウトデータベース
２１，２１−１，２１−２…エディティングバッファヘッダ
２２，２２−１，２２−２…ディスプレイテーブル
２３，２３−１，２３−２…ディスプレイヘッダ
２４，２４−１，２４−２…デザインテーブル
２５，２５−１，２５−２…エディティングバッファ
【図１】
2005338916.tif 000003
【図２】
2005338916.tif 000004
【図３】
2005338916.tif 000005
【図４】
2005338916.tif 000006
【図５】
2005338916.tif 000007
【図６】
2005338916.tif 000008