Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenXiangShan
XiangShan
提交
f4f08c71
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,发现更多精彩内容 >>
提交
f4f08c71
编写于
10月 10, 2019
作者:
Z
Zihao Yu
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'fix-no-dcache' into 'master'
noop,Cache: support no dcache See merge request projectn/noop!32
上级
54453403
7b2c06fd
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
17 addition
and
7 deletion
+17
-7
src/main/scala/noop/Cache.scala
src/main/scala/noop/Cache.scala
+16
-6
src/main/scala/noop/NOOP.scala
src/main/scala/noop/NOOP.scala
+1
-1
未找到文件。
src/main/scala/noop/Cache.scala
浏览文件 @
f4f08c71
...
...
@@ -450,11 +450,21 @@ class Cache(implicit val cacheConfig: CacheConfig) extends CacheModule {
}
object
Cache
{
def
apply
(
in
:
SimpleBusUC
,
mmio
:
SimpleBusUC
,
flush
:
UInt
)(
implicit
cacheConfig
:
CacheConfig
)
=
{
val
cache
=
Module
(
new
Cache
)
cache
.
io
.
flush
:=
flush
cache
.
io
.
in
<>
in
mmio
<>
cache
.
io
.
mmio
cache
.
io
.
out
def
apply
(
in
:
SimpleBusUC
,
mmio
:
SimpleBusUC
,
flush
:
UInt
,
enable
:
Boolean
=
true
)(
implicit
cacheConfig
:
CacheConfig
)
=
{
if
(
enable
)
{
val
cache
=
Module
(
new
Cache
)
cache
.
io
.
flush
:=
flush
cache
.
io
.
in
<>
in
mmio
<>
cache
.
io
.
mmio
cache
.
io
.
out
}
else
{
val
addrspace
=
List
(
AddressSpace
.
dram
)
++
AddressSpace
.
mmio
val
xbar
=
Module
(
new
SimpleBusCrossbar1toN
(
addrspace
))
val
busC
=
WireInit
(
0.
U
.
asTypeOf
(
new
SimpleBusC
))
busC
.
mem
<>
xbar
.
io
.
out
(
0
)
xbar
.
io
.
in
<>
in
mmio
<>
xbar
.
io
.
out
(
1
)
busC
}
}
}
src/main/scala/noop/NOOP.scala
浏览文件 @
f4f08c71
...
...
@@ -83,6 +83,6 @@ class NOOP(implicit val p: NOOPConfig) extends NOOPModule {
val
mmioXbar
=
Module
(
new
SimpleBusCrossbarNto1
(
2
))
io
.
imem
<>
Cache
(
ifu
.
io
.
imem
,
mmioXbar
.
io
.
in
(
0
),
Fill
(
2
,
ifu
.
io
.
flushVec
(
0
)
|
ifu
.
io
.
bpFlush
))(
CacheConfig
(
ro
=
true
,
name
=
"icache"
,
userBits
=
AddrBits
*
2
))
io
.
dmem
<>
Cache
(
exu
.
io
.
dmem
,
mmioXbar
.
io
.
in
(
1
),
"b00"
.
U
)(
CacheConfig
(
ro
=
false
,
name
=
"dcache"
))
io
.
dmem
<>
Cache
(
exu
.
io
.
dmem
,
mmioXbar
.
io
.
in
(
1
),
"b00"
.
U
,
enable
=
HasDcache
)(
CacheConfig
(
ro
=
false
,
name
=
"dcache"
))
io
.
mmio
<>
mmioXbar
.
io
.
out
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录