S3C6410之系统时钟

来源:互联网 发布:七天网络查询成绩入口 编辑:程序博客网 时间:2024/04/29 12:26
本小节主要介绍系统控制器在S3C6410 RISC 微处理器中的功能和使用。系统控制器由两部分组成:
分别是系统时钟控制和系统电源管理控制。系统时钟控制逻辑,在S3C6410 中生成所需的系统时钟信号,
用于CPU 的ARMCLK, AXI/AHB 总线外设的HCLK 和APB 总线外设的PCLK。在S3C6410 中有三个PLL。一个
仅用于ARMCLK,一个用于HCLK 和 PCLK,最后一个用于外设,特别用于音频相关的时钟。通过外部提供
的时钟源,时钟控制逻辑产生慢速时钟信号ARMCLK, HCLK 和 PCLK。该每个外设块的时钟信号可能被启用
或禁用,由软件控制以减少电源消耗。
在电源控制逻辑中,S3C6410 有多种电源管理方案,以保持电力系统的最佳消耗,用于一个给定的任
务。在S3C6410 中,电源管理由四个模块组成:通用时钟门控模式,空闲模式,停止模式和睡眠模式。
在S3C6410 中,通用时钟门控模式用来控制内部外设时钟的开/关。可以通过用于外设所要求的特定
应用提供时钟,使用通用时钟门控模式来优化S3C6410 的电源消耗。例如:如果定时器没有要求,则可以
中断时钟定时器,以降低功耗。
闲置模式仅中断ARMCLK 到CPU 内核,它提供时钟给所有外设。通过使用闲置模式,电力消耗通过CPU
内核而减少。
停止模式通过禁用PLL 冻结所有时钟到CPU 以及外设。在S3C6410 中,电力消耗仅因为漏电流。
睡眠模式断开内部电源。因此,电力消耗因为除了唤醒逻辑,CPU 和内部逻辑将为零。为了使用睡眠
模式,两个独立的电源是必需的。两个电源中的一个用于唤醒逻辑提供电力,另一个提供其他内部逻辑,
包括CPU 和为了旋转开/关所必须进行的控制。
3.1 系统控制器的特性
系统控制器包含的特性有以下几个方面:
 三个PLL:ARM PLL, 主PLL, 额外的PLL (这些模块用于使用特殊频率)。
 五种省电模式:正常,闲置,停止,深度停止和睡眠。
 五种可控制的电源范围:domain-V, domain-I, domain-P, domain-F, domain-S。

 内部子块的控制操作时钟。

 控制总线优先权。
3.2 功能描述
这部分主要介绍S3C6410 系统控制器的功能。包含时钟的体系结构,复位设计和电源管理模式。
1.硬件体系结构
如图2-2 所示,说明了S3C6410 的结构框图。S3C6410 是由ARM1176 处理器,几个多媒体协处理器和
各种外设IP 组成的。ARM1176 处理器是通过64 位AXI 总线连接到几个内存控制器上的。这样做是为了满
足带宽需求。多媒体协处理器分为五个电源域,包括MFC (多格式编解码器), JPEG, Camera 接口, TV 译
码器等等。当IP 没有被一个应用程序所要求时,五个电源域可以进行独立的控制,以减少不必要的电力
消耗。


2.时钟体系结构
如图3-2 所示,说明了时钟发生器模块的结构框图。时钟源在外部晶体(XXTIpll) 和外部时钟
(XEXTCLK)两者之间进行选择。该时钟发生器由三个PLL(锁相环)组成,产生高频率的时钟信号可以达到
1.6GHz。


3.时钟源的选择
内部时钟会产生用于外部的时钟源,其说明如表3-1 所示。当外部复位信号被声明时,OM[4:0]引脚
决定了S3C6410 的操作模式。OM[0]引脚选择外部时钟源,例如,如果OM[0]是0,则XXTIpll(外部晶体)
被选择。否则,XEXTCLK 被选择。


