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# 52031

Zynq-7000 AP SoC、APU - データ キャッシュ メンテナンス処理がアボートした後にDSB なしで ISB が実行されるとプロセッサがデッドロック状態になることがある

説明

特定の状況下では、データ キャッシュ メンテナンス処理がアボートした後にDSB なしで ISB が続くと、プロセッサがデッドロック状態になることがあります。

ソリューション

問題=は、次の状況で発生します。

  1. 一部の書き込み処理は、プロセッサーにより処理され、完了するまでに時間がかかる。一般的な状況としては、STR や STM などの書き込み処理が L1 データ キャッシュでミスになったような場合です。
  2. 書き込み処理と 3 にで記述されているデータ キャッシュ メンテナンス処理の間に DMB または DSB のメモリ バリアが挿入されない。
  3. データ キャッシュ メンテナンス処理が実行されるが、MMU 設定によりアボートされる。
  4. 3 のデータ キャッシュ メンテナンス処理と 5 の ISB の間に DMB または DSB のメモリ バリアが挿入されない。アボートされたキャッシュ メンテナンス処理に続くアボート例外ハンドラーなど、すべての種類のコードがここで実行できます。
  5. ISB 命令が、プロセッサーにより実行される。
  6. 5 の ISB と 7 の読み込みまたは書き込み処理との間に DMB または DSB のメモリ バリアが挿入されない。
  7. 読み込みまたは書き込み処理が実行される。


上記の状況により、内部データ側ドレイン要求信号がアサートされたままになります。ISB はデータ側が空になるのを待ちますが、最後の読み込みまたは書き込み処理が ISB が完了するのを待つため、データ側が空になることはありません。

影響 : 深刻な問題ではありません。この問題によりデッドロック状態が発生する可能性が有りますが、回避策で防ぐことができます。
回避策 : この問題の簡単な回避策は、アボート例外ハンドラーの最初に DSB を追加することです。
対象となるコンフィギュレーション : CPU を使用するシステム。
対象となるデバイス リビジョン : すべて。修正される予定はありません。Zynq-7000 AP SoC シリコン リビジョンの違いについては、(ザイリンクス アンサー 47916) を参照してください。


改訂履歴
2013/05/16 - 初版

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

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

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
47916 Zynq-7000 AP SoC デバイス - シリコン リビジョン間の相違点 N/A N/A
AR# 52031
日付 05/23/2013
ステータス アクティブ
種類 デザイン アドバイザリ
デバイス
  • XA Zynq-7000
  • Zynq-7000
このページをブックマークに追加