计算机组成原理 教学课件 作者 黄颖 计算机组成原理9.ppt

计算机组成原理 教学课件 作者 黄颖 计算机组成原理9.ppt

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机组成原理 第九章 控制器 9.1控制器的功能 9.1.1 控制器的功能 所有的微操作可按如下分类: ● 在寄存器之间传送数据; ● 将数据由寄存器传送到外部接口(如系统总线); ● 将数据由外部接口传送到寄存器; ● 以寄存器作为输入、输出,完成算术或逻辑运算。 控制器的功能更明确的表述为两项基本任务: 排序:根据被执行程序的指令逻辑,产生引起微操作的控制信号,引导处理器以正确的次序来执行微操作; 执行:控制器产生的控制信号引起逻辑门的打开和关闭,从而正确的建立数据通道和控制ALU和各个部件的协同操作。 9.1.2 控制器的组成 9.1.3微操作命令分析 1、取指子周期 取值子周期的执行过程如下(假设这条指令存放的内存地址为X): ①PC的内容X装入MAR。 ②PC的内容加I,为取下一条指令做好准备。 ③取出内存X单元的内容,传送到MBR中。 ④MBR的内容传送到IR,指令译码器对指令进行译码。取指子周期结束。 T1:MAR?(PC) T2:MBR?M(MAR) PC?(PC)+I T3:IR?(MBR) 注意微操作的分组执行必须根据以下原则: 1)操作顺序必须是合理的。如不能使存储器的读操作发生在PC把地址传送到MAR之前。 2)避免在同一时序内的两个操作在CPU资源的使用上形成冲突。如同时去读、写同一个寄存器。 3)凡是被控制对象不同的微操作,若能在一个节拍内执行,应急可能安排在同一个节拍内,以节省时间。 2、间址子周期 ①IR中的指令的地址字段X传送到MAR; ②取出存放在X单元处的内容Y; ③修改IR的地址字段,使其现在容纳的是操作数的直接地址Y而不再是间接地址X,间址周期结束。 间址周期也可以用微操作进行描述。 T1:MAR?(IR(地址)) T2:MBR?M(MAR) T3:(IR(地址))?(MBR(地址)) 3、中断子周期 ①PC的内容传送到MBR,保存由中断返回的地址,也就是断点地址。 ②将待存放PC的内存位置的地址装入MAR,而中断处理子程序的起始地址装入PC。 用微操作描述这一个子周期过程如下: T1:MBR?(PC) T2:MAR?断点地址的保存地址 PC?中断服务子程序的起始地址 T3:M(MAR)?(MBR) 4、执行子周期 1)INC AX 该指令在执行子周期只有一个微操作,即将寄存器AX的值加1,此操作可安排在T1~T3的任一节拍内,其余节拍为空。如 T1: T2: T3:AX? AX+1 2)ADD AX,[X] 该指令的动作序列如下: ①IR中的指令的地址字段X传送到MAR; ②从内存X单元中读出操作数,传送到存储缓冲寄存器MBR。 ③由MBR送来的操作数送往ALU,和累加器中的内容相加,运算结果放回累加器AX,累加器中原来的值被冲掉。至此,ADD指令执行完毕。 需要的微操作为: T1:MAR?IR(地址) T2:MBR?M(MAR) T3:AX?(AX)+(MBR) 9.1.4控制信号 外部的输入控制信号主要有:指令寄存器信息、标志寄存器信息、时钟信号和来自系统总线的控制信号。 控制器产生的输出信号有:到控制总线的控制信号和向CPU内部发出的控制信号。 当取指子周期到来: ①控制信号C2有效,打开PC送往MAR的通道; ②控制信号C0有效,打开MAR送往地址总线的输出门; ③通过控制总线向主存发读命令CR; ④C5有效,打开数据总线送至MBR的输入门; ⑤C4有效,打开MBR和IR之间的控制门,至此指令送至IR; ⑥C13有效,打开指令操作码送至控制单元的输出门。控制单元在操作码和时钟的控制下产生各种控制信号; ⑦使PC内容加I(图中未标出)。 9.2 硬布线控制器 9.2.1硬布线控制器的概述 硬布线的实现方式其实就是一种硬件电路的实现方法,通过对一组控制电路输入逻辑信号,则会输出相应的逻辑控制信号。硬布线设计的方法就是把控制部件看作为产生固定时序控制信号的逻辑电路,一旦设计完成,要想增加新的控制功能是不可能的,除非重新设计制造,因此硬布线的本质就是一种由门电路构成的复杂的网络电路。 9.2.2 硬布线控制器的结构 9.2.3 硬布线控制器的设计步骤 1)设计指令的操作码长度,并确定指令长度是固定还是可变的; 2)确定机器的时钟周期、节拍和主频,确定机器时钟周期是固定的还是可变长的; 3)根据操作码功能,确定每一个操作码需要的所有机器子周期以及每一个周期要完成的操作,并画出流程图和控制时序图; 4)综合所有操作码的每一个操作命令,写出逻辑表达式,并进行化简; 5)实现硬件逻辑电路。 例: 定义两个新的控制信号P和Q PQ = 01 取指周期 PQ = 01 间址周期 PQ = 10 执行周期 PQ = 11 中断周期 则如下的布尔表达式可以定义C5。

您可能关注的文档

文档评论(0)

时间加速器 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档