您当前的位置: 首页 >  9527华安

Xilinx官方AXI4_LITE_slave源码解析,little white的自我认知

9527华安 发布时间:2021-11-10 13:17:56 ,浏览量:4

Xilinx官方AXI4_LITE源码解析,little white的自我认知
AXI4_LITE是一个简单协议,用来配置一些寄存器,官方给出了源码,获取方式如下:





总线包括Master和Slave两种模式,这里选择Slave模式

这里选择Verify Peripheral IP using AXI4 VIP 可以对AXI4-Lite快速验证


单击Finish 后展开VIVADO自动产生的demo,单击Block Design的工程,可以看到如下2个IP。其中saxi_lite_0就是我们自定义的IP,另外一个master_0是用来读写我们自定义的saxi_lite_0,以此验证我们的IP正确性。


继续站看代码看看里面有什么东西

右击Generate Output Products


源码的存储路径
下面重头戏来了,分析源码,只分析重点部分;


记住这个参数,后面有用的


我们可以结合仿真波形加以验证

时刻0:地址1和数据1被同时写入地址总线和数据总线;
时刻1:地址4和数据8被同时写入地址总线和数据总线;
时刻2:地址8和数据3被同时写入地址总线和数据总线;
时刻4:地址12和数据4被同时写入地址总线和数据总线;
这里解释一下:为何写完一次数据后,地址要加4呢?(0–>4–>8–>12)
这是因为,数据总线是32位的,也就是说每个寄存器也是32位的,也就是4个字节,那么,一个寄存器就占了4个字节的地址,如果首地址是0,那么:
slv_reg0的首地址就是0;
slv_reg1的首地址就是4–>(0+4);
slv_reg2的首地址就是8–>(0+4+4);
slv_reg3的首地址就是12–>(0+4+4+4);
这点很重要,因为后面关键代码的理解需要这里。。。




最后,整个工程我已经打包好了,可以直接仿真,想要的兄弟可以私

关注
打赏
查看更多评论

9527华安

暂无认证

  • 4浏览

    0关注

    13博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录