UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 47540

Zynq-7000 AP SoC、USB - ソフトウェア リセット後の最初の SOF が破損することがある

説明


USB リセット プロセス中 (スピード ネゴシエーションおよびチャープ)、プロトコル エンジンによりポート制御に SOF コマンドが送信されると、ポート制御によりこれらの SOF コマンドがフィルターされます。リセットが終了すると (ホストからのチャープ応答の終了)、プロトコル エンジンにより SOF が送信されたときに、アップデート opmode コマンドが送信される前に、ULPI ポート制御により PHY に SOF が送信されます。これが原因で、無効なパケットがラインに送信されます。ULPI プロトコルでは無効なパケットは NOPID Tx コマンドで、その直後に STP パルスが続きます。

USB リセット後 (usb.PORTSCx[PR] = 0)、ULPI のリセット後の処理が完了するまで usb.USBCMD[RS] をイネーブルにしないでください。ULPI のリセット後の処理が完了しているかどうかは、prtsc.pr レジスタを読み出すことにより確認できます。このようにすると、ホストにより SOF が早く送信されることはなくなります。

ソリューション


影響 :

深刻な問題ではありません。この問題は、内部カウンターの開始とリセット イベントのタイミングによって発生します。これはホスト ソフトウェアで判断することはできないので、ランダムに発生します。デバイスでは無効なパケットは無視されるべきなので、この問題は USB の点からは深刻な問題ではありません。

回避策 :

USB リセット後、ULPI のリセット後の処理が完了するまで usb.USBCMD[RS] をイネーブルにしないでください。

対象となるコンフィギュレーション :

USB コントローラーを使用するシステム
対象となるデバイス リビジョン : すべて。修正の予定はありません。詳細は、(ザイリンクス アンサー 47916) - 「Zynq-7000 デザイン アドバイザリ マスター アンサー」を参照してください。


この問題を回避するには、USB リセット後 (usb.PORTSCx[PR] = 0)、ULPI のリセット後の処理が完了するまで usb.USBCMD[RS] をイネーブルにしないでください。ULPI のリセット後の処理が完了しているかどうかは、usb.PORTSCx[PR] レジスタを読み出すことにより確認できます。このようにすると、ホストにより SOF が早く送信されることはなくなります。

注記 : この回避策によりこの問題が発生する確率は減りますが、完全にはなくならないかもしれません。
AR# 47540
日付 08/23/2012
ステータス アクティブ
種類 デザイン アドバイザリ
デバイス
  • Zynq-7000
このページをブックマークに追加