1.s3c2440时钟体系结构

Fclk、Hclk、Pclk如何得到?时钟源 12M晶振----PLL锁相环---->400M\136M\68M


晶振---------|--->MPLL----Fclk-------------------|-------------->CPU|                                    |                                       |---Nand Flash|                                 |-------HDIV-------Hclk----->AHB总线-------memery control(内存控制器)|                                    |                                       |--中断控制器|                                   ||                                  |                                       |---IIC                                                     |                                   |-------PDIV-------Pclk----->APB总线--------IIS|                                                                           |---GPIO|-----UPLL----->USB

怎么写程序控制MPLL、HDIV、PDIV:MPLLCON
CLKDIV

编程: MPLLCON = (92<<12) | (1<<4) | (1<0)
FCLK=400MHZ MPLLCON:FCLK=400M:MDIV=92,PDIV=1,SDIV=1;
HCLK=100MHZ ===》
PCLK=50MHZ CLKDIVN:HCLK=FCLK/4 ====》CLKDIVN[2:1] = 0b10 ===》CLKDIVN=0b101=0x5
PCLK=FCLK/8 CLKDIVN[0]=1 tFCLK:tHCLK:tPCLK =1:4:8

2.编程提高运行时钟


.text
.global _start_start:/*关闭看门狗*/ldr r0, =0x53000000ldr r1, =0str r1,[r0]/*设置MPLL,FCLK:HCLK:PCLK= 400m : 100m : 50m*//*LOCKTIME(0x4c000000) = 0xFFFFFFFF*/ldr r0, =0x4c000000ldr r1, =0xFFFFFFFFstr r1, [r0]/*CLKDIVN(0x4c000014) = 0x5, FCLK : HCLK :PCLK = 1:4:8*/ldr r0, =0x4c000014ldr r1, =0x5str r1, [r0]  /*设置CPU工作于异步模式*/mrc p15,0,r0,c1,c0,0orr r0,r0,#0xc0000000    //R1_nF:OR:R1_iAmcr p15,0,r0,c1,c0,0/*设置MPLLCON(0x4c000004) = (92<<12) | (1<<4) | (1<<0)*m = MDIV+8 = 92+8= 100*p = PDIV+2 = 1+2 = 3*s = SDIV = 1*FCLK = 2*m*Fin/(p*2^s) = 2*100*12/(3*2^1)=400m*/ldr r0, =0x4c000014ldr r1, =(92<<12) | (1<<4) | (1<<0)str r1, [r0]/*一旦设置PLL,就会锁定lock time直到PLL输出稳定*然后CPU工作于新的频率FCLK*/    /*设置内存 sp 栈*//*分辨是nor/nand启动*写到0地址,再读出来*如果得到0,表示0地址上的内容被修改了,它对应ram,这就是nand启动*否则就是nor启动*/mov r1, #0ldr r0, [r1] /*读出原来的值备份*/str r1, [r1]    /*0->[0]*/ldr r2, [r1]   /*r2=[0]*/cmp r1, r2       /*r1==r2? 如果相等表示是NAND启动*/ldr sp, =0x40000000+4096   /*先假设是nor启动*/moveq sp, #4096    /*nand启动*/streq r0, [r1]    /*恢复原来的值*//*调用main*/bl mainhalt:b halt

