Hard Processor System Technical Reference Manual: Agilex™ 5 SoCs

ID 814346
Date 11/27/2024
Public
Document Table of Contents

7.6.1. PLL Wrapper

The clock manager contains two PLL wrappers. These wrappers contain Altera® PLLs and dividers. The following diagram shows the PLL module and clock assignments.

Figure 258. PLL Module and Clock Assignments Diagram

The following table shows some of the PLL Module registers and clock frequencies used to configure the Main PLL and Peri PLL, along with their descriptions. The values shown are examples for calculation purposes.

Note: The first section of the table requires user input with valid numbers. The second section of the table is calculated based on the inputs from the first section of the table.
Table 299.  PLL Module Registers
Register Bit Main PLL Peripheral PLL Description
Below requires user input
[main,peri]pllgrp.pllglob.psrc <source clock value> <source clock value>

Source clock into the PLL

= 0 (hps_osc_clk)

= 1 (cb_intosc_div2_clk)

= 2 (f2h_free_clk)

Reference Clock frequency (MHz) 25 25 Frequency of the clock source selected by [main,peri]pllgrp.pllglob.psrc
[main,peri]pllgrp.pllglob.Arefclkdiv 1 1 Reference clock divider control
[main,peri]pllgrp.pllm.mdiv 128 120 Used to calculate VCO frequency
[main,peri]pllgrp.fdbck.fdiv 0 0 Fractional synthesizer center frequency control word
[main,peri]pllgrp.pllc0.div 5 5 Used to calculate pll_c0 frequency output
[main,peri]pllgrp.pllc1.div 4 5 Used to calculate pll_c1 frequency output
[main,peri]pllgrp.pllc2.div 7 125 Used to calculate pll_c2 frequency output
[main,peri]pllgrp.pllc3.div 8 6 Used to calculate pll_c3 frequency output
[main,peri]pllgrp.pllglob.fastrefclk 0 0 PLL fast reference clock mode control
[main,peri]pllgrp.pllglob.drefclkdiv 0 0 Reference clock divider control used by the DPLL
[main,peri]pllgrp.pllglob.modclkdiv 6 5 Reference clock divider control
Below is calculated based on above user inputs
VCO frequency (MHz) 3200 3000 Frequency of the VCO which is [main,peri].pllm.mdiv * Ref_clk
[main,peri]pllgrp.vcoalib.mscnt 1 1 VCO calibration parameter
[main,peri]pllgrp.vcoalib.hscnt 124 116 VCO calibration parameter
[main,peri]_pll_c0 (MHz) 640 600 VCO frequency / [main,peri]pllgrp.pllc0.div
[main,peri]_pll_c1 (MHz) 800 600 VCO frequency / [main,peri]pllgrp.pllc1.div
[main,peri]_pll_c2 (MHz) 457 24 VCO frequency / [main,peri]pllgrp.pllc2.div
[main,peri]_pll_c3 (MHz) 400 500 VCO frequency / [main,peri]pllgrp.pllc3.div

The following figure shows the boot clock generation.

Figure 259. Boot Clock Generation

The following table shows the Boot Clock registers used to configure the boot_clk, along with descriptions.

Table 300.  Boot Clock Generation Registers
Clock Name Register Bit Description
boot_clk Clock_Mgr.clkmgr.ctrl.swctrlbtclken

This bit allows software to control the boot_clk mux select.

= 1 (swctrlbtclksel determined the mux setting)

= 0 (the security features determine the fuse settings)

Clock_Mgr.clkmgr.ctrl.swctrlbtclksel

This bit is only used if swctrlbtclken is set.

= 0 (boot_clk source is hps_osc_clk)

= 1 (boot_clk source is cb_intosc_div2_clk)

Clock_Mgr.clkmgr.ctrl.bootmode

When set, the Clock Manager is in Boot Mode.

In Boot Mode, Clock Manager register settings defining clock behavior are ignored and clocks are set to their Boot Mode settings. All clocks are bypassed and external HW managed counters and dividers are set to divide by 1.

This bit should only be cleared when clocks have been correctly configured.

This field is set on a cold reset and optionally on a warm reset. SW might set this bit to force the clocks into Boot Mode. SW exits Boot Mode by clearing this bit.