(57)【特許請求の範囲】
【請求項１】
試料に所定のパターンを描画するための描画データを記憶する記憶部と、
前記描画データを処理単位毎に分けて、各処理単位のデータ処理を実行させる主側計算機と、
前記主側計算機から実行命令を受信して所定の処理単位のデータ処理を実行する従側計算機と、
正常にデータ処理が終了した前記所定の処理単位の描画データに基づく所定のパターンを前記試料に描画する描画部と、
を備え、
前記主側計算機と前記従側計算機とのいずれか一方は、前記描画データの処理単位毎に、各処理単位のデータ処理にかかる予想処理時間を演算し、
前記従側計算機は、前記所定の処理単位のデータ処理が前記予想処理時間内に終了しない場合にエラーとしてデータ処理を終了し、
前記従側計算機は、第１の期間内に前記所定の処理単位のデータ処理が終了しない場合にまだ前記予想処理時間が経過する前であれば、前記主側計算機に所定の信号を送信し、
前記主側計算機は、第２の期間内に前記所定の信号を受信する限り、前記第１の期間内に前記所定の処理単位のデータ処理が終了していない場合でも前記従側計算機のデータ処理が正常であると判定することを特徴とする描画装置。
【請求項２】
前記予想処理時間は、データタイプとデータ量とセル数とセル配置数とデータ処理を行なうＣＰＵ性能とＣＰＵ数とメモリ量とのうち、少なくとも１つに基づく関数で定義されることを特徴とする請求項１記載の描画装置。
【請求項３】
試料に所定のパターンを描画するための描画データを記憶する記憶部と、
前記描画データの処理単位毎に、各処理単位のデータ処理を実行させるための実行命令を送信する実行命令部と、
前記描画データの処理単位毎に、各処理単位のデータ処理にかかる予想処理時間を演算する時間予想部と、
前記実行命令を受信して所定の処理単位のデータ処理を実行する実行部と、
前記予想処理時間内にデータ処理が終了した前記所定の処理単位の描画データに基づく所定のパターンを前記試料に描画する描画部と、
第１の期間内に前記所定の処理単位のデータ処理が終了しない場合にまだ前記予想処理時間が経過する前であれば、所定の信号を送信する制御部と、
第２の期間内に前記所定の信号を受信する限り、前記第１の期間内に前記所定の処理単位のデータ処理が終了していない場合でも前記実行部のデータ処理が正常であると判定する判定部と、
を備えたことを特徴とする描画装置。
【請求項４】
主側計算機が、試料に所定のパターンを描画するための描画データを処理単位毎に分けて、所定の処理単位のデータ処理を実行させるための実行命令を送信する工程と、
前記主側計算機と従側計算機とのいずれか一方が、前記所定の処理単位のデータ処理にかかる予想処理時間を演算する工程と、
従側計算機が、前記実行命令を受信して所定の処理単位のデータ処理を実行する工程と、
従側計算機が、前記予想処理時間内に前記所定の処理単位のデータ処理が終了しない場合に、タイムアウトエラーと判定し、結果を出力する工程と、
を備え、
前記従側計算機は、第１の期間内に前記所定の処理単位のデータ処理が終了しない場合にまだ前記予想処理時間が経過する前であれば、前記主側計算機に所定の信号を送信し、
前記主側計算機は、第２の期間内に前記所定の信号を受信する限り、前記第１の期間内に前記所定の処理単位のデータ処理が終了していない場合でも前記従側計算機のデータ処理が正常であると判定することを特徴とする描画データのデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、描画装置及び描画データのデータ処理方法に係り、例えば、電子ビーム描画やレーザ描画に用いる描画データのデータ処理におけるタイムアウトエラー制御に関する。
【背景技術】
【０００２】
半導体デバイスの微細化の進展を担うリソグラフィ技術は半導体製造プロセスのなかでも唯一パターンを生成する極めて重要なプロセスである。近年、ＬＳＩの高集積化に伴い、半導体デバイスに要求される回路線幅は年々微細化されてきている。これらの半導体デバイスへ所望の回路パターンを形成するためには、高精度の原画パターン（レチクル或いはマスクともいう。）が必要となる。ここで、電子線（電子ビーム）描画技術は本質的に優れた解像性を有しており、高精度の原画パターンの生産に用いられる。また、レーザ描画技術も同様に高精度の原画パターンの生産に用いられる。以下、一例として、電子ビーム描画技術について説明する。
【０００３】
図１３は、従来の可変成形型電子線描画装置の動作を説明するための概念図である。
可変成形型電子線描画装置（ＥＢ（Ｅｌｅｃｔｒｏｎ  ｂｅａｍ）描画装置）における第１のアパーチャ４１０には、電子線３３０を成形するための矩形例えば長方形の開口４１１が形成されている。また、第２のアパーチャ４２０には、第１のアパーチャ４１０の開口４１１を通過した電子線３３０を所望の矩形形状に成形するための可変成形開口４２１が形成されている。荷電粒子ソース４３０から照射され、第１のアパーチャ４１０の開口４１１を通過した電子線３３０は、偏向器により偏向され、第２のアパーチャ４２０の可変成形開口４２１の一部を通過して、所定の一方向（例えば、Ｘ方向とする）に連続的に移動するステージ上に搭載された試料に照射される。すなわち、第１のアパーチャ４１０の開口４１１と第２のアパーチャ４２０の可変成形開口４２１との両方を通過できる矩形形状が、Ｘ方向に連続的に移動するステージ上に搭載された試料３４０の描画領域に描画される。第１のアパーチャ４１０の開口４１１と第２のアパーチャ４２０の可変成形開口４２１との両方を通過させ、任意形状を作成する方式を可変成形方式という。
【０００４】
かかる電子ビーム描画を行なうにあたり、まず、半導体集積回路のレイアウトが設計され、パターンレイアウトが定義されたレイアウトデータ（設計データ）が生成される。そして、外部装置でかかるレイアウトデータが変換され、電子ビーム描画装置に入力可能な描画データが生成される。そして、描画データを電子ビーム描画装置に一括転送入力して、電子ビーム描画装置内で、描画データに基づいて、さらに、並列処理等によるデータ処理の末に電子ビーム描画装置内のフォーマットのデータに変換されて描画される（例えば、特許文献１参照）。
【０００５】
近年のＬＳＩの高集積化に伴って電子ビーム描画装置に入力されるデータ処理されるべき描画データは益々増大している。ここで、電子ビーム描画装置内での描画データのデータ処理については、所定の時間内にそのデータ処理が終了しなければ何らかの異常が発生したものとしてタイムアウトエラーとして扱っていた。従来、このタイムアウトエラーの設定値（時間）は、装置毎に一意に設定された固定値であった。そのため、次のような問題が生じていた。まず、一方で大規模なデータ量で構成されるパターンでは、正常な処理が継続中であるにもかかわらず、設定時間内に処理が終了していないという理由でタイムアウトエラーと誤判定されてしまうといった問題があった。この問題を解消すべく、設定値を長くすると、他方で小規模なデータ量で構成されるパターンでは、短時間のうちに異常動作に入った場合でも設定時間が経過するまで異常と判定されないといった問題が生じてしまう。そのため、このような異常動作に対する対応措置が遅れてしまうといった問題があった。
【特許文献１】特開２００７−１０３９２３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上述したように、タイムアウトエラーの設定値が装置毎に一意に設定された固有値であったために、タイムアウトエラーの誤判定や他方で異常動作に対する対応措置の遅れを生じさせるといった問題があった。また、レーザマスク描画についても電子ビーム描画と同様の問題が生じる。
【０００７】
そこで、本発明は、かかる問題点を克服し、タイムアウトエラーの誤判定や異常動作に対する対応措置の遅れを抑制するデータ処理方法及び描画装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一態様の描画装置は、
試料に所定のパターンを描画するための描画データを記憶する記憶部と、
描画データを処理単位毎に分けて、各処理単位のデータ処理を実行させる主側計算機と、
主側計算機から実行命令を受信して所定の処理単位のデータ処理を実行する従側計算機と、
正常にデータ処理が終了した所定の処理単位の描画データに基づく所定のパターンを前記試料に描画する描画部と、
を備え、
主側計算機と従側計算機とのいずれか一方は、描画データの処理単位毎に、各処理単位のデータ処理にかかる予想処理時間を演算し、
従側計算機は、所定の処理単位のデータ処理が予想処理時間内に終了しない場合にエラーとしてデータ処理を終了することを特徴とする。
【０００９】
描画データの処理単位毎に、データ処理にかかる予想処理時間を演算することで、それぞれのデータ規模に見合った予想処理時間を得ることができる。そして、この予想処理時間をタイムアウトエラーの設定値にする。
【００１０】
また、特に、主側計算機と従側計算機との間で定期的にデータ通信による処理の進行管理を行なっている場合には、以下のように構成すると良い。
【００１１】
まず、従側計算機は、第１の期間内に所定の処理単位のデータ処理が終了しない場合にまだ予想処理時間が経過する前であれば、主側計算機に所定の信号を送信し、
主側計算機は、第２の期間内に所定の信号を受信する限り、第１の期間内に所定の処理単位のデータ処理が終了していない場合でも従側計算機のデータ処理が正常であると判定するように構成すると好適である。
【００１２】
そして、予想処理時間は、データタイプとデータ量とセル数とセル配置数とデータ処理を行なうＣＰＵ性能とＣＰＵ数とメモリ量とのうち、少なくとも１つに基づく関数で定義されると好適である。
【００１３】
本発明の他の態様の描画装置は、
試料に所定のパターンを描画するための描画データを記憶する記憶部と、
描画データの処理単位毎に、各処理単位のデータ処理を実行させるための実行命令を送信する実行命令部と、
描画データの処理単位毎に、各処理単位のデータ処理にかかる予想処理時間を演算する時間予想部と、
実行命令を受信して所定の処理単位のデータ処理を実行する実行部と、
予想処理時間内にデータ処理が終了した所定の処理単位の描画データに基づく所定のパターンを前記試料に描画する描画部と、
第１の期間内に前記所定の処理単位のデータ処理が終了しない場合にまだ前記予想処理時間が経過する前であれば、所定の信号を送信する制御部と、
第２の期間内に前記所定の信号を受信する限り、前記第１の期間内に前記所定の処理単位のデータ処理が終了していない場合でも前記実行部のデータ処理が正常であると判定する判定部と、
を備えたことを特徴とする。
【００１４】
本発明の一態様の描画データのデータ処理方法は、
主側計算機が、試料に所定のパターンを描画するための描画データを処理単位毎に分けて、所定の処理単位のデータ処理を実行させるための実行命令を送信する工程と、
前記主側計算機と従側計算機とのいずれか一方が、所定の処理単位のデータ処理にかかる予想処理時間を演算する工程と、
従側計算機が、実行命令を受信して所定の処理単位のデータ処理を実行する工程と、
従側計算機が、予想処理時間内に所定の処理単位のデータ処理が終了しない場合に、タイムアウトエラーと判定し、結果を出力する工程と、
を備え、
前記従側計算機は、第１の期間内に前記所定の処理単位のデータ処理が終了しない場合にまだ前記予想処理時間が経過する前であれば、前記主側計算機に所定の信号を送信し、
前記主側計算機は、第２の期間内に前記所定の信号を受信する限り、前記第１の期間内に前記所定の処理単位のデータ処理が終了していない場合でも前記従側計算機のデータ処理が正常であると判定することを特徴とする。
【発明の効果】
【００１５】
本発明によれば、データ規模に見合った予想処理時間でタイムアウトエラーを判定することができる。よって、タイムアウトエラーの誤判定や異常動作に対する対応措置の遅れを抑制することができる。
【発明を実施するための最良の形態】
【００１６】
以下、各実施の形態では、荷電粒子ビームの一例として、電子ビームを用いた構成について説明する。但し、荷電粒子ビームは、電子ビームに限るものではなく、イオンビーム等の荷電粒子を用いたビームでも構わない。また、荷電粒子ビーム装置の一例として、荷電粒子ビーム描画装置、特に、可変成形型の電子ビーム描画装置について説明する。以下、電子ビーム描画装置を一例として説明するが、これに限るものではなく、レーザマスク描画装置についても同様に当てはめることができる。
【００１７】
実施の形態１．
図１は、実施の形態１における描画装置の構成を示す概念図である。
図１において、描画装置１００は、描画部１５０と制御部１６０を備えている。描画装置１００は、荷電粒子ビーム描画装置の一例である。描画装置１００は、試料１０１に所定のパターンを描画する。描画部１５０は、描画室１０３と描画室１０３の上部に配置された電子鏡筒１０２を備えている。電子鏡筒１０２内には、電子銃２０１、照明レンズ２０２、第１のアパーチャ２０３、投影レンズ２０４、偏向器２０５、第２のアパーチャ２０６、対物レンズ２０７、及び偏向器２０８を有している。そして、描画室１０３内には、ＸＹステージ１０５が配置され、ＸＹステージ１０５上に描画対象となる試料１０１が配置される。試料１０１として、例えば、半導体装置が形成されるウェハやウェハにパターンを転写する露光用のマスクが含まれる。また、このマスクは、例えば、まだ何もパターンが形成されていないマスクブランクスが含まれる。制御部１６０は、磁気ディスク装置１０９，１７０、主側（親）制御計算機１１０、複数の従側（子）制御計算機１３０（ａ〜ｋ）、及び制御回路１７２を有している。親制御計算機１１０内には、振分部１１２、起動部１１４、時間予想部１１６、命令部１１８、判定部１２０、及びパラメータ演算部１２２が配置されている。複数の子制御計算機１３０内には、それぞれ、データ処理を実行する複数の演算装置（ＣＰＵ）１３２、複数のメモリ１３４、制御部１３６が配置されている。ＣＰＵ１３２は実行部の一例となる。制御部１６０の各構成は図示しないバスを介して互いに接続されている。ここで、図１では、親制御計算機１１０内の各構成を電気的な回路によるハードウェアにより構成するように記載しているが、これに限るものではなく、ソフトウェアにより実施させても構わない。すなわち、親制御計算機１１０はコンピュータでも構わない。そして、コンピュータの一例となる親制御計算機１１０で、振分部１１２、起動部１１４、時間予想部１１６、命令部１１８、判定部１２０、及びパラメータ演算部１２２といった各機能の処理を実行させても構わない。或いは、電気的な回路によるハードウェアとソフトウェアとの組合せにより実施させても構わない。或いは、かかるハードウェアとファームウェアとの組合せでも構わない。また、ソフトウェアにより、或いはソフトウェアとの組合せにより実施させる場合には、親制御計算機１１０に入力される情報或いは演算処理中及び処理後の各情報はその都度メモリ１２４に記憶される。また、子制御計算機１３０内の制御部１３６はコンピュータでも構わない。そして、コンピュータの一例となる制御部１３６で後述する各機能の処理を実行させても構わない。或いは、電気的な回路によるハードウェアとソフトウェアとの組合せにより実施させても構わない。或いは、かかるハードウェアとファームウェアとの組合せでも構わない。また、ソフトウェアにより、或いはソフトウェアとの組合せにより実施させる場合には、子制御計算機１３０に入力される情報或いは演算処理中及び処理後の各情報はその都度いずれかのメモリ１３４に記憶される。図１では、本実施の形態１を説明する上で必要な構成部分以外については記載を省略している。描画装置１００にとって、通常、必要なその他の構成が含まれても構わないことは言うまでもない。
【００１８】
電子ビーム描画を行なうにあたり、まず、半導体集積回路のレイアウトが設計され、パターンレイアウトが定義されたレイアウトデータ（設計データ）が生成される。そして、外部の変換装置でかかるレイアウトデータが変換され、電子ビーム描画装置の一例である描画装置１００に入力可能な描画データ１２が生成される。そして、試料に所定のパターンを描画するための描画データ１２は、記憶部の一例となる磁気ディスク装置１０９に格納される。描画装置１００内では、さらに、複数段の変換処理の末に描画装置１００内のフォーマットのデータに変換される。親制御計算機１１０がこれらのデータ処理を複数の子制御計算機１３０に振り分ける。そして、親制御計算機１１０が制御しながらこれらのデータ処理を複数の子制御計算機１３０に行なわせる。そして、処理が完了したデータを用いて描画部１５０が試料１０１に所定のパターンを描画する。
【００１９】
図２は、実施の形態１における描画データの階層構造の一例を示す図である。
描画データ１２では、描画領域が、チップ１０の層、チップ領域を例えばｙ方向に向かって短冊状に仮想分割したフレーム１４の層、フレーム１４を分割したブロック１６の層、少なくとも１つ以上の図形で構成されるセル１８の層、かかるセル１８を構成する図形１９の層といった一連の複数の内部構成単位ごとに階層化されている。また、１つの試料１０１の描画領域に対して複数のチップ１０の層がレイアウトされていることが一般的である。尚、ここではフレーム１４についてチップ領域をｙ方向（所定の方向）に向かって短冊状に分割した領域としてあるが、これは一例であり、描画面と平行しｙ方向と直交するｘ方向に分割する場合もありうる。或いは描画面と平行するその他の方向であっても構わない。
【００２０】
図３は、実施の形態１における描画データの一例を示す図である。
描画装置でパターンを描画する際には、例えば、フレーム１４を描画単位として描画される。図３では、一例として、あるチップ１０における番号”ｎ”で識別されるフレーム領域に位置しているデータについて説明する。そして、そのフレーム用の描画データ１２として、セル配置データ、リンクデータ、セルパターンデータが作成される。図３において、描画データ１２は、一例として、セル配置データファイル２２、リンクデータファイル２４、セルパターンデータファイル２６を有している。これらのファイルがフレームごとに作成される。描画データ１２は、さらに、一つ以上のフレームで構成されるチップに対して、各フレームの構成情報やチップ全体で共通のパラメータ等を定義するチップ構成ファイル２０を有している。また、図３では、セル配置データファイル２２とリンクデータファイル２４とセルパターンデータファイル２６内の各データの対応関係の一例を示している。試料に所望するパターンを描画する場合には、一つのマスクに対して、一つ以上のチップ１０で構成される。そのような場合、これらのファイルで構成されるチップデータが複数存在し、それらをマスク上に配置するためのレイアウト情報を有する。
【００２１】
セル配置データファイル２２は、設計データに含まれるあるチップ１０のパターンデータに対応するセル１８を配置するための配置データ（配置情報）を含む。セル配置データファイル２２には、例えばブロック領域ごとに、配置されるセル１８のいずれかを配置するための配置データが含まれる。図３では、一例として、配置されるセル１８の一部となるセル（ｉ）〜（ｌ）のいずれかを配置するための配置データを示している。セル配置データは、セル１８の基準点の配置位置を示す座標等で示される。図３において、セル配置データファイル２２は、ファイルヘッダに続き、ブロック（０，０）ヘッダ、ブロック（０，０）内に配置されたセル配置データ（ｐ）、セル配置データ（ｑ）、セル配置データ（ｒ）、ブロック（０，１）ヘッダ、ブロック（０，１）内に配置されたセル配置データ（ｓ）、ブロック（１，０）ヘッダ、ブロック（１，０）内に配置されたセル配置データ（ｔ）、が定義（格納）される。そして、その他の配置データがさらに格納される。
【００２２】
次に、セルパターンデータファイル２６には、あるチップ１０のｎ番目のフレーム１４に配置される複数のセル１８の各パターンデータが含まれている。図３では、一例として、セル（ｉ）〜（ｌ）の各パターンデータを示している。ここでは、セルパターンデータファイル２６には、その一部として、パターンデータセグメント（０）、セル（ｉ）のパターンデータを示すセルパターンデータ（ｉ）、セル（ｊ）のパターンデータを示すセルパターンデータ（ｊ）が順に１回ずつ格納されている。続いて、パターンデータセグメント（１）、セル（ｋ）のパターンデータを示すセルパターンデータ（ｋ）が格納されている。さらに、その他のデータが格納され、その後に、パターンデータセグメント（４）、セル（ｌ）のパターンデータを示すセルパターンデータ（ｌ）が格納されている。
【００２３】
また、リンクデータファイル２４には、各セル配置データから各セルパターンデータ参照するためのリンク情報やセルパターンデータへのオペレーション情報が含まれている。図３では、リンクデータファイル２４には、その一部として、セル配置データ（ｐ）をセルパターンデータ（ｉ）に関連させるための関係データ（ａ）、セル配置データ（ｑ）をセルパターンデータ（ｊ）に関連させるための関係データ（ｂ）、セル配置データ（ｒ）をセルパターンデータ（ｉ）に関連させるための関係データ（ｃ）、セル配置データ（ｓ）をセルパターンデータ（ｋ）に関連させるための関係データ（ｄ）、セル配置データ（ｔ）をセルパターンデータ（ｌ）に関連させるための関係データ（ｅ）がその他のデータと共に格納されている。
【００２４】
実施の形態１では、親制御計算機１１０と子制御計算機１３０とが密な通信を行なわない場合、或いは、通信を行なっているがウォッチドッグカウンタ等のデータ処理の状況を示すカウンタを機能させていない場合について説明する。また、ここでは、一例として、描画データの処理単位として、フレーム１４単位でデータ処理を子制御計算機１３０に振り分ける場合を説明する。
【００２５】
図４は、実施の形態１における親制御計算機と子制御計算機の処理フローの要部工程について示すフローチャート図である。
Ｓ１０２において、フレーム選択工程として、振分部１１２は、各子制御計算機１３０に振り分けるフレームを選択する。
【００２６】
Ｓ１０４において、パラメータ演算工程として、パラメータ演算部１２２は、次工程の予想処理時間Ｔ１を演算するためのパラメータを演算する。予想処理時間Ｔ１は、入力されるあるフレームのデータを特徴付けるパラメータの関数として予想することができる。パラメータとしては、例えば、データタイプ、データ量、セル数、セル配置数等が挙げられる。また、その他にも、ハードウェア資源の構成を考慮しても好適である。ハードウェア資源を考慮する場合のパラメータとして、例えば、ＣＰＵ性能、ＣＰＵ数、メモリ量、或いはディスクＩ／Ｏ（入力／出力）の性能等が挙げられる。
【００２７】
（ケース１）
ケース１では、入力されるフレームデータのデータ量Ｖｔｏｔａｌと係数ｋ１に基づいて予想処理時間Ｔ１を演算する。その場合、予想処理時間Ｔ１は、次の式（１）で定義することができる。
（１）  Ｔ１＝ｋ１・Ｖｔｏｔａｌ
【００２８】
ケース１の場合では、パラメータ演算部１２２が入力されるフレームデータのデータ量Ｖｔｏｔａｌを演算する。また、係数ｋ１については予めデータ量に応じたデータ処理時間を測定しておき、その測定結果をフィッティング（近似）してその係数を求めておけばよい。また、その際、メモリ或いはロジック等のデバイスの種類によってデータ処理時間が異なるのでそれぞれの場合で測定しておくと良い。これによりデータタイプをパラメータとして考慮することができる。ここで、予想処理時間Ｔ１は、式（１）に限定されるものではない。例えば、次のように予想処理時間Ｔ１を定義しても好適である。
【００２９】
（ケース２）
ケース２では、入力されるフレームデータのセル数Ｎｃｅｌｌと係数ｋ２に基づいて予想処理時間Ｔ１を演算する。その場合、予想処理時間Ｔ１は、次の式（２）で定義することができる。
（２）  Ｔ１＝ｋ２・Ｎｃｅｌｌ
【００３０】
ケース２の場合では、パラメータ演算部１２２が入力されるフレームデータのセル数Ｎｃｅｌｌを演算する。また、係数ｋ２については予めセル数に応じたデータ処理時間を測定しておき、その測定結果をフィッティング（近似）してその係数を求めておけばよい。また、その際、メモリ或いはロジック等のデバイスの種類によってデータ処理時間が異なるのでそれぞれの場合で測定しておくと良い。これによりデータタイプをパラメータとして考慮することができる。ここで、予想処理時間Ｔ１は、式（２）の他にも、例えば、次のように予想処理時間Ｔ１を定義しても好適である。
【００３１】
（ケース３）
ケース３では、入力されるフレームデータのセル配置数Ｎｃｅｌｌ−ｒｅｆと係数ｋ３及びセルｉのデータ量Ｖｃｅｌｌ−ｉと係数ｋ４に基づいて予想処理時間Ｔ１を演算する。その場合、予想処理時間Ｔ１は、次の式（３）で定義することができる。
（３）  Ｔ１＝ｋ３・Ｎｃｅｌｌ−ｒｅｆ＋ｋ４・ΣＶｃｅｌｌ−ｉ
【００３２】
ケース３の場合では、パラメータ演算部１２２が入力されるフレームデータのセル配置数Ｎｃｅｌｌ−ｒｅｆとセルｉのデータ量Ｖｃｅｌｌ−ｉを演算する。また、係数ｋ３については予めセル配置数に応じたデータ処理時間を測定しておき、その測定結果をフィッティング（近似）してその係数を求めておけばよい。同様に、係数ｋ４については予めセルｉのデータ量の累積加算値に応じたデータ処理時間を測定しておき、その測定結果をフィッティング（近似）してその係数を求めておけばよい。また、その際、メモリ或いはロジック等のデバイスの種類によってデータ処理時間が異なるのでそれぞれの場合で測定しておくと良い。これによりデータタイプをパラメータとして考慮することができる。ここで、予想処理時間Ｔ１は、式（３）の他にも、例えば、次のように予想処理時間Ｔ１を定義しても好適である。
【００３３】
（ケース４）
ケース４では、式（１）にさらにＣＰＵ数ＮＣＰＵを考慮させて予想処理時間Ｔ１を演算する。その場合、予想処理時間Ｔ１は、次の式（４）で定義することができる。
（４）  Ｔ１＝ｋ５・Ｖｔｏｔａｌ／ＮＣＰＵ
【００３４】
ケース４の場合では、パラメータ演算部１２２が振り分け先の子制御計算機１３０内に配置されるＣＰＵ１３２の数をさらに取得しておく。また、係数ｋ５については予めＣＰＵ数ＮＣＰＵを考慮させたデータ処理時間を測定しておき、その測定結果をフィッティング（近似）してその係数を求めておけばよい。ここで、予想処理時間Ｔ１は、式（４）の他にも、例えば、次のように予想処理時間Ｔ１を定義しても好適である。
【００３５】
（ケース５）
ケース５では、式（４）にさらにＣＰＵ性能、例えば、クロック定数ＦＣＰＵ、メモリ量に応じた単位時間あたりの処理データ量Ｒ、或いは、ディスクＩ／Ｏの定数Ｓｉ／ｏを考慮させて予想処理時間Ｔ１を演算する。ここでは、クロック定数ＦＣＰＵ、単位時間あたりの処理データ量Ｒ、及びディスクＩ／Ｏの定数Ｓｉ／ｏを考慮させて予想処理時間Ｔ１を演算する。その場合、予想処理時間Ｔ１は、次の式（４）で定義することができる。
（５）  Ｔ１＝ｋ６・Ｖｔｏｔａｌ／（ＦＣＰＵ・Ｒ・Ｓｉ／ｏ・ＮＣＰＵ）    
【００３６】
ケース５の場合では、パラメータ演算部１２２がさらに振り分け先の子制御計算機１３０内に配置されるメモリ１３４のメモリ量に応じた単位時間あたりの処理データ量Ｒ、ＣＰＵ１３２のクロック定数ＦＣＰＵ、磁気ディスク装置１０９のＩ／Ｏの定数Ｓｉ／ｏをさらに演算或いは取得する。また、係数ｋ６については予め単位時間あたりの処理データ量Ｒ、ＣＰＵ１３２のクロック定数ＦＣＰＵ、磁気ディスク装置１０９のＩ／Ｏの定数Ｓｉ／ｏを考慮させたデータ処理時間を測定しておき、その測定結果をフィッティング（近似）してその係数を求めておけばよい。また、式（５）ではこれらの全てを加えているが、これに限らず少なくとも１つを加えた場合でも良い。ＣＰＵ１３２のクロック値が１ＧＨｚと２ＧＨｚでは処理速度が異なるため、クロック値に応じてクロック定数ＦＣＰＵを設定しておけばよい。また、磁気ディスク装置１０９の入力／出力の速度が１００ＭＢ／ｓと２００ＭＢ／ｓとでは処理速度が異なるため、磁気ディスク装置１０９のＩ／Ｏ性能に応じて定数Ｓｉ／ｏを設定しておけばよい。
【００３７】
図５は、実施の形態１におけるメモリ使用量と単位時間あたりの処理データ量との関係の一例を示す図である。図５に示すように、単位時間あたりのデータ処理量ｖｏｌ／ｔは、メモリの使用量が所定のメモリ使用量を超えるとそれまでの単位時間あたりの処理データ量Ｒ１からＲ２へと急激に低下する。よって、子制御計算機１３０内に配置されるメモリ１３４のメモリ量によって処理データ量Ｒを可変させると好適である。
【００３８】
ここで、ケース４，５では、式（１）にそれぞれ新たなパラメータを加えたが、式（１）の代わりに式（２）或いは式（３）に加えても好適である。また、上述した各パラメータのうち、入力されるフレームデータに関するものはパラメータ演算部１２２が演算する代わりにフレームデータの属性データとしてフレームデータと共に取得するようにしても好適である。
【００３９】
Ｓ１０６において、データ処理時間予想工程として、時間予想部１１６は、描画データ１２の処理単位毎に、各処理単位のデータ処理にかかる予想処理時間Ｔ１を演算する。時間予想部１１６は、上述したケース１〜５のいずれかの計算方法により予想処理時間Ｔ１を演算すればよい。従来のようにデータ量やデータタイプ等に関わらず装置毎に固定した設定時間を用いるのではなく、実施の形態１では、描画データ１２の処理単位毎にタイムアウトを判断するための時間を予想する。これによりデータ規模に見合った予想処理時間Ｔ１を得ることができる。
【００４０】
Ｓ１０８において、実行命令工程として、命令部１１８は、描画データの処理単位毎に、各処理単位のデータ処理を実行させるための実行命令を子制御計算機１３０に送信する。命令部１１８は、実行命令部の一例である。ここでは、実行命令通知が送信されているが、実行命令通知の代わりに子制御計算機１３０を起動させるようにしても良い。その場合には、起動部１１４が命令部１１８の代わりに子制御計算機１３０を起動させても良い。或いは、起動部１１４が予め子制御計算機１３０を起動させておいてから命令部１１８が実行命令通知を子制御計算機１３０に送信しても良い。
【００４１】
Ｓ１１０において、データ処理工程として、子制御計算機１３０が実行命令通知を受信すると、まず、制御部１３６は磁気ディスク装置１０９から割り振られた処理単位のフレームに関するデータを入力する。そして、ＣＰＵ１３２が割り振られた処理単位のデータ処理を実行する。そして、制御部１３６は、データ処理が終了したら終了通知を親制御計算機１１０に送信する。図４に示すように、親制御計算機１１０が実行命令通知を送信してから終了通知を受信するまでの時間が予想処理時間Ｔ１を越えていない場合には正常終了となる。他方、以下のような場合にタイムアウトエラーとなる。
【００４２】
図６は、実施の形態１におけるタイムアウトエラーが生じる場合の親制御計算機と子制御計算機の処理フローの工程の一部について示すフローチャート図である。
Ｓ１１２において、判定工程として、判定部１２０は、親制御計算機１１０が実行命令通知を送信してから予想処理時間Ｔ１に達するまでに、子制御計算機１３０から異常処理に入った旨の信号が来た場合、或いは終了通知が来ない場合に異常状態に入ったものと判定する。言い換えれば、タイムアウトと判定する。そして、判定部１２０は、子制御計算機１３０に終了命令通知を送信する。これにより制御部１３６はＣＰＵ１３２で実行されているデータ処理を強制終了させる。そして、判定部１２０は、タイムアウトと判定した結果を出力する。出力結果は図示しないモニタに表示或いは外部に出力される。また、出力結果は磁気ディスク装置１７０に格納されてもよい。
【００４３】
以上のように、親制御計算機１１０側で描画データ１２の処理単位毎にタイムアウトを判断するための時間を予想する。そして、処理単位毎に予想した時間でタイムアウトを判断するためタイムアウトエラーの誤判定や異常動作に対する対応措置の遅れを抑制することができる。
【００４４】
そして、描画部１５０は、電子ビーム２００を用いて、予想処理時間Ｔ１内にデータ処理が終了した処理単位の描画データに基づく所定のパターンを試料１０１に描画する。具体的には、次のようになる。予想処理時間Ｔ１内にデータ処理が終了した各処理単位の描画データは、装置固有のフォーマットのショットデータとなって磁気ディスク装置１７０に格納される。そして、制御回路１７２に制御された描画部１５０は、以下のようにしてショットデータに基づく所定のパターンを試料１０１に描画する。
【００４５】
照射部の一例となる電子銃２０１から出た電子ビーム２００は、照明レンズ２０２により矩形例えば長方形の穴を持つ第１のアパーチャ２０３全体を照明する。ここで、電子ビーム２００をまず矩形例えば長方形に成形する。そして、第１のアパーチャ２０３を通過した第１のアパーチャ像の電子ビーム２００は、投影レンズ２０４により第２のアパーチャ２０６上に投影される。かかる第２のアパーチャ２０６上での第１のアパーチャ像の位置は、偏向器２０５によって偏向制御され、ビーム形状と寸法を変化させることができる。その結果、電子ビーム２００は成形される。そして、第２のアパーチャ２０６を通過した第２のアパーチャ像の電子ビーム２００は、対物レンズ２０７により焦点を合わせ、偏向器２０８により偏向される。その結果、ＸＹステージ１０５上の試料１０１の所望する位置に照射される。ＸＹステージ１０５の動作は、連続移動、或いはステップアンドリピート移動で行なわれる。すなわち、描画装置１００は、ＸＹステージ１０５が連続移動しながら描画する。或いは、描画装置１００は、ＸＹステージ１０５がステップアンドリピート移動しながら停止中に描画する。以上のようにして、正常にデータ処理が完了したデータに基づいて高精度な位置に所望するパターンを描画することができる。
【００４６】
実施の形態２．
実施の形態１では、親制御計算機１１０側で予想処理時間Ｔ１を予想したがこれに限るものではない。実施の形態２では、子制御計算機１３０で予想処理時間Ｔ１を予想する場合について説明する。
【００４７】
図７は、実施の形態２における描画装置の構成を示す概念図である。
図７において、各子制御計算機１３０内にパラメータ演算部１３８及び時間予想部１４０が追加された点以外は図１と同様である。ここで、図７でも図１と同様、親制御計算機１１０内の各構成を電気的な回路によるハードウェアにより構成するように記載しているが、これに限るものではなく、ソフトウェアにより実施させても構わない。すなわち、親制御計算機１１０はコンピュータでも構わない。そして、コンピュータの一例となる親制御計算機１１０で、振分部１１２、起動部１１４、時間予想部１１６、命令部１１８、判定部１２０、及びパラメータ演算部１２２といった各機能の処理を実行させても構わない。或いは、電気的な回路によるハードウェアとソフトウェアとの組合せにより実施させても構わない。或いは、かかるハードウェアとファームウェアとの組合せでも構わない。また、ソフトウェアにより、或いはソフトウェアとの組合せにより実施させる場合には、親制御計算機１１０に入力される情報或いは演算処理中及び処理後の各情報はその都度メモリ１２４に記憶される。また、図７では、子制御計算機１３０内の制御部１３６、パラメータ演算部１３８及び時間予想部１４０を電気的な回路によるハードウェアにより構成するように記載しているが、これに限るものではなく、ソフトウェアにより実施させても構わない。すなわち、制御部１３６、パラメータ演算部１３８及び時間予想部１４０の各機能の処理はコンピュータにより実行させても構わない。或いは、電気的な回路によるハードウェアとソフトウェアとの組合せにより実施させても構わない。或いは、かかるハードウェアとファームウェアとの組合せでも構わない。また、ソフトウェアにより、或いはソフトウェアとの組合せにより実施させる場合には、子制御計算機１３０に入力される情報或いは演算処理中及び処理後の各情報はその都度いずれかのメモリ１３４に記憶される。図７では、本実施の形態２を説明する上で必要な構成部分以外については記載を省略している。描画装置１００にとって、通常、必要なその他の構成が含まれても構わないことは言うまでもない。
【００４８】
図８は、実施の形態２における親制御計算機と子制御計算機の処理フローの要部工程について示すフローチャート図である。
Ｓ２０２において、起動工程として、起動部１１４は、各子制御計算機１３０を起動させる。そして、Ｓ２０４において、各子制御計算機１３０が起動する。
【００４９】
Ｓ２０６において、フレーム選択工程として、振分部１１２は、各子制御計算機１３０に振り分けるフレームを選択する。
【００５０】
Ｓ２０８において、パラメータ演算工程として、パラメータ演算部１２２は、子制御計算機１３０が振り分けられるフレームデータのデータ処理にかかる予想処理時間Ｔ１を演算するまでの試算予想時間ｔ１を演算するためのパラメータを演算する。試算予想時間ｔ１は、入力されるあるフレームのデータを特徴付けるパラメータの関数として予想することができる。上述したケース１〜５のいずれかの式を用いればよい。その際、各式の係数については予め使用するパラメータに応じた演算時間を測定しておき、その測定結果をフィッティング（近似）してその係数を求めておけばよい。
【００５１】
Ｓ２１０において、試算時間予想工程として、時間予想部１１６は、描画データ１２の処理単位毎に、各子制御計算機１３０が振り分けられる各処理単位のデータ処理にかかる予想処理時間Ｔ１を演算するまでの試算予想時間ｔ１を演算する。時間予想部１１６は、係数を変えた上述したケース１〜５のいずれかの計算式により試算予想時間ｔ１を演算すればよい。子制御計算機１３０が振り分けられるフレームデータのデータ処理にかかる予想処理時間Ｔ１を演算している間に処理エラーが発生する場合もある。また、処理すべきデータ規模によって予想処理時間Ｔ１を演算するための時間も異なってくる。そのため、試算予想時間ｔ１を演算することで、試算規模に見合ったこの予想処理時間Ｔ１を演算するための期間についても試算することができる。
【００５２】
Ｓ２１２において、予想処理時間Ｔ１算出命令工程として、命令部１１８は、描画データの処理単位毎に、各予想処理時間Ｔ１を算出させるための算出命令を子制御計算機１３０に送信する。
【００５３】
Ｓ２１４において、パラメータ演算工程として、パラメータ演算部１３８は、振り分けられるフレームデータのデータ処理にかかる予想処理時間Ｔ１を演算するためのパラメータを演算する。予想処理時間Ｔ１を演算する手法は、実施の形態１と同様、上述したケース１〜５のいずれかの式を用いればよい。よって、パラメータ演算部１３８は、選択したケース１〜５のいずれかの式のパラメータを演算或いは取得すればよい。
【００５４】
Ｓ２１６において、データ処理時間予想工程として、時間予想部１４０は、描画データ１２の処理単位毎に、各処理単位のデータ処理にかかる予想処理時間Ｔ１を演算する。時間予想部１４０は、選択したケース１〜５のいずれかの計算方法により予想処理時間Ｔ１を演算すればよい。実施の形態２では、子制御計算機１３０側で描画データ１２の処理単位毎にタイムアウトを判断するための時間を予想する。これによりデータ規模に見合った予想処理時間Ｔ１を得ることができる。そして、制御部１３６は、予想処理時間Ｔ１の演算が終了したら予想処理時間Ｔ１を親制御計算機１１０に送信する。図８に示すように、親制御計算機１１０が予想処理時間Ｔ１算出命令通知を送信してから予想処理時間Ｔ１を受信するまでの時間が試算予想時間ｔ１を越えていない場合にはその先の実行命令工程へと進むことになる。他方、以下のような場合にタイムアウトエラーとなる。
【００５５】
図９は、実施の形態２におけるタイムアウトエラーが生じる場合の親制御計算機と子制御計算機の処理フローの工程の一部について示すフローチャート図である。
Ｓ２１８において、判定工程として、判定部１２０は、親制御計算機１１０が予想処理時間Ｔ１算出命令通知を送信してから試算予想時間ｔ１に達するまでに、子制御計算機１３０から異常処理に入った旨の信号が来た場合、或いは予想処理時間Ｔ１の通知が来ない場合に異常状態に入ったものと判定する。言い換えれば、タイムアウトと判定する。そして、判定部１２０は、子制御計算機１３０に終了命令通知を送信する。これにより制御部１３６はパラメータ演算部１３８或いは時間予想部１４０で実行されている演算処理を強制終了させる。そして、判定部１２０は、タイムアウトと判定した結果を出力する。出力結果は図示しないモニタに表示或いは外部に出力される。また、出力結果は磁気ディスク装置１７０に格納されてもよい。
【００５６】
以上のように、親制御計算機１１０側で描画データ１２の処理単位毎にタイムアウトを判断するための予想処理時間Ｔ１を演算するための試算時間を予想する。そして、処理単位毎に予想した試算予想時間ｔ１でタイムアウトを判断するため、ここでもタイムアウトエラーの誤判定や異常動作に対する対応措置の遅れを抑制することができる。
【００５７】
Ｓ２２０において、実行命令工程として、前工程でタイムアウトエラーが生じなかった場合に、命令部１１８は、描画データの処理単位毎に、各処理単位のデータ処理を実行させるための実行命令を子制御計算機１３０に送信する。命令部１１８は、実行命令部の一例である。
【００５８】
Ｓ２２２において、データ処理工程として、子制御計算機１３０が実行命令通知を受信すると、まず、制御部１３６は磁気ディスク装置１０９から割り振られた処理単位のフレームに関するデータを入力する。そして、ＣＰＵ１３２が割り振られた処理単位のデータ処理を実行する。そして、制御部１３６は、データ処理が終了したら終了通知を親制御計算機１１０に送信する。図８に示すように、親制御計算機１１０が実行命令通知を送信してから終了通知を受信するまでの時間が予想処理時間Ｔ１を越えていない場合には正常終了となる。他方、親制御計算機１１０が実行命令通知を送信してから予想処理時間Ｔ１に達するまでに、子制御計算機１３０から異常処理に入った旨の信号が来た場合、或いは終了通知が来ない場合にタイムアウトエラーとなる。
【００５９】
ここで、実施の形態２におけるタイムアウトエラーが生じる場合の親制御計算機と子制御計算機の処理フローは、上述した図６におけるＳ１０８をＳ２２０に、Ｓ１１０をＳ２２２に、及びＳ１１２をＳ２２４に置き換えた場合と同様である。すなわち、Ｓ２２４において、判定工程として、判定部１２０は、親制御計算機１１０が実行命令通知を送信してから予想処理時間Ｔ１に達するまでに、子制御計算機１３０から異常処理に入った旨の信号が来た場合、或いは終了通知が来ない場合に異常状態に入ったものと判定する。言い換えれば、タイムアウトと判定する。そして、判定部１２０は、子制御計算機１３０に終了命令通知を送信する。これにより制御部１３６はＣＰＵ１３２で実行されているデータ処理を強制終了させる。そして、判定部１２０は、タイムアウトと判定した結果を出力する。出力結果は図示しないモニタに表示或いは外部に出力される。また、出力結果は磁気ディスク装置１７０に格納されてもよい。
【００６０】
以上のように、子制御計算機１３０側で描画データ１２の処理単位毎にタイムアウトを判断するための時間を予想する。そして、処理単位毎に予想した時間でタイムアウトを判断するためタイムアウトエラーの誤判定や異常動作に対する対応措置の遅れを抑制することができる。
【００６１】
そして、描画部１５０は、電子ビーム２００を用いて、予想処理時間Ｔ１内にデータ処理が終了した処理単位の描画データに基づく所定のパターンを試料１０１に描画する。その他は、実施の形態１と同様である。
【００６２】
実施の形態３．
実施の形態１或いは実施の形態２では、親制御計算機１１０と子制御計算機１３０とがウォッチドッグカウンタ等のデータ処理の状況を示すカウンタを機能させていない場合について説明した。実施の形態３では、ウォッチドッグカウンタ等のデータ処理の状況を示すカウンタを機能させている場合を説明する。
【００６３】
図１０は、実施の形態３における描画装置の構成を示す概念図である。
図１０において、親制御計算機１１０から時間予想部１１６及びパラメータ演算部１２２が削除された点と、各子制御計算機１３０内にカウンタチェック部１４２、判定部１４４、及びカウンタ１４６が追加された点以外は図７と同様である。ここで、図１０でも図１，７と同様、親制御計算機１１０内の各構成を電気的な回路によるハードウェアにより構成するように記載しているが、これに限るものではなく、ソフトウェアにより実施させても構わない。すなわち、親制御計算機１１０はコンピュータでも構わない。そして、コンピュータの一例となる親制御計算機１１０で、振分部１１２、起動部１１４、命令部１１８、及び判定部１２０といった各機能の処理を実行させても構わない。或いは、電気的な回路によるハードウェアとソフトウェアとの組合せにより実施させても構わない。或いは、かかるハードウェアとファームウェアとの組合せでも構わない。また、ソフトウェアにより、或いはソフトウェアとの組合せにより実施させる場合には、親制御計算機１１０に入力される情報或いは演算処理中及び処理後の各情報はその都度メモリ１２４に記憶される。また、図１０では、子制御計算機１３０内の制御部１３６、パラメータ演算部１３８、時間予想部１４０、カウンタチェック部１４２、判定部１４４、及びカウンタ１４６を電気的な回路によるハードウェアにより構成するように記載しているが、これに限るものではなく、ソフトウェアにより実施させても構わない。すなわち、制御部１３６、パラメータ演算部１３８、時間予想部１４０、カウンタチェック部１４２、判定部１４４、及びカウンタ１４６の各機能の処理はコンピュータにより実行させても構わない。或いは、電気的な回路によるハードウェアとソフトウェアとの組合せにより実施させても構わない。或いは、かかるハードウェアとファームウェアとの組合せでも構わない。また、ソフトウェアにより、或いはソフトウェアとの組合せにより実施させる場合には、子制御計算機１３０に入力される情報或いは演算処理中及び処理後の各情報はその都度いずれかのメモリ１３４に記憶される。図１０では、本実施の形態３を説明する上で必要な構成部分以外については記載を省略している。描画装置１００にとって、通常、必要なその他の構成が含まれても構わないことは言うまでもない。
【００６４】
振り分けられるフレームデータのデータ処理を行なうにあたり、ウォッチドッグカウンタを機能させてタイムアウトエラーを管理する場合、次のように制御される。まず、子制御計算機１３０が予め設定された所定の周期ｔ０でカウンタ値をチェックして、カウンタ値が上がっていれば親制御計算機１１０側にアライブ（ＡＬＩＶＥ）信号（所定の信号）を送信する。カウンタ値は例えばセル単位のデータ処理が終了する毎に例えば１ずつ加算される。他方、親制御計算機１１０は、予め設定された所定の制限時間Ｔ０内にＡＬＩＶＥ信号を受信しない場合にはタイムアウトと判定することになる。ここで、カウンタ値がカウントアップされなければならない制限時間Ｔ０は有限である。そのため、ソフトウェアの設計、或いは処理するデータによっては、処理が実際には正常に継続されているにも関わらずカウンタ値が変化しないためにＡＬＩＶＥ信号が親制御計算機１１０側に送信されず異常状態（タイムアウトエラー）になっていると誤検知される可能性がある。
【００６５】
ここで、カウンタ値を上げる処理単位をセル単位からさらにデータ量の小さい図形単位にすることでタイムアウトを回避することも考えられる。しかしながら、カウンタチェックの回数が増加するのでこれでは描画データの処理時間自体が大幅に増加してしまうので好ましくない。そこで、実施の形態３では、以下のように構成することで上述した誤検知を回避する。
【００６６】
図１１は、実施の形態３における親制御計算機と子制御計算機の処理フローの要部工程について示すフローチャート図である。
Ｓ３００において、制限時間Ｔ０設定工程として、カウンタ値がカウントアップされなければならない制限時間Ｔ０を親制御計算機１１０に設定しておく。同様に、Ｓ３０２において、周期ｔ０設定工程として、カウンタ値をチェックする周期ｔ０を各子制御計算機１３０に設定しておく。
【００６７】
Ｓ３０４において、フレーム選択工程として、振分部１１２は、各子制御計算機１３０に振り分けるフレームを選択する。
【００６８】
Ｓ３０６において、実行命令工程として、命令部１１８は、描画データの処理単位毎に、各処理単位のデータ処理を実行させるための実行命令を子制御計算機１３０に送信する。命令部１１８は、実行命令部の一例である。ここでは、実行命令通知が送信されているが、実行命令通知の代わりに子制御計算機１３０を起動させるようにしても良い。その場合には、起動部１１４が命令部１１８の代わりに子制御計算機１３０を起動させても良い。或いは、起動部１１４が予め子制御計算機１３０を起動させておいてから命令部１１８が実行命令通知を子制御計算機１３０に送信しても良い。
【００６９】
Ｓ３０８において、カウンタリセット工程として、カウンタチェック部１４２は、カウンタ１４６の値をリセットして「０」にする。
【００７０】
Ｓ３１０において、データ処理時間予想工程として、時間予想部１４０は、カウンタ値がカウントアップされる処理単位のデータ処理にかかる予想処理時間Ｔ１ｉを演算する。例えば、振り分けられたフレームデータにおけるフレーム内に配置されるセルをカウントアップされる処理単位とする。その場合、セル単位のデータ処理毎にカウンタ値がカウントアップされることになる。よって、ここではセルＡ１のデータ処理にかかる予想処理時間Ｔ１１を演算する。まず、パラメータ演算部１３８が、セルＡ１のデータ処理にかかる予想処理時間Ｔ１を演算するためのパラメータを演算する。予想処理時間Ｔ１ｉを演算する手法は、実施の形態１と同様、上述したケース１，４，５のいずれかの式を用いればよい。但し、式（１）（４）（５）のデータ量Ｖｔｏｔａｌは、該当するセルＡｉのデータ量とすることは言うまでもない。よって、パラメータ演算部１３８は、選択したケース１，４，５のいずれかの式のパラメータを演算或いは取得すればよい。そして、時間予想部１４０は、セル単位毎に、各処理単位のデータ処理にかかる予想処理時間Ｔ１ｉを演算する。時間予想部１４０は、選択したケース１，４，５のいずれかの計算方法により予想処理時間Ｔ１ｉを演算すればよい。実施の形態３では、子制御計算機１３０側でセル単位毎にタイムアウトを判断するための時間を予想する。これによりデータ規模に見合った予想処理時間Ｔ１ｉを得ることができる。
【００７１】
Ｓ３１２において、データ処理工程として、子制御計算機１３０が実行命令通知を受信すると、まず、制御部１３６は磁気ディスク装置１０９から割り振られた処理単位のフレームに関するデータを入力する。そして、ＣＰＵ１３２が割り振られたフレームデータにおけるフレーム内に配置されるセル単位のデータのデータ処理を実行する。ここでは、セルＡ１のデータ処理を実行する。
【００７２】
Ｓ３１４において、カウンタチェック工程として、カウンタチェック部１４２は、実行命令通知を受信してから設定された周期ｔ０でカウンタ１４６の値をチェックする。
【００７３】
Ｓ３１６において、判定工程として、判定部１４４は、予想処理時間Ｔ１１を演算してからカウンタ１４６の値をチェックした時点までの時間が予想処理時間Ｔ１１を越えているかどうかを判定する。そして、判定の結果、前工程でカウンタ値が上がっていない場合でも、まだ、予想処理時間Ｔ１１が経過する前であれば、制御部１３６は、ダミーのＡＬＩＶＥ信号（所定の信号）を親制御計算機１１０に送信する。すなわち、周期ｔ０（第１の期間）内にセル単位のデータ処理が終了しない場合にまだ予想処理時間Ｔ１１が経過する前であれば、制御部１３６は、ダミーのＡＬＩＶＥ信号（所定の信号）を親制御計算機１１０に送信する。図１１では、まだセルＡ１のデータのデータ処理が終了しておらずカウンタ値が上がっていない場合を示しているが、まだ、予想処理時間Ｔ１１が経過する前であれば、前工程（Ｓ３１４）でカウンタ値が上がっていれば制御部１３６は、実際（リアル）のＡＬＩＶＥ信号を親制御計算機１１０に送信する。そして、親制御計算機１１０は、設定された制限時間Ｔ０（第２の期間）内にダミーかリアルかに関わらずＡＬＩＶＥ信号を受信する限り、周期ｔ０内にセル単位のデータ処理が終了していない場合でも子制御計算機１３０のデータ処理が正常であると判定する。そして、セルＡ１のデータ処理がそのまま進められる。
【００７４】
Ｓ３１８において、カウンタチェック工程として、カウンタチェック部１４２は、前回のカウンタチェック時からさらに周期ｔ０で再度カウンタ１４６の値をチェックする。
【００７５】
Ｓ３２０において、判定工程として、判定部１４４は、予想処理時間Ｔ１１を演算してから前工程（Ｓ３１８）でカウンタ１４６の値をチェックした時点までの時間が予想処理時間Ｔ１１を越えているかどうかを判定する。そして、判定の結果、前工程（Ｓ３１８）でカウンタ値が上がっていない場合でも、まだ、予想処理時間Ｔ１１が経過する前であれば、制御部１３６は、前回と同様、ダミーのＡＬＩＶＥ信号を親制御計算機１１０に送信する。そして、セルＡ１のデータ処理が進み、データ処理が終了するとカウンタ１４６の値が１加算される。
【００７６】
Ｓ３２２において、データ処理時間予想工程として、時間予想部１４０は、次のセルＡ２のデータ処理にかかる予想処理時間Ｔ１２を演算する。演算方法は、セルＡ１の場合と同様である。
【００７７】
Ｓ３２４において、データ処理工程として、ＣＰＵ１３２がセルＡ２のデータ処理を実行する。そして、セルＡ２のデータ処理が進み、データ処理が終了するとカウンタ１４６の値が新たに１加算されて「２」となる。
【００７８】
Ｓ３２６において、データ処理時間予想工程として、時間予想部１４０は、次のセルＡ３のデータ処理にかかる予想処理時間Ｔ１３を演算する。演算方法は、セルＡ１の場合と同様である。
【００７９】
Ｓ３２８において、データ処理工程として、ＣＰＵ１３２がセルＡ３のデータ処理を実行する。
【００８０】
Ｓ３３０において、カウンタチェック工程として、カウンタチェック部１４２は、前回のカウンタチェック時からさらに周期ｔ０で再度カウンタ１４６の値をチェックする。
【００８１】
Ｓ３３２において、判定工程として、判定部１４４は、予想処理時間Ｔ１３を演算してから前工程（Ｓ３３０）でカウンタ１４６の値をチェックした時点までの時間が予想処理時間Ｔ１３を越えているかどうかを判定する。そして、判定の結果、まだ、予想処理時間Ｔ１１が経過する前であれば、前工程（Ｓ３３０）でカウンタ値が上がっていない場合でも、制御部１３６は、前回と同様、ダミーのＡＬＩＶＥ信号を親制御計算機１１０に送信する。或いは、まだ、予想処理時間Ｔ１１が経過する前であれば、前工程（Ｓ３３０）でカウンタ値が上がっていれば制御部１３６は、リアルのＡＬＩＶＥ信号を親制御計算機１１０に送信する。ここでは、カウンタ値が「０」から「２」へと上がっているのでリアルのＡＬＩＶＥ信号を親制御計算機１１０に送信する。
【００８２】
以上のように、セル単位で処理が進められ、Ｓ３６０におけるセルＡｎのデータ処理が終了するまで同様に動作する。そして、振り分けられたフレームデータ内の最後のセルＡｎのデータ処理が終了すると、制御部１３６は終了通知を親制御計算機１１０に送信する。図１１に示すように、親制御計算機１１０は、設定された制限時間Ｔ０内にダミーかリアルかに関わらずＡＬＩＶＥ信号を受信する限り、周期ｔ０内にセル単位のデータ処理が終了していない場合でも子制御計算機１３０のデータ処理が正常であると判定する。そして、最後のセルＡｎのデータ処理が終了すると正常終了となる。他方、以下のような場合にタイムアウトエラーとなる。
【００８３】
図１２は、実施の形態３におけるタイムアウトエラーが生じる場合の親制御計算機と子制御計算機の処理フローの工程の一部について示すフローチャート図である。
ここで、図１２では、例えば、Ｓ３４０においてセルＡｋの予想処理時間Ｔ１ｋが演算され、Ｓ３４２でセルＡｋのデータ処理が実行されている場合を示している。また、ｋは、１≦ｋ≦ｎとする。
【００８４】
Ｓ３４４において、カウンタチェック工程として、カウンタチェック部１４２は、前回のカウンタチェック時からさらに周期ｔ０で再度カウンタ１４６の値をチェックする。
【００８５】
Ｓ３４６において、判定工程として、判定部１４４は、予想処理時間Ｔ１ｋを演算してから前工程（Ｓ３４４）でカウンタ１４６の値をチェックした時点までの時間が予想処理時間Ｔ１ｋを越えているかどうかを判定する。そして、判定の結果、予想処理時間Ｔ１ｋが経過したにも関わらずセルＡｋの処理が終了していない場合、前工程（Ｓ３３０）でカウンタ値が上がっているかいないかに関わらず、制御部１３６は、エラー通知を親制御計算機１１０に送信する。そして、制御部１３６は、セルＡｋのデータ処理を強制終了させる。判定部１２０は、親制御計算機１１０が実行命令通知を送信した後、設定された制限時間Ｔ０内にダミーかリアルかに関わらずＡＬＩＶＥ信号を受信しない場合、或いは、エラー通知を受信した場合に異常状態に入ったものと判定する。言い換えれば、タイムアウトと判定する。また、エラー通知を受信した場合には子制御計算機１３０でのデータ処理は強制終了されているが、制限時間Ｔ０内にＡＬＩＶＥ信号を受信しない場合には、子制御計算機１３０でのデータ処理が異常の状態で実行されている可能性もあるので、その場合に、判定部１２０は、子制御計算機１３０に終了命令通知を送信する。これにより制御部１３６はＣＰＵ１３２で実行されているデータ処理を強制終了させる。そして、判定部１２０は、タイムアウトと判定した結果を出力する。出力結果は図示しないモニタに表示或いは外部に出力される。また、出力結果は磁気ディスク装置１７０に格納されてもよい。
【００８６】
以上のように、ウォッチドッグカウンタで管理している場合でも、データ規模に応じた予想処理時間でタイムアウトを判断することができる。そのためタイムアウトエラーの誤判定や異常動作に対する対応措置の遅れを抑制することができる。
【００８７】
そして、描画部１５０は、電子ビーム２００を用いて、予想処理時間Ｔ１内にデータ処理が終了した処理単位の描画データに基づく所定のパターンを試料１０１に描画する。その他は、実施の形態１と同様である。
【００８８】
以上の説明において、「〜部」或いは「〜工程」と記載したものは、コンピュータで動作可能なプログラムにより構成することができる。或いは、ソフトウェアとなるプログラムだけではなく、ハードウェアとソフトウェアとの組合せにより実施させても構わない。或いは、ハードウェアとファームウェアとの組合せでも構わない。また、プログラムにより構成される場合、プログラムは、磁気ディスク装置１０９、図示しない磁気テープ装置、ＦＤ、ＣＤ、ＤＶＤ、ＭＯ或いはＲＯＭ等の記録媒体に記録される。
【００８９】
以上、具体例を参照しつつ実施の形態について説明した。しかし、本発明は、これらの具体例に限定されるものではない。例えば、後述した各実施の形態では、予想した時間をタイムアウト時間として設定し、タイムアウトとなった場合にはすぐに異常終了処理としているがこれに限るものではない。代わりに、タイムアウトとなった場合にリトライ処理を行なうようにしても好適である。その場合、データ処理の予想時間を演算する際に、対象となる処理データ全体を複数のステップに分けておく。そして、ステップ内での処理完了比率の記録を格納しておくようにするとよい。このように構成すれば、実際に処理が中途となった場合に、どこまでデータ処理が進捗していたかの情報と比較して、リトライ時の処理時間を計算することができる。また、部分的にデータができていく場合には、そのデータ量を元に予想終了時間を求めてもよい。また、Ｎ回リトライ時の予想処理時間の補正係数を予め設定しておき、補正した時間をタイムアウト時間としてリトライしても好適である。例えば、２回目のリトライ時には元々の予想処理時間の２倍に時間とする。そして、３回目のリトライ時には元々の予想処理時間の４倍に時間とする。そして、４回目のリトライ時には元々の予想処理時間の５倍に時間とする。このようにタイムアウト時間を設定してリトライしても好適である。
【００９０】
また、装置構成や制御手法等、本発明の説明に直接必要しない部分等については記載を省略したが、必要とされる装置構成や制御手法を適宜選択して用いることができる。例えば、描画装置１００を制御する制御部構成については、記載を省略したが、必要とされる制御部構成を適宜選択して用いることは言うまでもない。
【００９１】
その他、本発明の要素を具備し、当業者が適宜設計変更しうる全ての荷電粒子ビーム描画装置、荷電粒子ビーム描画方法、及び描画データのデータ処理方法は、本発明の範囲に包含される。
【図面の簡単な説明】
【００９２】
【図１】実施の形態１における描画装置の構成を示す概念図である。
【図２】実施の形態１における描画データの階層構造の一例を示す図である。
【図３】実施の形態１における描画データの一例を示す図である。
【図４】実施の形態１における親制御計算機と子制御計算機の処理フローの要部工程について示すフローチャート図である。
【図５】実施の形態１におけるメモリ使用量と単位時間あたりの処理データ量との関係の一例を示す図である。
【図６】実施の形態１におけるタイムアウトエラーが生じる場合の親制御計算機と子制御計算機の処理フローの工程の一部について示すフローチャート図である。
【図７】実施の形態２における描画装置の構成を示す概念図である。
【図８】実施の形態２における親制御計算機と子制御計算機の処理フローの要部工程について示すフローチャート図である。
【図９】実施の形態２におけるタイムアウトエラーが生じる場合の親制御計算機と子制御計算機の処理フローの工程の一部について示すフローチャート図である。
【図１０】実施の形態３における描画装置の構成を示す概念図である。
【図１１】実施の形態３における親制御計算機と子制御計算機の処理フローの要部工程について示すフローチャート図である。
【図１２】実施の形態３におけるタイムアウトエラーが生じる場合の親制御計算機と子制御計算機の処理フローの工程の一部について示すフローチャート図である。
【図１３】従来の可変成形型電子線描画装置の動作を説明するための概念図である。
【符号の説明】
【００９３】
１０  チップ
１２  描画データ
１４  フレーム
１６  ブロック
１８  セル
１９  図形
２０  チップ構成ファイル
２２  セル配置データファイル
２４  リンクデータファイル
２６  セルパターンデータファイル
１００  描画装置
１０１，３４０  試料
１０２  電子鏡筒
１０３  描画室
１０５  ＸＹステージ
１０９，１７０  磁気ディスク装置
１１０  親制御計算機
１１２  振分部
１１４  起動部
１１６，１４０  時間予想部
１１８  命令部
１２０，１４４  判定部
１２２，１３８  パラメータ演算部
１２４，１３４  メモリ
１３０  子制御計算機
１３２  ＣＰＵ
１３６  制御部
１４２  カウンタチェック部
１４６  カウンタ
１５０  描画部
１６０  制御部
１７２  制御回路
２００  電子ビーム
２０１  電子銃
２０２  照明レンズ
２０３，４１０  第１のアパーチャ
２０６，４２０  第２のアパーチャ
２０４  投影レンズ
２０５，２０８  偏向器
２０７  対物レンズ
３３０  電子線
４１１  開口
４２１  可変成形開口
４３０  荷電粒子ソース
【図１】
0005010410.tif 000002
【図２】
0005010410.tif 000003
【図３】
0005010410.tif 000004
【図４】
0005010410.tif 000005
【図５】
0005010410.tif 000006
【図６】
0005010410.tif 000007
【図７】
0005010410.tif 000008
【図８】
0005010410.tif 000009
【図９】
0005010410.tif 000010
【図１０】
0005010410.tif 000011
【図１１】
0005010410.tif 000012
【図１２】
0005010410.tif 000013
【図１３】
0005010410.tif 000014