首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >什么是火箭核心的"wxd“?

什么是火箭核心的"wxd“?
EN

Stack Overflow用户
提问于 2018-11-15 19:52:23
回答 1查看 148关注 0票数 1

在火箭核心旁路逻辑中

代码语言:javascript
代码运行次数:0
运行
复制
 val bypass_sources = IndexedSeq(
(Bool(true), UInt(0), UInt(0)), // treat reading x0 as a bypass
(ex_reg_valid && ex_ctrl.wxd, ex_waddr, mem_reg_wdata),
(mem_reg_valid && mem_ctrl.wxd && !mem_ctrl.mem, mem_waddr, wb_reg_wdata),
(mem_reg_valid && mem_ctrl.wxd, mem_waddr, dcache_bypass_data))

ex_ctrl.wxdmem_ctrl.wxd代表什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-15 23:10:48

据我所知,wxd是为将值写入寄存器的指令设置的,即有一个结果值,因此将其写入寄存器文件。一些相当简单的解码逻辑(例如R型指令的测试)确定每条指令是否是这样的写入器。

另外,据我所理解,ex_ctrlmem_ctrl分别引用了它们的管道阶段的指令ex和mem,因此,当ex阶段的指令是写到寄存器的指令时(即使它要到wb阶段才能完成写入),就会设置ex_ctrl.wxd

背景

火箭微架构暂停读取协处理器结果--就像读取协处理器结果意味着写入处理器寄存器,因此也是对处理器寄存器文件的写入--在wb流水线级为指令断言wxd时,给予处理器指令优先于协处理器指令的优先级。协处理器结果值仅在wxd设置为假时才传送到处理器寄存器文件中(这意味着处理器指令不会写入)。

这种机制限制了写入寄存器文件所需的端口数。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53326977

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档