5.1 CPU的基本功能和结构

5.1.1 CPU的功能

  • 指令控制

    • 完成取指令、分析指令和执行指令的操作

  • 操作控制

    • 一条指令的功能往往是由若干操作信号的组合来实现的

    • CPU管理并产生由内存取出的每条指令的操作信号,把各种操作信号送往相应的部件,从而控制这些部件按指令的要求进行动作

  • 时间控制

    • 对各种操作加以时间上的控制

    • 时间控制要为每条指令按时间顺序提供应有的控制信号

  • 数据加工

    • 对数据进行算术和逻辑运算

  • 中断处理

    • 对计算机运行过程中出现的异常情况和特殊请求进行处理

在具体的划分上,CPU包括运算器控制器两部分,它们分别实现上述的这些功能。

  • 运算器

    • 对数据进行加工

  • 控制器

    • 取指令

      • 自动形成指令地址

      • 自动发出取指令的命令

    • 分析指令

      • 操作码译码(分析本条指令要完成什么操作)

      • 产生操作数的有效地址

    • 执行指令

      • 根据分析指令得到的操作命令和操作数地址形成操作信号控制序列,控制运算器、存储器以及I/O设备完成相应的操作。

    • 中断处理

      • 管理总线及输入输出

      • 处理异常情况(如掉电)和特殊请求

5.1.2 CPU的基本结构

1、运算器的基本结构

  • 算术逻辑单元

  • 通用寄存器组

    • X86架构下,通用寄存器的命名规则一般为AX、BX、CX…

    • AH表示寄存器AX的高位地址,AL表示寄存器AX的低位地址

  • 堆栈指针SP(特殊的寄存器)

  • 暂存寄存器

    • 存放总线上读来的数据

    • 存放ALU的运算结果

  • 程序状态字寄存器(PSW)

    • 溢出标志(OF)

    • 符号标志(SF)

    • 零标志(ZF)

    • 进位标志(CF)

  • 移位器

  • 计数器

寄存器与ALU的连接方式

1、专用通路方式

每一个寄存器与ALU直接通过数据线相联

  • 使用多路选择器,选择当前哪一个寄存器的信号有效

  • 使用三态门,分别控制每一路输出的通断

优缺点:

  • 性能较高,不存在数据冲突的现象

  • 结构复杂,硬件量大,不易实现

2、CPU内部单总线方式

将所以的寄存器连接到一条内部总线

可以利用暂存寄存器存放总线上读来的数据

优缺点

  • 结构简单,实现容易

  • 存在数据冲突,性能较低

2、控制器的基本结构

  • 程序计数器(PC)

  • 指令寄存器(IR)

  • 指令译码器

    • 操作码进行译码

  • 微操作信号发生器

    • 根据指令译码器的结果、PSW中的标志位及时序信号,发出各种控制信号

  • 时序信号

    • 由CLOCK分频得到不同的时序信号

  • 存储器地址寄存器(MAR)

  • 存储器数据寄存器(MDR)

3、寄存器对用户的可见性

  • 用户可见的

    • PSW

    • ACC

    • 通用寄存器

    • PC

    • 基址寄存器

    • 中断字寄存器

  • 用户不可见的

    • 暂存寄存器

    • 移位寄存器

    • 指令缓冲器

    • 乘法器

    • 先行进位链

    • IR

    • MAR

    • MDR

最后更新于