- 博客(4)
- 收藏
- 关注
原创 RISCV Debug Module--通过JTAG访问DM寄存器
笔者认为,最常用的IR是位于0x11的Debug Module Interface Access(dmi)寄存器,dmi即Debug总线,几乎所有的Debug操作都需要访问dmi寄存器,比如访问RISCV通用寄存器、CSR、内存等操作。dmi[1:0]代表操作类型,1为读,2为写,dmi[33:2]代表读写数据,dmi[abits+33:34]代表地址,一般abits是7。此时你会想,给JTAG打的数据是0101这样的格式,岂不是很难理解,毕竟它不像AMBA这样的总线协议,有addr、data这样的信号。
2024-09-08 19:53:59 829
原创 RISCV Debug Module功能解读
比如数据(debug opertion)是从芯片外部的Debug Host经过Debug Transport流向RISCV芯片的,芯片暴露给外部的接口是JTAG(也可以是cJTAG或APB),而Debug Module可以理解为一个中转站,用来把JTAG过来的低级的信号转换成高级的debug操作,如读写寄存器,访问内存,设置断点等,最终的目的是访问&控制RISCV Core。最近做的项目里有RISCV相关的IP,笔者主要负责Debug Module相关的验证工作。
2024-08-14 23:19:52 233
原创 对初级验证工程师很有用的小tips
这次经历可以说是刻骨铭心,因为我突然惊醒,我竟然没有一次完全独立解决问题的经历,一次都没有,或多或少都要请教一下别人,而debug能力,是验证工程师最基本最核心的能力啊。从那以后,我开始尝试独立解决问题,从遇到的第一个验证环境bug着手,我要死磕到底,谁都不问,寻找一切可以寻找的线索,log,波形,review test sequence,利用一切可以利用的方法,对比,控制变量,假设,推演,搜索一切可以搜索的开放资料,goggle,技术论坛,内部培训资料。而且我发现,提问的过程也是解答的过程。
2024-01-02 22:05:09 341
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人