FPGA-RAM核的使用(详细)

我们学习了ROM,接下来我们一起来学习另一个IP核的使用—片内存储器RAM。

首先,还是新建一个工程

FPGA-RAM核的使用(详细)_第1张图片

然后建立起顶层文件

FPGA-RAM核的使用(详细)_第2张图片

接下来我们需要调出RAM,点击TOOLS->

FPGA-RAM核的使用(详细)_第3张图片

点击NEXT

FPGA-RAM核的使用(详细)_第4张图片

在Memory Compiler中选择一个单口RAM,设置文件名称为my_ram

FPGA-RAM核的使用(详细)_第5张图片

点击NEXT

FPGA-RAM核的使用(详细)_第6张图片

设置存储空间为1024*8

FPGA-RAM核的使用(详细)_第7张图片

点击NEXT

FPGA-RAM核的使用(详细)_第8张图片

取消掉输出端的寄存器

FPGA-RAM核的使用(详细)_第9张图片

点击NEXT

FPGA-RAM核的使用(详细)_第10张图片

点击NEXT

FPGA-RAM核的使用(详细)_第11张图片

点击NEXT

FPGA-RAM核的使用(详细)_第12张图片

点击NEXT

FPGA-RAM核的使用(详细)_第13张图片

点击Finish,配置结束。由于RAM是可读写的存储器,所以我们可以建立一个RAM控制器,先把数据写入到RAM,然后再读出来,仿真验证读写是否正确,控制器具体代码如下:

FPGA-RAM核的使用(详细)_第14张图片

接下里我们需要通过顶层文件,将两个模块实例化,代码如下

FPGA-RAM核的使用(详细)_第15张图片

编译整个工程

没有发现问题,接下来我们可以编写测试代码,查看仿真波形是否正确,测试代码如下:

FPGA-RAM核的使用(详细)_第16张图片

点击查看写入数据的波形

FPGA-RAM核的使用(详细)_第17张图片

点击查看读出数据的波形

FPGA-RAM核的使用(详细)_第18张图片

 

有上图可以发现写入到RAM中的数据和从RAM中读出的数据完全一致,说明RAM控制正确

 

你可能感兴趣的:(FPGA专栏)