操作模式根据启动设备主要分为六种类别。启动设备可以是NAND,SROM,NOR,OneNAND,MODEM 和内
部ROM 其中的的一种。当启动设备是NAND 时,可以选择的额外的特征如表6-108 所示。当NAND Flash 设
备被使用时,XSELNAND 引脚必须是1,即使它用来作为启动设备或存储设备。当OneNAND Flash 设备被使
用时,XSELNAND 引脚必须是0,即使它用来作为启动设备或存储设备。当NAND/OneNAND 设备不使用时,
XSELNAND 可以是0 或1。
4.锁相环(PLL)
S3C6410 内部的三个PLL,分别是APLL, MPLL 和EPLL。带有一个参考输入时钟操作频率和相位的同步
输出信号。在这个应用当中,包括基本模块的说明,如图3-3 所示。电压控制振荡器(VCO)产生的输出频
率成正比,输入到直流电压。通过P,前置配器划分输入频率(FIN)。通过M,主分频器分割VCO 的输出
频率,用于输入到相位频率检测器,(PFD)。通过S,post 定标器划分为VCO 的输出频率。相位差探测
器计算相位差和电荷泵的增加/减少输出电压。每个PLL 的输出时钟频率是可以计算的。


5. PLL和输入参考时钟之间时钟选择
如图3-4 所示,说明了时钟发生器逻辑。S3C6410 有三个PLL,APLL 用于ARM 时钟操作,MPLL 用于
主时钟操作,EPLL 用于特殊用途。时钟操作被分为三组。第一组是ARM 时钟,从APLL 产生。MPLL 产生主
系统时钟,用于操作AXI,AHB 和APB 总线操作。最后一组是从EPLL 产生的,产生的时钟主要用于外设IP’
s,例如,UART,IIS 和IIC 等等。


CLK_SRC 寄存器的最低三位控制三组时钟源。当位为0 时,则输入时钟绕过组,否则,PLL 输出将被
应用到组。
6. ARM和AXI/AHB/APB总线时钟发生器
S3C6410 的ARM1176 处理器运行时最大可达227MHz。操作频率可以通过内部时钟分频器来控制,
DIVARM,没有改变PLL 频率。该分频器的比率从1~8 不同。ARM 处理器降低了运行速度,以减少功耗。
S3C6410 由AXI 总线,AHB 总线和APB 总线组成,以优化性能要求。内部的Ips 连接到适当的总线系
统,以满足I/O 带宽和操作性能。当在AXI 总线或AHB 总线上时,操作速度可以最大达到133MHz。当在
APB 总线上时,最大的操作速度可以达到66MHz。而且,总线速度在AHB 和APB 之间有高度依赖同步数据
传输。如图3-5 所示,该图说明了总线时钟发生器部分满足总线系统时钟的要求。


S3C6410 的HCLKX2 时钟提供了两个DDR 控制器,DDR0 和DDR1。操作速度可以达到最高266MHz,通过
DDR 控制器发送和接收数据。当操作没有被请求时,每个HCLKX2 时钟可独立地屏蔽,以减少多余的功率耗
散在时钟分配网络上。所有的AHB 总线时钟都是从DIVHCLK 时钟分频器中产生的。产生的时钟可以独立地
屏蔽,以减少多余的功率耗散。HCLK_GATE 寄存器控制HCLKX2 和 HCLK 的主机操作。
通过APB 总线系统,低速互连IP 传输数据。运行中的APB 时钟高达66MHz,并且是从DIVPCLK 时钟分
频器产生的。也可以屏蔽使用PCLK_GATE 寄存器。作为描述,频率比率在AHB 时钟和APB 时钟之间必须有
一个整数值。例如,如果DIVHCLK 的CLK_DIV0[8]位为1,则DIVPCLK 的CLK_DIV0[15:12]必须是1,3,...。

否则,APB 总线系统上的IP 不能正确的传输数据。
在AHB 总线系统上,JPEG 和安全子系统在133MHz 时不能运行。AHB 时钟带有DIVCLKJPEG 和
DIVCLKSECUR 独立地的产生。因此,作为APB 时钟它们有相同的限制。如表3-2 所示,列出了建议时钟分


