インテルのみ表示可能 — GUID: mwh1410384217325
Ixiasoft
インテルのみ表示可能 — GUID: mwh1410384217325
Ixiasoft
7.5.1. 使用可能なサービスの検索
サービスパスの検索
#We are interested in master services. set service_type "master" #Get all the paths as a list. set master_service_paths [get_service_paths $service_type] #We are interested in the first service in the list. set master_index 0 #The path of the first master. set master_path [lindex $master_service_paths $master_index] #Or condense the above statements into one statement: set master_path [lindex [get_service_paths master] 0]
System Consoleコマンドでは、アクセスするサービス・インスタンスを識別するためのサービスパスが必要です。さまざまなコンポーネントのパスとインデックスは、System Consoleの実行間やバージョン間で変わる可能性があります。サービスパスを取得するには、get_service_paths コマンドを使用します。
サービスパスの文字列の値は、ツールのリリースごとに異なります。marker_node_info コマンドを使用して、パスから情報を取得します。
System Consoleでは、ほとんどのサービスを起動時に自動検出し、すべてのJTAGおよびUSBベースのサービス・インスタンスを自動スキャンしてサービスパスを取得しますが、TCP/IPなどの一部のサービスは自動検出しません。add_service コマンドを使用して、System Consoleにこれらのサービスを通知します。
Marker_node_info
指定されたサービスに関連付けられているSLDノードに関する情報を取得するには、marker_node_info コマンドを使用します。
set slave_path [get_service_paths -type altera_avalon_uart.slave slave] array set uart_info [marker_node_info $slave_path] echo $uart_info(full_hpath)
正しいサービスパスの検索
デザインに同じサービスのインスタンスが複数含まれている場合は、完全な階層パスを使用してサービスパスを正しく識別する必要があります。
次の例では、master_0 というデバッグ・エンドポイントの正しいサービスパスを識別するために、次の手順を実行します。
- デザイン内のエンドポイントの完全な階層名を検索します。
- master_0 を右クリックし、コンテキスト依存メニューでCopyを選択します。これにより、完全な階層パス (ed_synth_top|master_0) がコピーされます。
- 次のように、この階層パスをTcl変数に保存して、後から簡単に参照できるようにします。
set desired_hpath ed_synth_inst|master_0
- get_service_paths コマンドを –hpath フラグと階層パスとともに使用して、目的のエンドポイントの特定のサービス パスを取得します。このコマンドは、サービスパスを含むリストを返します。
#Return a list of one element with the desired element set service_paths [get_service_paths -hpath $desired_hpath master]
- 後から簡単にアクセスできるように、サービスパスを変数として保存します。
#Extract and store the element in a variable set master_0_spath [lindex $service_paths 0]