Tour
- 3. Client Only
目 次
1 Selete TCADシステムHyENEXSS概要、変更点 注意事項 制限事項.........................................................7
1.1 1st tour in HyENEXSSの概要 ...........................................................................................7
1.2 前版からの変更点 .............................................................................................................8
1.3 使用上の注意事項........................................................................................................... 11
1.4 制限事項.........................................................................................................................20
2 Selete TCADシステムHyENEXSSのインストール方法...................................................................................... 21
2.1 動作環境及びとインストール方法概要 ..............................................................................21
2.2 HyENEXSSのインストールの準備 ...................................................................................22
2.3 インストールの実行..........................................................................................................23
2.4 実行環境の設定 ..............................................................................................................28
2.5 インストール後のディレクトリ構成......................................................................................28
3 プロセスシミュレータHySyProSの実行 .................................................................................................................... 29
3.1 インストールチェック用例題のコピー .................................................................................29
3.2 HySyProSの実行 ............................................................................................................29
3.3 計算結果の表示 ..............................................................................................................30
4 デバイスシミュレータHyDeLEOSの実行.................................................................................................................. 34
4.1 HyDeLEOSのコマンドラインによる実行............................................................................34
4.2 sgplotによる計算結果の表示 ...........................................................................................34
5 モンテカルロ・デバイスシミュレータの実行 ............................................................................................................ 40
5.1 一粒子モンテカルロシミュレータmc1pの実行 ....................................................................40
5.2 デバイスモンテカルロシミュレータdeleos_mcの実行 .........................................................41
5.3 バンド計算プログラム(band_calc)の実行方法 ..................................................................42
5.4 粒子表示プログラムmcpvの実行方法 ..............................................................................43
6 グラフィックスシステムsgplotの使用方法 ............................................................................................................... 45
6.1 sgplotの起動と終了 .........................................................................................................45
6.2 ファイルの種類 ................................................................................................................46
6.3 ツールバーのアイコン説明 ...............................................................................................46
6.4 データ読み込みと結果表示 ..............................................................................................46
6.5 3Dグラフからの断面(2D)切り出し、一次元(1D)抽出 .......................................................50
6.6 表示方法の切り替え ........................................................................................................52
3
1st tour in ENEXSS ver.5.5
- 4. Client Only
6.7 IVカーブの表示 .............................................................................................................54
6.8 鳥瞰図の表示..................................................................................................................56
7 ジョブデータベースJobDBの使用方法..................................................................................................................... 59
7.1 初期設定.........................................................................................................................59
7.2 エージェントサーバーの起動.............................................................................................60
7.3 GUIからの条件振り実行 ..................................................................................................60
7.4 可視化スクリプトのカスタマイズ ........................................................................................69
8 プロセス条件最適化........................................................................................................................................................ 81
8.1 実験計画の設定とジョブ実行............................................................................................81
8.2 プロセス条件の最適化、ばらつき解析 と 歩留り最大化....................................................90
9 インバースモデリングの実行 ....................................................................................................................................... 96
9.1 抽出の流れ .....................................................................................................................96
9.2 必要ファイルの準備 .........................................................................................................96
9.3 ストラテジファイル(「処理記述ファイル」)の説明................................................................100
9.4 実行方法.......................................................................................................................102
9.5 実行結果.......................................................................................................................102
9.6 抽出結果の確認 ............................................................................................................104
10 TCADデータベースHyPRADAの使用方法とイオン注入パラメータ抽出 ..................................................107
10.1 TCADデータベースの動作チェック ..............................................................................107
サーバープログラムの起動 ........................................................................................................... 107
EWS版の動作チェック .................................................................................................................. 108
WWW版の動作チェック ................................................................................................................ 123
10.2 イオン注入パラメータ抽出機能の動作チェック .............................................................129
11 遺伝的アルゴリズムによるイオン注入パラメータ抽出 ....................................................................................142
1.1 プログラムの起動と終了.................................................................................................142
1.2 Single-Pearson型例題によるパラメータ抽出手順の説明 ................................................143
1.3 Dual-Pearson型例題の入力パラメータ設定と実行手順例 ...............................................152
12 汎用パラメータ抽出.......................................................................................................................................................157
13 配線容量シミュレーション............................................................................................................................................164
13.1 準備 ..........................................................................................................................164
13.2 マスクパターンの確認.................................................................................................165
13.3 HySyProSによる素子構造作成 ..................................................................................167
13.4 配線容量計算 ............................................................................................................172
4
1st tour in ENEXSS ver.5.5
- 5. Client Only
14 レイアウト表示プログラムGDSViewの使用方法................................................................................................177
14.1 GDSViewの使用例....................................................................................................177
14.2 GDSViewの終了 .......................................................................................................177
14.3 データ読み込みと表示................................................................................................177
14.4 切り取り操作 ..............................................................................................................182
14.5 レイヤー操作 .............................................................................................................186
14.6 切り出し時のPlainmode .............................................................................................188
15 汎用データ入力GUIの使用方法...............................................................................................................................191
15.1 例題ファイルの在り処とツールの起動、選択状態.........................................................191
15.2 プロセスの追加、コピー、移動、削除 ...........................................................................192
15.3 デフォルト値 ...............................................................................................................197
15.4 入力データのマクロ化 ................................................................................................198
15.5 入力データの依存性チェック .......................................................................................201
15.6 入力データのコメント化...............................................................................................202
15.7 選択メニューの階層化 ................................................................................................203
15.8 タブグループ機能 .......................................................................................................205
16 付録A テスト・応用例題 .............................................................................................................................................206
16.1 quick_check例題.......................................................................................................206
プロセスシミュレーションquick_check例題..................................................................................... 206
デバイスシミュレーションquick_check例題 .................................................................................... 206
16.2 ツール別テスト・応用例題 ...........................................................................................207
プロセスシミュレータHySyProS・応用例題..................................................................................... 207
デバイスシミュレータHyDeLEOSテスト・応用例題 ......................................................................... 216
モンテカルロ・デバイスシミュレータ・応用例題................................................................................ 233
グラフィックスSGraphテスト・応用例題........................................................................................... 237
ジョブデータベースJobDBテスト・応用例題 .................................................................................... 239
インバースモデリングinvmdlテスト・応用例題................................................................................. 240
GAによるイオン注入パラメータ抽出Engaimテスト・応用例題 ......................................................... 245
16.3 ツール共通テスト・応用例題........................................................................................246
3 次元CMOSインバータ テスト・応用例題..................................................................................... 246
STIMOS_45nテスト・応用例題...................................................................................................... 247
rsce逆短チャネル効果テスト・応用例題 ......................................................................................... 247
interconnect配線容量パラメータ抽出テスト・応用例題................................................................... 248
Mesh_variationsテスト・応用例題 ................................................................................................. 249
17 付録B TCADデータベースHyPRADAのデータ登録方法の概略 ...............................................................252
5
1st tour in ENEXSS ver.5.5
- 6. Client Only
17.1 データ登録のおおまかな手順 .....................................................................................252
17.2 実データファイルの作成..............................................................................................252
17.3 プロセス条件登録用CSVファイルの作成.....................................................................253
17.4 実データ登録用CSVファイルの作成............................................................................254
17.5 プロセスシーケンス登録用CSVファイルの作成............................................................254
17.6 データベースの作成 ...................................................................................................254
17.7 データの登録 .............................................................................................................255
17.8 環境ファイルの設定....................................................................................................255
18 履歴 .....................................................................................................................................................................................256
6
1st tour in ENEXSS ver.5.5
- 7. Client Only
1 Selete TCADシステムHyENEXSS概要、変更点 注意事項 制限事項
1.1 1st tour in HyENEXSS の概要
本ドキュメントは Selete(半導体先端テクノロジーズ)の TCAD システム HyENEXSS
(Hyper Environment for Exploration of Semiconductor Simulation ) ver.5.5 を
使用していただける方に、一通りの機能を体験いただくとともにインストール
上の問題がないかどうかも同時にチェックしていただく手順として作成されています。
なお、2009 年度から TCAD システム ENEXSS の正式名称を
HyENEXSS と変更しましたが、内部では通称名として ENEXSS と表記している
場合があることをご了承下さい。
HyENEXSS の概要を先ず、お知りになりたい方は、本ドキュメントとセットで
配布されている HyENEXSS-guide.pdf をご覧ください。マニュアルの概略一覧等が
記載されています。
インストール方法は、次章「Selete TCAD システム HyENEXSS のインストール
方法」をご覧ください。
本ドキュメントでは、HyENEXSS をインストールするディレクトリを
${ENEXSS} : HyENEXSS のインストールディレクトリ
として説明しています。HyENEXSS を /usr/enexss にインストールしている場合、
${ENEXSS}/quick_check
は、
/usr/enexss/quick_check
を表しているとして、読み替えてください。
また、” % ”は、UNIX プロンプトを表します。” % ”以降のコマンドを入力してください。
% ls -al
と記述している場合には、 ”ls -al” を入力してください。
本ドキュメントでは、ユーザーの login shell を csh 系(csh,tcsh など)を前提に
記述しています。Bourne Shell 系(bsh,bash など)をお使いの場合は、該当部分
を Bourne Shell 系設定に読み替えてください。
本ドキュメントのファイル tour.pdf は、DVD 配布媒体に含まれています。また、
インストール後は${ENEXSS}/doc/manual に格納されています。
本ドキュメント tour.pdf には、インストール方法やツール簡単な使用説明章
以外に、各ツール使用例題と応用例題の一覧リストの章を含めています。
HyENEXSS ご使用の際、本 1st_tour が役立つよう、先ずは、目を通して頂くよう
お願いします。
なお、1st_tour_supplement.pdf は、[Selete Confidential(Client Only)]部分を
記載した tour.pdf の別冊です。必要に応じ、ご覧ください。。
7
1st tour in ENEXSS ver.5.5
- 8. Client Only
1.2 前版からの変更点
○プロセス・シミュレータ HySyProS
v5.5.0 での追加機能
・応力計算について、4角錐を4面体2個に分割せずに4角錐のままの形状関数
を使用するように変更しました。境界条件は3種類が利用可能で、従来の固定
境界条件(fixed)、平坦性境界条件(planar)のほかに、強制変位(si_expand)
「Si 基板が熱膨張で一様に変形する」を追加しました。また剛性行列組み立て時
の誤りを修正しました。このため、従来より2~3割程度応力計算値が変わります。
さらに対称行列用の応力専用ソルバーを追加しました。従来の BiCGSTAB 法より
2倍程度、応力計算時間が短くなります。
・応力計算の形状関数を追加しました。応力計算での形状関数は1次より2次の方が
精度が良いことが知られています。特に HySyProS で用いる四面体要素では1次形状
関数を用いると変形モードが完全には再現できません。そのため、四面体要素は
変形しにくく、その影響で周囲の四面体以外の要素の変形が大きくなり、そちらの
応力値が極端に大きくなります。物理的に説明不可能な応力のピークが表れた場合、
2次形状関数で再計算し確認することを推奨します。ただし計算時間は数倍から
数十倍になります。
・不純物拡散シミュレーションでの行列組み立ての並列計算において、拡散での行列
組み立てを並列計算で処理できるようにしました。これにより組み立て計算速度が
2CPU で 2 倍弱、8CPU で 6 倍強高速になりました。並列ソルバーを使用する場合、
行列組み立ては自動的に並列で処理します。1CPU 用の従来ソルバーを使用する場合も
並列計算指定(parallel_on)をすれば行列組み立てを並列で処理します。
・非等方性真性応力入力機能に関して、薄膜酸化のような異方性の高い応力源を
デポで再現するために、デポの際に異方性の真性応力を指定できるようにしました。
deposit( ..., intrinsic_sxx=σxx, intrinsic_syy=σyy, intrinsic_szz=σzz)
指定しなかった方向の真性応力は 0 です。また従来の intrinsic_stress 指定も
有効であり、新機能との併用も可能です。併用した場合、intrinsic_sxx などで
指定されればその方向にはその指定値が、指定されなかった方向には
intrinsic_stress で指定した値が適用されます。
・CPU 番号指定による並列計算が可能となりました。ソルバーの並列計算を実行
する際、計算に使用するCPUを指定できるよう機能拡張しました。これにより、
並列ソルバーを使うプログラムを 2 つ以上起動した場合に CPU が衝突するのを
避けることができます。従来のCPU数指定(ncpu)に加え、CPU番号指定
(cpu_list)を選択できます。
・ver.5.3.0 と ver.5.4.0 で不具合のあった Mulvaney_full Model の Dopant-defect
cluster(DDC)の初期化に関するバグが修正されました。
・Uematsu Model の Dopant-defect cluster(DDC)の起動コマンドに関するバグが
修正されました。
8
1st tour in ENEXSS ver.5.5
- 9. Client Only
○デバイスシミュレータ HyDeLEOS
・CPU 番号指定による並列計算
ソルバーの並列計算を実行する際、計算に使用するCPUを指定できる
よう機能拡張しました。これにより、並列ソルバーを使うプログラムを 2 つ
以上起動した場合に CPU が衝突するのを避けることができます。
従来のCPU数指定(ncpu)に加え、CPU番号指定(cpu_list)を選択できます。
・離散不純物の乱数初期値指定とファイルによる不純物座標設定
離散不純物モデルにおいて乱数の初期値指定と
ファイルによる不純物座標設定が出来るようになりました。
・デバイスモンテカルロの不純物散乱テーブル関係修正
散乱確率テーブル作成時のキャリア濃度の範囲を
2009 年 3 月リリース時に不純物散乱とプラズモン散乱で
分けたが、分け方が間違えていたので是正しました。
その結果、不純物散乱を用いると乱数揺らぎの範囲内で結果が変化します。
・HyDeLEOS-5.5.7 では、以下の命令後の標準値を変更しました。
(HyDeLEOS-5.5.7PB では、従来通りで変更はありません。)
vector_definition("") : AVONEDGE --> ELEMONEDGE
abs_ep() : true --> false
elec_field_perpendicular_to_interface() : true --> false
elec_field_include_insulator() : true --> false
vector_interpolation_each_connection() : true --> false
set_method(ej_mob) : OFF --> NORM_GRAD_QF
・Mixed-Mode 計算と vector_definition(ELEMONEDGE)を併用した場合に、
メモリエラーを起こしていた不具合を修正しました。
・格子温度解析と vector_definition(ELEMONEDGE)を併用した場合に、
金属領域を含む構造に対して、メモリエラーを起こしていた不具合を修正しました。
・vector_definition(AVONEDGE)で枝の流束断面積が 0 になる場合に
0 割りが発生していた問題の対処を行いました。
この修正により、直角三角形メッシュに対しても
流束断面積に 0 の値を許容した計算が行えるようになりました。
・枝周りの要素をカウントする際に
0 にリセットする場合がある問題の修正を行いました。
この修正により、elec_field_simple_average(true)の場合でも、
0 割りが発生することなく計算できるようになりました。
・abs_ep(true)の場合に、流束断面積も絶対値をとっていた問題の修正を行いました。
この修正により、計算精度が向上しました。
・収束性の問題のために、HyDeLEOS-5.5.7PB では、以下の変更を行いました。
- 外心引き戻しを行う
- コントロールボリュームと流束断面積に負の値を許容しない
- コントロールボリュームと流束断面積に最小値制限を設ける
9
1st tour in ENEXSS ver.5.5
- 10. Client Only
・量子化によるバンドギャップ変化を正しく反映して Si/Oxide 界面で
量子化効果が現れるように修正しました。
・Egley(応力依存移動度モデル)モデルの適用の時、
compressive/tensile 応力に対して妥当な移動度特性が現れるように
fitting パラメーターの標準値を変更しました。
○グラフィックス SGraph
・バイナリファイルをアスキーファイルに変換したファイルを読み取る場合のバグ修正
HySyProS で 2 次元に切り出しをしたバイナリファイルをアスキーファイルに
変換して sgplot で読み取ると落ちるというバグがありました。
これは、3次元の HySyProS のデータを2次元に切り出した時点で
3次元データの節点番号を使用しているために節点番号に飛びがあるのですが
SGraph 内部では節点番号を詰めてアドレスを割り付けていることが関係して
バイナリファイルをアスキーファイルに変換する場合に要素を構成する節点番号
が内部で詰めた節点番号のアドレスになっていたためです。
バイナリファイルをアスキーファイルに変換する場合に限り、
節点番号のアドレスでなくて、バイナリファイルから読み取った節点番号
を出力するように変更しました。
実際に関係するのは、 SGraph の sgplot、sgraph、sgn2bin ですが、
ソースコードの変更は common です。
また、HySyProS と HyDeLEOS でも同じ関数で出力している関係で、
ダミーの引数追加という形でソースコードの変更を行いましたが、
HySyProS と HyDeLEOS での出力内容は全く変わりません。
10
1st tour in ENEXSS ver.5.5
- 11. Client Only
1.3 使用上の注意事項
○HyENEXSS のインストール方法
・リリース媒体は、DVD-ROM にて配布されます。pdf 形式のドキュメント
類はそのままでご覧頂けますが、インストール画面等による自動インストール
は出来ません。ご容赦ください。
○プロセス・シミュレータ HySyProS
・ver.5.3 から mcimpla は HySyProS のパッケージから独立していましたが、
ver.5.5 で従来の HySyProS パッケージ内に戻りました。ソースコードには
copy right も記載されました。
・ver.5.4update で mcimpla 並列計算機能を作成した際に
①thread 数=0 指定(デフォルト)で従来の非並列計算機能を使用する場合に、
乱数シード指定が効かない という不具合がありましたが、これを修正しました。
②thread 数 2 以上指定した場合に、同じ入力データでも毎回答えが微妙に変わる
という不具合がありましたが、これを修正しました。
・注入粒子がガス領域/材質の界面を認識できず、下層深い領域まで注入される
場合がある不具合を修正しました。
・Uematsu Model 用の拡散パラメータ・ファイル DiffuseParam-uematsu.par の
As と P の Si 中の拡散係数が修正されました。このため Uematsu Model を使った As と
P の拡散計算結果が旧版と異なります。
・酸化モデルがデフォルト設定の時に、Dunham5 を使って数値酸化計算を行った
際、不純物量が保存されない場合があることが分りました。Dunham5 を使って
数値酸化計算を行う際には、入力ファイルで
oxi_ctrl.set(moving_boundary_flux = "exclude", if_interpolation = "linear")
を指定して下さい。
・Reflect()と Stretch()を同時に使用する場合、Reflect 後 Stretch すると異常終了
する不具合を修正しました。
・doc/manual から Word ファイルである HySyProS-manual.docx を削除しました。
doc/HySyProS/users の下はこれまでと同様、配置してあります。
・Regrid()関数使用の際、斜め形状や複雑な形状の場合、元の形状から変化してしまう
ことがあります。使用後は形状を確認し、問題にならないよう細分化してください。
・print1d コマンドでの出力ファイル書式での修正。print1d コマンドが出力する
テキストデータにおいて座標が 0 に近く指数表示になると座標と濃度データの間の
区切りの空白行が出力されない場合がありました。指定したカラム数(15)をオーバー
していたためでしたので、明示的に有効桁数を指定して必ず区切りの空白行が出力
されるように変更しました。
・imp_ctrl.mc.config()にはパラメータの reset メソッドがないので、複数の
パラメータを指定する場合には、1つの mc.config 内ですべて記述してください。
複数の mc.config()を書いた場合は、implant の直前のものが有効となり、
11
1st tour in ENEXSS ver.5.5
- 12. Client Only
その中で明示的に指定されていないパラメータは標準値が設定されます。
・ソルバー変更により微妙に酸化形状が変わり、メッシュ生成に失敗することがあります。
現状判明しているのは 32bit、MAFD メッシュでメッシュ生成に失敗することがあります。
・デポ酸化時はこれまで移動境界流束を考慮していませんでしたが、デフォルトで
考慮することになるため、薄膜ゲート酸化等における計算結果が変わることが
あります。そのため前版までの結果と同じにするには、デポ酸化時に明示的に
移動境界流束を OFF する必要があります(moving_boundary_flux="exclude")。
・前版までの拡散計算で収束していた場合でも、更新量が判定値より大きい場合、
時間刻みが小さくなるため、計算結果が若干異なる可能性があります。
・slib で BiCGSTAB 計算時の内積計算方法が変更されたため、計算結果が若干異なる
可能性があります。
・Ver5.3 と前版までの形状計算と異なった場合、TopoControl()内のオプションにより
元の形状に戻すことが可能な場合があります。
・不純物拡散および酸化種拡散計算にもちいるコントロールボリュームの計算
で、四角錐要素、三角柱要素のコントロールボリュームの計算に誤りがあっ
たものを ver.5.1.0 で修正しました。このため、これらの要素を含んだ構造における不純
物濃度分布および酸化膜形状が、それ以前のバージョンと微妙に変化する場合があります。
・ver.5.1.0 から、非コンシステント酸化計算において、コントロール・ボリューム計算におけ
る外心引き戻しを、デフォルトで行なわない(oxi_ctrl.cvm.set
(pull_back=false))設定に変更しました。この変更に伴い、酸化計算後の形
状データが、それ以前のバージョンでの計算結果と微妙に変化する場合があり、これに起因して
その後の計算にエラーが発生する場合があります。外心引き戻しに関して旧版と同じ計算方法で酸
化計算を行なうには、入力データ中で oxi_ctrl.cv.set(pull_back = true)
を指定して下さい。
・ver.5.1.0 では、レベルセット法における形状処理および MAFD によるメッシュ生成において、
細かいバグ修正がありました。これに起因して、形状およびメッシュデータ
が、それ以前の版による計算結果と微妙に異なる場合があります。
・モデルパラメータのファイルのうち、古くてあまり参照され
ないものは、同じ dir に old という dir を作ってその下に移動してあります。
ver.5.1.0 のイオン注入のモーメントテーブルのデフォルトパラメータファイル
hyprada-moment.par は、old/hyprada-moment-2.5.par になりますので、
必要な方は moment.read(file=)で指定するなどしてご利用ください。
・アモルファス化注入時の初期欠陥量を調整した注入パラメータファイル
amorphous-dif.par を使用する場合には、
moment.read("amorphous-dif.par")を指定してこの注入パラメータファイル
を読み込んで計算を行ないます。このファイルを読み込むタイミング
は一般的な MOS プロセスのフローであれば extension/halo 注入の前にな
ります。このパラメータファイルを使用できる注入エネルギーの範囲は以下
に制限されます。
B 0.4-30keV
12
1st tour in ENEXSS ver.5.5
- 13. Client Only
P 10-100keV
As 3-100keV
BF2 10-60keV
このエネルギー範囲以外の注入に対してはデフォルトの注入パラメータファ
イル "hyprada-moment.par" を使用して下さい。
"amorphous-dif.par" を使用した注入・拡散計算の例題が、
$ENEXSS_PREFIX/examples/HySyProS/3dp/diff2/amorphous にあります。
・Si イオン注入を解析モデルで計算する場合に用いるモーメントテーブルは、プ
リアモルファス化などの用途を念頭におき、Si 基板と酸化膜に対する高ドーズ
の条件の MC 計算で作成しました。その他の材質では、酸化膜と同じパラメータ
が暫定的に設定されています。
注入された Si 原子は、材質を構成する Si とは区別して sgplot などで表示できま
す。その後、熱工程を通ると Si 基板中では格子位置に入って消滅します。
・v.4.2.0 よりデフォルトでは 700℃以下の拡散計算は行なわないように変更さ
れました。700℃以下の拡散計算を行なう場合には
diff_ctrl.low_temp_limit.set (temp = 600)等の指定によって拡散計算を行
なう下限温度を変更して下さい。normal offset 法を用いたメッシュ生成にお
ける層構造の回復機能は実装したばかりですので、この機能の起動は当面オプ
ションで行います。動作が安定してきたらデフォールトにする予定です。
・Effective Frenkel pair モデルに関するデフォルトのパラメータ値は
適宜調整して使用する必要があります。
特に、引き数 effective_frenkel_pair_delta_lateral_shift、
引き数 effective_frenkel_pair_subtract_gaussian_lsigma、
及び、「水平方向の vacancy 分布の標準偏差値」の関係が、
effective_frenkel_pair_delta_lateral_shift <<
effective_frenkel_pair_subtract_gaussian_lsigma <<
(水平方向の vacancy 分布の標準偏差値)
となるように設定する必要があります。
・MC イオン注入で、1 次元機能を使うとき、上部ガス領域がないと一番上の
節点の濃度がおかしくなる場合があります。MC イオン注入計算時には
上部にガス領域が存在するように計算領域を設定してください。
・薄膜 SOI への注入を計算すると、チャネリングテールが下層の BOX 膜中
に現れず、さらに下層の Si 基盤に現れることが有ります。
解析モデルで結晶 Si 中と酸化膜 などのようなアモルファス層中とでモー
メントパラメータが大きく異なる場合には、このような現実にはあり得ない
結果になることがあります。テール部分を気にしなくてもよければ、その
注入のモーメントパラメータのうち、たとえば第一 Pearson 関数の比率を
表す ratio を 1.0 に指定して、テール成分をなくしておくととりあえず問題は
解消されます。
・拡散数値計算の許容限は、現状ではやや厳しく設定されています。以下の関
13
1st tour in ENEXSS ver.5.5
- 14. Client Only
数をコールすることによって許容限を緩め、拡散計算の時間を短縮すること
が可能です。
set_mulv_fast_param_for_low_dim ():
一・二次元計算のように節点数が中程度のものまで。行列解法に直接法を
使用。
set_mulv_fast_param_for_3D ():三次元用
三次元計算のように節点数が多いもの。行列解法に反復法を使用。
・v5.0.0 よりゲートポリシリコンからチャネルへの不純物拡散を抑えるため
意図的に poly/SiO2 界面での質量輸送係数をゼロに設定しています。
poly/SiO2 界面越しの不純物拡散を計算する場合には質量輸送係数を適切な
値に設定しなおして下さい。
・PairEq,ChargeEq モデルで拡散計算を行う場合、デフォルトの設定ではポリ
シリコン中で点欠陥、濃度依存性、電界効果を考慮しないため、特に高濃度
の拡散が過小評価されます。このような場合には、ポリシリコン中の拡散モ
デルは "Fair" または "as_silicon" を選択して下さい。
・応力依存酸化機能は現時点ではまだほとんど調整されておらず、ユーザーの
方がすぐ使えるレベルにはなっていません。また、応力と酸化種拡散をセル
フコンシステントに解く機能は、限られたケースでのみ収束解を得ることが
できる段階です。試験的に使用する場合には以下の点に注意して下さい。
(1)酸化種拡散・界面反応に応力依存性を考慮した計算を行う場合には必ず
粘性係数の応力依存性を入れて応力を計算して下さい。粘性係数に応力
依存性を考慮した計算を行うには oxi_model.set (viscoelasticity =
"nonlinear") を指定します。粘性係数の活性化体積 V0 の値には、デフォ
ルトでは DiffuseParam.par のテーブルの値が使用されます。V0 の値を
明示的に指定する場合は diff_param.oxi.act_volume.set (mat="SiO2",
v0=200) のように指定します。
(2)初期増速効果は比較的滑らかな形状の時だけ考慮して下さい。応力依存
酸化の場合はとりあえず使わないのが安全です。
(3)界面反応速度定数の応力依存性は、表面の凹凸の影響をもろに受けてし
まうので、とりあえずは入れずに計算し、活性化パラメータの値を徐々
に大きくするようにして計算して下さい。
(4)粘性係数に応力依存性を考慮した計算を行なう場合は、応力計算のタイ
ムステップ幅を適切な値に調整して下さい。応力計算のタイムステップ
の目安としては、DiffuseParam.par の応力ステップテーブル の値を参
考にして下さい。このテーブルは oxi_ctrl.stress_step.config
(method="constant", value="table") を指定することで利用できるよう
になります。デフォルトでは計算時間が長くならないように形状ステッ
プと同じ値 oxi_ctrl.stress_step.config (method="constant",
value="same_as_topography") に設定されています。タイムステップ幅
を明示的に指定する場合には、oxi_ctrl.stress_step.set(0.5) のよう
14
1st tour in ENEXSS ver.5.5
- 15. Client Only
に指定します。
(5)酸化種拡散係数に応力依存性を考慮した計算を行なう場合には、
oxi_ctrl.topography.set(60.0)のように指定して形状更新が二回以上行
なわれるように指定する必要があります。これは、現状では前形状ステッ
プの最後の応力を使って次の酸化種拡散計算を行なうためです。ただし
形状更新のタイムステップがあまりにも小さい場合には形状処理が危う
くなる恐れがあります。また、ドライ酸化とウェット酸化では酸化速度
が一桁違う点にも注意して下さい。
(6)酸化種拡散の応力依存性を表すパラメータ Vd の値には
DiffuseParam.par のテーブルの値(Senez の値)を参考にして下さい。
ただし、これらのパラメータを使った計算が可能かどうかは検証されて
いません。Vd を大きい値に設定した場合には酸化膜がつぶれてしまう可
能性があります。
・セルフコンシステント酸化では "planar" 型の境界条件は使用できません。
・Fair モデル、Mulvaney モデル、PairEq モデル、ChargeEq モデルを用いた
酸化時の拡散計算でドーズ量が完全に保存しない場合があります。特に注入
不純物の分布が浅い場合には誤差が 20% 程度になる場合もあります。ゲー
ト酸化計算のように、酸化時間が短く、ドーズ量の保存に高い精度が求めら
れる場合には、入力データで oxi_ctrl.set (if_interpolation =
"linear") を指定して、酸化時の不純物補間方法に改良された方法を使用し
て下さい。
・SIT 埋め込み酸化膜アニール時に発生する応力は、ver.5.1 までは酸化膜堆積時
に酸化膜中の真性応力としてユーザが与えていました。ver.5.2 からユーザが
体積ひずみの値を指定し、アニール中の体積変化による応力緩和効果として計
算できるようにしました。この計算ではアニール中に酸化膜の形状変化はおき
ません。
・境界面のリメッシュ機能は開発段階であるため、未だ不安定であり、落ちるこ
とがあります。今後も、調査、改良をして行く予定です。
・save.sgraph() で保存する *.sg3、*.sg2、*.sg1 ファイルはバイナリ形式
およびテキスト形式の両方で出力することができますが、*.sgr および*.sgt
ファイルはテキスト形式による出力のみが可能です。
・save.sgraph() で出力する際に描画高速化用ファイル形式を指定した場合に
はデフォルトの出力形式に比べてファイルサイズが大きくなります。
15
1st tour in ENEXSS ver.5.5
- 16. Client Only
○デバイスシミュレータ HyDeLEOS
・今回新規に追加した
vector_definition("ELEMONEDGE");
abs_ep(false);
elec_field_simple_average(false);
elec_field_perpendicular_to_interface(false);
elec_field_include_insulator(false);
vector_interpolation_each_connection(false);
set_method(ej_mob = NORM_GRAD_QF);
として計算を行なう方法はインパクトイオン化モデル、格子温度解析、HD モデル、
High-k 移動度モデル、load_dst()コマンドのいずれかと併用した場合に
収束性や計算結果に問題が発生する場合があります。
これらの問題に関しては、現在調査中で、今後対応していく予定です。
・今回のバージョンでは下記の例題は収束しない問題がありますのでご注意ください。
lattice_temp/MOSFET1/templ.inp
lattice_temp/MOSFET2/nmos.inp
NBTI/interface_state/3d/master.inp
NBTI/interface_state/2d/master.inp
cha_boundary/charge+0.inp
cha_boundary/charge+1e-15.inp
cha_boundary/charge+1e-15.inp
・ウインドウモンテカルロ用に用意してある例題の中には、計算時間の都合上、
電流保存則が必ずしも十分で無いものもあります。電流値がシミュレーション
時間内に出入りする粒子数という離散的な量に支配されるためにばらつきが
はいるためです。その場合、粒子数を増やすことにより、解決します。
また、3次元の例題で実際の電子数と同じ粒子数でシミュレーション行いたい場合、
また、メモリの都合上粒子数を増やしたくない場合は、MC 計算終了時刻終了時間
(set_MC(time))を延ばして下さい。
DD/MC 境界の電流平均化時間間隔(set_MC(nstep_dt_average))を延ばすことも有効です。
その場合、電流連続式計算開始時刻(set_MC(time_pre))
及び平均操作開始時刻(set_MC(ave_time))及び MC 計算終了時刻終了時間の間隔は
ポアソン方程式を解く間隔(set_MC(dtime))と DD/MC 境界の電流平均化時間間隔以下
にして下さい。すなわち、
time_pre > dtime*nstep_dt_average
ave_time > time_pre + dtime*nstep_dt_average
time > ave_time + dtime*nstep_dt_average
として下さい。
16
1st tour in ENEXSS ver.5.5
- 17. Client Only
○ジョブデータベース JobDB
(A)エージェント・サーバーに関する注意事項
・複数ユーザーが同一ホストでそれぞれエージェント・サーバーを実行する場合に
は、設定ファイル server.jcf (デフォルトでは $HOME/JobDB/conf ディレ
クトリに置かれます) を修正して、使用するポート番号が衝突しないように
設定して下さい。
・エージェント・サーバーの起動(runAgentServer コマンド)および停止
(killAgentServer コマンド)は、設定ファイル server.jcf で指定したホス
トでのみ行ってください。
・エージェント・サーバーの停止(killAgentServer コマンド)は、実行中のジョ
ブが無い状態で行って下さい。
・エージェント・サーバーは、設定ファイル server.jcf で指定した単一のホスト
のみで実行して下さい。
(B)複数のホストでシミュレーションを実行する場合の注意事項(rsh, LSF 共通)
・全てのホストから HyENEXSS をインストールしたディレクトリが参照できるように、
NFS マウントを行なって下さい。また .cshrc や .profile などの設定ファイルの
中で、パスの先頭に各ホストから参照できる HyENEXSS の bin ディレクトリを追加
して下さい。
・シミュレーションが実行され得る全てのホストから(実体が同一である)データ・
ディレクトリ(デフォルトでは $HOME/JobDB/JobSpace)が参照できるように
NFS マウントを行なって下さい。
・ (実体が同一である)データ・ディレクトリのパスがホスト毎に異なる場合には、
設定ファイル mount.jcf(デフォルトでは $HOME/JobDB/conf に置かれます) を
修正して、データ・ディレクトリが正しく参照されるように設定して下さい。
エージェント・サーバーを実行するホストにおけるデータ・ディレクトリの位置も
忘れずに mount.jcf に記述して下さい。
・JobDB のホーム・ディレクトリ(以下 JobDBHome)は、デフォルトでは
$HOME/JobDB に設定されており、各種の設定ファイル(mount.jcf,
host.jcf, server.jcf など)は、JobDBHome/conf 以下に置かれます。しか
し、複数のホストでシミュレーションを行なう場合で、各ホストにおけるユー
ザーのホーム・ディレクトリ($HOME)の実体が異なっている場合には、各ホ
スト毎に JobDBHome(とその中の設定ファイル)を用意するか、各ホストから
参照可能な場所に JobDBHome を用意して下さい。後者の場合、各ホスト毎
に .cshrc や .profile などの中で環境変数 JOBDB_HOME が JobDBHome の
場所を参照するように設定して下さい。データ・ディレクトリは、デフォル
トでは JobDBHome の中(JobDBHome/JobSpace)に用意されていますが、設定
ファイル mount.jcf を編集することにより JobDBHome 外の任意の場所に任
意のディレクトリ名で作成することが可能です。
17
1st tour in ENEXSS ver.5.5
- 18. Client Only
(D)リモート実行に rsh を使用する場合の注意事項
・エージェント・サーバーを起動したホストから各ホストに対して、rsh がパスワード
無しで実行できる必要があります。シミュレーションを実行するホストの
$HOME/. rhosts ファイル、あるいは /etc/hosts.equiv ファイルのエントリに
エージェント・サーバーを起動するホストを追加して、rsh がパスワードなしで実行
できるように設定して下さい。
・JobDB を用いて自社製シミュレータをリモート実行する場合には、予めエー
ジェントサーバーから rsh により対応ホストでシミュレータが実行可能であること
を確認してください。
・JobDB で利用する全てのホストのシミュレーション投入条件を設定ファイル
host.jcf(デフォルトでは $HOME/JobDB/conf に置かれます)に記述して下さい。
・個々のシミュレーションの実行は、設定ファイル host.jcf(デフォルトでは
$HOME/JobDB/conf に置かれます)で指定した負荷最大値(MAXLOAD)
と最大プロセス数(MAXPROCESS)に制限されます。投入ジョブの状態が
"waiting..." になり、シミュレーションが全く実行されていない場合、負荷
最大値(MAXLOAD)による制限の影響を受けていると思われます。その
ような場合には、負荷最大値(MAXLOAD)を拡大したうえで、エージェント・
サーバーを再起動することにより、シミュレーションの実行が可能になります。
ここで MAXLOAD の値は、UNIX の w コマンドで表示される平均の負荷率に
対応しています。
・RedHat Enterprise Linux 4 で使用する場合には、/usr/kerberos/bin/rsh
よりも先に /usr/bin/rsh が見つかるようにパス設定する必要があります。
(F)リモート実行に ssh を使用する場合の注意事項
・リモート実行に ssh を使用する場合には、エージェント・サーバー起動時に
runAgentServer -rsh 'ssh -x -n'
と指定します。
・リモート実行に ssh を使用する場合には、エージェント・サーバーを起動し
たホストから各ホストに対して、ssh がパスワード無しで実行できる必要が
あります。そのための設定についてはシステム管理者に相談して下さい。
(G)その他の注意事項
・JobDBHome(デフォルトでは$HOME/JobDB)が既に存在している場合に
initJobDB コマンドを実行すると、JobDBHome/conf 以下の設定ファイルと、
JobDBHome/SCRIPTS および JobDBHome/TOOLS 以下のスクリプトおよび設定
ファイルが書き換えられます。通常は HyENEXSS をインストールする度に
initJobDB コマンドを再実行する必要はありませんが、JobDB-3.1.x から
3.2.x では、トランジスタパラメータ抽出で使用する測定データ(*.tmd ファ
イル)作成ツールが変更されました.そのため initJobDB コマンドを再実行
する必要があります。initJobDB コマンドを実行することで、データ・ディ
18
1st tour in ENEXSS ver.5.5
- 19. Client Only
レクトリ(デフォルトでは $HOME/JobDB/JobSpace)のデータが書き換えられ
たり消去されることはありませんが、JobDBHome/conf,
$HOME/JobDB/SCRIPTS, $HOME/JobDB/TOOLS 以下の設定ファイルはデフォル
トの設定に書き換えられます。従来の設定を継続して使用する場合には、こ
れらのディレクトリの設定ファイルおよびスクリプトを別の場所にコピーし
てバックアップしておき、initJobDB コマンドを実行した後で、バックアッ
プした内容を新しい設定ファイルに反映させて下さい。
・$HOME/JobDB 以外の場所に JobDBHome を作成する場合には、initJobDB を
実行する際に -jh オプションを指定して、JobDBHome の場所を指定して下
さい。
○インバースモデリング invmdl
・実行はカレントパスをパスに追加した環境で行ってください。
・従来出力していました、途中結果出力をオプション化しました。途中出力を
on にするには
extract interim=yes
としてください。
○TCAD データベース HyPRADA
・EWS 版をインストールユーザー以外で実行する場合には、インストールユーザーで
% createuser ユーザー名
を実行して PostgreSQL ユーザーを追加して下さい(詳しくはユーザーズ・
マニュアル 2.5 節 各種設定の DB にアクセス可能なユーザーの追加を参照
して下さい)。登録されたユーザーの一覧はインストールユーザーでコマン
ドラインから
% psql -d template1 -c "¥du"
と入力することにより確認できます。複数のユーザーを一括して登録する場
合には createduserDB コマンド(ユーザーズマニュアル 6.1.10 節)を使用
することができます。
19
1st tour in ENEXSS ver.5.5
- 20. Client Only
1.4 制限事項
○デバイスシミュレータ HyDeLEOS
・Piezo 抵抗モデルでは、デバイスの自己発熱によるサーマルカップリング
には対応しておりません。また、GPa以上の大きな応力が印加された
場合、移動度が異常に大きくなることがあるため、改善を検討いたします。
○グラフィックス SGraph
・X Window のカラー設定がされていないと、sgplot 起動時に Colormap
Warning が出ることがあります。.Xdefaults に
sgraph.Visual: truecolor
Sgraph.Visual: truecolor
の 2 行を追加して、X サーバーを再起動することで回避できます。
○ジョブデータベース JobDB
・サーバーが管理するジョブの名前には、同一の名前は許されません。異なる
プロジェクトにあるジョブでも、別の名前を使ってサーバーに登録するよう
にして下さい。
・リモート実行において、既存のジョブツリーを再度 Generate して作り直し
た場合に、ジョブの実行がうまく行かない場合があります。これは、環境に
よっては NFS 上でファイルが更新された情報が伝わるのに時間がかかるた
めです。エラー終了した場合は、その時点から再度 Start することによっ
て最後まで実行することができます。また、ツリーを再 Generate した後、
ある程度時間をおいてから実行を開始することによって、この不具合を回避
することができます。
○TCAD データベース HyPRADA
・HyPRADA 1.5.0 以前のバージョンで登録したデータは登録用 csv ファイル
からの再登録が必要となります。
・現状のバージョンでは SIMS/SR データ以外のデータは扱えないようになっ
ています。
・v1.7.0h より WWW 版のデータダウンロード機能が追加された形で配布される
ようになりました。組み込みのデータにつきましては委託者外に流出しないよ
う、取り扱いに御注意下さい。
20
1st tour in ENEXSS ver.5.5
- 21. Client Only
2 Selete TCADシステムHyENEXSSのインストール方法
2.1 動作環境及びとインストール方法概要
・本システムは、64 ビット Linux64 と、32 ビット Linux に向けたシステムです。
・本システムの標準サポート OS とコンパイラは、次のようです。
OS_name OS コンパイラ
(a) 64bit Linux64 RHEL4 gcc-4.3.2
(b) 32bit Linux RHEL3 gcc-4.3.2
gcc の正式名は the GNU Compiler Collection で、ウエブ上に公開され開発されている
コンパイラです。お使いになるマシンの OS に対象コンパイラがない場合、
http://gcc.gnu.org/から入手し、インストール頂けるようお願いします。
・本バージョンのインストール方法には、
* Selete 提供の実行モジュール(spkg)パッケージを使用する方法(デフォルト)
* ソースコードからコンパイルする方法
の2種類があります。
・ソースコードからコンパイルするために必要な環境は、OS によって異なります。
* X コンパイル環境
X-window のコンパイル環境が必要です。一部のフリーソフトのコンパイル
には、 X 関係のライブラリのありか(例えば、Linux64 の場合、/usr/X11R6/lib64)
の指定が必要です。
* 日本語環境の設定
インバースモデリングや HyPRADA 他、幾つかのプログラムは、日本語を表示します。
ご使用される環境に日本語が未設定の場合は、ログインシェルファイル.cshrc 等に、
setenv LANG ja_JP.eucJP
等と設定ください。もしくは、マシン管理者の方に、設定をご依頼ください。
注 1) INSTALL スクリプトのオプションとして
ダイナミックリンクとスタティックリンクのいずれかを選択出来る機能が
があります。オプションの記述方法は次のとおりです。
--liblink="Library Link mode" STATIC|SHARED (default is "SHARED")
デフォルトは、オプションなしのモードです。--liblink=STATIC を指定すると
スタティックリンクモードでコンパイルを行います。
・今回配布のバイナリファイルは、ダイナミック・リンク・モードでコンパイルされています。
21
1st tour in ENEXSS ver.5.5
- 22. Client Only
2.2 HyENEXSS のインストールの準備
以下のインストール方法の説明では、
${ENEXSS_DIST} :本 HyENEXSS 配布媒体を読み込むディレクトリ
${ENEXSS} : HyENEXSS をインストールするディレクトリ
とします。
また、
`` % ''は、UNIX プロンプトを表します。
`` % ''以降のコマンドを入力してください。
◎HyENEXSS は、DVD 媒体で配布を行います。
DVD からのインストール方法は、2.2.1 項に簡単に説明しました。
マシン依存がある場合は、マシン管理者の方に、お尋ねください。
2.2.1. DVD からの読み込み
2.2.1-1. DVD のマウント
root 権限で DVD をマウントします。
# mkdir /cdrom
# mount /dev/cdrom /cdrom
デバイスファイル、/dev/cdrom は環境によって違います。
自動マウントが設定されている場合、この操作は不要です。
2.2.1-2. DVD からの読み込み
DVD の内容を配布版読込みディレクトリ${ENEXSS_DIST}にコピーします。
% cp -R /cdrom ${ENEXSS_DIST}
但し、今回からは DVD から直接インストールが出来るようになりました
のでこの作業をスキップ出来ます。
2.2.1-3. 書き込み権限設定
書き込み権限を与えます。
% chmod -R +w ${ENEXSS_DIST}
配布版読込みディレクトリ${ENEXSS_DIST}には、以下のディレクトリ、
ファイルが読み込まれています。
${ENEXSS_DIST}/
README README ファイル
INSTALL インストーラ
freeware/ HyENEXSS が使用する freeware のソースコード
22
1st tour in ENEXSS ver.5.5
- 23. Client Only
sources/ HyENEXSS 各ツールのソースコード
spkginfo/ インストーラが使用するパッケージツール
binaries/ 各種 OS 用実行モジュール(spkg パッケージ)
HyENEXSS-guide.pdf HyENEXSS についての案内説明書 pdf ファイル
tour.doc.gz 本ドキュメント MS-Word(を gzip で固めた)ファイル
tour.pdf 本ドキュメント pdf ファイル
tour-install.txt 本ドキュメント 1,2 章の euc 形式テキストファイル
tour-install_sjis.txt 本ドキュメント 1,2 章の sjis 形式テキストファイル
下記 2 点は、[Selete Confidential(Client Only)]文書です。
HyENEXSS-guide_supplement.pdf HyENEXSS_guide.pdf ファイルの別冊
tour_supplement.pdf tour.pdf ファイルの別冊
DVD から直接インストール場合は、${ENEXSS_DIST}は DVD そのものですが、
作業用ディレクトリ${ENEXSS_BUILD}を決めて書き込み権限を与えて下さい。
2.2.1-4. インストール実行モジュール(spkg パッケージ)の内容
本リリース物件では、Linux, Linux64 の 2 種 OS に対応した実行
モジュール(spkg パッケージ)を用意しています。インストールの予定のない
OS のモジュールは消去可ですが、含まれていても特に問題はありません。
2.3 インストールの実行
インストールには、${ENEXSS_DIST}にある INSTALL スクリプトを使用します。
INSTALL スクリプトに実行権限がない場合は、実行権限を与えてください。
% chmod +x ${ENEXSS_DIST}/INSTALL
INSTALL は、-h (--help)をつけて実行すると、簡単な使い方を表示します。
% cd ${ENEXSS_DIST}
% ./INSTALL -h
Welcome to the ENEXSS, Version 5.5.0
Usage: INSTALL [options]
Options::
--help print help message, and exit
--resource="Resource directory" (defauls is "${ENEXSS_DIST}")
--prefix="Install directory" (defauls is "${ENEXSS}")
23
1st tour in ENEXSS ver.5.5
- 24. Client Only
--mode="Install mode" SOURCE|BINARY (default is "BINARY")
--cleanlevel="clean level" NO|NORMAL|DIST|ALL (default is "NO")
--xinc="X include files path"
--xinc1="Additinal X include files path"
--xlib="X library path"
--xlib1="Additinal X library path"
--liblink="Library Link mode" STATIC|SHARED (default is "SHARED")
--build="build directory" install-log file(s) are written in this
directory (default is ".")
--jobs="number of comiple" Specifies the number of compile jobs.
* --prefix には、インストール先ディレクトリ${ENEXSS}を指定します。
デフォルトは、${ENEXSS_DIST}の一個上の directory"になります。
* --resource では、${ENEXSS_DIST} を指定することが可能です。
* --cleanlevel は、ソースコードからコンパイルしてインストールする場合
に、ソースコードを残すかどうかを指定します。--cleanlevel=ALL と
すると、コンパイル完了後、ソースコードを削除します。デフォルトで
は、ソースコード は削除されません。${ENEXSS}/src 下に残ります。
* --build には、INSTALL により生成されるファイルを置くディレクトリを
指定します。指定したディレクトリには、Configure と INSTALL のログファイル
が出力され、ソースコンパイル時には binaries ディレクトリを作成し、
その下にバイナリパッケージが作成されます。オプションを省略した場合は
カレントディレクトリが使用されます。
* --jobs はコンパイル時、複数の jobs を指定できるもので整数を指定します。
指定した数だけ同時にコンパイルを実行します。
指定しない場合は1つずつ逐次的にコンパイルをします。
尚、INSTALL スクリプトは、Selete パッケージプログラム(spkg)を使用して
います。spkg に関する説明は、${ENEXSS}/doc/spkg ディレクトリの マニュ
アルをご覧ください。
・HyENEXSS システム全体に関連するドキュメントファイル( HyENEXSS-guide.pdf,
HyENEXSS-guide_supplement.pdf, tour_supplement.pdf, tour.pdf, tour.doc.gz )
は、INSTALL スクリプトが置かれているディレクトリ内に配置したものが
INSTALL スクリプトの機能により、そのままインストール先ディレクトリ
${ENEXSS}/doc/manual 以下に登録されるようになっています。
上記ドキュメントファイルは、上記指定ディレクトリに配置されていないと、
インストール先ディレクトリに登録されなくなるためご注意ください。
2.3.1 インストールディレクトリの作成
24
1st tour in ENEXSS ver.5.5
- 25. Client Only
HyENEXSS をインストールするディレクトリ ${ENEXSS} を 作成します。
% mkdir ${ENEXSS}
※ ${ENEXSS}が nfs 上にある場合には、異種 OS で 同一の${ENEXSS}を
共有して使用することが可能です。
2.3.2 INSTALL スクリプトによるインストール
本バージョンでは、
2.3.2-a. spkg パッケージからのインストール (デフォルト)
2.3.2-b. ソースコードコンパイルによるインストール
のいずれかの方法で、インストールします。
どちらかを選択してください。
・インストールに要する時間と、必要なディスク容量は、以下の通りです。
* spkg パッケージからインストールする場合
インストール時間:数分~十数分
ディスク使用量 :700MB 程度(1種類の OS の場合)
* ソースコードからコンパイルして、インストールする場合
インストール時間:数時間
ディスク使用量 :1GB 以上(1種類の OS の場合)
2.3.2-a. spkg パッケージからのインストール (デフォルト)
コンパイルせず、Selete が提供した実行モジュールを使用する場合です。
先ず、INSTALL のあるディレクトリに移ります。
INSTALL 時にログファイルが出力されますので、INSTALL のある
ディレクトリが DVD の場合は、--build オプションにより、
作業用ディレクトリ${ENEXSS_BUILD}を指定して下さい。
--build オプションを指定しない場合、INSTALL のあるディレクトリに
ログファイル等が書き込まれます。
% cd ${ENEXSS_DIST}
次に、所望のインストールディレクトリを指定して INSTALL の
実行を開始します。
% ./INSTALL --prefix=${ENEXSS} --build=${ENEXSS_BUILD}
インストーラは、ツール毎に逐次、log ファイルをカレントディレク
25
1st tour in ENEXSS ver.5.5
- 26. Client Only
トリに出力します。インストーラの実行が終わると、インストール成否結果
が、画面表示されるとともに、report.txt というファイルに出力され
ます。正常インストールの場合、HyENEXSS Install Report に、
OK [binary]
がツール毎に表示されます。なお、ツールが既にインストール済の場合は、
OK [skip]
が表示されます。エラーがある場合は Fail が表示されます。
インストールが完了したら、``2.4. 実行環境の設定'' を行ってください。
2.3.2-b. ソースコードコンパイルによるインストール
Selete が提供した ソースコードをコンパイルして、インストールする
場合です。コンパイルに必要な環境は、各 OS によって異なります。
先ず、gcc コンパイラのパスを指定します。以下、gcc-4.3.2 が
インストールされているディレクトリを
/usr/local/gcc-4.3.2/bin
として、説明 します。この場合、gcc コンパイラのパスは次のように指定します。
% setenv PATH /usr/local/gcc-4.3.2/bin:${PATH}
(32 ビットマシン)
% setenv LD_LIBRARY_PATH /usr/local/gcc-4.3.2/lib
(64 ビットマシン)
% setenv LD_LIBRARY_PATH /usr/local/gcc-4.3.2/lib64:/usr/local/gcc-4.3.2/lib
gcc のバージョン名や、インストールディレクトリは、環境によって異
なります。gcc --version や which gcc 等で確認ください。
不明な場合には、マシン管理者の方に、お尋ねください。
次に、INSTALL のあるディレクトリに移ります。
% cd ${ENEXSS_DIST}
ここで、--build オプションを指定しない場合、Selete 提供の実行
モジュールのディレクトリ binaries を仮保管ディレクトリ binaries~selete に
待避します。
% mv binaries binaries~selete
異なる複数の OS の同一ディレクトリへのインストールの場合は、
インストールディレクトリの指定に関し、次の点にご注意ください。
ソースコードコンパイルによるインストールは、通常 ${ENEXSS}/src ディレ
26
1st tour in ENEXSS ver.5.5
- 27. Client Only
クトリにソースファイルやコンパイルしたオブジェクトファイルなどを残しま
す。しかしそのために、同一のディレクトリ ${ENEXSS} を指定した、異なる
OS でのソースコードコンパイルができない場合があります。
もし、同一のディレクトリ ${ENEXSS} を指定し、異なる OS でソースコード
コンパイルによるインストールを行なう場合には、INSTALL に引き数
--cleanlevel=ALL を指定してください。
この引き数を指定することにより、インストールに使われた ${ENEXSS}/src
ディレクトリにあるソースファイルやオブジェクトファイルは全て消去されます。
[注意点 1] ソースコンパイルの場合のオプション指定は次のように行います。
(1) Linux(RedHat 9)の場合、
% ./INSTALL --prefix=${ENEXSS} --build=${ENEXSS_BUILD} --mode=SOURCE
のように指定します。
同一のディレクトリ ${ENEXSS} を指定し、異なる OS でソースコード
コンパイルによるインストールを行なう場合には
% ./INSTALL --prefix=${ENEXSS} --build=${ENEXSS_BUILD} --mode=SOURCE
--cleanlevel=ALL
のように指定します。
(2) Linux 64 の場合
X 関係のライブラリのありかの指定が必要です。INSTALL コマンドのオプションを使用して
% ./INSTALL --prefix=${ENEXSS} --mode=SOURCE --xlib=/usr/X11R6/lib64
等のように X-Window ライブラリのディレクトリ位置を明示的に指定して下さい。
(インクルードヘッダの-xinc=/usr/X11R6/include 指定は、なしで大丈夫です)
上記のようにインストールディレクトリと、ソースコンパイルのオプションとを
指定して INSTALL コマンドを実行することにより、インストールが開始されます。
最後に、カレントディレクトリに、コンパイル状況を出力した report.txt という
ファイルが作成されます。インストールディレクトリ${ENEXSS}に、ツールが
インストールされ、
${ENEXSS_DIST}/binaries にツールの spkg パッケージが作成されています。
正常インストールの場合、ENEXSS Install Report に、
OK [build]
がツール毎に表示されます。なお、ツールが既にインストール済の場合は、
OK [skip]
が表示されます。エラーがある場合は、
Fail [build]
が表示されます。
27
1st tour in ENEXSS ver.5.5
- 28. Client Only
[注意点 2] ${ENEXSS}を作成した方と異なる方が、${ENEXSS}に PATH を設定して
新しいツールをインストールしようとすると、${ENEXSS}作成者以外、権限
がないとのエラーになる場合があります。その場合は、${ENEXSS}作成者が、
% spkg-install
を実行すると${ENEXSS}/var/spkg に、ツール名.rc というファイルが出来、
${ENEXSS}作成者以外でもインストール出きるようになります。
2.4 実行環境の設定
ユーザ毎に、 パスの設定が必要です。
% setenv PATH ${ENEXSS}/bin:${PATH}
(32 ビットマシン)
% setenv LD_LIBRARY_PATH /usr/local/gcc-4.3.2/lib
(64 ビットマシン)
% setenv LD_LIBRARY_PATH /usr/local/gcc-4.3.2/lib64:/usr/local/gcc-4.3.2/lib
% rehash
以上で、インストールは終了です。
gcc のバージョン名や、インストールディレクトリは、環境によって異
なります。gcc --version や which gcc 等で確認ください。
2.5 インストール後のディレクトリ構成
インストール後のディレクトリ${ENEXSS}は、以下の構成となります。
${ENEXSS}/
bin/ 実行スクリプトと、各種 OS 用の実行モジュール
doc/ ドキュメント
etc/ 各種設定データ
examples/ 個別ツール及び、プロセス・デバイス Sim 共通例題
include/ Selete ツール、フリーソフト ヘッダファイル
info/ フリーソフト用 info ファイル
lib/ Selete ツール、フリーソフト ライブラリ
man/ フリーソフト マニュアル
quick_check/ Selete ツール、インストールチェック用簡易例題
share/ Selete ツール、フリーソフト
src/ ソースコード (ソースコード インストールの場合 )
third_party/ フリーウエアソースコード (ソースコード インストールの場合 )
obj.($OS)/ オブジェクト (ソースコード インストールの場合 )
tmp/ テンポラリ
var/ 各種設定データ
quick_check と examples のディレクトリ/ファイルの内容の簡単な一覧表は、
本ドキュメントの 「付録A テスト・応用例題 」章 をご参照ください。
各ツールの使い方は、本ドキュメント``1st tour in HyENEXSS ver.5.5''及び各
ツールのマニュアルをご覧ください。
28
1st tour in ENEXSS ver.5.5
- 29. Client Only
3 プロセスシミュレータHySyProSの実行
3.1 インストールチェック用例題のコピー
HySyProSが正常にインストールされたことを確認するための入力データ及び計算結果が、ディレクトリ
${ENEXSS}/quick_check/HySyProS に置かれています 1。このディレクトリの構成を 図 3-1に示しま
す。
$ENEXSS/quick_check/HySyProS
README ディレクトリの内容を説明したファイル.
nmos nmos 構造の例題.
nmos.pro HySyProS 入力データ
result 計算結果.
shape 形状シミュレーションの例題.
shape.pro HySyProS 入力データ
result 計算結果.
図 3-1 インストールチェック用例題のディレクトリ構成。
まずインストールチェック用例題を実行するための一時ディレクトリを作成します。
% mkdir ${TMP}
ここで % はコマンドプロンプトを表し、${TMP}は一時ディレクトリの名前(任意)を指します。
次に、作成した一時ディレクトリに移動して、インストールチェック用例題のうち nmos 構造の例題をコピ
ーします。
% cd ${TMP}
% cp -r ${ENEXSS}/quick_check/HySyProS/nmos .
3.2 HySyProSの実行
nmos 構造例題のディレクトリに移動します。
% cd ${TMP}/nmos
1
$ENEXSS は HyENEXSS をインストールしたディレクトリを表します。
29
1st tour in ENEXSS ver.5.5
- 30. Client Only
syprosコマンドを使ってコマンドラインから HySyProS を実行します 2。
% sypros nmos.pro
HySyProS の実行が始まり、画面上に実行ログが出力されます。計算は Linux64(AMD64)のマシンで
は約 5 秒、他のマシンでも 1 分程度で終了します。
HySyProS の実行が終了したら、次のように ls コマンドを実行してファイル nmos.geo、nmos.rst、
nmos.sg3、 nmos.vew が作成されていることを確認します。
% ls
HySyProS の実行ログをファイルに出力する場合には
% sypros nmos.pro > nmos.out
のように HySyProS の出力をファイルにリダイレクトします(ここで nmos.out は実行ログを出力するフ
ァイルの名前です)。 また、
% sypros nmos.pro > nmos.out &
のようにコマンドラインの最後に”&”をつけることによって、バックグラウンドで HySyProS を実行するこ
とができます。
3.3 計算結果の表示
次にグラフィックス出力プログラムsgplotを使って計算結果を確認します 3。
HySyProS の実行結果として作成された nmos.sg3 が存在するディレクトリで、コマンド sgplot を実行し
ます。
% sgplot
sgplot が起動し、sgplotのメインウィンドウが表示されます(図 3-2)。
2
ここではコマンドパスに${ENEXSS}/bin が設定されているものとします。
3
この節では sgplot の基本的な使用方法のみを示します。sgplot の詳細な使用方法については「グラフ
ィックシステム sgplot の使用方法」の節を参照して下さい。
30
1st tour in ENEXSS ver.5.5
- 31. Client Only
図 3-2 sgplot の起動。
sgplotのFileメニューからLoadを選択します(図 3-3)。
Load を選択
図 3-3 ファイルの読み込み。
31
1st tour in ENEXSS ver.5.5
- 32. Client Only
ファイルセレクションボックスが開く(図 3-4)ので、ファイルnmos.sg3 を選択してOpenボタンを押しま
す。
nmos.sg3 を選択
押す.
図 3-4 ファイルセレクションボックス。
sgplot上に材質が表示されます 4。
図 3-5 材質の表示。
4
設定ファイル$HOME/SGraph/SGplot.default の設定により、ファイル読み込み時の初期表示の内
容(表示角度、表示物理量など)を変更することができます。
32
1st tour in ENEXSS ver.5.5
- 34. Client Only
4 デバイスシミュレータHyDeLEOSの実行
以下の説明では、ディレクトリ
${ENEXSS}/quick_check/HyDeLEOS
にあるファイル
「プロセスシミュレーション結果ファイル」 nMOS_4e+12_2d.geo
「入力データファイル」 demo-idvg.inp
を用いて HyDeLEOS の実行方法を説明します。
なお、実行は任意のディレクトリ${TMP}にサンプルデータをコピーし、その下で行います。
以下のようにキー入力して(%はプロンプト)下さい。
% mkdir ${TMP}
% cd ${TMP}
% cp -r ${ENEXSS}/quick_check/HyDeLEOS .
また実行ディレクトリに移動するために、下のようにキー入力(%はプロンプト)して下さい。
% cd ${TMP}/HyDeLEOS
4.1 HyDeLEOS のコマンドラインによる実行
“%”をプロンプトとして、コマンドラインから、
%dswrap demo-idvg.inp
とすれば実行出来ます。実行結果は画面に出力されます。ファイル出力を行いたい場合には、
%dswrap demo-idvg.inp | tee demo-idvg.log
と指定して下さい。この例題のジョブは数秒で終了します。ここで、最終行が Normal End になっている
こと、Vth がおおよそ 0.306V と計算されていること、Idmax がおおよそ 395uA と計算されていることを確認
して下さい。
4.2 sgplot による計算結果の表示
次に、グラフィックにより計算結果を確認します。なお、グラフィックスの使い方の詳細は「グラフィック
スシステム sgplot の使用方法」章をご覧ください。
コマンドラインから、
% sgplot
と入力してください。sgplot が立ち上がります(下図 4-1 左)。
図 4-1 sgplot メイン画面 メニューバーFile プルダウンメニュー
34
1st tour in ENEXSS ver.5.5
- 35. Client Only
sgplot メイン画面において、左上のメニューバーの[File]から[Load…]でを選択しますと(前頁図 4-1 右)、
Load datafile 画面が現れます。demo-idvg.cur(電流ファイル)を左クリックで選択すると、下図 4-2 のよ
うなデータの選択ウィンドウが表示されます。
図 4-2 データ選択ウィンドウ
X Axis:ボックスでは Vgate を、 Y Axis:ボックスでは Idrain をそれぞれ選択します。 [OK]ボタンを左クリ
ックすると、下図 4-3 のようなドレイン電流-ゲート電圧曲線がプロットされます。デフォルトでは、Y 軸は
ログスケールになっています。
図 4-3 sgplot での電流電圧特性の表示(ログスケール)
35
1st tour in ENEXSS ver.5.5
- 37. Client Only
図 4-6 sgplot で demo-idvg.dis を読み込んだところ
メニューバーの[Property]から[Graph]を選択し、PhysField タブ内のラジオボタンを Device から Cond
へ変更し、Field:のポップアップメニューを開き Cnet を選択します。
Cond:
選択有効化
Field:
Cnet 選択
図 4-7
[OK]ボタンを左クリックすると、次ページの図 4-8 の様に素子の不純物分布(ドナー濃度からアクセプタ
濃度を引いた値)が表示されます。
37
1st tour in ENEXSS ver.5.5
- 38. Client Only
図 4-8
ここで、ポテンシャル分布、メッシュ、及び PN 接合線を出してみましょう。メニューバーの Property を左ク
リックして現れるメニューの中から Graph を選ぶと、下図 4-9 のウィンドウが出て来ます。
図 4-9
Cond:ボックス右端の▼ボタンを左クリックして出てくる項目の内、「1-6: gate=1.5V …」を左クリックで選
択します。同様に、Field:ボックスで「Psi」(ポテンシャル)を選択します。
次に左クリックで Structure のウィンドウを選びます。下図 4-10 の画面が出て来ます。
図 4-10 Structureの Property ウィンドウ
38
1st tour in ENEXSS ver.5.5
- 40. Client Only
5 モンテカルロ・デバイスシミュレータの実行
以 下 の 説 明 で は 一 粒 子 モ ン テ カ ル ロ シ ミ ュ レ ー タ (mc1p) 、 デ バ イ ス モ ン テ カ ル ロ シ ミ ュ レ ー タ
(deleos_mc)、バンド計算プログラム(band_calc)、粒子表示プログラム(mcpv)のそれぞれのプログラ
ムの実行方法を説明します。
それぞれのプログラムのチェック用入力データはそれぞれ
${ENEXSS}/quick_check/MC1P、${ENEXSS}/quick_check/HyDeLEOS/3dmc、
${ENEXSS}/quick_check/BAND、${ENEXSS}/quick_check/MCPV、にあります。
実行は任意のディレクトリ${TMP}にサンプルデータをコピーし、その下で行います。
5.1 一粒子モンテカルロシミュレータmc1pの実行
以下のようにキー入力(%はプロンプト)してください。
% mkdir ${TMP}
% cd ${TMP}
% cp -r ${ENEXSS}/quick_check/MC1P .
%
また実行ディレクトリに移動してファイルを確認するために、下のようにキー入力
(%はプロンプト)して下さい。
% cd ${TMP}/MC1P
% ls
check.sh input.dat mc_ave_org.res
%
ls コマンド実行後のファイルは配布データで input.dat が入力データ、mc_ave_org.res は実行後の出
力ファイルのサンプルです。
以下のコマンドを入力すると(%はプロンプト)計算の実行をはじめます。
% ./check.sh
mc1p testing
No error
%
最後の行に No Error が出力されればプログラムは正常に動作しています。計算結果が異常な場合、
% ./check.sh
mc1p
0.0517834<->0.0417834
Error detect some differences
%
のように Error detect some differences というメッセージと共に異なる部分のデータがが出力されま
す。異常な場合
% ls
check.log input.dat mc_ave_org.res mc_snap.res
check.sh mc_ave.res mc_dist.res
のように、check.log mc_snap.res mc_ave.res mc_dist.res のファイルが残っています。check.log
40
1st tour in ENEXSS ver.5.5
- 41. Client Only
が比較のログファイル、mc_ave.res、mc_snap.res、mc_dist.res が計算結果のファイルです。
正常な場合
% ls
check.sh input.dat mc_ave_org.res
のように生成されたファイルは全て削除され、元のファイルのみが残っています。
5.2 デバイスモンテカルロシミュレータdeleos_mcの実行
以下のようにキー入力(%はプロンプト)してください。
% mkdir ${TMP}
% cd ${TMP}
% cp -r ${ENEXSS}/quick_check/HyDeLEOS/3dmc
%
また実行ディレクトリに移動してファイルを確認するために、下のようにキー入力
(%はプロンプト)して下さい。
% cd ${TMP}/HyDeLEOS/3dmc
% ls
check.sh mcsbar.dev mcsbar_org.cur sbar.dev sbar.str
%
以下のコマンドを入力すると(%はプロンプト)計算の実行をはじめます。
% ./check.sh
deleos_mc testing
No error
%
最後の行に No Error が出力されればプログラムは正常に動作しています。計算結果が異常な場合、
% ./check.sh
deleos_mc testing
-0.0002601227511<->-0.0001549924128
Error detect some differences
%
のように Error detect some differences というメッセージと共に異なる部分のデータがが出力されま
す。異常な場合
% ls
check.log mc_ave.res mcsbar.cur mcsbar_org.cur sbar.str
check.sh mc_dist.res mcsbar.dev sbar.dev
mc-run.log mc_snap.res mcsbar.dis sbar.dst
%
のように、check.log mc_ave.res mcsbar.cur mc_dist.res mc-run.log mc_snap.res
mcsbar.dis sbar.dst のファイルが残っています。check.log が比較のログファイル、mc_ave.res
mcsbar.cur mc_dist.res mc-run.log mc_snap.res
mcsbar.dis が計算結果、sbar.dst が構造データファイルです。
41
1st tour in ENEXSS ver.5.5