概述

基本组成

运算器:实现数据处理的部件

完成最基本的算术逻辑运算

ALU (Arithmetic and Logic Unit) + Registers

运算器与机器性能指标:
MIPS:Millions of Instructuions Per Second

机器字长、存储字长、指令字长、数据字长

机器字长
CPU一次能处理数据的位数,通常与CPU的寄存器位数有关。
存储字长
存储器中一个存储单元(存储地址)所存储的二进制代码的位数,即存储器中的MDR的位数。
指令字长
计算机指令字的位数。
数据字长
计算机数据存储所占用的位数。

注:冯诺依曼机中,指令和数据同等重要,都存放在存储器中,并可按地址寻访。

通常早期计算机:存储字长 = 指令字长 = 数据字长。故访问一次便可取一条指令或一个数据,随着计算机应用范围的不断扩大,三者可能各不相同,但它们必须是字节的整数倍。

RISC、CISC

CISC(复杂指令集计算,complex instruction set computing)
用最少的机器语言指令来完成所需的计算任务。这种架构会增加CPU结构的复杂性和对CPU工艺的要求,但对于编译器的开发十分有利。今天只有Intel及其兼容CPU还在使用CISC架构。
RISC(精简指令集计算,reduced instruction set computing)
要求软件来指定各个操作步骤。这种架构可以降低CPU的复杂性以及允许在同样的工艺水平下生产出功能更强大的CPU,但对于编译器的设计有更高的要求。

存储器

地址总线 -> 地址寄存器 -> 地址译码器 -> 存储器

地址总线
地址总线(Address Bus,AB)是在计算机系统各个部件之间传输地址信息的信号线,用来规定数据总线上的数据来自何处或将被送往何处。地址总线是 单向 的。如果CPU要从存储器中读取一个信息,那么,首先必须将要读取的信息的存储器地址放到地址总线上,然后才可以从给定的存储器地址中取出所需要的信息。 地址总线的宽度决定了计算机系统能够使用的最大的存储器容量。 在对输入输出端口进行寻址时也要使用地址总线来传送地址信息。实际操作时,总是用地址总线的高几位选择总线上指定的存储器段,而用地址线的低几位去选择存储器段内具体的存储器单元或输入输出端口地址。
寻址系统
寻址系统就是读出和写入信息的地址选择机构,包括 存储器地址寄存器(MAR)和地址译码器
存储器地址寄存器
存储器地址寄存器MAR具有地址缓冲功能,可使CPU和主存的速度都得到充分发挥和提高。 MAR从功能上看属于主存 ,但在一些微型机中常被放在CPU内,并可兼作别用,在速度要求较高的计算机中,CPU与主存中都设有地址寄存器。
地址译码器 TODO
地址译码器接收来自地址寄存器的n位地址,经译码后产生2^n 个地址选择信号,并从2^n个单元中选出一个单元。通常用X选择线(行线)和Y选择线(列线)的交叉来选择所需要的单元。

控制器

控制器:实现控制功能的部件

  • 提供各部件工作所需的控制信号,控制计算机其他部件协同工作
  • 指令部件(Instruction Register ,Instruction Decoder)
  • 指令执行顺序控制(Program Counter)
  • 时序逻辑部件(Clock,Timer ,Sequencing Logic)
  • 控制信号生成部件(Control Signal Generator or Control Memory)
  • Datapath + Control = CPU(Central Process Unit) or Processor

计算机系统的性能指标

吞吐量
响应时间
带宽
延迟
CPU时钟周期
主频
CPI
CPU执行时间

MIPS MFLOPS GFLOPS TFLOPS PFLOPS