笔者在参与一项PCIe+XDMA的芯片外围电路设计工作。在设计的过程中,用到了大量的数据帧传输,并且每一帧都是64bit,而且需要使用AXI总线+BRAM进行数据交互。在此之前,负责这项工作的师兄均使用32bit位宽的BRAM分两次传输,这令我非常不解。最近笔者正在整理这项工程的架构,所以本次打算直接推到以前的全部code,直接堆一个64bit的BRAM。
1. Vivado IP核:AXI BRAM Controller
官方手册:AXI Block RAM (BRAM) Controller v4.1 Product Guide(PG078)
我们可以知道,这是一个AXI接口转BRAM接口的转接器,支持32bit、64bit、128bit等等。