クリティカルな問題
RapidIO I IP コアのさまざまな構成をインスタンス化する場合 デザインの場合、構成間でライブラリー名が衝突すると合成が生じる 同じ名前を持つモジュールについてエンジンが誤って分析される可能性があります。 構成。ポートが見つからないため、デザインの合成に失敗する場合があります。 ハードウェアで異常な動作を引き起こす原因となる正しく合成されていない。
この問題は、インテル® Quartus® Prime 開発ソフトウェア・プロ・エディションのデザインに影響を与えています。
インテル® Quartus® Prime 開発ソフトウェア・スタンダード・エディションのデザインは影響を受けません。
RapidIO IP で生成された .qip ファイルごとに固有のライブラリー名を割り当てます。 コア:
ステップ 1:テキスト・エディターで .qip を開きます。
ステップ 2:次のデフォルトのライブラリー名をそれぞれ a に置き換えます。 固有の名前。
- ライブラリー "altera_rapidio_
- ライブラリー"altera_xcvr_native_a10_"
- ライブラリー"altera_xcvr_reset_control_"
- ライブラリー"altera_xcvr_atx_pll_a10_"
例えば:
set_global_assignment -library "altera_rapidio_160" -name SDC_FILE [file
join
$::quartus(qip_path)"altera_rapidio_160/synth/rio_altera_rapidio_160_puccaoq.sdc"]
set_global_assignment -library "altera_rapidio_160" -name VERILOG_FILE [file
join $::quartus(qip_path)
"altera_rapidio_160/synth/rio_altera_rapidio_160_puccaoq.v"]
set_global_assignment -library "altera_rapidio_160" -name VERILOG_FILE [file
join $::quartus(qip_path) "altera_rapidio_160/synth/altera_rapidio_io_master.v"]
set_global_assignment -library "altera_rapidio_160" -name VERILOG_FILE [file
join $::quartus(qip_path)
"altera_rapidio_160/synth/altera_rapidio_io_slave.v"]
set_global_assignment -library "altera_xcvr_native_a10_160" -name
SYSTEMVERILOG_FILE [file join $::quartus(qip_path)
"altera_xcvr_native_a10_160/synth/alt_xcvr_resync.sv"]
set_global_assignment -library "altera_xcvr_native_a10_160" -name
SYSTEMVERILOG_FILE [file join $::quartus(qip_path)
"altera_xcvr_native_a10_160/synth/alt_xcvr_arbiter.sv"]
set_global_assignment -library "altera_xcvr_native_a10_160" -name
SYSTEMVERILOG_FILE [file join $::quartus(qip_path)
"altera_xcvr_native_a10_160/synth/twentynm_pcs.sv"]
set_global_assignment -library "altera_xcvr_native_a10_160" -name
SYSTEMVERILOG_FILE [file join $::quartus(qip_path)
"altera_xcvr_native_a10_160/synth/twentynm_pma.sv"]
各ライブラリーに固有の名前を割り当てます。
set_global_assignment -library "_altera_rapidio_160" -name
SDC_FILE [file join $::quartus(qip_path)
"altera_rapidio_160/synth/rio_altera_rapidio_160_puccaoq.sdc"]
set_global_assignment -library "_altera_rapidio_160" -name
VERILOG_FILE [file join $::quartus(qip_path)
"altera_rapidio_160/synth/rio_altera_rapidio_160_puccaoq.v"]
set_global_assignment -library "_altera_rapidio_160" -name
VERILOG_FILE [file join $::quartus(qip_path)
"altera_rapidio_160/synth/altera_rapidio_io_master.v"]
set_global_assignment -library "_altera_rapidio_160" -name
VERILOG_FILE [file join $::quartus(qip_path)
"altera_rapidio_160/synth/altera_rapidio_io_slave.v"]
set_global_assignment -library "_altera_xcvr_native_a10_160"
-name SYSTEMVERILOG_FILE [file join $::quartus(qip_path)
"altera_xcvr_native_a10_160/synth/alt_xcvr_resync.sv"]
set_global_assignment -library "_altera_xcvr_native_a10_160"
-name SYSTEMVERILOG_FILE [file join $::quartus(qip_path)
"altera_xcvr_native_a10_160/synth/alt_xcvr_arbiter.sv"]
set_global_assignment -library "_altera_xcvr_native_a10_160"
-name SYSTEMVERILOG_FILE [file join $::quartus(qip_path)
"altera_xcvr_native_a10_160/synth/twentynm_pcs.sv"]
set_global_assignment -library "_altera_xcvr_native_a10_160"
-name SYSTEMVERILOG_FILE [file join $::quartus(qip_path)
"altera_xcvr_native_a10_160/synth/twentynm_pma.sv"]
ステップ 3:上記の手順を RapidIO I IP コアの他のインスタンスに適用します。 生成された .qip ファイル。指定されたライブラリー名が .qip 全体で一意である必要があることを確認します。 ファイル。
ステップ 4:デザインをコンパイルします。 スチーミング Q 合成における ソースファイルの読み込み レポートでは、RapidIO モジュールが表示されます (altera_rapidio_*) は、.qip で定義したライブラリーにマップされます。 ファイル。
この問題は、RapidIO I IP コアの 16.1 バージョンで修正されています。