PCI Express* 向けRタイル Avalon® StreamingインテルFPGA IPユーザーガイド

ID 683501
日付 10/07/2022
Public
ドキュメント目次

6.1.3. データ転送とパフォーマンスの問題のデバッグ

PCIeリンクによってデータの送信が停止する原因には、多くの理由が考えられます。PCI Express Base Specificationで定義している3種類のエラーについて、次の表で説明します。

表 105.  PCI Express Base Specificationで定義しているエラーの種類
種類 主な担当エージェント 説明
Correctable ハードウェア 訂正可能エラーはシステムのパフォーマンスに影響を与える可能性がありますが、データの整合性は維持されます。
Uncorrectable、Non-fatal デバイス・ソフトウェア 訂正不可能で非致命的なエラーの定義は、データが失われるが、システム・インテグリティーは維持されるエラーです。例えば、ファブリックは特定のTLPを失う可能性がありますが、それでも問題なく機能します。
Uncorrectable、Fatal システム・ソフトウェア エラーがデータの損失やシステム障害によって生成された場合は、訂正不可能で致命的であると見なされます。ソフトウェアでは、このようなエラーの処理方法、つまり、リンクをリセットするか、他の手段を実装して問題を最小限に抑えるかを決定しなければなりません。
表 106.  Correctable Error Status Register (AER)
観察内容 問題 解決方法
レシーバー・エラー・ビットが設定された

物理層エラー: 考えられる原因は、レーンがL0にあるときのPCSエラー、コントロール・シンボルを間違ったレーンで受信した、リンクがL0からリカバリーステートに移行する際のシグナル・インテグリティーの問題です。

コンフィグレーション出力インターフェイス、またはハードIPリコンフィグレーション・インターフェイスとリンク・トレーニング・デバッグ・フローのフローチャートを使用して、エラーに関する詳細情報を取得します。
不良DLLPビットが設定された

データリンク層エラー: CRC検証が失敗したときに発生する場合があります。

コンフィグレーション出力インターフェイス、またはハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。
不良TLPビットが設定された データリンク層エラー: LCRC検証が失敗した場合、またはシーケンス番号エラーが発生した場合に発生する場合があります。 コンフィグレーション出力インターフェイス、またはハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。
Replay_num_rolloverビットが設定された データリンク層エラー: 考えられる原因は、TLPを送信したが4回連続で成功しなかった (ACKがなかった) ことです。 コンフィグレーション出力インターフェイス、またはハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。
リプレイ・タイマー・タイムアウト・ステータス・ビットが設定された

データリンク層エラー: 考えられる原因は、ACKまたはNAKの受信が、送信されたTLPのタイムアウト期間内に行われなかったことです。

コンフィグレーション出力インターフェイス、またはハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。
アドバイザリー (非致命的) トランザクション層エラー: 考えられる原因は、優先度の高い訂正不可能なエラーが検出されたことです。  
訂正済み内部エラービットが設定された トランザクション層エラー: 考えられる原因は、内部ハードIP RAMのECCエラーです。 エラー・インターフェイス、コンフィグレーション出力インターフェイス、またはハードIPリコンフィグレーション・インターフェイスとDBIレジスターを使用して、エラーに関する詳細情報を取得します。
表 107.  Uncorrectable Error Status Register (AER)
観察内容 問題 解決方法
データ・リンク・プロトコル・エラー データリンク層エラー: 考えられる原因は、トランスミッターが受信したACK/NAKのSeq IDが、未確認のTLPまたはACKシーケンス番号に対応していないことです。 コンフィグレーション出力インターフェイス、ハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。
サプライズ・ダウン・エラー データリンク層エラー: 考えられる原因は、link_up_o がL0中にデアサートされたことです。これは、予期せぬ物理層リンクのダウンが発生することを示します。 エラー・インターフェイス、コンフィグレーション出力インターフェイス、ハードIPリコンフィグレーション・インターフェイス、およびDBIレジスターを使用して、エラーに関する詳細情報を取得します。
フロー・コントロール・プロトコル・エラー

トランザクション層エラー: 考えられる原因は、レシーバーによる報告が、許可されたクレジット制限を超えていることです。

このエラーが発生するのは、コンポーネントが200μsの制限のある更新されたフロー・コントロール・クレジットを受け取らない場合です。

TX/RXフロー・コントロール・インターフェイス、コンフィグレーション出力インターフェイス、ハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。
ポイズニングされたTLPを受信した トランザクション層エラー: 考えられる原因は、受信したTLPにEPビットが設定されていることです。 エラー・インターフェイス、コンフィグレーション出力インターフェイス、コンフィグレーション・インターセプト・インターフェイス、ハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得し、適切なアクションを決定します。
コンプリーションのタイムアウト トランザクション層エラー: 考えられる原因は、コンプリーションの受信が、ノンポステッド・リクエストが送信された後の必要な時間内に行われなかったことです。 エラー・インターフェイス、コンプリーション・タイムアウト・インターフェイス、コンフィグレーション出力インターフェイス、ハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。
コンプリーションの中止 トランザクション層エラー: 考えられる原因は、コンプリーターによるリクエストの実行が、リクエスターの問題またはコンプリーターの障害が理由でできないことです。 コンフィグレーション出力インターフェイス、エラー・インターフェイス、ハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。
予期せぬコンプリーション

トランザクション層エラー: 考えられる原因は、リクエスターが受信したコンプリーションが、コンプリーションを待機しているリクエストと一致しないことです。

TLPは、ハードIPによって削除され、アプリケーション層には表示されません。

コンフィグレーション出力インターフェイス、エラー・インターフェイス、ハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。
レシーバーのオーバーフロー

トランザクション層エラー: 考えられる原因は、レシーバーが受信するTLPが、使用可能な受信バッファースペースを超えていることです。

TLPは、ハードIPによって削除され、アプリケーション層には表示されません。

TX/RXフロー・コントロール・インターフェイス、エラー・インターフェイス、コンフィグレーション出力インターフェイス、ハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。
不正な形式のTLP

トランザクション層エラー: 考えられる原因は、受信したTLPヘッダーのエラーです。

TLPは、ハードIPによって削除され、アプリケーション層には表示されません。

エラー・インターフェイス、コンフィグレーション出力インターフェイス、ハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。
ECRCエラー

トランザクション層エラー: 考えられる原因は、TLPが不正な形式ではなく、LCRCチェックが有効であるにもかかわらず、レシーバーでのECRCチェックが失敗したことです。

ハードIPブロックでは、このTLPを自動的に処理します。TLPがノンポステッド・リクエストである場合、ハードIPブロックによって、コンプリーター・アボート・ステータスの完了が生成されます。TLPはハードIPによって削除され、アプリケーション層には表示されません。

コンフィグレーション出力インターフェイス、ハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。
サポートされていないリクエスト

トランザクション層エラー: 考えられる原因は、コンプリーターがリクエストを実行できないことです。

TLPは、ハードIPブロックで削除され、アプリケーション層には表示されません。TLPがノンポステッド・リクエストである場合、ハードIPブロックにより生成されるコンプリーションをは、サポートされていないリクエストステータスになります。

コンフィグレーション出力インターフェイス、エラー・インターフェイス、ハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。
ACS違反 トランザクション層エラー: 考えられる原因は、受信したポステッドまたはノンポステッド・リクエストのアクセス制御エラーです。 コンフィグレーション出力インターフェイス、エラー・インターフェイス、ハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。
訂正不可能な内部エラー トランザクション層エラー: 考えられる原因は、ハードウェアによって訂正できない内部エラーです。 エラー・インターフェイス、コンフィグレーション出力インターフェイス、またはハードIPリコンフィグレーション・インターフェイス、およびDBIレジスターを使用して、エラーに関する詳細情報を取得します。
アトミックエグレスがブロックされた   エラー・インターフェイス、コンフィグレーション出力インターフェイス、ハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。
TLPプリフィクスがブロックされた EPまたはRPのみ エラー・インターフェイス、コンフィグレーション出力インターフェイス、ハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。
ポイズニングされたTLPエグレスがブロックされた EPまたはRPのみ エラー・インターフェイス、コンフィグレーション出力インターフェイス、コンフィグレーション・インターセプト・インターフェイス、およびハードIPリコンフィグレーション・インターフェイスを使用して、エラーに関する詳細情報を取得します。