十二 · 2022年07月01日

三分钟教会你SpinalHDL仿真中的后门读写

✎ 编 者 按 

   UVM里面有前门访问,后门访问的概念。前门访问无非通过总线来实现寄存器/Mem的访问。而当在一些仿真中为了减少通过总线进行配置下发所需的时间,那么后门访问就非常便捷了,它使得无需通过总线即可修改寄存器/Mem的值。今天,就来看看在SpinalHDL的仿真中我们可以使用的后门读写操作。

》simPublic

   在SpinalHDL里,当我们想要访问设计内部的信号时,我们可以通过将电路对象添加simPublic属性,从而达到我们想要的目的。正如下面的例子:

![图片]image.png

   如果我们想要实现后门读写,那么电路对象simPubic属性是必须添加的。初次之外,SpinalHDL里面也自带了一些后门读写的方法,足够满足我们的后门读写访问需求。    

》后门读写API

   无论是对寄存器还是Memory,后门读写SpinalHDL均可以通过下面的API来进行:

image.png

    这里面前两者专门针对Mem类型实现Memory存储器的读写,而后者则针对寄存器等的写操作,读操作可以完全参照上面的simPubic即可。

》Example

    我们以下面的代码做为example:

image.png
image.png

    仿真Log打印:

[Progress] Start MemoryTest test simulation with seed 350149846
address=0   data=1
address=1   data=180
address=2   data=49
address=3   data=128
[Done] Simulation done in 15.481 ms

   波形如下:

image.png

   完全如其所愿。

☆ END ☆

作者:玉骐
原文链接:Spinal FPGA
微信公众号:
 title=

推荐阅读

更多SpinalHDL技术干货请关注[Spinal FPGA]欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。
推荐阅读
关注数
1581
内容数
133
用SpinalHDL提升生产力
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息