在多周期中实现跳转寄存器(jr,sll,slti)

问题描述 投票:0回答:1

我被要求为指令(js,sll,slti)一起绘制多周期数据路径和控制单元。并为这3条指令绘制主控制器FSM。

我正在努力,我知道如何使用单周期数据路径而不是多周期。

请帮助

mips cycle fsm
1个回答
0
投票

如果您知道单周期数据路径,并且想将其用于多周期,通常来说,我们将单周期细分为多个阶段。

由于一次只能执行一个阶段,因此,一个相对简单的状态机控制当前/下一步执行哪个阶段以激活适当的阶段,并停用其他阶段。

这些阶段类似于流水线处理器的阶段,即与指令获取,解码,执行,内存和写回相对应的那些阶段。

在流水线机器中,所有指令都需要经过所有阶段,但是,在多周期机器中,某些指令可以跳过某些状态,这应该在状态机中体现出来。例如,尽管所有指令共享指令提取和解码,但只有加载和存储与数据存储器交互,因此任何其他指令都可以跳过Mem阶段。

状态机应以指令提取作为活动状态开始,然后进入解码状态,然后,它可以使用实际指令的知识来决定为该给定指令跳过哪些阶段。

© www.soinside.com 2019 - 2024. All rights reserved.