Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenXiangShan
XiangShan
提交
e295a902
X
XiangShan
项目概览
OpenXiangShan
/
XiangShan
12 个月 前同步成功
通知
1183
Star
3914
Fork
526
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
X
XiangShan
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
e295a902
编写于
7月 20, 2020
作者:
Y
Yinan Xu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
decode: support ecall
上级
c58cc817
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
8 addition
and
3 deletion
+8
-3
src/main/scala/xiangshan/backend/decode/DecodeHelper.scala
src/main/scala/xiangshan/backend/decode/DecodeHelper.scala
+2
-1
src/main/scala/xiangshan/backend/decode/isa/RVZifencei.scala
src/main/scala/xiangshan/backend/decode/isa/RVZifencei.scala
+5
-1
src/main/scala/xiangshan/backend/roq/Roq.scala
src/main/scala/xiangshan/backend/roq/Roq.scala
+1
-1
未找到文件。
src/main/scala/xiangshan/backend/decode/DecodeHelper.scala
浏览文件 @
e295a902
...
...
@@ -52,6 +52,7 @@ object Instructions extends HasInstrType with HasXSParameter {
RVIInstr
.
table
++
XSTrap
.
table
++
RVZicsrInstr
.
table
++
RVZifenceiInstr
.
table
++
Privileged
.
table
++
RVFInstr
.
table
++
RVDInstr
.
table
++
...
...
@@ -60,7 +61,7 @@ object Instructions extends HasInstrType with HasXSParameter {
// (if (HasFPU) RVFInstr.table ++ RVDInstr.table else Nil) ++
// Privileged.table ++
// RVAInstr.table ++
// RVZicsrInstr.table
++ RVZifenceiInstr.table
// RVZicsrInstr.table
}
object
CInstructions
extends
HasInstrType
with
HasXSParameter
{
...
...
src/main/scala/xiangshan/backend/decode/isa/RVZifencei.scala
浏览文件 @
e295a902
...
...
@@ -3,12 +3,16 @@ package xiangshan.backend.decode.isa
import
chisel3._
import
chisel3.util._
import
xiangshan.FuType
import
xiangshan.backend.ALUOpType
import
xiangshan.backend.decode._
import
xiangshan.backend.decode.isa.RV64IInstr.InstrI
object
RVZifenceiInstr
extends
HasInstrType
{
def
FENCEI
=
BitPat
(
"b000000000000_00000_001_00000_0001111"
)
// fixme: add rvzifencei inst
val
table
=
Array
()
val
table
=
Array
(
FENCEI
->
List
(
InstrI
,
FuType
.
alu
,
ALUOpType
.
add
)
)
}
src/main/scala/xiangshan/backend/roq/Roq.scala
浏览文件 @
e295a902
...
...
@@ -217,7 +217,7 @@ class Roq(implicit val p: XSConfig) extends XSModule {
io
.
redirect
.
bits
.
target
:=
trapTarget
io
.
exception
:=
microOp
(
ringBufferTail
)
XSDebug
(
io
.
redirect
.
valid
,
"generate exception: pc 0x%x target 0x%x
\n"
,
io
.
exception
.
cf
.
pc
,
trapTarget
)
XSDebug
(
io
.
redirect
.
valid
,
"generate exception: pc 0x%x target 0x%x
exceptionVec %b\n"
,
io
.
exception
.
cf
.
pc
,
trapTarget
,
Cat
(
microOp
(
ringBufferTail
).
cf
.
exceptionVec
)
)
// debug info
XSDebug
(
"head %d:%d tail %d:%d\n"
,
ringBufferHeadExtended
(
InnerRoqIdxWidth
),
ringBufferHead
,
ringBufferTailExtended
(
InnerRoqIdxWidth
),
ringBufferTail
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录