Hard Processor System Technical Reference Manual: Agilex™ 5 SoCs

ID 814346
Date 7/19/2024
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

7.7.2. Example Configuration of Registers for Power Optimized (1000 MHz CPU)

Note: All clock gates are enabled.
Note: The first section of the table requires user input with proper numbers. The second section of the table is calculated based on the inputs from the first section of the table.
Table 317.  Values for Power Optimized Configuration (1000 MHz CPU)
Register Bit Main PLL Peripheral PLL
Below requires user input
Reference clock frequency (MHz) 25 25
[main,peri]pllgrp.pllglob.Arefclkdiv 1 1
[main,peri]pllgrp.pllm.mdiv 160 120
[main,peri]pllgrp.fdbck.fdiv 0 0
[main,peri]pllgrp.pllc0.div 4 5
[main,peri]pllgrp.pllc1.div 5 5
[main,peri]pllgrp.pllc2.div 6 125
[main,peri]pllgrp.pllc3.div 10 6
[main,peri]pllgrp.pllglob.fastrefclk 0 0
[main,peri]pllgrp.pllglob.drefclkdiv 0 0
[main,peri]pllgrp.pllglob.modclkdiv 7 5
Below is calculated based on above user inputs
VCO frequency (MHz) 4000 3000
[main,peri]pllgrp.vcoalib.mscnt 1 1
[main,peri]pllgrp.vcoalib.hscnt 156 116
[main,peri]_C0 (MHz) 1000 600
[main,peri]_C1 (MHz) 800 600
[main,peri]_C2 (MHz) 667 24
[main,peri]_C3 (MHz) 400 500
Table 318.  Power Optimized Configuration (1000 MHz CPU)
Block Clock Name *.src *.cnt (n+1 divider) *.div (2^n divider) Freq (MHz)
MPU core3_clk Main_C0 (n=0) 0 1000
core2_clk Main_C0 (n=0) 0 1000
core1_clk/core0_clk Main_C1 (n=0) 0 800
DSU/APS (MPU/CCU) mpu_free_clk / mpu_clk Main_C2 (n=0) 0 667
mpu_ccu_clk 1 333.3
mpu_peri_clk 2 166.7
PSS NOC l3_main_free_clk Main_C3 (n=0) 400
l4_main_clk l3_main_free_clk 400
l4_mp_clk 1 200
l4_sp_clk 2 100
l4_sys_free_clk 2 100
SPI spim[1,0]_sclk_out l4_main_clk 400
spis[1,0]_sclk_in 400
DMA dmac_core_clk, aclk_mi 400
hs_clk l4_mp_clk 200
USB2OTG hclk, pmu_hclk, utmi_clk 200
I3C core_clk 200
I2C Pclk l4_sp_clk 100
UART Pclk 100
SP Timer Pclk 100
EMAC emac0_clk Peri_C3 (n=1) 1 250
emac1_clk 1 250
emac2_clk 1 250
emac_ptp_clk Main_C3 (n=0) 0 400
USB 3.1 usb31_ref_clk Main_C3 (n=0) 19 20
SD/eMMC sdphy_reg_clk, S_pclk, clk l4_mp_clk 200
sdmclk dfi_clk 25
NAND bch_clk, mACLK, regPCLK, phy_reg_pclk l4_mp_clk 200
nf_clk dfi_clk 25
SoftPHY reg_pclk l4_mp_clk 200
clk_ctrl dfi_clk 25
clk_phy phy_clk 50
phy_clk l4_mp_clk 2 50
dfi_clk phy_clk

1 37

25
H2F h2f_user0_clk Peri_C3 (n=1) 0 500
h2f_user1_clk Peri_C3 (n=1) 0 500
GPIO gpio_db_clk Main_C3

1

1 38 100
CoreSight cs_at_clk Main_C3 0 400
cs_pdbg_clk 2 100
cs_trace_clk 2 100
PSI psi_ref_clk Peri_C3 0 500
37 System_Mgr.dfi_interface_cfg.dfi_ctrl_sel. If using NAND, then set this to =0. If using SD/eMMC, then set this to =1.
38 perpllgrp.gpiodiv.gpiodbclk is actually a n+1 divider, and not a 2^n divider. A divide by 1 value (perpllgrp.gpiodiv.gpiodbclk = 0) is not supported and may produce unpredictable results.