- 追加された行はこの色です。
- 削除された行はこの色です。
* DRCスクリプト [#k5dadf1a]
WGexの「DRC」ボタンを押すと、カレントディレクトリ(最後にGeXファイルを読み込んだディレクトリ)にある drc.mdl ファイルが読み込まれ、その中にあるスクリプトに従ってDRCが実行されます。
* 簡単なデザイン例 [#bde5b423]
PACTとNACTを含むDRCぎりぎりのデザイン例を示します。
()
#ref(./drc_sample2.png)
一番内側にある、NSLあるいはPSLと重なっているACTがNACTあるいはPACTになります。ACTは幅と間隔が4ミクロン以上である必要があります。スクリプト中では、以下のようなルールです。
#for (ACT) check_gap 4 [G] to (ACT) ; N/P-Diffusion
#for (ACT) check_width 4 [G] and_gap 4 [G]
また、ACTの領域は全てNSLまたはPSLのどちらかに重なっている必要があります。スクリプト中では、
#for (NSL & ACT) convert (ACT) to (CDN) ; N-diffusion
#for (PSL & ACT) convert (ACT) to (CDP) ; P-diffusion
というルールで変換されなかった部分が残っていると、最後の、
#for (ACT) warning Isolated_Active_Error
というルールでチェックされます。
続いて、NSLとPSLについてですが、NSLとPSLは論理的なものであるので直接の制限はあまりありません。幅が8ミクロン以上あること、と、NSLとPSLが重なっていないこと、というルールがある他は、図からもあきらかなように、ウェルとの関係などにはルールがありません。ルールは以下の通りです。
続いて、NSLとPSLについてはさらに、
#for (CDN) make_oversize 2 [G] as (ACO)
#for (ACO & !NSL) warning Nsel_Nact_Overlap_Error
#for (CDP) make_oversize 2 [G] as (ACO)
#for (ACO & !PSL) warning Psel_Pact_Overlap_Error
というルールで、ACTよりも2ミクロンの余裕をもって大きい必要があります(このルールが入った drc.mdl ファイルについては5月1日のメールを確認してください)。それ以上は論理的なものであるので直接の制限はあまりありません。幅が8ミクロン以上あること、と、NSLとPSLが重なっていないこと、というルールがある他は、図からもあきらかなように、ウェルとの関係などにはルールがありません。ルールは以下の通りです。
#for (NSL) check_width 8 [G] and_gap 0 [G]
#for (PSL) check_width 8 [G] and_gap 0 [G]
#for (NSL & PSL) warning Nsel_Psel_Overslap_Error
NACTとPACTは、チャネルストップ(CST)で囲まれている必要があり、さらにマージンが3ミクロン必要です。以下のようなルールになっています。
#for (CDN) make_oversize 3 [G] as (ACO)
#for (ACO & !CST) warning ChStp_Nact_Overslap_Error
#for (CDP) make_oversize 3 [G] as (ACO)
#for (ACO & !CST) warning ChStp_Pact_Overslap_Error
チャネルストップはウェル(NWLかPWL)で囲まれている必要があり、さらにマージンが2ミクロン必要です。以下のようなルールになっています。
#for (CST) make_oversize 2 [G] as (CSO)
#for (CSO & !NWL & !PWL) warning Well_ChStp_Overslap_Error
(続く?)