(57)【特許請求の範囲】
【請求項１】
同じデータ処理を行う複数のグラフィックスプロセッシングユニット（ＧＰＵ：Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、
前記複数のＧＰＵと同じデータ処理を行うセントラルプロセッシングユニット（ＣＰＵ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、
前記複数のＧＰＵの出力結果を比較するＧＰＵ結果比較部と、
前記複数のＧＰＵの出力結果が一致する場合には、前記複数のＧＰＵの出力結果の１つを用い、前記複数のＧＰＵの出力結果が一致しない場合には、前記ＣＰＵの出力結果を用いて、試料上の描画位置を算出する描画位置算出部と、
荷電粒子ビームを用いて、前記描画位置にパターンを描画する描画部と、
を備えたことを特徴とする荷電粒子ビーム描画装置。
【請求項２】
前記複数のＧＰＵの各出力結果と前記ＣＰＵの出力結果とを比較するＣＰＵ結果比較部をさらに備え、
前記複数のＧＰＵの出力結果が一致し、前記描画部が前記複数のＧＰＵの出力結果の１つを用いて描画を開始した後に、前記ＣＰＵの出力結果と前記複数のＧＰＵの出力結果とを比較した結果、閾値より外れる場合に、前記描画部は、描画処理を途中で止め、
前記複数のＧＰＵの出力結果が一致した後であって、前記描画部が前記複数のＧＰＵの出力結果の１つを用いて描画を開始する前に、前記ＣＰＵの出力結果と前記複数のＧＰＵの出力結果とを比較した結果、閾値より外れる場合に、前記描画位置算出部は、前記複数のＧＰＵの出力結果の１つに代えて、前記ＣＰＵの出力結果を用いて、前記描画位置を算出することを特徴とする請求項１記載の荷電粒子ビーム描画装置。
【請求項３】
前記複数のＧＰＵの各出力結果と前記ＣＰＵの出力結果とを比較した結果、閾値より外れたＧＰＵは以降のデータ処理から外され、
前記閾値より外れたＧＰＵは、描画動作が停止している間に、改めて所定のデータ処理を行い、
前記ＣＰＵは、描画動作が停止している間に、閾値より外れたＧＰＵと同じ所定のデータ処理を行い、
前記ＣＰＵ結果比較部は、前記閾値より外れたＧＰＵの出力結果と前記ＣＰＵの出力結果とを比較し、
比較の結果、出力結果が閾値内である場合には、前記閾値より外れたＧＰＵを以降のデータ処理に復帰させることを特徴とする請求項２記載の荷電粒子ビーム描画装置。
【請求項４】
同じデータ処理を行う３つ以上のグラフィックスプロセッシングユニット（ＧＰＵ：Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、
前記３つ以上のＧＰＵの出力結果を比較するＧＰＵ結果比較部と、
前記３つ以上のＧＰＵの各出力結果のうち、過半数の結果と異なる結果を過半数の結果に修正する修正部と、
修正された出力結果を用いて、試料上の描画位置を算出する描画位置算出部と、
荷電粒子ビームを用いて、前記描画位置にパターンを描画する描画部と、
を備えたことを特徴とする荷電粒子ビーム描画装置。
【請求項５】
複数のグラフィックスプロセッシングユニット（ＧＰＵ：Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）が同じデータ処理を行う工程と、
セントラルプロセッシングユニット（ＣＰＵ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）が前記複数のＧＰＵと同じデータ処理を行う工程と、
前記複数のＧＰＵの出力結果を比較する工程と、
前記複数のＧＰＵの出力結果が一致する場合には、前記複数のＧＰＵの出力結果の１つを用い、前記複数のＧＰＵの出力結果が一致しない場合には、前記ＣＰＵの出力結果を用いて、試料上の描画位置を算出する工程と、
荷電粒子ビームを用いて、前記描画位置にパターンを描画する工程と、
を備えたことを特徴とする荷電粒子ビーム描画方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、荷電粒子ビーム描画装置及び荷電粒子ビーム描画方法に係り、例えば、データ処理を高速化する描画装置および方法に関する。
【背景技術】
【０００２】
半導体デバイスの微細化の進展を担うリソグラフィ技術は半導体製造プロセスのなかでも唯一パターンを生成する極めて重要なプロセスである。近年、ＬＳＩの高集積化に伴い、半導体デバイスに要求される回路線幅は年々微細化されてきている。これらの半導体デバイスへ所望の回路パターンを形成するためには、高精度の原画パターン（レチクル或いはマスクともいう。）が必要となる。ここで、電子線（電子ビーム）描画技術は本質的に優れた解像性を有しており、高精度の原画パターンの生産に用いられる。
【０００３】
図１３は、従来の可変成形型電子線描画装置の動作を説明するための概念図である。
可変成形型電子線（ＥＢ：Ｅｌｅｃｔｒｏｎ  ｂｅａｍ）描画装置は、以下のように動作する。第１のアパーチャ４１０には、電子線３３０を成形するための矩形例えば長方形の開口４１１が形成されている。また、第２のアパーチャ４２０には、第１のアパーチャ４１０の開口４１１を通過した電子線３３０を所望の矩形形状に成形するための可変成形開口４２１が形成されている。荷電粒子ソース４３０から照射され、第１のアパーチャ４１０の開口４１１を通過した電子線３３０は、偏向器により偏向され、第２のアパーチャ４２０の可変成形開口４２１の一部を通過して、所定の一方向（例えば、Ｘ方向とする）に連続的に移動するステージ上に搭載された試料３４０に照射される。すなわち、第１のアパーチャ４１０の開口４１１と第２のアパーチャ４２０の可変成形開口４２１との両方を通過できる矩形形状が、Ｘ方向に連続的に移動するステージ上に搭載された試料３４０の描画領域に描画される。第１のアパーチャ４１０の開口４１１と第２のアパーチャ４２０の可変成形開口４２１との両方を通過させ、任意形状を作成する方式を可変成形方式（ＶＳＢ方式）という。
【０００４】
ここで、電子ビーム描画では、昨今のパターンの微細化に伴って、データ処理量が膨大になっている。これに伴い、描画時間が大幅に増加している。そのため、膨大なデータ量のデータ処理を高速で行うことが望まれている。しかしながら、セントラルプロセッシングユニット（ＣＰＵ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）で処理する処理速度には限界があり、さらなる高速化が求められる。例えば、畳み込み積分（コンボリューション）計算などＣＰＵでは高速化する際の処理速度に限界があり、さらなる高速化が求められる。高速化が求められる計算の例としては、例えば、帯電効果補正計算等が挙げられる。帯電効果補正の計算例において、照射量分布とかぶり荷電粒子分布とのコンボリューション計算を実行している（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−２６０２５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述したように、ＣＰＵでは処理速度に限界があり、膨大なデータ量のデータ処理を高速で行うことに限界があるといった問題があった。かかる問題を解決すべく、ＣＰＵよりも高速化が可能なグラフィックスプロセッシングユニット（ＧＰＵ：Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を用いることが検討されている。しかしながら、かかるＧＰＵでは、ＣＰＵに比べて高速化は可能となるが、ごく稀に誤った計算結果となってしまうといった問題があった。電子ビーム描画では、データ処理を行ないながらその結果に基づいて描画処理をリアルタイムで実行していくため、計算結果に誤りがあると、所望するパターンとは異なるパターンが描画されてしまうことになる。よって、単に、ＣＰＵをＧＰＵに置き換えるだけでは、描画装置において使用することが困難であるといった問題があった。しかしながら、従来、かかる問題を解決する十分な手法が確立されていなかった。
【０００７】
そこで、本発明は、かかる問題を克服し、ＧＰＵを用いて高速化を実現しながら高精度に描画する描画装置および方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一態様の荷電粒子ビーム描画装置は、
同じデータ処理を行う複数のグラフィックスプロセッシングユニット（ＧＰＵ：Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、
複数のＧＰＵと同じデータ処理を行うセントラルプロセッシングユニット（ＣＰＵ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、
複数のＧＰＵの出力結果を比較するＧＰＵ結果比較部と、
複数のＧＰＵの出力結果が一致する場合には、複数のＧＰＵの出力結果の１つを用い、複数のＧＰＵの出力結果が一致しない場合には、ＣＰＵの出力結果を用いて、試料上の描画位置を算出する描画位置算出部と、
荷電粒子ビームを用いて、描画位置にパターンを描画する描画部と、
を備えたことを特徴とする。
【０００９】
また、複数のＧＰＵの各出力結果とＣＰＵの出力結果とを比較するＣＰＵ結果比較部をさらに備え、
複数のＧＰＵの出力結果が一致し、描画部が複数のＧＰＵの出力結果の１つを用いて描画を開始した後に、ＣＰＵの出力結果と複数のＧＰＵの出力結果とを比較した結果、閾値より外れる場合に、描画部は、描画処理を途中で止め、
複数のＧＰＵの出力結果が一致した後であって、描画部が複数のＧＰＵの出力結果の１つを用いて描画を開始する前に、ＣＰＵの出力結果と複数のＧＰＵの出力結果とを比較した結果、閾値より外れる場合に、描画位置算出部は、複数のＧＰＵの出力結果の１つに代えて、ＣＰＵの出力結果を用いて、描画位置を算出するように構成するとより好適である。
【００１０】
また、複数のＧＰＵの各出力結果とＣＰＵの出力結果とを比較した結果、閾値より外れたＧＰＵは以降のデータ処理から外され、
閾値より外れたＧＰＵは、描画動作が停止している間に、改めて所定のデータ処理を行い、
ＣＰＵは、描画動作が停止している間に、閾値より外れたＧＰＵと同じ所定のデータ処理を行い、
ＣＰＵ結果比較部は、閾値より外れたＧＰＵの出力結果とＣＰＵの出力結果とを比較し、
比較の結果、出力結果が閾値内である場合には、閾値より外れたＧＰＵを以降のデータ処理に復帰させるように構成するとより好適である。
【００１１】
本発明の他の態様の荷電粒子ビーム描画装置は、
同じデータ処理を行う３つ以上のグラフィックスプロセッシングユニット（ＧＰＵ：Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、
３つ以上のＧＰＵの出力結果を比較するＧＰＵ結果比較部と、
３つ以上のＧＰＵの各出力結果のうち、過半数の結果と異なる結果を過半数の結果に修正する修正部と、
修正された出力結果を用いて、試料上の描画位置を算出する描画位置算出部と、
荷電粒子ビームを用いて、描画位置にパターンを描画する描画部と、
を備えたことを特徴とする。
【００１２】
本発明の一態様の荷電粒子ビーム描画方法は、
複数のグラフィックスプロセッシングユニット（ＧＰＵ：Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）が同じデータ処理を行う工程と、
セントラルプロセッシングユニット（ＣＰＵ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）が複数のＧＰＵと同じデータ処理を行う工程と、
複数のＧＰＵの出力結果を比較する工程と、
複数のＧＰＵの出力結果が一致する場合には、複数のＧＰＵの出力結果の１つを用い、複数のＧＰＵの出力結果が一致しない場合には、ＣＰＵの出力結果を用いて、試料上の描画位置を算出する工程と、
荷電粒子ビームを用いて、描画位置にパターンを描画する工程と、
を備えたことを特徴とする。
【発明の効果】
【００１３】
本発明の一態様によれば、ＧＰＵの誤った計算結果を用いることなく、データ処理をより高速化できる。よって、データ処理の高速化を実現しながら高精度に描画することができる。
【図面の簡単な説明】
【００１４】
【図１】実施の形態１における描画装置の構成を示す概念図である。
【図２】実施の形態１における描画方法の要部工程を示すフローチャート図である。
【図３】実施の形態１におけるＧＰＵを用いた工程での内部処理フローの一例を示す図である。
【図４】実施の形態１におけるＧＰＵを用いた工程での内部処理フローの他の一例を示す図である。
【図５】実施の形態１におけるＧＰＵを用いた工程での内部処理フローの他の一例を示す図である。
【図６】実施の形態１における描画動作の一例を示す図である。
【図７】実施の形態１における描画動作の他の一例を示す図である。
【図８】実施の形態１におけるＧＰＵ復帰処理フローの一例を示す図である。
【図９】実施の形態１における信頼ポイントの一例を示す図である。
【図１０】実施の形態２におけるＧＰＵを用いた工程での内部処理フローの一例を示す図である。
【図１１】実施の形態２における描画動作の一例を示す図である。
【図１２】実施の形態３における描画動作の一例を示す図である。
【図１３】従来の可変成形型電子線描画装置の動作を説明するための概念図である。
【発明を実施するための形態】
【００１５】
以下、実施の形態では、荷電粒子ビームの一例として、電子ビームを用いた構成について説明する。但し、荷電粒子ビームは、電子ビームに限るものではなく、イオンビーム等の荷電粒子を用いたビームでも構わない。また、荷電粒子ビーム装置の一例として、可変成形型の描画装置について説明する。
【００１６】
また、以下の各実施の形態では、一例として、帯電効果を補正する補正量を計算する一連の計算の中の一部について、グラフィックスプロセッシングユニット（ＧＰＵ：Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）で計算を実行する場合を説明するが、これに限るものではない。かかる一連の計算のうちの他の一部或いは全部の計算に用いても構わない。また、かかる一連の計算に限らず、描画装置内で演算する他のデータ処理を実行させてもよい。例えば、描画される図形パターンの位置、形状、及びサイズ等が定義された描画データについて複数段のデータ処理を行って、装置固有のショットデータを生成する計算の一部或いは全部についてＧＰＵに計算を実行させても構わない。
【００１７】
実施の形態１．
図１は、実施の形態１における描画装置の構成を示す概念図である。図１において、描画装置１００は、描画部１５０と制御部１６０を備えている。描画装置１００は、荷電粒子ビーム描画装置の一例である。特に、可変成形型（ＶＳＢ型）の描画装置の一例である。描画部１５０は、電子鏡筒１０２と描画室１０３を備えている。電子鏡筒１０２内には、電子銃２０１、照明レンズ２０２、ブランキング偏向器（ブランカー）２１２、ブランキングアパーチャ２１４、第１の成形アパーチャ２０３、投影レンズ２０４、偏向器２０５、第２の成形アパーチャ２０６、対物レンズ２０７、主偏向器２０８及び副偏向器２０９が配置されている。描画室１０３内には、少なくともＸＹ方向に移動可能なＸＹステージ１０５が配置される。ＸＹステージ１０５上には、レジストが塗布された描画対象となる試料１０１が配置される。試料１０１には、半導体装置を製造するための露光用のマスクやシリコンウェハ等が含まれる。マスクにはマスクブランクスが含まれる。
【００１８】
制御部１６０は、制御計算機ユニット１１０，１１２，１１４，１１６，１２０、インターフェース（Ｉ／Ｆ）回路１１１，１１３、制御回路１３０、偏向制御回路１３２、及び磁気ディスク装置等の記憶装置１４０，１４２を有している。制御計算機ユニット１１０，１１２，１１４，１１６，１２０、インターフェース回路１１１，１１３、制御回路１３０、偏向制御回路１３２、及び磁気ディスク装置等の記憶装置１４０，１４２は、バス１０９を介して互いに接続されている。
【００１９】
偏向制御回路１３２は、主偏向器２０８に接続され、所望の偏向量を示す偏向電圧が印加される。かかる偏向電圧によって電子ビーム２００が偏向させられ、所望のサブフィールド（ＳＦ）位置へと照射される。図１では、偏向制御回路１３２から主偏向器２０８にだけ接続された例を示しているが、その他の偏向器にも同様に接続されていることは言うまでもない。
【００２０】
また、制御計算機ユニット１１０内には、複数のセントラルプロセッシングユニット（ＣＰＵ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３０ａ，ｂ，ｃ，ｄ，ｅ，・・・、及び複数のメモリ３１ａ，ｂ，ｃ，ｄ，ｅ，・・・が配置される。各ＣＰＵ３０ａ，ｂ，ｃ，ｄ，ｅ，・・・に必要な入力データ或いは演算された結果はその都度メモリ３１ａ，ｂ，ｃ，ｄ，ｅ，・・・のいずれかに記憶される。
【００２１】
また、制御計算機ユニット１１２内には、ＣＰＵ３２、ＧＰＵ４２、及びメモリ３３，４３が配置される。ＣＰＵ３２、及びＧＰＵ４２に必要な入力データ或いは演算された結果はその都度メモリ３３，４３のいずれかに記憶される。同様に、制御計算機ユニット１１４内には、ＣＰＵ３４、ＧＰＵ４４、及びメモリ３５，４５が配置される。ＣＰＵ３４、及びＧＰＵ４４に必要な入力データ或いは演算された結果はその都度メモリ３５，４５のいずれかに記憶される。同様に、制御計算機ユニット１１６内には、ＣＰＵ３６、ＧＰＵ４６、及びメモリ３７，４７が配置される。ＣＰＵ３６、及びＧＰＵ４６に必要な入力データ或いは演算された結果はその都度メモリ３７，４７のいずれかに記憶される。
【００２２】
また、制御計算機ユニット１２０内には、描画制御部１２２、描画データ処理部１２４、補正部１２６、及びメモリ１２８が配置される。描画制御部１２２、描画データ処理部１２４、及び補正部１２６といった各機能は、プログラムといったソフトウェアで構成されても良い。或いは、電子回路等のハードウェアで構成されてもよい。或いは、これらの組み合わせであってもよい。制御計算機ユニット１２０に必要な入力データ或いは演算された結果はその都度メモリ１２８に記憶される。
【００２３】
また、描画装置１００の外部の記憶装置５００には、ユーザ側で用意した描画データが記憶される。
【００２４】
ここで、図１では、実施の形態１を説明する上で必要な構成を記載している。描画装置１００にとって、通常、必要なその他の構成を備えていても構わない。
【００２５】
図２は、実施の形態１における描画方法の要部工程を示すフローチャート図である。図２において、実施の形態１における描画方法は、データ転送工程（Ｓ１０２）と、パターン面積密度計算工程（Ｓ１０４）と、ドーズ量分布計算工程（Ｓ１０６）と、照射量分布計算工程（Ｓ１０８）と、かぶり電子量分布計算工程（Ｓ１１０）と、非照射領域における帯電量分布計算工程（Ｓ１１２）と、照射領域における帯電量分布計算工程（Ｓ１１６）と、帯電量分布計算工程（Ｓ１１６）と、位置ずれ量分布計算工程（Ｓ１１８）と、ショットデータ生成工程（Ｓ１２０）と、補正工程（Ｓ１２２）と、描画工程（Ｓ１２４）という一連の工程を実施する。
【００２６】
データ転送工程（Ｓ１０２）として、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ａ）は、外部の記憶装置５００に格納された描画データをＩ／Ｆ回路１１１を介して、描画装置１００内に順次転送し、記憶装置１４０に順次記憶（格納）する。描画データは、例えば、試料１０１の描画領域を複数の領域に分けて、それぞれの領域毎にファイル化されている。例えば、試料１０１の描画領域をｘ方向或いはｙ方向に主偏向器２０８で偏向可能な幅で短冊状の複数のストライプ領域に分け、ストライプ領域毎にファイル化されている。また、例えば、描画されるチップ毎でも分けられている。そして、描画装置１００内に描画データを転送する際、制御計算機ユニット１１０，１１２，１１４を用いて、帯電補正のための帯電に起因する位置ずれ量Ｐの計算を行なう。実施の形態１における電子ビーム描画装置１００では、試料１０１のレジストへの電子ビーム２００の照射位置がレジストに帯電する電荷による帯電効果に伴ってずれてしまうため、かかる位置ずれ量Ｐを補正する。
【００２７】
まず、パターン面積密度計算工程（Ｓ１０４）として、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｂ）は、試料１０１の描画領域を所定のサイズのメッシュ領域毎に、メッシュ内のパターンの面積密度分布ρ（ｘ，ｙ）を計算する。例えば、各ストライプ領域がａ個×ｂ個のメッシュに分割され、各メッシュ内のパターンの面積密度が該当するメッシュの基準位置に定義されている。
【００２８】
次に、ドーズ量分布計算工程（Ｓ１０６）として、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｃ）は、パターン面積密度分布ρ（ｘ，ｙ）とレジスト内における荷電粒子（電子）の後方散乱率ηとに基づき、ドーズ量分布Ｄ（ｘ，ｙ）を算出する。ドーズ量分布Ｄ（ｘ，ｙ）は以下の式（１）で定義できる。
（１）  Ｄ（ｘ，ｙ）＝Ｄ０×（１＋２×η）／（１＋２×η×ρ（ｘ，ｙ））
【００２９】
ここで、Ｄ０は基準ドーズ量、ηは後方散乱率である。
【００３０】
次に、照射量分布計算工程（Ｓ１０８）として、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｄ）は、パターン面積密度分布ρ（ｘ，ｙ）とドーズ量分布Ｄ（ｘ，ｙ）との積である照射量分布Ｅ（ｘ，ｙ）を算出する。
【００３１】
次に、かぶり電子量分布計算工程（Ｓ１１０）として、制御計算機ユニット１１２内のＧＰＵ４２は、例えば、照射量分布Ｅ（ｘ，ｙ）とかぶり荷電粒子分布（かぶり電子分布）ｇ（ｘ，ｙ）とのコンボリューション計算（畳み込み積分）を行って、かぶり電子量分布Ｆ（ｘ，ｙ）を算出する。詳細には、例えば、かぶり荷電粒子分布（かぶり電子分布）ｇ（ｘ，ｙ）としてガウシアン分布（正規分布）が用いられ、かぶり荷電粒子分布（かぶり電子分布）ｇ（ｘ，ｙ）が下記の式（２）のように設定されている。
（２）  ｇ（ｘ，ｙ）＝（１／πσ２）×ｅｘｐ（−（ｘ２＋ｙ２）／σ２）
【００３２】
ここで、σはかぶり散乱半径（正規分布の標準偏差）である。ここでは、計算処理の高速化が要求されるコンボリューション計算を行なうため、ＣＰＵよりも速い演算処理速度を有するＧＰＵを用いるとよい。
【００３３】
しかしながら、上述したように、ＧＰＵによるデータ処理では、ごく稀に間違った演算結果を導き出すおそれがある。そこで、実施の形態１では、以下のように対応することでかかる問題を克服する。
【００３４】
図３は、実施の形態１におけるＧＰＵを用いた工程での内部処理フローの一例を示す図である。図３において、ＧＰＵを用いて演算する、例えば、かぶり電子量分布（Ｓ１１０）では、１つの演算処理を１つのＧＰＵだけで行うのではなく、同時期に、並行して、複数のＧＰＵで同じデータ処理を行う。さらに、演算速度がＧＰＵより遅いＣＰＵでも同時期に、並行して、同じデータ処理を行う。
【００３５】
例えば、かぶり電子量分布計算工程（Ｓ１１０）では、ＣＰＵ実行工程（Ｓ１０）において、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｅ）が照射量分布Ｅ（ｘ，ｙ）とかぶり荷電粒子分布（かぶり電子分布）ｇ（ｘ，ｙ）とのコンボリューション計算（畳み込み積分）を行って、かぶり電子量分布Ｆ（ｘ，ｙ）を算出する。同時期に、並行して、ＧＰＵ実行工程（Ｓ２０）において、制御計算機ユニット１１２内のＧＰＵ４２が照射量分布Ｅ（ｘ，ｙ）とかぶり荷電粒子分布（かぶり電子分布）ｇ（ｘ，ｙ）とのコンボリューション計算（畳み込み積分）を行って、かぶり電子量分布Ｆ（ｘ，ｙ）を算出する。同時期に、並行して、ＧＰＵ実行工程（Ｓ３０）において、制御計算機ユニット１１４内のＧＰＵ４４が照射量分布Ｅ（ｘ，ｙ）とかぶり荷電粒子分布（かぶり電子分布）ｇ（ｘ，ｙ）とのコンボリューション計算（畳み込み積分）を行って、かぶり電子量分布Ｆ（ｘ，ｙ）を算出する。
【００３６】
マップチェック工程（Ｓ２２）において、制御計算機ユニット１１２内のＣＰＵ３２が、同じ制御計算機ユニット１１２内のＧＰＵ４２によって算出されたかぶり電子量分布Ｆ（ｘ，ｙ）の各値が、明らかに外れた範囲にある値かどうかを判定（チェック）する。同様に、マップチェック工程（Ｓ３２）において、制御計算機ユニット１１４内のＣＰＵ３４が、同じ制御計算機ユニット１１４内のＧＰＵ４４によって算出されたかぶり電子量分布Ｆ（ｘ，ｙ）の各値が、明らかに外れた範囲にある値かどうかを判定（チェック）する。
【００３７】
比較工程（Ｓ４０）として、制御計算機ユニット１１２内のＣＰＵ３２或いは制御計算機ユニット１１４内のＣＰＵ３４が、複数のＧＰＵ４２，４４の出力結果を比較する。例えば、ＣＰＵ３２は、ＧＰＵ４２によって算出されたかぶり電子量分布Ｆ（ｘ，ｙ）とＧＰＵ４４によって算出されたかぶり電子量分布Ｆ（ｘ，ｙ）とが一致するかどうかを比較する。かかる比較処理を行う、ＣＰＵ３２或いはＣＰＵ３４は、ＧＰＵ結果比較部の一例となる。
【００３８】
比較工程（Ｓ４０）において、ＧＰＵ４２，４４の出力結果が一致する場合には、ＧＰＵ４２，４４の出力結果が正常であると想定する。そして、出力工程（Ｓ６０）として、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ａ）は、一致したかぶり電子量分布Ｆ（ｘ，ｙ）を次の計算用に出力する。
【００３９】
図４は、実施の形態１におけるＧＰＵを用いた工程での内部処理フローの他の一例を示す図である。図３では、ＧＰＵ４２，４４の出力結果が一致する場合を示したが、図４では、ＧＰＵ４２，４４の出力結果が一致しない場合を示している。かかる場合、ＧＰＵ４２，４４の少なくとも一方の出力結果が異常（演算間違えをした）と判定されて、例えば、ＣＰＵ３０ｅの演算処理が終了するまで待機する。
【００４０】
マップチェック工程（Ｓ１２）において、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｂ）が、同じ制御計算機ユニット１１０内の例えばＣＰＵ３０ｅによって算出されたかぶり電子量分布Ｆ（ｘ，ｙ）の各値が、明らかに外れた範囲にある値かどうかを判定（チェック）する。
【００４１】
次に、比較工程（Ｓ５０）において、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｃ）が、複数のＧＰＵ４２，４４の各出力結果とＣＰＵ３０（例えば、ＣＰＵ３０ｅ）の出力結果とを比較する。ＣＰＵ３０（例えば、ＣＰＵ３０ｃ）は、ＣＰＵ結果比較部の一例となる。そして、ＣＰＵ３０（例えば、ＣＰＵ３０ｅ）の出力結果に対して閾値内かどうかを判定し、出力結果が閾値内に入らないＧＰＵ４２，４４の少なくとも１つを異常なＧＰＵとして出力する。ここでは、例えば、閾値として浮動小数点誤差を用いる。よって、ＧＰＵ４２，４４の各出力結果が例えばＣＰＵ３０ｅの出力結果に対して浮動小数点誤差内にあればよい。かかる異常なＧＰＵを示す情報は、記憶装置１４２に記録されると共に、Ｉ／Ｆ回路１１３を介して、外部のユーザコンピュータ（ＰＣ）に出力される。そして、例えば、ＣＰＵ３０ａは、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｅ）によって算出されたかぶり電子量分布Ｆ（ｘ，ｙ）を次の計算用に出力する。以上により、比較工程（Ｓ４０）において、ＧＰＵ４２，４４の出力結果が一致する場合にＣＰＵの演算結果を待たずに描画処理が進むので、データの処理時間を短縮できる。また、ＧＰＵが演算間違いをした場合には、ＣＰＵの結果で補うことができる。
【００４２】
次に、非照射領域における帯電量分布計算工程（Ｓ１１２）として、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｄ）は、電子ビーム２００の非照射領域における帯電量分布Ｃｆ（ｘ，ｙ）を算出する。帯電量分布Ｃｆ（ｘ，ｙ）は、以下の式（３）に基づいて算出される。
（３）  Ｃｆ（ｘ，ｙ）＝ｆ１×Ｆ＋ｆ２×Ｆ２＋ｆ３×Ｆ３
【００４３】
ここで、ｆ１は定数、ｆ２は定数、ｆ３は定数、Ｆは算出されたかぶり電子量分布Ｆ（ｘ，ｙ）である。
【００４４】
また、照射領域における帯電量分布計算工程（Ｓ１１６）として、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｅ）は、帯電量分布計算工程（Ｓ１１２）と並行或いは連続して、電子ビーム２００の照射領域における帯電量分布Ｃｅ（ｘ，ｙ）を算出する。帯電量分布Ｃｅ（ｘ，ｙ）は、以下の式（４）、式（５）および式（６）に基づいて算出される。
（４）  Ｃｅ（ｘ，ｙ）＝ｄ０＋ｄ１×ρ＋ｄ２×Ｄ＋ｄ３×Ｅ＋ｅ１×Ｆ＋ｅ２×Ｆ２＋ｅ３×Ｆ３＋κ（ρ）×ｅｘｐ（−（ｔ−Ｔ）／λ（ρ））
（５）  κ（ρ）＝κ０＋κ１×ρ＋κ２×ρ２
（６）  λ（ρ）＝λ０＋λ１×ρ＋λ２×ρ２
【００４５】
ここで、ｄ０は定数、ｄ１は定数、ρはパターン面積密度分布ρ（ｘ，ｙ）、ｄ２は定数、Ｄはドーズ量分布Ｄ（ｘ，ｙ）、ｄ３は定数、Ｅは照射量分布Ｅ（ｘ，ｙ）、ｅ１は定数、ｅ２は定数、ｅ３は定数、κ（ρ）は帯電減衰量、κ０は定数、κ１は定数、κ２は定数、λ（ρ）は帯電減衰時定数、λ０は定数、λ１は定数、λ２は定数である。
【００４６】
帯電量分布計算工程（Ｓ１１６）として、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ａ）は、電子ビーム２００の非照射領域における帯電量分布Ｃｆ（ｘ，ｙ）および電子ビーム２００の照射領域における帯電量分布Ｃｅ（ｘ，ｙ）の和集合による、帯電量分布Ｃ（ｘ，ｙ）（＝Ｃｅ（ｘ，ｙ）∪Ｃｆ（ｘ，ｙ））を算出する。
【００４７】
位置ずれ量分布計算工程（Ｓ１１８）として、制御計算機ユニット１１２内のＧＰＵ４２は、例えば、帯電量分布Ｃ（ｘ，ｙ）と位置ずれ応答関数ｒ（ｘ，ｙ）とのコンボリューション計算（畳み込み積分）を行って、位置ずれ量分布ｐ（ｘ，ｙ）を算出する。位置ずれ応答関数ｒ（ｘ，ｙ）は、予め実験等で求めておけばよい。
【００４８】
ここでも、計算処理の高速化が要求されるコンボリューション計算を行なうため、ＣＰＵよりも速い演算処理速度を有するＧＰＵを用いるとよい。
【００４９】
また、上述したように、ＧＰＵによるデータ処理では、ごく稀に間違った演算結果を導き出すおそれがある。そこで、実施の形態１では、図３，４で示したかぶり電子量分布計算工程（Ｓ１１０）の内部処理フローと同様、１つの演算処理を１つのＧＰＵだけで行うのではなく、同時期に、並行して、複数のＧＰＵで同じデータ処理を行う。さらに、演算速度がＧＰＵより遅いＣＰＵでも同時期に、並行して、同じデータ処理を行う。そして、ＧＰＵ４２，４４の出力結果が一致する場合には、ＧＰＵ４２，４４の出力結果が正常であると想定する。そして、出力工程（Ｓ６０）として、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ａ）は、一致した位置ずれ量分布ｐ（ｘ，ｙ）を記憶装置１４２に出力し、記憶装置１４２は位置ずれ量分布ｐ（ｘ，ｙ）を格納する。ＧＰＵ４２，４４の出力結果が一致しない場合、ＧＰＵ４２，４４の少なくとも一方の出力結果が異常（演算間違えをした）と判定されて、例えば、ＣＰＵ３０ｅの演算処理が終了するまで待機する。そして、マップチェック工程（Ｓ１２）において、算出された位置ずれ量分布ｐ（ｘ，ｙ）の各値が、明らかに外れた範囲にある値かどうかを判定（チェック）する。そして、比較工程（Ｓ５０）において、いずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｃ）が、複数のＧＰＵ４２，４４の各出力結果とＣＰＵ３０（例えば、ＣＰＵ３０ｅ）の出力結果とを比較する。ＣＰＵ３０（例えば、ＣＰＵ３０ｃ）は、ＣＰＵ結果比較部の一例となる。そして、ＣＰＵ３０（例えば、ＣＰＵ３０ｅ）の出力結果に対して閾値内かどうかを判定し、出力結果が閾値内に入らないＧＰＵ４２，４４の少なくとも１つを異常なＧＰＵとして出力する。かかる異常なＧＰＵを示す情報は、記憶装置１４２に記録されると共に、Ｉ／Ｆ回路１１３を介して、外部のユーザコンピュータ（ＰＣ）に出力される。そして、例えば、ＣＰＵ３０ａは、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｅ）によって算出された位置ずれ量分布ｐ（ｘ，ｙ）を記憶装置１４２に出力し、記憶装置１４２は位置ずれ量分布ｐ（ｘ，ｙ）を格納する。以上により、比較工程（Ｓ４０）において、ＧＰＵ４２，４４の出力結果が一致する場合にＣＰＵの演算結果を待たずに描画処理が進むので、データの処理時間を短縮できる。また、ＧＰＵが演算間違いをした場合には、ＣＰＵの結果で補うことができる。
【００５０】
ショットデータ生成工程（Ｓ１２０）として、描画データ処理部１２４は、記憶装置１４０から描画データを読み出し、複数段のデータ変換処理を行って、描画装置固有のショットデータを生成する。ショットデータは、例えば、１回のショットで照射されるショットビームの照射量（照射時間）、照射位置、サイズ、及び図形コード等で定義される。
【００５１】
補正工程（Ｓ１２２）として、補正部１２６は、各ショットビームが照射される照射位置を補正する。言い換えれば、補正部１２６は、複数のＧＰＵの出力結果が一致する場合には、複数のＧＰＵの出力結果の１つを用い、複数のＧＰＵの出力結果が一致しない場合には、ＣＰＵの出力結果を用いて、試料１０１上の描画位置を算出する。補正部１２６は、描画位置算出部の一例となる。具体的には、以下のように補正する。試料１０１の描画領域は、副偏向器２０９で偏向可能なサイズのメッシュ状のサブフィールド（ＳＦ）に仮想分割される。そして、ＳＦ単位で描画される。その際、まず、主偏向器２０８でＳＦの基準位置に電子ビームを偏向し、副偏向器２０９で当該ＳＦ内の所望する位置にショットビームを偏向する。ここで、補正部１２６は、各ＳＦの基準位置を補正する。例えば、設計上のＳＦの基準位置に、その位置における位置ずれ量分布ｐ（ｘ，ｙ）の値を補正する値を加算する。加算の仕方は、位置ずれ量を補正する方向に加算すればよい。例えば、位置ずれ量の正負の符号を逆にした値を補正値として加算すればよい。かかる補正により、帯電効果による位置ずれが補正された描画位置が算出されたことになる。或いは、ショットビームを照射する照射位置そのものを補正してもよい。
【００５２】
描画工程（Ｓ１２４）として、描画制御部１２２により制御された偏向制御回路１３２は、補正部１２６により補正された位置データとその他のショットデータを入力し、各偏向器へ偏向電圧を出力する。同様に、描画制御部１２２により制御された制御回路１３０は、描画部１５０を制御して、描画部１５０は、電子ビーム２００を用いて、補正された描画位置にパターンを描画する。具体的には、描画部１５０は、以下のように動作する。
【００５３】
電子銃２０１（放出部）から放出された電子ビーム２００は、ブランキング偏向器２１２内を通過する際にブランキング偏向器２１２によって、ビームＯＮの状態では、ブランキングアパーチャ２１４を通過するように制御され、ビームＯＦＦの状態では、ビーム全体がブランキングアパーチャ２１４で遮へいされるように偏向される。ビームＯＦＦの状態からビームＯＮとなり、その後ビームＯＦＦになるまでにブランキングアパーチャ２１４を通過した電子ビーム２００が１回の電子ビームのショットとなる。ブランキング偏向器２１２は、通過する電子ビーム２００の向きを制御して、ビームＯＮの状態とビームＯＦＦの状態とを交互に生成する。例えば、ビームＯＮの状態では電圧を印加せず、ビームＯＦＦの際にブランキング偏向器２１２に電圧を印加すればよい。かかる各ショットの照射時間Ｔで試料１０１に照射される電子ビーム２００のショットあたりの照射量が調整されることになる。
【００５４】
以上のようにブランキング偏向器２１２とブランキングアパーチャ２１４を通過することによって生成された各ショットの電子ビーム２００は、照明レンズ２０２により矩形例えば長方形の穴を持つ第１の成形アパーチャ２０３全体を照明する。ここで、電子ビーム２００をまず矩形例えば長方形に成形する。そして、第１の成形アパーチャ２０３を通過した第１のアパーチャ像の電子ビーム２００は、投影レンズ２０４により第２の成形アパーチャ２０６上に投影される。偏向器２０５によって、かかる第２の成形アパーチャ２０６上での第１のアパーチャ像は偏向制御され、ビーム形状と寸法を変化させる（可変成形を行なう）ことができる。かかる可変成形はショット毎に行なわれ、通常ショット毎に異なるビーム形状と寸法に成形される。そして、第２の成形アパーチャ２０６を通過した第２のアパーチャ像の電子ビーム２００は、対物レンズ２０７により焦点を合わせ、主偏向器２０８及び副偏向器２０９によって偏向され、連続的に移動するＸＹステージ１０５に配置された試料１０１の所望する位置に照射される。上述したように、まず、主偏向器２０８がショットされるＳＦの基準位置に電子ビーム２００を偏向する。ＸＹステージ１０５は移動しているため、主偏向器２０８はＸＹステージ１０５の移動に追従するように電子ビーム２００を偏向する。そして、副偏向器２０９により、ＳＦ内の各位置に照射される。
【００５５】
ここで、上述した例では、ＧＰＵ４２，４４の出力結果が一致した場合には、ＧＰＵ４２，４４の出力結果が正常であると想定しているが、両者が共に同様の間違いを起こす可能性もゼロではない。そこで、実施の形態１では、さらに、以下のように工夫する。
【００５６】
図５は、実施の形態１におけるＧＰＵを用いた工程での内部処理フローの他の一例を示す図である。図５において、Ｓ１０〜Ｓ４０までは、図３或いは図４と同様である。図５において、比較工程（Ｓ４０）において、ＧＰＵ４２，４４の出力結果が一致する場合には、ＧＰＵ４２，４４の出力結果が正常であると仮定する。そして、出力工程（Ｓ６０）として、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ａ）は、一致したかぶり電子量分布Ｆ（ｘ，ｙ）を次の計算用に出力する。同様に、位置ずれ量分布ｐ（ｘ，ｙ）を計算する場合についても、同様に、ＧＰＵ４２，４４の出力結果が一致する場合には、ＧＰＵ４２，４４の出力結果が正常であると仮定する。そして、出力工程（Ｓ６０）として、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ａ）は、一致した位置ずれ量分布ｐ（ｘ，ｙ）を記憶装置１４２に出力する。そして、描画処理の各工程を順次実施していく。
【００５７】
次に、ＣＰＵでの同様の演算（Ｓ１０）が終了し、マップチェック工程（Ｓ１２）が終了した後、比較工程（Ｓ５０）において、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｃ）が、複数のＧＰＵ４２，４４の各出力結果とＣＰＵ３０（例えば、ＣＰＵ３０ｃ）の出力結果とを比較する。ＣＰＵ３０（例えば、ＣＰＵ３０ｃ）は、ＣＰＵ結果比較部の一例となる。そして、ＣＰＵ３０（例えば、ＣＰＵ３０ｃ）の出力結果に対して閾値内かどうかを判定し、出力結果が閾値内に入らないＧＰＵ４２，４４を異常なＧＰＵとして出力する。ここでは、例えば、閾値として浮動小数点誤差を用いる。よって、ＧＰＵ４２，４４の各出力結果が例えばＣＰＵ３０ｃの出力結果に対して浮動小数点誤差内にあればよい。かかる異常なＧＰＵを示す情報は、記憶装置１４２に記録されると共に、Ｉ／Ｆ回路１１３を介して、外部のユーザコンピュータ（ＰＣ）に出力される。ここで、比較工程（Ｓ５０）の比較結果が出た時点で、ＧＰＵ４２，４４が異常である場合、既に描画工程（Ｓ１２４）が開始されているか否かで以下のように動作を変更する。
【００５８】
図６は、実施の形態１における描画動作の一例を示す図である。図６では、上述したように、ＧＰＵ４２，４４の出力結果が一致し、ＧＰＵ４２，４４の出力結果を用いて描画処理が進んでしまい、描画工程（Ｓ１２４）が開始された後の処理フローを示している。このように、複数のＧＰＵ４２，４４の出力結果が一致し、描画部１５０が複数のＧＰＵ４２，４４の出力結果の１つを用いて描画を開始した後に、ＣＰＵ３０（例えば、ＣＰＵ３０ａ）の出力結果と複数のＧＰＵ４２，４４の出力結果とを比較した結果、閾値より外れる場合に、描画部１５０は、描画処理を途中で止める。或いは、描画動作を継続しながら、描画制御部１２２が、警告（ワーニング）情報をＩ／Ｆ回路１１３を介して、外部のユーザコンピュータ（ＰＣ）に出力するようにしてもよい。
【００５９】
図７は、実施の形態１における描画動作の他の一例を示す図である。図７では、図６とは逆に、ＧＰＵ４２，４４の出力結果が一致したが、まだ、描画工程（Ｓ１２４）が開始される前の処理フローを示している。このように、複数のＧＰＵ４２，４４の出力結果が一致した後であって、描画部１５０が複数のＧＰＵ４２，４４の出力結果の１つを用いて描画を開始する前に、ＣＰＵ３０（例えば、ＣＰＵ３０ａ）の出力結果と複数のＧＰＵ４２，４４の出力結果とを比較した結果、閾値より外れる場合に、補正部１２６（描画位置算出部）は、複数のＧＰＵ４２，４４の出力結果の１つに代えて、ＣＰＵ３０（例えば、ＣＰＵ３０ａ）の出力結果を用いて補正することで、補正後の描画位置を算出する。
【００６０】
以上により、比較工程（Ｓ４０）において、ＧＰＵ４２，４４の出力結果が一致したけれど共に間違った場合でも、描画開始前であればＣＰＵの結果で補うことができる。また、描画開始後であれば描画処理を停止して以降の無駄な処理を無くすことができる。或いは、間違えた内容をユーザに検討させて、描画対象となる試料１０１をそのまま使用できるかどうかを判断させることが可能となる。
【００６１】
また、比較工程（Ｓ４０）において、ＧＰＵ４２，４４の出力結果が一致しなかった少なくとも１つのＧＰＵ、及び、比較工程（Ｓ４０）においてＧＰＵ４２，４４の出力結果は一致したけれど比較工程（Ｓ５０）においてＣＰＵの出力結果と比較して閾値内から外れたＧＰＵについては、以降のデータ処理から外される。これにより、異常なＧＰＵを排除できる。しかしながら、かかる演算間違いが、ＧＰＵの異常から生じた結果なのか、単なる偶然の結果なのかを判断することは困難である。単なる偶然の結果として演算間違いを起こしたＧＰＵについては、演算処理に復帰させるようにしても好適である。そこで、実施の形態１では、さらに、ＧＰＵの異常から生じた結果なのか、単なる偶然の結果なのかを判断し、単なる偶然の結果として演算間違いを起こしたＧＰＵについては、演算処理に復帰させる構成を追加する。
【００６２】
図８は、実施の形態１におけるＧＰＵ復帰処理フローの一例を示す図である。図８において、閾値より外れて異常とされたＧＰＵは、描画動作が停止している間に、改めて所定のデータ処理を行う（Ｓ８０）。同様に、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｅ）が、描画動作が停止している間に、同時期に並行して、かかる閾値より外れて異常とされたＧＰＵと同じ所定のデータ処理を行う（Ｓ７０）。データ処理の内容は、予め用意しておいたテストデータを処理させても良いし、間違えた演算処理に用いたデータそのものを用いてもよい。そして、マップチェック工程（Ｓ７２）において、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｂ）が、同じ制御計算機ユニット１１０内の例えばＣＰＵ３０ｅによって算出された演算結果の各値が、明らかに外れた範囲にある値かどうかを判定（チェック）する。同様に、マップチェック工程（Ｓ８２）において、異常とされたＧＰＵを備えた制御計算機ユニット１１２或いは１１４内のＣＰＵ３２或いはＣＰＵ３４が、異常とされたＧＰＵによって算出された結果の各値が、明らかに外れた範囲にある値かどうかを判定（チェック）する。
【００６３】
そして、比較工程（Ｓ９０）として、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｃ）が、異常されたＧＰＵの出力結果とＣＰＵ３０（例えば、ＣＰＵ３０ｅ）の出力結果とを比較する。そして、ＣＰＵ３０（例えば、ＣＰＵ３０ｅ）の出力結果に対して閾値内かどうかを判定する。ここでは、例えば、閾値として浮動小数点誤差を用いる。よって、異常とされたＧＰＵの出力結果が例えばＣＰＵ３０ｅの出力結果に対して浮動小数点誤差内にあるかどうかを判定すればよい。
【００６４】
信頼ポイント増減工程（Ｓ９２）として、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｄ）は、比較工程（Ｓ９０）での比較の結果、異常されたＧＰＵの出力結果が閾値内である場合には、例えば、正の信頼ポイントを付加する。逆に、異常されたＧＰＵの出力結果が閾値内から外れた場合には、負の信頼ポイントを付加する。
【００６５】
図９は、実施の形態１における信頼ポイントの一例を示す図である。図９において、例えば、閾値内なら「＋１」、閾値内から外れた場合には「−１」を付加する。また、比較工程（Ｓ９０）での比較処理を行った際、異常終了した場合も負の信頼ポイントを付加する。そして、Ｓ７０〜Ｓ９２までの各工程を複数回繰り返す。そして、ＣＰＵ３０（例えば、ＣＰＵ３０ｄ）は、付加された信頼ポイントを累積加算する。
【００６６】
判定工程（Ｓ９４）として、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ｅ）は、累積加算された信頼ポイントの値が、閾値以上かどうかを比較（判定）する。そして、比較の結果、出力結果が信頼ポイント閾値内である場合には、閾値より外れて異常とされたＧＰＵを以降のデータ処理に復帰させる。逆に、比較の結果、出力結果が信頼ポイント閾値内から外れた場合に、異常とされたＧＰＵは、そのまま以降のデータ処理から外される。
【００６７】
上述した例では、判定工程（Ｓ９４）において、Ｓ７０〜Ｓ９２までの各工程を複数回繰り返した結果累積加算された信頼ポイントの値を用いたが、これに限るものではなく、１回の比較工程（Ｓ９０）の結果から判断してもよい。例えば信頼ポイント閾値を「＋１」としておけばよい。
【００６８】
以上のように構成することで、単なる偶然の結果演算間違いを起こしただけのＧＰＵを復活させることができる。
【００６９】
実施の形態２．
実施の形態１では、ＧＰＵによる演算間違いを並行して演算処理するＣＰＵの演算結果で補償する場合について説明したが、これに限るものではない。実施の形態２では、３つ以上のＧＰＵを用いることで、ＧＰＵ同士でＧＰＵによる演算間違いを補償する場合について説明する。描画装置１００の構成は図１と同様である。また、描画方法は、図２と同様である。以下、特に説明しない内容は、実施の形態１と同様である。
【００７０】
図１０は、実施の形態２におけるＧＰＵを用いた工程での内部処理フローの一例を示す図である。図１０では、３つ以上のＧＰＵ（例えば、ＧＰＵ４２，４４，４６）で同じデータ処理を行う。例えば、実施の形態１と同様、かぶり電子量分布計算工程（Ｓ１１０）及び位置ずれ量分布計算工程（Ｓ１１８）を行う。図１０において、ＧＰＵ４２でデータ処理を実行する（Ｓ２０）。同時期に並行して、ＧＰＵ４４でデータ処理を実行する（Ｓ３０）。同時期に並行して、ＧＰＵ４６でデータ処理を実行する（Ｓ３１）。ここでは、３つのＧＰＵ４２，４４，４６を例に説明するが、４つ以上のＧＰＵで実行する構成としても構わない。
【００７１】
次に、マップチェック工程（Ｓ２２）において、ＧＰＵ４２が、同じ制御計算機ユニット１１２内の例えばＣＰＵ３２によって算出された例えばかぶり電子量分布Ｆ（ｘ，ｙ）の各値が、明らかに外れた範囲にある値かどうかを判定（チェック）する。同様に、マップチェック工程（Ｓ３２）において、ＧＰＵ４４が、同じ制御計算機ユニット１１４内の例えばＣＰＵ３４によって算出された例えばかぶり電子量分布Ｆ（ｘ，ｙ）の各値が、明らかに外れた範囲にある値かどうかを判定（チェック）する。同様に、マップチェック工程（Ｓ３３）において、ＧＰＵ４６が、同じ制御計算機ユニット１１６内の例えばＣＰＵ３６によって算出された例えばかぶり電子量分布Ｆ（ｘ，ｙ）の各値が、明らかに外れた範囲にある値かどうかを判定（チェック）する。
【００７２】
次に、比較工程（Ｓ４２）において、ＣＰＵ３２，３４，３６のいずれか１つは、３つ以上のＧＰＵ（例えば、ＧＰＵ４２，４４，４６）の出力結果を比較する。ＧＰＵ４２，４４，４６の出力結果が全て一致する場合には、ＧＰＵ４２，４４，４６の出力結果が正常であると想定する。そして、出力工程（Ｓ６０）として、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ａ）は、一致した例えばかぶり電子量分布Ｆ（ｘ，ｙ）或いは位置ずれ量分布Ｐ（ｘ，ｙ）を出力する。かかる比較処理をおこなったＣＰＵ３２，３４，３６のいずれか１つ（例えばＣＰＵ３２）は、ＧＰＵ結果比較部の一例である。
【００７３】
図１１は、実施の形態２における描画動作の一例を示す図である。図１１において、３つ以上のＧＰＵ（例えば、ＧＰＵ４２，４４，４６）の出力結果が全て一致しない場合には、ＣＰＵ３２，３４，３６のいずれか１つ（例えばＣＰＵ３２）は、３つ以上のＧＰＵの各出力結果のうち、過半数の結果と異なる結果を過半数の結果に修正する。ＣＰＵ３２，３４，３６のいずれか１つ（例えばＣＰＵ３２）は、修正部の一例である。例えば、かぶり電子量分布Ｆ（ｘ，ｙ）或いは位置ずれ量分布Ｐ（ｘ，ｙ）は、それぞれ、メッシュ状の複数のメッシュ領域の各メッシュ位置にそれぞれの値が定義される。その際、あるメッシュ領域での値が、２つのＧＰＵの結果は一致し、１つのＧＰＵの結果が異なる値となる場合、一致した２つのＧＰＵの結果が正しい値であると想定できる。言い換えれば、過半数をとった値が、過半数に満たない値に比べて正しい確率が高い。そこで、ＣＰＵ３２，３４，３６のいずれか１つ（例えばＣＰＵ３２）は、メッシュ毎に、各ＧＰＵの演算結果を比較し、一致しない値が存在するメッシュ領域について、過半数に満たない値を過半数の値に修正する。すべてのメッシュ領域について同様に処理することで、修正された１つの分布を生成できる。修正された分布は、ＧＰＵ４２，４４，４６のいずれの出力結果からも一部異なることもあり得るが、正しい結果に近づけることができる。
【００７４】
そして、出力工程（Ｓ６０）として、制御計算機ユニット１１０内のいずれかのＣＰＵ３０（例えば、ＣＰＵ３０ａ）は、修正された例えばかぶり電子量分布Ｆ（ｘ，ｙ）或いは位置ずれ量分布Ｐ（ｘ，ｙ）を出力する。
【００７５】
以上のように実施の形態２では、ＧＰＵが演算間違いを起こした場合でも、装置内で修正できる。
【００７６】
そして、補正工程（Ｓ１２２）として、補正部１２６は、各ショットビームが照射される照射位置を補正する。言い換えれば、補正部１２６は、修正されたＧＰＵの出力結果を用いて、試料１０１上の描画位置を算出する。補正部１２６は、描画位置算出部の一例となる。具体的には、補正部１２６は、各ＳＦの基準位置を補正する。例えば、設計上のＳＦの基準位置に、その位置における位置ずれ量分布ｐ（ｘ，ｙ）の値を補正する値を加算する。かかる補正により、帯電効果による位置ずれが補正された描画位置が算出されたことになる。或いは、ショットビームを照射する照射位置そのものを補正してもよい。
【００７７】
実施の形態３．
実施の形態１では、複数のＧＰＵにより演算された１回目の結果が不一致であれば、並行して演算処理するＣＰＵの演算結果で補償する場合について説明したが、これに限るものではない。描画装置１００の構成は図１と同様である。また、描画方法は、図２と同様である。以下、特に説明しない内容は、実施の形態１と同様である。
【００７８】
図１２は、実施の形態３における描画動作の一例を示す図である。図１２において、複数のＧＰＵ（例えば、ＧＰＵ４２，４４）により演算された１回目の結果が不一致であった場合、まだ、同時期に並行して同じデータ処理を行っているＣＰＵ３０（例えばＣＰＵ３０ｅ）の演算が終了していなければ、再度、複数のＧＰＵ（例えば、ＧＰＵ４２，４４）により同じデータ処理を行う。そして、複数のＧＰＵ（例えば、ＧＰＵ４２，４４）により演算された２回目の結果が一致するかどうかを判定する。そして、２回目が一致すれば、正常として、２回目の結果が出力される。また、２回目の結果も不一致であった場合、まだ、同時期に並行して同じデータ処理を行っているＣＰＵ３０（例えばＣＰＵ３０ｅ）の演算が終了していなければ、再度、複数のＧＰＵ（例えば、ＧＰＵ４２，４４）により同じデータ処理を行ってもよい。そして、ＣＰＵ３０（例えばＣＰＵ３０ｅ）の演算が終了するまでの間、複数のＧＰＵ（例えば、ＧＰＵ４２，４４）による演算を結果が一致するまで繰り返してもよい。
【００７９】
以上のように実施の形態３によれば、ＣＰＵ３０（例えばＣＰＵ３０ｅ）の演算が終了する前に、一致する複数のＧＰＵ（例えば、ＧＰＵ４２，４４）による演算結果が得られれば、ＣＰＵで演算する場合よりもデータ処理を高速化できる。
【００８０】
以上のように各実施の形態によれば、ＧＰＵの誤った計算結果を用いることなく、データ処理をより高速化できる。よって、データ処理の高速化を実現しながら高精度に描画することができる。
【００８１】
以上、具体例を参照しつつ実施の形態について説明した。しかし、本発明は、これらの具体例に限定されるものではない。
【００８２】
また、装置構成や制御手法等、本発明の説明に直接必要しない部分等については記載を省略したが、必要とされる装置構成や制御手法を適宜選択して用いることができる。例えば、描画装置１００を制御する制御部構成については、記載を省略したが、必要とされる制御部構成を適宜選択して用いることは言うまでもない。
【００８３】
その他、本発明の要素を具備し、当業者が適宜設計変更しうる全ての荷電粒子ビーム描画装置及び方法は、本発明の範囲に包含される。
【符号の説明】
【００８４】
３０，３２，３４，３６  ＣＰＵ
３１，３３，３５，３７，４３，４５，４７，１２８  メモリ
４２，４４，４６  ＧＰＵ
１００  描画装置
１０１  試料
１０２  電子鏡筒
１０３  描画室
１０５  ＸＹステージ
１１０，１１２，１１４，１１６，１２０  制御計算機ユニット
１１１，１１３  Ｉ／Ｆ回路
１２２  描画制御部
１２４  描画データ処理部
１２６  補正部
１３０  制御回路
１３２  偏向制御回路
１４０，１４２  記憶装置
１５０  描画部
１６０  制御部
２００  電子ビーム
２０１  電子銃
２０２  照明レンズ
２０３  第１の成形アパーチャ
２０４  投影レンズ
２０５  偏向器
２０６  第２の成形アパーチャ
２０７  対物レンズ
２０８  主偏向器
２０９  副偏向器
２１２  ブランキング偏向器
２１４  ブランキングアパーチャ
３３０  電子線
３４０  試料
４１０  第１のアパーチャ
４１１  開口
４２０  第２のアパーチャ
４２１  可変成形開口
４３０  荷電粒子ソース
５００  記憶装置
５０２  ＰＣ
【図１】
0005667848.tif 000002
【図２】
0005667848.tif 000003
【図３】
0005667848.tif 000004
【図４】
0005667848.tif 000005
【図５】
0005667848.tif 000006
【図６】
0005667848.tif 000007
【図７】
0005667848.tif 000008
【図８】
0005667848.tif 000009
【図９】
0005667848.tif 000010
【図１０】
0005667848.tif 000011
【図１１】
0005667848.tif 000012
【図１２】
0005667848.tif 000013
【図１３】
0005667848.tif 000014