JP3759357B2 - Data creation method - Google Patents

Data creation method Download PDF

Info

Publication number
JP3759357B2
JP3759357B2 JP34018099A JP34018099A JP3759357B2 JP 3759357 B2 JP3759357 B2 JP 3759357B2 JP 34018099 A JP34018099 A JP 34018099A JP 34018099 A JP34018099 A JP 34018099A JP 3759357 B2 JP3759357 B2 JP 3759357B2
Authority
JP
Japan
Prior art keywords
pattern
data
information
patterns
pattern data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP34018099A
Other languages
Japanese (ja)
Other versions
JP2001154335A (en
Inventor
学 高山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP34018099A priority Critical patent/JP3759357B2/en
Publication of JP2001154335A publication Critical patent/JP2001154335A/en
Application granted granted Critical
Publication of JP3759357B2 publication Critical patent/JP3759357B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Preparing Plates And Mask In Photomechanical Process (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は階層設計された半導体集積回路装置のマスクパターンデータからパターンの重なり合いを除去した露光データ、それを作成するための階層データを作成するデータ作成方法に関するものである。
【0002】
半導体集積回路用露光データ(以後、単に露光データと呼ぶ)をマスクウエハに露光する過程において、露光データにパターンの重なり(オーバーラップ)があると多重露光になる。このことから、パターンのオーバーラップをなくした露光データが必要になる。このため、階層化設計された半導体集積回路用マスクパターンデータ(以後、単にマスクパターンデータと呼ぶ)に対してオーバーラップ除去処理を実施した後、そのデータをフォーマット変換処理して露光データを作成する方法が採られている。
【0003】
近年の半導体集積回路(LSI)においては、大規模化及び高集積化が進められ、そのLSIを作成するために必要なマスクパターンデータ、露光データのデータ量も増大している。そのため、マスクパターンデータ及び露光データを階層化し、繰り返し性のあるパターンに対してマトリックス状のパターンデータを作成することで、データ量を削減している。しかし、マトリックス状のパターンデータの一部に重なりがあると、上記のオーバーラップ除去処理において繰り返し性が保存されない、即ちマトリックス状のパターンデータを展開して重なりを除去しなければならないため、処理後にデータ量の増加と露光データへの変換時間が長くなる。このため、繰り返し性を保持した露光データ作成用のデータを作成することが求められている。
【0004】
【従来の技術】
従来、露光データを作成する第1の方法として、階層化設計されたマスクパターンデータの全てを展開し、予めパターンの重なりをなくした露光データ作成用データを作成する。その後、重なりのない露光データ作成用データを露光データにフォーマット変換し、それを露光装置に入力する方法が用いられてきた。
【0005】
階層化設計されたマスクパターンデータは、次の特徴を持ち、このような構造を階層構造と呼ぶ。
(a)階層構造はストラクチャの単位で表現される。
(b)ストラクチャの内容は、パターンと他のストラクチャの配置情報から成る。
(c)同じ名前を持つストラクチャは必ず同じパターンとストラクチャの配置情報から構成される。
【0006】
マスクパターンデータは、図36(a)に示す構造木で表される階層構造を持ち、図36(b)に示すように各ストラクチャ及びパターンが配置される。このような階層構造におけるストラクチャの関係は親子関係等、家系図と同じ呼び方で表現される。
【0007】
図36(a),(b)のマスクパターンデータを用いて説明すると、マスクパターンデータは、ストラクチャA,B,C,D,E,F,GとパターンP,Q,Rから構成されている。尚、図36(a)では、ストラクチャを丸で囲み、パターンを四角で囲んで区別している。尚、この表記は、以下の説明において共通に用いられる。
【0008】
ストラクチャの関係を説明すると、例えばストラクチャBはストラクチャAの子ストラクチャ、ストラクチャDはストラクチャBの子ストラクチャである。逆に、ストラクチャAはストラクチャBの親ストラクチャ、ストラクチャBはストラクチャDの親ストラクチャである。更に、ストラクチャA,BはストラクチャCの先祖ストラクチャであり、ストラクチャD,EはストラクチャAの子孫ストラクチャである。ストラクチャDは、ストラクチャAの直系関係にあり、ストラクチャCの傍系関係にある。特に、最上階のストラクチャAはトップストラクチャと呼ばれることがある。
【0009】
このような階層化設計は、半導体集積回路の大規模化にともない設計の容易化やデータ量の削減などを目的として行われる。
しかし、半導体集積回路の大規模化に伴い、マスクパターンデータを全展開して重なりを無くした露光データ作成用データを作成する方法では、作成処理時に必要な作業領域、作成された露光データ作成用データのデータ量が膨大になるうえ、作成処理に時間がかかってしまう。
【0010】
また、露光データ作成用データを露光データに変換する課程でも、作成時間の短縮、データ量の削減のため階層構造を利用した処理が行われることが多い。従って、露光データ作成用データが階層構造を持つことは非常に重要である。
【0011】
そこで、マスクパターンデータの階層構造を利用し、全展開処理を行わずに重なりのない露光データ作成用階層データ(以下、単に階層データと呼ぶ)を作成する第2の方法が考えられる。
【0012】
この第2の方法は、マスクパターンデータの重なりパターンを同じストラクチャのパターンとして階層を構成し直し、重なりのない階層データを作成する方法である。例えば、図37に示すようにレイアウトされるマスクパターンデータは、図38に示す階層構造を持つ。マスクパターンデータはストラクチャA〜Eから構成され、ストラクチャC,D,EはそれぞれパターンR,S,T、パターンP,Q、パターンU,Vを持つ(図39参照)。
【0013】
このマスクパターンデータにおいて、左端列上段及び下段のストラクチャCが持つパターンSとストラクチャDが持つパターンQが重なり合い、右端列上段及び下段のストラクチャCが持つパターンSとストラクチャEが持つパターンUが重なり合っている(図において破線の丸にて重なり部分を示す)。従って、第2の方法では、重なり合うパターンQ及びS、パターンS及びUを共通の先祖ストラクチャAに展開する。以降、先祖のストラクチャにパターンを展開することを、パターンを先祖のストラクチャに持ち上げると呼ぶことにする。
【0014】
ところで、マスクパターンデータは、マトリックス状に配置された12個のストラクチャCを持つ。従って、一部のストラクチャCからパターンSを先祖ストラクチャAに持ち上げると、パターンSを持つストラクチャCとそれを持たないストラクチャCが共存することになり、矛盾が生じてしまう。これを避けるために、パターンQまたはUと直接重なっていないパターンSもストラクチャB(又はストラクチャA)に持ち上げる。その結果、図40〜図42の階層データとなる。図40は階層データのレイアウト図、図41は階層データの階層木図、図42は各ストラクチャが持つパターンのレイアウト図である。
【0015】
尚、図40〜図42では、構成を変更したストラクチャと元のストラクチャの階層関係を解りやすくするために同じ符号を付している。そして、持ち上げられたパターン又はOR処理したパターンは、元のパターンが解りやすいように符号を付している。即ち、図41のパターンQS1,QS2はパターンQとパターンSを、パターンSU1,SU2はパターンSとパターンUをそれぞれOR処理(論理和演算)したものである。また、パターンS1〜S8は、元のパターンS(但し重なり合いのないもの)をストラクチャBに持ち上げて展開したパターンである。尚、パターンSをストラクチャBに持ち上げるのは、一般にデータ量がストラクチャAに持ち上げる場合に比べて少なくなるからである。
【0016】
このように階層構造を変更し、各ストラクチャ単位(各階層単位)でOR処理を行い重なりのない階層データを作成する。
この方法により作成された階層データのパターンデータ量は、全展開した場合と比較して大幅な削減になっている。
【0017】
一般に、パターンは頂点(又は線分)により表現されているので、パターンデータ量は各パターンの頂点の合計数に比例する。図40に示す第2の方法で作成されたデータと、図43に示す第1の方法により展開して作成されたデータでパターン頂点数を比較する。第2の方法でデータを作成した場合、パターンQS1,QS2,SV1,SV2でそれぞれ頂点数8、パターンS1〜S8,P,R,T,Vがそれぞれ頂点数4であるため、頂点数の合計は80個になる。一方、第1の方法でデータを作成した場合のパターンの頂点数は、頂点数4のパターンが40個、頂点数8のパターン(凹形状パターン)が4個で合計192個になる。このように、第2の方法は第1の方法に比べて大幅なデータ量削減になっている。
【0018】
【発明が解決しようとする課題】
しかし、第2の方法においても、データによってはパターンデータ量の削減が充分でなく、階層データのデータ量が増大する。上記では、繰り返し性のあるパターンR,S,Tを持つストラクチャCからパターンSをストラクチャBに持ち上げているため、パターンSについて繰り返し性を保持することができない。このため、例えばストラクチャCが12(=3×4)個でなくもっと多い数、例えば306(3×102)個の場合、ストラクチャBに302個のパターンSが展開されるため、このパターンの頂点数だけでも1028個(=4×302)となるので、パターンの頂点数の合計は1256個になる。このように、第2の方法においても、データ量が増大するという問題がある。
【0019】
また、繰り返し性を保持したデータを作成することができないため、階層データから露光データに変換する処理の処理効率の低下を招く。露光データとして例えばブロック露光用データを作成する場合、階層データから露光データへ変換する処理で、繰り返しパターンを抽出する処理がある。この抽出処理において、持ち上げたパターン(図42におけるパターンS1〜S8)から繰り返しパターン(図42のパターンS2〜S7)を抽出する。これらのパターンは、元々繰り返し性を持っていたパターンであるため2度手間(展開と抽出)なり、変換に要する処理時間、ひいてはマスクパターンデータから露光データを作成するまでの全体の処理時間が長くなるという問題がある。
【0020】
本発明は上記問題点を解決するためになされたものであって、その目的は階層化設計されたマスクパターンデータにおける繰り返し性を保持して露光データを作成するための階層データを作成するとともに、その階層データのデータ量削減を図ることのできるデータ作成方法を提供することにある。
【0021】
【課題を解決するための手段】
上記目的を達成するため、請求項1に記載の発明は、階層設計されたマスクパターンデータを構成する複数のストラクチャからパターンに重なりのない露光データを作成するための階層データを作成するデータ作成方法であって、前記マスクパターンデータから検出した重なり合うパターンの階層間の重なり情報を作成する第1ステップと、前記重なり情報に基づいて、前記重なり合うパターンのうち低い優先度が設定されているパターンを持ち上げて候補パターンデータ及び削除パターンデータを作成する第2ステップと、前記候補パターンデータから削除パターンデータを削除して重なりのないパターンデータを作成する第3ステップとを有し、前記第1ステップは、前記重なり合うパターンの所属するストラクチャ同士が異なる場合には、該ストラクチャ内に配置されている、前記重なり合うパターンと同じパターンがより多数存在するパターンに対してより高い優先度を設定するステップと、前記優先度に応じて前記重なり情報を作成するステップとを含む。このように、重なり情報に基づいて作成した候補パターンデータと削除パターンデータとから重なりのないパターンデータを作成することで、マスクパターンデータの階層構造をほぼ保持したまま階層データを作成することができる。
【0022】
また、請求項2に記載の発明のように、前記重なり合うパターンの配置個数が同じ場合には、該重なり合うパターンのうち頂点の多いパターンに対して高い優先度を設定する。
【0023】
前記第2ステップは、請求項3に記載の発明のように、前記重なり情報に基づいて、前記候補パターンデータ及び削除パターンデータを各階層単位に作成するステップを有する。
【0024】
前記第3ステップでは、請求項4に記載の発明のように、サイジングしない場合は、各階層毎に候補パターンデータから削除パターンデータを削除して階層データを作成し、サイジングする場合は、各階層毎に候補パターンデータと削除パターンデータをそれぞれサイジング後、各階層毎に候補パターンから削除パターンを削除して階層データを作成する。これにより、正しくサイジングした階層データを作成することができる。
【0025】
請求項5に記載の発明のように、前記第1ステップでは、前記重なり合うパターンを含まない非侵入領域を設定し、前記第2ステップでは、前記非侵入領域に含まれる削除パターンを持ち上げない。これにより、繰り返し性のある削除パターンのうち、非侵入領域に含まれる削除パターンを持ち上げないことで、ストラクチャに展開する削除パターンのデータ量が少なくなる。
【0026】
【発明の実施の形態】
以下、本発明を具体化した一実施の形態を図1〜図35に従って説明する。
図2は、本実施形態の露光データ作成装置のハードウエア構成を概略的に示すブロック図である。
【0027】
露光データ作成装置1は、中央処理装置(以下、CPUという)2と、それに接続された端末装置3,ディスク装置4,メモリ装置5を含む。
端末装置3は、ユーザからの要求や指示,パラメータの入力等に用いるキーボード,マウス装置(図示せず)等の入力装置と、パターン画像,処理結果,等の表示に用いるVDT,モニタ,プリンタ等の表示装置を含む。
【0028】
ディスク装置4は、通常、磁気ディスク装置、光ディスク装置、光ディスク装置等の記憶装置であり、これには図1に示す露光データ作成処理のためのプログラムデータ及び第1〜第8ファイル11〜18が格納され、CPU2は、端末装置3の操作に応答して起動し、図1のステップに従って露光データ作成処理を実行する。尚、図1の各ファイル11〜18は、異なる記憶装置またはメモリ装置5に作成されても良く、また、各ファイル11〜18が複数の記憶装置にまたがって作成される構成としても良い。
【0029】
メモリ装置5は記憶装置であり、ディスク装置4に比べ高速なアクセスを提供するが、容量が小さい。従って、CPU2は、処理過程のサイズの小さいデータを高速アクセスする目的でメモリ装置5を用いる。尚、図1の内部データを格納するファイル12を、このメモリ装置5に作成しても良い。
【0030】
露光データ作成処理のためのプログラムデータは、記録媒体6を用いて提供される。記録媒体6は、フレキシブルディスク、CD−ROM、ハードディスク、メモリカード、ROM、パンチカード、テープ等のコンピュータ読み取り可能な媒体である。
【0031】
尚、記録媒体6には、通信媒体を介して提供されるプログラムデータを格納した他の計算機の主記憶装置(メモリ装置等)、補助記憶装置(ディスク装置)やその計算機にて読み取られる可搬型媒体を含む。更に、コンピュータによって直接実行可能なプログラムを記録した記録媒体だけでなく、いったん他の記録媒体(ハードディスク等)にインストールすることによって実行可能となるようなプログラムを記録した記録媒体や、暗号化されたり、圧縮されたりしたプログラムを記録した記録媒体も含む。
【0032】
提供されたプログラムデータは、記録媒体6から一旦ディスク装置4にコピーまたはインストール後にメモリ装置5にロードされ、または記録媒体6から直接メモリ装置5にロードされ実行する。また、通信媒体を介して接続される他の計算機に格納されて提供された場合も、他の装置から通信媒体を介して受信後にディスク装置4にコピーまたはインストールされ、メモリ装置5にロードされ実行するものである。
【0033】
次に、露光データ作成処理の概要を図1のフロー図に従って第1〜第8ファイル11〜18に予め格納されるデータ、または露光データ作成処理において格納されるデータと共に説明する。
【0034】
第1ファイル11には、露光データ作成処理の入力データとしてマスクパターンデータが格納されている。マスクパターンデータは、予め論理回路データに基づいてトランジスタ等の素子,各種セル,それらを接続する信号配線等のパターンデータにより構成され、それらパターンデータは階層構造を持つ。
【0035】
ステップ21において、図2のCPU2は、階層化設計されたマスクパターンデータを読み込み、各ストラクチャ(各階層)毎にOR処理を行い、同じストラクチャ内(同じ階層内)で重なりを無くしたパターンデータと配置データを作成し、それらを第2及び第3ファイル12,13にそれぞれ格納する。また、このステップ21において、CPU2は、マスクパターンデータの階層解析を行い、各ストラクチャが保有するパターン数、各ストラクチャの配置個数、各ストラクチャをトップとして考えて展開した場合のパターン数などの情報を求める。これらの情報はマスクパターンデータの階層木を探索することにより、実際に全展開することなく求める。
【0036】
ステップ22において、図2のCPU2は、パターンの重なり情報を収集し、単独持ち上げ情報、連結持ち上げ情報、代表情報、非侵入領域を作成する。単独持ち上げ情報、連結持ち上げ情報は、
(1)重なりパターンの所属するストラクチャのストラクチャ名が同じ場合、
(2−A)重なりパターンの所属するストラクチャのストラクチャ名が違う場合で直系関係にある場合、
(2−B)重なりパターンの所属するストラクチャのストラクチャ名が違う場合で傍系関係にある場合、
の3つの場合に応じて作成する。
【0037】
ステップ23において、図2のCPU2は、ステップ22にて作成した情報をもとに、重なりパターンの単独持ち上げ、連結持ち上げを行い作成した候補パターンデータ、削除パターンデータを第4,第5ファイル14,15に格納する。候補パターンデータ及び削除パターンデータは、重なりを解消するために図形論理減算処理(SUB処理)を実施する対象のパターンデータである。
【0038】
候補パターンデータは、パターンの重なりを解消するために先祖ストラクチャに持ち上げたデータであり、削除パターンデータは候補パターンデータから重なり合う部分を除くためにその候補パターンデータと同じストラクチャに複写したデータである。従って、削除パターンデータに指定された元のパターンデータには構造の変更が加えられないので、そのパターンを含むストラクチャの繰り返し性が保持されることになる。
【0039】
ステップ24において、図2のCPU2は、第4及び第5ファイル14,15の候補パターンデータ、削除パターンデータに対してOR処理、サイジング処理、SUB処理を実施して作成したパターンデータを第6ファイル16に格納する。このSUB処理によって、候補パターンデータから削除パターンデータと重なり合う部分が除かれて重なりのないパターンデータが作成される。
【0040】
ステップ25において、図2のCPU2は、ステップ24において作成した重なりのないパターンデータと第3ファイル13の配置データを使い、パターンの重なりを除いた階層データを作成する。そして、CPU2は、作成した階層データを第7ファイル17に格納する。
【0041】
ステップ26において、図2のCPU2は、ステップ25において作成した階層データをフォーマット変換して露光データを作成し、その露光データを第8ファイル18に格納する。
【0042】
上記ステップ21〜25の処理を図37のマスクパターンデータに対して実施した場合について説明する。
図3は、処理後即ち重なりを無くした階層データのレイアウト図、図4はその階層木図、図5は処理後の階層データを構成するストラクチャA,C,D,Eが持つパターンのレイアウト図である。尚、図3〜図5に示すストラクチャA〜Eは、上記処理により構成が変更されたものがあるが、これ以降の説明において作成前後の対応を解りやすくするために同じ符号を用いることにする。
【0043】
先ず、ステップ22,23において、図2のCPU2は、重なり合うパターンQ及びS、パターンS及びUを検出し、それぞれに対応する情報を作成する。そして、CPU2は、作成した情報を基に候補パターンデータ及び削除パターンデータを作成する。図37のマスクパターンデータでは、パターンQとパターンSの配置個数、パターンUとパターンSの配置個数を比較し、配置個数の少ないパターンQ,Uを候補パターンとしてパターンQ及びS、パターンU及びSの共通の先祖であるストラクチャAに展開した候補パターンデータ14を作成する。そして、CPU2は、候補パターンデータ14に重なるパターンSを削除パターンとしてそのデータ15を作成する。配置個数の少ないパターンを候補パターンデータとすることで、ストラクチャに展開するパターンのデータ量が少なくなる。
【0044】
次に、ステップ24において、CPU2は、候補パターンデータ14と削除パターンデータ15の重なり部分を候補パターンデータから切り取ったパターンQS1,QS2,SU1,SU2(図2参照)のデータを作成する。これにより、作成された階層データの各ストラクチャは、図4及び図5に示すように、ストラクチャAはパターンQS1,QS2,SU1,SU2を、ストラクチャDはパターンPを、ストラクチャEはパターンVを持つ。そして、ストラクチャB及びCは構成が変更されていない。即ち、ストラクチャC(パターンR,S,T)の繰り返し性は保持されている。
【0045】
従って、上記の処理後の階層データが持つパターンの頂点数の合計は、パターンQS1,QS2,SU1,SU2がそれぞれ頂点数8、パターンP,R,S,T,Vがそれぞれ頂点数4であるため、52個である。上記したように、第1の従来方法では頂点数の合計が1526個、第2の従来方法ではそれが80個であった。
【0046】
このように、本実施形態によれば、従来の方法に比べて階層データのデータ量を大幅に削減できる。また、ストラクチャC(パターンR,S,T)の繰り返し性が保持されているので、階層データから露光データに変換する処理に要する時間が短い、即ち処理効率を上げることができる。
【0047】
次に、上記各処理を順に詳述する。尚、図1に示すファイル11〜18及び各処理を説明する上で必要なファイルに格納するデータに、それを格納するファイルの符号を付して説明する。
【0048】
先ず、ステップ22の処理を詳述する。
図6は、ステップ22において、重なり状況により単純持ち上げ情報、連結持ち上げ情報、代表情報を作成する情報作成処理(情報作成手段)のフロー図である。即ち、図6のステップ31〜34は、ステップ22のサブステップの一部である。尚、この情報作成処理を説明するにあたって、図7〜図10を用いる。
【0049】
CPU2は、処理する入力パターンデータ12を構成するストラクチャをボトムアップ(階層木のボトム(最下層)のストラクチャから順番に上に向かって)で順次選出し、その選出したストラクチャが持つパターンに対して他のストラクチャに含まれるパターンの重なりがあるか否かを判断する。そして、パターンの重なりがある場合に、選出したストラクチャのパターンに対して作成した情報を追加する。そして、CPU2は、ストラクチャの種類全て、即ちストラクチャの種類分処理をループして重なりを判定すると、この情報作成処理を終了して元に戻る。
【0050】
詳述すると、ステップ31は終了判定処理であり、CPU2は、全てのストラクチャ種類について処理を終了したか否かを判断し、終了していない場合はストラクチャの全ての種類でループするべくステップ32に進み、全ての種類について処理を終了したときには処理を終了して呼び出し元へ戻る。
【0051】
ステップ32において、CPU2は、選出したストラクチャをトップストラクチャと見なし、スイープ法を使い重なりを調査する。重なりの調査は、子ストラクチャの存在領域の枠、パターンの存在領域の枠を置き、重なり判定をする。重なりありの場合、子ストラクチャの存在領域の枠を孫ストラクチャ存在領域の枠、パターン存在領域の枠で置き換える。CPU2は、この操作を行い、最終的にパターン存在領域の枠をパターンデータに置き換え、パターンの重なりを検出する。
【0052】
ここで、ストラクチャの存在領域とは、そのストラクチャを全展開した場合のパターンの存在する領域を示す枠のことである。以後、単に枠と呼ぶことにする。また、枠の重なり判定は、幾何学的に重なりがあるかどうかに加え、枠がどのようなグループに所属するかの識別番号でも判断する。
【0053】
この識別番号を使うことにより、多重に重なりを調査することを防ぐことができ、共通の先祖で最も近縁のストラクチャが選出されたストラクチャとなるパターンの重なりだけを見つけることができる。
【0054】
この識別番号は次のように与えられる。選出されたストラクチャとその子ストラクチャの枠には、全て異なる識別番号を与える。選出されたストラクチャとその子ストラクチャ以外のストラクチャ(孫、曾孫ストラクチャなど)の枠には、親ストラクチャと同じ識別番号を与える。また、パターンの枠には、所属ストラクチャと同じ識別番号を与える。
【0055】
例えば、図7,8に示すパターンデータにおいて重なりを見つける手順を説明する。
このパターンデータの構造を説明すると、図8に示すように、ストラクチャAは2個の子ストラクチャBを持ち、ストラクチャBは2個の子ストラクチャCを持ち、ストラクチャCはパターンP,Qを持つ。
【0056】
図7右下に示すように、ストラクチャBが持つ2つのストラクチャCに重なりがあり、2つのストラクチャCが持つパターンPがストラクチャBにおいて重なっている。更に、図7左上に示すように、ストラクチャAが持つ2つのストラクチャBに重なりがある。
【0057】
CPU2は、ボトムアップでストラクチャC,B,Aの順にストラクチャを選出する。
先ず、最初に選出したストラクチャCはボトムストラクチャであるので、CPU2は重なりを調べない。
【0058】
次に、CPU2は、選出したストラクチャBの重なりを調べる。図9(a)〜(c)はストラクチャBの重なりを調べる場合の説明図である。
図9(a)において、CPU2は、ストラクチャBに子ストラクチャCの枠を置き、子ストラクチャの枠に異なる識別番号1,2を与える。与えた識別番号に括弧付して図中に示す。ストラクチャCの枠は幾何学的な重なりと異なる識別番号を持つので重なりありとなる。
【0059】
図9(b)において、CPU2は、ストラクチャBに子ストラクチャCが持つパターンP,Qの枠を置き、パターンP,Qの枠にそれぞれ所属ストラクチャCと同じ識別番号1,2を与える。パターンPの枠は幾何学的な重なりと異なる識別番号を持つので、CPU2は「重なりあり」と判定する。一方、パターンQの枠は幾何学的な重なりがないので、CPU2は「重なりなし」と判定する。
【0060】
図9(c)において、CPU2は、「重なりあり」と判定したパターンPの枠により最後にパターンPのパターンデータ(線分データなど)を比較し、その比較結果に基づいてパターンPに「重なりあり」と判定し、重なりを確定する。
【0061】
次に、ストラクチャAにおける重なりを調べる場合について説明する。図10(a)〜(d)はストラクチャAの重なりを調べる場合の説明図である。
図10(a)において、CPU2は、ストラクチャAに子ストラクチャBの枠を置き、子ストラクチャの枠には異なる識別番号1,2を与える。ストラクチャBの枠は幾何学的な重なりと異なる識別番号を持つので、CPU2は「重なりあり」と判定する。
【0062】
図10(b)において、CPU2は、ストラクチャAに子ストラクチャC(ストラクチャAの孫ストラクチャ)の枠を置き、ストラクチャCの枠には親ストラクチャBと同じ識別番号1,2をそれぞれ与える。ストラクチャCの枠は全て幾何学的に重なるが、識別番号が異なるのは真ん中の重なりを作るストラクチャCの枠だけである。従って、CPU2は、真ん中にある2つのストラクチャCの枠を「重なりあり」と判定する。
【0063】
図10(c)において、CPU2は、真ん中の重なりを作るストラクチャCが持つパターンの枠をストラクチャAに置き、パターンの枠に所属ストラクチャCと同じ識別番号1,2をそれぞれ与える。パターンPの枠は幾何学的な重なりと異なる識別番号を持つので、CPU2は「重なりあり」と判定する。一方、パターンQの枠は幾何学的な重なりがないので、CPU2は「重なりなし」と判定する。
【0064】
図10(d)において、CPU2は、「重なりあり」と判定したパターンPの枠により最後にパターンPのパターンデータ(線分データなど)を比較し、その比較結果に基づいてパターンPに「重なりあり」と判定し、重なりを確定する。
【0065】
この方法によれば、共通の先祖で最も近縁のストラクチャが選出されたストラクチャとなる重なりパターンP,Qを展開することなく効率よく見つけることができる。
【0066】
このようにパターンP,Qに重なりがあると判定すると、CPU2は、図6のステップ33からステップ34に進み、そのステップ34において重なり合うパターンに対して情報を追加する。この情報の追加は、重なり調査でパターンに重なりが見つかるたびに呼び出される。従って、図7,8のデータの場合、ステップ34における情報追加はストラクチャBで一回、ストラクチャAで一回呼び出される。
【0067】
次に、単独持ち上げ情報、連結持ち上げ情報、代表情報、非侵入領域の作成手順を、図11〜図19に従って説明する。
図11は、重なりがある2つのパターンに対する単独持ち上げ情報、連結持ち上げ情報、代表情報、非侵入領域の作成手順を示すフロー図である。尚、ここでは、重なりがある2つのパターンをパターンP,Qとして図示及び説明する。
【0068】
ステップ41は優先度決定処理であり、図2のCPU2は、パターンP,Qの重なり状況に応じてそれぞれの優先度を決定する。ステップ42は情報追加処理であり、CPU2は、ステップ41において決定した優先度に基づいてパターンP,Qの情報を単独持ち上げ情報、連結持ち上げ情報、として追加する。ステップ42は、ステップ43の判定処理と、その判定結果に基づくステップ44a〜44c,45a〜45d,46a〜46cの追加処理から構成される。詳述すると、CPU2は、ステップ41において決定した2つのパターンP,Qの優先番号に基づいて、パターンQの優先番号が大きい場合にはステップ44a〜44cを、優先番号が同じ場合にはステップ45a〜45dを、パターンPの優先番号が大きい場合にはステップ46a〜46cを実行する。
【0069】
これらの処理を終了すると、CPU2は、ステップ47の領域設定処理を実行する。ステップ47において、CPU2は、パターンP,Qの存在領域とサイジング幅を用いて非侵入領域を設定する。非侵入領域は、不必要な削除パターンを持ち上げないために設定する。
【0070】
次に、上記の各処理を詳述する。
先ず、ステップ41の優先度決定処理を説明する。
CPU2は、パターンの重なり状況、詳しくはパターンが所属するストラクチャに応じて優先度を決定する。その重なり状況と優先度の関係は、以下のとおりである。
(1)重なりパターンの所属するストラクチャのストラクチャ名が同じ場合。両パターンを同じ優先度とする。
(2)重なりパターンの所属するストラクチャのストラクチャ名が違う場合。
(2−A)直系関係にある場合、子孫に当たるストラクチャに所属するパターンを高い優先度とする。
(2−B)傍系関係にある場合、展開した場合の配置個数の多いストラクチャに所属するパターンを高い優先度とする。展開した場合の配置個数が同じ場合は、パタンの頂点数の多いパターンを高い優先度とする。頂点数も同じ場合は、優先度を同じとする。
【0071】
優先度と連結持ち上げ情報,単独持ち上げ情報の関係は、以下のとおりである。
(1)優先度が同じ場合。それぞれのパターンの連結展開番号を連結持ち上げ情報として、それぞれのパターンの単独展開番号を単独持ち上げ情報として追加する。
(2)優先度が異なる場合。それぞれのパターンの連結展開番号を連結持ち上げ情報として、優先度の小さいパターンの単独展開番号を、単独持ち上げ情報として追加する。
【0072】
ここで、単独展開番号、連結展開番号を説明する。
図12(a),(b)、図13は、展開番号を説明する図である。展開番号は、あるストラクチャを固定したとき、展開イメージでパターンを一意的に識別する識別番号である。具体的には、次の手順で決めることができる。
【0073】
(1)各ストラクチャの保有パターン数(直接持つパターンの数)と展開パターン数(展開イメージでのパターン数)を求める(図12(a))。この数は、図1のステップ21における前処理において階層木をたどることで求める。
【0074】
(2)入力パターンデータの親子関係に対し、図12(b)のように番号を割り当てる。割当の一般規則は、ストラクチャXが子ストラクチャY,Zを有し、ストラクチャXの保有パターンがNx個、ストラクチャYの展開パターンをNy個、ストラクチャZの展開パターンをNz個としたとき、ストラクチャXの保有パターンに0〜Nx-1 、ストラクチャYの保有パターンにNx 〜Nx +Ny-1 、ストラクチャZの保有パターンにNx +Ny 〜Nx +Ny +Nz-1 の数字を割り当てる。
【0075】
(3)割り当てられた番号の最小値を加算することで展開番号を求める。図13には、各ストラクチャ及びパターンに割り当てた数字をそれぞれの近傍に表示している。ストラクチャAを基準にした場合、左から3番目にあるパターンS(矢印で示したパターン)の展開番号は、(左から2番目にあるストラクチャBに割り当てた番号5)+(ストラクチャDに割り当てた番号1)+(パターンSに割り当てた番号1)=7となる。また、ストラクチャBを基準にした場合の左から3番目にあるパターンSの展開番号は、(ストラクチャDに割り当てた番号1)+(パターンSに割り当てた番号1)=2となる。
【0076】
連結展開番号とは、展開番号に連結情報を反映させた物である。計算規則は、連結したパターンの展開番号から一つ代表となる展開番号を選び、先祖ストラクチャでは代表として選ばれた展開番号で置き換えることにより計算する。そして、連結情報を反映させない展開番号そのものが単独展開番号となる。
【0077】
図14,15は、単独展開番号と連結展開の違いを説明する図である。パターンP,Qに重なりがあり、ストラクチャYに1000、ストラクチャZに200、ストラクチャAに100,ストラクチャBに20、ストラクチャCに10、ストラクチャDに35、ストラクチャEに40の番号が割り当てられている。この場合、ストラクチャXからストラクチャEのそれぞれを基準にした単独展開番号、連結展開番号は、図15のようになる。
【0078】
違いは、ストラクチャX,Y,Zを基準にしたパターンQの単独展開番号と連結展開番号にある。この違いは、パターンP及びQがストラクチャAで連結していてストラクチャAの先祖ストラクチャでは代表としてPの連結展開番号に置き換えられたことにある。
【0079】
次に、単独持ち上げ情報に対する単独展開番号の追加と、展開持ち上げ情報に対する連結展開の追加の方法を説明する。
図)16は、各情報のデータ構造を説明する図である。
【0080】
単独持ち上げ情報は、ストラクチャ単位で単独展開番号、代表情報ポインタの情報を持つ。
連結持ち上げ情報は、ストラクチャ単位で連結展開番号、連結ポインタ、代表情報ポインタの情報を持つ。連結ポインタはパターンの連結に応じて作成される。
【0081】
代表情報は、連結したパターンに共通する情報である。代表展開番号は、連結したパターンの中から任意に選ばれた展開番号である。持ち上げフラグは、同じ連結展開を持つパターンをさらに先祖のストラクチャに持ち上げるかどうかのフラグである。
【0082】
次に、図11のステップ42における情報追加処理を説明する。
図17、図18(a),(b)は、各ストラクチャの情報追加を説明する図である。
【0083】
図17に示す構造を持つパターンデータにおいて、パターンPとパターンQを重なりパターンとすると、パターンPの所属ストラクチャはストラクチャD、パターンQの所属ストラクチャはストラクチャF、共通の先祖で最近縁のストラクチャは選出されたストラクチャAである。
【0084】
パターンPの情報を単独持ち上げ情報として、図18(a)に示すように、パターンPとストラクチャAの間にあるストラクチャB,C,Dに対応する場所にボトムアップ(ストラクチャD,C,Bの順)で追加する。
【0085】
パターンQの情報を単独持ち上げ情報として、図18(a)に示すように、パターンQとストラクチャAの間にあるストラクチャE,Fに対応する場所にボトムアップ(ストラクチャF,E,Aの順)で追加する。
【0086】
情報をボトムアップで追加する理由は、各ストラクチャにおける単独展開番号、連結展開番号を計算するためである。
さらに、ストラクチャAに追加する場合は、代表情報の持ち上げフラグをオフにし、それ以外はオンにし、連結ポインタを使ってパターンPとパターンQの情報をつないでおく。
【0087】
次に、図11のステップ47における領域設定処理を説明する。
図19は、非侵入領域を説明するための図である。非侵入領域の初期値をストラクチャ存在領域に設定し、重なりパターンの存在領域と交わらないように領域辺を後退させて設定する。図19において、実線で示す領域がパターンPを含むストラクチャの存在領域であり、それに対して重なりパターンP,Qの存在領域(右側の太い破線で示す領域)と交わらないように領域右辺を一点鎖線で示す位置まで後退させて設定する。
【0088】
サイジング指定がある場合は、サイジング幅×2だけ更に内側に後退させる。図19において、サイジング指定がある場合は、一点鎖線で示す位置から左方向にサイジング幅の2倍だけ後退させた領域(左側の太い破線で示す領域)を設定する。
【0089】
尚、図19には、パターンPを含むストラクチャに対して非侵入領域を設定する場合を示しており、パターンQを含むストラクチャに対しても同様に非侵入領域が設定される。
【0090】
後退する方向は、上、下、右、左の4方向で、設定後の領域面積が最大になる方向を選ぶ。非侵入領域の設定は、選出されたストラクチャAとパターンP及びQの間にあるストラクチャに対して行う。例えば、図17の構造を持つパターンデータでは、ストラクチャB,C,D,E,FがストラクチャAとパターンP及びQの間にあるストラクチャであるため、これらに対して設定する。
【0091】
次に、図1のステップ23の処理を詳述する。
図20は、ステップ23において、候補パターン、削除パターンファイルの作成手順を示すフロー図である。即ち、図20のステップ51〜55は、ステップ23のサブステップである。
【0092】
先ず、図2のCPU2は、ステップ51,52をストラクチャ種類でループする、即ちステップ51の判断処理によってステップ52の単独持ち上げ処理をボトムアップにてパターンデータを構成するストラクチャの全種類について実施する。ステップ52において、CPU2は、入力パターンデータ12から単独持ち上げ情報を使ってパターンの単独持ち上げを行い、仮候補パターンデータ14aを作成する。
【0093】
次に、CPU2は、ステップ53,54をストラクチャ種類でループする、即ちステップ53の判断処理によってステップ54の連結持ち上げ処理をボトムアップにてパターンデータを構成するストラクチャの全種類について実施する。ステップ54において、CPU2は、仮候補パターンデータ14aから転結持ち上げ情報を使ってパターンの連結持ち上げを行い、削除パターンデータ15を作成する。
【0094】
そして、CPU2は、ステップ55において、サイジングありの場合には仮候補パターンデータ14aと削除パターンデータ15を合成して候補パターンデータ14を作成し、サイジングなしの場合は仮候補パターンデータ14aを候補パターン14とする。
【0095】
図21及び図22は、図20のステップ52における単独持ち上げの手順を示すフロー図である。
尚、ステップ51で入力パターンデータ12から選出したストラクチャを、ストラクチャAとして説明する。
【0096】
先ず、図2のCPU2は、ステップ61の判断処理においてストラクチャAが保有しているパターンのうち未処理パターンがあるか否かを判断することによって、ステップ61〜63a,63bをストラクチャAが直接保有しているパターン分ループする。
【0097】
ステップ62において、CPU2は、選出されたパターンとストラクチャAに対応する単独持ち上げ情報に一致する単独展開番号があるか調べる。一致するものがある場合は持ち上げると判定し、一致するものがない場合は持ち上げないと判定する。また、一致するものがある場合は、対応する代表情報の候補作成フラグをオンにする。
【0098】
ステップ62においてパターンを持ち上げると判定した場合、CPU2は、ステップ63aにおいてこのパターンをストラクチャAに対応する単独持ち上げパターンデータ14bとしてファイルに保存する。このデータは、ストラクチャAを子ストラクチャとして配置するストラクチャで再度単独持ち上げ判定の対象となる。
【0099】
一方、ステップ62においてパターンを持ち上げないと判定された場合CPU2は、ステップ63bにおいてこのパターンをストラクチャAに対応する仮候補パターンデータ14aとし、このパターンの単独持ち上げ処理は終了する。
【0100】
単独パターンデータのデータ構造は、図23(左)に示すように、ストラクチャ単位で作成される。パターンデータポインタは、入力パターンデータの保存アドレスである。配置情報は、パターンを配置する位置に関する情報で、XY座標、回転、倍率から構成されている。
【0101】
次に、CPU2は、図22のステップ64の判断処理によって、ステップ64〜68a,68bをストラクチャAが配置している子ストラクチャの分ループする。更に、CPU2は、ステップ65の判断処理によって、単独持ち上げパターンデータ14bに基づいて、ステップ65〜68a,68bをストラクチャAに配置する子ストラクチャBの単独持ち上げパターンの数分ループする。尚、ストラクチャBの単独持ち上げパターンは、ボトムアップ処理であるから、ストラクチャAより先にストラクチャBが選択されたときに既に作成されている。
【0102】
ステップ66において、CPU2は、単独持ち上げパターンの持つ配置情報に、ストラクチャBの配置情報を合成する。この手順でストラクチャBからの相対配置情報が、ストラクチャAからの相対配置情報に変換される。
【0103】
ステップ67において、CPU2は、図21のステップ62と同様にして持ち上げ判定を行う。このステップ67における判定結果に基づいて、CPU2は、図21のステップ63a,63bと同様に、ステップ68aにおいて仮候補パターンデータ14aを、ステップ68bにおいて単独持ち上げパターンデータ14bを作成する。
【0104】
図24及び図25は、図20のステップ54における連結持ち上げの手順を示すフロー図である。
尚、ステップ53で仮候補パターンデータ14aから選出したストラクチャを、ストラクチャAとして説明する。
【0105】
先ず、図2のCPU2は、ステップ71の判断処理において仮候補パターンデータ14aにストラクチャAに仮候補パターンがあるか否かを判断することによって、ステップ71〜73をストラクチャAの仮候補パターン分ループする。
【0106】
ステップ72において、CPU2は、ストラクチャAの非侵入領域にパターンの存在領域が包含されるかどうかを判定する。包含されている場合は、持ち上げないと判定する。少しでもはみ出ていれば連結展開番号による判定を行う。
【0107】
連結展開番号による判定は、パターンとストラクチャAに対応する連結持ち上げ情報に一致する連結展開があるかどうか調べる。一致するものがない場合は持ち上げないと判定する。一致するものがある場合は、代表情報の持ち上げフラグを参照し、オンなら持ち上げを行うと判定し、オフなら持ち上げを行わないと判定する。
【0108】
ステップ73において、CPU2はステップ72で持ち上げると判定した場合、このパターンをストラクチャAに対応する連結持ち上げパターンとし、連結持ち上げパターンデータ14cを作成する。このデータ14cは、ストラクチャAを子ストラクチャとして配置するストラクチャで再度連結持ち上げ判定の対象となる。この操作の意味は、連結持ち上げパターンのコピーを削除パターンとして持ち上げて仮候補パターンと重なるパターンを切り取るためである。一方、CPU2は、ステップ72において持ち上げないと判定した場合、ステップ73ではない処理を行わずにステップ71に戻る。
【0109】
次に、CPU2は、図25のステップ74の判断処理によって、ステップ74〜80をストラクチャAが配置している子ストラクチャ分ループする。更に、CPU2は、ステップ75における判断処理によって、連結持ち上げパターンデータ14cに基づいて、ステップ75〜80をストラクチャAの配置する子ストラクチャBの連結持ち上げパターンでループする。尚、ストラクチャBの連結持ち上げパターンは、ボトムアップ処理であるから、ストラクチャAより先にストラクチャBが選択されたときに既に作成されている。
【0110】
ステップ76で連結持ち上げパターンの持つ配置情報に子ストラクチャBの配置情報を合成する。この手順で子ストラクチャBからの相対配置情報が、ストラクチャAからの相対配置情報に変換される。
【0111】
ステップ77において、CPU2は、ステップ72と同様にして持ち上げ判定を行う。このステップ77における判定結果に基づいて、CPU2は、図24のステップ73と同様に、ステップ78において連結持ち上げパターデータ14cを作成する。
【0112】
ステップ79において、CPU2は、候補作成フラグにより削除パターンを作成するかどうかの判定を行う。このフラグがオンになっている場合は、このパターンと連結するパターンでストラクチャAの仮候補パターンが作成されている。従って、CPU2は、この仮候補パターンを切り取るためにステップ80でストラクチャAの削除パターンデータ15を作成する。
【0113】
以上の様にして削除パターンデータ15を作成すると、CPU2は、連結持ち上げ処理を終了して戻る。即ち、CPU2は、図20のステップ53に移る。そのステップ53においてストラクチャの全種類に対する連結持ち上げ処理を終了したと判定すると、CPU2はステップ55に移る。
【0114】
ステップ55において、CPU2は、作成した仮候補パターンデータ14aと削除パターンデータ15とから、候補パターンデータ14を作成する。サイジングなしの場合、CPU2は、仮候補パターンデータ14aをそのまま候補パターンデータ14にする。一方、サイジングありの場合、CPU2は、仮候補パターンデータ14aと削除パターンデータ15をストラクチャ単位で合成(図形論理和演算)して候補パターンデータ14とする。
【0115】
このステップ55において、仮候補パターンデータ14aと削除パターンデータ15をストラクチャ単位で合成することにより、サイジング処理におけるマイナスサイジングの時にパターンが離間してスリットが発生するのを防ぐことができる。
【0116】
図26は、候補パターンデータ14、削除パターンデータ15のデータ構造を説明する図である。各パターンデータ14,15はストラクチャ単位でパターン頂点データを持つ。
【0117】
次に、図1のステップ24の処理を詳述する。
図27は、ステップ24において、候補パターンデータ、削除パターンデータからパターンデータを作成する手順を示すフロー図である。即ち、図27のステップ81〜83は、ステップ24のサブステップである。
【0118】
先ず、図2のCPU2は、ステップ81において候補パターンデータ14に対してOR処理、サイジング処理を行う。次に、CPU2は、ステップ82において、削除パターンデータ15に対してOR処理、サイジング処理を行う。
【0119】
次に、CPU2は、ステップ83において、OR処理,サイジング処理を行った候補パターンから削除パターンをSUB処理してパターンデータ16を作成する。
【0120】
図28は、図1のステップ24、詳しくは図27のステップ81,82におけるOR処理、サイジング処理の手順を示すフロー図である。即ち、図28のステップ91〜95は、ステップ24(ステップ81及びステップ82)のサブステップである。
【0121】
図2のCPU2は、ステップ91においてストラクチャ種類でループ判定し、ステップ92において選出したストラクチャに対応する候補パターンデータ14(または削除パターンデータ15)に対してOR処理を行う。尚、このループはボトムアップでなくても良い。
【0122】
次に、CPU2は、ステップ93においてサイジング有無の判定を行い、サイジングの指定があればステップ94,95をループする。CPU2は、ステップ94においてストラクチャ種類でループ判定し、ステップ95において選出したストラクチャに対応するOR処理後のデータ(OR処理後の候補パターンデータ14又は削除パターンデータ15)に対してサイジング処理を行う。
【0123】
図29は、図1のステップ24、詳しくは図27のステップ83におけるSUB処理の手順を示すフロー図である。即ち、図29のステップ101,102は、ステップ24(ステップ83)のサブステップである。
【0124】
図2のCPU2は、ステップ101においてストラクチャ種類でループ判定し、ステップ102において選出したストラクチャに対応する候補パターンから削除パターンをSUB処理する。この処理により候補パターンから重なりパターンが切り取られる。尚、このループはボトムアップでなくても良い。
【0125】
次に、上記のように構成された露光データ作成装置の作用を図1のステップに従って説明する。
以下、図37のデータにステップ22〜24の各処理を適用した場合の例を説明する。
【0126】
[ステップ22]
ボトムアップ(ストラクチャE,D,C,B,Aの順)でパターンの重なりをスイープ法を用いて調査する。ストラクチャAにおける重なり調査で使い、4箇所に重なりを見つける。これらの重なりを、左上,左下,右上,右下の順に[1],[2],[3],[4]として説明する。
【0127】
[1]の場所では、パターンQとパターンSが重なっており、所属するストラクチャD,Cの関係は異なるストラクチャ名で傍系関係にあるので、ストラクチャD,Cの展開した場合の配置個数を比較する。ストラクチャDの配置個数は3個、ストラクチャCの配置個数は6個なのでパターンSが優先度の高いパターンとなる。従って、次の情報追加をテーブルに行う。
【0128】
(1)パターンQの単独展開番号を、階層木においてパターンQとストラクチャAの間にあるストラクチャDに対応する単独持ち上げテーブルに追加する。
(2)パターンQの連結展開番号を、ストラクチャAと階層木に於いてパターンQとストラクチャAの間にあるストラクチャDに対応する連結持ち上げテーブルに追加する。
【0129】
(3)パターンRの連結展開番号を、ストラクチャAと階層木においてパターンRとストラクチャAの間にあるストラクチャB,Cに対応する連結持ち上げテーブルに追加する。
【0130】
パターンQの(1),(2)のテーブル追加の例を以下説明する。
図30(a)〜(e)は、各ストラクチャA〜Eを基準とした場合の単独展開番号である。説明のために全ての単独展開番号を記述した。実際には、マスクパターンデータを、展開することなく重なりパターンのみの単独展開番号を計算する。
【0131】
(1),(2)の追加情報は、各ストラクチャ毎に同時に行われる。
「ストラクチャDに対応する情報の作成」
パターンQのストラクチャDでの単独展開番号1(図30(d)参照)をストラクチャDに対応する単独持ち上げ情報テーブルに追加する。
【0132】
パターンQのストラクチャDでの連結展開番号1をストラクチャDに対応する連結持ち上げ情報テーブルに追加する。ストラクチャDはボトムストラクチャであり、パターンQの連結展開番号は、単独展開番号と等しい。ストラクチャDでパターンQは重なりがない。よって、連結ポインタはなしとする。
【0133】
代表情報の持ち上げフラグは、ストラクチャAに対応していないのでオンとする。代表情報の代表展開番号は、パターンQの連結展開番号とパターンQがストラクチャDで連結しているパターンの連結展開番号から選ばれる。パターンQのみであるので代表展開番号は1が選ばれる。
【0134】
単独持ち上げ情報、連結持ち上げ情報のポインタを、作成した代表情報につなぐ。
図31は、単独持ち上げテーブル、連結持ち上げ情報テーブル、代表情報テーブルを説明する図である。各テーブルは、(単独展開番号、代表情報ポインタ)、(連結展開番号、連結ポインタ、代表情報ポインタ)、(代表展開番号、持ち上げフラグ)のように各情報は組にして表現されている。各情報の組には、情報識別のための名前をつけて区別してある。
【0135】
図31において、[1]の箇所におけるパターンQのストラクチャDに対応する追加情報は、単独持ち上げ情報がT1(1,D9)、連結持ち上げ情報がR13(1,なし,D9)、代表情報がD9(1,ON)である。
【0136】
「ストラクチャAに対応する情報の作成」
パターンQは単独持ち上げ情報テーブルへの追加なし。
パターンQのストラクチャAでの連結展開番号1をストラクチャAに対応する連結持ち上げ情報テーブルに追加する。パターンQの連結展開番号は、ストラクチャDの代表情報を元に計算される。ストラクチャAでパターンQはパターンPと重なるのでパターンPの情報へのポインタを設定する。
【0137】
代表情報の持ち上げフラグは、ストラクチャAに対応しているのでOFFとする。代表情報の代表情報番号は、パターンQの連結展開番号とパターンQがストラクチャAで連結しているパターンの連結展開番号から選ばれる。パターンQ及びPから選ばれる。例えば、パターンQの連結展開番号を代表番号とする。
【0138】
連結持ち上げ情報のポインタを作成した代表情報につなぐ。
図31において[1]のパターンQのストラクチャAに対する追加情報は、連結持ち上げ情報がR1(1,R1,D1)、代表情報がD1(1,OFF)である。
【0139】
上記の[1]にある重なりに対する操作を[2]〜[4]の箇所にある重なりに対しても同様に行い、単独持ち上げ情報テーブル、連結情報持ち上げ情報テーブル、代表情報テーブルをそれぞれ作成する。
【0140】
[ステップ23]
作成した単独持ち上げ情報テーブル、連結情報持ち上げ情報テーブル、代表情報テーブルをもとに候補パターンデータ、削除パターンデータを作成する。
【0141】
各パターンデータは、ボトムアップで単独持ち上げ情報テーブル、連結情報持ち上げ情報テーブルの単独展開番号、連結展開番号とパターンデータの単独展開番号、連結展開番号の比較により作成される。
【0142】
図32(a)はサイジングありの場合の候補パターン、図32(b)は削除パターンの説明図である。図32(a)に示すように、ストラクチャAには候補パターンとしてストラクチャD,Eが持っていたパターンQ,Uが持ち上げられている。図32(b)に示すように、ストラクチャAには削除パターンとしてパターンQ,Uと重なり合うパターンS(ストラクチャC)のコピーが持ち上げられている。
【0143】
図33(a)はサイジングなしの場合の候補パターン、図33(b)は削除パターンの説明図である。図33(a)に示すように、ストラクチャAには候補パターンとしてストラクチャD,Eが持っていたパターンQ,Uと、それに重なるパターンS(ストラクチャC)のコピーが持ち上げられている。図33(b)に示すように、ストラクチャAには削除パターンとしてパターンQ,Uと重なり合うパターンS(ストラクチャC)のコピーが持ち上げられている。
【0144】
[ステップ24]
サイジング指定なしの場合、各ストラクチャに対応する候補パターン(図32(a))、削除パターン(図32(b))を、それぞれOR処理し、その後それぞれをSUB処理する。
【0145】
図34(a)〜(c)はストラクチャAに対するOR処理、SUB処理の説明図である。図34(a)に示すストラクチャAの候補パターン(パターンQ,U)から図34(b)に示すストラクチャAの削除パターン(パターンSのコピー)をそれぞれOR処理し、SUB処理して図34(c)に示すパターンQS1,QS2,SU1,SU2を得る。
【0146】
サイジング指定ありの場合、各ストラクチャに対応する候補パターン(図33(a))、削除パターン(図33(b))を、それぞれOR処理、サイジングし、その後それぞれをSUB処理する。
【0147】
図35(a)〜(c)はストラクチャAに対するOR処理、サイジングとしてマイナスサイジング、SUB処理の説明図である。図35(a)に示すストラクチャAの候補パターン(パターンQ+S,S+U)と図35(b)に示すストラクチャAの削除パターン(パターンSのコピー)をそれぞれサイジング処理して実線で示すパターンを得、それらをSUB処理して図35(c)に示すパターンQS1,QS2,SU1,SU2を得る。
【0148】
以上記述したように、本実施の形態によれば、以下の効果を奏する。
(1)ステップ22では、階層設計されたマスクパターンデータ11(入力パターンデータ12)から検出した重なり合うパターンの階層間の重なり情報を作成し、ステップ23では、重なり情報に基づいて、重なり合うパターンを持ち上げて候補パターンデータ14及び削除パターンデータ15を作成する。そしてステップ24では、候補パターンデータ14から削除パターンデータ15を削除して重なりのないパターンデータ16を作成するようにした。その結果、重なりのないパターンデータ16を作成することで、マスクパターンデータ11の階層構造をほぼ保持したまま階層データ17を作成することができる。
【0149】
(2)ステップ22では、重なり合うパターンのそれぞれが所属するストラクチャのストラクチャ名と互いのパターンの関係に基づく状況に応じて、重なり情報として単独持ち上げ情報と連結持ち上げ情報と代表情報を作成するようにした。その結果、重なり状況に応じて作成する情報を変更することにより、展開するパターン数が少なくなり、作成される階層データのデータ量増加を抑制することができる。
【0150】
(3)サイジング指定がある場合には仮候補パターンデータ14aと削除パターンデータ15を合成した候補パターンデータ14を作成するようにした。その結果、この合成後の候補パターンにサイジング処理を施すことで、パターンが離間してスリットが発生するのを防ぐことができる。
【0151】
(4)ステップ24では、サイジングしない場合は、各階層毎に候補パターンデータ14から削除パターンデータ15を削除してパターンデータ16を作成し、サイジングする場合は、各階層毎に候補パターンデータ14と削除パターンデータ15をそれぞれサイジング後、各階層毎に候補パターンデータ14から削除パターンデータ15を削除してパターンデータ16を作成するようにした。その結果、サイジング後の図形を損なうことなくパターンデータ16ひいては階層データ17を作成することができる。
【0152】
(5)ステップ22では、重なり合うパターンを含まない非侵入領域を設定し、ステップ23では、非侵入領域に含まれる削除パターンを持ち上げないようにした。その結果、繰り返し性のある削除パターンのうち、非侵入領域に含まれる削除パターンを持ち上げないことで、ストラクチャに展開する削除パターンのデータ量を少なくすることができる。
【0153】
(6)階層構造を保持した階層データ17を作成することができるため、その階層データからデータ量が少ない露光データ18を作成することができると共に、その露光データ19の変換に要する処理時間を短縮することができる。
【0154】
尚、前記実施形態は、以下の態様に変更してもよい。
○上記実施形態では、階層解析を図1のステップ21において実施したが、ステップ22又はステップ23において実施する構成としても良い。
【0155】
○上記実施形態は、繰り返し性の多いパターンを必要とするメモリ品種のみならず、階層構造を使用したデータであれば適用できるため、ロジック品種、システムLSI等の階層化設計された半導体集積回路用マスクパターンデータに幅広く適用できる。
【0156】
以上の実施形態をまとめ、本発明の構成に関する以下の事項を開示する。
(A) 請求項1に記載のデータ作成方法において、前記第1ステップでは、前記重なり合うパターンのそれぞれが所属するストラクチャのストラクチャ名と互いのパターンの関係に基づく状況に応じて、前記重なり情報として単独持ち上げ情報と連結持ち上げ情報と代表情報を作成することを特徴とするデータ作成方法。このように、重なり状況に応じて作成する情報を変更することにより、展開するパターン数が少なくなり、作成される階層データのデータ量増加を抑制することができる。
【0157】
(B) 上記(A)に記載のデータ作成方法において、前記第1ステップでは、(1)重なり合うパターンのそれぞれが所属するストラクチャのストラクチャ名が同じ場合、(2)重なり合うパターンのそれぞれが所属するストラクチャのストラクチャ名が違う場合で互いに直系関係にある場合、(3)重なり合うパターンのそれぞれが所属するストラクチャのストラクチャ名が違う場合で互いに傍系関係にある場合、の3つの場合の状況に基づいて、前記重なり情報として単独持ち上げ情報、連結持ち上げ情報、代表情報を作成することを特徴とするデータ作成方法。
【0158】
(C) 請求項1に記載のデータ作成方法において、前記第2ステップでは、前記重なり合うパターンに共通のストラクチャに、前記候補パターンを持ち上げた前記候補パターンデータを作成し、前記削除パターンのコピーを持ち上げた前記削除パターンデータを作成することを特徴とするデータ作成方法。
【0159】
(D) 請求項1に記載のデータ作成方法において、前記第2ステップは、前記重なり情報に基づいて前記候補パターンデータを作成する単独持ち上げステップと、前記重なり情報に基づいて前記削除パターンデータを作成する連結持ち上げステップと、を含むことを特徴とするデータ作成方法。
【0160】
(E) 上記(D)に記載のデータ作成方法において、前記第2ステップは、更に、サイジング指定がある場合には前記候補パターンと前記削除パターンを合成した候補パターンデータを作成するステップを含むことを特徴とするデータ作成方法。この合成後の候補パターンにサイジング処理を施すことで、パターンが離間してスリットが発生するのを防ぐ。
【0161】
(F) 階層設計されたマスクパターンデータからパターンに重なりのない露光データを作成するための階層データを作成するデータ作成装置であって、前記マスクパターンデータの階層間の重なり情報を収集する情報収集手段と、前記重なり情報に基づいて、重なり合うパターンを持ち上げて候補パターンデータ及び削除パターンデータを作成する第1のデータ作成手段と、前記候補パターンデータから削除パターンデータを削除して重なりのないパターンデータを作成する第2のデータ作成手段と、を有することを特徴とするデータ作成装置。
【0162】
(G) 階層設計されたマスクパターンデータからパターンに重なりのない露光データを作成するための階層データを作成するプログラムデータを記録したコンピュータ読み取り可能な記録媒体であって、前記プログラムは、前記マスクパターンデータの階層間の重なり情報を収集するステップと、前記重なり情報に基づいて、重なり合うパターンを持ち上げて候補パターンデータ及び削除パターンデータを作成するステップと、前記候補パターンデータから削除パターンデータを削除して重なりのないパターンデータを作成するステップと、を有する方法を実行する、記録媒体。
【0163】
【発明の効果】
以上詳述したように、本発明によれば、重なりパターンの状況に応じて重なり情報を作成し、その情報に基づいて作成した候補パターンデータ及び削除パターンデータから階層データを作成することで、展開するパターンの数が少なくなり、作成する階層データのデータ量増加を抑制することができる。
【0164】
作成した重なり情報に基づいて重なり合うパターンを持ち上げて候補パターンデータと削除パターンデータを作成するようにしたため、マスクパターンデータの階層構造をほぼ保持して階層データを作成することができるので、その階層データから露光データに変換する処理時間を短縮することができる。
【図面の簡単な説明】
【図1】 一実施形態の露光データ作成処理のフロー図である。
【図2】 一実施形態のデータ作成装置の概略構成図である。
【図3】 露光データ作成用階層データのレイアウト図である。
【図4】 露光データ作成用階層データの階層木図である。
【図5】 露光データ作成用階層データのパターン図である。
【図6】 情報テーブル作成処理のフロー図である。
【図7】 重なり調査を説明するためのレイアウト図である。
【図8】 重なり調査を説明するデータの階層木図である。
【図9】 (a)〜(c)は重なり調査の手順を示すレイアウト図である。
【図10】 (a)〜(d)は重なり調査の手順を示すレイアウト図である。
【図11】 情報追加処理のフロー図である。
【図12】 (a),(b)は展開番号の説明図である。
【図13】 展開番号を説明するデータの階層木図である。
【図14】 単独及び連結展開番号を説明するデータの階層木図である。
【図15】 単独及び連結展開番号の説明図である。
【図16】 単独及び連結持ち上げ情報、代表情報の構造説明図である。
【図17】 重なり情報の追加を説明するデータの階層木図である。
【図18】 (a),(b)は重なり情報を追加するテーブルの説明図である。
【図19】 非侵入領域の説明図である。
【図20】 候補及び削除パターンデータ作成処理のフロー図である。
【図21】 単独持ち上げ処理のフロー図である。
【図22】 単独持ち上げ処理のフロー図である。
【図23】 単独及び連結持ち上げパターンデータの構造説明図である。
【図24】 連結持ち上げ処理のフロー図である。
【図25】 連結持ち上げ処理のフロー図である。
【図26】 候補及び削除パターンデータの構造説明図である。
【図27】 パターンデータ作成処理のフロー図である。
【図28】 SUB処理のフロー図である。
【図29】 OR処理、サイジング処理のフロー図である。
【図30】 (a)〜(e)は単独展開番号の説明図である。
【図31】 単独及び連結持ち上げ情報、代表情報の関係図である。
【図32】 (a)は候補パターン、(b)は削除パターンの説明図である。
【図33】 (a)は候補パターン、(b)は削除パターンの説明図である。
【図34】 (a)〜(c)は図形論理処理後のパターン図である。
【図35】 (a)〜(c)は図形論理処理後のパターン図である。
【図36】 (a),(b)は階層化設計データの説明図である。
【図37】 マスクパターンデータのレイアウト図である。
【図38】 マスクパターンデータの階層説明図である。
【図39】 階層化設計データのパターン図である。
【図40】 従来方法による階層データのレイアウト図である。
【図41】 従来方法による階層データの階層説明図である。
【図42】 従来方法による階層データのパターン図である。
【図43】 展開して作成した階層データのパターン図である。
【符号の説明】
11 マスクパターンデータ
14 候補パターンデータ
15 削除パターンデータ
16 パターンデータ
17 階層データ
18 露光データ
22 第1ステップ
23 第2ステップ
24 第3ステップ
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to exposure data obtained by removing overlapping patterns from mask pattern data of a hierarchically designed semiconductor integrated circuit device, and a data creation method for creating hierarchical data for creating the exposure data.
[0002]
In the process of exposing exposure data for semiconductor integrated circuits (hereinafter simply referred to as exposure data) to a mask wafer, if there is a pattern overlap in the exposure data, multiple exposure is performed. For this reason, exposure data that eliminates pattern overlap is required. For this reason, after performing overlap removal processing on layered designed semiconductor integrated circuit mask pattern data (hereinafter simply referred to as mask pattern data), the data is subjected to format conversion processing to create exposure data. The method is taken.
[0003]
In recent years, semiconductor integrated circuits (LSIs) have been increased in scale and integration, and the amount of mask pattern data and exposure data necessary to create the LSI has also increased. Therefore, the data amount is reduced by hierarchizing the mask pattern data and the exposure data, and creating matrix-like pattern data for a repetitive pattern. However, if there is an overlap in part of the matrix pattern data, repeatability is not preserved in the above overlap removal processing, that is, the overlap must be removed by developing the matrix pattern data. Increase in data amount and conversion time to exposure data become longer. For this reason, it is required to create exposure data creation data that retains repeatability.
[0004]
[Prior art]
Conventionally, as a first method for creating exposure data, all the mask pattern data designed in a hierarchical manner is developed, and data for creating exposure data in which pattern overlap is eliminated in advance is created. Thereafter, a method has been used in which exposure data creation data that does not overlap is converted into exposure data and input to an exposure apparatus.
[0005]
Hierarchical mask pattern data has the following characteristics, and such a structure is called a hierarchical structure.
(A) The hierarchical structure is expressed in units of structures.
(B) The content of the structure includes a pattern and arrangement information of another structure.
(C) Structures having the same name are always composed of the same pattern and structure arrangement information.
[0006]
The mask pattern data has a hierarchical structure represented by the structure tree shown in FIG. 36A, and each structure and pattern is arranged as shown in FIG. The structure relationship in such a hierarchical structure is expressed in the same way as the family tree, such as a parent-child relationship.
[0007]
36A and 36B, the mask pattern data is composed of structures A, B, C, D, E, F, G and patterns P, Q, R. . In FIG. 36A, the structure is surrounded by a circle and the pattern is surrounded by a square. This notation is commonly used in the following description.
[0008]
For example, the structure B is a child structure of the structure A, and the structure D is a child structure of the structure B. Conversely, structure A is the parent structure of structure B, and structure B is the parent structure of structure D. Furthermore, structures A and B are ancestor structures of structure C, and structures D and E are descendant structures of structure A. The structure D is in a direct relationship with the structure A and in a side relationship with the structure C. In particular, the topmost structure A may be referred to as a top structure.
[0009]
Such hierarchical design is performed for the purpose of facilitating the design and reducing the amount of data as the scale of the semiconductor integrated circuit increases.
However, with the development of large scale semiconductor integrated circuits, the method for creating exposure data creation data that completely expands the mask pattern data and eliminates the overlap, the work area required during the creation process, and the created exposure data creation The amount of data becomes enormous and the creation process takes time.
[0010]
Also, in the process of converting exposure data creation data to exposure data, processing using a hierarchical structure is often performed in order to shorten the creation time and reduce the amount of data. Therefore, it is very important that the exposure data creation data has a hierarchical structure.
[0011]
Therefore, a second method of creating exposure data creation hierarchical data (hereinafter simply referred to as hierarchical data) without overlapping without performing the full development process using the hierarchical structure of the mask pattern data is conceivable.
[0012]
The second method is a method of reconstructing a hierarchy by using an overlapping pattern of mask pattern data as a pattern of the same structure, and creating hierarchical data without overlapping. For example, the mask pattern data laid out as shown in FIG. 37 has the hierarchical structure shown in FIG. The mask pattern data is composed of structures A to E, and structures C, D, and E have patterns R, S, and T, patterns P and Q, and patterns U and V, respectively (see FIG. 39).
[0013]
In this mask pattern data, the pattern S possessed by the structure C in the upper and lower tiers of the left end column overlaps the pattern Q possessed by the structure D, and the pattern S possessed by the structure C in the upper and lower tier rows overlaps the pattern U possessed by the structure E. (The overlapping part is indicated by a broken-line circle in the figure). Therefore, in the second method, the overlapping patterns Q and S and patterns S and U are developed into a common ancestor structure A. In the following, expanding a pattern to an ancestor structure will be referred to as raising the pattern to the ancestor structure.
[0014]
Incidentally, the mask pattern data has twelve structures C arranged in a matrix. Therefore, when the pattern S is lifted from a part of the structures C to the ancestor structure A, the structure C having the pattern S and the structure C not having the pattern S coexist, resulting in a contradiction. In order to avoid this, the pattern S that does not directly overlap the pattern Q or U is also lifted to the structure B (or structure A). As a result, the hierarchical data shown in FIGS. 40 is a layout diagram of hierarchical data, FIG. 41 is a hierarchical tree diagram of hierarchical data, and FIG. 42 is a layout diagram of patterns of each structure.
[0015]
In FIG. 40 to FIG. 42, the same reference numerals are given for easy understanding of the hierarchical relationship between the structure whose structure has been changed and the original structure. The lifted pattern or the OR-processed pattern is labeled so that the original pattern can be easily understood. That is, the patterns QS1 and QS2 in FIG. 41 are obtained by performing OR processing (logical sum operation) on the pattern Q and the pattern S, and the patterns SU1 and SU2 on the pattern S and the pattern U, respectively. In addition, the patterns S1 to S8 are patterns obtained by lifting the original pattern S (but not overlapping) to the structure B and developing it. The reason why the pattern S is lifted to the structure B is that the data amount is generally smaller than that when the pattern S is lifted to the structure A.
[0016]
In this way, the hierarchical structure is changed, and OR processing is performed for each structure unit (each hierarchical unit) to create hierarchical data without overlapping.
The amount of pattern data of hierarchical data created by this method is greatly reduced compared to the case of full development.
[0017]
In general, since a pattern is expressed by vertices (or line segments), the amount of pattern data is proportional to the total number of vertices of each pattern. The number of pattern vertices is compared between the data created by the second method shown in FIG. 40 and the data created by developing the first method shown in FIG. When data is created by the second method, the number of vertices is 8 in each of the patterns QS1, QS2, SV1, and SV2, and the number of vertices is 4 in each of the patterns S1 to S8, P, R, T, and V. Will be 80. On the other hand, when the data is generated by the first method, the number of vertices of the pattern is 40 for the number of vertices 4 and 4 for the number of vertices 8 (concave pattern), for a total of 192. In this way, the second method has a significant data amount reduction compared to the first method.
[0018]
[Problems to be solved by the invention]
However, even in the second method, the amount of pattern data is not sufficiently reduced depending on the data, and the amount of hierarchical data increases. In the above, since the pattern S is lifted from the structure C having the repeatable patterns R, S, and T to the structure B, the repeatability of the pattern S cannot be maintained. For this reason, for example, when the number of structures C is not 12 (= 3 × 4) but a larger number, for example, 306 (3 × 102), 302 patterns S are developed in structure B. Since the number alone is 1028 (= 4 × 302), the total number of pattern vertices is 1256. Thus, the second method also has a problem that the amount of data increases.
[0019]
In addition, since it is impossible to create data that retains repeatability, the processing efficiency of the process of converting from hierarchical data to exposure data is reduced. For example, when creating block exposure data as exposure data, there is a process of extracting a repeated pattern in a process of converting from hierarchical data to exposure data. In this extraction process, repeated patterns (patterns S2 to S7 in FIG. 42) are extracted from the lifted patterns (patterns S1 to S8 in FIG. 42). Since these patterns were originally repeatable patterns, it took twice time (development and extraction), and the processing time required for the conversion, and thus the overall processing time required to create exposure data from the mask pattern data was long. There is a problem of becoming.
[0020]
The present invention was made to solve the above problems, and its purpose is to create hierarchical data for creating exposure data while maintaining repeatability in mask pattern data designed in a hierarchical manner, It is an object of the present invention to provide a data creation method capable of reducing the data amount of the hierarchical data.
[0021]
[Means for Solving the Problems]
  In order to achieve the above object, the invention according to claim 1 is a mask pattern data having a hierarchical design.Multiple structures that make upA data generation method for generating hierarchical data for generating exposure data having no overlapping pattern from the first step of generating overlapping information between layers of overlapping patterns detected from the mask pattern data, and the overlapping Based on informationSaidOverlapping patternsPattern with lower priorityA second step of creating candidate pattern data and deletion pattern data by lifting the pattern and a third step of deleting deletion pattern data from the candidate pattern data to create non-overlapping pattern dataIn the first step, when the structures to which the overlapping patterns belong are different from each other, a higher priority is given to a pattern that is arranged in the structure and that has a larger number of the same patterns as the overlapping patterns. And setting the overlap information according to the priority.In this way, by creating pattern data that does not overlap from candidate pattern data and deletion pattern data created based on the overlap information, it is possible to create hierarchical data while maintaining almost the hierarchical structure of the mask pattern data. .
[0022]
  AlsoAs in the invention of claim 2,When the number of overlapping patterns is the same, a high priority is set for a pattern with many vertices among the overlapping patterns.
[0023]
The second step includes the step of creating the candidate pattern data and the deletion pattern data in units of layers based on the overlap information, as in the invention described in claim 3.
[0024]
In the third step, as in the invention according to claim 4, when sizing is not performed, the deletion pattern data is deleted from the candidate pattern data for each hierarchy to create hierarchical data, and when sizing, After sizing the candidate pattern data and the deletion pattern data for each layer, the deletion pattern is deleted from the candidate pattern for each layer to create hierarchical data. Thereby, correctly sized hierarchical data can be created.
[0025]
In the first step, a non-intrusion area not including the overlapping pattern is set in the first step, and a deletion pattern included in the non-intrusion area is not lifted in the second step. As a result, among the repetitive deletion patterns, the deletion pattern included in the non-intrusion area is not lifted, thereby reducing the data amount of the deletion pattern developed in the structure.
[0026]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment embodying the present invention will be described with reference to FIGS.
FIG. 2 is a block diagram schematically showing the hardware configuration of the exposure data creation apparatus of this embodiment.
[0027]
The exposure data creation device 1 includes a central processing unit (hereinafter referred to as CPU) 2 and a terminal device 3, a disk device 4, and a memory device 5 connected thereto.
The terminal device 3 includes an input device such as a keyboard and a mouse device (not shown) used for request and instruction from a user, input of parameters, etc., and a VDT, monitor, printer, etc. used for displaying pattern images, processing results, etc. Display devices.
[0028]
The disk device 4 is usually a storage device such as a magnetic disk device, an optical disk device, an optical disk device, etc., which includes program data for the exposure data creation process and first to eighth files 11 to 18 shown in FIG. The CPU 2 is activated in response to the operation of the terminal device 3, and executes exposure data creation processing according to the steps of FIG. 1 may be created in different storage devices or memory devices 5, or each file 11-18 may be created across a plurality of storage devices.
[0029]
The memory device 5 is a storage device and provides faster access than the disk device 4, but has a smaller capacity. Therefore, the CPU 2 uses the memory device 5 for the purpose of high-speed access to data with a small processing size. Note that the file 12 for storing the internal data of FIG. 1 may be created in the memory device 5.
[0030]
Program data for the exposure data creation process is provided using the recording medium 6. The recording medium 6 is a computer-readable medium such as a flexible disk, CD-ROM, hard disk, memory card, ROM, punch card, and tape.
[0031]
The recording medium 6 includes a portable storage device that can be read by a main storage device (memory device, etc.), an auxiliary storage device (disk device) of another computer that stores program data provided via a communication medium, or the computer. Includes media. Furthermore, not only a recording medium that records a program that can be directly executed by a computer, but also a recording medium that records a program that can be executed once installed on another recording medium (such as a hard disk), or an encrypted program In addition, a recording medium on which a compressed program is recorded is also included.
[0032]
The provided program data is temporarily copied or installed from the recording medium 6 to the disk device 4 and then loaded into the memory device 5 or directly loaded from the recording medium 6 to the memory device 5 and executed. In addition, even when the program is stored and provided in another computer connected via a communication medium, it is copied or installed in the disk device 4 after being received from another device via the communication medium, loaded into the memory device 5 and executed. To do.
[0033]
Next, an outline of the exposure data creation process will be described together with data stored in advance in the first to eighth files 11 to 18 or data stored in the exposure data creation process in accordance with the flowchart of FIG.
[0034]
The first file 11 stores mask pattern data as input data for exposure data creation processing. The mask pattern data is composed of pattern data of elements such as transistors, various cells, and signal wirings connecting them based on logic circuit data in advance, and the pattern data has a hierarchical structure.
[0035]
In step 21, the CPU 2 in FIG. 2 reads the mask pattern data designed in a hierarchical manner, performs OR processing for each structure (each hierarchy), and removes the overlapping pattern data in the same structure (in the same hierarchy). Arrangement data is created and stored in the second and third files 12 and 13, respectively. In step 21, the CPU 2 performs hierarchical analysis of the mask pattern data, and obtains information such as the number of patterns held by each structure, the number of arrangements of each structure, and the number of patterns when each structure is developed as a top. Ask. These pieces of information are obtained without actually fully expanding by searching the hierarchical tree of mask pattern data.
[0036]
In step 22, the CPU 2 in FIG. 2 collects pattern overlap information, and creates single lift information, joint lift information, representative information, and non-intrusion areas. Single lift information and linked lift information
(1) If the structure name of the structure to which the overlap pattern belongs is the same,
(2-A) When the structure name of the structure to which the overlap pattern belongs is different and has a direct relationship,
(2-B) If the structure name of the structure to which the overlap pattern belongs is different and is in a side relationship,
It is created according to the three cases.
[0037]
In step 23, the CPU 2 shown in FIG. 2 uses the information created in step 22 as a candidate pattern data and deletion pattern data created by performing single lifting and linking lifting of overlapping patterns, and the fourth and fifth files 14, 15. Candidate pattern data and deletion pattern data are pattern data to be subjected to graphic logic subtraction processing (SUB processing) in order to eliminate overlapping.
[0038]
Candidate pattern data is data that has been raised to an ancestor structure in order to eliminate pattern overlap, and deletion pattern data is data that has been copied to the same structure as the candidate pattern data in order to exclude overlapping portions from the candidate pattern data. Therefore, since the structure change is not added to the original pattern data designated as the deletion pattern data, the repeatability of the structure including the pattern is maintained.
[0039]
In step 24, the CPU 2 in FIG. 2 executes pattern data created by performing OR processing, sizing processing, and SUB processing on the candidate pattern data and deletion pattern data in the fourth and fifth files 14 and 15 in the sixth file. 16. By this SUB process, the part which overlaps with deletion pattern data is removed from candidate pattern data, and the pattern data without an overlap are produced.
[0040]
In step 25, the CPU 2 in FIG. 2 creates hierarchical data excluding pattern overlap by using the non-overlapping pattern data created in step 24 and the arrangement data of the third file 13. Then, the CPU 2 stores the created hierarchical data in the seventh file 17.
[0041]
In step 26, the CPU 2 in FIG. 2 converts the format of the hierarchical data created in step 25 to create exposure data, and stores the exposure data in the eighth file 18.
[0042]
A case will be described in which the processes of steps 21 to 25 are performed on the mask pattern data of FIG.
3 is a layout diagram of hierarchical data after processing, that is, without overlapping, FIG. 4 is a hierarchical tree diagram thereof, and FIG. 5 is a layout diagram of patterns of structures A, C, D, and E constituting the hierarchical data after processing. It is. The structures A to E shown in FIGS. 3 to 5 are those whose structures have been changed by the above processing. In the following description, the same reference numerals are used to make it easier to understand the correspondence before and after the creation. .
[0043]
First, in steps 22 and 23, the CPU 2 in FIG. 2 detects overlapping patterns Q and S and patterns S and U, and creates information corresponding to each of them. Then, the CPU 2 creates candidate pattern data and deletion pattern data based on the created information. In the mask pattern data shown in FIG. 37, the number of patterns Q and S and the number of patterns U and S are compared, and patterns Q and U with a small number of patterns are used as candidate patterns. The candidate pattern data 14 developed in the structure A, which is the common ancestor of each other, is created. Then, the CPU 2 creates the data 15 using the pattern S overlapping the candidate pattern data 14 as a deletion pattern. By using a pattern with a small number of arrangements as candidate pattern data, the data amount of the pattern developed in the structure is reduced.
[0044]
Next, in step 24, the CPU 2 creates data of patterns QS1, QS2, SU1, and SU2 (see FIG. 2) obtained by cutting the overlapping portion of the candidate pattern data 14 and the deletion pattern data 15 from the candidate pattern data. As a result, as shown in FIGS. 4 and 5, each structure of the created hierarchical data has structure A having patterns QS1, QS2, SU1, and SU2, structure D having pattern P, and structure E having pattern V. . The structures of the structures B and C are not changed. That is, the repeatability of the structure C (patterns R, S, T) is maintained.
[0045]
Accordingly, the total number of vertices of the pattern possessed by the hierarchical data after the above processing is 8 for the patterns QS1, QS2, SU1, and SU2, and 4 for each of the patterns P, R, S, T, and V. Therefore, it is 52 pieces. As described above, the total number of vertices was 1526 in the first conventional method, and 80 in the second conventional method.
[0046]
As described above, according to the present embodiment, the amount of hierarchical data can be significantly reduced as compared with the conventional method. Further, since the repeatability of the structure C (patterns R, S, T) is maintained, the time required for the process of converting from hierarchical data to exposure data is short, that is, the processing efficiency can be increased.
[0047]
Next, each process will be described in detail. Note that the files 11 to 18 shown in FIG. 1 and the data stored in the files necessary for describing each process will be described with reference numerals of the files storing the files.
[0048]
First, the process of step 22 will be described in detail.
FIG. 6 is a flowchart of information creation processing (information creation means) for creating simple lifting information, connection lifting information, and representative information in step 22 according to the overlapping state. That is, steps 31 to 34 in FIG. 6 are part of the sub-step of step 22. Note that FIGS. 7 to 10 are used to describe the information creation process.
[0049]
The CPU 2 sequentially selects the structures constituting the input pattern data 12 to be processed from the bottom up (in order from the bottom (lowermost layer) structure of the hierarchical tree upward), and with respect to the pattern of the selected structure. It is determined whether there is an overlap of patterns included in other structures. Then, when there is an overlap of patterns, information created for the selected structure pattern is added. When the CPU 2 loops the process for all the structure types, that is, for the structure types and determines an overlap, the CPU 2 ends the information creation process and returns to the original state.
[0050]
More specifically, step 31 is an end determination process, and the CPU 2 determines whether or not the process has been completed for all the structure types. If not, the process proceeds to step 32 to loop over all the structure types. When the process is completed for all types, the process ends and returns to the caller.
[0051]
In step 32, the CPU 2 considers the selected structure as the top structure, and investigates the overlap using the sweep method. In the overlap investigation, a frame of the child structure existing area and a pattern existing area frame are placed and the overlap is determined. When there is an overlap, the frame of the child structure existing area is replaced with the frame of the grandchild structure existing area and the frame of the pattern existing area. The CPU 2 performs this operation, finally replaces the frame of the pattern existence area with the pattern data, and detects the overlap of the patterns.
[0052]
Here, the structure existing area is a frame indicating a pattern existing area when the structure is fully developed. Hereinafter, it will be simply referred to as a frame. In addition, the frame overlap determination is made based on the identification number of the group to which the frame belongs in addition to whether there is a geometric overlap.
[0053]
By using this identification number, it is possible to prevent multiple overlaps from being investigated, and it is possible to find only the overlap of patterns that are the structures in which the closest ancestor is selected as a common ancestor.
[0054]
This identification number is given as follows. The selected structure and its child structure are all given different identification numbers. The same identification number as the parent structure is given to the frame of the selected structure and the structures other than its child structures (grandchild, great-grandchild structure, etc.). Further, the same identification number as that of the belonging structure is given to the frame of the pattern.
[0055]
For example, a procedure for finding an overlap in the pattern data shown in FIGS.
The structure of the pattern data will be described. As shown in FIG. 8, the structure A has two child structures B, the structure B has two child structures C, and the structure C has patterns P and Q.
[0056]
As shown in the lower right of FIG. 7, the two structures C included in the structure B overlap, and the pattern P included in the two structures C overlaps in the structure B. Furthermore, as shown in the upper left of FIG. 7, there is an overlap in the two structures B that the structure A has.
[0057]
The CPU 2 selects the structures in the order of structures C, B, A from the bottom up.
First, since the structure C selected first is the bottom structure, the CPU 2 does not check the overlap.
[0058]
Next, the CPU 2 checks the overlap of the selected structure B. FIGS. 9A to 9C are explanatory diagrams for examining the overlap of the structure B. FIG.
In FIG. 9A, the CPU 2 places a frame of the child structure C in the structure B, and gives different identification numbers 1 and 2 to the frame of the child structure. The given identification number is shown in parentheses in the figure. Since the frame of the structure C has an identification number different from that of the geometric overlap, it is overlapped.
[0059]
In FIG. 9B, the CPU 2 places frames of the patterns P and Q of the child structure C in the structure B, and gives the same identification numbers 1 and 2 as the belonging structure C to the frames of the patterns P and Q, respectively. Since the frame of the pattern P has an identification number different from the geometric overlap, the CPU 2 determines that “there is overlap”. On the other hand, since the frame of the pattern Q has no geometric overlap, the CPU 2 determines that “no overlap”.
[0060]
In FIG. 9C, the CPU 2 finally compares the pattern data (line segment data, etc.) of the pattern P with the frame of the pattern P determined to be “overlapping”, and “overlapping the pattern P based on the comparison result. It is determined as “Yes” and the overlap is determined.
[0061]
Next, a case where the overlap in the structure A is examined will be described. FIGS. 10A to 10D are explanatory diagrams for examining the overlap of the structure A. FIG.
In FIG. 10A, the CPU 2 places a frame of the child structure B on the structure A, and gives different identification numbers 1 and 2 to the frame of the child structure. Since the frame of the structure B has an identification number different from the geometrical overlap, the CPU 2 determines that “there is overlap”.
[0062]
In FIG. 10B, the CPU 2 places a frame of a child structure C (a grandchild structure of the structure A) in the structure A, and gives the same identification numbers 1 and 2 as the parent structure B to the frame of the structure C, respectively. All the frames of the structure C are geometrically overlapped, but the identification numbers are different only in the frame of the structure C that creates the middle overlap. Therefore, the CPU 2 determines that the frames of the two structures C in the middle are “overlapping”.
[0063]
In FIG. 10C, the CPU 2 places the frame of the pattern of the structure C that creates the middle overlap in the structure A, and gives the same identification numbers 1 and 2 as the belonging structure C to the frame of the pattern. Since the frame of the pattern P has an identification number different from the geometric overlap, the CPU 2 determines that “there is overlap”. On the other hand, since the frame of the pattern Q has no geometric overlap, the CPU 2 determines that “no overlap”.
[0064]
In FIG. 10D, the CPU 2 finally compares the pattern data (line segment data, etc.) of the pattern P using the frame of the pattern P determined to be “overlapping”, and “overlapping the pattern P based on the comparison result. It is determined as “Yes” and the overlap is determined.
[0065]
According to this method, it is possible to efficiently find the overlapping patterns P and Q that are the structures in which the closest ancestors are selected from the common ancestors without developing them.
[0066]
When determining that the patterns P and Q are overlapped as described above, the CPU 2 proceeds from step 33 to step 34 in FIG. 6 and adds information to the overlapping patterns in step 34. This addition of information is invoked each time an overlap is found in the pattern in the overlap investigation. Therefore, in the case of the data shown in FIGS. 7 and 8, the information addition in step 34 is called once in the structure B and once in the structure A.
[0067]
Next, the procedure for creating the single lifting information, the connection lifting information, the representative information, and the non-intrusion area will be described with reference to FIGS.
FIG. 11 is a flowchart showing a procedure for creating single lifting information, connection lifting information, representative information, and non-intrusion areas for two overlapping patterns. Here, two overlapping patterns are illustrated and described as patterns P and Q.
[0068]
Step 41 is a priority determination process, and the CPU 2 in FIG. 2 determines each priority according to the overlapping state of the patterns P and Q. Step 42 is information addition processing, and the CPU 2 adds information on the patterns P and Q as single lifting information and connection lifting information based on the priority determined in step 41. Step 42 includes the determination process of step 43 and the additional processes of steps 44a to 44c, 45a to 45d, and 46a to 46c based on the determination result. More specifically, based on the priority numbers of the two patterns P and Q determined in step 41, the CPU 2 performs steps 44a to 44c when the priority number of the pattern Q is large, and step 45a when the priority numbers are the same. If the priority number of the pattern P is large, steps 46a to 46c are executed.
[0069]
When these processes are completed, the CPU 2 executes an area setting process in step 47. In step 47, the CPU 2 sets a non-intrusion area using the existing areas of patterns P and Q and the sizing width. The non-intrusion area is set so as not to lift unnecessary deletion patterns.
[0070]
Next, each process will be described in detail.
First, the priority determination process in step 41 will be described.
The CPU 2 determines the priority according to the pattern overlap state, specifically, the structure to which the pattern belongs. The relationship between the overlapping situation and the priority is as follows.
(1) The structure name to which the overlapping pattern belongs is the same. Both patterns have the same priority.
(2) The structure name to which the overlapping pattern belongs is different.
(2-A) When there is a direct relationship, a pattern belonging to a structure corresponding to a descendant is set as a high priority.
(2-B) If there is a side-by-side relationship, a pattern belonging to a structure with a large number of arrangements when expanded is set to a high priority. If the number of arrangements in the case of development is the same, a pattern having a large number of pattern vertices is set as a high priority. If the number of vertices is the same, the priority is the same.
[0071]
The relationship between the priority, the connected lifting information, and the individual lifting information is as follows.
(1) When priority is the same. The joint development number of each pattern is added as joint lifting information, and the single development number of each pattern is added as single lifting information.
(2) When the priorities are different. The joint development number of each pattern is added as joint lifting information, and the single development number of a pattern with a low priority is added as single lifting information.
[0072]
Here, a single expansion number and a connected expansion number will be described.
12A, 12B, and 13 are diagrams for explaining the expansion numbers. The expansion number is an identification number that uniquely identifies the pattern in the expansion image when a certain structure is fixed. Specifically, it can be determined by the following procedure.
[0073]
(1) The number of patterns held in each structure (the number of patterns directly held) and the number of developed patterns (number of patterns in the developed image) are obtained (FIG. 12A). This number is obtained by following the hierarchical tree in the pre-processing in step 21 of FIG.
[0074]
(2) A number is assigned to the parent-child relationship of the input pattern data as shown in FIG. The general rule of assignment is that when structure X has child structures Y and Z, structure X has Nx patterns, Ny expansion patterns of structure Y, and Nz expansion patterns of structure Z. A number of 0 to Nx-1 is assigned to the possession pattern of N, Nx to Nx + Ny-1 to the possession pattern of Structure Y, and a number of Nx + Ny to Nx + Ny + Nz-1 to the possession pattern of Structure Z.
[0075]
(3) The expansion number is obtained by adding the minimum value of the assigned numbers. In FIG. 13, the numbers assigned to the structures and patterns are displayed in the vicinity thereof. When the structure A is used as a reference, the expansion number of the pattern S (pattern indicated by an arrow) that is the third from the left is (number 5 assigned to the structure B that is the second from the left) + (assigned to the structure D Number 1) + (Number 1 assigned to pattern S) = 7. Further, the development number of the third pattern S from the left when the structure B is used as a reference is (number 1 assigned to the structure D) + (number 1 assigned to the pattern S) = 2.
[0076]
The consolidated expansion number is a thing in which the link information is reflected in the expansion number. The calculation rule is calculated by selecting one representative expansion number from the expansion numbers of the connected patterns and replacing it with the expansion number selected as the representative in the ancestor structure. And the expansion number itself which does not reflect connection information becomes a single expansion number.
[0077]
14 and 15 are diagrams for explaining the difference between the single expansion number and the linked expansion. The patterns P and Q overlap, and the structure Y is assigned the number 1000, the structure Z is 200, the structure A is 100, the structure B is 20, the structure C is 10, the structure D is 35, and the structure E is 40. . In this case, the independent expansion number and the connected expansion number based on each of the structures X to E are as shown in FIG.
[0078]
The difference is in the single expansion number and the connected expansion number of the pattern Q based on the structures X, Y, and Z. This difference is that the patterns P and Q are connected by the structure A, and the ancestor structure of the structure A is replaced with the connection expansion number of P as a representative.
[0079]
Next, a method of adding a single expansion number to the single lifting information and a method of adding linked expansion to the expansion lifting information will be described.
FIG. 16 is a diagram for explaining the data structure of each piece of information.
[0080]
The single lifting information has information on a single expansion number and a representative information pointer in structure units.
The link lifting information has information of link expansion number, link pointer, and representative information pointer in structure units. The connection pointer is created according to the pattern connection.
[0081]
The representative information is information common to the connected patterns. The representative development number is a development number arbitrarily selected from the connected patterns. The lifting flag is a flag indicating whether or not a pattern having the same connected development is further lifted to an ancestor structure.
[0082]
Next, the information addition process in step 42 in FIG. 11 will be described.
FIGS. 17, 18A, and 18B are diagrams for explaining information addition of each structure.
[0083]
In the pattern data having the structure shown in FIG. 17, if the pattern P and the pattern Q are overlapping patterns, the belonging structure of the pattern P is the structure D, the belonging structure of the pattern Q is the structure F, and the common ancestor and the nearest structure is selected. Structure A.
[0084]
As shown in FIG. 18 (a), bottom-up (structures D, C, B of the structures D, C, B) is provided at the positions corresponding to the structures B, C, D between the pattern P and the structure A, as shown in FIG. Add in order).
[0085]
As shown in FIG. 18 (a), the information on the pattern Q is used as the sole lifting information, and as shown in FIG. 18 (a), bottom-up is performed at a location corresponding to the structures E and F between the pattern Q and the structure A (in the order of structures F, E, A) To add.
[0086]
The reason for adding information bottom-up is to calculate a single expansion number and a consolidated expansion number in each structure.
Further, when adding to the structure A, the flag for raising the representative information is turned off, and the others are turned on, and the information of the pattern P and the pattern Q is connected using the connection pointer.
[0087]
Next, the area setting process in step 47 of FIG. 11 will be described.
FIG. 19 is a diagram for explaining a non-intrusion area. The initial value of the non-intrusion area is set to the structure existing area, and the area side is set backward so as not to intersect with the overlapping pattern existing area. In FIG. 19, the area indicated by the solid line is the existence area of the structure including the pattern P, and the right side of the area is indicated by a one-dot chain line so as not to intersect the existence area of the overlapping patterns P and Q (area indicated by the thick broken line on the right side). Set it back to the position indicated by.
[0088]
If sizing is specified, the sizing width x2 is further retracted inward. In FIG. 19, when there is sizing designation, an area (area indicated by a thick broken line on the left side) set backward by twice the sizing width from the position indicated by the alternate long and short dash line is set.
[0089]
FIG. 19 shows a case where a non-intrusion area is set for a structure including the pattern P. Similarly, a non-intrusion area is also set for a structure including the pattern Q.
[0090]
The backward direction is selected from the four directions of up, down, right and left, and the direction in which the area area after setting is maximized is selected. The non-intrusion area is set for the structure between the selected structure A and the patterns P and Q. For example, in the pattern data having the structure of FIG. 17, the structures B, C, D, E, and F are structures between the structure A and the patterns P and Q.
[0091]
Next, the process of step 23 in FIG. 1 will be described in detail.
FIG. 20 is a flowchart showing a procedure for creating candidate pattern and deletion pattern files in step 23. That is, steps 51 to 55 in FIG. 20 are substeps of step 23.
[0092]
First, the CPU 2 in FIG. 2 loops the steps 51 and 52 by the structure type, that is, the single lifting process of the step 52 is performed for all the types of structures constituting the pattern data bottom-up by the determination process of the step 51. In step 52, the CPU 2 performs the single lifting of the pattern using the single lifting information from the input pattern data 12, and creates temporary candidate pattern data 14a.
[0093]
Next, the CPU 2 loops the steps 53 and 54 by the structure type, that is, the connection lifting process of the step 54 is executed for all types of the structures constituting the pattern data from the bottom up by the determination process of the step 53. In step 54, the CPU 2 uses the lifting information from the temporary candidate pattern data 14 a to perform pattern connection lifting and create deletion pattern data 15.
[0094]
Then, in step 55, the CPU 2 creates the candidate pattern data 14 by synthesizing the temporary candidate pattern data 14a and the deletion pattern data 15 in the case of sizing, and in the case of no sizing, the CPU 2 uses the temporary candidate pattern data 14a as the candidate pattern. 14
[0095]
21 and 22 are flowcharts showing the procedure of the single lifting in step 52 of FIG.
The structure selected from the input pattern data 12 in step 51 will be described as structure A.
[0096]
First, the CPU 2 in FIG. 2 determines whether there is an unprocessed pattern among the patterns held by the structure A in the determination process of step 61, so that the structure A directly holds the steps 61 to 63a and 63b. Loops as much as the current pattern.
[0097]
In step 62, the CPU 2 checks whether there is a single development number that matches the single lift information corresponding to the selected pattern and the structure A. If there is a match, it is determined to lift, and if there is no match, it is determined not to lift. If there is a match, the corresponding representative information candidate creation flag is turned on.
[0098]
If it is determined in step 62 that the pattern is to be lifted, the CPU 2 saves this pattern in a file as single lift pattern data 14b corresponding to the structure A in step 63a. This data is a structure in which the structure A is arranged as a child structure, and is subjected to the single lifting determination again.
[0099]
On the other hand, if it is determined in step 62 that the pattern is not lifted, the CPU 2 designates this pattern as temporary candidate pattern data 14a corresponding to the structure A in step 63b, and the single lifting process for this pattern ends.
[0100]
The data structure of the single pattern data is created in units of structures as shown in FIG. 23 (left). The pattern data pointer is a storage address of input pattern data. The arrangement information is information about the position where the pattern is arranged, and is composed of XY coordinates, rotation, and magnification.
[0101]
Next, the CPU 2 loops the steps 64 to 68a and 68b corresponding to the child structure in which the structure A is arranged by the determination process of step 64 in FIG. Further, the CPU 2 loops the steps 65 to 68a and 68b by the number of the single lift pattern of the child structure B arranged in the structure A based on the single lift pattern data 14b by the determination process of step 65. Note that the single lifting pattern of the structure B is a bottom-up process, and is already created when the structure B is selected before the structure A.
[0102]
In step 66, the CPU 2 combines the arrangement information of the structure B with the arrangement information of the single lifting pattern. In this procedure, the relative arrangement information from the structure B is converted into the relative arrangement information from the structure A.
[0103]
In step 67, the CPU 2 performs the lifting determination in the same manner as in step 62 in FIG. Based on the determination result in step 67, the CPU 2 creates temporary candidate pattern data 14a in step 68a and single lift pattern data 14b in step 68b, similarly to steps 63a and 63b in FIG.
[0104]
24 and 25 are flowcharts showing the procedure for lifting the connection in step 54 of FIG.
The structure selected from the temporary candidate pattern data 14a in step 53 will be described as structure A.
[0105]
First, the CPU 2 in FIG. 2 determines whether or not there is a temporary candidate pattern in the structure A in the temporary candidate pattern data 14a in the determination process in step 71, thereby repeating steps 71 to 73 for the temporary candidate pattern of the structure A. To do.
[0106]
In step 72, the CPU 2 determines whether or not the pattern presence area is included in the non-intrusion area of the structure A. If it is included, it is determined not to lift. If it protrudes even a little, the determination based on the connected expansion number is performed.
[0107]
The determination based on the connection expansion number checks whether there is a connection expansion that matches the connection lifting information corresponding to the pattern and the structure A. If there is no match, it is determined not to lift. If there is a match, the lift flag of the representative information is referred to. If it is on, it is determined that the lift is performed, and if it is off, it is determined that the lift is not performed.
[0108]
In step 73, if the CPU 2 determines to lift in step 72, this pattern is used as a connection lifting pattern corresponding to the structure A, and the connection lifting pattern data 14c is created. The data 14c is a structure in which the structure A is arranged as a child structure, and is subjected to the connection lifting determination again. The meaning of this operation is to lift a copy of the linked lifting pattern as a deletion pattern and cut out a pattern that overlaps the temporary candidate pattern. On the other hand, if the CPU 2 determines not to lift in step 72, the CPU 2 returns to step 71 without performing a process other than step 73.
[0109]
Next, the CPU 2 loops steps 74 to 80 for the child structure in which the structure A is arranged by the determination processing in step 74 of FIG. Further, the CPU 2 loops steps 75 to 80 with the connection lifting pattern of the child structure B in which the structure A is arranged based on the connection lifting pattern data 14 c by the determination processing in step 75. Since the structure B connection lifting pattern is a bottom-up process, it is already created when the structure B is selected before the structure A.
[0110]
In step 76, the arrangement information of the child structure B is synthesized with the arrangement information of the connected lifting pattern. In this procedure, the relative arrangement information from the child structure B is converted into the relative arrangement information from the structure A.
[0111]
In step 77, the CPU 2 makes a lifting determination in the same manner as in step 72. Based on the determination result in step 77, the CPU 2 creates the connected lifting pattern data 14c in step 78, similarly to step 73 in FIG.
[0112]
In step 79, the CPU 2 determines whether or not to create a deletion pattern based on the candidate creation flag. When this flag is on, a temporary candidate pattern of the structure A is created with a pattern linked to this pattern. Therefore, the CPU 2 creates the deletion pattern data 15 of the structure A in step 80 in order to cut out this temporary candidate pattern.
[0113]
When the deletion pattern data 15 is created as described above, the CPU 2 ends the connection lifting process and returns. That is, the CPU 2 moves to step 53 in FIG. If it is determined in step 53 that the connection lifting process has been completed for all types of structures, the CPU 2 proceeds to step 55.
[0114]
In step 55, the CPU 2 creates candidate pattern data 14 from the created temporary candidate pattern data 14 a and deletion pattern data 15. When there is no sizing, the CPU 2 uses the temporary candidate pattern data 14a as it is as the candidate pattern data 14. On the other hand, in the case of sizing, the CPU 2 synthesizes the temporary candidate pattern data 14 a and the deletion pattern data 15 in units of structures (graphic logical OR operation) to obtain candidate pattern data 14.
[0115]
In step 55, by combining the temporary candidate pattern data 14a and the deletion pattern data 15 in units of structures, it is possible to prevent the patterns from separating and generating slits during negative sizing in the sizing process.
[0116]
FIG. 26 is a diagram for explaining the data structures of the candidate pattern data 14 and the deletion pattern data 15. Each pattern data 14 and 15 has pattern vertex data in structure units.
[0117]
Next, the process of step 24 in FIG. 1 will be described in detail.
FIG. 27 is a flowchart showing a procedure for creating pattern data from candidate pattern data and deletion pattern data in step 24. That is, Steps 81 to 83 in FIG. 27 are substeps of Step 24.
[0118]
First, the CPU 2 of FIG. 2 performs an OR process and a sizing process on the candidate pattern data 14 in step 81. Next, in step 82, the CPU 2 performs OR processing and sizing processing on the deletion pattern data 15.
[0119]
Next, in step 83, the CPU 2 SUB-processes the deletion pattern from the candidate patterns subjected to the OR process and the sizing process to create the pattern data 16.
[0120]
FIG. 28 is a flowchart showing the procedure of OR processing and sizing processing in step 24 of FIG. 1, more specifically, steps 81 and 82 of FIG. That is, Steps 91 to 95 in FIG. 28 are substeps of Step 24 (Step 81 and Step 82).
[0121]
The CPU 2 in FIG. 2 makes a loop determination based on the structure type in step 91, and performs OR processing on the candidate pattern data 14 (or the deletion pattern data 15) corresponding to the structure selected in step 92. Note that this loop need not be bottom-up.
[0122]
Next, the CPU 2 determines whether or not sizing is performed in step 93, and if there is sizing designation, steps 94 and 95 are looped. The CPU 2 makes a loop determination based on the structure type in step 94, and performs sizing processing on the data after OR processing (candidate pattern data 14 or deletion pattern data 15 after OR processing) corresponding to the structure selected in step 95.
[0123]
FIG. 29 is a flowchart showing the procedure of the SUB process in step 24 of FIG. 1, specifically, step 83 of FIG. That is, steps 101 and 102 in FIG. 29 are substeps of step 24 (step 83).
[0124]
The CPU 2 in FIG. 2 makes a loop determination based on the structure type in step 101, and SUB-processes the deletion pattern from the candidate patterns corresponding to the structure selected in step 102. By this process, the overlapping pattern is cut out from the candidate pattern. Note that this loop need not be bottom-up.
[0125]
Next, the operation of the exposure data generating apparatus configured as described above will be described according to the steps in FIG.
Hereinafter, an example in which each processing of Steps 22 to 24 is applied to the data of FIG. 37 will be described.
[0126]
[Step 22]
The overlap of patterns is investigated using the sweep method in the bottom-up order (structures E, D, C, B, A). Used in the overlap investigation in structure A, finds an overlap in 4 places. These overlaps will be described as [1], [2], [3], and [4] in the order of upper left, lower left, upper right, and lower right.
[0127]
In the place [1], the pattern Q and the pattern S overlap, and the relationship between the structures D and C to which they belong is a side-by-side relationship with different structure names, so the number of arrangements when the structures D and C are expanded is compared. . Since the number of structures D arranged is 3 and the number of structures C arranged is 6, the pattern S is a high priority pattern. Therefore, the next information addition is performed on the table.
[0128]
(1) The single expansion number of the pattern Q is added to the single lifting table corresponding to the structure D between the pattern Q and the structure A in the hierarchical tree.
(2) The connection expansion number of the pattern Q is added to the connection lifting table corresponding to the structure D between the pattern Q and the structure A in the structure A and the hierarchical tree.
[0129]
(3) The link expansion number of the pattern R is added to the link lifting table corresponding to the structures B and C existing between the pattern R and the structure A in the structure A and the hierarchical tree.
[0130]
An example of adding a table of patterns Q (1) and (2) will be described below.
FIGS. 30A to 30E are single development numbers when the structures A to E are used as a reference. All single expansion numbers are described for explanation. Actually, the single development number of only the overlapping pattern is calculated without developing the mask pattern data.
[0131]
The additional information (1) and (2) is performed simultaneously for each structure.
“Creation of information corresponding to structure D”
The single expansion number 1 (see FIG. 30D) in the structure D of the pattern Q is added to the single lifting information table corresponding to the structure D.
[0132]
The link expansion number 1 in the structure D of the pattern Q is added to the link lifting information table corresponding to the structure D. Structure D is a bottom structure, and the concatenated expansion number of pattern Q is equal to the single expansion number. In the structure D, the pattern Q does not overlap. Therefore, there is no connection pointer.
[0133]
Since the representative information lifting flag does not correspond to the structure A, it is turned on. The representative development number of the representative information is selected from the connection development number of the pattern Q and the connection development number of the pattern in which the pattern Q is connected by the structure D. Since there is only the pattern Q, 1 is selected as the representative development number.
[0134]
The pointer of the single lifting information and the linked lifting information is connected to the created representative information.
FIG. 31 is a diagram illustrating a single lifting table, a linked lifting information table, and a representative information table. In each table, each information is expressed as a set such as (single development number, representative information pointer), (concatenated development number, connection pointer, representative information pointer), (representative development number, lift flag). Each information set is distinguished by a name for identifying the information.
[0135]
In FIG. 31, the additional information corresponding to the structure D of the pattern Q at the location [1] is T1 (1, D9) for the single lift information, R13 (1, none, D9) for the joint lift information, and D9 for the representative information. (1, ON).
[0136]
“Creation of information corresponding to structure A”
Pattern Q is not added to the single lifting information table.
The link expansion number 1 in the structure A of the pattern Q is added to the link lifting information table corresponding to the structure A. The connection expansion number of the pattern Q is calculated based on the representative information of the structure D. Since the pattern Q overlaps with the pattern P in the structure A, a pointer to the information of the pattern P is set.
[0137]
Since the representative information lifting flag corresponds to the structure A, it is turned OFF. The representative information number of the representative information is selected from the connection expansion number of the pattern Q and the connection expansion number of the pattern in which the pattern Q is connected by the structure A. Selected from patterns Q and P. For example, the connection expansion number of the pattern Q is used as the representative number.
[0138]
The pointer of the link lifting information is connected to the created representative information.
In FIG. 31, the additional information for the structure A of the pattern Q of [1] is the connection lifting information R1 (1, R1, D1) and the representative information D1 (1, OFF).
[0139]
The operation for the overlap in [1] is similarly performed for the overlaps in the locations [2] to [4] to create a single lift information table, a linked information lift information table, and a representative information table, respectively.
[0140]
[Step 23]
Candidate pattern data and deletion pattern data are created based on the created single lifting information table, linked information lifting information table, and representative information table.
[0141]
Each pattern data is created in a bottom-up manner by comparing the single lift information table, the single expansion number of the link information lift information table, the link expansion number and the single expansion number of the pattern data, and the link expansion number.
[0142]
FIG. 32A is a candidate pattern with sizing, and FIG. 32B is an explanatory diagram of a deletion pattern. As shown in FIG. 32 (a), in the structure A, the patterns Q and U which the structures D and E have as the candidate patterns are lifted. As shown in FIG. 32B, a copy of the pattern S (structure C) overlapping the patterns Q and U is lifted as a deletion pattern in the structure A.
[0143]
FIG. 33A is a candidate pattern without sizing, and FIG. 33B is an explanatory diagram of a deletion pattern. As shown in FIG. 33 (a), in structure A, patterns Q and U held by structures D and E as candidate patterns and a copy of pattern S (structure C) overlapping therewith are lifted. As shown in FIG. 33B, a copy of the pattern S (structure C) that overlaps the patterns Q and U is lifted as a deletion pattern in the structure A.
[0144]
[Step 24]
When no sizing designation is made, the candidate pattern (FIG. 32 (a)) and the deletion pattern (FIG. 32 (b)) corresponding to each structure are each subjected to OR processing, and thereafter each is subjected to SUB processing.
[0145]
FIGS. 34A to 34C are explanatory diagrams of OR processing and SUB processing for the structure A. FIG. The structure A candidate pattern (pattern Q, U) shown in FIG. 34A is ORed with the structure A deletion pattern (copy of pattern S) shown in FIG. Patterns QS1, QS2, SU1, and SU2 shown in c) are obtained.
[0146]
When sizing is specified, the candidate pattern (FIG. 33 (a)) and the deletion pattern (FIG. 33 (b)) corresponding to each structure are subjected to OR processing and sizing, respectively, and then subjected to SUB processing.
[0147]
FIGS. 35A to 35C are explanatory diagrams of OR processing for structure A, minus sizing as sizing, and SUB processing. Sizing processing of the structure A candidate pattern (pattern Q + S, S + U) shown in FIG. 35A and the structure A deletion pattern (copy of pattern S) shown in FIG. These are subjected to SUB processing to obtain patterns QS1, QS2, SU1, and SU2 shown in FIG.
[0148]
As described above, according to the present embodiment, the following effects can be obtained.
(1) In step 22, overlap information between layers of overlapping patterns detected from the hierarchically designed mask pattern data 11 (input pattern data 12) is created, and in step 23, overlapping patterns are lifted based on the overlap information. The candidate pattern data 14 and the deletion pattern data 15 are created. In step 24, the deletion pattern data 15 is deleted from the candidate pattern data 14 to create pattern data 16 having no overlap. As a result, by creating the pattern data 16 that does not overlap, the hierarchical data 17 can be created while maintaining the hierarchical structure of the mask pattern data 11 substantially.
[0149]
(2) In step 22, single lift information, link lift information, and representative information are created as overlap information according to the situation based on the relationship between the structure name to which each of the overlapping patterns belongs and the mutual pattern relationship. . As a result, by changing the information to be created according to the overlapping state, the number of patterns to be developed is reduced, and an increase in the amount of hierarchical data to be created can be suppressed.
[0150]
(3) When there is sizing designation, candidate pattern data 14 is created by synthesizing temporary candidate pattern data 14a and deletion pattern data 15. As a result, by applying sizing processing to the combined candidate pattern, it is possible to prevent the patterns from separating and generating slits.
[0151]
(4) In step 24, when not sizing, the deletion pattern data 15 is deleted from the candidate pattern data 14 for each layer to create the pattern data 16, and when sizing, the candidate pattern data 14 and each layer are After sizing the deletion pattern data 15, the deletion pattern data 15 is deleted from the candidate pattern data 14 for each layer to create the pattern data 16. As a result, the pattern data 16 and the hierarchical data 17 can be created without damaging the sizing figure.
[0152]
(5) In step 22, a non-intrusion area not including an overlapping pattern is set, and in step 23, a deletion pattern included in the non-intrusion area is not lifted. As a result, it is possible to reduce the data amount of the deletion pattern developed in the structure by not lifting the deletion pattern included in the non-intrusion area among the deletion patterns having repeatability.
[0153]
(6) Since the hierarchical data 17 holding the hierarchical structure can be created, the exposure data 18 with a small amount of data can be created from the hierarchical data, and the processing time required for converting the exposure data 19 can be shortened. can do.
[0154]
In addition, you may change the said embodiment into the following aspects.
In the above embodiment, the hierarchical analysis is performed in step 21 in FIG. 1, but may be configured in step 22 or 23.
[0155]
The above embodiment can be applied not only to memory types that require highly repetitive patterns, but also to data that uses a hierarchical structure. Widely applicable to mask pattern data.
[0156]
The following embodiment is summarized and the following matters regarding the configuration of the present invention are disclosed.
(A) In the data creation method according to claim 1, in the first step, the overlap information alone is used as the overlap information in accordance with a situation based on the structure name of the structure to which each of the overlap patterns belongs and the relationship between the patterns. A data creation method comprising creating lift information, linked lift information, and representative information. In this way, by changing the information to be created according to the overlapping state, the number of patterns to be developed is reduced, and an increase in the amount of hierarchical data to be created can be suppressed.
[0157]
(B) In the data generation method described in (A) above, in the first step, (1) when the structure names of the structures to which the overlapping patterns belong are the same, (2) the structures to which the overlapping patterns belong. Based on the situation of the three cases, when the structure names are different and are in a direct relationship with each other, (3) When the structure names of the structures to which the overlapping patterns belong are different and are in a side relationship with each other, A data creation method characterized by creating single lift information, linked lift information, and representative information as overlap information.
[0158]
(C) In the data creation method according to claim 1, in the second step, the candidate pattern data in which the candidate pattern is lifted is created in a structure common to the overlapping patterns, and a copy of the deletion pattern is lifted. A data creation method comprising creating the deletion pattern data.
[0159]
(D) In the data creation method according to claim 1, the second step includes a single lifting step for creating the candidate pattern data based on the overlap information, and the deletion pattern data based on the overlap information. A data creation method comprising: a connecting lifting step.
[0160]
(E) In the data creation method according to (D), the second step further includes a step of creating candidate pattern data obtained by combining the candidate pattern and the deletion pattern when sizing is specified. A data creation method characterized by By applying a sizing process to the combined candidate pattern, it is possible to prevent the patterns from separating and generating slits.
[0161]
(F) A data creation device that creates hierarchical data for creating exposure data that does not overlap patterns from hierarchically designed mask pattern data, and collects information for collecting overlapping information between the mask pattern data layers. Means, first data creation means for creating candidate pattern data and deletion pattern data by lifting overlapping patterns based on the overlap information, and pattern data without deletion by deleting deletion pattern data from the candidate pattern data And a second data creation means for creating the data.
[0162]
(G) A computer-readable recording medium that records program data for creating hierarchical data for creating exposure data that does not overlap a pattern from hierarchically designed mask pattern data, wherein the program stores the mask pattern A step of collecting overlapping information between data hierarchies, a step of creating candidate pattern data and deletion pattern data by lifting overlapping patterns based on the overlapping information, and deleting deletion pattern data from the candidate pattern data Creating a non-overlapping pattern data.
[0163]
【The invention's effect】
As described above in detail, according to the present invention, the overlap information is created according to the situation of the overlap pattern, and the hierarchical data is created from the candidate pattern data and the deletion pattern data created based on the information, thereby expanding the information. The number of patterns to be reduced is reduced, and an increase in the amount of hierarchical data to be created can be suppressed.
[0164]
Since the candidate pattern data and the deletion pattern data are created by lifting the overlapping pattern based on the created overlap information, the hierarchical data can be created while maintaining the hierarchical structure of the mask pattern data. The processing time for converting from exposure data to exposure data can be shortened.
[Brief description of the drawings]
FIG. 1 is a flowchart of exposure data creation processing according to an embodiment.
FIG. 2 is a schematic configuration diagram of a data creation device according to an embodiment.
FIG. 3 is a layout diagram of hierarchical data for creating exposure data.
FIG. 4 is a hierarchical tree diagram of exposure data creation hierarchical data.
FIG. 5 is a pattern diagram of exposure data creation hierarchical data.
FIG. 6 is a flowchart of information table creation processing.
FIG. 7 is a layout diagram for explaining an overlap investigation.
FIG. 8 is a hierarchical tree diagram of data explaining overlap investigation.
FIGS. 9A to 9C are layout diagrams showing a procedure for checking overlap. FIG.
FIGS. 10A to 10D are layout diagrams illustrating a procedure for overlapping investigation.
FIG. 11 is a flowchart of information addition processing.
FIGS. 12A and 12B are explanatory diagrams of development numbers.
FIG. 13 is a hierarchical tree diagram of data explaining expansion numbers.
FIG. 14 is a hierarchical tree diagram of data explaining single and connected expansion numbers.
FIG. 15 is an explanatory diagram of single and connected expansion numbers.
FIG. 16 is a diagram illustrating the structure of single and connected lifting information and representative information.
FIG. 17 is a hierarchical tree diagram of data explaining the addition of overlap information.
FIGS. 18A and 18B are explanatory diagrams of a table to which overlap information is added.
FIG. 19 is an explanatory diagram of a non-intrusion area.
FIG. 20 is a flowchart of candidate and deletion pattern data creation processing.
FIG. 21 is a flowchart of a single lifting process.
FIG. 22 is a flowchart of a single lifting process.
FIG. 23 is a diagram illustrating the structure of single and connected lifting pattern data.
FIG. 24 is a flowchart of a connection lifting process.
FIG. 25 is a flowchart of a connection lifting process.
FIG. 26 is an explanatory diagram of the structure of candidate and deletion pattern data.
FIG. 27 is a flowchart of pattern data creation processing.
FIG. 28 is a flowchart of SUB processing.
FIG. 29 is a flowchart of OR processing and sizing processing.
FIGS. 30A to 30E are explanatory diagrams of single development numbers.
FIG. 31 is a diagram showing the relationship between single and connected lifting information and representative information.
32A is an explanatory diagram of a candidate pattern, and FIG. 32B is an explanatory diagram of a deletion pattern.
33A is an explanatory diagram of a candidate pattern, and FIG. 33B is an explanatory diagram of a deletion pattern.
34A to 34C are pattern diagrams after graphic logic processing.
FIGS. 35A to 35C are pattern diagrams after graphic logic processing.
36A and 36B are explanatory diagrams of hierarchical design data.
FIG. 37 is a layout diagram of mask pattern data.
FIG. 38 is an explanatory diagram of mask pattern data hierarchy.
FIG. 39 is a pattern diagram of hierarchical design data.
FIG. 40 is a layout diagram of hierarchical data according to a conventional method.
FIG. 41 is a hierarchy explanatory diagram of hierarchy data by a conventional method.
FIG. 42 is a pattern diagram of hierarchical data according to a conventional method.
FIG. 43 is a pattern diagram of hierarchical data created by expansion.
[Explanation of symbols]
11 Mask pattern data
14 Candidate pattern data
15 Delete pattern data
16 pattern data
17 Hierarchical data
18 Exposure data
22 First step
23 Second Step
24 3rd step

