fpga ram初始化文件coe与mif

​ 在FPGA设计中ram是最常用的ip,一般工程中会用到多个ram,使用文件初始化ram,可以为调试带来很多便利,下面就分别介绍一下,使用coe初始化xilinx fpga ram和使用mif文件初始化intel fpga ram的方法。

xilinx coe

打开vivado,在ram ip配置中找到Other Options->Memory Iintialization

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jgluF7IH-1664190750131)(./pic/1.png)]

点击Edit,选择Yes

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5AFxiFYq-1664190750132)(./pic/2.png)]

创建好coe文件后,如下图所示

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VMOzDhpO-1664190750133)(./pic/3.png)]

其中memory_initialization_radix 16代表输入初始化数据为16进制,可以设置成10和2,分别代表10进制和2进制。

memory_initialization_vector 中填入要初始化的数据,图中输入8bit位宽的7个数据,根据fifo深度填写数据,如果fifo深度32,已经填入7个数,希望其他数据为0,可以做如下设置。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dZZfIizL-1664190750134)(./pic/4.png)]

填写完成后点击Validate验证数据正确性,通过验证后保存数据。

intel mif

打开quartus,在ram ip配置中找到Mem Init,将mif文件导入ip。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-srCmH5IW-1664190750134)(./pic/5.png)]

初始化mif文件方法,新建文件,选择Memory Initialization file。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rMQvCc6A-1664190750135)(./pic/6.png)]

选择数据个数与数据宽度,分别对应fifo深度,与数据宽度。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6vOMKm9j-1664190750136)(./pic/7.png)]

在文件中填入初始化数据,可以通过Address Radix和Memory Radix修改数据和地址进制。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nLKknHmC-1664190750136)(./pic/8.png)]


版权声明:本文为clj609原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。