计算机组成原理-第五章笔记

一、CPU功能和基本结构

回忆过去

现代计算机的结构

 运算器的组成

 控制器的组成

 计算机的工作过程

 中央处理器-CPU的功能和结构

CPU的功能

运算器和控制器的功能

运算器的基本结构

背景:我们发现一个问题,如果十六条线突然全上,是不是都不知道哪个加哪个了,那所以我就只能让左边的一个寄存器上一个操作数,右边的寄存器上一个操作数,那所以我们可以引入多路选择器用来决定输出哪个,比如左边给出信号00,那就是让R0通过,右边给出01,那就是让R1的操作数通过。或者我也可以使用三态门,来决定哪一个寄存器的哪一端上数据

 理想很美好,但是这个实现起来太难了,所以我们尝试使用下面的做法

 

如果存在一个数来自主存和R0,那就先把主存的数据写到暂存寄存器,因为别的寄存器也有可能有数据,这样会导致破坏原有的数据

为什么要加上暂存寄存器?因为假如如果R0,R1同时往总线上输入数据,会导致总线产生冲突,加入暂存寄存器后,会先接收R0的数据到暂存寄存器中,然后再把R0的通道“关闭”,R1把数据传入到B端

疑问:传送到ALU的信号要稳定才能得到正确的计算结果,那如果传送到ALU的信号不稳定,计算结果就“飞”出去咋办,见下图

加一个暂存寄存器,和一个三态门,当R0传送数据后,会先把不稳定得的结果放到暂存寄存器,等信号稳定计算出正确结构后,三态门再放行

1,.PC将指令放地址输入到总线上。

2.IR收到指令后,将地址码输出到总线上,操作码则送个操作单元CU,也就是指令译码器

3.译码器根据接收信号决定接下来要进行什么操作,它的输出信号就是微操作信号发生器的输入信号

4.而微操作信号发生器没收到一个节拍信号,就会发出下一个微操作对应的微操作信号

5.我们还需要根据PSW的标志信息推出下一个微操作是什么样的,比如发送了溢出,那就要对溢出进行处理

6.把MARin变成1,接收CPU内部总线上的地址指令,再通过地址总线传送给主存,主存通过地址总线上的地址信号去查找存储单元

7.主存找到数据之后,通过数据总线传送到MDR中,这样就完成了读操作

MDRin和MDRinE是不一样的,MDRin就是直接无脑进,而MDRin是要有效的才能进去

有哪些寄存器是可以通过汇编(可见的)操作

指令执行过程

指令周期

指令周期流程

取指周期

 间址周期

 执行周期

 中断周期

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值