AR# 53828

Zynq-7000 SoC - SLCR.A9_CPU_RST_CTRL を使用してソフトウェア リセットした後の CPU 1 のステート

説明

ソフトウェア リセットを CPU 1 に適用した後、CPU 1 はどのステートになりますか。

ソフトウェア リセット操作は次のようになります。

mwr 0xf8000008 0xdf0d
mwr 0xf8000244 0x2
mwr 0xf8000244 0x22mwr 0xf8000244 0x20mwr 0xf8000244 0x0

ソリューション

ARM 資料によると、CPU 1 ソフトウェア リセット コントロールを出力すると、CPU 1 がアドレス 0x0 にジャンプします。

ソフトウェア リセットにより bootROM が強制的に実行され、CPU は 0xFFFFFF00 エリアに配置され、結果的に WFE に配置されます。

したがって、ユーザー コードでは 0x0 からの CPU 1 を 0xFFFFFF00 エリアにある WFE に移動させる必要があります。

次のメモリ書き込み操作は、CPU1 ソフトウェア リセットの後に CPU 1 を WFE に移動させることができます。

# write a stub into 0xffffff00
mwr 0xFFFFFF00 0xe3e0000f
mwr 0xFFFFFF04 0xe3a01000
mwr 0xFFFFFF08 0xe5801000
mwr 0xFFFFFF0C 0xe320f002
mwr 0xFFFFFF10 0xe5902000
mwr 0xFFFFFF14 0xe1520001
mwr 0xFFFFFF18 0x0afffffb
mwr 0xFFFFFF1C 0xe1a0f002
# write jump instruction into 0x0
mwr 0x00000000 0xe3e0f0ff
AR# 53828
日付 05/28/2018
ステータス アクティブ
種類 一般
デバイス
ツール
IP
Boards & Kits