get_property およびリストの並べ替え - 2023.2 日本語

Vivado Design Suite ユーザー ガイド: Tcl スクリプト機能の使用 (UG894)

Document ID
UG894
Release Date
2023-11-17
Version
2023.2 日本語

get_property で返されるエレメント (文字列またはオブジェクト) のリストは、オブジェクトの入力リストに基づいて並べ替えられます。エレメントの数も同じになります。このプロパティは、複数リストに対して Tcl コマンドの foreach で繰り返すことができます。

効率の悪いコード:

set cells [get_cells -hier -filter {...}]
foreach cell $cells {
  set loc [get_property LOC $cell]
  ...
}

このコードの場合、get_property LOC $cell コマンドが $cells コレクション内のセルごとに実行されます。

効率的なコード:

set cells [get_cells -hier -filter {...}]
foreach cell $cells loc [get_property LOC $cells] {
  ...
}

このコードの場合、get_property LOC $cells コマンドが 一度しか実行されないので、長いオブジェクトのリストの実行時間がかなり改善されます。これは、get_property で返されたリストに Tcl リストの $cells と同じ数のエレメントが含まれ、返されたエレメントが入力リストと同じ順番だからです。