从功能上看,一般cPu的内部结构可分为:控制单元、逻辑运算单元、存储单元(包括内部总线和缓冲器)三大部分。
其中控制单元完成数据处理整个过程中的调配工作,逻辑单元则完成各个指令以便得到程序最终想要的结果,存储单元就负责存储原始数据以及运算结果。
浑然一体的配合使得cPu拥有了强大的功能,可以完成包括浮点、多媒体等指令在内的众多复杂运算,也为数字时代加入了更多的活力。
cPu的逻辑单元
更细一点,从实现的功能方面看,cPu大致可分为如下八个逻辑单元:
指令高速缓存,俗称指令寄存器 : 它是芯片上的指令仓库,有了它cPu就不必停下来查找计算机内存中的指令,从而大幅提高了cPu的运算速度。
译码单元,俗称指令译码器 : 它负责将复杂的机器语言指令解译成运算逻辑单元(aLu)和寄存器能够理解的简单格式,就像一位外交官。
控制单元 : 既然指令可以存入cPu,而且有相应指令来完成运算前的准备工作,背后自然有一个扮演推动作用的角色——它便是负责整个处理过程的操作控制器。
根据来自译码单元的指令,它会生成控制信号,告诉运算逻辑单元(aLu)和寄存器如何运算、对什么进行运算以及对结果进行怎样的处理。
寄存器 : 它对于cPu来说非常的重要,除了存放程序的部分指令,它还负责存储指针跳转信息以及循环操作命令,是运算逻辑单元(aLu)为完成控制单元请求的任务所使用的数据的小型存储区域,其数据来源可以是高速缓存、内存、控制单元中的任何一个。
逻辑运算单元(aLu) : 它是cPu芯片的智能部件,能够执行加、减、乘、除等各种命令。
此外,它还知道如何读取逻辑命令,如或、与、非。
来自控制单元的讯息将告诉运算逻辑单元应该做些什么,然后运算单元会从寄存器中间断或连续提取数据,完成最终的任务。
预取单元 : cPu效能发挥对其依赖非常明显,预取命中率的高低直接关系到cPu核心利用率的高低,进而带来指令执行速度上的不同。
根据命令或要执行任务所提出的要求,何时时候,预取单元都有可能从指令高速缓存或计算机内存中获取数据和指令。
当指令到达时,预取单元最重要的任务就是确保所有指令均排列正确,然后发送给译码单元。
总线单元 : 它就像一条高速公路,快速完成各个单元间的数据交换,也是数据从内存流进和流出cPu的地方。
数据高速缓存 : 存储来自译码单元专门标记的数据,以备逻辑运算单元使用,同时还准备了分配到计算机不同部分的最终结果。
通过以上介绍可以看出cPu虽小,方寸之地却能容纳大世界,内部更像一个发达的装配工厂,环环相扣,层层相套。
正因为有了相互间的协作配合,才使得指令最终得以执行,才构成了图文并茂、影像结合的神奇数字世界。
想比较专业仔细的了解一下的话可以看看单片机一类的书!!