电脑和手机中的大多数东西都比较容易理解: RAM、存储器、外围设备和一起工作的软件,形成电脑各种功能。但是,你的系统的核心,处理器(CPU),对许多人来说,似乎都是陌生而无法触及的。在这里,我们会尽最大努力用最通俗的语言把处理器给讲解清楚。
在我们开始之前需要注意的一点是:现代处理器比我们在这里概述的要复杂好多个数量级,一个人几乎不可能理解一个拥有超过10亿个晶体管的芯片的每一个细节。然而,处理器的组成原理都是一样的,理解了处理器的基本原理,我们也就可以理解复杂的当代CPU了。
从简单开始
电脑以二进制运行,一般我们都用0和1(或真和假)来表示。他们只了解两种状态:开和关。为了进行二进制计算,他们使用了所谓的晶体管。在有电流通过的情况下,晶体管只允许源极电流通过它流到漏极。本质上,这就形成了一个二进制开关,根据第二输入信号来切断电流。
现代电脑使用数十亿个晶体管来执行日常的计算,做实验的过程中,你只需要少数几个晶体管就可以构成他的最基本的组件,这被称之为门。
逻辑门
适当堆叠几个晶体管,你就有了所谓的逻辑门。逻辑门接受二进制输入,对它们执行运算,并返回输出。例如,如果任一输入为1,“或”门返回true。“与”门检查两个输入是否都为1,“异或”检查只有一个输入是否为1,“N”变体(NOR, NAND, and XNOR),这些都是的基极门的种类。
和门一起来实现数学运算
只需两个门,你就可以进行基本的二进制加法。上图显示了一个加法器,这给了我们一个简单的设置,有三个不同的输出: 0、1和2。但是一位不能存储高于1的任何东西,而且这台机器也没有太大用处,因为它只能解决一个最简单的数学问题。这只是一个半加法器,如果你把其中的两个和另一个输入连接起来,你会得到一个全加法器。全加法器有三个输入——两个要相加的数字和一个“进位”。“当最终数量超过了一个比特可以存储的数量时,就会使用进位。全加法器将链接成一条链,进位从一个加法器传递到下一个加法器。进位被加到第一半加法器中XOR门的结果中,当需要开启时,有一个额外的OR门来处理这两种情况。
大多数其他数学运算都可以通过加法来完成;乘法只是重复加法,减法可以通过一些特殊的位反转来完成,除法只是重复减法。虽然所有现代电脑都有基于硬件的解决方案来加速更复杂的操作,但从技术上讲,你可以用全加器来完成所有这些。
总线和内存
其实,处理器不过是一台复杂的计算器,因为他不对运算结果做任何的存储。上面显示的是一个存储单元,它可以完成所有这些。在内部,内存使用了很多与非门,这和现实生活中存储技术会有很大的不同,但是它的功能是一样的。你给它一些输入,打开“写”位,它会将输入存储在单元格内。这不仅仅是一个存储单元,因为我们还需要一种从它读取信息的方法。这是通过启用码来完成的,启用码是存储器中每个位的与门的集合,都与另一个输入“读取”位相关联。写和读位通常也被称为“set”和“enable”。
这整个包裹被包装成一个所谓的寄存器。这些寄存器连接到总线,总线是一束环绕整个系统运行的导线,连接到每个组件。即使是现代电脑也同样有总线。
每个寄存器仍然有一个写和读位,但是在这个设置中,输入和输出是相同的。这其实很好。例如。如果您想将R1的内容复制到R2,您可以打开R1的读取位,这将把R1的内容推到总线上。当读取位打开时,您将打开R2的写入位,这将把总线内容复制到R2中。
寄存器也用于制作RAM。RAM通常以网格形式布置,导线有两个方向,解码器采用二进制输入并接通相应的编号导线。例如,“11”是二进制的3,是最高的2位数字,所以解码器会打开最高的线。每个十字路口都有一个登记簿。所有这些都连接到中央总线和中央读写输入。只有当跨过寄存器的两根导线也接通时,读和写输入才会接通,这将有效地允许您选择要读写的寄存器。同样,现代RAM要复杂得多,但是这个设置仍然有效。
时钟、步进器和解码器
寄存器随处可见,是在处理器中移动数据和存储信息的基本工具。那么是什么让他们四处移动呢?
时钟是处理器核心中的第一个组件,它将以设定的时间间隔关闭和打开,以赫兹或每秒周期为单位。这是你在处理器旁边看到的广告速度;一个5 GHz芯片每秒可以执行50亿次循环。时钟速度通常是衡量处理器速度的一个非常好的指标。
时钟连接到步进器,步进器将从1计数到最大步进,完成后将自己复位到1。对于处理器可以写入的每个寄存器,时钟也连接到与门:这些与门还连接到另一个组件,指令解码器的输出。指令解码器接收像“将R2设置为R1”这样的指令,并将它解码成处理器可以理解的东西。它有自己的内部寄存器,称为“指令寄存器”,存储当前操作。但是一旦解码,它将打开正确的设置,并为正确的寄存器启用位,这将根据时钟触发。
程序指令存储在RAM (或现代系统中的L1缓存,更接近处理器 )中。由于程序数据存储在寄存器中,就像所有其他变量一样,它可以被动态操纵以绕过程序。跳转指令将指令解码器正在读取的存储器中的当前位置设置到不同的位置。
这一切是如何结合在一起的
现在,我们对处理器工作方式已经做了简单的介绍,主总线跨越整个系统并连接到所有寄存器。全加器连同一系列其他运算被打包到算术逻辑单元或ALU中。这个ALU将连接到总线,并且还将有自己的寄存器来存储它正在操作的第二个数据。
为了执行计算,程序数据从系统RAM加载到控制部分。控制部分从RAM中读取两个数字,将第一个数字加载到ALU的指令寄存器中,然后将第二个数字加载到总线上。同时,它向ALU发送一个指令代码,告诉它该做什么。然后,ALU执行所有计算,并将结果存储在不同的寄存器中,处理器可以从中读取,然后继续该过程。
电子消费 22-05-13
数码 22-05-13
电商 22-05-13
前沿动态 22-05-13
通信 22-05-13
国际资讯 22-05-13
热点 22-05-13
电商 22-05-12
电商 22-05-12
电商 22-05-12
前沿动态 22-05-12
前沿动态 22-05-12
前沿动态 22-05-12
通信 22-05-12
通信 22-05-12
通信 22-05-12
电子消费 22-05-12
电子消费 22-05-12
电子消费 22-05-12
数码 22-05-12