DCビデオチュートリアルレッスン

レッスン

デザインとライブラリのオブジェクト

設計対象

  • Verilogのレベルの
    6分割オブジェクト:デザイン、時計、ポート、ネット 、セルとピン。
    いくつかの相違点:デザインは、現在、__ __トップに位置しており、__ __セルはトップレベルのモジュールでインスタンス化され、ポートはトップの外部と通信し、ピンが対話するモジュールと外部モジュールの一例であるポートですポート。
    **オブジェクトの概念は、プログラミング言語に似ている「オブジェクト」。

  • 回路図レベル

ここに画像を挿入説明
TCL文を書くときに選択した視野角によっては、同じ名前を持つオブジェクトの異なるタイプすることができ、例えば、CLKクロック、ネット、それはPINであってもよいし、異なる属性を区別する必要があります。特にデザインとセルの変換はいつでも起こり得ます。

コマンド

Q:どのように明確にするには?
たとえば、コマンドが5 SUMをset_load SUMは、ネットまたはポートを指定しないタイプではありません、そして容量性負荷5pFの負荷がデフォルトポートにロードされますどのような場所で決定することはできません。
ここに画像を挿入説明

  • get_ *コマンド
set_load 5 [get_nets SUM]

get_メソッドコマンドが返すオブジェクトはあなたにも「を使用することができ、対応するタイプと名前、obejct名前があり」と「?」のワイルドカードを。あなたがオブジェクトの条件を満たしていない場合、それは「空のコレクション」を返します。

  • ALL_ コマンド
    に応じて
    、対応する位置の種類は、対応するタイプの全てのオブジェクトを返します。
remove_from_collection [all_inputs] [get_ports CLK]

このコマンドは、カッコの組の後に除去された前方ブラケット特定の濃度の1つであることができます。
コマンドの要約:
ここに画像を挿入説明

属性&コレクション

各タイプは、固有の属性(属性)、例えば、有する
ポート:方向、driving_cell_rise、負荷max_capacitanceなど
細胞:. Dont_touch、is_hierarchical、is_mapped、is_sequentialなどを
本質的属性オブジェクトに制約を課しているDC制約ファイル。
注:get_メソッドとALL_コマンドを実行した後、DCは、セット(集合)に対応するオブジェクトを生成し、対応するハンドル(ハンドル)のセット、すなわち「ポインタ」を返します

set foo [get_ports p*]  //foo是collection的名字
sizeof_collection $foo  //f输出foo内objection的个数
query_objects $foo  //输出foo内所有object的列表
filter_collection [get_cells *] "reg_name =~ AN*"   //从cell中过滤出以AN开头的object
foreach_in_collection cell [get_cells -hier * -filter "is_hierarchical == true"]
//相当于对符合条件的object遍历
  • 補足
    Q:配列DOのDCコンセプト?
    A:はい、このコマンドを使用することができます「セット歳(zhangsan)23は、」年齢zhangsan assignment要素23に設定することができます。
    プロパティ値を返すために「エコー$歳(zhangsan)」。

DCなど__env__コマンドで事前に定義された独自の「配列名ENV」を出力することができる実際にはENVのすべての要素の名前の配列は、この配列内の環境変数のコレクションです。

別のコマンドのgetenv / get_unix_variableは、環境変数を取得することができます。

リリース5元の記事 ウォンの賞賛0 ビュー625

おすすめ

転載: blog.csdn.net/qq_38453556/article/details/104021821