408-计组-CPU

本文详细介绍了CPU的功能和结构,包括运算器和控制器的作用、数据通路的基本结构、指令执行过程中的指令周期和数据流,以及指令流水线的工作原理。CPU的主要组件如控制器、运算器、存储器地址寄存器、数据寄存器和程序状态字寄存器等的职责和交互过程得到了阐述。此外,还讨论了不同类型的CPU周期和微指令控制的设计方法。
摘要由CSDN通过智能技术生成

中央处理器

CPU的功能与结构

功能

  • 指令控制

    • 取指令
    • 分析
    • 执行
  • 操作控制

    • 操作信号送往相应部件,从而控制这些部件
  • 时间控制

    • 指令按时间顺序提供控制信号
  • 数据加工

  • 中断处理

运算器和控制器的功能

  • 控制器

    • 协调,控制CPU各部分执行指令的顺序

    • 主要是执行指令的过程

      • 执行指令的过程就是控制器形成各种操作信号的过程,控制运算器,存储器和IO设备完成相应的操作
  • 运算器

    • 处理数据

基本结构

  • 运算器

    • ALU

    • 通用寄存器组

      • 每个寄存器和ALU有两个数据通路,每个数据通路的位数是机器字长
    • 为了解决ALU和寄存器组的连接问题

      • 需要MUX多路选择器

        • MUX和ALU只有一个通路
        • MUX和寄存器组有n个通路
      • 也可以使用三态门

      • 多数CPU使用CPU内部总线的方式

        • 方式

          • 然后用三态门和总线连接,然后总线和ALU连接
          • 比如R0in就是数据进入R0,R0out就是数据从R0出去
        • 缺点

          • 会产生数据冲突

            • 可以加一个暂存寄存器,串行读取ALU的AB端
          • ALU的输出也会和B端输入产生冲突

            • 解决办法是ALU的输出端加一个暂存寄存器
    • 暂存寄存器

    • 累加寄存器ACC

      • 存放每次运算的中间结果
    • 程序状态字寄存器 PSW(参与并决定微操作的形成)

      • OF

      • SF

      • ZF

      • CF

        • 进位
    • 移位器

      • 对运算结果进行移位运算
    • 计数器

      • 用来控制乘除运算的操作步数
  • 控制器

    • PC程序计数器

    • IR指令寄存器

      • 存放指令:、分为OP操作码和Ad地址码
    • 指令译码器ID

      • 输入是OP
      • 输出到微操作信号发生器
    • 微操作信号发生器

      • 输入

        • 时序系统的输出
        • ID的输出
        • PSW
      • 输出

    • MAR存储器地址寄存器

      • 输入

        • MARin有效 ,AdIRout有效
        • 是IR寄存器的Ad地址码部分
      • 输出

        • CPU外部的地址总线
    • MDR存储器数据寄存器

      • 输入

        • 数据总线

          • 信号是MDRinE
        • CPU内部总线

          • 信号是MDRin
      • 输出

        • 同输入
  • 寄存器分类

    • 用户可见寄存器

      • 汇编语言中可以控制的寄存器

        • PC
        • PSW
        • 通用寄存器
    • 透明寄存器

      • 编写汇编时不能控制

        • IR
        • MAR
        • MDR

指令执行过程

指令周期

  • 概念

    • CPU从主存中取出并执行一条指令的时间
  • 组成

    • 由若干个机器周期组成

      • 一个机器周期对应一个操作

      • 比如

        • 取指令
        • 取地址
        • 执行指令
      • 又分为定长机器周期CPU和不定长机器周期CPU

        • 不定长就是取指令和执行包含的CPU周期不同
    • 一个机器周期又包含若干个CPU周期(时钟周期

  • 流程

    • 取指周期

      • 数据流

        • 当前指令的地址从到存储器地址寄存器
          (PC)->MAR

        • CU发出读信号(就是从存储器中读),此信号发送给控制总线
          1->R

        • MAR的内容(即内存地址)的内存单元(即对应地址存放的内容),送到MDR
          M(MAR)->MDR

          • 此时已经读出
        • 取完指令PC在CU的控制下+1
          (PC) +1 ->PC

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值