外部メモリー・インターフェイス・ インテル® Agilex™ FPGA IPユーザーガイド

ID 683216
日付 12/14/2020
Public

このドキュメントの新しいバージョンが利用できます。お客様は次のことを行ってください。 こちらをクリック 最新バージョンに移行する。

ドキュメント目次

11.9.6. トラフィック・ジェネレーターのステータス

トラフィック・ジェネレーターは、ISSPとコンフィグレーション・インターフェイスの2つの方法でステータスを報告します。

ステータスレジスター

トラフィック・ジェネレーターは、次の2つの方法でステータスを報告します。

  • ISSP
  • コンフィグレーション・インターフェイス

PNFレジスターまたはISSPの読み取り

Pass Not Fail (PNF) レジスターは、ctrl_ammインターフェイスで読み出された各ビットのステータスを示します。

pnf[x] = ~(amm_readdata_0[x]^amm_expected_readdata_0[x])

PNF信号は「スティッキー」です。つまり、読み出しの不一致のためにPNFビットが0に設定されると、PNFがクリアされるまで、連続する読み出しで1の値には戻りません。PNF、TG_FAIL_EXPECTED_DATA、およびTG_FAIL_READ_DATAレジスターは通常、tg_cfgインターフェイスの単一のレジスターよりも幅広です。そのため、バス幅はNPNF_regレジスター間で分割されます。

NPNF_reg = ceil(TG_RDATA_WIDTH / 32)

N番目のレジスターのアドレスを決定する場合

TG_PNF[NPNF_reg] = (Symbol Address of TG_PNF) + 4*NPNF_reg

最大のPNF幅は511ビットであるため、バス幅はNPNF_ISSP ISSP間で分割されます。

NPNG_ISSP = ceil(TG_RDATA_WIDTH / 511)

PNF ISSPにはPNF0から始まるインデックスが名前にあります。

例:

この例では、次の条件を前提にしています。

  • DQ幅: x72 (ECCを有効にしない)
  • メモリープロトコル: DDR4
  • DQ/DQS: 8
  • レート: クオーターレート

メモリープロトコルとレートにより、TG_DATA_RATE_WIDTH_RATIO = 8です。

したがって、TG_RDATA_WIDTH = 72 * 8 = 576です。これは次に示すように、18個のTG_PNFレジスターと2個のPNF ISSP (PNF0、PNF1) があることを意味します。

2つの実行の間での障害情報のクリア

TG_CLEARレジスターを設定し、トラフィック・ジェネレーターの連続する2つの実行の間で障害の情報をクリアすることができます。

コンフィグレーション・エラー・コード

トラフィック・パターンがデータの不一致の直接の原因である可能性がある場合、TG_ERROR_REPORTレジスターコードはフラグを立てます。エラーが発生した場合でも、トラフィック・パターンの実行を選択することができます。これは、合格した比較を求めているわけではない場合に役立つことがあります。

次の表に、エラーコードの概要を示します。

表 154.  エラーコード
コード値 コード名 コードの説明
0x1 ERR_MORE_READS_THAN_WRITES 読み出し操作が書き込み操作よりも多くスケジュールされています。データの不一致が発生する可能性があります。
0x2 ERR_BURSTLENGTH_GT_SEQ_ADDR_INCR Avalonのバースト長がシーケンシャルなアドレスの増分を超えています。データの不一致が発生する可能性があります。
0x4 ERR_ADDR_DIVISIBLE_BY_GT_SEQ_ADDR_INCR シーケンシャルなアドレスの増分が必要な最小値よりも小さくなっています。データの不一致が発生する可能性があります。
0x8 ERR_SEQ_ADDR_INCR_NOT_DIVISIBLE シーケンシャルなアドレスの増分が必要なステップで割り切れません。データの不一致が発生する可能性があります。
0x10 ERR_READ_AND_WRITE_START_ADDRS_DIFFER 読み出しと書き込みの開始アドレスが異なります。データの不一致が発生する可能性があります。
0x20 ERR_ADDR_MODES_DIFFERENT アドレス生成モードの読み出しと書き込みの設定が異なります。データの不一致が発生する可能性があります。
0x40 ERR_NUMBER_OF_RAND_SEQ_ADDRS_DIFFERENT ランダムなシーケンシャル・アドレス操作の数に関する読み出しと書き込みの設定が等しくありません。データの不一致が発生する可能性があります。
0x80 ERR_REPEATS_SET_TO_ZERO 読み出しまたは書き込みの反復回数が無効です。読み出しまたは書き込みの反復回数は1以上にする必要があります。データの不一致が発生する可能性があります。
0x100 ERR_BOTH_BURST_AND_REPEAT_MODE_ACTIVE 読み出し/書き込みの反復が1より大きい場合、Avalonのバースト長を1より大きくすることはできません。データの不一致が発生する可能性があります。