(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024171036
(43)【公開日】2024-12-11
(54)【発明の名称】描画データ検査方法、描画方法、描画装置、およびプログラム
(51)【国際特許分類】
H01L 21/027 20060101AFI20241204BHJP
G06F 30/398 20200101ALI20241204BHJP
G06F 111/04 20200101ALN20241204BHJP
G06F 119/18 20200101ALN20241204BHJP
【FI】
H01L21/30 541W
G06F30/398
G06F111:04
G06F119:18
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023087886
(22)【出願日】2023-05-29
(71)【出願人】
【識別番号】504162958
【氏名又は名称】株式会社ニューフレアテクノロジー
(74)【代理人】
【識別番号】100120031
【弁理士】
【氏名又は名称】宮嶋 学
(74)【代理人】
【識別番号】100107582
【弁理士】
【氏名又は名称】関根 毅
(74)【代理人】
【識別番号】100120385
【弁理士】
【氏名又は名称】鈴木 健之
(74)【代理人】
【識別番号】100217940
【弁理士】
【氏名又は名称】三並 大悟
(72)【発明者】
【氏名】安井 健一
【テーマコード(参考)】
5B146
5F056
【Fターム(参考)】
5B146AA22
5B146BA04
5B146EA09
5B146GL05
5F056AA07
5F056CA30
(57)【要約】
【課題】正確に描画データを検査することが可能な描画データ検査方法を提供する。
【解決手段】一実施形態に係る描画データ検査方法は、荷電粒子ビーム描画装置で用いられる、図形がBスプライン曲線であらわされる描画データを検査する描画データ検査方法である。この方法は、Bスプライン曲線を形成する第1制御点群の位置を示す座標を取得し、Bスプライン曲線交差率を検査の過程で算出し、Bスプライン曲線交差率がしきい値を超えた場合に、第1制御点群の座標を、ベジェ曲線の第2制御点群の座標に変換して座標変換後の図形が交差するか否かを判定し、Bスプライン曲線交差率がしきい値以下である場合、第1制御点群に基づいて描画データの図形が交差するか否かを判定し、描画データの図形が交差する場合に、第1制御点群の座標を第2制御点群の座標に変換して座標変換後の図形が交差するか否かを判定する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
荷電粒子ビーム描画装置で用いられる、図形がBスプライン曲線であらわされる描画データを検査する描画データ検査方法であって、
前記Bスプライン曲線を形成する第1制御点群の位置を示す座標を取得し、
前記図形の総数に占める交差箇所を有するBスプライン曲線であらわされる図形数の比率を示すBスプライン曲線交差率を検査の過程で算出し、
前記Bスプライン曲線交差率がしきい値を超えた場合に、前記第1制御点群の座標を、ベジェ曲線の第2制御点群の座標に変換して座標変換後の図形が交差するか否かを判定し、
前記Bスプライン曲線交差率がしきい値以下である場合、前記第1制御点群に基づいて前記図形が交差するか否かを判定し、前記図形が交差する場合に、前記第1制御点群の座標を前記第2制御点群の座標に変換して座標変換後の図形が交差するか否かを判定する、
描画データ検査方法。
【請求項2】
分数の係数を有する第1変換行列を、前記係数の分母の整数倍した第2変換行列を用いて前記第1制御点群の座標を前記第2制御点群の座標に変換する、請求項1に記載の描画データ検査方法。
【請求項3】
請求項1または請求項2に記載の描画データ検査方法によって検査された描画データに基づいて荷電粒子ビームを照射する、描画方法。
【請求項4】
図形がBスプライン曲線であらわされる描画データを検査する描画装置であって、
前記Bスプライン曲線を形成する第1制御点群の位置を示す座標を取得し、前記図形の総数に占める交差箇所を有するBスプライン曲線であらわされる図形数の比率を示すBスプライン曲線交差率を検査の過程で算出し、前記Bスプライン曲線交差率がしきい値を超えた場合に、前記第1制御点群の座標を、ベジェ曲線の第2制御点群の座標に変換して座標変換後の図形が交差するか否かを判定し、前記Bスプライン曲線交差率がしきい値以下である場合、前記第1制御点群に基づいて前記図形が交差するか否かを判定し、前記図形が交差する場合に、前記第1制御点群の座標を前記第2制御点群の座標に変換して座標変換後の図形が交差するか否かを判定するデータ検査部を備える、描画装置。
【請求項5】
荷電粒子ビーム描画装置で用いられる描画データの図形をあらわすBスプライン曲線を形成する第1制御点群の位置を示す座標を取得する処理と、
前記図形の総数に占める交差箇所を有するBスプライン曲線であらわされる図形数の比率を示すBスプライン曲線交差率を検査の過程で算出する処理と、
前記Bスプライン曲線交差率がしきい値を超えた場合に、前記第1制御点群の座標を、ベジェ曲線の第2制御点群の座標に変換して座標変換後の図形が交差するか否かを判定し、前記Bスプライン曲線交差率がしきい値以下である場合、前記第1制御点群に基づいて前記図形が交差するか否かを判定する処理と、
前記Bスプライン曲線交差率がしきい値以下である場合、前記第1制御点群に基づいて前記図形が交差するか否かを判定し、前記図形が交差する場合に、前記第1制御点群の座標を前記第2制御点群の座標に変換して座標変換後の図形が交差するか否かを判定する処理と、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、描画データ検査方法、描画方法、描画装置、およびプログラムに関する。
【背景技術】
【0002】
電子ビーム描画装置として、例えば、マルチビームを用いて一度に多くのビームを照射するマルチビーム描画装置が知られている。マルチビーム描画装置は、描画データに基づいて電子ビーム描画を行う。この描画データが、曲線状の図形を含んでいる場合、この曲線図形は、マスクデータ量削減のために、パラメータ曲線の一つであるBスプライン曲線で近似される。
【0003】
Bスプライン曲線で作成された曲線図形は、ラスタライズ処理の効率化のために、同一図形内で交差しないことを前提としている。このため、描画データの曲線図形内に交差箇所が存在するか否かを検査する必要がある。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
Bスプライン曲線で作成された曲線図形を含む描画データを検査する場合、描画データの形状によっては、曲線同士が交差からほど遠い状況であっても、検査で不合格と判定されてしまう場合がある。
【0006】
本発明は、正確に描画データを検査することが可能な描画データ検査方法、描画方法、描画装置、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の一態様による描画データ検査方法は、荷電粒子ビーム描画装置で用いられる、図形がBスプライン曲線であらわされる描画データを検査する描画データ検査方法である。この検査方法は、Bスプライン曲線を形成する第1制御点群の位置を示す座標を取得し、図形の総数に占める交差箇所を有するBスプライン曲線であらわされる図形数の比率を示すBスプライン曲線交差率を検査の過程で算出し、Bスプライン曲線交差率がしきい値を超えた場合に、第1制御点群の座標を、ベジェ曲線の第2制御点群の座標に変換して座標変換後の図形が交差するか否かを判定し、Bスプライン曲線交差率がしきい値以下である場合、第1制御点群に基づいて図形が交差するか否かを判定し、図形が交差する場合に、第1制御点群の座標を第2制御点群の座標に変換して座標変換後の図形が交差するか否かを判定する。
【0008】
本発明の一態様による描画方法は、上記描画データ検査方法によって検査された描画データに基づいて荷電粒子ビームを照射する。
【0009】
本発明の一態様による描画装置は、図形がBスプライン曲線であらわされる描画データを検査する描画データ装置である。この描画装置は、前記Bスプライン曲線を形成する第1制御点群の位置を示す座標を取得し、前記図形の総数に占める交差箇所を有するBスプライン曲線であらわされる図形数の比率を示すBスプライン曲線交差率を検査の過程で算出し、前記Bスプライン曲線交差率がしきい値を超えた場合に、前記第1制御点群の座標を、ベジェ曲線の第2制御点群の座標に変換して座標変換後の図形が交差するか否かを判定し、前記Bスプライン曲線交差率がしきい値以下である場合、前記第1制御点群に基づいて前記図形が交差するか否かを判定し、前記図形が交差する場合に、前記第1制御点群の座標を前記第2制御点群の座標に変換して座標変換後の図形が交差するか否かを判定するデータ検査部を備える。
【0010】
本発明の一態様によるプログラムは、荷電粒子ビーム描画装置で用いられる描画データの図形をあらわすBスプライン曲線を形成する第1制御点群の位置を示す座標を取得する処理と、前記図形の総数に占める交差箇所を有するBスプライン曲線であらわされる図形数の比率を示すBスプライン曲線交差率を検査の過程で算出する処理と、前記Bスプライン曲線交差率がしきい値を超えた場合に、前記第1制御点群の座標を、ベジェ曲線の第2制御点群の座標に変換して座標変換後の図形が交差するか否かを判定し、前記Bスプライン曲線交差率がしきい値以下である場合、前記第1制御点群に基づいて前記図形が交差するか否かを判定する処理と、前記Bスプライン曲線交差率がしきい値以下である場合、前記第1制御点群に基づいて前記図形が交差するか否かを判定し、前記図形が交差する場合に、前記第1制御点群の座標を前記第2制御点群の座標に変換して座標変換後の図形が交差するか否かを判定する処理と、をコンピュータに実行させるためのプログラムである。
【発明の効果】
【0011】
本発明によれば、描画データに含まれる曲線図形の形状の制約を緩和しつつ、正確に描画データを検査することが可能となる。
【図面の簡単な説明】
【0012】
【
図1】第1実施形態に係るマルチ荷電粒子ビーム描画装置の概略図である。
【
図3】描画データの検査方法の手順の一例を説明するためのフローチャートである。
【
図4】Bスプライン曲線およびベジェ曲線の各々の制御点の一例を示す図である。
【
図5】描画データの検査方法の一例を説明するための図である。
【
図6】描画データの検査方法の手順の他の一例を説明するためのフローチャートである。
【
図7】
図6に示すフローチャートに従って行われる描画データの検査方法を説明するための図である。
【
図8】第1変形例に係るBスプライン曲線およびベジェ曲線の各々の制御点の一例を示す図である。
【
図9】第2変形例に係る設計データを示す図である。
【
図10】第2変形例に係る描画データの検査方法の手順の一例を説明するためのフローチャートである。
【
図11】第2実施形態に係る描画データ検査装置の概略的な構成を示すブロック図である。
【発明を実施するための形態】
【0013】
以下、図面を参照して本発明の実施形態を説明する。本実施形態は、本発明を限定するものではない。
【0014】
(第1実施形態)
図1は、第1実施形態に係るマルチ荷電粒子ビーム描画装置の概略図である。本実施形態では、荷電粒子ビームの一例として、電子ビームを用いた構成について説明する。但し、荷電粒子ビームは、電子ビームに限られず、イオンビーム等の他の荷電粒子ビームでもよい。また、本実施形態では、描画装置は、マルチビーム方式であるが、シングルビーム方式であってもよい。
【0015】
本実施形態に係る
図1に示す描画装置1は、マスクやウェーハ等の対象物に電子ビームを照射して所望のパターンを描画する描画部10と、描画部10による描画動作を制御する制御部50とを備える。描画部10は、電子ビーム鏡筒12及び描画室30を有する。
【0016】
電子ビーム鏡筒12内には、電子銃14、照明レンズ16、成形アパーチャアレイ部材18、ブランキングアパーチャアレイプレート20、縮小レンズ22、制限アパーチャ部材24、対物レンズ26、及び偏向器28が配置されている。描画室30内には、XYステージ32が配置される。XYステージ32上には、描画対象基板となるマスクブランク34が載置されている。対象物として、例えば、ウェーハや、ウェーハにエキシマレーザを光源としたステッパやスキャナ等の縮小投影型露光装置や極端紫外線露光装置を用いてパターンを転写する露光用のマスクが含まれる。また、描画対象基板には、例えば、既にパターンが形成されているマスクも含まれる。例えば、レベンソン型マスクは2回の描画を必要とするため、1度描画されマスクに加工された物に2度目のパターンを描画することもある。XYステージ32上には、さらに、XYステージ32の位置測定用のミラー36が配置される。
【0017】
制御部50は、制御計算機52、偏向制御回路54,56、及びステージ位置検出器58を有する。制御計算機52、偏向制御回路54,56、及びステージ位置検出器58は、バスを介して互いに接続されている。
【0018】
電子銃14から放出された電子ビーム40は、照明レンズ16によりほぼ垂直に成形アパーチャアレイ部材18全体を照明する。成形アパーチャアレイ部材18には、穴(開口部)が所定の配列ピッチでマトリクス状に形成されている。電子ビーム40は、成形アパーチャアレイ部材18のすべての穴が含まれる領域を照明する。これらの複数の穴を電子ビーム40の一部がそれぞれ通過することで、
図1に示すようなマルチビーム40a~40eが形成される。
【0019】
ブランキングアパーチャアレイプレート20には、成形アパーチャアレイ部材18の各穴の配置位置に合わせて通過孔が形成され、各通過孔には、対となる2個の電極からなるブランカが、それぞれ配置される。各通過孔を通過する電子ビーム40a~40eは、それぞれ独立に、ブランカが印加する電圧によって偏向される。かかる偏向によってブランキング制御される。このように、複数のブランカが、成形アパーチャアレイ部材18の複数の穴を通過したマルチビームのうち、それぞれ対応するビームのブランキング偏向を行う。
【0020】
ブランキングアパーチャアレイプレート20を通過したマルチビーム40a~40eは、縮小レンズ22によって縮小され、制限アパーチャ部材24に形成された中心の穴に向かって進む。ここで、ブランキングアパーチャアレイプレート20のブランカにより偏向された電子ビームは、制限アパーチャ部材24の中心の穴から位置がはずれ、制限アパーチャ部材24によって遮蔽される。一方、ブランキングアパーチャアレイプレート20のブランカによって偏向されなかった電子ビームは、制限アパーチャ部材24の中心の穴を通過する。
【0021】
このように、制限アパーチャ部材24は、ブランキングアパーチャアレイプレート20のブランカによってビームOFFの状態になるように偏向された各ビームを遮蔽する。そして、ビームONになってからビームOFFになるまでに制限アパーチャ部材24を通過したビームが、1回分のショットのビームとなる。制限アパーチャ部材24を通過したマルチビーム40a~40eは、対物レンズ26により焦点が合わされ、所望の縮小率のパターン像となる。制限アパーチャ部材24を通過した各ビーム(マルチビーム全体)は、偏向器28によって同方向にまとめて偏向され、各ビームのマスクブランク34上のそれぞれの照射位置に照射される。
【0022】
XYステージ32が連続移動している時、ビームの照射位置がXYステージ32の移動に追従するように偏向器28によって制御される。XYステージ32の移動は、ステージ制御部(不図示)により行われ、XYステージ32の位置はステージ位置検出器58により検出される。
【0023】
一度に照射されるマルチビームは、理想的には成形アパーチャアレイ部材18の複数の穴の配列ピッチに上述した所望の縮小率を乗じたピッチで並ぶことになる。この描画装置は、ショットビームを連続して順に照射していくラスタースキャン方式で描画動作を行い、所望のパターンを描画する際、パターンに応じて必要なビームがブランキング制御によりビームONに制御される。XYステージ32が連続移動している時、ビームの照射位置がXYステージ32の移動に追従するように偏向器28によって制御される。
【0024】
制御計算機52は、
図1に示すように、データ検査部521、ショットデータ生成部522、および照射制御部523を有する。データ検査部521は、記憶装置60から読み出した描画データD1を検査する。データ検査部521による検査方法については、後述する。
【0025】
描画データD1がデータ検査部521の検査に合格すると、ショットデータ生成部522は、描画データD1に対して複数段のデータ変換処理を行って装置固有のショットデータを生成する。ショットデータには、各ショットの照射量及び照射位置座標等が定義される。例えば、ショットデータ生成部522は、描画データD1内に定義された図形パターンを対応する画素に割り当てる。そして、ショットデータ生成部522は、画素毎に、配置される図形パターンの面積密度を算出する。
【0026】
照射制御部523は、画素毎に、1ショットあたりの電子ビームの照射量を算出する。例えば、画素の面積密度に比例した照射量を求め、近接効果、かぶり効果、ローディング効果等による寸法変動を考慮して照射量を補正する。
【0027】
照射制御部523は、ショットデータに基づいて算出した各ショットの照射量を偏向制御回路54に出力する。偏向制御回路54は、入力された照射量を電流密度で割って照射時間tを求める。そして、偏向制御回路54は、対応するショットを行う際、照射時間tだけブランカがビームONするように、ブランキングアパーチャアレイプレート20の対応するブランカに偏向電圧を印加する。
【0028】
また、照射制御部523は、ショットデータが示す位置(座標)に各ビームが偏向されるように、偏向位置データを偏向制御回路56に出力する。偏向制御回路56は、偏向量を演算し、偏向器28に偏向電圧を印加する。これにより、その回にショットされるマルチビームがまとめて偏向される。
【0029】
ここで、データ検査部521の検査対象である描画データD1について説明する。描画データD1は、変換装置70にて設計データ(CADデータ)D0に基づいて生成される。設計データD0は、例えば、半導体集積回路のレイアウトを設計したレイアウトデータである。
【0030】
設計データD0には、曲線図形が含まれている。変換装置70は、この曲線図形について、Bスプライン曲線を表現(パラメトリック曲線表現)するための複数の制御点を算出し、制御点の座標位置を求める。変換装置70は、各制御点について、描画データD1上で隣接する制御点からの変位を求める。
【0031】
図2は、設計データD0の例を示す図である。この設計データD0は、閉曲線で形成されている。この閉曲線は、9個の制御点Ps0~制御点Ps8で形成されるBスプライン曲線に近似される。変換装置70は、閉曲線を近似する制御点Ps0~制御点Ps8を算出する。本実施形態では、制御点Ps0~制御点Ps8には、制御点番号が描画データD1上の位置に応じて連続して付与されている。変換装置70は、制御点の座標位置を、当該制御点に対して描画データD1上で隣接する他の制御点からの変位で表現して、描画データD1を生成する。
【0032】
なお、描画データD1の図形は、閉曲線に限定されない。例えば、描画データD1は、曲線図形および多角形図形を含んでいてもよい。また、描画データD1は、閉曲線で囲まれた外周部内に、ホールを有していてもよい。このホールは、閉曲線または直線で囲まれた開口部である。
【0033】
例えば、
図2では、制御点Ps0の座標(xs0、ys0)が、この曲線図形の図形配置原点として定義される。描画データD1上で制御点Ps0に隣接し、かつ制御点番号が次の制御点Ps1の座標位置は、制御点Ps0から見たx方向の変位δsx1と、y方向の変位δsy1で定義される。制御点Ps2~制御点Ps8の各座標位置についても、制御点Ps1と同じように、描画データD1上で一つ前の制御点番号の制御点から見たx方向およびy方向の変位で定義される。このとき、変換装置70は、制御点Ps0~制御点Ps8のx座標およびy座標を全て整数で定義する。
【0034】
データ検査部521は、Bスプライン曲線で近似された描画データD1を検査する。ここで、データ検査部521の検査方法の一例について説明する。
【0035】
図3は、描画データD1の検査方法の手順の一例を説明するためのフローチャートである。まず、データ検査部521は、記憶装置60から描画データD1の複数の制御点Psから成る制御点群(第1制御点群)の座標を取得する(ステップS11)。
【0036】
次に、データ検査部521は、Bスプライン曲線をベジェ曲線に変換する(ステップS12)。ステップS12では、例えば、Bスプライン曲線の次数pが2である場合、データ検査部521は、下記の式(1)に記載された変換行列を用いて、Bスプライン曲線の図形配置原点である制御点Ps0の座標を、ベジェ曲線の図形配置原点である制御点Pb0の座標に変換する。
【数1】
【0037】
また、曲線次数pが3である場合、データ検査部521は、下記の式(2)に記載された変換行列を用いて、Bスプライン曲線の制御点Ps0の座標を、ベジェ曲線の制御点Pb0の座標に変換する。
【数2】
【0038】
上記のように、Bスプライン曲線からベジェ曲線に変換するための変換行列は、Bスプライン曲線の次数に応じて予め設定されている。また、ベジェ曲線上で制御点Pb0に隣接し、かつ制御点番号が次の制御点Pb1の座標位置は、制御点Pb0から見たx方向の変位δbx1と、y方向の変位δby1で定義される。ベジェ曲線の制御点Pb(第2制御点)は、Bスプライン曲線の制御点Psと同じように、ベジェ曲線上で一つ前の制御点番号の制御点から見たx方向およびy方向の変位で定義される。このようにして、Bスプライン曲線がベジェ曲線に変換される。
【0039】
図4は、Bスプライン曲線およびベジェ曲線の各々の制御点の一例を示す図である。
図4に示す例では、9個の制御点Ps0~制御点Ps8で形成されるBスプライン曲線が、27個の制御点Pb0~制御点Pb26で形成されたベジェ曲線に変換される。この例では、ベジェ曲線の制御点間の変位量、すなわち制御点間を直線で結んだ直線距離が、Bスプライン曲線の制御点間の直線距離よりも短い。このため、ベジェ曲線の制御点数は、Bスプライン曲線の制御点数よりも多くなっている。
【0040】
Bスプライン曲線からベジェ曲線への変換処理が終わると、データ検査部521は、検査対象制御点の外積valを算出する(ステップS13)。データ検査部521は、ベジェ曲線の制御点Pbの座標を外積計算処理した結果に基づいて、検査対象制御点が検査対象領域内に存在するか否かを検査する。検査対象領域は、ベジェ曲線上で3つ以上の制御点を直線で結ぶ線分で囲まれる領域である。一方、検査対象制御点は、検査対象領域を形成する制御点とは異なる制御点である。以下、ステップS13の動作について詳しく説明する。
【0041】
図5は、ベジェ曲線に基づく描画データD1の検査方法の一例を説明するための図である。ステップS13では、
図5に示すように、例えば、データ検査部521は、制御点Pb0、制御点Pb1、および制御点Pb2を線分(ベクトル)L1~線分(ベクトル)L3でそれぞれ結んだ三角形を最小の検査対象領域Aとして設定する。この場合、データ検査部521は、ベジェ曲線上で制御点Pb0、制御点Pb1,および制御点Pb2とは異なる制御点Pb[i](xb[i],yb[i])(iは制御点番号)を検査対象制御点として設定する。
【0042】
データ検査部521は、検査対象領域Aを囲む線分(ベクトル)L1~線分(ベクトル)L3に対する各検査対象制御点の外積valを算出する。具体的には、データ検査部521は、下記の式(3)を用いて外積val1を算出する。
val1=xb1×yb[i]-yb1×xb[i] (3)
【0043】
データ検査部521は、制御点Pb0の座標(xb0,yb0)を原点(0,0)に変換して、制御点Pb0から制御点Pb[i]へと直線で結ぶ線分(ベクトル)Laと、制御点Pb0から制御点Pb1へと直線で結ぶ線分(ベクトル)L1とのベクトル外積を外積val1として算出する。このとき、データ検査部521は、制御点Pb1の座標(xb1,yb1)および制御点Pb[i]の座標(xb[i],yb[i])を、制御点Pb0の座標を原点とする座標系の座標に変換する。
【0044】
続いて、データ検査部521は、下記の式(4)を用いて外積val2を算出する。
val2=xb2×yb[i]-yb2×xb[i] (4)
【0045】
データ検査部521は、制御点Pb1の座標(xb1,yb1)を原点(0,0)に変換して、制御点Pb1から制御点Pb[i]へと直線で結ぶ線分(ベクトル)Lbと、制御点Pb1から制御点Pb2へと直線で結ぶ線分(ベクトル)L2とのベクトル外積を外積val2として算出する。このとき、データ検査部521は、制御点Pb2の座標(xb2,yb2)および制御点Pb[i]の座標(xb[i],yb[i])を、制御点P1の座標を原点とする座標系の座標に変換する。
【0046】
最後に、データ検査部521は、下記の式(5)を用いて外積val3を算出する。
val3=xb0×yb[i]-yn0×xb[i] (5)
【0047】
データ検査部521は、制御点Pb2の座標(xb2,yb2)を原点(0,0)に変換して、制御点Pb2から制御点Pb[i]へと直線で結ぶ線分(ベクトル)Lcと、制御点Pb2から制御点Pb0へと直線で結ぶ線分(ベクトル)L3とのベクトル外積を外積val3として算出する。このとき、データ検査部521は、制御点Pb0の座標(xb0,yb0)および制御点Pb[i]の座標(xb[i],yb[i])を、制御点P2の座標を原点とする座標系の座標に変換する。
【0048】
ステップS13では、残りの制御点についても、上記のような計算式を用いて線分(ベクトル)L1~線分(ベクトル)L3に対する外積valを算出する。
【0049】
外積valの算出後、データ検査部521は、全ての外積valの値をしきい値THと比較する(ステップS14)。本実施形態では、外積valを計算する際に制御点Pの座標を原点に変換するため、しきい値THは0(ゼロ)に設定されている。
【0050】
例えば、外積val1≧しきい値THである場合、制御点Pb[i]は、線分(ベクトル)L1の左側または線分(ベクトル)L1上に位置することになる。一方、外積val1<しきい値THである場合、制御点Pb[i]は、線分(ベクトル)L1の右側に位置することになる。
【0051】
また、外積val2≧しきい値THである場合、制御点Pb[i]は、線分(ベクトル)L2の左側または線分(ベクトル)L2上に位置することになる。一方、外積val2<しきい値THである場合、制御点Pb[i]は、線分(ベクトル)L2の右側に位置することになる。
【0052】
さらに、外積val3≧しきい値THである場合、制御点Pb[i]は、線分(ベクトル)L3の左側または線分(ベクトル)L3上に位置することになる。一方、外積val3<しきい値THである場合、制御点Pb[i]は、線分(ベクトル)L3の右側に位置することになる。
【0053】
上記のように、外積val1~外積val3の各々をしきい値THと比較した結果、外積val1~外積val3の全てがしきい値TH以上である場合、制御点Pb[i]は、線分(ベクトル)L1~線分(ベクトル)L3の左側またはいずれかの線分上に位置していることになる。そのため、データ検査部521は、制御点Pb[i]を線分(ベクトル)L1~線分(ベクトル)L3で囲まれる検査対象領域A内に存在すると判定する(ステップS15)。この場合、制御点Pb[i]は違反制御点とみなされ、描画データD1は不合格となる。
【0054】
一方、外積val1~外積val3の何れか1つでもしきい値THを下回る場合には、データ検査部521は、制御点Pb[i]を検査対象領域A外に存在すると判定する(ステップS16)。この場合、制御点Pb[i]は、合格制御点とみなされる。全ての検査対象制御点が合格制御点である場合、描画データD1は合格となる。
【0055】
上記のように検査対象領域A内における制御点の存否の検査が終了すると、データ検査部521は、制御点Ps1、制御点Ps2、および制御点Ps3を直線で結ぶ三角形を検査対象領域Aの次の検査対象領域として設定する。そして、データ検査部521は、検査対象領域Aの検査と同じように、設定した検査対象領域内における検査対象制御点の存否を検査する。このようにして、データ検査部521は、検査対象領域を設定するたびに、検査対象領域内における検査対象制御点の存否を検査する。
【0056】
(比較例)
以下、
図4を参照して比較例について説明する。本比較例は、上述した描画データD1の検査方法をBスプライン曲線に適用している。
【0057】
本比較例では、データ検査部521は、まず、Bスプライン曲線の制御点Ps0、制御点Ps1、および制御点Ps2を検査対象領域Bと設定するとともに、制御点Ps6を検査対象制御点に設定する。続いて、データ検査部521は、上述したステップ13と同じように各制御点の座標を用いた外積valを算出する。続いて、データ検査部521は、上述したステップS14~ステップS16と同じように、外積valとしきい値THとの比較結果に基づいて、描画データD1の検査の合否を判定する。
【0058】
本比較例では、
図4に示すように、制御点Ps6は、制御点Ps0~制御点Ps2を直線で結んだ線分によって囲まれる検査対象領域B内に存在する。このため、制御点Ps0~制御点Ps8によって形成される曲線同士が交差していないにも関わらず、この描画データD1の検査は、不合格と判定されてしまう。
【0059】
一方、上述した本実施形態では、データ検査部521は、Bスプライン曲線よりもデータ圧縮率が低いベジェ曲線に基づいて描画データD1を検査している。これにより、データ検査部521は、設計データD0により近似した描画データD1を検査することができ、描画データD1は、検査の際に曲線図形の形状の制約を受けにくくなる。したがって、本実施形態によれば、描画データD1に含まれる曲線図形の形状の制約を緩和しつつ、正確に描画データを検査することが可能となる。
【0060】
なお、本実施形態では、データ検査部521は、検査対象領域内における検査対象制御点の存否によって、描画データD1の検査結果を判定しているが、描画データD1の検査は、この方法に限定されず、別の方法で行われてもよい。
【0061】
ここで、描画データD1の別の検査方法として、ベジェ曲線の制御点間を直線で結ぶ2個の線分を互いに交差させないようにするための検査方法を説明する。
【0062】
図6は、描画データD1の検査方法の手順の他の一例を説明するためのフローチャートである。また、
図7は、
図6に示すフローチャートに従って行われる描画データD1の検査方法を説明するための図である。
【0063】
図6および
図7を用いて説明する検査方法において、データ検査部521は、ベジェ曲線の次数p=2の条件下で2個の検査対象線分が互いに交差しているか否かを検査する。
【0064】
まず、データ検査部521は、変換装置70から描画データD1に含まれるBスプライン曲線の制御点Ps0~制御点Ps8から成る制御点群の座標を取得する(ステップS21)。
【0065】
次に、データ検査部521は、Bスプライン曲線をベジェ曲線に変換する(ステップS22)。データ検査部521は、上述した数式(1)に記載の変換行列を用いて、Bスプライン曲線の制御点Psの座標をベジェ曲線の制御点Pbの座標に変換する。
【0066】
次に、データ検査部521は、検査対象制御点の外積valを算出する(ステップS23)。ステップS23では、データ検査部521は、ベジェ曲線上で互いに隣接する2個の制御点を検査対象制御点として設定する。ここでは、
図7に示すように、データ検査部521が、制御点Pb[i](xb[i],yb[i])および制御点Pb[k](xb[k],yb[k])(k!=i+1)を検査対象制御点として設定した場合について説明する。この場合、データ検査部521は、検査対象制御点の外積valを算出することによって、検査対象線分(ベクトル)L[i]と検査対象線分(ベクトル)L[k]とが互いに交差するか否かを検査する。
【0067】
検査対象線分(ベクトル)L[i]は、制御点Pb[i]から、制御点Pb[i]から制御点番号iを1つ置いた制御点Pb[i+2]へと直線で結んだ線分である。一方、検査対象線分(ベクトル)L[k]は、制御点Pb[k]から、制御点Pb[k]から制御点番号kを1つ置いた制御点Pb[k+2]へと直線で結んだ線分である。
【0068】
検査対象線分(ベクトル)L[i]と検査対象線分(ベクトル)L[k]との交差の有無を検査するため、データ検査部521は、下記の式(6)を用いて検査対象線分(ベクトル)L[k]に対する制御点Pb[i]の外積val4を算出するとともに、下記の式(7)を用いて検査対象線分(ベクトル)L[k]に対する制御点Pb[i+2]の外積val5を算出する。
val4=xb[k+2]×yb[i]-xb[k+2]×xb[i] (6)
val5=xb[k+2]×yb[i+2]-yb[k+2]×xb[i+2] (7)
【0069】
データ検査部521は、外積val4を算出する際、制御点Pb[k]の座標(xb[k],yb[k])を原点(0,0)に変換して、検査対象線分(ベクトル)L[k]と、制御点Pb[k]から制御点Pb[i]へと直線で結ぶ線分(ベクトル)L4とのベクトル外積を外積val4として算出する。このとき、データ検査部521は、制御点Pb[i]の座標(xb[i],yb[i])および制御点Pb[k+2]の座標(xb[k+2],yb[k+2])を、制御点Pb[k]の座標を原点とする座標系の座標に変換する。
【0070】
データ検査部521は、外積val5を算出する際には、外積val4の算出と同じように、制御点Pb[k]の座標(xb[k],yb[k])を原点(0,0)に変換して、検査対象線分(ベクトル)L[k]と、制御点Pb[k]から制御点Pb[i+2]へと直線で結ぶ線分(ベクトル)L5とのベクトル外積を外積val5として算出する。このときも、データ検査部521は、制御点Pb[i+2]の座標(xb[i+2],yb[i+2])および制御点Pb[k+2]の座標(xb[k+2],yb[k+2])を、制御点Pb[k]の座標を原点とする座標系の座標に変換する。
【0071】
続いて、データ検査部521は、下記の式(8)を用いて検査対象線分(ベクトル)L[i]に対する制御点Pb[k]の外積val6を算出するとともに、下記の式(9)を用いて検査対象線分(ベクトル)L[i]に対する制御点Pb[k+2]の外積val7を算出する。
val6=xb[i]×yb[k]-yb[i]×xb[k] (8)
val7=xb[i]×yb[k+2]-yb[i]×xb[k+2] (9)
【0072】
データ検査部521は、外積val6を算出する際、制御点Pb[i+2]の座標(xb[i+2],yb[i+2])を原点(0,0)に変換して、検査対象線分(ベクトル)L[i]と、線分(ベクトル)L5とのベクトル外積を外積val6として算出する。このとき、データ検査部521は、制御点Pb[i]の座標(xb[i],yb[i])および制御点Pb[k]の座標(xb[k],yb[k])を、制御点Pb[i+2]の座標を原点とする座標系の座標に変換する。
【0073】
データ検査部521は、外積val7を算出する際には、外積val6の算出と同じように、制御点Pb[i+2]の座標(xb[i+2],yb[i+2])を原点(0,0)に変換して、検査対象線分(ベクトル)L[i]と、制御点Pb[i+2]から制御点Pb[k+2]へと直線で結ぶ線分(ベクトル)L6とのベクトル外積を外積val7として算出する。このときも、データ検査部521は、制御点Pb[i]の座標(xb[i],yb[i])および制御点Pb[k+2]の座標(xb[k+2],yb[k+2])を、制御点Pb[i+2]の座標を原点とする座標系の座標に変換する。
【0074】
外積val4~外積val7の算出後、データ検査部521は、外積val4および外積val5の値をしきい値THとそれぞれ比較する(ステップS24)。本実施形態では、外積val4および外積val5を計算する際に制御点Pb[k]の座標を原点に変換するため、しきい値THは0(ゼロ)に設定されている。
【0075】
val4<THである場合、制御点Pb[i]は、検査対象線分(ベクトル)L[k]の右側に位置することになる。また、val5>THである場合、制御点Pb[i+2]は、検査対象線分(ベクトル)L[k]の左側に位置することになる。このため、val4<TH、かつval5>THである場合、データ検査部521は、制御点Pb[i]および制御点Pb[i+2]が検査対象線分(ベクトル)L[k]の両側に存在すると判定する(ステップS25)。制御点Pb[i]および制御点Pb[i+2]が検査対象線分(ベクトル)L[k]の両側に存在することは、換言すると、制御点Pb[i]および制御点Pb[i+2]が検査対象線分(ベクトル)L[k]を挟んで互いに対向していることである。
【0076】
制御点Pb[i]および制御点Pb[i+2]が検査対象線分L[k]の両側に存在する場合、データ検査部521は、外積val6および外積val7の値をしきい値THとそれぞれ比較する(ステップS26)。本実施形態では、外積val6および外積val7を計算する際に制御点Pb[i+2]の座標を原点に変換するため、しきい値THは0(ゼロ)に設定されている。
【0077】
val6<THである場合、制御点Pb[k]は、検査対象線分(ベクトル)L[i]の右側に位置することになる。また、val7>THである場合、制御点Pb[k+2]は、検査対象線分(ベクトル)L[i]の左側に位置することになる。このため、val6<TH、かつval7>THである場合、データ検査部521は、制御点Pb[k]および制御点Pb[k+2]が検査対象線分(ベクトル)L[i]の両側に存在すると判定する(ステップS27)。制御点Pb[k]および制御点Pb[k+2]が検査対象線分(ベクトル)L[i]の両側に存在することは、換言すると、制御点Pb[k]および制御点Pb[k+2]が検査対象線分(ベクトル)L[i]を挟んで互いに対向していることである。
【0078】
上述したように、制御点Pb[i]から制御点Pb[i+2]へと直線で結んだ線分が検査対象線分(ベクトル)L[i]であり、制御点Pb[k]から制御点Pb[k+2]へと直線で結んだ線分が検査対象線分(ベクトル)L[k]である。このため、制御点Pb[i]および制御点Pb[i+2]が検査対象線分(ベクトル)L[k]の両側に存在し、かつ、制御点Pb[k]および制御点Pb[k+2]が検査対象線分(ベクトル)L[i]の両側に存在するということは、検査対象線分(ベクトル)L[i]と検査対象線分(ベクトル)L[k]とが互いに交差していることを意味する。このため、データ検査部521は、検査対象線分(ベクトル)L[i]と検査対象線分(ベクトル)L[k]とが互いに交差していると判定する(ステップS28)。この場合、制御点Pb[i]および制御点Pb[k]は、違反制御点とみなされ、描画データD1は不合格となる。
【0079】
一方、制御点Pb[i]および制御点Pb[i+2]が検査対象線分(ベクトル)L[k]の両側に存在し、かつ、制御点Pb[k]および制御点Pb[k+2]が検査対象線分(ベクトル)L[i]の両側に存在するという条件を満たさない場合には、データ検査部521は、検査対象線分(ベクトル)L[i]と検査対象線分(ベクトル)L[k]とが互いに交差していないと判定する(ステップS29)。この場合、制御点Pb[i]および制御点Pb[k]は、合格制御点とみなされる。
【0080】
上記のように制御点Pb[i]および制御点Pb[k]の交差判定が終了すると、データ検査部521は、ベジェ曲線上で互いに隣接する別の2個の制御点を検査対象制御点に設定し、検査対象制御点の交差判定を行う。このようにして、データ検査部521は、検査対象制御点を設定するたびに、検査対象制御点を一端とする検査対象線分同士の交差の有無を検査する。
【0081】
上述した検査方法であっても、データ検査部521は、Bスプライン曲線をベジェ曲線に変換して描画データD1の検査を行っている。このため、描画データD1の図形に関して幾何学的な制約を緩和しつつ、正確な交差判定を行うことが可能となる。
【0082】
(第1変形例)
以下、第1実施形態の第1変形例について説明する。ここでは、第1実施形態と異なる点を中心に説明する。本変形例では、Bスプライン曲線からベジェ曲線に変換するための変換行列が、第1実施形態と異なる。
【0083】
第1実施形態で説明した第1変換行列の係数は、式(1)および式(2)に示すように分数である。このため、第1変換行列を用いて整数座標で定義されたBスプライン曲線の制御点Psをベジェ曲線の制御点Pbに変換すると、制御点Pbの座標は、浮動小数で定義されることになる。この場合、変換前後で誤差が発生して、描画データD1の検査結果に誤りが生じる可能性がある。
【0084】
そこで、本変形例では、曲線次数pが2である場合、データ検査部521は、下記の式(10)に記載された第2変換行列を用いて、Bスプライン曲線の図形配置原点である制御点Ps0の座標を、ベジェ曲線の図形配置原点である制御点Pb0の座標に変換する。
【数3】
【0085】
また、曲線次数pが3である場合、データ検査部521は、下記の式(11)に記載された第2変換行列を用いて、Bスプライン曲線の制御点Ps0の座標を、ベジェ曲線の制御点Pb0の座標に変換する。
【数4】
【0086】
上記の式(10)で定義される第2変換行列は、式(1)の第1変換行列を、係数の分母、すなわち「2」の整数倍(この例では「2」の1倍)したものである。また、上記の式(11)で定義される第2変換行列は、式(2)の第1変換行列を、係数の分母、すなわち「6」の整数倍(この例では「6」の1倍)したものである。
【0087】
図8は、第1変形例に係るBスプライン曲線およびベジェ曲線の各々の制御点の一例を示す図である。
図8に示すように、8個の制御点Ps0~制御点Ps8で形成されたBスプライン曲線は、第1実施形態と同じように、27個の制御点Pb0~制御点Pb26で形成されたベジェ曲線に変換される。
【0088】
ただし、本変形例の第2変換行列では、第1実施形態の第1変換行列に比べて係数が分母の整数倍になっている。このため、ベジェ曲線の制御点Pbによって囲まれる図形の面積は、Bスプライン曲線の制御点Psによって囲まれる図形よりも広く(大きく)なっている。また、本変形例の第2変換行列によれば、第1実施形態の第1変換行列の係数の分母を整数倍することによって、ベジェ曲線の制御点Pb0~制御点Pb26は、全て整数座標に変換される。
【0089】
本変形例でも、ベジェ曲線の制御点Pbによって囲まれる図形で描画データD1を検査する。検査方法については、第1実施形態と同じであるため、説明を省略する。
【0090】
以上説明した本変形例によれば、ベジェ曲線の制御点Pbの座標が全て整数で定義される。そのため、第1実施形態に比べて、より正確に描画データD1を検査することが可能となる。
【0091】
(第2変形例)
以下、第1実施形態の第2変形例について説明する。ここでは、第1実施形態と異なる点を中心に説明する。本変形例では、描画データD1の構成が第1実施形態と異なる。
【0092】
図9は、第2変形例に係る設計データを示す図である。上述した第1実施形態では、データ検査部521が、1個の図形から成る描画データD1を検査対象としている。
【0093】
一方、本変形例では、
図9に示すように、描画データD1は、設計データD01を制御点Ps0~制御点Ps26で構成されたBスプライン曲線で近似した図形と、設計データD02を制御点Ps40~制御点Ps46で構成されたBスプライン曲線で近似した図形と、を有する。なお、
図9に示す2個の図形は、互いに異なる形状であるが、同じ形状であってもよい。
【0094】
図10は、第2変形例に係る描画データD1の検査方法の手順の一例を説明するためのフローチャートである。本変形例では、描画データD1は、例えばチップ、フレーム、ブロック、セル等の階層毎に作成される。データ検査部521は、描画データD1の階層毎に、
図10のフローチャートに従って検査する。
【0095】
本変形例では、まず、データ検査部521は、変換装置70から描画データD1に含まれるBスプライン曲線の制御点Ps0~制御点Ps26から成る制御点群の座標を取得する(ステップS31)。
【0096】
次に、データ検査部521は、Bスプライン曲線交差率を0.0に初期化する(ステップS32)。Bスプライン曲線交差率は、検査を行った描画データD1の図形の総数に占める交差箇所を有するBスプライン曲線を含む図形数の比率を示す。本変形例では、データ検査部521は、特定の描画データの階層で検査直前まで処理した描画データD1の図形の総数を、特定の描画データの階層で検査直前までにBスプライン曲線に交差が有った図形数で除算する式によって、Bスプライン曲線交差率を算出する。Bスプライン曲線に交差が有った図形には、Bスプライン曲線の検査対象制御点が検査対象領域内に存在する図形や、互いに隣接するBスプライン曲線の制御点をそれぞれ一端とする検査対象線分同士が交差する図形が含まれる。
【0097】
次に、データ検査部521は、Bスプライン曲線を含む複数の図形から検査対象図形を選択する(ステップS33)。ここでは、データ検査部521は、
図9に示す設計データD01をBスプライン曲線で近似した図形および設計データD02をBスプライン曲線で近似した図形のうち、前者の図形を検査対象図形として選択する。
【0098】
次に、データ検査部521は、Bスプライン曲線交差率がしきい値Rを超えていえるか否かを判定する(ステップS34)。しきい値Rは、例えば0.5に設定される。Bスプライン曲線交差率がしきい値Rを超えている場合(ステップS34のYES)には、データ検査部521は、Bスプライン曲線の制御点Psを用いた検査をスキップして、ステップS37へ進み後述するようにBスプライン曲線をベジェ曲線に変換する。
【0099】
Bスプライン曲線交差率がしきい値R以下である場合、データ検査部521は、ステップS33で選択した検査対象図形を検査する。ここでは、データ検査部521は、Bスプライン曲線を形成する複数の制御点Psの中に、違反制御点Psが存在するか否か判定する(ステップS35)。違反制御点Psには、第1実施形態で説明したように、検査対象領域内に存在する制御点や、Bスプライン曲線の次数が2である場合に互いに交差する検査対象線分の一端に存在する制御点が該当する。
【0100】
違反制御点Psが存在する場合(ステップS35のYES)、データ検査部521は、Bスプライン曲線交差率を更新する(ステップS36)。一方、違反制御点Psが無い場合には、データ検査部521は、ステップS40へ進み後述するように未検査の検査対象図形が残っているか否か確認する。
【0101】
データ検査部521は、ステップS36にてBスプライン曲線交差率を更新した後、Bスプライン曲線をベジェ曲線に変換する(ステップS37)。このステップS37では、データ検査部521は、上述した第1実施形態または第1変形例と同じように、変換行列を用いてBスプライン曲線の制御点Psの座標をベジェ曲線の制御点Pbの座標に変換する。
【0102】
次に、データ検査部521は、ベジェ曲線を形成する複数の制御点Pbを検査する(ステップS38)。このステップでは、第1実施形態で説明したように、データ検査部521は、検査対象領域内における検査対象制御点の存否を判定する。また、曲線次数が2の場合には、データ検査部521は、検査対象線分同士の交差判定を行ってもよい。
【0103】
この検査の結果、データ検査部521は、ベジェ曲線の制御点Pbの中に、違反制御点Pbが存在するか否か判定する(ステップS39)。違反制御点Pbには、第1実施形態で説明したように、検査対象領域内に存在する制御点や、ベジェ曲線の次数が2である場合に互いに交差する検査対象線分の一端に存在する制御点が該当する。
【0104】
ベジェ曲線の制御点Pbの中に、違反制御点Pbが存在しない場合(ステップS39のNO)、データ検査部521は、後述するように未検査の検査対象図形が残っているか否か確認する(ステップS40)。未検査の検査対象図形が残っている場合(ステップS40のYES)には、上述したステップS33に戻る。この場合、設計データD02をBスプライン曲線で近似した図形が検査対象図形として選択され、上述したステップS34~ステップS39の動作が繰り返される。
【0105】
一方、ベジェ曲線の制御点Pbの中に、違反制御点Pbが存在する場合(ステップS39のYES)には、データ検査部521は、描画データD1の検査を不合格と判定する(ステップS41)。なお、全ての検査対象図形を検査した(ステップS40のNO)結果、違反制御点Pbが存在しなかった場合には、データ検査部521は、描画データD1の検査を合格と判定する(ステップS42)。
【0106】
以上説明した本変形例では、データ検査部521は、Bスプライン曲線交差率がしきい値Rを超えている場合には、Bスプライン曲線の制御点Psの検査をスキップしてベジェ曲線の制御点Pbを検査する。また、Bスプライン曲線交差率がしきい値R以下である場合には、Bスプライン曲線で検査を行っても検査精度を確保できるため、データ検査部521は、Bスプライン曲線の制御点Psの検査を行う。検査の結果、違反制御点が無かった場合には、データ検査部521は、ベジェ曲線の制御点Pbの検査をスキップしている。
【0107】
上記のように、Bスプライン曲線交差率に応じて、Bスプライン曲線に基づく検査とベジェ曲線に基づく検査とを切り替えている。これにより、毎回、Bスプライン曲線およびベジェ曲線の両方の検査を行う場合に比べて、検査時間が大幅に短縮される。よって、高速に描画データD1を検査することが可能となる。
【0108】
(第2実施形態)
図11は、第2実施形態に係る描画データ検査装置の概略的な構成を示すブロック図である。本実施形態では、上述した第1実施形態による変換装置70により生成された描画データD1は、描画データ検査装置80に入力される。
【0109】
描画データ検査装置80は、
図11に示すように、データ検査部81および記録媒体82を有する。データ検査部81は、第1実施形態、第1変形例、および第2変形例のいずれかで説明したデータ検査部521と同じ機能を有する。すなわち、本実施形態は、第1実施形態に係る描画装置1の制御計算機52のうち、データ検査部521に関する機能を、描画装置1から独立した描画データ検査装置80に移設した構成となっている。一方、記録媒体82には、データ検査部81で行われる処理を実現するプログラムが格納されている。
【0110】
データ検査部81は、第1実施形態や変形例と同じように、例えばBスプライン曲線交差率に応じてBスプライン曲線をベジェ曲線に変換した上で、描画データD1の3つ以上の制御点を直線で結んだ検査対象領域内に、検査対象制御点または検査対象頂点が存在するか否かを検査する。また、ベジェ曲線の次数が2の場合には、ベジェ曲線上で互いに隣接する2個の制御点を一端とする検査対象線分同士の交差判定を行ってもよい。
【0111】
描画データD1がデータ検査部81の検査に合格すると、描画データD1は、制御計算機52に入力される。その後、描画装置1が、描画データD1に基づく荷電粒子ビームを照射する。
【0112】
上述した本実施形態によれば、データ検査部81は、Bスプライン曲線をベジェ曲線に変換して、描画データD1の検査の合否を判定している。そのため、描画データD1に含まれる曲線図形の形状の制約を緩和しつつ、正確に描画データを検査することが可能となる。
【0113】
なお、本実施形態では、変換装置70は、描画データ検査装置80内に設けられていてもよい。その場合、描画データ検査装置80は、入力された設計データD0に基づいて描画データD1を生成するデータ生成部と、データ検査部81とを備えたものとなる。
【0114】
本実施形態で説明した描画データ検査装置80の検査機能の少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、描画データ検査装置80の検査機能の少なくとも一部を実現するプログラムをフレキシブルディスクやCD-ROM等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。
【0115】
また、描画データ検査装置80の検査機能の少なくとも一部を実現するプログラムを、インターネット等の通信回線(無線通信も含む)を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。
【0116】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【0117】
1:描画装置
80:描画データ検査装置
81:データ検査部