Cyclone® V SoC および Arria® V SoC デバイス向けの Altera SoC エンベデッド・デザイン・スイートによって生成された HPS SDRAM コントローラー・キャリブレーション・アルゴリズムの問題により、DQS イネーブル・センター・レポートの開始レポートと終了レポートの両方よりも大きくなる場合があります。
キャリブレーション・アルゴリズムは、多数の遅延の最大パラメーターと最小パラメーターを見つけ、中心値を選択します。DQS を有効にすると、開始レポートと終了レポートの両方が VFIFO_SIZE に正規化されていますが、センター レポートは正規化されていないため、範囲 start: end の範囲外に見える場合があります。
VFIFO_SIZEは、Cyclone®VおよびArria®Vデバイスでは16に設定されています。
注: このレポートを有効にするには、キャリブレーション・プロセスの結果を標準出力 (通常は UART) に報告するマクロ・RUNTIME_CAL_REPORTを設定する必要があります。
中央の VFIFO レポートは、VFIFO_SIZEである 16 で除算する必要があり、残りは VFIFO 遅延です。
例えば:
Seq。C: DQS 有効 ;グループ0 ;ランク 0 ;VFIFO 6を起動します。フェーズ1 ;遅延 4
Seq。C: DQS 有効 ;グループ0 ;ランク 0 ;終了 VFIFO 7 ;フェーズ 0 ;遅延 18
Seq。C: DQS 有効 ;グループ0 ;ランク 0 ;センター VFIFO 22 ;フェーズ5 ;遅延 3
真の中心 VFIFO 値は 22 % 16 = 6 で、予想どおり 6 から 7 の間です。
生成されたプリローダー コードは、この変更を行うために次のように変更できます。
1. < preloader>\uboot-socfpga\board\altera\socfpga\sdram\sequencer.c を開きます。
2. 次の行を検索します。
RPRINT("DQS 有効;グループ %lu ;ランク %lu ;センター VFIFO %2li ;フェーズ %li ;遅延 %2li", grp, sr, v, p-1, d);
3.この行に置き換えます 。
RPRINT("DQS 有効;グループ %lu ;ランク %lu ;センター VFIFO %2li ;フェーズ %li ;遅延 %2li", grp, sr, (v % VFIFO_SIZE), p-1, d);
4. 次を実行してプリローダーを再生成します。
きれいにする。作る。
この問題は、Altera SoC エンベデッド・デザイン・スイート 15.1 以降で修正されています。