- 1、本文档共115页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * 确定数据通路—解决数据相关 根据前一个内容要点中的分析,定向技术的具体实施条件如下: 相邻指令数据相关:将ALU的输出信号ALUout反馈到ALU的输入端 相隔1条指令数据相关:将MEM段的输出信号反馈回ALU的输入端 相隔2条指令数据相关:若采用在下降沿执行WB的话,此时的数据相关不会发生 因此,定向技术的实施方法如下: 判断是否需要定向技术 若需要,选择合适的信号输入到ALU中 确定数据通路—解决数据相关 这可以引入一个定向判断处理模块来实现 输入信号:m_wRegEn、m_SA、 w_wRegEn、w_SA、e_SA、e_SB 输出信号:指示哪个信号应该进入ALU 结合前面的分析ALU有两个输入端SA和SB。在引入了定向技术后,每个输入端都有三个信号源:来自于ID段寄存器的输出、ALU输出端的反馈信号、MEM段输出端的反馈信号 确定数据通路—解决数据相关 因此,定向判读处理模块需要输出2个控制信号,分别控制ALU的输入端SA和SB,且每个控制信号可用2个比特表示。 因此,解决数据相关的第二个修改点:添加定向判断和处理模块 由前所述,在EX段才能察觉是否需要定向技术,因此该模块可以放在EX段中。 将这两个修改点反映到数据通路中,可得到进一步修改的数据通路,如下所示。 确定数据通路—解决控制相关 如前一内容要点的分析,解决控制相关是提前获取转移目标,然后用旁路技术反馈回IF段。 产生控制相关的有两类转移 1. 绝对跳转,如JR指令 2. 条件跳转,如JRC、JRNZ等 1. 绝对跳转 当在ID段完成译码时,已经可以获得跳转偏移量 因此,为减少取指延后,可以考虑在ID段直接产生目标指令的地址,如PC+offset即可得到 确定数据通路—解决控制相关 2. 条件跳转 跳转的目标地址可以在ID段计算,所需的条件要在EX段完成ALU运算后才能获取 解决方法: ID段产生setFlag信号 EX段经ALU产生tFlag和Flag信号 将这些信号反馈回IF段,并在下降沿更新PC 综上,需要作如下两个修改: 1. 在ID段添加加法器,用于实现PC与offset相加 2. 将EX产生的标志位反馈到IF段以更新PC 确定数据通路—解决控制相关 数据通路修改方法: 由上可知,在IF段PC的更新有两个来源,一是顺序执行的PC(即上一PC增1),一是跳转目标。为此,在IF段需要增加完成PC+1的部件,并且需要二选一复用器 在ID段增加PC与offset相加的加法器,并产生setFlag信号传到EX段。同时,跳转指令才需要判断是否跳转以及跳转目标如何,因此需要将OP码也回传到IF段 在EX段,需要将setFlag、tFlag、Flag信号传到IF段 确定数据通路—其它修改 当插入NOP时,如在load指令后,或者存在访问内存冲突时,PC值需要保持。因此,需要在冲突检测模块中,再产生一个输出,以控制PC的更新或保持 此外,在WB段写寄存器时,需要相应的寄存器使能控制信号w_wRegEn。选择ALUout还是MemOut写到寄存器,需要控制信号w_MemToReg。 ID段需要对IF段得到的指令进行译码,需要把译码得到的ALU功能选择、源寄存器、目的寄存器号等传给EX段 把上述的修改进一步反映到数据通路中,即得到相对完整的数据通路。 确定数据通路—系统总线 系统总线连接CPU与内存,在该总线上传递内存地址、数据和读/写控制信号 内存地址可以是指令地址,也可以是数据的地址。前者由PC给出,后者由ALUout给出。因此,需要一个复用器来复用这两种信号,并用内存读/写信号进行控制。如若MEM段的m_wrMem指示为读/写内存,则表示应该是ALUout表征的数据地址,否则为PC表征的指令地址。 读/写控制信号直接由m_wrMem给出 确定数据通路—系统总线 数据包括读和写的数据。若考虑读和写的数据分开,记读出来的数据为OutDB,写的数据位WriteData。 为避免误写,在m_wrMem指示内存读时,写的数据置成高阻态“zzzz”;指示内存写时,则直接用MEM的待写数据m_RBData。因此,需要额外的一个复用器来复用这两种写数据,并用m_wrMem进行控制 综上,数据通路再修改如下。 分析控制信号 控制信号指ID流水段产生的、用于逐级传递至或者控制各相关流水段的控制信号 分析方法: 可以逐个流水段进行分析,然后确定哪些控制信号需要由ID段产生,哪些则不需要 有些虽然不属于控制信号,但需要往前面的流水级传递的信号,也需要列出来 将需要ID段产生的信号汇集起来,就构成了译码器需要产生的信号 分析控制信号——IF段 IF段对PC的更新需
文档评论(0)