S5PV210时钟系统简介

本文详细解释了SoC中时钟的作用、获取方式、S5PV210的设计原因,以及时钟与系统性能、超频和外设的关系。特别关注了S5PV210的时钟架构,包括MSYS、DSYS和PSYS域,以及各个时钟频率的默认设置。
摘要由CSDN通过智能技术生成

什么是时钟?SoC为什么需要时钟?

  • 时钟是同步工作系统的同步节拍
  • SoC内部有很多器件,如CPU、串口、DRAM控制器、GPIO等内部外设,这些东邪要彼此协同工作,需要一个同步的时钟系统来指挥。这个就是我们SoC的时钟系统。

时钟如何获得

  • 外部直接输入时钟信号,SoC有一个引脚用来输入外部时钟信号。
  • 外部晶振+内部时钟发生器产生时钟,大部分低频单片机都是这么工作的。
  • 外部晶振+内部时钟发生器+内部PLL产生高频时钟+内部分频器得到各种频率的时钟,210属于这种

S5PV210为什么这么设计?

  • 主要是因为芯片外部电路不适宜使用高频率,因为传导辐射比较难控制
  • 高频率的晶振太贵了

为什么要内部先高频在分频?

主要是因为SoC内部有很多部件都需要时钟,而且各自需要的时钟频率不同,没法统一供应。因此设计思路是PLL后先得到一个最高的频率,然后各个部件都有自己的分频器再来得到自己想要的频率。

时钟和系统性能的关系、超频、稳定性

  • 一般SOC时钟频率都是可以人为编程控制的,频率的高低对系统性能有很大影响。
  • S5PV210建议工作频率800MHz~1.2GHz,一般我们都设置到1GHz主频。如果你设置到1.2GHz就叫超频。超频的时候系统性能会提升,但是发热也会增大,因此会影响稳定性。

时钟与外设的关系

  • 每个外设工作都需要一定频率的时钟,这些时钟都是由时钟系统提供的,时钟系统可以编程控制工作模式,因此我们程序员可以为每个外设指定时钟来源、时钟分频系统、从而制定这个外设的工作时钟。

S5PB210时钟简介

  • MSYS:CPU、DRAM控制器、IRAM&IROM
  • DSYS:都是和视频现实编解码等相关的模块
  • PSYS:和内部各种外设时钟有关,比如串口、I2C、AC97、USB等
  • 为什么内部要分为3个域?因为210内部的这些模块彼此工作时钟速率差异太大了,所以有必要把高速的放在一起,相对低速的放一起。

S5PB210时钟来源:晶振+时钟发生器+PLL

  • 210外部有4个晶振接口,设计电路板硬件时可以根据需求来决定在哪里接晶振。接了晶振之后上电相应的模块就能产生震荡,产生原始时钟。原始时钟再经过一系列筛选开关进入相应的PLL电路生成倍频后的高频时钟。高频时钟再经过分频达到芯片内部各个模块。

PLL:APLL、MPLL、EPLL、VPLL

  • APLL:Cortex-A8内核、MSYS域
  • MPLL & EPLL:DSYS、PSYS
  • VPLL:Vedio视频相关模块

S5PV210时钟域详解

MSYS域

  • ARMCLK:给CPU内核工作的时钟,也就是所谓的主频
  • HCLK_MSYS:MSYS域的高频时钟,给DMC0和DMC1使用
  • PCLK_MSYS:MSYS域的低频时钟
  • HCLK_IMEM:给IROM & IRAM

DYSY域

  • HCLK_DSYS:DSYS域的高频时钟
  • PCLK_DSYS:DSYS域的低频时钟

PSYS域

  • HCLK_PSYS: PSYS域的高频时钟
  • PCLK_PSYS: PSYS域的低频时钟
  • SCLK_ONENAND:

总结:210内部的各个外设都是接在(内部AMBA总线)总线上面的,AMBA总线有一条高频分支叫AHB,有一条低频分支APB。上面的各个域都有各自对应的HCLK和PCLK,其中HCLK就是该域中AHB总线的工作频率;PCLK就是该域中APB总线的工作频率。

SOC内部的各个外设其实是挂在总线上工作的,也就是说这个外设的时钟来自于它挂在的总线,如串口就挂在PSYS下的APB总线上,因此串口的时钟来源是PCLK_PSYS。

各个时钟的默认值

  • 当210刚上电时,默认是外部晶振+内部发生器产生的24MHz频率的时钟直接给ARMCLK的,这时系统的主频就是24MHz,运行非常慢。
  • IROM代码执行时第6步中初始化了时钟系统,此时给了系统一个默认推荐运行频率。这个时钟频率时三星推荐的210工作性能和稳定性最佳的频率。

• freq(ARMCLK) = 1000 MHz
• freq(HCLK_MSYS) = 200 MHz
• freq(HCLK_IMEM) = 100 MHz
• freq(PCLK_MSYS) = 100 MHz
• freq(HCLK_DSYS) = 166 MHz
• freq(PCLK_DSYS) = 83 MHz
• freq(HCLK_PSYS) = 133 MHz
• freq(PCLK_PSYS) = 66 MHz
• freq(SCLK_ONENAND) = 133 MHz, 166 MHz

  • 11
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值