一.S3C2440时钟体系介绍

1.总线与时钟

S3C2440有俩个总线:AHB高速总线、APB外围总线。

对应三个时钟源:

  • ARM芯片CPU的FCLK

  • AHB总线的HCLK

  • APB总线的PCLK

三个时钟的工作频率:

(可以看出对比STM32中72MHz的频率,ARM时钟的性能有了很大的提高)

2.时钟来源

如何得到三种时钟?系统的时钟来源是12MHz的晶振,通过PLL锁相环硬件设备可以得到高达400MHz的时钟频率,其时钟框图如下:

可以看出系统时钟来源的选择有俩种:

  • 晶振
  • 外部输入

(这里只讨论晶振)

3.选择时钟

通过设置OM[3:2]可以选择时钟源:

设置方法如下:

打开原理图查看一下目前的OM[3:2]的情况(查看目前时钟源的选择情况)

看出OM[3:2]都接地,即OM[3:2]=00,所以时钟源都采用12MHz晶振

4.产生时钟

所以FCLK、HCLK、PCLK这三个时钟都是由晶振发生的。

晶振提供的时钟频率经过MPLL、UPLL得到新的时钟频率

MPLL:main PLL,利用P[5:0]、M[7:0]、S[1:0]来控制输出时钟的频率

UPLL:USB PLL,利用P[5:0]、M[7:0]、S[1:0]来控制输出时钟的频率

框图如下:

晶振信号经过MPLL后产生时钟作为FCLK(400MHz)提供给CPU,FCLK再经过分频器生成HCLK(136MHz)、PCLK(68MHz)。

  • FCLK提供给CPU(ARM920T)

  • HCLK提供给各种AHB总线(高速设备):Nand FLASH、ITC、Memory Controler…

  • PCLK提供给各种APB总线(低速设备):IIC、IIS、GPIO、ADC…

所以,晶振经过MPLL得到FCLK,FCLK分频得到HCLK、PCLK,

5.流程

上电后,复位引脚会维持一段时间等待电源稳定,由专用的复位芯片维持复位引脚:

在上电后一段时间后才会让复位引脚输出高电平。

开始的时候,FCLK频率由晶振频率直接提供,因为此时CPU还没有工作(没有复位),当PLL锁存OM[3:2]的值后,CPU开始运行,这时开始设置PLL,设置期间CPU停止(Lock Time),设置PLL完成后,FCLK就是新的频率了:

二.如何配置时钟源

配置时钟源主要是要操作俩个寄存器:

  • MPLLCON
  • CLKDIVN

1.设置FCLK频率寄存器 MPLLCON

控制MPLL输出FCLK时钟频率

可以参靠手册中给出的标准:

MPLL的计算公式:

2.设置分频HDIV、PDIV寄存器 CLKDIVN

3.时钟开关控制寄存器 CLKCON

控制某些模块的时钟开启关闭

注意:

