CPU里的几十亿个晶体管的分工是怎样的?

啸啸007


这个问题需要循序渐进,才能回答清楚,为便于理解,需要多上图片。

一颗高性能CPU,其内部的复杂程度堪比一座北上广深这样的一线城市。


如果说城市的基础建筑材料是砖头,和钢筋、水泥配合,建成高楼大厦,那么CPU也有基础构成元件,它就是晶体管。

当然,上图中的晶体管个子太大,CPU内的晶体管都是纳米级别,模样大不相同(运行原理完全一样),看起来像纱网格子(见下图):

晶体管需要搭配电容、电阻等其它元件,才能完成“开”、“关”动作,对应计算机语言的“0”和“1”,这也是计算机只能读懂“0”和“1”的原因(现在的编程语言被称为高级语言,运行时都需要芯片中的编译器翻译成机器能读懂的0和1组成的语言),实际上所有的运算过程都是数以亿计的晶体管在不断重复“开”、“关”动作。所有的运算结果,不管是游戏的画面、电影特效还是计算器算买菜钱,都是晶体管不同开关动作组合的结果。

晶体管如何和电容搭配?我举DRAM(俗称电脑内存)为例,一个DRAM单元可以存储1比特数据,它由1个晶体管和两个电容组成。见下图。

CPU的内部结构要复杂一些,和DRAM的差别在于,DRAM的基本单元(DRAM CELL)结构都是一样的,这也是DRAM拼制造的原因;而CPU内的基本单元的结构并不一样,这样才能组成算术逻辑单元、寄存器、译码器、缓存等部件,最终组成一个CPU内核,由于内部线路复杂,所以CPU既拼制造,也拼设计,比DRAM难度上了一个大台阶。

现代CPU基本都是多核打天下,如下图的至强处理器有10个内核。


总之,不管CPU多么复杂,它其实都是晶体管和电容、电阻等纳米级的元件,经过复杂的设计组合,得到不同的部件(算术逻辑单元、寄存器等),再由部件组成CPU内核,多个CPU内核再组成CPU,封装后就成了我们看到的样子。见下图:



魔铁的世界


20亿晶体管是如何集成在一个小小的芯片上,而又是如何工作的?让我们一起来研究

首先CPU在13年的时候就已经可以集成20亿个晶体管,当然作为中央处理器CPU芯片中还包涵其他各种各样的器件例如三极管,二极管,晶闸管,MOSFFET,IGBT等,这些都是CPU内部集成的芯片,CPU的安装无疑是一层层进行焊接的,利用非常高的机器将纳米级别的晶体管进行架构式的安装,CPU内核心的也是一块半导体晶圆,通过半导体蚀刻工艺在晶圆上生成众多的晶体管单位,再通过微点焊金丝的方式将各个引脚电路引出至芯片封装的管脚,最后进行封装,每一步都是非常精密的,这些过程都是机械来做。

至于怎样工作,我们都知道计算机都是通过传输0和1信号,这些信号是如何产生的呢?是利用晶体管的关断,关时为1信号,断为0信号,这样CPU就具备了处理信息和传输信息的能力,然人为对信号进行编码排布就行成各种各样的信号形式。大体就是这样,若具体的讲起来可能讲一两天也不会讲完。人类的时代在进步,相信未来CPU会带来更好的创新。





魅力星空


内部控制原理真的很复杂很繁琐\r

第一个微处理器是英特尔4004,于1971年推出.4004功能不是很强大,它所能做的只是加减法,它一次只能做4位。\r

制造成家用计算机的第一个微处理器是英特尔8080,它是一个完整的8位计算机,在一个芯片上,于1974年推出。

首先了解基本名称

数据宽度为ALU的宽度。8位ALU可以加、减、乘、等。两个8位数字,而32位ALU可以操作32位数字。8位ALU必须执行4条指令才能添加两个32位数字,而32位ALU可以在一条指令中执行。在许多情况下,外部数据总线的宽度与ALU的宽度相同,但并非总是如此。8088有一个16位ALU和一个8位总线,而Pentiums为32位ALU一次取64位数据。

MIPS代表“每秒数百万条指令”,并且是CPU性能的粗略衡量标准。

