RISC-V 多周期流水线处理器:阶段分析与性能评估
1. 流水线阶段详解
在 RISC-V 处理器的多周期流水线中,各个阶段承担着不同的任务,共同完成指令的执行。
1.1 发布阶段相关函数
- stage_job 函数 :issue.cpp 文件中的 stage_job 函数用于从寄存器文件中读取源操作数。代码如下:
static
void
stage_job (
decoded_instruction_t
d_i ,
int
* reg_file ,
int
*rv1 ,
int
* rv2 ){
* rv1
=
reg_file [ d_i . rs1 ];
* rv2
=
reg_file [ d_i . rs2 ];
}
- set_output_to_e 函数 :该函数将源值 rv1 和 rv2、解码信息 d_i 以及程序计数器 pc 填充到 i_to_e 结构中。代码如下:
static
void
set_output_to_e (
code_address_t
pc ,
decoded_instruction_t
d_i ,
int
rv1 ,
int
rv2 ,
# ifndef
__SYNTHESIS__
instruction_t
instruction ,
code_address_t
target_pc ,
# endif
from_i_to
超级会员免费看
订阅专栏 解锁全文
67

被折叠的 条评论
为什么被折叠?



