見出し画像

Klayout の使い方 その2:DRC (デザインルールチェック)

1.デザインルールチェック (DRC) とは

Klayout では好きな図形を描くことができますが,実際の製造装置は任意の構造を作れる訳ではありません.線の太さやレイヤーの重ね方など,レイアウトが満たすべき規則がデザインルール,作成したレイアウトがそのルールに従っているかを確認するのが DRC (Design Rule Check) です.基本的に,デザインルールはすべて満たさなければ製造してもらえません.特にフルカスタム設計では DRC を通るようにレイアウトを修正するのにかなりの時間を使うことになります.
なお,無視してもいいエラー (疑似エラー)があったり,完成品の性能を保証しないという条件つきで製造してもらえることもあります.

Skywater 130 nmのルールブックは以下にあります.これは人間が読めるように書かれたドキュメントで,DRCで使われるのはプログラムが読みやすいルールファイルです.

デザインルールは製造装置の能力が如実に分かるので,従来はデザインルールを外部に漏らすなど下手をすれば賠償問題モノだったのですが,それが Web で公開された,というのは衝撃的でした.

2.Klayout で DRC

Skywater 130 nm はいくつかのツールによる DRC に対応していますが,Klayout で DRC をかける方法を説明します.Klayout の他には magic もよく使われます.

2.1 Klayoutの準備

DRC をする前にちょっと準備がいります.

(1) Technology Manager
メニューの Tools → Technology Manager を開き,「sky130A」の DRC を選びます.最初に開くと,「フォルダを作れ」と言わるのでフォルダを作りましょう.フォルダを作ると下図のようになります.

Technology Manager

(2) Macro Development
DRCのスクリプトを登録します.メニューの Macros → Macro Development を開き,左のペインの DRCタブを選択します.

Macro Development (DRC,スクリプト登録前)

Technology sky130A を選択し,上のアイコンから Import file を選びび,/headless/.klayout/tech/sky130A/sky130A.lydrc  をインポートします.

DRCスクリプトのインポート

これで DRC のスクリプトが登録されました.sky130A をダブルクリックすると中身を見ることもできます.というか編集もできてしまいますが,当然ながら編集してはいけません.

DRCスクリプト

2.2 レイアウトを作る

何か適当なレイアウトを作りましょう.エラーが出ないと面白くないので,下のように Metal 1 を置いてみます.描いたら適当なところに保存しましょう.

テスト用レイアウト

デザインルールの m1 のセクションを見てみると,配線幅 (m1.1) Width of metal 1 > 0.140 um は満たしていますが,配線間の間隔については (m1.2) Spacing of metal1 to metal1 > 0.140 um のところ,このレイアウトでは 0.05 um しかありません.また,下の四角は面積が 0.15×0.25=0.0375 um2 ですが,これも最小面積ルール (m1.6) Min metal 1 area > 0.083 um2 に違反しています.

2.3 DRC の実行

メニューの Tools → DRC → Edit DRC Script を実行します.開くのは 2.1 (2) で使った Macro Development です.別に Macros → Macro Development で開いても構いません.重要なのは,DRCタブの sky130A が選択されていることです.緑色三角形アイコンの Run current script で DRC が実行されます.

DRC実行

実行すると,Klayout のメインウィンドウに下のような実行状況が表示され,終わると Marker Browser が開きます.なお間違って閉じてしまった場合は メニューの Tools → Marker Browser から開きましょう.

DRC実行中
Marker Browser

左の Directoryペインが結果の一覧になっています.「2」がエラーの数です.予想通りですね.ちなみに真面目な設計だとここの数字が数千とかになったりします.By Cell でも By Category でもどちらでもいいですが展開すると,詳細を確認できます.

DRCエラーの詳細

Info のところに,違反したルールと違反箇所の座標が表示されています.座標はいちいち調べなくても,右上の Markers をクリックすると下のように表示されます.ちょっと見にくいですが,輪郭線の一部の色が変わっているところです.

マーカーの表示

これらの情報を使ってレイアウトを修正していきます.なお Marker Browser が開いているときはレイアウトの編集ができません.編集するときは Marker browser を閉じましょう.再び開きたかったら Tools → Marker Browser です.すべてのエラーをクリアするまでがんばりましょう.

DRCクリーン


この記事が気に入ったらサポートをしてみませんか?