在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 833|回复: 0

[求助] 处理器设计 & RI5CY & RISC-V & 数字设计 & 硬件木马检测

[复制链接]
发表于 2024-1-16 19:41:12 | 显示全部楼层 |阅读模式
300资产
求助各位大神们!!!
最近在看某一篇文章遇到比较大的困惑
这篇文章是基于四级流水线顺序执行的RI5CY处理器进行的设计

图中的load或store指令都是指访问外设的时候,在译码阶段进行指令重排列
访问外设的时候,指令执行(EX)的周期是1clk,而写回(WB)的周期是大于1clk
正是因为WB的周期大于1clk,当lw指令执行(lw_ex)完后,接着就进行的lui的执行,而没有进行lw指令写回(lw_wb)
然后就出现了图一中蓝色框的指令流重排列结果,紫色框是原始指令流
原作者提到这是使得指令在译码阶段的时候也能够实现指令流与寄存器组的状态实行对齐,而在执行和写回的时候指令流与寄存器组的状态本来就是对齐的

【现在的问题是】:这里是怎么进行那个重排列?原作者这么做,感觉有点像乱序、结构冒险、数据冒险等,我现在是搞的不太清楚

类似的修改还有图二,这里的jalr在执行周期是大于1clk,jalr的整个执行周期是大于sw的整个写回周期,所以这里又有一些不同


                               
登录/注册后可看大图


                                          图一


                               
登录/注册后可看大图


                                           图二

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-16 11:39 , Processed in 0.034917 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表