晶体管数量和MIPS之间存在密切关系。例如,8088时钟频率为5 MHz,但仅以0.33 MIPS(每15个时钟周期约一条指令)执行。现代处理器通常可以每个时钟周期以两个指令的速率执行。这种改进与芯片上的晶体管数量直接相关

微处理器的三个基本运作关系如下

以下是个简单微处理器的组件:

寄存器A,B和C只是由触发器制成的锁存器。

地址锁存器就像寄存器A,B和C.

程序计数器是一个锁存器,具有额外的能力,当被告知这样做时增加1,并且当被告知这样做时也重置为零。

ALU逻辑单元可以像8位加法器一样简单,它可以对8位值进行加,减,乘和除。

地址和数据总线,以及RD和WR线。这些总线和线路连接到RAM或ROM。在我们的样本微处理器中,有一个8位宽的地址总线和8位宽的数据总线。这意味着微处理器可以寻址(2 8)256字节的存储器,并且它可以一次读取或写入8位存储器。让我们假设这个简单的微处理器有128个字节的ROM,从地址0开始,128个字节的RAM从地址128开始。

ROM代表只读存储器。ROM芯片被编程为具有永久的预设字节集合。地址发给总线告诉ROM芯片哪个字节到达并放在数据总线上。当RD线改变状态时,ROM芯片将所选字节呈现在数据总线上。\r

几乎所有计算机都包含一些ROM(可以创建一个不包含RAM的简单计算机 - 许多微控制器通过在处理器芯片本身放置一些RAM字节来实现这一点 - 但通常无法创建一个不包含ROM)。在PC上,ROM称为BIOS(基本输入/输出系统)。当微处理器启动时,它开始执行它在BIOS中找到的指令。BIOS指令执行诸如测试机器中的硬件之类的操作,然后将其转到硬盘以获取引导扇区(请参阅硬盘的工作原理)详情)。这个引导扇区是另一个小程序,BIOS从磁盘读取后将其存储在RAM中。然后微处理器开始从RAM执行引导扇区的指令。引导扇区程序将告诉微处理器从硬盘中取出其他东西到RAM中,然后微处理器执行。

能力有限大致说到这里,还有很多细节,建议有兴趣还是查阅专业书籍。






物理美学


CPU是由无数个晶体管组成的 晶体管不同的排列当时导致他的架构不一样。

CPU正是由晶体管组合而成的。简单而言,晶体管就是微型电子开关,它们是构建CPU的基石,你可以把一个晶体管当作一个电灯开关,它们有个操作位,分别代表两种状态:ON(开)和OFF(关)。这一开一关就相当于晶体管的连通与断开,而这两种状态正好与二进制中的基础状态“0”和“1”对应!每一位1或0的实现,都要用到至少6个晶体管。一块最普通的CPU 包含控制器、运算器和存储器单元,而最新一代的多线程多核心CPU则有更为复杂的控制器及分支管理模块。

规模最大、耗用晶体管资源最多的还是存储器(SDRAM):供CPU运算单元计算的数据经过缓存暂时存放,以调节高速的CPU计算单元和低速读写的外置存储器之间的速度差,使CPU整体运行在较高的效率。缓存级数越多,存储量越大,则CPU的处理速度越快。Intel最新一代的商用CPU已具备三级缓存:第一级缓存容量最小一般256K但速度与运算器同频是最快的,第二级容量较大一般2M较高级的CPU能达到6M-9M,速度是运算器频率的一半。第三级在中高端的CPU上使用。


就是一个耿


  • CPU是在特别纯净的硅材料上制造的。CPU的工作原理就像一个工厂对产品的加工过程:进入工厂的原料(程序指令),经过物资分配部门(控制单元)的调度分配,被送往生产线(逻辑运算单元),生产出成品(处理后的数据)后,再存储在仓库(存储单元)中,最后等着拿到市场上去卖(交由应用程序使用)。

  • 一个CPU芯片包含上百万个精巧的晶体管。晶体管就是微型电子开关,它们是构建CPU的基石,你可以把一个晶体管当作一个电灯开关,它们有个操作位,分别代表两种状态:ON(开)和OFF(关)。这一开一关就相当于晶体管的连通与断开,而这两种状态正好与二进制中的基础状态“0”和“1”对应!


分享到:


相關文章: