AR# 47541

Zynq-7000 SoC、USB - 高速ホスト モードで NYET により NAK カウンターがデクリメントされる

説明

高速 (HS) モードの OUT トランザクションのホストにより NYET ハンドシェークが受信されると、ホスト コントローラーにより誤って NAK カウンター qTD.NakCnt がデクリメントされます。

ソリューション

 

影響:
深刻な問題ではありません。NAK 応答は、通常 NaK カウンターを再読み込みするごとに複数回発生します。NYET 応答は、再読み込みごとに複数回発生することはありません。
「影響策の詳細」を参照してください。
回避策:
なし
対象となる構成:
USB コントローラーをホスト モードで使用するシステム
対象となるデバイス リビジョン:すべて。修正の予定はありません。(Xilinx Answer 47916) - 「Zynq-7000 AP SoC デバイス - シリコン リビジョン間の相違点」を参照してください。

 

影響の詳細:
ホスト コントローラー (HC) は Nak カウンター qTD.NakCnt および 再読み込みフィールド qTD.RL を使用して、フロー制御をエンドポイントにスロットルします。フロー制御の動作は、EHCI 仕様のセクション 4.9 に説明されています。この制御は、エンドポイントにより連続して NAK が送信される可能性のあるフロー PING トランザクションを停止するために使用されます。

Nak カウンターは再読み込みフィールドから読み込まれ、HC が NAK 応答 (または上記のセクションで説明されている条件で NYET 応答) を受信したときにデクリメントされます。Nak カウンターが 0 になると、HC はエンドポイントとの通信を停止します。HC は Nak カウンターが再読み込みされるまで待機します。

フロー制御は HC が OUT トランザクションに対する NYET 応答を受信したときに開始します (NYET を 1 つだけ受信)。これにより、HC がエンドポイントに対して PING トランザクションの送信を開始し、ACK が受信されるか Nak カウンターが 0 になるまで続けられます。Nak カウンターは、新しい (マイクロ) フレームが入力されると再読み込みされます (開始イベント)。開始イベントにより、次のフレームで必要に応じて別の一連の NAK の発生が可能になります。PING トランザクションに対して ACK が受信されると、Nak カウンターが再読み込みされ、HC が OUT トランザクションを再試行します。

アンサー レコード リファレンス

マスター アンサー レコード

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
47916 Zynq-7000 SoC デバイス - シリコン リビジョン間の相違点 N/A N/A
AR# 47541
日付 05/23/2018
ステータス アクティブ
種類 デザイン アドバイザリ
デバイス