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

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

3天内不再提示

FPGA实现基于Vivado的BRAM IP核的使用

电子设计 来源:CSDN博主 作者:XXQ121 2020-12-29 15:59 次阅读

Xilinx公司的FPGA中有着很多的有用且对整个工程很有益处的IP核,比如数学类的IP核,数字信号处理使用的IP核,以及存储类的IP核,本篇文章主要介绍BRAM IP核的使用。

BRAM是FPGA定制的RAM资源,有着较大的存储空间,且在日常的工程中使用较为频繁。BRAM以阵列的方式排布于FPGA的内部,是FPGA实现各种存储功能的主要部分,是真正的双读/写端口的同步的RAM。

本片文章是基于Vivado的 2017.1的版本,其他版本都大同小异。

首先在Vivado界面的右侧选择IP Catalog 选项。

然后就可以在IP 目录中,选择想要的IP核,此处在搜索框输入BRAM,选择我们要使用的BRAM IP核。

o4YBAF9uJquAbH4EAABxhnEhJiU920.png

即最下方的Block Memory Generator,顾名思义,块状RAM。

我们常用的是单口BRAM,单口写,单口读。可配置Memory Type 为Simple Dual Port RAM。如下图所示:

pIYBAF9uJqyAE19KAACwuQaXH2A606.png

其中Component Name 可以自定义自己所需要的模块名称。类型定义完成后,可以看到左侧显示的模块端口,端口的使用后面再细说。

设置完成后,开始设置端口的位宽以及深度,选择Port A Options选项,可以看到下面的界面。

pIYBAF9uJq6AC4zFAACI-tZzmR0122.png

Port A Width即位宽,也就是你存储数据的有多少位,Port A Depth即深度,也就是你要存多少个数据。端口A设置好后,还需要点击Port B Options,点击完进入Port B Options选项后,系统会帮你自动设置好端口B的宽度和深度,因为B肯定是和A一样的。

o4YBAF9uJq-AfEooAABNWARNqns092.png

可以看到端口B也设置完成,同时在Port B Optional Output Registers有一个Primitives OutputRegisters选项。如果这个选项不勾上,那么正常的情况下,当第一个时钟时候,送来地址,那么数据会在第二个时钟取好送出RAM。但是当勾上这个选项后,那么数据就会延迟两个时钟,在第三个时钟送出。这是取数据情况下的时序。当存数据时候,那么只需要地址和数据在同一个时钟下即可。

当我们在一般使用RAM时候,如果需要事先存到RAM里的数据量不大,我们可以在Testbench里面写一下即可。但是如果数据量较大时,那么我们可以使用.coe文件事先将数据导入到RAM 之中,如下图所示。

o4YBAF9uJrCAG-mOAABFG_zddM4064.png

在Other Options选项中,有一个Load Init File选项,即加载初始化文件,在这里勾上后,即可加载已存储好数据的.coe文件。关于.coe文件的制作,网上有很多教程,在此不再赘述。然后点击下方OK,然后再点击弹出来的窗口的Generate即可生成BRAM 的IP核。

至此,常用情况下的BRAM的配置选项以及设置介绍完成。
编辑:hfy

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

    关注

    1643

    文章

    21933

    浏览量

    613017
  • Xilinx
    +关注

    关注

    73

    文章

    2181

    浏览量

    124098
