说明:
1、本代码为原创设计,仅供学习使用。
2、从这篇开始,这个专栏将正式进入到RTL设计阶段。
3、这篇文章过后还会有 AXI-lite,Xilinx AXI主机等代码的分析,供大家学习参考。
一、功能说明
该设计为一个AXI4接口的双口SRAM,支持读写最大outstanding数为30。
数据位宽为32bit,RAM深度为256。(可按需修改)
支持burst方式为INCR
burst长度支持1~16
读写设计分离,不会产生访问阻塞。
二、测试结果

如上图所示,tb中先后向AXIRAM中写入了16笔outstanding,burst长度按顺序为1~16。数据均为random随机数。
随后,发出16笔读outstanding,将写入的数据读出。
以下是自动比对数据正确性的仿真log。

三、设计讲解

以AXI写为例,AXI2RAM的设计,分别围绕着各个通道的fifo来进行逻辑设计,以支持outstanding。
首先,激励发出写outstanding,握手
本文提供了一个原创的AXI4接口双口SRAM设计,支持最大30笔outstanding读写,数据位宽32bit,深度256。设计包括AXI2DPRAM、双口RAM和同步FIFO,支持INCR burst方式及1~16的burst长度。通过仿真测试验证了设计的正确性,并提供了自动数据比对的仿真代码。
订阅专栏 解锁全文
4210

被折叠的 条评论
为什么被折叠?



