AR# 47514

Zynq-7000 SoC、DDR - セルフリフレッシュの後、DDR3 で DRAM のクロックが開始するタイミングが早すぎる

説明

セルフリフレッシュ クロック停止モードを有効にするため、DDR3 コントローラーをプログラムできます。コントローラーは DRAM へのクロックを正しく停止しますが、クロックを再開するまでの tCKSRE 時間 (約 5 クロック サイクル) が満たされません。
DDR3 のセルフリフレッシュ モードを使用しないか、DRAM アクティビティがないときにのみソフトウェアでセルフリフレッシュが有効/無効になるようにします。

ソリューション

影響:
深刻な問題ではありません。「回避策の詳細」を参照してください。
回避策:
セルフリフレッシュ クロック停止モードを有効にしないか、またはクロックを手動で制御します。
対象となる構成:
セルフリフレッシュが有効になっている DDR3 モードでの PS DDR コントローラーを使用するシステム
対象となるデバイス リビジョン:(Xilinx Answer 47916) - Zynq-7000 デザイン アドバイザリ マスター アンサーを参照してください。

DDR3 動作でセルフリフレッシュ クロック停止モードが有効な場合、コントローラーにより DRAM へのクロックが正しく停止されますが、クロックを再開するまでの tCKSRE 時間 (約 5 クロック サイクル) が満たされません。DDR3 クロックの再開のタイミングが早すぎ、必要な遅延期間の前に開始する可能性があります。
回避策の詳細: 消費電力を削減するために DDR3 クロックを動的に無効にする場合は、DDR3 バスがいつ長時間アイドル状態になるかをシステムで認識させ、セルフリフレッシュがオンのときはクロック停止機能を手動で設定する必要があります。手順は次のとおりです。
  • コントローラーのセルフリフレッシュ機能を有効にします。
  • DDR バスがアイドル状態であるかを確認します。DDRC 動作モード レジスタが 2'b11 (セルフリフレッシュ モードであることを示す) であるかどうかを監視すると、これを確認できます。
  • レジスタ 0x08 を使用して DDRC のクロック停止機能を設定します。
  • システムで DDRC へのトラフィックが再開することが認識されると、クロック停止機能がリセットされます。
  • データが DDRC 再開のため送信されると、コントローラーが自動的に DRAM をセルフリフレッシュから抜け出させます。

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

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

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
53051 Zynq-7000 SoC - PS DDR コントローラー N/A N/A
AR# 47514
日付 05/23/2018
ステータス アクティブ
種類 デザイン アドバイザリ
デバイス