收藏 人收藏

    评论

    相关推荐
    热点推荐

    vivadoip的工程封装

    请教一下,vivado怎么把带ip的工程进行封装,保证代码不可见,可以通过端口调用。我尝试了以下方法,ippackage,如果要在另一个程序里调用,也要提供源代码;另一个方法是将网表文件edf文件与端口声明结合,这种方法只能
    发表于 07-14 09:18

    怎么在Vivado HLS中生成IP

    是对的,请纠正我,但我认为这一步只需按一个按钮)3 - 将IP内核导入Vivado并: a-生成块设计(这是我最不舒服的步骤,我会很高兴获得一些好的建议,因为算法很复杂且IP不是基本
    发表于 03-24 08:37

    BRAM IP包括哪几种类型?怎么使用?

    BRAM IP包括哪几种类型?Vivado中xilinx_BRAM IP
    发表于 03-08 07:11

    Vivado生成IP

    vivado生成ip后缺少一大片文件,之前是可以用的,中途卸载过Modelsim,用vivado打开过ISE工程,因为工程中很多IP
    发表于 04-24 23:42

    基于Xilinx_FPGA_IP的FFT算法的设计与实现

    利用FPGAIP设计和实现FFT算法
    发表于 05-24 14:14 37次下载

    Xilinx Vivado的使用详细介绍(3):使用IP

    IPIP Core) Vivado中有很多IP核可以直接使用,例如数学运算(乘法器、除法器、浮点运算器等)、信号处理(FFT、DFT、D
    发表于 02-08 13:08 2690次阅读
    Xilinx <b class='flag-5'>Vivado</b>的使用详细介绍(3):使用<b class='flag-5'>IP</b><b class='flag-5'>核</b>

    了解VivadoIP的原理与应用

    IPIP Core) Vivado中有很多IP核可以直接使用,例如数学运算(乘法器、除法器、浮点运算器等)、信号处理(FFT、DFT、D
    发表于 11-15 11:19 9417次阅读

    vivado调用IP详细介绍

    大家好,又到了每日学习的时间了,今天咱们来聊一聊vivado 调用IP。 首先咱们来了解一下vivadoIP
    的头像 发表于 05-28 11:42 3.8w次阅读

    Vivado中xilinx_BRAM IP使用

    Vivado2017.2 中BRAM版本为 Block Memory Generator Specific Features 8.3。BRAM IP
    发表于 03-10 06:15 19次下载
    <b class='flag-5'>Vivado</b>中xilinx_<b class='flag-5'>BRAM</b> <b class='flag-5'>IP</b><b class='flag-5'>核</b>使用

    FPGA应用之vivado三种常用IP的调用

    今天介绍的是vivado的三种常用IP:时钟倍频(Clocking Wizard),实时仿真(ILA),ROM调用(Block Memory)。
    发表于 02-02 10:14 4114次阅读

    VCS独立仿真Vivado IP的问题补充

    在仿真Vivado IP时分两种情况,分为未使用SECURE IP和使用了SECURE IP
    的头像 发表于 06-06 14:45 2111次阅读
    VCS独立仿真<b class='flag-5'>Vivado</b> <b class='flag-5'>IP</b><b class='flag-5'>核</b>的问题补充

    如何在Vivado中配置FIFO IP

    Vivado IP提供了强大的FIFO生成器,可以通过图形化配置快速生成FIFO IP
    的头像 发表于 08-07 15:36 5323次阅读
    如何在<b class='flag-5'>Vivado</b>中配置FIFO <b class='flag-5'>IP</b><b class='flag-5'>核</b>

    VivadoBRAM IP的配置方式和使用技巧

    FPGA开发中使用频率非常高的两个IP就是FIFO和BRAM,上一篇文章中已经详细介绍了Vivado FIFO IP,今天我们来聊一聊
    的头像 发表于 08-29 16:41 7833次阅读
    <b class='flag-5'>Vivado</b>中<b class='flag-5'>BRAM</b> <b class='flag-5'>IP</b>的配置方式和使用技巧

    Vivado IPShared Logic选项配置

    在给Vivado中的一些IP进行配置的时候,发现有Shared Logic这一项,这里以Tri Mode Ethernet MAC IP
    的头像 发表于 09-06 17:05 2136次阅读
    <b class='flag-5'>Vivado</b> <b class='flag-5'>IP</b><b class='flag-5'>核</b>Shared Logic选项配置

    FPGA实现基于VivadoBRAM IP的使用

    Xilinx公司的FPGA中有着很多的有用且对整个工程很有益处的IP,比如数学类的IP,数字信号处理使用的
    的头像 发表于 12-05 15:05 2179次阅读