计算机组成原理 — 控制单元的功能

本文详细介绍了控制单元在计算机组成原理中的功能,包括微操作命令分析、指令周期划分(取指、间址、执行和中断),以及多级时序系统的概念,探讨了机器周期、时钟周期的关系和控制方式,如同步与异步控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


大家好呀!我是小笙,本章我主要分享计算机组成原理的控制单元的功能知识,这也是计算机组成原理的最后一章节了,希望内容对你有所帮助!下一阶段我主要以分享软考相关的知识点!

控制单元的功能

微操作命令分析

完成一条指令分四个周期:取指周期、间址周期、执行周期、中端周期

取指周期

  1. 指令地址计算:CPU 根据程序计数器 PC 中的值计算下一条指令的地址。程序计数器存储着当前正在执行的指令的地址或者下一条要执行的指令的地址
  2. 访问内存:CPU根据计算得到的指令地址,向主存发送请求,读取下一条指令所在的内存单元
  3. 指令译码:CPU对从内存中读取的指令进行译码,确定指令的操作类型、操作数等信息
  4. 指令存储:将从内存中读取的指令存储到指令寄存器 IR 中,供接下来的执行阶段使用
image-20240222213033228

间址周期

在间接寻址中,指令不直接提供操作数的地址,而是提供一个指向操作数地址的指针(IR 分析出的是操作数的地址)

image-20240222215217236

执行周期

非访存指令

  • 清除累加器指令 CLA (0 => A)
  • 累加器取反指令 COM
  • 算术右移一位指令 SHR(L(ACC) => R(ACC))
  • 循环左移一位指令 CSL(R(ACC) => L(ACC))
  • 停机指令STP(0 => G)

访存指令

  • 加法指令 ADD X
    1. 将指令的地址码部分送至存储器地址寄存器(Ad(IR)→MAR)
    2. 向主存发读命令,启动主存作读操作(1→R)
    3. 将MAR(通过地址总线)所指的主存单元中的内容(操作数)经数据总线读至MDR内(M(MAR)→MDR)
    4. 给ALU发送加命令,将ACC的内容和MDR的内容相加,结果存于ACC((ACC)+(MDR)+ACC))
  • 存数指令 STA X
    1. 将指令的地址码部分送至存储器地址寄存器(Ad(IR)→MAR)
    2. 向主存发写命令,启动主存作写操作(1→W)
    3. 将累加器内容送至MDR(ACC-→MDR)
    4. 将MDR的内容(通过数据总线)写入到MAR(通过地址总线)所指的主存单元中(MDR+M(MAR))
  • 取数指令 LDA X
    1. 将指令的地址码部分送至存储器地址寄存器(Ad(IR)→MAR)
    2. 向主存发读命令,启动主存作读操作(1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

罗念笙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值