0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何生成ROM的coe文件?

FPGA技术驿站 来源:Lauren的FPGA 作者:Lauren的FPGA 2021-02-11 11:43 次阅读

在生成ROM时需要提供coe文件,如下图所示。这个coe文件本质上就是Memory的初始化文件,Xilinx对其有具体的格式要求。

coe文件格式

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

5dc927f0-4fc0-11eb-8b86-12bb97331649.png

生成coe文件

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

5de55ea2-4fc0-11eb-8b86-12bb97331649.png

5e2e9ef0-4fc0-11eb-8b86-12bb97331649.png

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

5e761ece-4fc0-11eb-8b86-12bb97331649.png

5edacac2-4fc0-11eb-8b86-12bb97331649.png

原文标题:如何生成ROM的coe文件

文章出处:【微信公众号:Lauren的FPGA】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1626

    文章

    21671

    浏览量

    601894
  • ROM
    ROM
    +关注

    关注

    4

    文章

    562

    浏览量

    85676
  • Memory
    +关注

    关注

    1

    文章

    77

    浏览量

    29011

原文标题:如何生成ROM的coe文件

文章出处:【微信号:Lauren_FPGA,微信公众号:FPGA技术驿站】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何选择适合的ROM类型

    在现代电子设备和计算机系统中,ROM扮演着至关重要的角色。它用于存储固件、操作系统、启动代码以及其他重要的系统信息。随着技术的发展,ROM的种类和特性也在不断变化。 1. ROM的基本概念 R
    的头像 发表于 11-04 10:04 148次阅读

    固态ROM的工作原理

    在计算机和电子设备的发展历程中,存储技术扮演了至关重要的角色。其中,固态ROM作为一种可靠的非易失性存储解决方案,被广泛应用于各种设备中。 ROM的基本结构 ROM的基本结构由存储单元、地址解码器
    的头像 发表于 11-04 10:03 212次阅读

    请问PurePath里面带ROM和不带ROM的元件有什么区别呢?

    PurePath 里面的 带ROM 和不带ROM的元件有什么区别?比如说,音量有VOLUME_ZX 和 VOLUME_ZX_ROM, 我对比过生成的pps_driver.C
    发表于 10-28 07:21

    labview程序生成exe文件怎么还原

    在LabVIEW中,程序生成exe文件后,通常这个过程是不可逆的,即exe文件无法直接“还原”回原始的LabVIEW项目文件(.vi或.lvproj)。exe
    的头像 发表于 09-04 17:12 1051次阅读

    labview工程文件如何生成exe

    生成可执行文件(EXE)是LabVIEW程序开发过程中的一个重要步骤,它允许用户在没有安装LabVIEW的计算机上运行程序。以下是步骤和注意事项: 1. 准备工作 在开始生成EXE文件
    的头像 发表于 09-04 17:09 1298次阅读

    labview怎么生成可执行文件

    生成可执行文件(EXE)是LabVIEW程序开发中的一个重要步骤,它允许用户将LabVIEW项目打包成一个独立的应用程序,便于在没有安装LabVIEW的计算机上运行。 1. 准备工作 在开始生成
    的头像 发表于 09-04 17:07 772次阅读

    Efinity编译生成文件使用指导-v1

    接上篇: (6)查看Unassigned Core Pins。 在placement下面的palce.rpt文件中搜索 Unassigned C ore Pins就可以看到。它说明这些管脚没有用于内部连接。 大家可以点击这个链接查看上文 Efinity编译生成文件使用指导
    的头像 发表于 08-13 14:22 696次阅读
    Efinity编译<b class='flag-5'>生成文件</b>使用指导-v1

    Allegro生成光绘文件

    Allegro生成光绘文件
    发表于 05-06 10:37 1次下载

    利用ISE与Matlab创建并仿真FPGA设计中的ROM IP核

    一般都是先创建MIF文件,将图像中的像素信息用一个ROM储存起来,然后调用ROM里面的地址进行处理,相当于制作了一个ROM查找表。
    发表于 04-16 11:49 484次阅读
    利用ISE与Matlab创建并仿真FPGA设计中的<b class='flag-5'>ROM</b> IP核

    tasking是如何生成bin文件的?

    有没大神做过Tasking生成bin文件呢?
    发表于 02-19 07:39

    labview生成exe文件如何配置文件

    LabVIEW是一种用于实时测试、控制和数据采集的编程环境。在开发过程中,您可以使用LabVIEW软件生成可执行文件(.exe),以便在没有LabVIEW开发环境的计算机上运行您的应用程序。生成
    的头像 发表于 12-27 16:28 2064次阅读

    labview的opc生成配置文件

    的数据交互和通信。在 LabVIEW 中生成 OPC 配置文件有助于实现与其他设备的数据传输和共享,本文将详细介绍如何生成 OPC 配置文件。 首先,在 LabVIEW 中
    的头像 发表于 12-26 17:57 1737次阅读

    keil如何生成bin文件

    Keil是一种集成开发环境(IDE),专为ARM架构的嵌入式系统开发而设计。在Keil中生成bin文件是将代码编译并转换为可执行文件的过程。本文将详细介绍Keil生成bin
    的头像 发表于 12-15 13:43 1.2w次阅读

    ADgerber文件怎么生成PCB

    生成ADGerber文件是将电路板设计转化为可供PCB加工厂制造的图像文件的过程。下面详细介绍关于如何生成ADGerber文件。 ADGer
    的头像 发表于 12-07 17:19 3367次阅读

    能够生成java文档注释的命令

    文档的包名和源代码文件名,@files表示指定一个文本文件,它会列出其他要包含在生成的文档中的包名和源代码文件名。 下面是一些常用的选项: -d directory :指定
    的头像 发表于 11-29 14:12 811次阅读