您的位置:首页 > 其它

2. S5PV210系统时钟简介

2017-08-14 19:08 162 查看
这里首先引入一个概念:

一、时钟域:(CLOCK DOMAINS)

S5PV210 consists of three clock domains, namely, main system (MSYS), display system (DSYS), and peripheral system (PSYS)。

S5PV210包含3个时钟域,分别是主系统(MSYS),显示系统(DSYS),外围设备系统(PSYS)。


• MSYS domain comprises Cortex A8 processor, DRAM memory controllers (DMC0 and DMC1), 3D, internal

SRAM (IRAM, and IROM), INTC, and configuration interface (SPERI). Cortex A8 supports only synchronous

mode, and therefore it must operate synchronously with 200MHz AXI buses.
* MSYS域包括Cortex A8处理器,DRAM存储控制器(DMC0和DMC1),3D,内部SRAM(IRAN和IROM),INTC,配置管理界面(SPERI)。Cortex A8只支持同步的模块,因此它必须与200MHz AXI 总线同步运行。


• DSYS domain comprises display related modules, including FIMC, FIMD, JPEG, and multimedia IPs (all other IPs mentioned in X, L, and T blocks)
* DSYS域包括显示相关的模块,包括FIMC,FIMD,JPEG和多媒体 IP等。


• PSYS domain is used for security, I/O peripherals, and low power audio play .

* PSYS域被用于安全模块,I/O外设和低功耗音频播放等。





以上就是S5PV210内时钟系统的三个时钟域,因为S5PV210内的时钟体系比较复杂,内部外设模块比较多,不同的外设所需的工作时钟频率不同,因此把整个时钟分成上面3个域(MSYS Domain、DSYS Domain、PSYS Domain),它们分别为不同的外设模块根据相应的工作时钟频率提供相应的时钟,以满足整个芯片的系统时钟需求。

二、S5PV210时钟来源




这个图可以看到S5PV210的时钟来源,最左边可以看到它有四个晶振接口,在设计板子硬件的时候我们可以根据需要来选择使用哪个晶振接口,然后接了晶振之后板子上电相应的模块就能产生振荡,产生原始时钟。然后原始时钟再经过一系列的筛选开关进入相应的PLL电路生成倍频后的高频时钟,高频时钟再经过分频到达芯片内部各模块上。(有些模块再次基础上还会有进一步分频,例如串口等)。

三、PLL:APLL、MPLL、EPLL、VPLL

It is recommended to use 24MHz input clock source for APLL, MPLL, EPLL and VPLL.
S5PV210推荐使用24MHz作为APLL,MPLL,EPLL和VPLL的时钟源。


To generate internal clocks, the following components are used.
• APLL uses FINPLL as input to generate 30MHz ~ 1GHz.
• MPLL uses FINPLL as input to generate 50MHz ~ 2GHz.
• EPLL uses FINPLL as input to generate 10MHz ~ 600MHz.
• VPLL uses FINPLL or SCLK_HDMI27M as input to generate 10MHz ~ 600MHz. This PLL generates 54MHz

video clock.
• USB OTG PHY uses XUSBXTI to generate 30MHz and 48MHz.


• HDMI PHY uses XUSBXTI or XHDMIXTI to generate 54MHz .


上面可以看到相应元件时钟源的频率范围。

In typical S5PV210 applications,
• Cortex A8 and MSYS clock domain uses APLL (that is, ARMCLK, HCLK_MSYS, and PCLK_MSYS).
• DSYS and PSYS clock domain (that is, HCLK_DSYS, HCLK_PSYS, PCLK_DSYS, and PCLK_PSYS) and

other peripheral clocks (that is, audio IPs, SPI, and so on) use MPLL and EPLL.
• Video clocks uses VPLL. 


在S5PV210里的应用:
* Cortex A8 和 MSYS 时钟域使用APLL(就是ARMCLK、HCLK_MSYS、PCLK_MSYS使用APLL时钟源)。
* DSYS和PSYS时钟域和其它的部分外设时钟(具体看上面),使用MPLL和EPLL。
* 视频时钟使用VPLL。

Clocks have the following relationship:
• MSYS clock domain
- freq(ARMCLK) = freq(MOUT_MSYS) / n, where n = 1 ~ 8
- freq(HCLK_MSYS) = freq(ARMCLK) / n, where n = 1 ~ 8
- freq(PCLK_MSYS) = freq(HCLK_MSYS) / n, where n = 1 ~ 8
- freq(HCLK_IMEM) = freq(HCLK_MSYS) / 2


•DSYS clock domain
- freq(HCLK_DSYS) = freq(MOUT_DSYS) / n, where n = 1 ~ 16
- freq(PCLK_DSYS) = freq(HCLK_DSYS) / n, where n = 1 ~ 8
• PSYS clock domain
- freq(HCLK_PSYS) = freq(MOUT_PSYS) / n, where n = 1 ~ 16
- freq(PCLK_PSYS) = freq(HCLK_PSYS) / n, where n = 1 ~ 8
- freq(SCLK_ONENAND) = freq(HCLK_PSYS) / n, where n = 1 ~ 8


Values for the high-performance operation:(高性能的操作值)
• freq(ARMCLK) = 1000 MHz                  // 给CPU内核工作的时钟频率,也就是所谓的主频
• freq(HCLK_MSYS) = 200 MHz             //  MSYS域的高频时钟                
• freq(HCLK_IMEM) = 100 MHz              //  给(IROM和IRAM)使用的高频时钟
• freq(PCLK_MSYS) = 100 MHz             //  MSYS域的低频时钟
• freq(HCLK_DSYS) = 166 MHz             //  DSYS域的高频时钟
• freq(PCLK_DSYS) = 83 MHz               //  DSYS域的低频时钟
• freq(HCLK_PSYS) = 133 MHz             //  PSYS域的高频时钟
• freq(PCLK_PSYS) = 66 MHz               //  PSYS域的低频时钟

•freq(SCLK_ONENAND) = 133 MHz, 166 MHz   // ONENAND使用的时钟频率

关于其它推荐值可以看S5PV210数据手册P356.这里不详细说明。

总结:  S5PV210内部的各个外设都是接在总线(内部AMBA总线)上面的,AMBA总线有一条高频分支AHB和一条低频分支APB。这俩个都有各自相对应的时钟频率HCLK_xxxx和PCLK_xxxx,SoC内部的各个外设其实就是挂载在不同的总线上工作的,然后利用总线提供的相应的时钟频率来供外设使用。

从上一篇我们可以知道其实外设工作与否即是否被提供时钟频率,而工作速率的快慢就通过时钟频率的大小来决定。所以以后我们可以知道在使用外设工作时第一步必须先为其提供合适的工作时钟频率。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  S5PV210时钟系统