(57)【特許請求の範囲】
【請求項１】
半導体集積回路のマスクレイアウトデータに基づいて、非矩形の拡散層領域に重なるゲート領域を有するトランジスタを抽出するトランジスタ抽出処理部と、
前記トランジスタのゲート長方向に分割線を設定して前記非矩形の拡散層領域を複数の矩形拡散層領域に分割する矩形分割処理部と、
前記非矩形の拡散層領域と前記複数の矩形拡散層領域とを前記マスクレイアウトデータに関連付けるマスクレイアウトデータ関連付け処理部と、
前記複数の矩形拡散層領域の各々の大きさを示すサイズ情報を算出するサイズ計算処理部と、
前記サイズ情報に基づいて前記複数の矩形拡散層領域の各々の拡散層長依存パラメータを計算する補正値計算処理部と、前記拡散層長依存パラメータは前記拡散層領域における拡散層長に依存して値が変化する移動度パラメータと閾値電圧パラメータとを含み、
前記拡散層長依存パラメータに基づいて回路シミュレーションに用いられる前記トランジスタのトランジスタモデルを登録するトランジスタモデル登録部と
を具備する
トランジスタモデル生成装置。
【請求項２】
前記トランジスタ抽出処理部は、前記非矩形の拡散層領域の頂点の数に基づいて非矩形であることを判定する
請求項１に記載のトランジスタモデル生成装置。
【請求項３】
前記分割線は、
前記ゲート領域の頂点の位置を示す座標に基づいて方向を設定され、
前記非矩形の拡散層の頂点のうち凹部を示す頂点を一方の端点とし、
前記一方の端点から前記方向に延長する延長線上で、前記非矩形の拡散層領域の前記方向に垂直な辺に交差する位置を他方の端点とする
請求項１または請求項２に記載のトランジスタモデル生成装置。
【請求項４】
前記矩形分割処理部は、
前記非矩形の拡散層領域を、分割される領域であることを示す第１認識層に割り当て、
前記複数の矩形拡散層領域の各々を、前記非矩形の拡散層領域が分割された矩形領域であることを示す第２認識層に割り当てる
請求項１から請求項３のいずれかに記載のトランジスタモデル生成装置。
【請求項５】
前記矩形分割処理部は、前記第１認識層と前記第２認識層とを図形処理するための異なる未使用の処理層に割り当てる
請求項４に記載のトランジスタモデル生成装置。
【請求項６】
前記第２認識層は、複数の処理層を備え、
前記複数の矩形拡散層領域の各々は、前記複数の処理層に重複せずに割り当てられる
請求項４または請求項５に記載のトランジスタモデル生成装置。
【請求項７】
前記トランジスタモデルは、前記複数の矩形拡散層領域の数を示す第１識別子を備える
請求項１から請求項６のいずれかに記載のトランジスタモデル生成装置。
【請求項８】
前記トランジスタモデル登録部は、同一の前記第１識別子を備える前記トランジスタモデルに生成順序を示す第２識別子を付与して登録する
請求項７に記載のトランジスタモデル生成装置。
【請求項９】
前記補正値計算処理部は、前記複数の矩形拡散層領域のうちｎ番目の領域の拡散層長をＤＬｎ、ゲート幅をＷｎとするとき、移動度パラメータｆｍｕ（ＤＬ）を、
fmu(DL)=fmu(DL=DL1)*W1/(W1+W2+ … +Wn)+fmu(DL=DL2)*W2/(W1+W2+ … +Wn)+ … 
+fmu(DL=DLn)*Wn/(W1+W2+ … +Wn)
により計算し、閾値電圧パラメータｆｖｔｈ（ＤＬ）を、
fvth(DL)=fvth(DL=DL1)*W1/(W1+W2+ … +Wn)+fvth(DL=DL2)*W2/(W1+W2+ … +Wn)+ … 
+fvth(DL=DLn)*Wn/(W1+W2+ … +Wn)
により計算する
請求項１から請求項８のいずれかに記載のトランジスタモデル生成装置。
【請求項１０】
請求項１から請求項９のいずれかに記載のトランジスタモデル生成装置により生成されたトランジスタモデルに基づいて、非矩形の拡散層領域に重なるゲート領域を有するトランジスタを含む回路をシミュレートする
回路シミュレーション装置。
【請求項１１】
処理装置と記憶部と入力部と出力部とを備えるトランジスタモデル生成装置がプログラムを実行することにより、マスクレイアウトデータから回路シミュレーションに用いられるトランジスタモデルを生成するトランジスタモデル生成方法であって、
前記処理装置が前記記憶部から読み出した半導体集積回路のマスクレイアウトデータに基づいて、非矩形の拡散層領域に重なるゲート領域を有するトランジスタを抽出するトランジスタ抽出処理ステップと、
前記処理装置が前記トランジスタのゲート長方向に分割線を設定して前記非矩形の拡散層領域を複数の矩形拡散層領域に分割する矩形分割処理ステップと、
前記処理装置が前記非矩形の拡散層領域と前記複数の矩形拡散層領域とを前記マスクレイアウトデータに関連付けるマスクレイアウトデータ関連付け処理ステップと、
前記処理装置が前記複数の矩形拡散層領域の各々の大きさを示すサイズ情報を算出するサイズ計算処理ステップと、
前記処理装置が前記サイズ情報に基づいて前記複数の矩形拡散層領域の各々の拡散層長依存パラメータを計算する補正値計算処理ステップと、前記拡散層長依存パラメータは前記拡散層領域における拡散層長に依存して値が変化する移動度パラメータと閾値電圧パラメータとを含み、
前記処理装置が前記拡散層長依存パラメータに基づいて回路シミュレーションに用いられる前記トランジスタのトランジスタモデルを登録するトランジスタモデル登録ステップと
を具備する
トランジスタモデル生成方法。
【請求項１２】
前記トランジスタ抽出処理ステップは、前記非矩形の拡散層領域の頂点の数に基づいて非矩形であることを判定するステップを備える
請求項１１に記載のトランジスタモデル生成方法。
【請求項１３】
前記分割線は、
前記ゲート領域の頂点の位置を示す座標に基づいて方向を設定され、
前記非矩形の拡散層の頂点のうち凹部を示す頂点を一方の端点とし、
前記一方の端点から前記方向に延長する延長線上で、前記非矩形の拡散層領域の前記方向に垂直な辺に交差する位置を他方の端点とする
請求項１１または請求項１２に記載のトランジスタモデル生成方法。
【請求項１４】
前記矩形分割処理ステップは、
前記非矩形の拡散層領域を、分割される領域であることを示す第１認識層に割り当てるステップと、
前記複数の矩形拡散層領域の各々を、前記非矩形の拡散層領域が分割された矩形領域であることを示す第２認識層に割り当てるステップと
を備える
請求項１１から請求項１３のいずれかに記載のトランジスタモデル生成方法。
【請求項１５】
前記矩形分割処理ステップは、前記第１認識層と前記第２認識層とを図形処理するための異なる未使用の処理層に割り当てるステップを備える
請求項１４に記載のトランジスタモデル生成方法。
【請求項１６】
前記第２認識層は、複数の処理層を備え、
前記複数の矩形拡散層領域の各々は、前記複数の処理層に重複せずに割り当てられる
請求項１４または請求項１５に記載のトランジスタモデル生成方法。
【請求項１７】
前記トランジスタモデルは、前記複数の矩形拡散層領域の数を示す第１識別子を備える
請求項１１から請求項１６のいずれかに記載のトランジスタモデル生成方法。
【請求項１８】
前記トランジスタモデル登録ステップは、同一の前記第１識別子を備える前記トランジスタモデルに生成順序を示す第２識別子を付与して登録するステップを備える
請求項１７に記載のトランジスタモデル生成方法。
【請求項１９】
前記補正値計算処理ステップは、前記複数の矩形拡散層領域のうちｎ番目の領域の拡散層長をＤＬｎ、ゲート幅をＷｎとするとき、移動度パラメータｆｍｕ（ＤＬ）を、
fmu(DL)=fmu(DL=DL1)*W1/(W1+W2+ … +Wn)+fmu(DL=DL2)*W2/(W1+W2+ … +Wn)+ … 
+fmu(DL=DLn)*Wn/(W1+W2+ … +Wn)
により計算し、閾値電圧パラメータｆｖｔｈ（ＤＬ）を、
fvth(DL)=fvth(DL=DL1)*W1/(W1+W2+ … +Wn)+fvth(DL=DL2)*W2/(W1+W2+ … +Wn)+ … 
+fvth(DL=DLn)*Wn/(W1+W2+ … +Wn)
により計算するステップを備える
請求項１１から請求項１８のいずれかに記載のトランジスタモデル生成方法。
【請求項２０】
請求項１１から請求項１９のいずれかに記載のトランジスタモデル生成方法により生成されるトランジスタモデルを用いて、非矩形の拡散層領域に重なるゲート領域を有するトランジスタを含む回路を回路シミュレーション装置によってシミュレートする
回路シミュレーション方法。
【請求項２１】
半導体集積回路のマスクレイアウトデータに基づいて、非矩形の拡散層領域に重なるゲート領域を有するトランジスタを抽出するトランジスタ抽出処理ステップと、
前記トランジスタのゲート長方向に分割線を設定して前記非矩形の拡散層領域を複数の矩形拡散層領域に分割する矩形分割処理ステップと、
前記非矩形の拡散層領域と前記複数の矩形拡散層領域とを前記マスクレイアウトデータに関連付けるマスクレイアウトデータ関連付け処理ステップと、
前記複数の矩形拡散層領域の各々の大きさを示すサイズ情報を算出するサイズ計算処理ステップと、
前記サイズ情報に基づいて前記複数の矩形拡散層領域の各々の拡散層長依存パラメータを計算する補正値計算処理ステップと、前記拡散層長依存パラメータは移動度パラメータと閾値電圧パラメータとを備え、
前記拡散層長依存パラメータに基づいて回路シミュレーションに用いられる前記トランジスタのトランジスタモデルを登録するトランジスタモデル登録ステップと
をコンピュータに実行させるためのトランジスタモデル生成プログラム。
【請求項２２】
前記補正値計算ステップは、前記複数の矩形拡散層領域のうちｎ番目の領域の拡散層長をＤＬｎ、ゲート幅をＷｎとするとき、移動度パラメータｆｍｕ（ＤＬ）を、
fmu(DL)=fmu(DL=DL1)*W1/(W1+W2+ … +Wn)+fmu(DL=DL2)*W2/(W1+W2+ … +Wn)+ … 
+fmu(DL=DLn)*Wn/(W1+W2+ … +Wn)
により計算し、閾値電圧パラメータｆｖｔｈ（ＤＬ）を、
fvth(DL)=fvth(DL=DL1)*W1/(W1+W2+ … +Wn)+fvth(DL=DL2)*W2/(W1+W2+ … +Wn)+ … 
+fvth(DL=DLn)*Wn/(W1+W2+ … +Wn)
により計算する
請求項２１に記載のトランジスタモデル生成プログラム。
【請求項２３】
請求項２１または請求項２２に記載のトランジスタモデル生成プログラムを含み、
非矩形の拡散層領域に重なるゲート領域を有するトランジスタを有する回路をシミュレートする処理をコンピュータに実行させるための回路シミュレーションプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路シミュレーション技術に関し、特に回路シミュレーションに用いるトランジスタモデルの生成装置、生成方法に関する。
【背景技術】
【０００２】
近年、半導体技術の発展により半導体デバイスの微細化が進み、それに伴って回路シミュレータのシミュレーション精度の一層の向上が要求されている。シミュレーション精度の向上には、回路のモデル化精度を向上させることが必要であり、そのために実際の回路の状態を表わす回路の情報を精度良くモデル化しなければならない。
【０００３】
特開平１０−１６２０４７号公報には回路情報を抽出する技術が開示されている。回路情報の抽出装置は、半導体回路の製造後の仕上り形状を考慮したマスクレイアウトから、回路シミュレーションに用いる回路情報を抽出する。回路情報の抽出装置は、半導体回路が有するトランジスタについて、マスクレイアウトから認識した曲線を含むトランジスタの形状を基にして、回路シミュレーションにおけるデバイスと実デバイスとにおいてゲート容量が合致するような等価トランジスタサイズを求める。それと共に、回路情報の抽出装置は、この等価トランジスタサイズを用いた回路シミュレーションにおけるデバイスと実デバイスとにおけるドレイン電流の差に相当する電流値を有する補正電流源を仮想的に生成する。この等価トランジスタサイズ及び補正電流源のデータが回路情報として回路シミュレーションに用いられる。この技術は、ゲート形状に基づいて回路情報を抽出している。しかし、近年指摘されている拡散層の形状による回路情報への影響は考慮されていない。
【０００４】
また、ＭＯＳトランジスタのモデルの作成技術として特開２００４−１１９６０８号公報に開示される技術が知られている。ここで開示される回路シミュレーション装置は、シミュレーション実行手段と、拡散層依存パラメータ補正手段とを備える。シミュレーション実行手段は、シミュレーション対象の回路の接続状態が記述された回路ネットリストを読み込み、トランジスタモデルを参照してシミュレーション対象回路の電流・電圧の変化を計算する。拡散層依存パラメータ補正手段は、まず所定の拡散層長のトランジスタに基づいて作成されたトランジスタモデルに対して、拡散層長に依存して値が変化する拡散層長依存パラメータについての補正近似式を作成する。その補正近似式を用いて、拡散層依存パラメータ補正手段は、既に存在するトランジスタモデルとは拡散層長の異なるトランジスタモデルに対する拡散層長依存パラメータの補正値を算出する。これにより、拡散層長ＤＬの異なるＭＯＳトランジスタのトランジスタモデルが作成される。ＭＯＳトランジスタのドレイン電流の拡散層長依存性を考慮した回路シミュレーションが可能となるので高精度のシミュレーションが可能となる。この技術は、拡散層の形状が矩形であることが前提となっている。したがって、拡散層の形状が、矩形でない場合、誤差を生じることになる。
【０００５】
図１に矩形の拡散層を有するトランジスタのマスクレイアウトパターンの例を示す。図１では、ゲート幅Ｗ、ゲート長Ｌのトランジスタが２個集積されている状態が示されている。多結晶シリコン層１２と拡散層１０との重なっている部分にトランジスタが形成され、多結晶シリコン層１３と拡散層１０との重なっている部分に別のトランジスタが形成される。拡散層長ＤＬがゲート長寸法方向の拡散層寸法を示すものとすると、拡散層１０の大きさは、Ｗ、ＤＬで示される。このような矩形の拡散層において、上記のように拡散層長依存パラメータの補正値が計算できる。拡散層長ＤＬは、拡散層１０の周囲長とゲート幅Ｗとから計算される。拡散層１０の周囲長は、拡散層長ＤＬとゲート幅Ｗとの和を２倍したものであるから、拡散層長ＤＬは、
ＤＬ＝（拡散層１０の周囲長）／２−Ｗ
と計算される。
【０００６】
図２に示される拡散層は非矩形である。このような非矩形の拡散層パターンは、例えば、インバータ回路とＮＡＮＤ回路やインバータ回路とＮＯＲ回路、インバータ回路とトランスファーゲートなどをひとまとまりの拡散層に集積する場合に生じる。即ち、拡散層寸法が異なるトランジスタが一体化される場合に発生する。図２では、多結晶シリコン層１２との間にトランジスタを形成する拡散層１１ａと、多結晶シリコン層１３との間にトランジスタを形成する拡散層１１ｂとが一体化されることにより、非矩形の拡散層１１が形成されることになる。この拡散層１１は、図１に示される拡散層１０と形状は異なるが、周囲長は同じである。したがって、拡散層１１の周囲長から多結晶シリコン層１３により形成されるトランジスタの拡散層長ＤＬ’は、
ＤＬ’＝（拡散層１１の周囲長）／２−Ｗ’
と計算される。ここでは、Ｗ’は多結晶シリコン層１３により形成されるトランジスタのゲート幅を示す。
【０００７】
したがって、算出された拡散層長ＤＬ’は、実際の拡散層長ＤＬよりΔＤＬだけ大きめに計算されてしまう。上記の拡散層長ＤＬ’からトランジスタモデルの拡散層長依存パラメータの補正値を計算すると当然誤差を生じることになり、シミュレーション精度は低下する。これまでは、その誤差はシミュレーションに与える影響が小さく、無視されてきたが、プロセスの微細化等によりシミュレーション精度をさらに向上させる上で無視できないものとなってきている。
【０００８】
【特許文献１】特開平１０−１６２０４７号公報
【特許文献２】特開２００４−１１９６０８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
このように、拡散層が矩形でないトランジスタも拡散層が矩形のトランジスタと同様に拡散層の周囲長から拡散層長ＤＬを算出していた。その結果、実際の拡散層長ＤＬに対して誤差を生じ、非矩形拡散層のトランジスタに対するシミュレーション精度が向上しなかった。
【課題を解決するための手段】
【００１０】
以下に、［発明を実施するための最良の形態］で使用される番号・符号を用いて、課題を解決するための手段を説明する。これらの番号・符号は、［特許請求の範囲］の記載と［発明を実施するための最良の形態］との対応関係を明らかにするために付加されたものである。ただし、それらの番号・符号を、［特許請求の範囲］に記載されている発明の技術的範囲の解釈に用いてはならない。
【００１１】
本発明の観点では、トランジスタモデル生成装置は、トランジスタ抽出処理部（３３）と、矩形分割処理部（３４）と、マスクレイアウトデータ関連付け処理部（３５）と、サイズ計算処理部（３６）と、補正値計算処理部（３７）と、トランジスタモデル登録部（３８）とを具備する。トランジスタ抽出処理部（３３）は、半導体集積回路のマスクレイアウトデータ（３１）に基づいて、非矩形の拡散層領域（１１）に重なるゲート領域（１２、１３）を有するトランジスタを抽出する。矩形分割処理部（３４）は、そのトランジスタのゲート長方向に分割線を設定して非矩形の拡散層領域（１１）を複数の矩形拡散層領域（１１−１、１１−２）に分割する。マスクレイアウトデータ関連付け処理部（３５）は、非矩形の拡散層領域（１１）と複数の矩形拡散層領域（１１−１、１１−２）とをマスクレイアウトデータに関連付ける。サイズ計算処理部（３６）は、分割された複数の矩形拡散層領域（１１−１、１１−２）の各々の大きさを示すサイズ情報（ＤＬ１／Ｗ１、ＤＬ２／Ｗ２）を算出する。補正値計算処理部（３７）は、サイズ情報（ＤＬ１／Ｗ１、ＤＬ２／Ｗ２）に基づいて、複数の矩形拡散層領域（１１−１、１１−２）の各々の拡散層長依存パラメータ（ｆｍｕ、ｆｖｔｈ）を計算する。トランジスタモデル登録部（３８）は、拡散層長依存パラメータに基づいて回路シミュレーションに用いられるトランジスタモデルを登録する。
【００１２】
拡散層長依存パラメータは、移動度パラメータと閾値電圧パラメータとを有する。複数の矩形拡散層領域のうちｎ番目の領域の拡散層長をＤＬｎ、ゲート幅をＷｎとすると、補正値計算処理部は、それぞれ次式により算出する。
移動度パラメータｆｍｕ（ＤＬ）：
fmu(DL)=fmu(DL=DL1)*W1/(W1+W2+ … +Wn)+fmu(DL=DL2)*W2/(W1+W2+ … +Wn)+ … 
+fmu(DL=DLn)*Wn/(W1+W2+ … +Wn)
閾値電圧パラメータｆｖｔｈ（ＤＬ）：
fvth(DL)=fvth(DL=DL1)*W1/(W1+W2+ … +Wn)+fvth(DL=DL2)*W2/(W1+W2+ … +Wn)+ … 
+fvth(DL=DLn)*Wn/(W1+W2+ … +Wn)
【００１３】
本発明の他の観点では、トランジスタモデル生成方法は、トランジスタ抽出処理ステップ（３３）と、矩形分割処理ステップ（３４）と、マスクレイアウトデータ関連付け処理ステップ（３５）と、サイズ計算処理ステップ（３６）と、補正値計算処理ステップ（３７）と、トランジスタモデル登録ステップ（３８）とを具備する。トランジスタ抽出処理ステップ（３３）は、半導体集積回路のマスクレイアウトデータ（３１）に基づいて、非矩形の拡散層領域（１１）に重なるゲート領域（１２、１３）を有するトランジスタを抽出する。矩形分割処理ステップ（３４）は、そのトランジスタのゲート長方向に分割線を設定して非矩形の拡散層領域（１１）を複数の矩形拡散層領域（１１−１、１１−２）に分割する。マスクレイアウトデータ関連付け処理ステップ（３５）は、非矩形の拡散層領域（１１）と複数の矩形拡散層領域（１１−１、１１−２）とをマスクレイアウトデータに関連付ける。サイズ計算処理ステップ（３６）は、複数の矩形拡散層領域（１１−１、１１−２）の各々の大きさを示すサイズ情報（ＤＬ１／Ｗ１、ＤＬ２／Ｗ２）を算出する。補正値計算処理ステップ（３７）は、サイズ情報（ＤＬ１／Ｗ１、ＤＬ２／Ｗ２）に基づいて複数の矩形拡散層領域（１１−１、１１−２）の各々の拡散層長依存パラメータ（ｆｍｕ、ｆｖｔｈ）を計算する。トランジスタモデル登録ステップ（３８）は、拡散層長依存パラメータ（ｆｍｕ、ｆｖｔｈ）に基づいて回路シミュレーションに用いられるトランジスタモデルを登録する。
【００１４】
また、本発明の他の観点では、コンピュータに実行させるためのトランジスタモデル生成プログラムは、トランジスタ抽出処理ステップ（３３）と、矩形分割処理ステップ（３４）と、マスクレイアウトデータ関連付け処理ステップ（３５）と、サイズ計算処理ステップ（３６）と、補正値計算処理ステップ（３７）と、トランジスタモデル登録ステップ（３８）とを具備する。トランジスタ抽出処理ステップ（３３）は、半導体集積回路のマスクレイアウトデータ（３１）に基づいて、非矩形の拡散層領域（１１）に重なるゲート領域（１２、１３）を有するトランジスタを抽出する。矩形分割処理ステップ（３４）は、そのトランジスタのゲート長方向に分割線を設定して非矩形の拡散層領域（１１）を複数の矩形拡散層領域（１１−１、１１−２）に分割する。マスクレイアウトデータ関連付け処理ステップ（３５）は、非矩形の拡散層領域（１１）と複数の矩形拡散層領域（１１−１、１１−２）とをマスクレイアウトデータに関連付ける。サイズ計算処理ステップ（３６）は、複数の矩形拡散層領域（１１−１、１１−２）の各々の大きさを示すサイズ情報（ＤＬ１／Ｗ１、ＤＬ２／Ｗ２）を算出する。補正値計算処理ステップ（３７）は、サイズ情報（ＤＬ１／Ｗ１、ＤＬ２／Ｗ２）に基づいて複数の矩形拡散層領域（１１−１、１１−２）の各々の拡散層長依存パラメータ（ｆｍｕ、ｆｖｔｈ）を計算する。トランジスタモデル登録ステップ（３８）は、拡散層長依存パラメータ（ｆｍｕ、ｆｖｔｈ）に基づいて回路シミュレーションに用いられるトランジスタモデルを登録する。
【発明の効果】
【００１５】
本発明によれば、非矩形拡散層を有するトランジスタが多数存在する場合であっても、それぞれの拡散層に対応する拡散層長依存パラメータが反映されるトランジスタモデルを容易に作成するトランジスタモデル生成装置、トランジスタモデル生成方法を提供することができる。そのトランジスタモデルを回路シミュレーションに用いることにより、高精度な回路シミュレーションが行えるようになる。
【発明を実施するための最良の形態】
【００１６】
図を参照して本発明を実施するための最良の形態を説明する。トランジスタモデル生成装置は、マスクレイアウトデータから回路シミュレーションに用いるトランジスタモデルを生成する。トランジスタモデル生成装置は、図７に装置の構成が示されるように、ワークステーション、パーソナルコンピュータ等に例示される情報処理装置であり、処理の実体は情報処理装置上で実行されるソフトウェアとして提供される。トランジスタモデル生成装置は、中央演算処理装置（ＣＰＵ）４１と記憶部４２と入力部４３と出力部４４とを備える。記憶部４２は、予め処理プログラムやマスクレイアウトデータ、ネットリストなどを入力部４３から入力して格納している。ＣＰＵ４１は、記憶部４２に格納される処理プログラムを実行し、記憶部４２に格納されているマスクレイアウトデータから回路シミュレーションに用いられるトランジスタモデルを生成する。生成されたトランジスタモデルは、出力部４４から出力される。また、生成されたトランジスタモデル名を示すデータや生成の中間結果は、出力部４４から出力される。
【００１７】
図３に非矩形の拡散層を有するトランジスタのマスクレイアウトパターンの例を示す。トランジスタモデル生成装置は、図３に示されるような非矩形の拡散層を有するトランジスタをモデル化する。このようなマスクレイアウトパターンは、例えば、インバータ回路とＮＡＮＤ回路やインバータ回路とＮＯＲ回路、インバータ回路とトランスファーゲート等をひとまとまりの拡散層に集積する場合に生じる。ここでは、２つのトランジスタ、即ち、多結晶シリコン層１２と拡散層１１との重なった部分に形成されるトランジスタと、多結晶シリコン層１３と拡散層１１との重なった部分に形成されるトランジスタとが形成されている。多結晶シリコン層１２、１３により形成されるトランジスタのゲート長をＬ、最大のゲート幅Ｗは、Ｗ＝Ｗ１＋Ｗ２とする。
【００１８】
この拡散層１１はゲート長方向に沿って分割線が入れられ、拡散層１１−１と拡散層１１−２とに分割すると、矩形の拡散層として扱うことが可能となる。即ち、拡散層１１−１は、ゲート長Ｗ１、拡散層長ＤＬ１の大きさを有する拡散層として扱うことができる。拡散層１１−２は、ゲート長Ｗ２、拡散層長ＤＬ２の大きさを有する拡散層として扱うことができる。本実施の形態では、非矩形の拡散層１１を矩形の拡散層１１−１、１１−２に分割し、その分割矩形拡散層における拡散層長依存パラメータの補正値が求められ、非矩形拡散層を有するトランジスタのトランジスタモデルが生成される。
【００１９】
この非矩形拡散層を有するトランジスタのモデル作成の処理手順を、図４を参照して説明する。トランジスタモデル作成処理は、トランジスタ抽出処理３３、矩形分割処理３４、マスクレイアウト関連付け処理３５、矩形領域サイズ計算処理３６、補正値計算処理３７、トランジスタモデル登録処理３８を順に実行する。
【００２０】
トランジスタ抽出処理３３と矩形分割処理３４との処理内容は、図５を参照して説明される。トランジスタ抽出処理３３では、以下に説明されるように、マスクレイアウトデータ３１からトランジスタを形成する領域が抽出される。トランジスタのゲート領域を形成する多結晶シリコン層の図形が割り当てられている処理層と、拡散層の図形が割り当てられている処理層との図形論理処理（ＡＮＤ処理）が行われ、トランジスタが形成される領域が抽出される。したがって、トランジスタを形成する領域は、図５（ａ）に示されるように、拡散層（１１ａ、１１ｂ）、多結晶シリコン層（１２、１３）等の複数の層のデータとして抽出される。拡散層は、集積化される前のトランジスタを示すデータを引き継ぎ、２つのトランジスタに対応する拡散層１１ａ、１１ｂの集合として表わされている。多結晶シリコン層（１２、１３）、拡散層（１１ａ、１１ｂ）のデータは別々に管理されているため、図５（ｂ）に示されるように、１つの処理層に投影した図形、所謂、一筆書きの図形になるように図形演算が施される。一筆書きの図形にすることで、頂点座標の数により矩形でない図形であることが容易に特定可能となる。
【００２１】
矩形分割処理３４では、まず、図５（ｂ）の図形から各領域の頂点の座標が求められる。図５（ｃ）では、拡散層領域の頂点は●、ゲート領域の頂点は○で表わされている。非矩形の拡散層は、頂点Ｋ１、Ｋ２、Ｋ３、Ｋ４、Ｋ５、Ｋ６を有する。また、２つのトランジスタのゲート領域は、頂点Ｗ１１、Ｗ１２、Ｗ１３、Ｗ１４の組と、頂点Ｗ２１、Ｗ２２、Ｗ２３、Ｗ２４の組を有する。
【００２２】
このゲート領域の頂点の並びとその間隔からトランジスタの向きが判定される。例えば、頂点Ｗ１３−Ｗ１４の並びと頂点Ｗ１３−Ｗ１２の並びとでは、前者の方が頂点の間隔は狭く、この方向がゲート長の方向であることが判る。したがって、図５の場合、図の水平方向に分割線を入れて領域を矩形分割する。非矩形領域の頂点の座標の最大値、最小値から頂点Ｋ３、Ｋ４、Ｋ５の部分に凹み部分があることが判る。これらの座標から頂点Ｋ３、Ｋ４の延長線上で、延長線に垂直な非矩形領域の辺と交差する位置が求められる。即ち、頂点Ｋ３、Ｋ４の延長線と、頂点Ｋ１と頂点Ｋ６とを結ぶ線分とが交差する位置に、点Ｋ７が分割するための頂点として設けられる（図５（ｄ））。この頂点Ｋ７を追加することにより、非矩形領域は、頂点Ｋ７、Ｋ４、Ｋ５、Ｋ６を結ぶ線分で囲まれる矩形領域と、頂点Ｋ７、Ｋ１、Ｋ２、Ｋ３を結ぶ線分で囲まれる矩形領域に分割される。即ち、図３に示されるように、非矩形拡散層領域１１は、分割矩形拡散層領域１１−１と分割矩形拡散層領域１１−２に分割される。
【００２３】
マスクレイアウト関連付け処理３５では、この非矩形拡散層領域１１は、分割される非矩形の拡散層領域であることを示すために、認識層１の図形としてオリジナルのレイアウトデータ３１に関連付けられる。また、分割矩形拡散層領域１１−１、１１−２は、非矩形の拡散層が分割されて矩形となった領域であることを示すために、認識層２の図形としてオリジナルのレイアウトデータ３１に関連付けられる。この認識層１は、図形演算などの実処理において、未使用の処理層（例えば１００層）が割り当てられる。認識層２は、分割した矩形領域の数の未使用の処理層が割り当てられる。即ち、認識層２は、未使用の例えば１０１層と１０２層とが割り当てられる。このようにすることにより、矩形領域サイズ計算処理３６は、分割された領域を示す図形の各々を別の領域の図形として扱って計算することが可能となり、さらに、その処理結果をまとめてネットリストのパラメータとして出力することが可能となる。
【００２４】
この処理層の関係は、図６に示されるように、模式的に図示される。即ち、認識層１の図形層は、物理的に対応関係のある拡散層領域（１１ａ、１１ｂ）、多結晶シリコン層領域（１２、１３）を示す拡散層図形に対応させて割り当てられる。その認識層１には、非矩形の拡散層１１を示す図形が設定される。この認識層１は、処理層として１００層が割り当てられる。さらに、この認識層１に対応させて認識層２の図形が設定される。認識層２には、矩形の拡散層１１−１、１１−２を示す図形が設定される。拡散層１１−１を示す図形は、処理層として１０１層に割り当てられ、拡散層１１−２を示す図形は、１０２層に割り当てられる。
【００２５】
矩形領域サイズ計算処理３６では、認識層２に設定される図形のサイズが算出される。認識層２に割り当てられた処理層は、２分割の場合、１０１層と１０２層である。認識層１の処理層である１００層と１０１層とのＡＮＤ処理された図形から分割拡散層１１−１のサイズが算出される。同様に、１００層と１０２層とのＡＮＤ処理された図形から分割拡散層１１−２のサイズが算出される。算出されたサイズは、認識層１の図形に対応させて出力される。したがって、この場合、２組のサイズ情報が非矩形領域の他のパラメータと共に出力されることになる。
【００２６】
この処理は、ＬＶＳ（Ｌａｙｏｕｔ  Ｖｅｒｓｕｓ  Ｓｃｈｅｍａｔｉｃ）検証時にシミュレーション用ネットリストを生成するソフトウェアにより行われても良い。ＬＶＳ検証ソフトウェアにより処理を行う場合、そのルールは以下のように設定される。対象のトランジスタは、認識層１に登録され、かつ、認識層２を含む拡散層を有するトランジスタである。そのトランジスタモデル名は、次に示されるように、認識層２に用いられる処理層の数（ｍとする）に基づいて示される。
トランジスタモデル名：ＮＥＮＨＨＰ＿ｍ    （ｍ≧２）
【００２７】
さらに、各トランジスタモデルのパラメータ部に、次に示されるように、拡散層長ＤＬとゲート幅Ｗとの組との値を出力する計算式が追加される。ここで、ｎ番目の処理層に登録される矩形拡散層領域の拡散層長をＤＬｎ、ゲート幅をＷｎとする（ｎは認識層２の数を超えない番号を示す）。
Ｗｎ＝（ゲート領域と認識層２を含む拡散層に接するエッジ長）／２
ＤＬｎ＝（認識層２を含む拡散層の周囲長／２）−Ｗｎ
【００２８】
ＬＶＳ検証ソフトウェアは、このように定義されたルールファイルに基づいて、認識層１、２が関連付けされたレイアウトデータからネットリストを生成して出力する。このネットリストには、それぞれの矩形分割拡散層１１−１、１１−２に対応する拡散層長ＤＬｎとゲート幅Ｗｎが、分割前の非矩形拡散層１１のゲート長Ｌ、ゲート幅Ｗと共にパラメータとして追加されて出力される。ＬＶＳ検証ソフトウェアにより出力されたネットリストの例を次に示す。
MN011 GND IN0 net1 GND nenhhp_2 l=0.1u w=0.48u ad=0.0813069p as=0.12p
pd=0.813435u ps=1.46u $w1=0.48u $dl1=0.98u $w2=0.35u $dl2=0.6u
MN012 net2 net1 GND GND nenhhp_2 l=0.1u w=0.83u ad=0.2075p as=0.140593p
pd=2.16u ps=1.40656u $w1=0.48u $dl1=0.98u $w2=0.35u $dl2=0.6u
【００２９】
このネットリストは、一般的なネットリストと同様の構成であり、詳細な説明は省略するが、“＄”が付与されたパラメータが今回追加定義されたパラメータである。非矩形の拡散層には２つのトランジスタが存在し、それぞれＭＮ０１１、ＭＮ０１２という素子名称が付与されていることがわかる。非矩形の拡散層が２分割されているので、矩形分割されたトランジスタのモデル名は、 “ｎｅｎｈｈｐ＿２”と表わされている。第１の矩形分割領域のゲート幅Ｗ１は“＄ｗ１＝０．４８ｕ”、拡散層長ＤＬ１は“＄ｄｌ１＝０．９８ｕ”と出力され、第２の矩形分割領域のゲート幅Ｗ２は“＄ｗ２＝０．３５ｕ”、拡散層長ＤＬ２は“＄ｄｌ２＝０．６０ｕ”と出力されていることがわかる。
【００３０】
ここまでは１つの非矩形の拡散層について説明したが、他にも多くの非矩形の拡散層が存在する。異なるサイズの拡散層領域を有するトランジスタの補正値はそれぞれ異なり、それらを区別するためにトランジスタモデル名を変更する必要がある。例えば、同じく２分割される異なるサイズの非矩形領域を有するトランジスタのネットリストが次に示されるように出力されたとする。
MN013 GND net2 net3 GND nenhhp_2 l=0.1u w=0.9u ad=0.134664p as=0.225p
pd=1.2785u ps=2.3u $w1=0.9u $dl1=0.98u $w2=0.34u $dl2=0.53u
MN014 net4 net3 GND GND nenhhp_2 l=0.1u w=1.24u ad=0.31p as=0.185536p
pd=2.98u ps=1.7615u $w1=0.9u $dl1=0.98u $w2=0.34u $dl2=0.53u
【００３１】
第１の矩形分割領域のゲート幅Ｗ１が、前者のネットリストでは“＄ｗ１＝０．４８ｕ”、後者のネットリストでは“＄ｗ１＝０．９ｕ”と異なっている。したがって、これらを区別するため、トランジスタモデル名は変更される。変更後のトランジスタモデル名は、元のトランジスタモデル名に順番を示す識別番号が付加されたものとする。ここでは、前者のネットリストに示されるトランジスタＭＮ０１１、ＭＮ０１２に対するトランジスタモデル名は、ＮＥＮＨＨＰ＿２＿１に変換される。後者のネットリストに示されるトランジスタＭＮ０１３、ＭＮ０１４に対するトランジスタモデル名は、ＮＥＮＨＨＰ＿２＿２に変換される。この変換処理は、スクリプトによりなされてもよい。上記２つのネットリストの各トランジスタモデルが異なる名称に変換され、一つにまとめられたネットリストが以下に示される。
MN011 GND IN0 net1 GND nenhhp_2_1 l=0.1u w=0.48u ad=0.0813069p as=0.12p
pd=0.813435u ps=1.46u $w1=0.48u $dl1=0.98u $w2=0.35u $dl2=0.6u
MN012 net2 net1 GND GND nenhhp_2_1 l=0.1u w=0.83u ad=0.2075p as=0.140593p
pd=2.16u ps=1.40656u $w1=0.48u $dl1=0.98u $w2=0.35u $dl2=0.6u
MN013 GND net2 net3 GND nenhhp_2_2 l=0.1u w=0.9u ad=0.134664p as=0.225p
pd=1.2785u ps=2.3u $w1=0.9u $dl1=0.98u $w2=0.34u $dl2=0.53u
MN014 net4 net3 GND GND nenhhp_2_2 l=0.1u w=1.24u ad=0.31p as=0.185536p
pd=2.98u ps=1.7615u $w1=0.9u $dl1=0.98u $w2=0.34u $dl2=0.53u
【００３２】
補正値計算処理３７では、ネットリストの出力に基づいて、トランジスタモデルの拡散層長依存パラメータの補正値が計算される。各トランジスタモデル毎に出力されている分割拡散層長ＤＬｎ、分割ゲート幅Ｗｎの組は、所定の計算式に代入され、そのトランジスタモデルに対する拡散層長依存パラメータの補正値、即ち、新しい拡散層長依存パラメータが求められる。ここでは、拡散層長依存パラメータは、移動度パラメータｆｍｕ（ＤＬ）、閾値電圧パラメータｆｖｔｈ（ＤＬ）とし、それぞれ次式により算出される。この算出式はｎ分割の場合を示し、ｆｍｕ（ＤＬ＝ＤＬ１）は、拡散層長ＤＬ１である矩形領域における移動度パラメータ値、ｆｖｔｈ（ＤＬ＝ＤＬ１）は、拡散層長ＤＬ１である矩形領域における閾値電圧パラメータ値を示す。
fmu(DL)=fmu(DL=DL1)*W1/(W1+W2+ … +Wn)+fmu(DL=DL2)*W2/(W1+W2+ … +Wn)+ … 
+fmu(DL=DLn)*Wn/(W1+W2+ … +Wn)
fvth(DL)=fvth(DL=DL1)*W1/(W1+W2+ … +Wn)+fvth(DL=DL2)*W2/(W1+W2+ … +Wn)+ … 
+fvth(DL=DLn)*Wn/(W1+W2+ … +Wn)
【００３３】
トランジスタモデル登録処理３８では、上述のように生成されたトランジスタモデル名と、補正値計算処理３７で算出された各トランジスタモデルの拡散層長依存パラメータとを対応させて、回路シミュレーションに用いるトランジスタモデル３９が登録される。上記の４個のトランジスタに関するネットリストでは、２つのトランジスタモデルが抽出され、ＮＥＮＨＨＰ＿２＿１とＮＥＮＨＨＰ＿２＿２という２つの新しい回路シミュレーション用トランジスタモデルが登録されることになる。これらの更新されたトランジスタモデル群と、抽出されたシミュレーション用ネットリストに基づいてより精度の高い回路シミュレーションが行われる。
【００３４】
回路シミュレーション用のソフトウェアとして、例えば、ＳＰＩＣＥ（Ｓｉｍｕｌａｔｉｏｎ  Ｐｒｏｇｒａｍ  ｗｉｔｈ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ  Ｅｍｐｈａｓｉｓ）が用いられる。このＳＰＩＣＥに上記のネットリストを入力し、トランジスタモデルとしてＮＥＮＨＨＰ＿２＿１とＮＥＮＨＨＰ＿２＿２と含むトランジスタモデル群のパラメータを用いることにより、非矩形の拡散層を有するトランジスタを含む回路の精度の高い回路シミュレーションを行うことが可能となる。この回路シミュレーション用のソフトウェアは、上述のトランジスタモデル生成装置と同じ装置において実行されてもよい。また、トランジスタモデル生成装置とは別の回路シミュレーション装置に、トランジスタモデル生成装置により生成された非矩形の拡散層を有するトランジスタモデルと、ネットリストとを入力し、回路シミュレーション用ソフトウェアが実行されてもよい。さらに、回路シミュレーション用ソフトウェアに、非矩形の拡散領域を有するトランジスタのトランジスタモデルを生成するプログラムを組み込んでもよい。
【００３５】
本実施の形態では、非矩形拡散層を２分割する例を示したが、３分割以上でも同様に補正値を算出できる。また、非矩形拡散層を有するトランジスタは、同時に複数個抽出することができ、非矩形拡散層の矩形分割、レイアウトデータへの関連付け、分割矩形領域サイズ計算を伴うネットリストの出力、各トランジスタモデルの補正値計算、トランジスタモデルの登録も複数個同時にできることは言うまでもない。
【００３６】
このように、非矩形拡散層を有するトランジスタに対するより精度の高い拡散層長ＤＬに対する補正値である拡散層長依存パラメータが容易に算出され、この補正値を反映したトランジスタモデルにより高精度な回路シミュレーションを行うことが可能となる。
【図面の簡単な説明】
【００３７】
【図１】矩形の拡散層に形成されるトランジスタのレイアウト例を示す図である。
【図２】非矩形の拡散層に形成されるトランジスタのレイアウト例を示す図である。
【図３】本発明の実施の形態における非矩形の拡散層の分割を説明する図である。
【図４】本発明の実施の形態における非矩形拡散層を有するトランジスタのモデル作成の処理手順を示す図である。
【図５】本発明の実施の形態における図形処理を説明する図である。
【図６】本発明の実施の形態における認識層のイメージを模式的に表わす図である。
【図７】本発明の実施の形態に係るトランジスタモデル生成装置の構成を示すブロック図である。
【符号の説明】
【００３８】
１０  矩形拡散層
１１  非矩形拡散層
１１ａ、１１ｂ  個別トランジスタ拡散層
１１−１、１１−２  矩形分割拡散層
１２、１３  多結晶シリコン層
３１  マスクレイアウトデータ
３３  トランジスタ抽出処理
３４  矩形分割処理
３５  マスクレイアウトデータ関連付け処理
３６  矩形領域サイズ計算処理
３７  補正値計算処理
３８  トランジスタモデル登録処理
３９  トランジスタモデル
４１  ＣＰＵ
４２  記憶部
４３  入力部
４４  出力部
Ｋ１〜Ｋ６  拡散領域の頂点
Ｗ１１〜Ｗ１４、Ｗ２１〜Ｗ２４  ゲート領域の頂点
【図１】
0004544631.tif 000002
【図２】
0004544631.tif 000003
【図３】
0004544631.tif 000004
【図４】
0004544631.tif 000005
【図５】
0004544631.tif 000006
【図６】
0004544631.tif 000007
【図７】
0004544631.tif 000008