GD32F403xx User Manual
77
Figure 5-2. Clock tree
/2
4-32 MHz
HXTAL
8 MHz
IRC8M
×2,3,4
,63
PLL
Clock
Monit or
PLLSEL
PLLMF
0
1
00
01
10
CK_IRC8M
CK_HXTAL
CK_PLL
CK_SYS
168 MHz max
AHB
Prescaler
÷
1,2...512
CK_AHB
168 MHz max
APB1
Prescaler
÷
1,2,4,8,16
TIMER2,3,5,6,11,
12,13 if(APB1
prescale =1)x1
else x 2
APB2
Prescaler
÷
1,2,4,8,16
TIMER0,7,8,9,10
if(APB2 prescale
=1)x1
else x 2
ADC
Prescaler
÷
2,4,6,8,12,1
6
CK_APB2
168 MHz max
Peripheral enable
PCLK2
to APB2 peripherals
CK_APB1
84 MHz max
Peripheral enable
PCLK1
to APB1 peripherals
TIMERx
enable
CK_TIMERx
to
TIMER0,7,8,9,10
TIMERx
enable
CK_TIMERx
to TIMER2,3,
5,6,11,12,13
CK_ADCx to ADC0,1,2
40 MHz max
AHB enable
HCLK
(to AHB bus,Cortex-M4,SRAM,DMA,FMC)
EXMC enable
CK_EXMC
(to EXMC)
÷8
CK_CST
(to Cortex-M4 SysTick)
FCLK
(free running clock)
USB OTG
Prescaler
1,1.5,2,2.5
3,3.5,4
CK_USBFS
(to USBFS)
32.768 KHz
LXTAL
11
10
01
40 KHz
IRC40K
CK_RTC
CK_FWDGT
(to RTC)
(to FWDGT)
/128
CK_OUT0
SCS[1:0]
RTCSRC[1:0]
PREDV0
0
1
CK_PLL
CK_HXTAL
CK_IRC8M
CK_SYS
/2
0111
00xx
NO CLK
0100
0101
0110
CKOUT0SEL[3:0]
48 MHz
EXT1
/2
1000
1001
1010
CK_PLL1
CK_PLL2
1011
CK_PLL2
/1,2,3
15,16
PREDV1
×8,9,10
,
14,16,20
PLL1
PLL1MF
PLL2MF
×8..14,16,
18..32,40
PLL2
CK_PLL1
CK_PLL2
/1,2,3
15,16
x2
I2S1/2SEL
0
1
CK_I2S
1
EXT1 to
CK_OUT
PREDV0SEL
48 MHz
IRC48M
CTC
CK48MSEL
CK_CTC
1
0
1
0
CK_IRC48M
PLLPRESEL
ADC
Prescaler
÷5,6,10,20
0
1
ADCPSC[3]
CK_IRC48M
The f requency of AHB, APB2 and the APB1 domains can be configured by each prescaler.
The maximum f requency of the AHB, APB2 and APB1 domains is 168 MHz / 168 MHz / 84
MHz. The cortex
®
system timer (systick) external clock is clocked with the AHB clock (HCLK)
divided by 8. The systick can work either with this clock or with the AHB clock (HCLK),
conf igurable in the systick control and status register.
The ADCs are clocked by the clock of APB2 divided by 2, 4, 6, 8, 12, 16 or by the clock of
AHB divided by 5, 6, 10, 20, which def ined by ADCPSC in RCU_CFG0 and RCU_CFG1
register.
The TIMERs are clocked by the clock divided from CK_APB2 and CK_APB1. The f requency
of TIMERs clock is equal to CK_APBx(APB prescaler is 1), twice the CK_APBx(APB
prescaler is not 1).
The USBFS is clocked by the clock of CK48M. The CK48M is selected from the clock of
CK_PLL or the clock of IRC48M by CK48MSEL bit in RCU_ADDCTL register.