宁可思一近,莫在思一停。
文章目录
前言
本文目的在于为想要转硬件方向的程序员解释CPU
的设计原理及组成,数据总线地址总线与CPU
位数的关系。
一、CPU和总线示意图
站在程序员的角度学习CPU设计原理
上图总体其实为
SoC
片上系统,但是一直叫被叫成CPU
叫习惯了,准确来说里面的才是CPU
。
可以认为一个CPU
里分成三部分:运算器、控制器、寄存器,真实CPU
里不止这三个部分,还有时钟系统等。
二、CPU的组成
2.1 运算器
CPU
对信息进行处理和运算的部件,常进行算术运算和逻辑运算,核心是算术逻辑单元ALU
。
CPU
中用各种数字电路搭配成各种运算电路,如加、减、乘、除、取余、左移、右移等。
【示例】:加法运算器
32 位处理器一次只能进行 32 位数据的处理
2.2 控制器
控制器:整个计算机的指挥中心。
CPU
的取指、译码、运行都是由控制器控制的。
2.3 寄存器
寄存器是CPU
里快速的临时内存,用来暂存从外部读取的数据。
CPU
内部是没有内存的,内存在外面,比如Flash
和DDR
。
三、存储器
一个系统的运行必须有三部分:
CPU
、Flash
和DDR
。
3.1 Flash
Flash
就相当于电脑的硬盘,用来存储程序,程序躺在Flash
里是不动的。
Flash
通过总线和CPU
连接,需要时通过总线读取到CPU
的寄存器中。
3.2 DDR
RAM
(Random Access Memory
)的全名为随机存取记忆体,它相当于PC机上的移动存储,用来存储和保存数据的。它在任何时候都可以读写,RAM
通常是作为操作系统或其他正在运行程序的临时存储介质(可称作系统内存)。
DDR
本质上是RAM
。
DDR
是Double Data Rate SDRAM
的缩写(双倍数据速率)
程序要在DDR
中运行,Flash
中的内容是不能直接到DDR
中的,必须要通过寄存器来中转。
CPU
先将Flash
中的内容读到寄存器中,再放到DDR
中,在DDR
中运行。
四、内部外设
CPU
通过内部总线连接到串口控制器上,串口控制器就是前面所说的内部外设。
串口控制器本来和Flash
和DDR
一样的,但随着半导体工业的发展,串口控制器跑到SoC
里面去了。
内部总线和外部总线的区别:
内部总线在芯片的内部,其的速度更快,抗干扰能力更强。
外部总线受限于PCB
板的布线,速度不会太快。
五、地址总线和数据总线
地址总线传输的是地址;数据总线传输的是数据。
地址总线和数据总线可以合二为一,但是速度会慢。
-
CPU
通过地址总线寻址,然后通过数据总线与外部设备互换信息。 -
地址总线的位数决定
CPU
寻址范围;数据总线的位数决定CPU
单次通信能交换的信息数量。CPU
的位数取决于数据总线,而不取决于地址总线。 -
总线的速度决定
CPU
和外设互换信息的速度。
5.1 地址总线
5.2 数据总线
数据总线的位数实际上就是CPU
的位数。
32 位的
CPU
有 32 根数据总线,CPU
每次能够读/写 32 位的数据。
如果要写一个 16 位的short
,会将 16 位的short
放到 32 根数据总线中的一半,剩下的 16 根数据总线空跑。
即每次运送一个short
或一个int
,CPU
的性能开销是一样的。
所以 C语言 编程中能使用int
尽量使用int
,使用short
并不会减少CPU
的性能开销。
5.3 注意
-
CPU
的地址总线位数和数据总线位数是可以不同的(典型代表就是 51单片机),但一般都是相同的。51单片机是 8 位的,有 8 根数据总线,但它有 16 根地址总线。
-
CPU的位数指的是数据总线的位数,不是地址总线的位数。
-
地址总线是 32 位的
CPU
寻址的范围是4G
,所以最多支持4G
内存。 -
数据总线是 32 位,所以内存是 32 位的好,所以编程最好用
int
,匹配的时候效率是最高的。
总结
尽信书而不如无书。请同志们带着审视的态度来看此文章,人都是会犯错的;带着不信任感去审视它;如果它是对的,你就会越发觉得它对;如果它是错的,你就会在辩证中得到真理。
宁可一思进 莫在一思停:在搏斗中须树立克敌制胜的信念,突出战斗进取精神。在搏斗中,只能思进,不能思存,更不能思退!一旦思存思退,斗志先馁,便没胜利的希望了。比武的时候,一思一念间,宁进不停。停下来反应的一瞬间,说不定你已经输了。
学习亦是如此,把惰性和拖延当做自己的敌人,和它们拼个你死我活。
今天的文章CPU的主要功能_计算机组成原理cpu分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/85185.html