AR# 63576

2014.4 Zynq-7000 FSBL : PLL バイパス (MIO[6]=1) を使用してブートすると、FSBL が PLL をイネーブルにしない

説明

PLL Bypassed (MIO[6]=1) で起動する場合、FSBL が PLL (ps7_init.c ファイル内) をイネーブルにして、Zynq を標準クロック設定で使用する (PLL を含むクロック設定が Vivado での設定どおりに有効になる) はずです。

実際には、このようになりません。

ソリューション

これには、ps7_init.c ファイルに変更を加える必要があります。

たとえば、標準の ZC702 設定の場合、次の 3 行 (ARM、IO、および DDR PLL に関連) を置換する必要があります。

    EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000010U), // PLL_BYPASS_FORCE = 1
    ...
    EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000010U), // PLL_BYPASS_FORCE = 1
    ...
    EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000010U), // PLL_BYPASS_FORCE = 1

 

PLL_BYPASS_FORCE で PLL が制御できるようにするには、PLL_BYPASS_QUAL が 0 である必要があります。

    EMIT_MASKWRITE(0XF8000100, 0x00000018U ,0x00000010U), // PLL_BYPASS_FORCE = 1, PLL_BYPASS_QUAL = 0
    ...
    EMIT_MASKWRITE(0XF8000104, 0x00000018U ,0x00000010U), // PLL_BYPASS_FORCE = 1, PLL_BYPASS_QUAL = 0
    ...
    EMIT_MASKWRITE(0XF8000108, 0x00000018U ,0x00000010U), // PLL_BYPASS_FORCE = 1, PLL_BYPASS_QUAL = 0

 

この問題は 2015.2 で修正される予定です。 

 

AR# 63576
日付 03/10/2015
ステータス アクティブ
種類 一般
デバイス
ツール