cpu是运算器还是控制器?cpu包含什么器和什么器?CPU是中央处理器。是计算机的运算器与控制器。
CPU内部结构大概可以分为控制单元、运算单元、存储单元和时钟等几个主要部分;运算器是计算机对数据进行加工处理的中心,它主要由算术逻辑部件(ALU:ArithmeticandLogicUnit、寄存器组和状态寄存器组成;控制器是计算机的控制中心,它决定了计算机运行过程的自动化;它不仅要保证程序的正确执行,而且要能够处理异常事件。
中央处理器,简称CPU,是现在电子计算机的核心元件,也是信息时代最主要的器件之一。
从小的方面说,我们每天使用手机软件,以及在电脑上写方案、敲代码、制作PPT等所有计算机软件的计算,都需要CPU的计算;
从大的方面讲,航天飞船的制造需要CPU进行前期建模工作;发射时间、轨道、天气预测、燃料都需要CPU的模拟计算;发射后的实时追踪、内部调度及处理应急问题也都需要CPU精准的计算。
如天问号、祝融号、月兔号探测器,从着陆、巡视再到传回原始数据几乎都需要CPU运行机器进行自主操作。
可以说,21世纪,CPU在生活、工作及科学等方方面面都发挥了重要作用。
CPU的功能主要是处理计算机软件的数据,将人类的命令转化为机器语言,并对其他计算机中的设备,如内存、显卡、主板等提出命令。在整台计算系统中,它扮演“老板”的角色。
更形象地说,CPU就是人类的大脑,一切信息都需要它的参与或思考。
组成CPU的三大部门
CPU由三部分组成:运算器、控制器与寄存器。
运算器主要是负责执行任务,可以理解为“打工人”,它的任务是负责直接计算相关数据;
控制器类似于“领导”,任务就是针对不同的需要,给“员工”下达不同的命令;
寄存器则可以理解为控制器和运算器之间联络的小组,也可以理解成“秘书”,它的主要工作是协调控制器和运算器。
寄存器这个“部门”的事情非常繁琐,控制器会让它给运算器下达命令,运算器运算的数据太多,也会让寄存器暂时先寄存一部分。所以,当数据过多时候,寄存器忙不过来就只能暂时招收一些“临时工”——高速缓存。
在寄存器完成不了工作时候,就调用高速缓存来存储数据。当然临时工也会有等级:一级缓存、二级缓存和三级缓存。如果三缓也耗尽,那就交给CPU外的内存来缓存。
但是,如果内存也不够了怎么办呢?这时候,你的电脑就开始卡顿了,建议换一台电脑(狗头)。
在这个庞大的部门中,当然要制定相关的行为规范,让控制器能按照规则来下达命令。这一行为规范就是指令集。
不同设备的指令集可能会不一样。例如,我们的计算机用的就是复杂指令集x86,而手机处理器的指令集就是精简指令集ARM。这两种指令集最大的区别,就在于设计者考虑问题的方式。
举个简单的例子,比如命令一个人吃饭,我们应该怎么发布指令呢?
1、直接对他下达“吃饭”的命令。
2、命令他“先拿勺子,然后舀起一勺饭,然后张嘴,然后送到嘴里,最后咽下去”。
从这里可以看到,对于“命令人吃饭”这件事,可以复杂也可以简单。而如何训练那个人,则出现不同的理解。
有人认为,如果我首先给接受命令的人以足够的训练,让他掌握各种复杂技能(即在硬件中实现对应的复杂功能),那么以后就可以用非常简单的命令让他去做很复杂的事情——比如只要说一句“吃饭”,他就会吃饭,这就是“复杂指令集”的思路。
但是也有人认为这样会让事情变得太复杂,毕竟接受命令的人要做的事情很复杂,如果你这时候想让他吃菜,那还得再训练吃菜的技能。既然如此,我们为什么不把事情分为许多非常基本的步骤呢?
这样的话,虽然下达命令的人稍微累一点,但只需要接受命令的人懂得很少的基本技能,就可以完成同样的工作——比如现在我要他吃菜,只需要把刚刚吃饭命令里的“舀起一勺饭”改成“舀起一勺菜”,问题就解决了,多么简单。这就“精简指令集”的逻辑。
从利用这两种指令集的设备,我们就可以看出指令集的区别了。
首先是性能。ARM强在效率,在一些任务相对固定的应用场合,其优势就能发挥得淋漓尽致。而x86则在专业软件或者综合性工作方面,依然是“大哥”。
其次是扩展能力。手机方面,可能直到淘汰产品,我们都不会自行加装例如内存、存储等扩展设备,奉行的原则是够用就好。而计算机可以通过桥接方式扩展许多设备。
最后是功耗,X86的计算机性能强,但是功耗一直居高不下,随着摩尔定理逐渐失效,现在性能提高都是建立在功耗的基础上,动不动几百瓦的功率,是国家电网“长期战略合作伙伴”。ARM方的手机则大概只有几瓦的功耗,因此它更适于便携化与移动化。
至于与我们日常交互,也是开机就能看到的桌面则是操作系统,你可以理解为一种特殊的软件,主要发挥性能调度、管理文件、为上层软件提供服务与可视化操作的作用。
如何制作CPU
介绍完CPU,那你肯定想知道,这么复杂的元件需要如何制作呢?制作CPU的复杂程度将超乎你想象。
准备好了吗,接下来,笔者将带大家进入原子的世界,一个肉眼无法看到的世界。
制作CPU第一步是设计电路图,众所周知,CPU是超大规模的集成电路,合理的电路分布则是重中之重。因此,会由来自全球各地设计中心的专家合作设计CPU的晶圆电路,完成物理掩模板整体芯片设计。
下一步是制作硅晶。硅晶的原料就是沙子,经过一系列复杂的提纯会将沙子变成纯度高达99.9999%的单晶硅棒,再切成光滑的小薄片,晶圆就制作完成了,它上面将会刻蚀出集成电路。
杂质会对CPU质量造成严重的影响,因此制作晶圆的环境比手术室还要干净十万倍。
△原料及单晶硅棒
接着我们就要在晶圆上刻上设计好的电路,用什么刻呢?普通刻刀远远达不到那样的精度,聪明的科学家想到了世界上最精细的刻刀——光。
在晶圆上均匀涂覆光刻胶,然后用紫外光将掩膜上的电路结构印在晶圆上,曝光的部分具有可溶性,可以被洗掉。再将晶圆表面未受保护的部分刻蚀掉,指甲盖大小的晶圆上就被刻上数十亿个晶体管。
△涂覆光刻胶及光刻过程
只有晶体管还是不够的,不同晶体管要具备不同的功能,这就需要下一步离子注入过程来给晶体管施加不同的电性。
这里会用到硅这种具有独特性质的半导体。硅的导电性可由精确控制植入的物质而改变。
具体过程为,首先将被掺杂的原子注入到硅晶格中。这些原子在晶格中不均匀分布,但在高温下,掺杂的原子在晶格中变成了均匀分布。
△检查与掺杂
铜是下一道程序的重点,精密的铜线将许多晶体管连接起来形成各种电路并发挥各种功能。
但在这一过程中,清洗必不可少,因为环境中的微粒或者杂质潜伏在制造过程中的每一阶段。先在晶圆上镀一层阻挡膜,这有助于防止短路并能保证电路的可靠性。然后再将铜填入沟槽,打磨平整。通过这种方法能在芯片上雕刻出长达数公里的线路。
下图就是芯片中密密麻麻的铜线路的模拟图。
△镀膜与铜线路模拟图
最后一步就是封装了,将满足封装要求的芯片打磨过后,用最精细的切割器将制作好的CPU从晶圆上切割下来,贴片焊线,封胶密封。经过测试分选后就能经由各芯片厂进入市场,再送入消费者的手中了。
△封装
以上笔者介绍的只是最粗浅的CPU制作过程,中间需要用到的技术难度是普通人难以想象的,因此,CPU真无愧于人类历史上最精密的元器件。
我国半导体行业任重而道远,尽管离美国芯片水平至少有十年的差距,但并不是无法赶上的。国产的存储芯片已经进入消费级市场,几乎可以达到世界平均水平,随之带来的好处就是消费者市场的存储芯片价格直线下降与我国的经济收入的提高。
现在的中国,CPU企业已如雨后春笋一般浮现,正向世界展示中国制造的活力。
参考文献:
- https://zhuanlan.zhihu.com/p/21266987