S3C2440—4.时钟系统的更多相关文章

  1. S3C2440时钟系统详解

    在讲述系统时钟之前,因为这些设备都是挂靠在系统时钟上的,所以必须先说系统时钟,S3C2440的时钟系统如下 外部时钟源分两种,晶振或者外部频率,由om3-2选择,时钟电路根据两种选择也有两种 我们来分 ...

  2. S3C2440的时钟原理

    Crystal 无源晶体Oscillator 有源晶体(里面有有源器件) 无源晶振内只有一片按一定轴向切割的石英晶体薄片,供接入运放(或微处理器的XTAL端) 以形成振荡.有源晶振内带运放,工作在最佳 ...

  3. 9.S5PV210的时钟系统

    1.时钟域:MSYS.DSYS.PSYS(1)因为S5PV210的时钟体系比较复杂,内部外设模块太多,因此把整个内部的时钟划分为3大块,叫做3个域.(2)MSYS: CPU(Cortex-A8内核). ...

  4. STM32时钟系统

    一.在STM32中,有五个时钟源,为HSI.HSE.LSI.LSE.PLL. ①HSI是高速内部时钟,RC振荡器,频率为8MHz. ②HSE是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,频率 ...

  5. 总结:S5PV210时钟系统

    在数据手册<S5PV210_UM_REV1.1>中的section 02_system/3 CLOCK CONTROLLER(354页)   一.时钟域 在S5PV210的SoC中,时钟系 ...

  6. STM8时钟系统详解

    就我个人看来,研究一块单片机,分为新手和老手两种模式,新人迫切的想先用,你得告诉他们怎么样最快的写出一个能跑起来的程序,告诉他们每一个外设的使用方式,老手不同,用的单片机多了外设对于他们而言没太多好奇 ...

  7. Stm32复习之时钟系统

    地点:南图 这部分的内容是整个STM32学习知识的核心,不管是什么微控制器处理器,时钟系统都是其核心类似于人之心脏,因此学好理解这一章节至关重要. 为了便于理解这一系统,将从以下几个层次来讲.(忘了是 ...

  8. 关于STM32时钟系统

    初学STM32,感觉最蛋疼的是它的时钟系统,每次看到它的那个时钟树就有点晕,虽然看了很多这方面的资料,甚至也已经写过很多STM32的模块代码,做过一些小项目,但一直还是对这一块模模糊糊,似懂非懂,所以 ...

  9. IDC:时钟系统

    ylbtech-IDC:时钟系统 主要应用于要求有统一时间进行生产,调度的单位如:电力,机场.轻轨.地铁.体育场馆.酒店.医院.部队.油田.水利工程等领域.大区域时钟系统主要由母钟和多台子钟构成. 1 ...

随机推荐

  1. VBA:考场场标打印

    Function pda(x) a = x If Len(a) = 1 Then ab = "00" & a ElseIf Len(a) = 2 Then ab = &qu ...

  2. python twain模块

    >>> help(twain) Help on module twain: NAME twain - Created on Sep 4, 2011 DESCRIPTION @auth ...

  3. Git初始化本地已有项目

    1.初始化仓库 git init 2.remote git remote add origin 仓库地址 3.从远程分支拉取master分支并与本地master分支合并 git pull origin ...

  4. YARN调度器(Scheduler)详解

    理想情况下,我们应用对Yarn资源的请求应该立刻得到满足,但现实情况资源往往是有限的,特别是在一个很繁忙的集群,一个应用资源的请求经常需要等待一段时间才能的到相应的资源.在Yarn中,负责给应用分配资 ...

  5. Python基础之读取ini文件

    基本使用方法 第一步:准备一份INI文件.如test1.ini [ITEMS] item1=1 item2=2 item3=3 item4=4 [ITEM1] test1=aaa [ITEM2] te ...

  6. 第四篇 -- CSS基础

    表单.单选.下拉框.文本域.多选框.提交.重置.按钮 <!DOCTYPE html> <html lang="en"> <head> <m ...

  7. 第四十九篇 -- 添加联系人信息Addcontact

    往通讯录里添加联系人 首先,在清单文件里添加读写权限 <uses-permission android:name="android.permission.READ_CONTACTS&q ...

  8. Floyd弗洛伊德算法

    先看懂如何使用 用Java实现一个地铁票价计算程序 String station = "A1 A2 A3 A4 A5 A6 A7 A8 A9 T1 A10 A11 A12 A13 T2 A1 ...

  9. 阿里云IoT初试

    本文从概念到实战,以一个假想产品--"电子货架标签"(Electronic Shelf Label,以下简称ESL)为例,介绍基于阿里云IoT的物联网应用开发. 数据交互流程 以云 ...

  10. 【JavaWeb】EL表达式&过滤器&监听器

    EL表达式和JSTL EL表达式 EL表达式概述 基本概念 EL表达式,全称是Expression Language.意为表达式语言.它是Servlet规范中的一部分,是JSP2.0规范加入的内容.其 ...