2022年1月15日土曜日

IC Compiler で DRC Error の一覧を出力する(get_drc_errors)

DRC Error をリスト形式で得るために get_drc_errors を利用する.

get_drc_errors
-error_view mw_error_view : 対象の Milkyway view (デフォルトで現在の view)
-error_id error_idserror_idと一致するオブジェクトのみ出力
-type error_typeerror_type に一致する違反を出力
-bbox {lx ly ux uy}:検索範囲
-quit:マッチしないときのメッセージを表示しない
-regexp | -exact-regexp では正規表現を有効に,-exact はワイルドカードを有効に
-nocaseerror_id および -filter オプションで大文字小文字を区別しない
-filter expressionfilter_collection コマンドで指定可能な形式でフィルタする

例えばショートが1000以上ある場合に ICC を止めるプロシージャを以下のように書ける.

2023/02/28 嘘を書いていたことが判明.get_drc_errors は collection を出力するので, get_object_name で list に変換しないといけません.
  1. proc ::checkDRCAndExit { } {
  2. set drcerror_coll [get_drc_errors -type "Short" -quiet]
  3. set drcerror_list [get_object_name $drcerror_coll]
  4. set drcerror_num [llength $drcerror_list]
  5. if {$drcerror_num > 1000} then {
  6. echo "Error: Exit icc, so many drc errors!"
  7. echo $drcerror_num
  8. quit
  9. }
  10. }

0 件のコメント:

コメントを投稿