上述表格所描述的是,该分频器用于ARM 独立地使用APLL 输出时钟,并没有约束时钟分频器的值。

7. 时钟比例的改变
时钟分频器产生各种操作时钟,包括系统操作时钟,如ARMCLK,HCLKX2,HCLK 和 PCLK。图3-6 描述
的是一个转换波形,时钟分频器用于系统操作时钟从1~2 变化比例。从图中的波形可以看出,PLL 输出时
钟缓慢地改变周期的比例。这个周期是不固定的,在典型的例子中大约是10~20 时钟周期。

因此,如果一些IP 运行,必须特别注意比率改变的周期。否则,IP 操作将失败。

8. OneNAND时钟发生器
OneNAND 接口控制器要求两个同步时钟。一个时钟的频率必须是其他时钟频率的一半。如图3-7 所示,
两个时钟的产生。


9.MFC时钟发生器
MFC 块在除了HCLK 和 PCLK 外,还需要一个特殊的时钟。如图3-8 所示,显示了这个特殊时钟的产
生。


时钟源在HCLKX2 和 MOUTEPLL 之间进行选择。操作时钟使用HCLKX2 进行分频。HCLKX2.的操作频率
是固定的,默认为266MHz。因此,CLK_DIV0[31:28] 必须是4’b0001 以产生133MHz。当MFC 不需要全性
能时,有两种方法来减少操作频率。一种方法是当CLK_SRC[4]设置为1 时,使用EPLL 输出时钟。通常,
EPLL 是用于使音频时钟和输出时钟低于MPLL 的输出频率。另一种方法是调节时钟分频器CLK_DIV0[31:28]
的比例。使用此值,较低的频率可以应用到MFC 块,使用CLK_SRC[4]区域,以减少多余的功率耗散。因为
EPLL 的输出频率HCLKX2 或 HCLK 是独立的。

10. Camera I/F时钟发生器
如图3-9 所示,显示用于Camera 接口的时钟发生器。用于Camera 接口的所有数据都是基于这个时钟
来进行传输/接收的。最大操作时钟达到133MHz。


11. 显示时钟发生器(POST, LCD和 scaler)
如图3-10所示,描述的是用于显示块的时钟发生器。通常LCD控制器需要的图像后处理器和定标器的
逻辑。操作时钟可以独立地控制这个时钟发生器。CLKLCD 和 CLKPOST被连接到domain-F内的LCD 控制器
和后处理器。CLKSCALER 是连接到domain-P内的定标器块。



12. 音频时钟发生器(IIS和PCM)
如图3-11 所示,描述的是用于音频接口逻辑的特殊时钟发生器,包括IIS 和PCM。S3C6410 有两个IIS
通道和两个PCM 通道。在任意时间,它仅支持两个通道。一般来说,EPLL 发生器是用于音频接口的一个特
殊时钟。如果S3C6410 要求两个独立的时钟频率,如,在两个音频接口之间不存在整数关系,余下的时钟
可以通过外部振荡器或使用MPLL 来直接提供。



14. 用于IrDA, USB host时钟发生器
如图3-13 所示,描述的是用于IrDA 和 USB host 的时钟发生器。通常USB 接口需要48MHz 的操作时
钟。


15. 时钟开/关控制
从以上的图中可以说明,HCLK_GATE,PCLK_GATE 和SCLK_GATE 控制时钟操作。如果一个位被设置,则
通过每个时钟分频器相应的时钟将会被提供。否则,将被屏蔽。
HCLK_GATE 控制HCLK,用于每个Ips。每个IP 的AHB 接口逻辑被独立地屏蔽,以减少动态电力消耗。
PCLK_GATE 控制PCLK,用于每个IP’s。某些IP’s 需要特殊时钟正确的操作。通过SCLK_GATE 时钟被控
制。
16. 时钟输出
S3C6410 时钟输出端口,产生内部时钟。这个时钟被用于正常的中断或调试用途。


原创粉丝点击