Claims (5)

階層設計されたマスクパターンデータを構成する複数のストラクチャからパターンに重なりのない露光データを作成するための階層データを作成するデータ作成方法であって、
前記マスクパターンデータから検出した重なり合うパターンの階層間の重なり情報を作成する第1ステップと、
前記重なり情報に基づいて、前記重なり合うパターンのうち低い優先度が設定されているパターンを持ち上げて候補パターンデータ及び削除パターンデータを作成する第2ステップと、
前記候補パターンデータから削除パターンデータを削除して重なりのないパターンデータを作成する第3ステップと
を有し、
前記第1ステップは、
前記重なり合うパターンの所属するストラクチャ同士が異なる場合には、該ストラクチャ内に配置されている、前記重なり合うパターンと同じパターンがより多数存在するパターンに対してより高い優先度を設定するステップと、
前記優先度に応じて前記重なり情報を作成するステップと
を含むことを特徴とするデータ作成方法。
A data creation method for creating hierarchical data for creating exposure data in which a pattern does not overlap from a plurality of structures constituting hierarchically designed mask pattern data,
A first step of creating overlapping information between layers of overlapping patterns detected from the mask pattern data;
Based on the overlap information, and a second step of creating a candidate pattern data and deleting pattern data to lift the pattern low priority among the overlapping pattern is set,
Have a third step of creating a free pattern data overlapped by deleting the deletion pattern data from the candidate pattern data,
The first step includes
If the structures to which the overlapping patterns belong are different from each other, setting a higher priority for a pattern that is arranged in the structure and that has a larger number of the same patterns as the overlapping patterns;
Creating the overlap information according to the priority;
A data creation method characterized by comprising :
請求項1に記載のデータ作成方法において、
前記重なり合うパターンの配置個数が同じ場合には、該重なり合うパターンのうち頂点の多いパターンに対して高い優先度を設定することを特徴とするデータ作成方法。
The data creation method according to claim 1,
A data creation method characterized in that, when the number of overlapping patterns is the same, a high priority is set for a pattern having many vertices among the overlapping patterns .
請求項1に記載のデータ作成方法において、
前記第2ステップは、
前記重なり情報に基づいて、前記候補パターンデータ及び削除パターンデータを各階層単位に作成するステップを有することを特徴とするデータ作成方法。
The data creation method according to claim 1,
The second step includes
A data creation method comprising the step of creating the candidate pattern data and the deletion pattern data for each hierarchical unit based on the overlap information.
請求項1に記載のデータ作成方法において、
前記第3ステップでは、
サイジングしない場合は、各階層毎に候補パターンデータから削除パターンデータを削除して階層データを作成し、
サイジングする場合は、各階層毎に候補パターンデータと削除パターンデータをそれぞれサイジング後、各階層毎に候補パターンから削除パターンを削除して階層データを作成することを特徴とするデータ作成方法。
The data creation method according to claim 1,
In the third step,
If not sizing, delete the deletion pattern data from the candidate pattern data for each hierarchy, create the hierarchy data,
In the case of sizing, a data creation method comprising: sizing candidate pattern data and deletion pattern data for each layer, and then deleting the deletion pattern from the candidate pattern for each layer to create layer data.
請求項1に記載のデータ作成方法において、
前記第1ステップでは、前記重なり合うパターンを含まない非侵入領域を設定し、
前記第2ステップでは、前記非侵入領域に含まれる削除パターンを持ち上げないことを特徴とするデータ作成方法。
The data creation method according to claim 1,
In the first step, a non-intrusive area not including the overlapping pattern is set,
In the second step, the deletion pattern included in the non-intrusion area is not lifted.
JP34018099A 1999-11-30 1999-11-30 Data creation method Expired - Fee Related JP3759357B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP34018099A JP3759357B2 (en) 1999-11-30 1999-11-30 Data creation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34018099A JP3759357B2 (en) 1999-11-30 1999-11-30 Data creation method

