(57)【特許請求の範囲】
【請求項１】
ターゲット構造、イオン注入条件、及び試行粒子数を入力する第１のステップと、
前記試行粒子をターゲット中に入射させる第２のステップと、
前記試行粒子が結晶領域に位置しているとき、当該試行粒子が居る単位胞中の位置を複数のベーシックセル毎に分類する第３のステップと、
前記試行粒子の進行方向を分類分けする第４のステップと、
前記試行粒子が居る前記ベーシックセルと当該試行粒子の進行方向の分類から特定される衝突する可能性のある原子の位置をデータベースから参照する第５のステップと、
前記データベースから参照される前記原子の内、熱振動変位が未設定のものについて、当該熱振動変位を設定する第６のステップと、
前記データベースから参照される前記原子について、衝突パラメータと自由飛行距離を計算する第７のステップと、
前記データベースから参照される前記原子の中から、前記衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ前記自由飛行距離が最小の正の値を持つ前記原子を衝突原子として選択する第８のステップと、
前記衝突原子と前記試行粒子との衝突計算を実行し、衝突後の当該試行粒子の位置及び運動量を計算する第９のステップと
を少なくとも有し、
前記第５のステップで参照される衝突する可能性のある原子は、その原子の振動中心位置に対する前記試行粒子の衝突点が該試行粒子の居る前記ベーシックセル内にあることを満たすことを特徴とするモンテカルロイオン注入シミュレーション方法。
【請求項２】
ターゲット構造、イオン注入条件、及び試行粒子数を入力する第１のステップと、
前記試行粒子をターゲット中に入射させる第２のステップと、
前記試行粒子が結晶領域に位置しているとき、当該試行粒子が居る単位胞中の位置を複数のベーシックセル毎に分類する第３のステップと、
前記試行粒子の進行方向を分類分けする第４のステップと、
前記試行粒子が居る前記ベーシックセルと当該試行粒子の進行方向の分類から特定される衝突する可能性のある原子の位置をデータベースから参照する第５のステップと、
前記データベースから参照される前記原子の内、熱振動変位が未設定のものについて、当該熱振動変位を設定する第６のステップと、
前記データベースから参照される前記原子について、衝突パラメータと自由飛行距離を計算する第７のステップと、
前記データベースから参照される前記原子の中から、前記衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ前記自由飛行距離が最小の正の値を持つ前記原子を衝突原子として選択する第８のステップと、
前記衝突原子と前記試行粒子との衝突計算を実行し、衝突後の当該試行粒子の位置及び運動量を計算する第９のステップと
を少なくとも有し、
前記第５のステップで参照される衝突する可能性のある原子は、
前記第３のステップ及び前記第４のステップの双方の分類の組み合わせから同一に分類される総ての前記試行粒子について、
該原子の振動中心位置Ｔに対する前記衝突パラメータｐ、前記自由飛行距離ηが予め定められた衝突するとみなす最大の衝突パラメータｐmax、十分大きいとみなす熱振動変位Ｖｍによって、
ｐ＜ｐmax−Ｖｍ、且つη＞Ｖｍである原子の中で一番小さいη＝ηminを持つと限定される原子と、
ｐ＜ｐmax＋Ｖｍ、且つη＞−Ｖｍ、且つη＜ηmin＋Ｖｍであると限定される原子の、
和集合をとったものに含まれることを
特徴とするモンテカルロイオン注入シミュレーション方法。
【請求項３】
前記第６のステップは、
前記データベースから参照される前記原子の内、前記熱振動変位が未設定のものについて、十分大きな前記熱振動変位以下の変位を設定したときに衝突する可能性があるか否かを判定する過程と、
十分大きな前記熱振動変位以下の変位を設定したときに衝突する可能性がある前記原子について当該熱振動変位を設定する過程とからなり、
前記第７のステップは、前記データベースから参照される前記原子の内、前記熱振動変位が設定されているものについて、前記衝突パラメータと前記自由飛行距離を計算するステップであり、
前記第８のステップは、前記データベースから参照される前記原子の内、前記熱振動変位が設定されているものの中から、前記衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ、前記自由飛行距離が最小の正の値を持つ前記原子を衝突原子として選択するステップである
ことを特徴とする請求項１又は２項記載のモンテカルロイオン注入シミュレーション方法。
【請求項４】
ターゲット構造、イオン注入条件、及び試行粒子数を入力する入力装置と、
前記試行粒子をターゲット中に入射させる処理開始部と、
前記試行粒子が結晶領域に位置しているとき、当該試行粒子が居る単位胞中の位置を複数のベーシックセルに分類するベーシックセル分類部と、
前記試行粒子の進行方向を分類分けする進行方向分類部と、
前記試行粒子が居る前記ベーシックセルと当該試行粒子の進行方向の分類から特定される衝突する可能性のある原子の位置をデータベースから参照する衝突可能性原子選択部と、
前記データベースから参照される前記原子の内、熱振動変位が未設定のものについて、熱振動変位を設定する熱振動変位設定部と、
前記データベースから参照される前記原子について、衝突パラメータと自由飛行距離を計算する衝突パラメータ・自由飛行距離計算部と、
前記データベースから参照される前記原子の中から、前記衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ前記自由飛行距離が最小の正の値を持つ前記原子を衝突原子として選択する衝突原子選択部と、
前記衝突原子と前記試行粒子との衝突計算を実行し、衝突後の当該試行粒子の位置及び運動量を計算する衝突計算部と
を有し、
前記衝突可能性原子選択部により参照される衝突する可能性のある原子は、その原子の振動中心位置に対する前記試行粒子の衝突点が該試行粒子の居る前記ベーシックセル内にあることを満たすことを特徴とするモンテカルロイオン注入シミュレータ。
【請求項５】
ターゲット構造、イオン注入条件、及び試行粒子数を入力する入力装置と、
前記試行粒子をターゲット中に入射させる処理開始部と、
前記試行粒子が結晶領域に位置しているとき、当該試行粒子が居る単位胞中の位置を複数のベーシックセルに分類するベーシックセル分類部と、
前記試行粒子の進行方向を分類分けする進行方向分類部と、
前記試行粒子が居る前記ベーシックセルと当該試行粒子の進行方向の分類から特定される衝突する可能性のある原子の位置をデータベースから参照する衝突可能性原子選択部と、
前記データベースから参照される前記原子の内、熱振動変位が未設定のものについて、熱振動変位を設定する熱振動変位設定部と、
前記データベースから参照される前記原子について、衝突パラメータと自由飛行距離を計算する衝突パラメータ・自由飛行距離計算部と、
前記データベースから参照される前記原子の中から、前記衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ前記自由飛行距離が最小の正の値を持つ前記原子を衝突原子として選択する衝突原子選択部と、
前記衝突原子と前記試行粒子との衝突計算を実行し、衝突後の当該試行粒子の位置及び運動量を計算する衝突計算部と
を有し、
前記衝突可能性原子選択部により参照される衝突する可能性のある原子は、
前記試行粒子が居る前記ベーシックセルと当該試行粒子の進行方向の分類の組み合わせから同一に分類される総ての前記試行粒子について、
該原子の振動中心位置Ｔに対する前記衝突パラメータｐ、前記自由飛行距離ηが予め定められた衝突するとみなす最大の衝突パラメータｐmax、十分大きいとみなす熱振動変位Ｖｍによって、
ｐ＜ｐmax−Ｖｍ、且つη＞Ｖｍである原子の中で一番小さいη＝ηminを持つと限定される原子と、
ｐ＜ｐmax＋Ｖｍ、且つη＞−Ｖｍ、且つη＜ηmin＋Ｖｍであると限定される原子の、
和集合をとったものに含まれることを
特徴とするモンテカルロイオン注入シミュレータ。
【請求項６】
前記熱振動変位設定部は、
前記データベースから参照される前記原子の内、前記熱振動変位が未設定のものについて、十分大きな前記熱振動変位以下の変位を設定したときに衝突する可能性があるか否かを判定する手段と、
十分大きな前記熱振動変位以下の変位を設定したときに衝突する可能性がある前記原子について当該熱振動変位を設定する手段とからなり、
前記衝突パラメータ・自由飛行距離計算部は、前記データベースから参照される前記原子の内、前記熱振動変位が設定されているものについて、前記衝突パラメータと前記自由飛行距離を計算し、
前記衝突原子選択部は、前記データベースから参照される前記原子の内、前記熱振動変位が設定されているものの中から、前記衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ、前記自由飛行距離が最小の正の値を持つ前記原子を衝突原子として選択する
ことを特徴とする請求項４又は５記載のモンテカルロイオン注入シミュレータ。
【請求項７】
ターゲット構造、イオン注入条件、及び試行粒子数を入力する第１のステップと、
前記試行粒子をターゲット中に入射させる第２のステップと、
前記試行粒子が結晶領域に位置しているとき、当該試行粒子が居る単位胞中の位置を複数のベーシックセル毎に分類する第３のステップと、
前記試行粒子の進行方向を分類分けする第４のステップと、
前記試行粒子が居る前記ベーシックセルと当該試行粒子の進行方向の分類から特定される衝突する可能性のある原子の位置をデータベースから参照する第５のステップと、
前記データベースから参照される前記原子の内、熱振動変位が未設定のものについて、当該熱振動変位を設定する第６のステップと、
前記データベースから参照される前記原子について、衝突パラメータと自由飛行距離を計算する第７のステップと、
前記データベースから参照される前記原子の中から、前記衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ前記自由飛行距離が最小の正の値を持つ前記原子を衝突原子として選択する第８のステップと、
前記衝突原子と前記試行粒子との衝突計算を実行し、衝突後の当該試行粒子の位置及び運動量を計算する第９のステップと
を少なくとも有し、
前記第５のステップで参照される衝突する可能性のある原子は、その原子の振動中心位置に対する前記試行粒子の衝突点が該試行粒子の居る前記ベーシックセル内にあることを満たすことを特徴とするモンテカルロイオン注入シミュレーションプログラムを格納した記録媒体。
【請求項８】
ターゲット構造、イオン注入条件、及び試行粒子数を入力する第１のステップと、
前記試行粒子をターゲット中に入射させる第２のステップと、
前記試行粒子が結晶領域に位置しているとき、当該試行粒子が居る単位胞中の位置を複数のベーシックセル毎に分類する第３のステップと、
前記試行粒子の進行方向を分類分けする第４のステップと、
前記試行粒子が居る前記ベーシックセルと当該試行粒子の進行方向の分類から特定される衝突する可能性のある原子の位置をデータベースから参照する第５のステップと、
前記データベースから参照される前記原子の内、熱振動変位が未設定のものについて、当該熱振動変位を設定する第６のステップと、
前記データベースから参照される前記原子について、衝突パラメータと自由飛行距離を計算する第７のステップと、
前記データベースから参照される前記原子の中から、前記衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ前記自由飛行距離が最小の正の値を持つ前記原子を衝突原子として選択する第８のステップと、
前記衝突原子と前記試行粒子との衝突計算を実行し、衝突後の当該試行粒子の位置及び運動量を計算する第９のステップと
を少なくとも有し、
前記第５のステップで参照される衝突する可能性のある原子は、
前記第３のステップ及び前記第４のステップの双方の分類の組み合わせから同一に分類される総ての前記試行粒子について、
該原子の振動中心位置Ｔに対する前記衝突パラメータｐ、前記自由飛行距離ηが予め定められた衝突するとみなす最大の衝突パラメータｐmax、十分大きいとみなす熱振動変位Ｖｍによって、
ｐ＜ｐmax−Ｖｍ、且つη＞Ｖｍである原子の中で一番小さいη＝ηminを持つと限定される原子と、
ｐ＜ｐmax＋Ｖｍ、且つη＞−Ｖｍ、且つη＜ηmin＋Ｖｍであると限定される原子の、
和集合をとったものに含まれることを
特徴とするモンテカルロイオン注入シミュレーションプログラムを格納した記録媒体。
【請求項９】
前記第６のステップは、
前記データベースから参照される前記原子の内、前記熱振動変位が未設定のものについて、十分大きな前記熱振動変位以下の変位を設定したときに衝突する可能性があるか否かを判定する過程と、
十分大きな前記熱振動変位以下の変位を設定したときに衝突する可能性がある前記原子について当該熱振動変位を設定する過程とからなり、
前記第７のステップは、前記データベースから参照される前記原子の内、前記熱振動変位が設定されているものについて、前記衝突パラメータと前記自由飛行距離を計算するステップであり、
前記第８のステップは、前記データベースから参照される前記原子の内、前記熱振動変位が設定されているものの中から、前記衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ、前記自由飛行距離が最小の正の値を持つ前記原子を衝突原子として選択するステップである
ことを特徴とする請求項７又は８記載のモンテカルロイオン注入シミュレーションプログラムを格納した記録媒体。
【請求項１０】
ターゲット構造、イオン注入条件、及び試行粒子数を入力する第１のステップと、
前記試行粒子をターゲット中に入射させる第２のステップと、
前記試行粒子が結晶領域に位置しているとき、当該試行粒子が居る単位胞中の位置を複数のベーシックセル毎に分類する第３のステップと、
前記試行粒子の進行方向を分類分けする第４のステップと、
前記試行粒子が居る前記ベーシックセルと当該試行粒子の進行方向の分類から特定される衝突する可能性のある原子の位置をデータベースから参照する第５のステップと、
前記データベースから参照される前記原子の内、熱振動変位が未設定のものについて、当該熱振動変位を設定する第６のステップと、
前記データベースから参照される前記原子について、衝突パラメータと自由飛行距離を計算する第７のステップと、
前記データベースから参照される前記原子の中から、前記衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ前記自由飛行距離が最小の正の値を持つ前記原子を衝突原子として選択する第８のステップと、
前記衝突原子と前記試行粒子との衝突計算を実行し、衝突後の当該試行粒子の位置及び運動量を計算する第９のステップと
を少なくとも有するモンテカルロイオン注入シミュレーション方法により、半導体装置中のイオン注入分布を計算する第１工程と、
前記イオン注入分布を考慮して前記半導体装置のプロセス条件を設計する第２工程と、
前記プロセス条件に従って、前記半導体装置中にイオンを注入する工程を含む一連のウェハ処理を行う第３工程と
を有し、
前記第５のステップで参照される衝突する可能性のある原子は、その原子の振動中心位置に対する前記試行粒子の衝突点が該試行粒子の居る前記ベーシックセル内にあることを満たすことを特徴とする半導体装置の製造方法。
【請求項１１】
ターゲット構造、イオン注入条件、及び試行粒子数を入力する第１のステップと、
前記試行粒子をターゲット中に入射させる第２のステップと、
前記試行粒子が結晶領域に位置しているとき、当該試行粒子が居る単位胞中の位置を複数のベーシックセル毎に分類する第３のステップと、
前記試行粒子の進行方向を分類分けする第４のステップと、
前記試行粒子が居る前記ベーシックセルと当該試行粒子の進行方向の分類から特定される衝突する可能性のある原子の位置をデータベースから参照する第５のステップと、
前記データベースから参照される前記原子の内、熱振動変位が未設定のものについて、当該熱振動変位を設定する第６のステップと、
前記データベースから参照される前記原子について、衝突パラメータと自由飛行距離を計算する第７のステップと、
前記データベースから参照される前記原子の中から、前記衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ前記自由飛行距離が最小の正の値を持つ前記原子を衝突原子として選択する第８のステップと、
前記衝突原子と前記試行粒子との衝突計算を実行し、衝突後の当該試行粒子の位置及び運動量を計算する第９のステップと
を少なくとも有するモンテカルロイオン注入シミュレーション方法により、半導体装置中のイオン注入分布を計算する第１工程と、
前記イオン注入分布を考慮して前記半導体装置のプロセス条件を設計する第２工程と、
前記プロセス条件に従って、前記半導体装置中にイオンを注入する工程を含む一連のウェハ処理を行う第３工程と
を有し、
前記第５のステップで参照される衝突する可能性のある原子は、
前記第３のステップ及び前記第４のステップの双方の分類の組み合わせから同一に分類される総ての前記試行粒子について、
該原子の振動中心位置Ｔに対する前記衝突パラメータｐ、前記自由飛行距離ηが予め定められた衝突するとみなす最大の衝突パラメータｐmax、十分大きいとみなす熱振動変位Ｖｍによって、
ｐ＜ｐmax−Ｖｍ、且つη＞Ｖｍである原子の中で一番小さいη＝ηminを持つと限定される原子と、
ｐ＜ｐmax＋Ｖｍ、且つη＞−Ｖｍ、且つη＜ηmin＋Ｖｍであると限定される原子の、
和集合をとったものに含まれることを
特徴とする半導体装置の製造方法。
【請求項１２】
前記第６のステップは、
前記データベースから参照される前記原子の内、前記熱振動変位が未設定のものについて、十分大きな前記熱振動変位以下の変位を設定したときに衝突する可能性があるか否かを判定する過程と、
十分大きな前記熱振動変位以下の変位を設定したときに衝突する可能性がある前記原子について当該熱振動変位を設定する過程とからなり、
前記第７のステップは、前記データベースから参照される前記原子の内、前記熱振動変位が設定されているものについて、前記衝突パラメータと前記自由飛行距離を計算するステップであり、
前記第８のステップは、前記データベースから参照される前記原子の内、前記熱振動変位が設定されているものの中から、前記衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ、前記自由飛行距離が最小の正の値を持つ前記原子を衝突原子として選択するステップである
ことを特徴とする請求項１０又は１１記載の半導体装置の製造方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は半導体シミュレーション技術に係り、特に、半導体基板内のイオン注入分布を計算するモンテカルロイオン注入シミュレーション方法、このシミュレーション方法を実行するモンテカルロイオン注入シミュレータ、及びこのシミュレーション方法を実行するためのモンテカルロイオン注入シミュレーションプログラムを格納した記録媒体に関する。また、本発明はこのシミュレーションにより得られた結果を考慮して行うイオン注入工程を含む半導体装置の製造方法に関する。
【０００２】
【従来の技術】
近年、集積度の増大に伴いＬＳＩ（大規模集積回路）の開発コストが急増し、設計、開発の効率化が求められてきている。半導体装置の設計・開発に際しては定量的な予測能力を持つシミュレーション技術がますます重要性を増してきている。半導体装置の設計・開発におけるシミュレーション技術として、半導体装置の製造方法をシミュレーションして、その結果、半導体装置中の不純物の分布、あるいは半導体装置の構成要素の幾何学的な形状等を求めるプロセスシミュレーションと、このプロセスシミュレーションの結果を入力して半導体装置の電気的な特性をシミュレーションするデバイスシミュレーションがある。
【０００３】
一般的に半導体基板中に不純物イオンを注入するイオン注入工程をシミュレーションするには、二体衝突近似のモンテカルロシミュレーション方法を用いる。モンテカルロシミュレーション方法の一例が、M.Posselt,Radiat.Eff.and Defects in Solids,130-131,87(1994).に記載されている。ここでは、シリコン結晶中の試行粒子の衝突条件を決定する方法について次のように述べられている。シリコン結晶は、図１１（ａ）に示す構造の単位胞が、三次元空間上に周期的な繰り返された構造をもっている。一般に試行粒子が衝突する結晶原子は、原子の熱振動を無視し、試行粒子の居る単位胞を基準にすれば、結晶構造の周期性から、試行粒子の単位胞内の位置と進行方向によって一意に決まる。図１１（ｂ）及び図１１（ｃ）に示す２種類の構造単位（ベーシックセル）１６，１７を基準とした、各ベーシックセル周りの結晶原子の相対位置のリストを用意しておく。ここで、リストに含まれる衝突候補原子は、予め定めた衝突パラメータの最大値ｐmaxに依存する。ｐmax＝ｄ／２としたときの衝突候補原子は、第１のベーシックセル１６については図１２（ａ）に示すように、黒、白、及び斜線のハッチングの３種類の丸印で示した合計１７個の原子であり、第２のベーシックセル１７については図１２（ｂ）に示すように、黒、白、及び斜線のハッチングの３種類の丸印で示した合計１８個の原子である。
【０００４】
いま、モンテカルロシミュレーションが、試行粒子の衝突条件を決めるステップにあるとする。まず、試行粒子の居るベーシックセルを求めて、そのベーシックセルからの相対位置をリストから参照して実際の原子位置の衝突候補原子の熱振動変位を設定する。このとき、一度設定した衝突候補原子の熱振動変位は変更せず、保存させる。熱振動速度は、試行粒子の速度に比べると非常に小さく無視できるからである。次に、先の試行粒子の居るベーシックセルからの相対位置リストにある衝突候補原子の中から衝突する原子を選ぶ。衝突原子を選ぶ方法としては、試行粒子の進行方向単位ベクトルλと、試行粒子から衝突候補原子への相対ベクトルｘについて、衝突パラメータｐ＝｜ｘ×λ｜がｐmax未満で、自由飛行距離η＝｜ｘ・λ｜が最小の正の値を持つものである衝突候補原子を探せばよい。以上により、衝突原子とその衝突条件を求めることができる。
【０００５】
ここで、熱振動変位を設定する範囲、つまり衝突候補原子が存在する範囲について考えてみる。もし、試行粒子が多数の面接するベーシックセルに沿って移動した場合には、移動したベーシックセル周りにｄ／２だけの厚みを持った領域内の原子の熱振動変位が設定される。その領域の移動方向に垂直な断面積は、図１４中の範囲２２である。この面積は、（５＋π）×（ｄ／２）２≒８．１４×（ｄ／２）２である。また、一辺が隣接するベーシックセルへの移動を考えると、（２＋３×２１／２＋π）×（ｄ／２）２≒９．３８×（ｄ／２）２となる。
【０００６】
【発明が解決しようとする課題】
しかし、従来の衝突候補の探し方において、試行粒子の進行方向は考慮されていないため、試行粒子の進行方向と異なる方向に位置する原子も衝突パラメータの最大値ｐmaxの範囲であれば衝突候補となり、振動変位が設定される。また、衝突候補が存在する範囲は、試行粒子が属するベーシックセルが基準となって設定されており、ベーシックセル内における試行粒子の位置は考慮されていない。
【０００７】
モンテカルロイオン注入シミュレーション方法は、試行粒子数やイオン注入条件によっては、１分程度にもなりえるが、多数の試行粒子数を要求する２次元あるいは３次元計算では、最新のＥＷＳ（Engineering Work Station）を持ってしても、数日かかる場合がある。このため、計算時間の短縮が望まれている。そこで、発明者は、全体の計算時間の凡そ半分を占める手続きが、熱振動変位を設定して衝突原子を探す手続きであることに着目し、熱振動変位を設定する衝突候補原子の数を減らし、衝突原子を探索する計算量を削減して、計算時間の短縮を実現する方法を考えた。
【０００８】
本発明は、このような従来技術の問題点を解決するためになされたものであり、その目的は、衝突原子を探索する計算量を削減して、計算時間の短縮を実現するモンテカルロイオン注入シミュレーション方法、モンテカルロイオン注入シミュレータ、及びモンテカルロイオン注入シミュレーションプログラムを格納した記録媒体を提供することである。
【０００９】
本発明の他の目的は、設計開発期間の短い半導体装置の製造方法を提供することである。
【００１０】
【課題を解決するための手段】
上記目的を達成するため、本発明の第１の特徴は、
（１）ターゲット構造、イオン注入条件、及び試行粒子数を入力する第１のステップと、
（２）試行粒子をターゲット中に入射させる第２のステップと、
（３）試行粒子が結晶領域に位置しているとき、試行粒子が居る単位胞中の位置を複数のベーシックセル毎に分類する第３のステップと、
（４）試行粒子の進行方向を分類分けする第４のステップと、
（５）試行粒子が居る前記ベーシックセルと試行粒子の進行方向の分類から特定される衝突する可能性のある原子の位置をデータベースから参照する第５のステップと、
（６）データベースから参照される原子の内、熱振動変位が未設定のものについて、熱振動変位を設定する第６のステップと、
（７）データベースから参照される原子について、衝突パラメータと自由飛行距離を計算する第７のステップと、
（８）データベースから参照される原子の中から、衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ自由飛行距離が最小の正の値を持つ原子を衝突原子として選択する第８のステップと、
（９）衝突原子と試行粒子との衝突計算を実行し、衝突後の試行粒子の位置及び運動量を計算する第９のステップと
を少なくとも有するモンテカルロイオン注入シミュレーション方法であることである。
【００１１】
ここで、一般的に、試行粒子とターゲット原子との衝突における試行粒子の軌跡は、古典力学的によると図１５の曲線のようであるが、曲線の２つの漸近線で構成される折れ線で近似する。つまり、衝突後の試行粒子の位置は折れ線の屈折点と近似され、屈折点はターゲット原子から衝突前の試行粒子の進行方向直線への垂線の足と近似できる（図１５中のｘｌｐ＝０と近似できる）場合が多い。そこで、試行粒子とターゲット原子との衝突における「衝突点」を図１５に示すように、衝突前のターゲット原子から衝突前の試行粒子の進行方向直線への「垂線の足」となる点と定義する。また、自由飛行距離は、衝突前の試行粒子の位置から衝突点までの距離である。
【００１２】
本発明の第１の特徴によれば、第３のステップでベーシックセル毎に試行粒子の位置を細分化し、第４のステップで試行粒子の進行方向を分類するすることで、第５のステップで参照される原子の数を減らすことができる。シミュレーション時間の凡そ半分を占める衝突相手の検索時間が大幅に短縮され、効率のよいシミュレーション作業を行うことできる。
【００１３】
本発明の第１の特徴において、第５のステップで参照される衝突する可能性のある原子は、その原子の振動中心位置に対する試行粒子の衝突点が試行粒子の居るベーシックセル内にあることを満たすことが望ましい。或いは、第５のステップで参照される衝突する可能性のある原子は、第３のステップ及び第４のステップの双方の分類の組み合わせから同一に分類される総ての試行粒子について、原子の振動中心位置Ｔに対する衝突パラメータｐ、自由飛行距離ηが予め定められた衝突するとみなす最大の衝突パラメータｐmax、十分大きいとみなす熱振動変位Ｖｍによって、
（１）ｐ＜ｐmax−Ｖｍ、且つη＞Ｖｍである原子の中で一番小さいη＝ηminを持つと限定される原子と、
（２）ｐ＜ｐmax＋Ｖｍ、且つη＞−Ｖｍ、且つη＜ηmin＋Ｖｍであると限定される原子との
和集合をとったものに含まれていても構わない。
【００１４】
また、第６のステップは、データベースから参照される原子の内、熱振動変位が未設定のものについて、十分大きな熱振動変位以下の変位を設定したときに衝突する可能性があるか否かを判定する過程と、十分大きな熱振動変位以下の変位を設定したときに衝突する可能性がある原子について熱振動変位を設定する過程とからなることが望ましい。また、第７のステップは、データベースから参照される原子の内、熱振動変位が設定されているものについて、衝突パラメータと自由飛行距離を計算するステップであることが望ましい。さらに、第８のステップは、データベースから参照される原子の内、熱振動変位が設定されているものの中から、衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ、自由飛行距離が最小の正の値を持つ原子を衝突原子として選択するステップであることが望ましい。熱振動変位を設定し、衝突パラメータ・自由飛行距離を計算する原子の数をさらに減らすことができる。
【００１５】
本発明の第２の特徴は、ターゲット構造、イオン注入条件、及び試行粒子数を入力する入力装置と、試行粒子をターゲット中に入射させる処理開始部と、試行粒子が結晶領域に位置しているとき、試行粒子が居る単位胞中の位置を複数のベーシックセルに分類するベーシックセル分類部と、試行粒子の進行方向を分類分けする進行方向分類部と、試行粒子が居るベーシックセルと試行粒子の進行方向の分類から特定される衝突する可能性のある原子の位置をデータベースから参照する衝突可能性原子選択部と、データベースから参照される原子の内、熱振動変位が未設定のものについて、熱振動変位を設定する熱振動変位設定部と、データベースから参照される原子について、衝突パラメータと自由飛行距離を計算する衝突パラメータ・自由飛行距離計算部と、データベースから参照される原子の中から、衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ自由飛行距離が最小の正の値を持つ原子を衝突原子として選択する衝突原子選択部と、衝突原子と試行粒子との衝突計算を実行し、衝突後の試行粒子の位置及び運動量を計算する衝突計算部とを有するモンテカルロイオン注入シミュレータであることである。
【００１６】
本発明の第２の特徴において、衝突可能性原子選択部により参照される衝突する可能性のある原子は、その原子の振動中心位置に対する試行粒子の衝突点が試行粒子の居るベーシックセル内にあることを満たすことが望ましい。或いは、衝突可能性原子選択部により参照される衝突する可能性のある原子は、試行粒子が居るベーシックセルと試行粒子の進行方向の分類の組み合わせから同一に分類される総ての試行粒子について、原子の振動中心位置Ｔに対する衝突パラメータｐ、自由飛行距離ηが予め定められた衝突するとみなす最大の衝突パラメータｐmax、十分大きいとみなす熱振動変位Ｖｍによって、
（１）ｐ＜ｐmax−Ｖｍ、且つη＞Ｖｍである原子の中で一番小さいη＝ηminを持つと限定される原子と、
（２）ｐ＜ｐmax＋Ｖｍ、且つη＞−Ｖｍ、且つη＜ηmin＋Ｖｍであると限定される原子との、
和集合をとったものに含まれていても構わない。
【００１７】
また、熱振動変位設定部は、データベースから参照される原子の内、熱振動変位が未設定のものについて、十分大きな熱振動変位以下の変位を設定したときに衝突する可能性があるか否かを判定する手段と、十分大きな前記熱振動変位以下の変位を設定したときに衝突する可能性がある原子について熱振動変位を設定する手段とからなることが望ましい。また、衝突パラメータ・自由飛行距離計算部は、データベースから参照される原子の内、熱振動変位が設定されているものについて、衝突パラメータと自由飛行距離を計算し、衝突原子選択部は、データベースから参照される原子の内、熱振動変位が設定されているものの中から、衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ、自由飛行距離が最小の正の値を持つ原子を衝突原子として選択することが望ましい。
【００１８】
本発明の第３の特徴は、
（１）ターゲット構造、イオン注入条件、及び試行粒子数を入力する第１のステップと、
（２）試行粒子をターゲット中に入射させる第２のステップと、
（３）試行粒子が結晶領域に位置しているとき、試行粒子が居る単位胞中の位置を複数のベーシックセル毎に分類する第３のステップと、
（４）試行粒子の進行方向を分類分けする第４のステップと、
（５）試行粒子が居るベーシックセルと試行粒子の進行方向の分類から特定される衝突する可能性のある原子の位置をデータベースから参照する第５のステップと、
（６）データベースから参照される原子の内、熱振動変位が未設定のものについて、熱振動変位を設定する第６のステップと、
（７）データベースから参照される原子について、衝突パラメータと自由飛行距離を計算する第７のステップと、
（８）データベースから参照される原子の中から、衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ自由飛行距離が最小の正の値を持つ原子を衝突原子として選択する第８のステップと、
（９）衝突原子と試行粒子との衝突計算を実行し、衝突後の試行粒子の位置及び運動量を計算する第９のステップと
を少なくとも有するモンテカルロイオン注入シミュレーションプログラムを格納した記録媒体であることである。
【００１９】
本発明の第３の特徴において、第５のステップで参照される衝突する可能性のある原子は、その原子の振動中心位置に対する試行粒子の衝突点が試行粒子の居るベーシックセル内にあることを満たすことが望ましい。或いは、第５のステップで参照される衝突する可能性のある原子は、第３のステップ及び第４のステップの双方の分類の組み合わせから同一に分類される総ての試行粒子について、原子の振動中心位置Ｔに対する衝突パラメータｐ、自由飛行距離ηが予め定められた衝突するとみなす最大の衝突パラメータｐmax、十分大きいとみなす熱振動変位Ｖｍによって、
（１）ｐ＜ｐmax−Ｖｍ、且つη＞Ｖｍである原子の中で一番小さいη＝ηminを持つと限定される原子と、
（２）ｐ＜ｐmax＋Ｖｍ、且つη＞−Ｖｍ、且つη＜ηmin＋Ｖｍであると限定される原子との、
和集合をとったものに含まれていても構わない。
【００２０】
また、第６のステップは、データベースから参照される原子の内、熱振動変位が未設定のものについて、十分大きな熱振動変位以下の変位を設定したときに衝突する可能性があるか否かを判定する過程と、十分大きな熱振動変位以下の変位を設定したときに衝突する可能性がある原子について熱振動変位を設定する過程とからなることが望ましい。また、第７のステップは、データベースから参照される原子の内、熱振動変位が設定されているものについて、衝突パラメータと自由飛行距離を計算するステップであり、第８のステップは、データベースから参照される原子の内、熱振動変位が設定されているものの中から、衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ、自由飛行距離が最小の正の値を持つ原子を衝突原子として選択するステップであることが望ましい。
【００２１】
本発明の第４の特徴は、
（１−１）ターゲット構造、イオン注入条件、及び試行粒子数を入力する第１のステップと、
（１−２）試行粒子をターゲット中に入射させる第２のステップと、
（１−３）試行粒子が結晶領域に位置しているとき、試行粒子が居る単位胞中の位置を複数のベーシックセル毎に分類する第３のステップと、
（１−４）試行粒子の進行方向を分類分けする第４のステップと、
（１−５）試行粒子が居るベーシックセルと試行粒子の進行方向の分類から特定される衝突する可能性のある原子の位置をデータベースから参照する第５のステップと、
（１−６）データベースから参照される原子の内、熱振動変位が未設定のものについて、熱振動変位を設定する第６のステップと、
（１−７）データベースから参照される原子について、衝突パラメータと自由飛行距離を計算する第７のステップと、
（１−８）データベースから参照される原子の中から、衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ自由飛行距離が最小の正の値を持つ原子を衝突原子として選択する第８のステップと、
（１−９）衝突原子と試行粒子との衝突計算を実行し、衝突後の試行粒子の位置及び運動量を計算する第９のステップと
を少なくとも有するモンテカルロシミュレーション方法により、半導体装置中のイオン注入分布を計算する第１工程と、
（２）イオン注入分布を考慮して半導体装置のプロセス条件を設計する第２工程と、
（３）プロセス条件に従って、半導体装置中にイオンを注入する工程を含む一連のウェハ処理を行う第３工程と
を有する半導体装置の製造方法であることである。
【００２２】
本発明の第４の特徴によれば、プロセス条件の設計時間を大幅に短縮することができる。また、シミュレーション結果を設計にフィードバックさせることで、過誤の少ない設計を行うことができる。したがって、設計・開発期間の短い、半導体装置の製造方法を提供することができる。
【００２３】
本発明の第４の特徴において、第５のステップで参照される衝突する可能性のある原子は、その原子の振動中心位置に対する試行粒子の衝突点が試行粒子の居るベーシックセル内にあることを満たすことが望ましい。或いは、第５のステップで参照される衝突する可能性のある原子は、第３のステップ及び第４のステップの双方の分類の組み合わせから同一に分類される総ての試行粒子について、原子の振動中心位置Ｔに対する衝突パラメータｐ、自由飛行距離ηが予め定められた衝突するとみなす最大の衝突パラメータｐmax、十分大きいとみなす熱振動変位Ｖｍによって、
（１）ｐ＜ｐmax−Ｖｍ、且つη＞Ｖｍである原子の中で一番小さいη＝ηminを持つと限定される原子と、
（２）ｐ＜ｐmax＋Ｖｍ、且つη＞−Ｖｍ、且つη＜ηmin＋Ｖｍであると限定される原子との、
和集合をとったものに含まれていても構わない。
【００２４】
また、第６のステップは、データベースから参照される原子の内、熱振動変位が未設定のものについて、十分大きな熱振動変位以下の変位を設定したときに衝突する可能性があるか否かを判定する過程と、十分大きな熱振動変位以下の変位を設定したときに衝突する可能性がある原子について熱振動変位を設定する過程とからなることが望ましい。また、第７のステップは、データベースから参照される原子の内、熱振動変位が設定されているものについて、衝突パラメータと自由飛行距離を計算するステップであり、第８のステップは、データベースから参照される原子の内、熱振動変位が設定されているものの中から、衝突パラメータが予め設定された衝突パラメータ最大値よりも小さく、且つ、自由飛行距離が最小の正の値を持つ原子を衝突原子として選択するステップであることが望ましい。
【００２５】
【発明の実施の形態】
（衝突原子の探索方法）
本発明の実施の形態を説明する前に、モンテカルロイオン注入シミュレーション方法について簡単に説明する。まず、結晶領域を含むターゲットへ入射する現実の注入原子を多数の試行粒子で記述し、各試行粒子がターゲットに入射してから停止するまでにターゲットを構成する結晶原子と衝突する衝突条件を乱数により決定して逐次衝突計算を行う。そして、試行粒子の停止位置分布を求め、停止位置分布からターゲット中の注入原子分布を抽出する。逐次衝突計算は、試行粒子と１つの結晶原子との二体衝突問題に近似する二体衝突近似を用いる。このシミュレーション方法によって、現実の注入原子の分布を正確に予測することができる。
【００２６】
試行粒子が衝突する結晶原子（衝突原子）は、衝突パラメータｐが予め定められた衝突パラメータの最大値ｐmax未満であり、且つ自由飛行距離ηが最小の正の値を持つ原子が選択される。図１３は、試行粒子１９と衝突する結晶原子（Ｔ１〜Ｔ５）の選択方法を示す衝突概念図である。試行粒子１９と結晶原子Ｔ３が衝突する場合、衝突パラメータｐは、試行粒子１９の進行方向へ結晶原子Ｔ３から下ろされた垂線の足の長さである。また、自由飛行距離ηは、試行粒子１９から垂線の足の付け根までの長さである。図１３において、試行粒子１９に対して、衝突パラメータｐが衝突パラメータ最大値ｐmax未満であり、且つ自由飛行距離ηが正である原子は、Ｔ３、Ｔ４、Ｔ５の３つの原子（衝突候補原子）である。さらに、これらの衝突候補原子のうちで自由飛行距離ηが最小の正の値を持つ原子はＴ３である。従って、Ｔ３が試行粒子１９と衝突する衝突原子として選択される。ここで、ターゲットがタイヤモンド結晶構造を有するシリコン結晶である場合には、熱振動変位を持ってこの結晶配置をしているシリコン原子に対して上記手続きを行ない、衝突原子を探し出す。以後、本発明の実施の形態において、ターゲットが半導体基板或いは半導体基板上に形成された半導体単結晶からなるエピタキシャル成長層を含む場合について説明する。
【００２７】
（第１の実施の形態）
以下図面を参照して、本発明の実施の形態について説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。特に、フローチャートに示す図においては、同一ステップには、同一の符号を付している。図１は、本発明の第１の実施の形態に係るモンテカルロイオン注入シミュレータの構成を示すブロック図である。図１に示すように、モンテカルロイオン注入シミュレータは、処理制御部１と、プログラム記憶部２と、データベース１５と、データ記憶部３と、注入分布表示部４と、入力装置５と、出力装置６とから構成されている。
【００２８】
処理制御部１は、処理開始部７と、ベーシックセル分類部８と、進行方向分類部９と、衝突可能性原子選択部１０と、熱振動変位設定部１１と、衝突パラメータ・自由飛行距離計算部１２と、衝突原子選択部１３と、衝突計算部１４とから構成されている。シミュレーションを開始する上でまず、操作者は、入力装置５を用いて、ターゲット構造、イオン注入条件、試行粒子数を入力する。処理開始部７は、ターゲット構造、イオン注入条件、試行粒子数に基づいて、試行粒子をターゲット中に入射させて、一連のシミュレーション作業を開始する。ベーシックセル分類部８は、試行粒子が結晶領域に位置しているとき、試行粒子が居る単位胞中の位置を複数のベーシックセル毎に分類する。進行方向分類部９は、試行粒子の進行方向を分類分けする。衝突可能性原子選択部１０は、試行粒子が居るベーシックセルと試行粒子の進行方向の分類から特定され、且つ衝突点が試行粒子が居るベーシックセル内にある原子の位置をデータベース１５から参照する。熱振動変位設定部１１は、データベース１５から参照される原子の内、熱振動変位が未設定のものについて、熱振動変位を設定する。衝突パラメータ・自由飛行距離計算部１２は、データベース１５から参照される原子の内、熱振動変位が設定された原子について、衝突パラメータｐと自由飛行距離ηを計算する。衝突原子選択部１３は、データベース１５から参照される原子の中から、衝突パラメータｐが予め設定された衝突パラメータ最大値ｐmaxよりも小さく、且つ自由飛行距離ηが最小の正の値を持つ原子を衝突原子として選択する。衝突計算部１４は、衝突原子と試行粒子との衝突計算を実行し、衝突後の試行粒子の位置及び運動量を計算する。
【００２９】
データベース１５は、ベーシックセル内の原子の位置のデータを格納する。プログラム記憶部２は、一連のシミュレーションプログラムを格納する。データ記憶部３は、入力データとしての半導体装置の製造プロセスに必要な製造手順や制御処理部１における各計算部の計算に必要な製造手順や基礎データなどの所定のデータを格納する。イオン注入分布表示部４は、シミュレーション結果である注入原子の注入分布をグラフィックス表示するモニター端末である。操作者は、モニター端末により、画像でシミュレーション結果を見ることができる。出力装置６は、シミュレーション方法とは関係の無いシミュレータ独自の機能で、シミュレーション結果（ターゲット構造や注入原子の濃度分布など）を外部ファイルに保存したり、紙面にシミュレーション結果を印刷したりする。
【００３０】
本発明の第１の実施の形態に係るモンテカルロイオン注入シミュレータは、イオン注入工程におけるターゲットの構造、イオン注入条件などを入力として、イオン注入工程で製造されたターゲット中の注入不純物の濃度分布などを計算して出力する。イオン注入工程は、半導体装置の一連の製造工程において、電界効果型トランジスタのしきい電圧を調節するために低密度でイオン注入する工程から、電極領域を形成するために高密度にイオン注入する工程まで様々な注入条件において実施される。多くの汎用プロセスシミュレータは、イオン注入、酸化、熱拡散、エッチング、パターンニング工程などの半導体装置の製造工程を入力して、各工程処理後における半導体装置の構造や不純物分布を計算して出力する機能を持ち、計算した結果を一時的にシミュレータ外部にファイルなどの形式で保存したり、保存した計算結果を読み込んで、読み込んだ計算結果に対してさらに計算を行うことができる。半導体装置としての機能を有する構造の汎用プロセスシミュレーション結果に対して、デバイスシミュレーションを用いることによって、半導体装置の電気特性を計算することができる。この汎用プロセスシミュレータの一部を第１の実施の形態に係るモンテカルロイオン注入シミュレータで構成しても構わない。
【００３１】
次に、上記構成を有するモンテカルロイオン注入シミュレータを用いたシミュレーション方法について図２を参照して説明する。図２は、本発明の第１の実施の形態に係るモンテカルロイオン注入シミュレーション方法を示すフローチャートである。
【００３２】
（イ）まず、ステップＳ１００において、入力装置５を用いて、ターゲット構造、イオン注入条件、及び試行粒子数を入力する。ターゲット構造は、半導体素子の製造過程で見られるような、シリコン結晶とそれ以外の物質からなる３次元構造である。なお、計算時間短縮のため、ターゲット構造を１次元あるいは２次元構造としても構わない。イオン注入条件として、イオンの注入エネルギー、注入密度、注入角度などを入力する。試行粒子数として、現実に注入される非常に多くの注入原子を代表して計算する試行粒子の数を入力する。試行粒子の数が少ないと、計算時間は短いが、低濃度まで滑らかな注入分布が計算結果として得られない。試行粒子の数が多いと、計算時間が長くなり、効率的なシミュレーションが行えない。他の条件を勘案して適切な数を入力することが望ましいが、経験的に適切な数を自動で設定することも可能である。
【００３３】
（ロ）次に、ステップＳ２００において、処理開始部７によりＳ１００で入力した入射速度（エネルギー）、注入方向などに従って試行粒子を入射させる。入射時の試行粒子の位置は、イオンビームの照射面全体に入射させるように、乱数を用いて設定する。また、一般にターゲット自身によるイオンビームの影を計算するために、試行粒子の位置は、少なくともターゲットの最上部よりも上にしなくてはならない。ステップＳ２００は、入力した試行粒子数分の粒子を入射するまで、繰り返し呼び出される。
【００３４】
（ハ）次に、ステップＳ３００において、試行粒子が居る領域を調べる。試行粒子が真空領域に居る場合、ステップＳ４００へ進む。また、試行粒子がアモルファス層に居る場合、ステップＳ５００へ進む。さらに、試行粒子がターゲット、シリコンのエピ層などの単結晶シリコンに居る場合、ステップＳ６００へ進む。
【００３５】
（ニ）ステップＳ４００において、試行粒子を真空領域から出るまで直進させる。その後、Ｓ２００に戻る。また、試行粒子が反射したり、ターゲットを突き抜けたため、永遠に真空領域から出ない場合は、この粒子の追跡計算を止めるため、ステップＳ１０００に進む。
【００３６】
（ホ）ステップＳ５００において、アモルファス層中の衝突相手の原子を設定する。設定条件としては、J.P.Biersack,and L.G.Haggmark.Nucl.Inst.Meth.,257,814(1980)に詳しく記載されている。本発明と対比する必要がないので、詳細な説明は省略する。
【００３７】
（へ）ステップＳ６００において、単結晶シリコン中の衝突相手の原子を設定する。シリコンが結晶欠陥を含む場合は、欠陥の密度に比例して、アモルファス層での取扱い、つまりステップＳ５００と似たステップを行うが、詳細な説明は省略し、シリコンの完全結晶体における衝突相手の原子（衝突原子）を設定する場合について、説明を続ける。
【００３８】
（ト）次に、ステップＳ７００において、衝突計算部１４により、設定された衝突原子と試行粒子との衝突計算を実行し、試行粒子の位置と運動量を衝突後の値に更新する。
【００３９】
（チ）次に、ステップＳ８００において、衝突後の試行粒子が停止したか否かを調べる。停止していない場合（ステップＳ８００においてＮＯ）、Ｓ３００に戻る。停止した場合（ステップＳ８００においてＹＥＳ）、Ｓ９００に進む。
【００４０】
（リ）次に、ステップＳ９００において、試行粒子の停止位置をデータ記憶部３内に記憶する。停止位置を直接記憶した場合、膨大な試行粒子の数だけの記憶領域が必要となる。必要な記憶領域を小さくするために、通常、ターゲット全体を細かく離散化した離散化領域を用意しておき、離散化領域毎に濃度を設定し、その濃度を増やす。濃度の増分は、試行粒子が代表する現実の注入原子の数を対応する離散化領域の体積で割ることで得られる。
【００４１】
（ヌ）次に、ステップＳ１０００において、指定した試行粒子数まで計算したか否かを調べる。即ち、総ての試行粒子をターゲット中に注射させたか否かを調べる。指定した試行粒子数まで達成していない場合（ステップＳ１０００においてＮＯ）、ステップＳ２００に戻る。指定した試行粒子数まで達成した場合（ステップＳ１０００においてＹＥＳ）、シミュレーションは終了になる。
【００４２】
図３及び図４は、図２のステップＳ６００の詳細な手順を示すフローチャートである。図３及び図４に示したフローチャートは、互いに関係の無い異なる手順を示すものではなく、図３に示したフローチャートの終わりが、図４に示したフローチャートの初めにつながることで、ステップＳ６００の詳細な手順を示す１つのフローチャートを構成している。
【００４３】
（１）図２のステップＳ３００の後に、まず、ステップＳ６０１において、試行粒子の「結晶座標系」における位置を求める。試行粒子の位置は、通常、ターゲットの形状を表しているシミュレーション座標系で表される。しかしここでは、結晶原子に対する試行粒子の相対位置を容易に計算するために、試行粒子の位置を、結晶の単位胞の３辺の方向と長さを持った３ベクトルａ，ｂ，ｃを基本ベクトルとした「結晶座標系」で表す。つまり、試行粒子の位置Ｐを、実数、ｊｘ、ｋｘ、ｍｘを用いて、
Ｐ＝ｊｘａ＋ｋｘｂ＋ｍｘｃ                      ・・・（１）
と表す。ただし、数値計算上の桁落ちを防ぐために、原点を入射地点近くに置く。具体的には、入射地点Ｐ０を０以上１以下の一様乱数ｊｘ０、ｋｘ０、ｍｘ０を用いて以下のように表す。
【００４４】
Ｐ０＝ｊｘ０ａ＋ｋｘ０ｂ＋ｍｘ０ｃ              ・・・（２）
一方、結晶原子の振動中心位置Ｔijkmは、
Ｔijkm＝ｔｉ＋ｊａ＋ｋｂ＋ｍｃ                  ・・・（３）
と表せる。ここで、ｉは１から単位胞中に含まれる原子の数までの整数で、ｊ、ｋ、ｍは任意整数である。ｔｉは、結晶シリコンの場合、以下のように取ることができる。
【００４５】
ｔ１＝０／４ａ＋０／４ｂ＋０／４ｃ              ・・・（４）
ｔ２＝１／４ａ＋１／４ｂ＋１／４ｃ            ・・・（５）
ｔ３＝２／４ａ＋２／４ｂ＋０／４ｃ            ・・・（６）
ｔ４＝３／４ａ＋３／４ｂ＋１／４ｃ            ・・・（７）
ｔ５＝０／４ａ＋２／４ｂ＋２／４ｃ            ・・・（８）
ｔ６＝１／４ａ＋３／４ｂ＋３／４ｃ            ・・・（９）
ｔ７＝２／４ａ＋０／４ｂ＋２／４ｃ            ・・・（１０）
ｔ８＝３／４ａ＋１／４ｂ＋３／４ｃ            ・・・（１１）
（２）次に、ステップＳ６０２において、試行粒子の居る単位胞中の位置を複数のベーシックセル毎に分類する。ベーシックセルは単位胞の各辺について８分割したものであり、１つの単位胞を合計８３個のベーシックセルに分類する。M.Posselt,Radiat.Eff.and Defects in Solids.130-131,87(1994)では、図１１（ａ）に示した単位胞の３辺を２等分して、１つの単位胞を合計２３個のベーシックセル１６、１７に分類した。このベーシックセルは、図１１（ｂ）及び図１１（ｃ）に示した２種類の構造をもったものである。後のステップＳ６０４において、衝突する可能性のある原子のリストが、これらのベーシックセルに居る試行粒子毎に用意される。よって、２分割（従来例）よりも８分割（本発明）の方が位置条件ごとに用意する原子の数が少なくて済み、最終的な計算時間が短くなる。但し、ベーシックセルを、後のステップＳ６０４において示すＶｍ（熱振動変位の余裕）のような予期される原子の熱振動変位幅より著しく細かく分類しても、原子の数は減らない。ベーシックセルの種類が莫大な量になり、実行時に多量のメモリを必要となるだけである。結晶シリコンでは、８分割程度が妥当である。
【００４６】
（３）次に、ステップＳ６０３において、試行粒子の進行方向単位ベクトルλを分類分けする。例えば図１０に示すように、進行方向単位ベクトルλをａ軸方向の極軸とする極座標系で方位角φ及び動径角θをともに４５度づつの領域毎に分類すればよい。極座標系は、シミュレーション座標系に固定しても構わない。しかし、極座標系を結晶座標系に固定した方が、後のＳ６０４で使うリスト（データベース１５から参照される原子のリスト）を固定化できる長所がある。ステップＳ６０３及びステップＳ６０３に対応した次のステップＳ６０４が、請求項１に係る発明の特徴部分に相当する。
【００４７】
（４）次に、ステップＳ６０４において、ステップＳ６０２で得られた試行粒子の居るベーシックセルと、ステップＳ６０３で得られた試行粒子の進行方向の分類分けの両方から特定できる衝突可能性のある原子の位置をデータベース１５から参照する。ここで「位置」とは、ベーシックセルを基準とした相対的なものである。また、衝突可能性のある原子の位置は、「リスト」として参照される。この原子のリストは、試行粒子の衝突点がベーシックセル内にある原子に限れば、ベーシックセルの周りに厚さｐmax＋Ｖｍの領域を付加した領域に居る原子のリストになる。試行粒子の衝突点は、図１３において、衝突原子Ｔ３から試行粒子１９の進行方向へ下ろした垂線の付け根となる点である。ここで、ｐmaxは予め衝突したとみなす最大の衝突パラメータで、ｄ／２が良く用いられる。Ｖｍは熱振動変位による余裕である。M.Posselt,Radiat.Eff.and Defects in Solids.130-131,87(1994)によれば、リストに載る原子は以下に示すようになる。即ち、リストに載る原子は、図１１（ｂ）に示したベーシックセル１６については、図１２（ａ）に示すように、黒、白、及び斜線のハッチングの３種類の丸印で示した合計１７個の原子であり、図１１（ｃ）に示したベーシックセル１７については、図１２（ｂ）に示すように、黒、白、及び斜線のハッチングの３種類の丸印で示した合計１８個の原子である。ベーシックセルを小さくすると、リストに載る原子の数は小さくなる。さらに、試行粒子の進行方向による場合分けを組み合わせることで、リストに載る原子の数はさらに少なくなる。
【００４８】
（５）次に、ステップＳ６０５において、リストに載る原子の中からｉ番目の原子を選び出す。ここで、リストに載る原子の数がｎ個であり、各原子に１〜ｎまでの番号が付されているとすると、ｉ番目の原子として、１、２、３、・・・・、ｎの番号が付された原子を順に選び出す。
【００４９】
（６）次に、ステップＳ６０６において、ｉ番目の原子の熱振動変位Ｄｉが未設定であるか否かを判定する。熱振動変位Ｄｉが未設定である場合（ステップＳ６０６においてＹＥＳ）、ステップＳ６０７へ進む。熱振動変位Ｄｉが未設定でない、つまり既に設定されている場合（ステップＳ６０６においてＮＯ）、ステップＳ６０８へ進む。
【００５０】
ここで、原子の熱振動速度は試行粒子の速度に比べると無視できるので、一度設定した原子の熱振動変位は再設定しない。再設定を防ぐには熱振動変位の記憶が必要である。試行粒子の周りの一辺が凡そ１．５ｄ（ｄは格子定数で単位胞の一辺に相当する）の立方体の範囲で原子の熱振動変位を記憶していれば、十分な計算結果が得られる。ステップＳ６０６は、通常、試行粒子が隣のベーシックセルに移動するかしないか毎に実行される。このため、以前に試行粒子が居たベーシックセルにおいて参照されたリストのどちらにも含まれる原子がある。これらの原子は、以前に試行粒子が居たベーシックセルにおいて参照されたリストに載っており、既に熱振動変位が設定されている。従って、ステップＳ６０７において再度熱振動変位を設定しないように、ステップＳ６０６においてこれらの既設定の原子を選別する。
【００５１】
（７）次に、ステップＳ６０７において、熱振動変位設定部１１により、ｉ番目の原子の熱振動変位Ｄｉを設定し、熱振動変位Ｄｉをデータ記憶部３内に記憶する。
【００５２】
（８）次に、ステップＳ６０８において、すべての原子についてステップＳ６０５を実行したか否かを判定する。つまり、ステップＳ６０５において、ｉ番目の原子として、１〜ｎ番目の原子が総て選ばれたか否かを判定する。総ての原子について実行されていない場合（ステップＳ６０８においてＮＯ）、ステップＳ６０５に戻り、実行されていないｉ番目の原子について選択し、上記ステップを実行する。総ての原子について実行された場合（ステップＳ６０８においてＹＥＳ）、図４に示すステップＳ６０９へ進む。
【００５３】
ステップＳ６０５乃至Ｓ６０８のループを繰り返すことで、データベース１５から参照される原子の内、熱振動変位が未設定のものについて、熱振動変位を設定することができる。
【００５４】
（９）次に、図４に示すステップＳ６０９において、再び、リストに載る原子の中からｉ番目の原子を選び出す。
【００５５】
（１０）次に、ステップＳ６１０において、ｉ番目の原子の位置Ｔｉ＋Ｄｉに関する衝突パラメータｐｉ＝｜（Ｔｉ＋Ｄｉ−Ｐ）×λ｜と、自由飛行距離ηｉ＝｜（Ｔｉ＋Ｄｉ−Ｐ）・λ｜を計算する。ここで、λは試行粒子の進行方向への単位ベクトルである。
【００５６】
（１１）次に、ステップＳ６１１において、ｉ番目の原子の衝突パラメータｐｉが予め設定された衝突パラメータ最大値ｐmaxよりも小さく、且つ自由飛行距離ηｉが自由飛行距離の最小値ηminよりも小さい正値であるか否かを判定する。上記条件を満たす場合（ステップＳ６１１においてＹＥＳ）、ステップＳ６１２へ進む。上記条件を満たさない場合（ステップＳ６１１においてＮＯ）、ステップＳ６１３へ進む。
【００５７】
（１２）次に、ステップＳ６１２において、ステップＳ６１１の条件を満たす場合、衝突原子をｉ番目の原子に更新し、自由飛行距離ηminをｉ番目の原子の自由飛行距離ηｉに更新する。つまり、ステップＳ６１２では、ｐｉ＜ｐmax、且つ０＜ηｉ＜ηminであれば、記憶している衝突原子をｉ番目の原子に更新し、ηmin＝ηｉを記憶しなおす。
【００５８】
（１３）次に、ステップＳ６１３において、すべての原子についてステップＳ６０９を実行したか否かを判定する。つまり、ステップＳ６０９において、ｉ番目の原子として、１〜ｎ番目の原子が総て選ばれたか否かを判定する。総ての原子について実行されていない場合（ステップＳ６１３においてＮＯ）、ステップＳ６０９に戻り、実行されていないｉ番目の原子について選択し、上記ステップを実行する。総ての原子について実行された場合（ステップＳ６１３においてＹＥＳ）、図２に示すステップＳ７００へ進む。
【００５９】
ステップＳ６０９乃至Ｓ６１３のループを繰り返すことで、データベース１５から参照される原子について、衝突パラメータｐと自由飛行距離ηを効率的に計算することができる。また、データベース１５から参照される原子の中から、衝突パラメータｐが予め設定された衝突パラメータ最大値ｐmaxよりも小さく、且つ自由飛行距離ηが最小の正の値を持つ原子を衝突原子として選択することができる。例えば、図１１のようなリストの原子（Ｔ１〜Ｔ５）の中で、もっとも小さい正の自由飛行距離ηをもち、ｐ＜ｐmaxの範囲にある原子Ｔ３を選ぶことになる。
【００６０】
本発明の第１の実施の形態によれば、ベーシックセル分類部８を用いてシリコン結晶の格子定数ｄの１／８を一辺とするベーシックセル毎に試行粒子の位置を細分化し、進行方向分類部９を用いて試行粒子の進行方向を分類するすることで、試行粒子と衝突する可能性がある原子の数を従来に比して６２％に減らすことができる。したがって、熱振動変位を設定する原子の数も６２％に減少するため、シミュレーション時間の凡そ半分を占める衝突相手の検索時間を大幅に短縮され、効率のよいシミュレーション作業を行うことできる。
【００６１】
本発明の第１の実施の形態において、ベーシックセルを一辺の長さがｄ／８であったが、ベーシックセルの一辺の長さはｄ／８に限られるわけではなく他の数値であっても構わない。ベーシックセルの一辺の長さは、図２のステップＳ１００において、ターゲット構造、注入条件、試行粒子数と共に操作者がその数値を設定するようにしてもよい。同様に、試行粒子の進行方向を４５度毎に分類したが、４５度に限られるわけではなく、他の数値であっても構わず、操作者が所望の数値を設定するようにしてもよい。
【００６２】
（第２の実施の形態）
第１の実施の形態では、ステップＳ６０４において、試行粒子の衝突点がベーシックセル内にある原子を探すためのリストを参照していたが、試行粒子の衝突点がベーシックセル内にある原子だけでは、必ず衝突する原子が最終的に見つかるとは限らない。第２の実施の形態では、さらに衝突点がベーシックセル外になる原子を探すためのリストを参照する場合について説明する。第２の実施の形態に係るモンテカルロイオン注入シミュレータは、図１に示した構成を有する。シミュレータ内の衝突可能性原子選択部１０は、試行粒子が居るベーシックセルと試行粒子の進行方向の分類から特定され、且つ衝突点が試行粒子が居るベーシックセル内に限らず、衝突点が試行粒子が居るベーシックセル外にある原子の位置をデータベース１５から参照する。その他の構成要素は、第１の実施の形態に係るシミュレータと同じである。
【００６３】
衝突点がベーシックセル外になる原子を探すためのリストは、ステップＳ６０２及びステップＳ６０３の双方による組合わせ分類毎に、その同一分類される総ての位置Ｐ、及び進行方向単位ベクトルλの試行粒子について、以下の２条件の何れかを満たす原子の和集合を取ることで作成できる。
【００６４】
（ａ）Ｖｍ以下の熱振動変位なら、必ず衝突する熱振動中心位置Ｔを持つ原子。即ち、
衝突パラメータｐ＝｜（Ｔ−Ｐ）×λ｜＜ｐmax＋Ｖｍを満たし、
且つ、自由飛行距離η＝｜（Ｔ−Ｐ）・λ｜＞Ｖｍを満たす原子の中で 、他の原子より最小の値ηminｌを持つ原子。
【００６５】
（ｂ）Ｖｍ以下の熱振動変位なら、衝突する場合がある熱振動中心位置Ｔを持つ原子。即ち、
衝突パラメータｐ＝｜（Ｔ−Ｐ）×λ｜＜ｐmax＋Ｖｍを満たし、
且つ、自由飛行距離η＝｜（Ｔ−Ｐ）・λ｜が−Ｖｍ＜η＜ηmin１＋Ｖｍとなる原子。
【００６６】
ここで、Ｖｍ＝ｄ／１０、ベーシックセルの一辺をｄ／８とした場合、リストに載る原子の数は平均１１個にすることができ、しかも、１度のベーシックセル内の検索で必ず衝突原子を見つけることができる。
【００６７】
このように、衝突点がベーシックセル外になる原子を探すには、隣のベーシックセルについて検索しなくてはならない。この検索を一時に行うように、衝突点がベーシックセル外になる原子をも含めて、リストを用意すると、より効率的に衝突原子を探すことができる。
【００６８】
なお、「熱振動変位の余裕Ｖｍ」をｄ／１０としたが、これに限られるわけではなく、他の数値であっても構わない。操作者が熱振動変位の余裕をステップＳ１００において設定するようにしてもよい。
【００６９】
（第３の実施の形態）
図５及び図６は、本発明の第３の実施の形態に係るモンテカルロイオン注入シミュレーション方法を示すフローチャートである。また、図５及び図６は、図２のステップＳ６００の詳細な手順を示すフローチャートである。図５及び図６に示したフローチャートは、互いに関係の無い異なる手順を示すものではなく、図５に示したフローチャートの終わりが、図６に示したフローチャートの初めにつながることで、ステップＳ６００の詳細な手順を示す１つのフローチャートを構成している。図３及び図４に比して、同一ステップには同一符号を付してある。
【００７０】
（イ）図２のステップＳ３００の後に、まず、図５に示すステップＳ６０１において、試行粒子の「結晶座標系」における位置を求める。
【００７１】
（ロ）次に、ステップＳ６０２において、試行粒子の居る単位胞中の位置を複数のベーシックセル毎に分類する。ベーシックセルは単位胞の各辺について８分割したものであり、１つの単位胞を合計８３個のベーシックセルに分類する。
【００７２】
（ハ）次に、ステップＳ６０３において、試行粒子の進行方向単位ベクトルλを分類分けする。
【００７３】
（ニ）次に、ステップＳ６０４において、ステップＳ６０２で得られた試行粒子の居るベーシックセルと、ステップＳ６０３で得られた試行粒子の進行方向の分類の両方から特定できる衝突可能性のある原子の位置をデータベース１５から参照する。
【００７４】
（ホ）次に、図６に示すステップＳ６０５において、リストに載る原子の中からｉ番目の原子を選び出す。
【００７５】
（へ）次に、ステップＳ６０６において、ｉ番目の原子の熱振動変位Ｄｉが未設定であるか否かを判定する。熱振動変位Ｄｉが未設定である場合（ステップＳ６０６においてＹＥＳ）、ステップＳ６５０へ進む。熱振動変位Ｄｉが未設定でない、つまり既に設定されている場合（ステップＳ６０６においてＮＯ）、ステップＳ６１０へ進む。
【００７６】
（ト）次に、ステップＳ６５０において、データベース１５から参照される原子の内、熱振動変位が未設定のものについて、ある程度大きな熱振動変位Ｖｍ以下の熱振動変位を設定したときに衝突する可能性があるか否かを判定する。衝突する可能性がある場合（ステップＳ６５０においてＹＥＳ）、ステップＳ６０７へ進む。衝突する可能性がない場合（ステップＳ６５０においてＮＯ）、ステップＳ６１３へ進む。
【００７７】
具体的には、衝突パラメータｐについて、ｐ＝｜（Ｔ−Ｐ）×λ｜＜ｐmax＋Ｖｍのうちで、自由飛行距離η＝｜（Ｔ−Ｐ）・λ｜が−Ｖｍ＜η＜ηmin＋Ｖｍとなるか否かを判定する。ここで、ηminは、ステップＳ６１２でリスト中の原子について順次設定される衝突原子の自由飛行距離である。設定されていない場合はηmin＝∞で上限はない。ステップＳ６５０は、ある程度大きい振動変位Ｖｍをしても衝突する可能性が無い原子は、ステップＳ６０７の熱振動変位の設定・記憶を行わないようにする役割をする。例えば、ｐmax＝ｄ／２、Ｖｍ＝ｄ／１０とすると、図７に示すように熱振動変位を設定する原子が存在する範囲２１は、試行粒子の進行方向軸を中心とした半径ｄ／２＋ｄ／１０＝１．２×ｄ／２の同心円に絞り込むことができる。つまり、この範囲２１内の原子がリストに留められる。この範囲２１の面積は、π（１．２×ｄ／２）２≒４．５２×（ｄ／２）２であり、図１４に示した従来における熱振動変位設定範囲２２の面積（８．１４×（ｄ／２）２乃至９．３８×（ｄ／２）２）の約半分に相当する。したがって、熱振動変位を設定する原子の数を従来の約半分程度にまで減らすことができる。
【００７８】
（チ）次に、ステップＳ６０７において、熱振動変位設定部１１により、ｉ番目の原子の熱振動変位Ｄｉを設定し、データ記憶部３内に記憶する。
【００７９】
（リ）次に、ステップＳ６１０において、ｉ番目の原子の位置Ｔｉ＋Ｄｉに関する衝突パラメータｐｉ＝｜（Ｔｉ＋Ｄｉ−Ｐ）×λ｜と自由飛行距離ηｉ＝｜（Ｔｉ＋Ｄｉ−Ｐ）・λ｜を計算する。
【００８０】
（ヌ）次に、ステップＳ６１１において、ｉ番目の原子の衝突パラメータｐｉが予め設定された衝突パラメータ最大値ｐmaxよりも小さく、且つ自由飛行距離ηが自由飛行距離の最小値ηminよりも小さいか否かを判定する。上記条件を満たす場合（ステップＳ６１１においてＹＥＳ）、ステップＳ６１２へ進む。上記条件を満たさない場合（ステップＳ６１１においてＮＯ）、ステップＳ６１３へ進む。
【００８１】
具体的には、リスト中のｉ番目の原子の位置Ｔｉ＋ｄｉについて、
ｐｉ＝｜（Ｔｉ＋ｄｉ−Ｐ）×λ｜＜ｐmaxであり、且つ、
自由飛行距離ηｉ＝｜（Ｔｉ＋ｄｉ−Ｐ）・λ｜が、０＜ηｉ＜ηmin
ならば衝突すると判断する。
【００８２】
（ル）次に、ステップＳ６１２において、ステップＳ６１１の条件を満たす場合、衝突原子をｉ番目の原子に更新し、自由飛行距離ηminを番目の原子の自由飛行距離ηｉに更新する。
【００８３】
（ヲ）次に、ステップＳ６１３において、すべての原子についてステップＳ６０５を実行したか否かを判定する。つまり、ステップＳ６０５において、ｉ番目の原子として、１〜ｎ番目の原子が総て選ばれたか否かを判定する。総ての原子について実行されていない場合（ステップＳ６１３においてＮＯ）、ステップＳ６０５に戻り、実行されていないｉ番目の原子について選択し、上記ステップを実行する。総ての原子について実行された場合（ステップＳ６１３においてＹＥＳ）、図２に示すステップＳ７００へ進む。
【００８４】
第３の実施の形態によれば、ステップＳ６０７（熱振動変位の設定・記憶）の前に、ステップＳ６５０において、リストに載る原子が、ある程度大きい熱振動変位したときも含めて衝突可能性があるか否かを判断することで、熱振動変位を設定し、衝突パラメータ・自由飛行距離を計算する原子の数をさらに減らすことができる。特に、ステップＳ６０２におけるベーシックセル毎の分類数が少なかったり、ステップＳ６０３における進行方向の分類分けを省略したために、ステップ６０４において得られるリストに載る原子の数が比較的多い場合に有効である。
【００８５】
（第４の実施の形態）
本発明の第４の実施の形態においては、第１乃至第３の実施の形態で説明したプロセスシミュレーションにより得られた結果を考慮して行うイオン注入工程を含む半導体装置の製造方法について図９を参照して説明する。図９は、本発明の第４の実施の形態に係る半導体装置の製造方法を示すフローチャートである。
【００８６】
（イ）まず、ステップＳ２１において、製造する半導体装置にどのような入力が入ってきて、どのような出力を出すことを期待されているか、つまり、半導体装置の機能を明らかにする。そして、その機能を生み出すためのロジックやメモリ、Ｉ／Ｏ（入出力回路）など各部の機能を互いのつながりが決める、いわゆる機能設計を行う。
【００８７】
（ロ）次に、ステップＳ２２において、各部の機能を実現する具体的な電子回路（論理回路）を設計する。設計された論理回路に対して回路シミュレーションを行って、回路全体の性能を検証する。シミュレーション結果は、論理設計にフィードバックされ、論理回路の誤りが修正される。
【００８８】
（ハ）次に、ステップＳ２３において、論理回路の演算子を実際のトランジスタの基本回路に置き換える回路設計を行う。回路設計においても、論理設計と同様にシミュレーション作業による回路の検証を行い、フィードバックループを形成する。
【００８９】
（ニ）次に、ステップＳ２４において、半導体チップ上にトランジスタを空間的にどのように配置し、どのように配線して接続するか、つまり半導体装置のレイアウトを設計する。具体的には、操作者がトランジスタの回路図を自動配置配線ツールに入力し、自動配置配線ツールは、所望の性能を確保しつつ、チップ面積が最小になるようなレイアウトパターンを出力する。設計されたレイアウトパターンに対して、回路図との整合性が検証され、電気的なルール、デザインルールなどのルール違反の有無を所定のルールチェッカを用いて検証する。
【００９０】
（ホ）次に、ステップＳ２５において、レイアウトされたトランジスタ形状、及びそれらの配置形状を実現するためのマスクパターン、プロセスフロー（製造手順、製造条件）などを設計する。
【００９１】
（へ）次に、ステップＳ２６において、半導体基板から半導体装置が製造されるまでの各製造工程のプロセスシミュレーションを行う。シミュレーションの結果、半導体装置中の不純物の分布、あるいは半導体装置の構成要素の幾何学的な形状等を求めることができる。なお、プロセスシミュレーションは、各製造工程ごとに個別に行われ、各シミュレーション結果は、マスクパターン、プロセスフローの設計にフィードバックされ、マスクパターン、プロセスフローの過誤が修正される。シミュレーションされる製造工程としては、酸化処理工程、イオン注入工程、熱拡散工程、成膜工程、エッチング工程、ＣＭＰ工程などがあり、このうち、イオン注入工程のプロセスシミュレーションを、第１あるいは第２の実施の形態で説明したモンテカルロイオン注入シミュレータを用いて実施する。なお、計算時間を短縮するために、第１あるいは第２の実施形態で説明したモンテカルロイオン注入シミュレータの計算結果に基づいて抽出された分布パラメータを元に解析モデルによってシミュレーションしてもよい。ここで、イオン注入による注入不純物をシミュレーションする手段として、通常、二体衝突近似のモンテカルロシミュレーション方法、或いは、解析モデルシミュレーションを用いる。前者は、ターゲット形状や注入条件に対する汎用性が高く、予測精度も高いが、計算時間がかかる。後者は、注入濃度分布の中心位置や標準偏差などの分布パラメータを元に濃度分布を形成する手法で、計算時間は前者と比べて短いが、分布パラメータは、モンテカルロイオン注入シミュレーション或いは、実験によって求めなくてはならない。
【００９２】
（ト）次に、ステップＳ２７において、プロセスシミュレーションによって得られた結果をデバイスシミュレーションに入力して、半導体デバイスの電気的な特性を検証する。所望の性能が実現されていなければ、ステップＳ２１乃至Ｓ２５の各種設計段階に検証結果がフィードバックされ、フィードバックされた各種設計をやり直す。
【００９３】
（チ）次に、ステップＳ２８において、設計されたマスクパターンをもとに、実寸の５乃至１０倍の大きさを持つマスク（レチクル）を製作する。以上のステップＳ２１乃至Ｓ２８をもって設計段階が終了し、ステップＳ２９以降の製造段階に進む。
【００９４】
（リ）ステップＳ２９において、半導体ウェハが製造ラインに投入され、製作されたマスクを用い、設計されたプロセスフローにしたがって、酸化処理工程、イオン注入工程、熱拡散工程、成膜工程、エッチング工程、ＣＭＰ工程等がウェハに対して施され、一連のウェハ処理工程が行われる。
【００９５】
（ヌ）次に、ステップＳ３０において、ウェハ状態の多数の半導体チップに対して、プローバを電極パッドに当てて、半導体チップの電気特性を検査する。
【００９６】
（ル）次に、ステップＳ３１において、半導体チップを分割し、検査を通過した半導体チップをリードフレーム上に接着固定し、ボンディングワイヤにより電気的に接続する。そして、エポキシ樹脂、セラミックなどを用いて半導体チップ、リードフレーム、ボンディングワイヤを被覆して外部環境から保護する。以上の工程を経て、半導体装置を製造することができる。
【００９７】
以上説明したように本発明の第４の実施の形態によれば、第１乃至第３の実施の形態で説明したモンテカルロイオン注入シミュレーションの結果を考慮してイオン注入工程の製造条件を設定することで、プロセスフローの設計時間を大幅に短縮することができる。また、シミュレーション結果を設計にフィードバックさせることで、過誤の少ない設計を行うことができる。したがって、設計・開発期間の短い、半導体装置の製造方法を提供することができる。
【００９８】
なお、本発明の第４の実施の形態において、イオン注入工程のシミュレーション結果をマスクパターン、プロセスフローの設計にフィードバックをかけたが、これに限らず、その前のレイアウト設計、回路設計などにかけても構わない。
【００９９】
【発明の効果】
以上説明したように、本発明によれば、衝突相手を探索する計算量を削減して、計算時間の短縮を実現するモンテカルロイオン注入シミュレーション方法、モンテカルロイオン注入シミュレータ、及びモンテカルロイオン注入シミュレーションプログラムを格納した記録媒体を提供することができる。
【０１００】
また本発明によれば、設計開発期間の短い半導体装置の製造方法を提供することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態に係るモンテカルロイオン注入シミュレータの構成を示すブロック図である。
【図２】本発明の第１の実施の形態に係るモンテカルロイオン注入シミュレーション方法を示すフローチャートである。
【図３】本発明の第１の実施の形態に係り、図２に示したステップＳ６００の詳細な構成を示すフローチャートである（その１）。
【図４】本発明の第１の実施の形態に係り、図２に示したステップＳ６００の詳細な構成を示すフローチャートである（その２）。
【図５】本発明の第３の実施の形態に係り、図２に示したステップＳ６００の詳細な構成を示すフローチャートである（その１）。
【図６】本発明の第３の実施の形態に係り、図２に示したステップＳ６００の詳細な構成を示すフローチャートである（その２）。
【図７】第３の実施の形態に係るプロセスシミュレーション方法において、原子の熱振動変位を設定する範囲を示す断面図である。
【図８】図８は、記録媒体に格納された第１及び第２の実施の形態に係るプロセスシミュレーションプログラムを読み取り、そこに記述された手順に従って、プロセスシミュレーションシステムを実現するコンピュータシステムからなるプロセスシミュレータの一例を示す外観図である。
【図９】本発明の第４の実施の形態に係り、プロセスシミュレーションの結果を考慮して行うイオン注入工程を含む半導体装置の製造方法を示すフローチャートである。
【図１０】試行粒子の進行方向を分類分けする方法を説明する図である。
【図１１】図１１（ａ）は、ダイヤモンド構造を有するシリコン結晶の格子原子の配置を示す斜視図である。図１１（ｂ）は、一辺の長さが格子定数の１／２である第１のベーシックセルの原子配置を示す斜視図である。図１１（ｃ）は、一辺の長さが格子定数の１／２である第２のベーシックセルの原子配置を示す斜視図である。
【図１２】図１２（ａ）は、試行粒子が第１のベーシックセルに属する場合の試行イオンと衝突する可能性がある原子を示す斜視図である。図１２（ｂ）は、試行イオンが第２のベーシックセルに属する場合の試行イオンと衝突する可能性がある原子を示す斜視図である。
【図１３】衝突相手となる原子の探し方を説明するための衝突概念図である。
【図１４】従来技術に係る熱振動変位を設定する範囲を示す断面図である。
【図１５】試行粒子とターゲット原子との衝突における「衝突点」の定義を示す衝突概念図である。
【符号の説明】
１    制御処理部
２    プログラム記憶部
３    データ記憶部
４    注入分布表示部
５    入力装置
６    出力装置
７    処理開始部
８    ベーシックセル分類部
９    進行方向分類部
１０    衝突可能性原子選択部
１１    熱振動変位設定部
１２    衝突パラメータ・自由飛行距離計算部
１３    衝突原子選択部
１４    衝突計算部
１５    データベース
１６    第１のベーシックセル
１７    第２のベーシックセル
１８    衝突候補原子
１９、２３    試行粒子
２０    ベーシックセルの面
２１、２２    熱振動変位設定範囲
Ｔ１〜５    衝突候補原子
【図１】
0003787060.tif 000002
【図２】
0003787060.tif 000003
【図３】
0003787060.tif 000004
【図４】
0003787060.tif 000005
【図５】
0003787060.tif 000006
【図６】
0003787060.tif 000007
【図７】
0003787060.tif 000008
【図８】
0003787060.tif 000009
【図９】
0003787060.tif 000010
【図１０】
0003787060.tif 000011
【図１１】
0003787060.tif 000012
【図１２】
0003787060.tif 000013
【図１３】
0003787060.tif 000014
【図１４】
0003787060.tif 000015
【図１５】
0003787060.tif 000016