掌握ARM芯片时钟体系相关推荐

  1. arm linux 时钟源 信息,Linux学习——ARM芯片时钟体系

    跟着视频学习了ARM芯片时钟体系,信息量有点大,做个笔记梳理梳理. 1.时钟体系的结构图 有很多外设,一些工作在AHB总线,一些工作在APB总线 CPU工作在FCLK,AHB总线工作在HCLK,APB ...

  2. 嵌入式系统(二):ARM芯片及体系架构(上)

    文章结构 一. ARM芯片主要类别 二.ARM Cortex-M3简介 1.Cortex-M3功能说明 2.Cortex M3的总线接口 3.寄存器组说明 (1)低组寄存器,高组寄存器 (2)堆栈指针 ...

  3. 韦东山ARM第一期作业(一)ARM时钟体系

    文章目录 01 - 作业所在路径 02 - 作业描述 03 - 作业解答 01 - 作业所在路径   ARM裸机1期加强版\源码文档图片\文档图片\第010课_掌握ARM芯片时钟体系 02 - 作业描 ...

  4. ARM芯片的时钟系统详解(S5PV210芯片)

    1.时钟介绍 时钟是同步工作系统的同步节拍,时钟的快慢就是我们常说的工作频率,以赫兹(HZ)为单位.时钟系统指导器件的运行,我们分析器件的工作特性时,常常会看器件的时序图,时序图中的时钟周期就是时钟系 ...

  5. ​Arm芯片的新革命在缓缓上演

    来源:内容由半导体行业观察(ID:icbank)编译自「seekingalpha」,谢谢. 因为苹果将发布使用其自研Arm芯片的Mac电脑,为此我认为基于ARM的芯片将蚕食 Intel和AMD的核心业 ...

  6. 【嵌入式开发】时钟初始化 ( 时钟相关概念 | 嵌入式时钟体系 | Lock Time | 分频参数设置 | CPU 异步模式设置 | APLL MPLL 时钟频率设置 )

    文章目录 一. 时钟相关概念解析 1. 相关概念术语 ( 1 ) 时钟脉冲信号 ( 概念 : 电压幅度 时间间隔 形成脉冲 | 作用 : 时序逻辑基础 间隔固定 根据脉冲数量可计算出时间 ) ( 2 ...

  7. S3C2440时钟体系 - SOC裸机

    前面章节内容针对ARM内核和ARM内核汇编完成了ARM处理器最基础内容的学习,从本章开始我们针对集合ARM内核的SOC片上系统展开学习.片上系统设计的主要是针对各种外界硬件设备的驱动开发工作,关于这部 ...

  8. 仅用2年过渡到自研ARM芯片,苹果的底气从何而来?

    作者 | Steven Sinofsky 译者 | 弯月,责编 | 屠敏 题图 |  东方 IC 出品 | CSDN(ID:CSDNnews) 今年 WWDC 2020 上,苹果宣布自研 ARM 芯片 ...

  9. 【嵌入式开发】ARM 芯片简介 (ARM芯片类型 | ARM处理器工作模式 | ARM 寄存器 | ARM 寻址)

    作者 : 韩曙亮 博客地址 : http://blog.csdn.net/shulianghan/article/details/42375701 相关资源下载 :  -- 三星 ARM Archit ...

最新文章

  1. cudnn v4安装
  2. 在Oracle Linux 7上通过官方Repo在线安装SQL Server 2017
  3. 部署到CloudFoundry上的应用,启动超时的处理
  4. 《软件需求分析(第二版)》第 12 章——需求确认 重点部分总结
  5. linux 配置apache的虚拟主机
  6. laravel nginx配置_nginx高可用
  7. php mysql索引最左原则_MySQL 索引使用策略及优化
  8. 海康威视_摄像头搜索工具
  9. 二进制除法移位相减_二进制除法计算器
  10. 京东商品详情页技术实现
  11. htb inject
  12. 物联网之IP Camera解决方案简介
  13. 手机APP与机顶盒互通
  14. 计算机技术流浪地球,科幻圈观察:《流浪地球》原著作者刘慈欣:计算机技术是个坑!...
  15. ehviewer怎么搜索关键字_ehviewer
  16. 微信小程序+vant的自定义tabBar
  17. MATLAB | 三个趣的圆相关的数理性质可视化
  18. python日常工作_python日常工作 - osc_sd6j22mg的个人空间 - OSCHINA - 中文开源技术交流社区...
  19. 官宣!“钱学森科技大学”要来了
  20. c语言给bmp图片加水印

热门文章

  1. APT威胁检测之flash类检测方法
  2. 各个排序算法的复杂度分析与复杂度介绍
  3. AutoCAD数据导入SuperMap后的投影定义与投影转换
  4. Python编程基础篇
  5. 量子学习及思考1-开篇
  6. 杂记--帮我哥戒网瘾的恶意程序
  7. 【Java语言】力扣系列----120. 三角形最小路径和
  8. 因程序员开发速度太慢,公司索赔90万败诉后不服申请再审,法院判了
  9. 排坑:运行win32com.client.Dispatch('Word.Application')和docx.Documents.Open()报错
  10. 快速清除空格php,php如何清除空格