AR# 63149

Zynq-7000 SoC のデザイン アドバイザリ - PS_POR_B リセット シーケンスによりセキュア ロックダウンがトリガーされる

説明

初期のデバイスへの電源投入で、最後の PL 電源 (VCCINT、VCCBRAM、VCCAUX、または VCCO_0) の電源投入からの特定のタイミング ウィンドウ内に PS PS_POR_B がディアサートされると、デバイスがセキュア ロックダウン ステートになり、ロックダウン仕様によってブートが完了しないことがあります。

このウィンドウは、最後の PL 電源の立ち上がり時間に対する最小時間および最大時間として定義されます。

 

Tslw (min) = 最後の PL 電源が 250 mV に達してからセキュア ロックダウン ウィンドウが開始するまでの時間

Tslw (max) = 最後の PL 電源が 250 mV に達してからセキュア ロックダウン ウィンドウが終了するまでの時間






 

ソリューション

システムへの影響を評価する方法
特定のシステムが影響を受けるかどうかを評価するには、デザイン仕様またはオプションでハードウェアに対して次のテスト 1 および 2 を実行します。
 
テストでの重要な前提: 128K CRC の eFuse がイネーブルになっておらず、PLL がバイパスされていない。
ハードウェア テストの手順:
 
  • PS_POR_B、VCCINT (PL)、VCCAUX (PL)、VCCBRAM、VCCO_0 (PL) のプローブ ポイントを特定します。
  • PL 電源に対して、ダイの近くのプローブ ポイントを特定します。通常は電源バイパス キャパシタ上です。
  • オシロスコープを使用して、テスト 1 とテスト 2 の信号間の相対時間を計測します。
 




「Possible Risk」の状況では、電源投入シーケンスおよび PS_POR_B のディアサートのタイミングを解析し、セキュア ロックダウンのタイミング ウィンドウ (Tslw) 内であるかどうかを判断します。
Tslw min/max の値は、Zynq-7000 SoC デバイス、PS_CLK 周波数、PL 電源ランプ時間などのシステム レベル要素によって異なります。
カスタマーのシステムの値に基づいてこの範囲を判断するために、電源投入タイミングを算出するスプレッドシートが作成されています。 このスプレッドシートは、このアンサーの最後に添付されています。
たとえば、7Z020 デバイスで PS_CLK の周波数が 33.33 MHz、PL 電源の立ち上がり時間が 6 ms である場合、セキュア ロックダウンのタイミング ウィンドウ (Tslw) は最後の PL 電源が立ち上がり始めてから 13.45 ms ~ 38.99 ms の間です。
 
このウィンドウ内に PS_POR_B がディアサートされると、デバイスがセキュア ロックダウン ステートになる可能性があります。
PS_POR_B がこのウィンドウの前または後にディアサートされる場合は、デバイスでこの問題は発生しません。
このイベントが原因でブートが完了しないことを確認する方法
この問題が根本的な問題であるのは、次の状況がすべて存在する場合です。
 
  1. 初期電源投入を実行する。
  2. ブート中に停止する。
  3. ブート デバイスへのアクセスがない。
  4. JTAG チェーンに PL JTAG TAP がある。
  5. JTAG チェーンに PS JTAG TAP がない。
  6. セキュア ロックダウンになった後、INIT_B が High になり、High のままになる。PS_POR_B のディアサートがセキュア ロックダウン ウィンドウ内で発生する。
ソリューション
このセキュア ロックダウン ウィンドウの問題を回避するため、複数のソリューションが作成されています。
これらのソリューションは、次のカテゴリに分類されています。
 
  • PCB レベル回路を使用して、最後の PL 電源の立ち上がり時間と PS_POR_B のタイミング関係を変更します (推奨されるソリューション)。

  • PS BootROM コードの実行時間を変更し (*)、次の方法でウィンドウをシフトします。
     
    • PS eFuse ビットを切って 128K CRC チェックをイネーブルにする。
    • または
    • PLL バイパスをイネーブルにする (**)。
重要: さらにアシスタンスが必要な場合は、最寄の販売代理店に連絡するか、サービス リクエストを開いてください。
次の情報を収集してから、タイトルを「セキュア ロックダウン ウィンドウ」としてサービス リクエストを開いてください。

  • 添付のスプレッドシート解析の結果 (スプレッドシートのタイミングのスナップショット)
  • PS_POR_B、VCCINT (PL)、VCCAUX (PL)、VCCBRAM、VCCO_0 (PL)、および INIT_B のスコープショット (信号間の時間関係が必要)
 
注記:
 
(*): スタートアップ タイミングが厳しいシステムでは、PS BootROM コードの実行時間を変更するのは適切でない場合があります。
レジスタの初期化機能を使用してブート時間を最適化すると、実行時間を短縮できる可能性があります。『Zynq-7000 SoC ソフトウェア開発者向けガイド』 (UG821) の第 3 章と『Zynq-7000 SoC テクニカル リファレンス マニュアル』 (UG585) のセクション 6.3.3 を参照してください。
 
(**): この方法には、2014.4 FSBL のパッチが必要です。(Xilinx Answer 63576) を参照してください。
 

添付ファイル

関連添付ファイル

タイトル サイズ ファイルタイプ
ps_por_b_timing_calculator_rev1.0.xlsm 46 KB XLSM

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

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

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
47915 Zynq-7000 SoC デバイスのデザイン アドバイザリのマスター アンサー N/A N/A

関連アンサー レコード

AR# 63149
日付 05/28/2018
ステータス アクティブ
種類 デザイン アドバイザリ
デバイス