[インテル (ALTERA)] quartus の AN/LT 対応 400GE-4 FHT 基本バリアントの F タイル動的再構成デザイン例がハードウェアで適切に動作しない

説明する

インテル® Quartus® Prime プロフェッショナル・エディション ソフトウェア 23.4 の問題により、AN/LT が有効になっている 400GE-4 FHT の基本バリアントにおける F タイルのダイナミック・リコンフィグレーション・デザイン例はハードウェアで適切に動作しません。

具体的には、デザイン例を実行するための tcl スクリプトを実行した後、システム コンソールが次のメッセージを表示してハングします。
ポート 16 CSR レジスタのオフセット = 0x142c0、データ = 0x2006 の
読み取りに成功しました。 イーサネット ANLT チャネル 16 レジスタ anlt_seqcfg_csr4、オフセット = 0x2c0、データ = の読み取りに成功しました。 0x2006
ポート 16 の CSR レジスタ オフセットの読み取りに成功しました = 0x240、データ = 0x0
INFO: port_state value = 0x00000000
ポート 16 の CSR レジスタ オフセットの読み取りに成功しました = 0x240、データ = 0x0
INFO :port_state value = 0x00000000
ポート 16 CSR レジスタのオフセット = 0x240 の読み取りに成功しました、データ = 0x0
情報 :port_state 値 = 0x00000000
ポート 16 CSR レジスタ オフセット = 0x240 の読み取りに成功しました。データ = 0x0
情報 :port_state 値 = 0x00000000


解決

インテル® Quartus® Prime プロフェッショナル・エディション ソフトウェア バージョン 23.4 でこの問題を解決するには、次の手順に従ってください

  1. ディレクトリ <デザイン サンプル プロジェクト ディレクトリ>/hardware_test_design/hwtest_f/eth_f_drに切り替えます。
  2. 適切なテキスト エディタでファイルftile_eth_anlt_cfgcsr_inc.tclを開きます。 
  3. 次のコード スニペットを見つけます 。

Proc get_reset_port_state_status_0 {ch} {

「\tINFO: チャネル $ch: ポートのステータスを確認中...」と入力します。

タイムアウトを10に設定する

I 0 を設定します

そして、{1} {

if {$ch > 0xf} {

set rdata0 [reg_read [expr 0x200 + [expr $ch * 0x4]]]

} それ以外 {

set rdata0 [reg_read [expr 0xc0 + [expr $ch * 0x4]]]

}

put $::fileid “\t\tINFO: port_state value = $rdata 0”

port_state_value を設定 [expr ($rdata 0 >> 29) & 0x1]

if {($port_state_value == 1 ) || $i >= $timeout } ブレーク

増加します

}

if {$port_state_value == 1} {

「\tINFO:port_state 信号を High」にします

} それ以外 {

“\tエラー: インポート状態が High になりません”

}

}

  1. 次の行を変更する

から:

set rdata0 [reg_read [expr 0x200 + [expr $ch * 0x4]]]

以来:

set rdata0 [reg_read [expr 0x200 + [expr [expr 0x0f & $ch] * 0x4]]]

  1. 文書を保存する
  2. システム コンソールで変更したスクリプト ファイルを使用して、ハードウェア上でデザイン サンプルを実行します。

この問題は、インテル® Quartus® Prime プロフェッショナル・エディション ソフトウェアの将来のリリースで修正される予定です。

おすすめ

転載: blog.csdn.net/sqqwm/article/details/134996367