xu_zh

Results 20 issues of xu_zh

# 问题描述 目前把域名、账户、密码等信息直接明文保存在json文件里,虽然说明中提到要“修改项目为私有”并付有方法链接,但是: 一方面,github不允许直接在设置中将fork仓库转为私有 ![image](https://user-images.githubusercontent.com/22112348/184361332-dbaee126-73da-40eb-81c2-b827becc6970.png) 另一方面,即使是私有仓库,也不建议把这类敏感信息明文存在仓库中 目前这70多个fork里面已经可以看到不少账户密码泄露的情况 # 解决思路 ## 针对前者 若要修改项目为私有,必须通过导入代码的方式导入到私有仓库 ![image](https://user-images.githubusercontent.com/22112348/184361630-cc184ebc-e9b9-4e75-81fb-fd072be0ed4e.png) 或者在本地使用git操作,类似于 ``` git clone --bare https://github.com/aaa/public-repo && cd public-repo git push --mirror https://github.com/bbb/private-repo ``` 但是这样创建的仓库不会显示在fork里,也难以直接拉取新的commit ## 针对后者...

### 在提问之前... - [X] 我填写了简短且清晰明确的标题,以便开发者在翻阅 issue 列表时能快速确定大致问题。而不是“一个建议”、“卡住了”等 - [X] 我基本确定这是一个新功能/建议,而不是遇到了 bug(不确定的话请附上日志) ### 说说你遇到的问题? 使用 MAA 连接实体设备,利用“开始前”和“结束后”脚本自动设置手机分辨率,但: - 手动停止任务,比如肉鸽刷一半不想刷了时 - 任务出错,比如截图失败需要手动重启时 - 未选择任何任务就 Link Start 时 三种情况下不会触发”结束后“脚本的运行,不得不手动运行脚本重置分辨率 ### 有什么好的想法? 在”开始前“和”结束后“以外增加“中止时”及“出错时”脚本,或在上述异常情况发生时同样执行”结束后“脚本 ###...

enhancement
module: roguelike
module: GUI

Port from [nanhu-clockgated](/OpenXiangShan/XiangShan/tree/nanhu-clockgated)

## 引入 beta 标签和大版本标签 刷 b 站看到有评论讲希望在不手动修改版本号的情况下一直体验最新版本。想到类似的需求还有固定在某个大版本的最新版,避免 breaking changes 目前的标签只有每个版本自己的版本号,以及 latest 指向最新正式版,并不能满足上述需求,因此建议引入: - `x`:指向 `x.y.z` 的最新正式版 - `x.y`:指向 `x.y.z` 的最新正式版 - `edge`/`nightly`:指向最新的 beta **或**正式版 - `beta`:指向最新的 beta 版(也许没有必要,因为可能落后于正式版) 要改的应该只有两个 .yml...

enhancement

Currently, metaArray ECC check is valid 2 cycles after request: https://github.com/OpenXiangShan/XiangShan/blob/49162c9ab67070931573c1d4a372e2c858a72716/src/main/scala/xiangshan/frontend/icache/ICache.scala#L262 However, prefetchPipe s1 handshakes with both WayLookup and prefetchPipe s2 assuming that all signals of the metaArray.io.readResp are valid...

Do not bypass `m_enqWay` state to make sure that s1_waymasks (and maybe other registers) is updated, whether is softPrefetch or not.

Eliminates critical path: ***itlb*** -> s1_req_paddr -> **pmp** -> *s2_pmpExcp* However, this might introduce another critical path: *s2_req_paddr* -> **pmp** -> s2_pmpExcp -> toMSHRArbiter.io.in(i).valid -> toMSHRArbiter.io.out.bits.blkPaddr -> **mshr.io.lookUps(1).hit** -> prefetchDemux.io.in.valid...

timing

Cut critical path prefetchPipe s2 -> toMSHRArbiter.valid(i) -> toMSHR.paddr -> missUnit hit -> missUnit.req.ready -> prefetchPipe toMSHRArbiter.ready ***-> s2_finish ->*** s2_ready -> s1_ready -> toFtq.ready for timing. This can be...

do not merge

Cut critical path `io.flush -> mainPipe/prefetchPipe s2_miss -> s2_ready -> ftq ready` for timing. Now missUnit will still send response to mainPipe/prefetchPipe/wayLookup when `io.flush` or `io.fencei` is `true.B`, but unnecessary...

do not merge
timing

- enable bypass: better performance due to reduced redirect latency - disable bypass: better timing due to no critical path of metaArray -> dataArray Disable WayLookup bypass by default. Performance...