带你一步步了解S5PV210-2 CPU时钟的理解,统一编址与独立编址。数据总线,地址总线。CPU的位数与什么有关?

上篇文章我们讲到了关于ARM的发展历史,RISC和CISC的区别以及SOC内部各部件是由哪些厂家负责,那么这周我给大家讲讲各部件之间是如何配合运转的。

CPU设计外部接口典型的基本三要素:时钟入口,数据总线,和地址总线,那么接下来我从这三个方面讲讲。

时钟入口相当于的的CPU的心脏,只要心脏体制了跳动,那么CPU必定就死了(所以我们想要让设备处于低功耗时,并不是关掉外设的电源而是关掉外设的时钟)。我们大家都知道时钟信号一般就是我们常看到的方波。
在这里插入图片描述
我们可以从不同的角度去理解这个方波信号,首先可以把它理解成CPU的内部指令读取,解析,执行一系列的动作的向前执行的驱动信号。
S5PV210的时钟一般会配置1GHZ,这个速度有多快呢,相当于一秒钟会有102410241024个方波产生,一秒钟CPU干了这么多的活(读取指令+解析+执行这个是S5PV210的三级流水线,在使用绘制的时候,大家会注意到这里,有需要我想详细解释,大家留言评论,有必要给大家讲讲),所以频率越高功耗越大。大家可以想一想为啥每个外设的时钟频率不一样,但CPU还能与它进行数据交换?欢迎留言。

我们大家学模电的时候肯定大致了解过数据选择器,当一个脉冲发生时,驱动模拟电路选择CPU地址总线,也就是相当于32根线哪根是高电平,哪根是低电平(正常CPU肯定是从0x0的地址依次寻址的,但我们通过编程控制它寻址的地址发生变化,一直控制CPU的寻址在我们控制范围内,我会单独讲CPU的启动过程)。这时候对应的外设高感受到CPU是在叫自己了,,为啥能感受到呢?主要是像三星,华为,ST这些公司在设计外设的时候,会给外设提前预设好地址,比如外设的地址设置为32个1,16进制显示是0xFFFFFFFF,也就是与CPU相连的32根地址线上都是高电平时,外设就人为CPU是在叫我,那么这时外设的数据对应的高低电平输出到与CPU连接的32根的数据总线上,这种方式在模电的设计上来说不是难点,从这里我们解释一个知识:基于ARM的架构的CPU都是统一编址,就是这些外设设计厂商自己统一对所有外设提前预设好地址。相信大家也听说过另一个概念就是独立编址,独立编址就是INTEL的CPU的外设的地址都是intel自己在设计CPU的时候已经定死的,第三方设计根本就没办法自定义外设的地址,所以intel的CPU需要控制一个IO口时你必须要查intelCPU的数据手册。而ARM框架的CPU根本不需要了解ARM的数据手册而是要了解ST,三星,华为出的数据手册,所以之后在遇到是统一编址还是独立编址的问题的时候,基本就是看是ARM的内核还是intel的内核。不过intel现在也再向嵌入式RISC方向在发展,说不定将来也会出现统一编址的发展模式。

下面这张图是三星给自己的外设地址分配表。

在这里插入图片描述

我们经常讲8位CPU,16位CPU,32位CPU,64位。那么多少位的CPU究竟取决于什么呢?答案是:CPU的数据总线的位数。也是说32位的CPU一下并行能够感应到32根线上的高低电平。一个功能电路就能实现对32位数据的处理。所以位数越多CPU体积越大,电路更复杂,功耗越大。一般地址总线也会跟着数据总线变化而变化,CPU地址总线和数据总线位数一样,但也有特别的比如51单片机是16位的地址总线,8位的数据总线。但我依旧称这样的CPU为8位的CPU。因为地址总线不决定CPU的处理能力,它只是决定CPU的扩展能力,而真正决定CPU处理能力的是数据总位数。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值