(57)【要約】【課題】マスクデータのデータ量を効率的に削減できるマスクデータ処理方法と、関数記述により圧縮されたデータを取り込んで描画できるマスク描画装置を提供する。【解決手段】マスクに描画される複数の図形の形状および配置を、関数定義と関数呼び出しによって表し、データ処理を行うマスクデータ処理方法。そのような関数で記述されたデータを取り込んでパターンデータを生成するデータ処理機能部と、パターンデータに従って、マスクに描画を行う描画機能部とを有するマスク描画装置。【選択図】　図１
2004079987.tif 000002
【特許請求の範囲】
【請求項１】
マスクに描画される複数の図形の形状および配置を、関数定義と関数呼び出しによって表し、データ処理を行う
マスクデータ処理方法。
【請求項２】
前記関数定義は関数識別標識と、引数と、処理部を含む
請求項１記載のマスクデータ処理方法。
【請求項３】
前記処理部は変数と、前記値が代入され計算処理される計算式と、前記計算処理の実行を制御する条件判断部と、前記計算処理の繰り返しを指定する繰り返し部を含む
請求項２記載のマスクデータ処理方法。
【請求項４】
前記複数の図形は、それぞれ複数かつ同数の図形要素からなり、
前記図形要素は矩形または台形であり、
前記図形要素の配列はすべての図形間で共通であり、
前記図形要素の大きさは、各図形間で互いに異なる
請求項１記載のマスクデータ処理方法。
【請求項５】
マスクに描画される複数の図形の形状および配置に定義された関数であって、前記関数を呼び出して図形を特定する値を前記関数の変数に代入することにより、複数の図形を表すパターンデータが生成する前記関数を認識し、前記パターンデータの生成を行うデータ処理機能部と、
前記データ処理機能部で生成する前記パターンデータに従って、マスクに描画を行う描画機能部とを有する
マスク描画装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体装置製造のリソグラフィ工程で用いられるマスクに描画されるパターンデータ（マスクデータ）の処理方法と、リソグラフィ工程で用いられるマスクを作製するためのマスク描画装置に関する。
【０００２】
【従来の技術】
半導体集積回路製造のリソグラフィ工程で用いられるマスクには、マスクデータと呼ばれるパターンデータに従って、描画が行われる。マスクデータは矩形と台形を図形要素として持ち、例えば図２１（ａ）および（ｂ）に示すように、多角形のレイアウトパターンは矩形１１および台形１２の組み合わせによって表現される。なお、三角形は台形に包含されるとする。
【０００３】
半導体集積回路の高集積化に伴い、マスクデータのサイズが大きくなっている。マスクデータサイズが大きいと、データの転送時間が長くなったり、データ処理の速度が遅くなったりするという問題が生じる。そこで、従来のマスクデータでは、データサイズを小さくする方法として、以下のような方法が考えられていた。
【０００４】
第１の方法は、図２２に示すように、Ｘ方向とＹ方向のそれぞれに等間隔に行列状に並ぶ図形群に適用される。このような配列の場合、図形をライブラリに登録して、登録した図形を配列の個数（ＮＸ，ＮＹ）とピッチ（ＤＸ，ＤＹ）とともに参照（ｒｅｆｅｒｅｎｃｅ）することにより、データを圧縮してデータ処理量を削減できる。
【０００５】
図２３（ａ）は図２２の図形群についての圧縮前の表現である。図２３（ｂ）は図２３（ａ）のデータをライブラリに登録した、圧縮後の表現である。図２３（ａ）に示すように、マスクデータ内で６個の矩形に対してｒｅｃｔａｎｇｌｅというキーワードが用いられる。下線を引いてある部分は、マスクデータのフォーマットにおいてキーワードであることを示す。キーワードのｒｅｃｔａｎｇｌｅは、位置（Ｘ，Ｙ）に幅Ｗ、高さＨの矩形を配置することを示す。Ｘ、Ｙ、Ｗ、Ｈは変数である。図２３（ｂ）に示すように、ｌｉｂｒａｒｙとｒｅｆｅｒｅｎｃｅのキーワードを使うことにより、データ圧縮される。
【０００６】
キーワードのｌｉｂｒａｒｙは、図形の定義を表す。図２３（ｂ）では、ライブラリ１の定義に１つの矩形が含まれていることを示している。キーワードのｒｅｆｅｒｅｎｃｅは、ライブラリ１の定義を参照し、ライブラリ１で定義された図形を位置（Ｘ１，Ｙ１）に、個数（ＮＸ，ＮＹ）、ピッチ（ＤＸ，ＤＹ）で配置することを示している。
【０００７】
第２の方法は、図２４に示すように、相同な図形が複数の箇所に配置された図形群に適用される。この例では、３箇所のそれぞれに２つの矩形が、同一の位置関係で配置されている。このような同一の位置関係にある図形群をライブラリに登録して、登録した図形群を参照することにより、データを圧縮してデータ処理量を削減できる。
【０００８】
図２５（ａ）は図２４の図形群についての圧縮前の表現である。図２５（ｂ）は図２４のデータをライブラリに登録した、圧縮後の表現である。圧縮を行わない場合、図２５（ａ）に示すように、マスクデータ内で６個の矩形に対してキーワードのｒｅｃｔａｎｇｌｅが用いられる。図２５（ｂ）に示すように、ｌｉｂｒａｒｙとｒｅｆｅｒｅｎｃｅのキーワードを使うことにより、データ圧縮される。
【０００９】
図２５（ｂ）では、ライブラリ２の定義に２つの矩形が含まれていることを示している。キーワードのｒｅｆｅｒｅｎｃｅは、ライブラリ２で定義された図形を位置（Ｘ１，Ｙ３）、位置（Ｘ３，Ｙ１）、位置（Ｘ５，Ｙ２）の３箇所に配置することを示している。
【００１０】
従来のマスクデータ圧縮方法は、例えば特開２０００−１０６３３７号公報「データベースの作成・保持方法及び該方法を用いた電子ビーム露光システム」、特開平１０−１４９３７８号公報「データ処理方法、マスクパターンのデータ処理方法、データ処理装置及びマスクパターンのデータ処理装置」に開示されている。また、特開２００２−９２０６３号公報にはセルを利用したデータの圧縮方法が開示され、特開２００２−９２０６４号公報には配列を利用したデータの圧縮方法が開示されている。
【００１１】
【発明が解決しようとする課題】
上記のような従来のマスクデータ圧縮方法によってもデータ量は削減されているが、半導体集積回路の高集積化に対応するため、さらにデータ量を削減することが望まれる。従来の方法によれば、図形の形状に規則性があるが相似でない図形の集合や、図２２に示すような行列状ではないが、規則的に配置されている図形の集合等を圧縮表現できなかった。
【００１２】
また、マスクデータはＣＡＤにより作成されるレイアウトデータに補正を加えて得られ、補正されたマスクデータがマスク描画装置に転送される。データの転送や補正を行うには、データ量が少ない方が処理の高速化に有利である。上記のように、データの圧縮を行った場合、マスク描画装置へデータを転送する前にデータの解凍（復元）を行うと、マスク描画装置へのデータの転送時間が長くなる。
【００１３】
本発明は上記の問題点に鑑みてなされたものであり、したがって本発明は、マスクデータのデータ量を効率的に削減し、データ処理やデータ転送を高速化できるマスクデータ処理方法を提供することを目的とする。
また、本発明は、圧縮されたデータを短時間でマスク描画装置に転送し、マスク描画の全体的な所要時間を短縮できるマスク描画装置を提供することを目的とする。
【００１４】
【課題を解決するための手段】
上記の目的を達成するため、本発明のマスクデータ処理方法は、マスクに描画される複数の図形の形状および配置を、関数定義と関数呼び出しによって表し、データ処理を行うことを特徴とする。
これにより、従来の圧縮方法で圧縮できなかった図形群のパターンデータを圧縮することが可能となり、データ量をさらに削減して処理を高速化できる。
【００１５】
上記の目的を達成するため、本発明のマスク描画装置は、マスクに描画される複数の図形の形状および配置に定義された関数であって、前記関数を呼び出して図形を特定する値を前記関数の変数に代入することにより、複数の図形を表すパターンデータが生成する前記関数を認識し、前記パターンデータの生成を行うデータ処理機能部と、前記データ処理機能部で生成する前記パターンデータに従って、マスクに描画を行う描画機能部とを有することを特徴とする。
【００１６】
これにより、関数記述によって圧縮されたデータをマスク描画装置に転送し、描画を行うことが可能となる。したがって、マスク描画装置へのデータ転送時間を短縮し、マスク描画の全体的な所要時間を短縮できる。
【００１７】
【発明の実施の形態】
以下に、本発明のマスクデータ処理方法およびマスク描画装置の実施の形態について、図面を参照して説明する。
本実施形態のマスクデータ処理方法では、マスクデータに図形の配置や形状を関数として記述する。また、本実施形態のマスク描画装置には、このように関数記述されたマスクデータに従って描画する機能を持たせる。
【００１８】
関数は、パラメータを引数として受け取り、関数内に変数を保持する。また、関数内では、条件判断や繰り返し等の処理手順の制御を行う。関数の処理結果は、図形の配置や形状である。
形状が規則的に変化している図形の集合や、配置が行列状ではないが規則的である図形の集合を関数で記述することにより、データ量を削減できる。このような関数によれば、従来の方法で圧縮の対象とならない図形に対して圧縮を図れるため、従来の方法に比較して、マスクデータのサイズをさらに小さくできる。
【００１９】
［１．関数記述方法］
まず、マスクデータに記述する関数定義と関数呼び出しについて説明する。関数定義はパラメータを受け渡しする引数を含む。また、関数定義に記述する項目には変数、変数を用いた数字の代入や計算、条件判断、繰り返し、矩形・台形の生成関数等がある。
【００２０】
マスクデータに記述する関数定義と関数呼び出しの構成を、図１に示す。図１に示すように、関数定義は関数識別標識（関数ＩＤ）、引数、処理部で構成される。処理部は変数、代入・計算、条件判断、繰り返し、図形生成の処理を用いて記述される。
【００２１】
以下の説明において、下線を引いてある部分は、マスクデータのフォーマットにおいてキーワードであることを示す。マスクデータ内は固定のデータサイズで表現される。また、‘　’で囲まれた部分は数字、変数、処理内容等を記述することを示す。
【００２２】
図２は、図１の（１）関数定義を示す。ＦＵＮＣＴＩＯＮからＥＮＤ−ＦＵＮＣＴＩＯＮは、関数の定義を示す。ＦＵＮＣＴＩＯＮは関数定義の開始を示す。ＥＮＤ−ＦＵＮＣＴＩＯＮは関数定義の終了を示す。‘ＦＵＮＣＴＩＯＮ−ＩＤ’は関数を識別するためのＩＤである。ＩＤを変えることにより、複数の異なる関数を定義できる。
【００２３】
‘ＰＡＲＡＭＥＴＥＲ’は関数が受け取る引数を示す。（　）内にＰ１、Ｐ２、…のような変数名のリストを指定する。（　）内の変数は代入、計算、条件の記述に使用する。変数の型は整数や小数である。
‘ＦＵＮＣＴＩＯＮ−ＢＯＤＹ’は関数の処理部を示す。処理部に関数の処理内容を記述する。
【００２４】
図３は、図１の（１−１）変数を示す。‘ＶＡＲＩＡＢＬＥ’は関数の処理部で使用する変数を示す。Ｑ１、Ｑ２、…のような変数名を代入、計算、条件の記述に使用する。変数の型は、整数や小数等である。
【００２５】
図４は、図１の（１−２）代入、計算を示す。関数の処理部では、＝を使用して変数に代入を行う。演算子や括弧を使用して計算を行う。計算の結果を、＝を使用して変数に代入する。
【００２６】
図５は、図１の（１−３）条件判断を示す。ＩＦ（‘ＣＯＮＤＩＴＩＯＮ’）からＥＬＳＥを経てＥＮＤ−ＩＦまでは、条件‘ＣＯＮＤＩＴＩＯＮ’が成立した時に処理内容‘ＩＦ−ＢＯＤＹ’が処理され、条件‘ＣＯＮＤＩＴＩＯＮ’が成立しない時に、処理内容‘ＥＬＳＥ−ＢＯＤＹ’が処理されることを示す。
‘ＣＯＮＤＩＴＩＯＮ’は条件を示す。変数、定数、等号、不等号等を利用して条件が記述される。
【００２７】
図６は、図１の（１−４）繰り返しのうち、（１−４ａ）条件を示す。ＷＨＩＬＥからＥＮＤ−ＷＨＩＬＥは、条件‘ＣＯＮＤＩＴＩＯＮ’が成立している間、処理内容‘ＷＨＩＬＥ−ＢＯＤＹ’が処理されることを示す。
【００２８】
図７は、図１の（１−４）繰り返しのうち、（１−４ｂ）カウントを示す。ＦＯＲからＥＮＤ−ＦＯＲは、変数‘Ｉ’に初期値‘ＳＴＡＲＴ−Ｉ’を代入し、変数‘Ｉ’を１ずつ増やしながら変数‘Ｉ’が最終値‘ＥＮＤ−Ｉ’になるまで、処理内容‘ＦＯＲ−ＢＯＤＹ’が処理されることを示す。
【００２９】
図８は、図１の（１−５）図形生成関数を示す。ＲＥＣＴＡＮＧＬＥは、位置‘（Ｘ，Ｙ）’に幅‘Ｗ’、高さ‘Ｈ’の矩形を配置することを示す。‘Ｘ’、‘Ｙ’、‘Ｗ’、‘Ｈ’は変数である。
Ｘ−ＴＲＡＰＥＺＯＩＤは、４つの頂点（Ｘ１，Ｙ１）、（Ｘ２，Ｙ１）、（Ｘ３，Ｙ２）、（Ｘ４，Ｙ２）の台形を配置することを示す。‘Ｘ１’、‘Ｙ１’、‘Ｘ２’、‘Ｘ３’、‘Ｘ４’、‘Ｙ２’は変数である。
Ｙ−ＴＲＡＰＥＺＯＩＤは、４つの頂点（Ｘ１，Ｙ１）、（Ｘ１，Ｙ２）、（Ｘ２，Ｙ３）、（Ｘ２，Ｙ４）の台形を配置することを示す。‘Ｘ１’、‘Ｙ１’、‘Ｙ２’、‘Ｙ３’、‘Ｘ２’、‘Ｙ４’は変数である。
【００３０】
図９は、図１の（２）関数呼び出しを示す。ＦＵＮＣＴＩＯＮ−ＣＡＬＬからＥＮＤ−ＦＵＮＣＴＩＯＮ−ＣＡＬＬは、関数ＩＤ‘ＦＵＮＣＴＩＯＮ−ＩＤ’に対応する関数定義を呼び出して実行する。
ＦＵＮＣＴＩＯＮ−ＣＡＬＬは、関数呼び出しを示す。ＥＮＤ−ＦＵＮＣＴＩＯＮ−ＣＡＬＬは、関数呼び出しの最後、すなわちパラメータの最後を示す。
パラメータ‘ＰＡＲＡＭＥＴＥＲ’は、関数定義で渡す引数を示す。
【００３１】
［２．関数記述例］
本発明では、関数定義が関数呼び出しの箇所で実行され、矩形や台形の図形パターンを生成する。ここでは、マスクデータに記述する関数定義と関数呼び出しの例を示す。
【００３２】
（記述例１）
記述例１は、矩形の中に矩形の孔があるパターンを関数定義したものである。図１０に、記述例１で記述される図形パターンを示す。図１０に示すように、矩形の中に矩形があるパターンは、ドーナッツ状パターンと呼ばれる。
【００３３】
マスク描画装置が描画する基本パターンは矩形または台形である。そこで、このようなドーナッツ状パターンは複数の矩形または台形に分割される。
【００３４】
図１０の例では、４つのドーナッツ状パターンＩ、ＩＩ、ＩＩＩ、ＩＶを斜線で示す。また、各ドーナッツ状パターンを分割する線を実線で示す。ドーナッツ状パターンＩはａ〜ｄの４つの矩形に分割される。他のパターンＩＩ〜ＩＶも同様に、それぞれ４つの矩形ａ〜ｄに分割される。
【００３５】
図１１は記述例１による関数定義を示し、図１２は図１１に記述された変数と図形との対応を示す。図１１の第１行目は、関数１の変数を示す。図１２に示すように、ドーナッツ状パターンの外側の矩形の位置は（Ｘ１，Ｙ１）、幅はＷ１、高さはＨ１で示される。また、ドーナッツ状パターンの内側の矩形の位置は（Ｘ２，Ｙ２）、幅はＷ２、高さはＨ２で示される。
【００３６】
図１１の第２行目は、図１０の各ドーナッツ状パターンを分割したときの矩形ａの位置が（Ｘ１，Ｙ１）、幅がＸ２−Ｘ１、高さがＨ１であることを示す。図１１の第３行目は、図１０の各ドーナッツ状パターンを分割したときの矩形ｂの位置が（Ｘ２，Ｙ１）、幅がＷ２、高さがＹ２−Ｙ１であることを示す。
【００３７】
図１１の第４行目は、図１０の各ドーナッツ状パターンを分割したときの矩形ｃの位置が（Ｘ２，Ｙ２＋Ｈ２）、幅がＷ２、高さがＨ１−Ｈ２−Ｙ２＋Ｙ１であることを示す。図１１の第５行目は、図１０の各ドーナッツ状パターンを分割したときの矩形ｄの位置が（Ｘ２＋Ｗ２，Ｙ１）、幅がＷ１−Ｗ２−Ｘ２＋Ｘ１、高さがＨ１であることを示す。
【００３８】
図１３は記述例１による関数呼び出しを示す。図１３の第１行目により、関数１で指定される図１０のドーナッツ状パターンＩが呼び出される。呼び出された関数はドーナッツ状パターンが分割された４つの矩形ａ〜ｄのデータを生成する。同様に、図１３の第２行目により、関数１で指定される図１０のドーナッツ状パターンＩＩが呼び出され、呼び出された関数は４つの矩形ａ〜ｄのデータを生成する。
【００３９】
また、図１３の第３行目により、関数１で指定される図１０のドーナッツ状パターンＩＩＩが呼び出され、呼び出された関数は４つの矩形ａ〜ｄのデータを生成する。図１３の第４行目により、関数１で指定される図１０のドーナッツ状パターンＩＶが呼び出され、呼び出された関数は４つの矩形ａ〜ｄのデータを生成する。
【００４０】
比較のため、図１０の図形パターンを従来の方法で記述した例を、図１４に示す。ｒｅｃｔａｎｇｌｅ　Ｘ　Ｙ　Ｗ　Ｈは、位置（Ｘ，Ｙ）に幅Ｗ、高さＨの矩形を配置することを示す。Ｘ、Ｙ、Ｗ、Ｈは変数である。図１０に示す４つのパターンＩ〜ＩＶはすべてドーナッツ状パターンである点で共通するが、各ドーナッツ状パターンの形状および大きさ、あるいは各ドーナッツ状パターンを分割した矩形の形状および大きさは互いに異なる。したがって、図２２〜図２５を参照して説明した方法でデータを圧縮できない。図１０に示す分割パターンをすべて記述すると、図１４に示すように、１６行のデータとなる。
【００４１】
本発明による記述例１（図１１および図１３）と従来方法による記述例（図１４）を比較するとわかるように、従来方法では４つの矩形として表現されるパターンが、記述例１では１回の関数呼び出しで表現されている。例えば、図１４の第１行目〜第４行目で表現されるパターンデータは、図１３の第１行目の関数呼び出しで表現される。
【００４２】
ここで、上記の記述例１（図１１および図１３）と従来の記述例（図１４）のデータサイズを比較する。比較を単純化するため、下線を引いたキーワード、変数、演算子および括弧が１ワード（＝２バイト）で表されると仮定する。１ワードでは、変数は１〜４文字の文字列で表される。キーワード、演算子、括弧は２進数のコードで表される。また、座標や長さ等の値（整数または小数）は２ワード（＝４バイト）で表されると仮定する。
【００４３】
上記の仮定に基づくと、本発明による記述例１では、関数定義を示す図１１の第１行目が１２ワード、第２行目が９ワード、第３行目が９ワード、第４行目が１７ワード、第５行目が１７ワード、第６行目が１ワードである。したがって、関数定義のデータサイズは合計で６５ワードと概算される。
【００４４】
また、関数呼び出しを示す図１３の第１行目が１９ワードである。この１９ワードのうち、キーワードと関数ＩＤが各１ワードで計３ワード、座標、幅および高さの８個の値が各２ワードで計１６ワードである。図１３の第２行目から第４行目は、第１行目と同様に１９ワードである。したがって、関数呼び出しのデータサイズは合計で７６ワードと概算される。関数定義のデータサイズと関数呼び出しのデータサイズを合計すると、１４１ワードとなる。
【００４５】
一方、従来方法による記述例を示す図１４の第１行目は９ワードである。この９ワードのうち、キーワードが１ワード、座標、幅および高さの４個の値が各２ワードで計８ワードである。図１４の第２行目から第１６行目は、第１行目と同様に９ワードである。したがって、従来例のデータサイズは合計で１４４ワードと概算される。
【００４６】
以上のように、矩形の中に矩形があるドーナッツ状パターンの個数をＮ個としたときのデータサイズは、本発明の場合、６５＋１９×Ｎ（ワード）となる。一方、従来方法の場合、３６×Ｎ（ワード）となる。したがって、Ｎが４以上であれば、本発明による記述例１の方がデータ量の削減に有利である。
【００４７】
（記述例２）
記述例２は、斜め方向に等間隔に配置された同一形状の矩形の集合を関数記述したものである。図１５に、記述例２で記述される図形パターンを示す。
図１６は記述例２による関数定義を示し、図１６の第１行目は、関数２の変数を示す。
【００４８】
図１５に示す各矩形の位置は（Ｘ，Ｙ）、幅はＷ、高さはＨ、Ｘ方向のピッチはＰ１、Ｙ方向のピッチはＰ２で示される。また、矩形の個数はＮ個で示される。図１６の第２行目は、Ｉを０からＮ−１で１ずつ変化させることを示す。図１６の第３行目は、矩形の位置が（Ｘ＋Ｐ１＊Ｉ，Ｙ＋Ｐ２＊Ｉ）、幅がＷ、高さがＨであることを示す。
図１７は記述例２による関数呼び出しを示す。図１７に示す１回の関数呼び出しで、図１５に示す１０個の矩形が呼び出される。
【００４９】
比較のため、図１５の図形パターンを従来の方法で記述した例を、図１８に示す。図１５に示すパターンは、１０個の矩形が同一の形状を有するため、図形をライブラリに登録できる。図１８の第１行目は、ライブラリ１が位置（０，０）に幅１０、高さ１０の矩形を配置することを示す。図１８の第２行目から第１１行目はライブラリ１に登録された図形の位置を示す。このような登録を行った場合、例えば図１４に示すように、すべての矩形について位置、幅、高さを記述する場合に比較して、データは圧縮される。
【００５０】
上記の記述例１と同様の仮定に基づき、記述例２（図１６および図１７）と対応する従来の記述例（図１８）のデータサイズを比較する。本発明による記述例２では、関数定義を示す図１６の第１行目が１１ワード、第２行目が８ワード、第３行目が１７ワード、第４行目が１ワード、第５行目が１ワードである。したがって、関数定義のデータサイズは合計で３８ワードと概算される。
【００５１】
また、関数呼び出しを示す図１７は１行で１７ワードと概算される。この１７ワードのうち、キーワードと関数ＩＤが各１ワードで計３ワード、座標、幅、高さ、ピッチおよび矩形の番号の７個の値が各２ワードで計１４ワードである。関数定義のデータサイズと関数呼び出しのデータサイズを合計すると、５５ワードとなる。
【００５２】
一方、従来方法による記述例を示す図１８の第１行目は１１ワードである。この１１ワードのうち、キーワードが２ワード、ライブラリのＩＤが１ワード、座標、幅および高さの４個の値が各２ワードで計８ワードである。図１８の第２行目は６ワードである。この６ワードのうち、キーワードが１ワード、ライブラリのＩＤが１ワード、座標の２個の値が各２ワードで計４ワードである。図１８の第３行目から第１１行目は、第２行目と同様に６ワードである。したがって、従来例のデータサイズは合計で７１ワードと概算される。
【００５３】
以上のように、斜め方向に等間隔に配置された同一形状の矩形の個数をＮ個としたときのデータサイズは、本発明の場合、３８＋１７＝５５（ワード）となり一定である。一方、従来方法の場合、１１＋６×Ｎ（ワード）となる。したがって、Ｎが８以上であれば、本発明による記述例２の方がデータ量の削減に有利である。
【００５４】
［３．マスク描画装置］
本実施形態のマスク描画装置の内部には、マスクデータを処理するデータ処理機能部と、マスクにパターンを描画する描画機能部がある。データ処理機能部では、関数記述されたマスクデータを読み込んで、描画を制御するデータを出力する。描画機能部は、データ処理機能部の出力データに従って、パターンを描画する。描画機能部は例えば電子線をマスクに照射して、描画を行う。
【００５５】
本発明の関数記述を含むマスクデータを、データ処理機能部で処理する方法として、リアルタイム処理とバッチ処理が挙げられる。リアルタイム処理に対応したマスク描画装置の構成を、図１９に示す。また、バッチ処理に対応したマスク描画装置の構成を、図２０に示す。
【００５６】
図１９に示すマスク描画装置では、データ処理機能部１でマスクデータの記述内容をリアルタイムに処理する。すなわち、マスクの描画をする時に、関数記述を含んだマスクデータがリアルタイムで実行解釈される。実行解釈された結果の描画用パターンデータが描画機能部２へ転送されて、描画機能部２の動作が制御される。リアルタイムの実行解釈には、関数記述を含んだマスクデータをバッファリングしながら実行解釈することも含む。
【００５７】
図２０に示すマスク描画装置では、データ処理機能部１で、マスクデータの記述内容を描画用パターンデータに一括して変換しておく。描画をする時には、変換後の描画用パターンデータが描画機能部２へ転送されて、描画機能部２の動作が制御される。
【００５８】
上記の本実施形態のマスク描画装置によれば、関数記述されたマスクデータを取り込んで描画を行うことが可能なため、マスクデータをマスク描画装置に転送するための時間を短縮できる。したがって、マスク描画の全体的な所要時間を短縮できる。
【００５９】
本発明のマスクデータ処理方法およびマスク描画装置の実施形態は、上記の説明に限定されない。例えば、上記の記述例では矩形を示したが、図形が台形を含む場合にも、［１．関数記述方法］に示したような方法で関数記述を行い、データを圧縮できる。また、本発明のマスクデータ処理方法は、電子線リソグラフィ用のステンシルマスクに限らず、イオンビームリソグラフィやイオン注入等、他のプロセスに使用されるマスクの作製にも適用できる。その他、本発明の要旨を逸脱しない範囲で、種々の変更が可能である。
【００６０】
【発明の効果】
本発明のマスクデータ処理方法によれば、マスクデータのデータ量を効率的に削減できる。
本発明のマスク描画装置によれば、関数記述により圧縮されたデータを取り込むことが可能となり、データの転送時間を短縮できる。
【図面の簡単な説明】
【図１】図１は、本発明のマスクデータ処理方法による関数記述の構成図である。
【図２】図２は、本発明のマスクデータ処理方法による関数定義の記述方法を示す。
【図３】図３は、本発明のマスクデータ処理方法による関数定義の記述方法を示す。
【図４】図４は、本発明のマスクデータ処理方法による関数定義の記述方法を示す。
【図５】図５は、本発明のマスクデータ処理方法による関数定義の記述方法を示す。
【図６】図６は、本発明のマスクデータ処理方法による関数定義の記述方法を示す。
【図７】図７は、本発明のマスクデータ処理方法による関数定義の記述方法を示す。
【図８】図８は、本発明のマスクデータ処理方法による関数定義の記述方法を示す。
【図９】図９は、本発明のマスクデータ処理方法による関数呼び出しの記述方法を示す。
【図１０】図１０は、本発明のマスクデータ処理方法の記述例１で関数記述される図形パターンを示す。
【図１１】図１１は、本発明のマスクデータ処理方法の記述例１の関数定義を示す。
【図１２】図１２は、図１０の図形パターンと図１１の変数との関係を示す図である。
【図１３】図１３は、本発明のマスクデータ処理方法の記述例１の関数呼び出しを示す。
【図１４】図１４は、本発明のマスクデータ処理方法の記述例１の比較例としての従来例である。
【図１５】図１５は、本発明のマスクデータ処理方法の記述例２で関数記述される図形パターンを示す。
【図１６】図１６は、本発明のマスクデータ処理方法の記述例２の関数定義を示す。
【図１７】図１７は、本発明のマスクデータ処理方法の記述例２の関数定義を示す。
【図１８】図１８は、本発明のマスクデータ処理方法の記述例２の比較例としての従来例である。
【図１９】図１９は、本発明のマスク描画装置の構成図である。
【図２０】図２０は、本発明のマスク描画装置の構成図である。
【図２１】図２１（ａ）および（ｂ）は、レイアウトパターンの分割例を示す。
【図２２】図２２は、従来のマスクデータ圧縮方法によりパターンデータを圧縮できる図形パターンの一例を示す。
【図２３】図２３（ａ）は、図２２のパターンデータの圧縮前の記述を示し、図２３（ｂ）は、図２２のパターンデータの圧縮後の記述を示す。
【図２４】図２４は、従来のマスクデータ圧縮方法によりパターンデータを圧縮できる図形パターンの他の例を示す。
【図２５】図２５（ａ）は、図２４のパターンデータの圧縮前の記述を示し、図２５（ｂ）は、図２４のパターンデータの圧縮後の記述を示す。
【符号の説明】
１…データ処理機能部、２…描画機能部、１１…矩形、１２…台形。
【図１】
2004079987.tif 000003
【図２】
2004079987.tif 000004
【図３】
2004079987.tif 000005
【図４】
2004079987.tif 000006
【図５】
2004079987.tif 000007
【図６】
2004079987.tif 000008
【図７】
2004079987.tif 000009
【図８】
2004079987.tif 000010
【図９】
2004079987.tif 000011
【図１０】
2004079987.tif 000012
【図１１】
2004079987.tif 000013
【図１２】
2004079987.tif 000014
【図１３】
2004079987.tif 000015
【図１４】
2004079987.tif 000016
【図１５】
2004079987.tif 000017
【図１６】
2004079987.tif 000018
【図１７】
2004079987.tif 000019
【図１８】
2004079987.tif 000020
【図１９】
2004079987.tif 000021
【図２０】
2004079987.tif 000022
【図２１】
2004079987.tif 000023
【図２２】
2004079987.tif 000024
【図２３】
2004079987.tif 000025
【図２４】
2004079987.tif 000026
【図２５】
2004079987.tif 000027