原创 [博客大赛]S3C6410时钟控制(1.1)系统时钟设定

2014-4-21 21:43 2065 14 15 分类: MCU/ 嵌入式 文集: S3C6410

S3C6410时钟控制(1.1)系统时钟设定

一、S3C6410系统时钟控制的概述

S3C6410系统有三个PLLAPLL/MPLL/EPLL)和四个CLKACLK/HCLK/PCLK/SCLK,具体的说是,APLL——用于ARMCLK——用于CPU

MPLL——用于HCLKPCLK——HCLK用于AXI/AHB总线外设,PCLK用于APB总线外设;

EPLL——用于SCLK——用于其他外设,特别是音频相关的外设,还有UART/IIS/IIC等;

每个外设块的时钟信号都可以被启用或者禁用,由软件控制以减少电源消耗。

1)下图是时钟发生器的体系结构。

20140421213915388001.png

2)时钟源的选择,这个是硬件连接,详见S3C6410用户手册。

3PLLCLK的结构关系,见下图

20140421213922736002.png

这里需要注意的是,APLL产生的时钟也可以通过SYNCMUXOTHERS[6])的选择,作为HCLKPCLK的输入源。另外CLK_SRC[0/1/2]控制选择三组时钟源是PLL还是FIN

4ARMAXI/AHB/APB总线发生器

AXIAHB总线最高工作在133MHz频率下,APB总线最高工作在66MHz频率下。由于APBAXIAHB总线上二者工作频率不一致,在这两种总线上进行数据同步传输时会采用特殊逻辑单元,频率比率在 AHB 时钟和 APB 时钟之间必须有一个整数值;并且AHB总线和APB总线上的频率必须是偶数,则分频系数一般为奇数;AHB总线上的JPEG和安全相关子系统不能工作在133MHzAHB总线专门为这样低频子系统提供低频工作时钟,通过设置DIV(CLKJPEG)DIV(CLKSECUR)分频位来设置其工作频率。

20140421213927665003.jpg

从以上的图中可以说明,HCLK_GATEPCLK_GATE SCLK_GATE 控制时钟操作。如果一个位被设置,则通过每个时钟分频器相应的时钟将会被提供,否则将被屏蔽。

下图是提供的建议时钟分配方案:

20140421213932117004.jpg

5)时钟比例的变化。时钟分频器产生的各种操作时钟从1状态变为2状态有一个变化的周期,这个周期还不是固定的,一般为10~20时钟周期,这个需要注意。

二、S3C6410系统时钟相关定时器

1PLL相关的寄存器,一类是控制寄存器,一类是锁存寄存器。

20140421213939952005.png

其中LOCK寄存器用来在时钟变化的周期,屏蔽输出,以产生一个稳定的输出,设定值为时间长度。

20140421213944942006.jpg

CON寄存器为控制寄存器,设定各种分频值,从而产生合适的频率。

20140421213949697007.png

20140421213955179008.jpg

20140421214001899009.png

20140421214007304010.jpg

20140421214014513011.jpg

2)时钟源控制寄存器,6410有很多时钟源,不仅有PLL、外部晶振、还有外部时钟或者GPIO的时钟源。时钟源控制寄存器控制了每一个时钟源多路选择器MUX,包括一些特殊外设,这里仅截取了最后3位。

20140421214019382012.jpg

20140421214025117013.jpg

3)时钟分频器控制寄存器,控制每一个分频器(divider)支持不同的频率要求,具体使用哪一个寄存器的哪一位,见详细的表格。其中CLK_DIV0 主要控制系统时钟和多媒体 IP 的特殊时钟,HCLKX2HCLK PCLK 的最大操作频率分别为 266MHz133MHz 66MHzNANDSECUR JPEG 的时钟操作不能超过 66MHzMFC CAM 时钟操作不能操过 133MHzCLK_DIV1 控制MMCLCDTV 定标器和UHOST 时钟;CLK_DIV2 控制SPIAUDIOUARTIrDA 时钟。具体见用户手册。

20140421214031811014.jpg

4)时钟输出配置寄存器。可以将PLL/HCLK/48M/27M/RTC等时钟输出,也可对其进行分频等处理。可以用来监测系统时钟的设置或者供给其他芯片时钟。输出口GPF

20140421214037550015.jpg

5)时钟选通控制寄存器。可以禁止每一个IP的时钟工作,具体的见每一位。初始值为1,都是允许的。

20140421214043202016.jpg

6)其他寄存器

20140421214049317017.jpg

这里面基本的就是设定时钟的同步异步工作模式。

20140421214059829018.jpg

20140421214109192019.jpg

(不好意思,估计是截图太多,ednchina不支持,所以分成了两个)

文章评论1条评论)

登录后参与讨论

用户403664 2014-4-23 10:28

欢迎欢迎啊!
相关推荐阅读
用户1651464 2014-05-06 11:07
__asm__ __volatile__ 嵌入式内嵌汇编语法解构
再次对EDN的编辑功能表示无语,这篇文章竟然说超字数限制!...
用户1651464 2014-05-04 14:54
sourceinsight添加uboot时,部分文件无法搜索
Sourceinsight添加uboot时,部分文件无法搜索 在用sourceinsight查看uboot(或者linux内核源码等代码)的时候,突然发现不能使用搜索的方法查找源码中的.S文件,查找...
用户1651464 2014-04-25 11:20
ubuntu中vi使用大全
vi编辑器是任何Unix及Linux系统下标准的编辑器,他的强大不逊色于任何 最新的文本编辑器,这里只是简单地介绍一下他的用法和一小部分指令。由于对Unix及Linux系统的任何版本,vi编辑器是完全...
用户1651464 2014-04-21 21:47
[博客大赛]S3C6410时钟控制(1.2)系统时钟设定
S3C6410时钟控制(1.2)系统时钟设定 三、S3C6410时钟初始化的具体流程。 1:设定PLL_LOCK寄存器。参见上面的PLL_LOCK(1)。 对应代码:(C或者汇编)     //1-...
用户1651464 2014-04-21 21:46
[博客大赛]S3C6410时钟控制(2)PWM定时器设置
S3C6410时钟控制(2)PWM定时器设置 1、    S3C6410定时器综述 (1)   定时器资源,参见上图,S3C6410有5个32位定时器,其中定时器0和定时器1具有脉冲宽度调制(PW...
我要评论
1
14
关闭 站长推荐上一条 /2 下一条