在生成ROM时需要提供coe文件,如下图所示。这个coe文件本质上就是Memory的初始化文件,Xilinx对其有具体的格式要求。
coe文件格式
coe文件格式要求如下图所示,其中前两行是固定的。其中第一行定义了Radix,可以是2、10或16,意味着第2行定义的数据向量内容可以是二进制、十进制或十六进制。这里需要说明的是定义的数据向量各个数据之间可以是空格,也可以是逗号(但此时最后一个数据要以分号结尾)或者回车换行符。

生成coe文件
Matlab作为主流的算法开发与验证平台之一往往成为很多数据的重要来源,因此,在Matlab下生成coe文件是非常普遍的操作。这里要用到Matlab提供的一些文件操作函数,如fopen、fprintf和fclose等。在此,我们定义函数gen_coe,它接收两个参数fn和data。其中fn为生成的coe文件名,data为行或列向量。要求为十进制整数。


Python提供了扩展库Numpy,可以方便地实现对矩阵的操作,利用Python也可以快捷地生成coe文件。这里提供两个版本。两个函数都有相同的参数fn和data,含义与上文提到的Matlab函数保持一致。在gen_coe_v1中,通过write()完成了写数据操作。在gen_coe_v2中,则是通过np.savetxt完成了写数据操作。在这个案例中,np.savetxt接收3个参数,第一个参数为文件ID,第二个参数为矩阵的行索引,第三个参数为写入格式。


原文标题:如何生成ROM的coe文件
文章出处:【微信公众号:Lauren的FPGA】欢迎添加关注!文章转载请注明出处。
责任编辑:haq
-
FPGA
+关注
关注
1664文章
22503浏览量
639252 -
ROM
+关注
关注
4文章
579浏览量
89373 -
Memory
+关注
关注
1文章
80浏览量
30858
原文标题:如何生成ROM的coe文件
文章出处:【微信号:Lauren_FPGA,微信公众号:FPGA技术驿站】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
如何将Primus生成的波形文件导入MATLAB
求助,关于mcs文件生成的问题求解
使用NucleiStudio生成tb仿真需要的.verilog文件
win10环境下使用vivado生成.bit与.mcs文件
RISCV指令二进制编码利用matlab生成E203仿真可用文件
如何在Vivado上仿真蜂鸟SOC,仿真NucleiStudio编译好的程序
scons使用dist生成的工程缺少文件怎么解决?
使用env生成的keil文件好多文件找不到路径,为什么?
如何使用 PinConfigure 工具生成 GPIO 代码文件和 OrCAD/Protel IC 组件?
AICube生成部署文件失败的原因?怎么解决?
Simcenter FLOEFD BCI-ROM和Package Creator模块
Analog Devices / Maxim Integrated PD60-4H-1461-CoE单轴步进电机数据手册
如何生成ROM的coe文件?
评论