博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
s3c2440 FCLK、HCLK、PCLK时钟频率配置
阅读量:4212 次
发布时间:2019-05-26

本文共 1431 字,大约阅读时间需要 4 分钟。

1)FLCK、HCLK和PCLK的关系

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来的。

2)这三个时钟是什么关系

这三个时钟通常设置为1:4:8,1:3:6的分频关系,也就说如果主频FLCK是400MHz,按照1:4:8的设置,那么HLCK是100MHz,PLCK是50MHz

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

如果CLKDIVN设置为0x5,那么比例即为1:4:8,前提是CAMDIVN[9]为0.

S3C2440有两个锁相环,一个主锁相环MPLL提供给FCLK的,另外一个UPLL是提供给USB时钟(48MHz)的,与MPLL一样,UPLL的产生也是通过UPLLCON寄存器设置分频因子得到。

MPLLCON的配置是用来确定FCLK频率的,计算公式如下:

图1 计算FLCK

 

 

从“ldr      r1, = ((92 << 12) + (1 << 4) + 1) ”该代码中可以看到数值存在移位操作,即92<<12、1<<4,这个可以参考图2各预分频值的配置。

 

图2 MDIV、PDIV、SDIV

 

MDIV的配置在MPLLCON的[19:12]位,因此配置MDIV的值需要左移12位。同样的道理,配置PDIV值需要左移4位,SDIV值需要左移0位(左移0位相当于不用偏移,废话,嘻嘻)。

 

那么根据图1计算FLCK的公式,计算过程如下:

 

FCLK=2*(92+8)*(12000000)/(3+2^1)=400000000=400MHz

 

    当FCLK得到正确的配置后,这时就需要对HCLK、FCLK进行配置了,即进行预分频操作,该配置过程很见到,只需要对CLKDIVN简单配置一下就OK了。

 

CLKDIVN寄存器内容如图3。

 

;设置CLKDIVN

ldr r0,=CLKDIVN

ldr r1,=0x5

str r1,[r0]

在bootloader中CLKDIVN的配置值为0x5,即FCLK:HCLK:PCLK=1:4:8。相对应的频率将会是400MHz、100MHz、50MHz。

时钟和电源管理部分寄存器

LOCKTIME:   UPLL、 MPLL 锁定时间的计数值。

MPLLCON   UPLLCON: 这两个寄存器都有MDIV PDIV SDIV设置,对于输入12M的晶振,有相应的推荐值,产生200M和48M的频率。

CLKCON: 为各种外围接口提供时钟。

CLKSLOW: 是否打开2个PLL。

CLKDIVN: 设置CLK、 HCLK、 PCLK比率的寄存

转载地址:http://inkmi.baihongyu.com/

你可能感兴趣的文章
sql server性能分析--DMV之(sys.dm_exec_query_stats )
查看>>
高效SQL查询之索引覆盖(index coverage)
查看>>
高效SQL查询之索引(VI)
查看>>
高效SQL查询之索引(II)
查看>>
高效SQL查询之索引(I)
查看>>
高效SQL查询之索引(III)
查看>>
清空压缩数据表
查看>>
MSSQL添加字段说明
查看>>
SQL查表名、字段名、表说明、字段说明
查看>>
在SqlServer中用自定义函数返回动态表内容
查看>>
CONTAINS和FREETEXT
查看>>
深入探讨Truncate Table
查看>>
SQL Server 2008 下的备份和日志收缩
查看>>
SQL 中 Delete、Truncate、Drop 的异同
查看>>
数据仓库的粒度
查看>>
利用同义词简化SQL Server 2005开发
查看>>
查询处理的逻辑顺序
查看>>
SQL Server 2008中的数据压缩策略
查看>>
实现SQL Server 2008数据压缩
查看>>
Sql Server 2005 统计信息用途
查看>>