- 1、本文档共76页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MIPS处理器讲述
MIPS处理器 核心指令集的实现 基础知识 MIPS指令格式 指令等长,所有指令长度皆为4个字节 指令在主存中对齐存放,指令起始地址最低两位为00 下一条指令:PC+4 三种指令格式 MIPS核心子集 MIPS通用寄存器 32个32位的通用寄存器 $zero($0)存放常量0 $ra($31)存放返回地址 MIPS通用寄存器 定时方法 定时方法规定的状态单元(寄存器,存储器)的读出和写入操作与时钟信号的关系。 读出 无控制信号:不需要控制信号,持续读出 有控制信号:当控制信号电平有效时读出 写入:边沿触发 无控制信号:只要时钟的有效跳变沿到来,就写入 有控制信号:时钟有效跳变沿到来,且控制电平有效,写入 D触发器的读/写操作模型 定时方法 边缘触发写入的优点 MIPS核心子集的实现 MIPS核心子集的实现 单时钟周期的实现 指令在一个时钟周期内执行完毕。 时钟周期必需足够长,使得最耗时的指令也能执行完毕 效率低,所有指令的执行时间都和最耗时的那条指令一样 多时钟周期的实现 单时钟周期的实现 取指数据通路 通知 cqspub@ 邮件标题:实验x_学号_姓名 寄存器组 包含32个32位寄存器 32位ALU R型指令的数据通路 数据存储器 数据存取指令的数据通路 存取指令/R指令的数据通路合并 存取指令/R指令的数据通路合并 Beq指令的数据通路 R类型、存取、beq指令的数据通路 ALU的控制信号 ALU的控制信号 ALU的控制信号 真值表 加入ALU控制后的数据通路 控制信号小结 加上控制单元的数据通路 控制单元的真值表 J指令 指令用到的功能单元 多周期实现方案 多周期数据通路设计思路 把任意指令的执行分解为一系列步骤,这些步骤的执行时间差不多,每步用一个时钟周期执行,执行一条指令需要n个时钟周期。 我们将规定每一步最多只能包含一次ALU操作,或一次寄存器访问,或一次存储器访问。使得每个操作的时间差不多,时钟周期长度由这些操作中最耗时的操作决定。 多周期数据通路设计思路 一个时钟周期结束后,后续周期中要用到的所有数据,都必需存储在状态单元中。 每个主功能单元的输出都附带了寄存器,用于存储该单元的输出,使这些输出可以在后续的时钟周期中使用 多周期实现方案的优点 允许指令的执行占用不同的时钟周期数。 一个功能部件可在单条指令执行过程中可多次使用。 多周期数据通路的高层视图 多时钟周期的数据通路 多周期实现的完整数据通路和控制单元 指令周期的第一个时钟周期 取指---从存储器中取出指令,并计算下条指令地址 IR=存储器[PC] PC=PC+4 指令周期的第二个时钟周期 译码---执行一些“良性”操作,产生备用数据 A=Reg[IR[25:21]] B=Reg[IR[20:16]] ALUOut=PC+((符号扩展(IR[15:0]))2) 所有指令执行步骤总结 控制器的实现 有限状态机控制器 微程序控制器 有限状态机控制器的高层视图 取指和译码(图5.37) 存储器访问FSM (图5.38) R型指令FSM (图5.39) BEQ指令FSM (图5.40) J指令FSM (图5.41) 完整的FSM 有限状态机的实现 控制器送出的控制信号 状态机的每个状态会显式的指定某些信号的取值 没有被提及的信号,其取值可设为无害的(不影响数据通路的) 多路选择器控制信号:取任意值,一般可取固定的默认值0 状态单元读写信号:取无效值,禁止读写 控制器的实现 有限状态机控制器 微程序控制器 微程序控制器工作原理 将每个时钟周期要送出控制信号预先存储在ROM中(控制存储器CM) 存起来的同一时钟周期送出的一组控制信号构成一条微指令 核心指令集的微程序控制器需要10条微指令,即有限状态机控制器中,每个状态对应一条微指令 微程序控制器工作原理 执行指令时,每个时钟周期去CM取出恰当的微指令,给控制信号赋值 构成一条指令的微指令序列称为微程序,执行指令即执行微程序 微程序控制器示意图 地址选择逻辑 CM示意图 调度表 微指令的组成 操作控制字段:指定计算机所有控制信号的取值 顺序控制字段:辅助指定下一条将要执行的微指令在CM中的地址 MIPS微指令格式 操作控制字段字段可按逻辑分成6个小字段 ALUC,SRC1,SRC2,RegC,MemC,PCW 多周期实现的完整数据通路和控制单元 控制字段的取值 控制存储器中的内容 end 微指令由两大字段构成:操作控制字段,顺序控制字段 CM 微程序计数器uPC 顺序控制字段(AddrCtrl) 操作控制字段 11 01 10 11 00 Fetch Seq Fetch Fetch Fetch 0000 0001 0010 0011 0100 0101 0110 0111 1000 10
文档评论(0)