Publications (2)

Publication Number Publication Date
JP2001154335A JP2001154335A (en) 2001-06-08
JP3759357B2 true JP3759357B2 (en) 2006-03-22

Family

ID=18334497

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34018099A Expired - Fee Related JP3759357B2 (en) 1999-11-30 1999-11-30 Data creation method

Country Status (1)

Country Link
JP (1) JP3759357B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5084094B2 (en) * 2004-02-16 2012-11-28 日本電気株式会社 Data processing time prediction method, data processing apparatus, and program

Also Published As

Publication number Publication date
JP2001154335A (en) 2001-06-08

Similar Documents

Publication Publication Date Title
JP3562975B2 (en) Integrated circuit design method and integrated circuit design device
CA2315548C (en) Advanced schematic editor
EP0350353B1 (en) Layoutdata processing method
US8631363B2 (en) Method and mechanism for identifying and tracking shape connectivity
US20050237320A1 (en) Graphics image generation apparatus, method, and program
US6167555A (en) System and method for converting polygon-based wires of an integrated circuit design to path-based wires
US6775796B2 (en) Creation of memory array bitmaps using logical to physical server
JP3042443B2 (en) How to create mask pattern data
US7376922B2 (en) Method and apparatus for integrated circuit datapath layout using a vector editor
JP3759357B2 (en) Data creation method
US7461359B1 (en) Method and mechanism for determining shape connectivity
Dobes et al. The automatic recognition of silicon gate transistor geometries: An LSI design aid program
WO2001048793A2 (en) Method for converting features in an integrated circuit design and apparatus for doing the same
US6873726B2 (en) Information adding apparatus, information extracting apparatus, information adding method, information extracting method, and computer readable recording medium
JP3150091B2 (en) Hierarchical circuit connection data extraction method and recording medium recording the program
US8538185B1 (en) Optimizing bounds checking in neighborhood processes
JP2964995B2 (en) Graphic processing unit
JP3816280B2 (en) Layout editor apparatus and layout method
JPH0588357A (en) Method for inspecting mask pattern
JP2921001B2 (en) Pattern extraction method
JPH056338B2 (en)
JP2002056041A (en) Method for reflecting hardware description language hierarchy information
JP3797143B2 (en) Bulk loading system, bulk loading method, and bulk loading program
JP2000331053A (en) Method and device for exposure data generation and recording medium
JPH06163697A (en) Screen display system for integrated circuit layout design data

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040311

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050826

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20050830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050906

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051107

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20051220

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051228

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3759357

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090113

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100113

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110113

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110113

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120113

Year of fee payment: 6

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120113

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130113

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140113

Year of fee payment: 8

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees