IP カタログを使用して IP カスタマイズを作成するには、IP をダブルクリックするか、ツールバーの [Customize IP] ボタンをクリックするか、IP を右クリックして [Customize IP] をクリックします。
[Customize IP] ダイアログ ボックスには、IP をカスタマイズするためのさまざまなパラメーターが表示されます。このダイアログ ボックスは、選択した IP のタイプによって異なり、パラメーターを指定するタブが 1 つまたは複数表示されます。
また、[Customize IP] ダイアログ ボックスには、IP シンボルと特定の IP のオプションを設定するタブが含まれます。これらの設定オプションは <ip_name>.xci file ファイルに記述され、IP オブジェクトのプロパティとして保存されます。
IP シンボルでは、Vivado IDE の [Schematic] ウィンドウと同じ拡大/縮小、サイズ変更、自動フィット機能がサポートされています。
次の図に、FIFO Generator IP の [Customize IP] ダイアログ ボックスを示します。
[Customize IP] ダイアログ ボックスで次のオプションを設定します。
- [Documentation] → [Product Guide]: 選択した IP の製品ガイドを開きます。
- [IP Location]: IP を保存するディレクトリを指定します。このディレクトリは、RTL ベース プロジェクトの IP ごとに変更できます。この機能は、Manage IP プロジェクトではリポジトリが構築されるので、使用できません。
- [Switch to Defaults]: すべての設定オプションをデフォルト状態にリセットし、それを確認するダイアログ ボックスが表示されます。
必要に応じて IP をカスタマイズし、[OK] をクリックします。
数値を指定する際は、16 進数を使用すると処理速度が上がります。
IP の Tcl コマンド
次は IP に使用する Tcl コマンドの例です。
IP カスタマイズを作成する例
IP は、create_ip コマンドを使用してもカスタマイズできます。次に例を示します。
create_ip -name fifo_generator -version 12.0 -vendor xilinx.com -library ip\
-module_name fifo_gen
-vlnv
を指定するか、-vendor
、-library
、-name
、および version
すべてを指定する必要があります。
create_ip
コマンドで設定します。IP プロパティの設定例
IP のコンフィギュレーション設定を定義するには、set_property コマンドを使用します。次に例を示します。
set_property CONFIG.Input_Data_Width 12 [get_ips fifo_gen]
IP プロパティのレポート例
IP で使用可能なプロパティのリストを取得するには、report_property コマンドを使用します。次に例を示します。
report_property CONFIG.* [get_ips <ip_name>]
コンフィギュレーション プロパティには、名前の冒頭に CONFIG
が付いています。
IP カスタマイズ プロパティの検索例
IP カスタマイズ プロパティがデフォルトに設定されているか、またはユーザーによって設定されているかを判断するには、次のコマンド例を参考にしてください。
# Find the read data count width.
get_property CONFIG.Read_Data_Count_Width [get_ips char_fifo]
10
# Determine the source of CONFIG.Read_Data_Count_Width property.
# See that this is the default value
get_property CONFIG.Read_Data_Count_Width.value_src [get_ips char_fifo]
default
# Get the output data width.
get_property CONFIG.Output_Data_Width [get_ips char_fifo]
8
# Determine the source of CONFIG.Output_Data_Width property.
# See that this is set by the user.
get_property CONFIG.Output_Data_Width.value_src [get_ips char_fifo]
user