有些應(yīng)用中,需要降低Xilinx MPSoC的功耗。缺省設(shè)置中,R5/GPU都被使能。如果需要省電,可以在Vivado里關(guān)閉R5/GPU。步驟如下:
1.選中 MPSoC IP,在右鍵菜單中選擇Block Properties.
2.在窗口Block Properties中,選擇Properties.
3. 在窗口中,展開 “Config”。
4. 在搜索框中輸入 “Power”, 出現(xiàn)PSU_RPU_POWER_ON等選項(xiàng)。如果值是1,表示被使能;如果值是0,表示被關(guān)閉。如果要關(guān)閉,點(diǎn)擊最左邊的編輯圖標(biāo),輸入0。
編輯前Power選項(xiàng)
編輯后Power選項(xiàng)
在Vivado里編輯完成后,執(zhí)行“Generate Output Products”, 在導(dǎo)出Hardware的HDF/XSA文件。
2. JTAG檢查R5/A53狀態(tài)
在SDK/Vitis里創(chuàng)建FSBL和Standalone程序,啟動后,在XSCT命令后窗口下,檢查R5/A53狀態(tài),可以看到設(shè)置為0的R5/A53的狀態(tài)是No Power。
xsct% connect
tcfchan#2
xsct% target
1 PS TAP
2 PMU
3 PL
4 PSU
5 RPU (Reset)
6 Cortex-R5 #0 (No Power)
7 Cortex-R5 #1 (No Power)
8 APU
9 Cortex-A53 #0 (Running)
10 Cortex-A53 #1 (Power On Reset)
11 Cortex-A53 #2 (No Power)
12 Cortex-A53 #3 (No Power)
3. 代碼
代碼在psu_init.c里的函數(shù)psu_peripherals_powerdwn_data( )里。
/*
POWER DOWN REQUEST INTERRUPT ENABLE
/
/
Register : REQ_PWRDWN_INT_EN @ 0XFFD80218
Power-down Request Interrupt Enable for Dual_R5
PSU_PMU_GLOBAL_REQ_PWRDWN_INT_EN_RPU 1
Power-down Request Interrupt Enable for GPU PP0
PSU_PMU_GLOBAL_REQ_PWRDWN_INT_EN_PP0 1
Power-down Request Interrupt Enable for GPU PP1
PSU_PMU_GLOBAL_REQ_PWRDWN_INT_EN_PP1 1
Power-down Request Interrupt Enable for ACPU2
PSU_PMU_GLOBAL_REQ_PWRDWN_INT_EN_ACPU2 1
Power-down Request Interrupt Enable for ACPU3
PSU_PMU_GLOBAL_REQ_PWRDWN_INT_EN_ACPU3 1
Power-down Request Interrupt Enable Register. Writing a 1 to this locati
on will unmask the Interrupt.
(OFFSET, MASK, VALUE) (0XFFD80218, 0x0000043CU ,0x0000043CU)
/
PSU_Mask_Write(PMU_GLOBAL_REQ_PWRDWN_INT_EN_OFFSET,
0x0000043CU, 0x0000043CU);
/##################################################################### */
/*
POWER DOWN TRIGGER
/
/
Register : REQ_PWRDWN_TRIG @ 0XFFD80220
Power-down Request Trigger for Dual_R5
PSU_PMU_GLOBAL_REQ_PWRDWN_TRIG_RPU 1
Power-down Request Trigger for GPU PP0
PSU_PMU_GLOBAL_REQ_PWRDWN_TRIG_PP0 1
Power-down Request Trigger for GPU PP1
PSU_PMU_GLOBAL_REQ_PWRDWN_TRIG_PP1 1
Power-down Request Trigger for ACPU2
PSU_PMU_GLOBAL_REQ_PWRDWN_TRIG_ACPU2 1
Power-down Request Trigger for ACPU3
PSU_PMU_GLOBAL_REQ_PWRDWN_TRIG_ACPU3 1
Power-down Request Trigger Register. Writing a 1 to this location will t
rigger a power-down request to the PMU.
(OFFSET, MASK, VALUE) (0XFFD80220, 0x0000043CU ,0x0000043CU)
/
PSU_Mask_Write(PMU_GLOBAL_REQ_PWRDWN_TRIG_OFFSET,
0x0000043CU, 0x0000043CU);
責(zé)任編輯:pj
-
gpu
+關(guān)注
關(guān)注
28文章
5206瀏覽量
135593 -
編輯器
+關(guān)注
關(guān)注
1文章
828瀏覽量
32936
發(fā)布評論請先 登錄
低功耗藍(lán)牙模塊在電表中的應(yīng)用方案
降低LDO功耗延長運(yùn)行時間
在ADS編譯器中,用標(biāo)準(zhǔn)的C庫函數(shù)printf()需要哪些設(shè)置呢?
MCU芯片想實(shí)現(xiàn)低功耗如何做到?
ALINX教程分享_Zynq UltraScale+ MPSoC PYNQ3.1.2移植
芯源MCU低功耗應(yīng)用
利用DMA如何降低MCU功耗?
雙Zynq MPSoC PS側(cè)PCIe高速DMA互連解決方案
在NuMicro? Cortex M0/M4系列中使用SWD(串行線調(diào)試)時,為什么進(jìn)入掉電模式后功耗不會降低呢?
在ANSA中設(shè)置ABAQUS獨(dú)立非線性分析步的方法
為什么在缺省設(shè)置中需要降低Xilinx MPSoC的功耗
評論