您的位置 首页 应用

关于3C2440 FCLK, HCLK, PCLK的联系

1)FLCK、HCLK和PCLK的关系S3C2440有三个时钟FLCK、HCLK和PCLKs3c2440官方手册上说P7-8写到:FCLKisusedbyARM920T,内核时钟,主频

1)FLCK、HCLKPCLK的联系

S3C2440有三个时钟FLCK、HCLK和PCLK

s3c2440官方手册上说P7-8写到:

FCLK is used by ARM920T,内核时钟,主频。

HCLK is used for AHB bus, which is used by the ARM920T, the memory controller, the interrupt controller, the LCD controller, the DMA and USB host block.也便是总线时钟,包含USB时钟。

PCLK is used for APB bus, which is used by the peripherals such as WDT, IIS, I2C, PWM timer, MMC interface,ADC, UART, GPIO, RTC and SPI.即IO接口时钟,例如串口的时钟设置便是从PCLK来的;

那么这三个时钟是什么联系呢?

这三个时钟一般设置为1:4:8,1:3:6的分频联系,也就说假如主频FLCK是400MHz,依照1:4:8的设置,那么HLCK是100MHz,PLCK是50MHz

寄存器CLKDIVN标明并设置了这三个时钟的联系

假如CLKDIVN设置为0x5,那么份额即为1:4:8,条件是CAMDIVN[9]为0.

2)输入时钟FIN与主频FCLK的联系

现代的CPU基本上都运用了比主频低的多的时钟输入,在CPU内部运用锁相环进行倍频。关于S3C2440,常用的输入时钟FIN有两种:12MHz和16.9344MHz,那么CPU是如何将FIN倍频为FCLK的呢?

S3C2440运用了三个倍频因子MDIV、PDIV和SDIV来设置将FIN倍频为MPLL,也便是FCLK

MPLL=(2*m*FIN)/(p*2^s) where m=(MDIV+8), p=(PDIV+2), s=”SDIV”

寄存器MPLLCON便是用来设置倍频因子的

理论上,你能够经过设置该寄存器来完成不同的频率,但是,因为实践存在的各种束缚联系,设置一个恰当的频率并不简单,手册上列出了一些常用频率的表格,

例如,假定输入时钟FIN=16.9344M,MDIV=110, PDIV=”3″, SDIV=”1″,

使用上面的公式,FCLK=2*16.9344*(110+8)/((2+3)*2)=399.65

3)关于USB时钟

S3C2440有两个锁相环,一个主锁相环MPLL提供给FCLK的,别的一个UPLL是提供给USB时钟(48MHz)的,与MPLL相同,UPLL的发生也是经过UPLLCON寄存器设置分频因子得到,计算公式稍有不同:

UPLL=(m*FIN)/(p*2^s) where m=(MDIV+8), p=(PDIV+2), s=”SDIV”,相同,能够经过查表得到一个适宜的值。

最终值得一提的是,在CLKDIVN的第三位DIVN_UPLL用来设置USB时钟UCLK和UPLL的联系,假如UPLL已经是48Mhz了,那么这一位应该设置为0,表明1:1的联系,否则是1:2的联系

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/263135.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部