0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

FPGA實現(xiàn)基于Vivado的BRAM IP核的使用

電子設計 ? 來源:CSDN博主 ? 作者:XXQ121 ? 2020-12-29 15:59 ? 次閱讀

Xilinx公司的FPGA中有著很多的有用且對整個工程很有益處的IP核,比如數(shù)學類的IP核,數(shù)字信號處理使用的IP核,以及存儲類的IP核,本篇文章主要介紹BRAM IP核的使用。

BRAM是FPGA定制的RAM資源,有著較大的存儲空間,且在日常的工程中使用較為頻繁。BRAM以陣列的方式排布于FPGA的內(nèi)部,是FPGA實現(xiàn)各種存儲功能的主要部分,是真正的雙讀/寫端口的同步的RAM。

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

首先在Vivado界面的右側選擇IP Catalog 選項。

然后就可以在IP 目錄中,選擇想要的IP核,此處在搜索框輸入BRAM,選擇我們要使用的BRAM IP核。

o4YBAF9uJquAbH4EAABxhnEhJiU920.png

即最下方的Block Memory Generator,顧名思義,塊狀RAM。

我們常用的是單口BRAM,單口寫,單口讀??膳渲肕emory Type 為Simple Dual Port RAM。如下圖所示:

pIYBAF9uJqyAE19KAACwuQaXH2A606.png

其中Component Name 可以自定義自己所需要的模塊名稱。類型定義完成后,可以看到左側顯示的模塊端口,端口的使用后面再細說。

設置完成后,開始設置端口的位寬以及深度,選擇Port A Options選項,可以看到下面的界面。

pIYBAF9uJq6AC4zFAACI-tZzmR0122.png

Port A Width即位寬,也就是你存儲數(shù)據(jù)的有多少位,Port A Depth即深度,也就是你要存多少個數(shù)據(jù)。端口A設置好后,還需要點擊Port B Options,點擊完進入Port B Options選項后,系統(tǒng)會幫你自動設置好端口B的寬度和深度,因為B肯定是和A一樣的。

o4YBAF9uJq-AfEooAABNWARNqns092.png

可以看到端口B也設置完成,同時在Port B Optional Output Registers有一個Primitives OutputRegisters選項。如果這個選項不勾上,那么正常的情況下,當?shù)谝粋€時鐘時候,送來地址,那么數(shù)據(jù)會在第二個時鐘取好送出RAM。但是當勾上這個選項后,那么數(shù)據(jù)就會延遲兩個時鐘,在第三個時鐘送出。這是取數(shù)據(jù)情況下的時序。當存數(shù)據(jù)時候,那么只需要地址和數(shù)據(jù)在同一個時鐘下即可。

當我們在一般使用RAM時候,如果需要事先存到RAM里的數(shù)據(jù)量不大,我們可以在Testbench里面寫一下即可。但是如果數(shù)據(jù)量較大時,那么我們可以使用.coe文件事先將數(shù)據(jù)導入到RAM 之中,如下圖所示。

o4YBAF9uJrCAG-mOAABFG_zddM4064.png

在Other Options選項中,有一個Load Init File選項,即加載初始化文件,在這里勾上后,即可加載已存儲好數(shù)據(jù)的.coe文件。關于.coe文件的制作,網(wǎng)上有很多教程,在此不再贅述。然后點擊下方OK,然后再點擊彈出來的窗口的Generate即可生成BRAM 的IP核。

至此,常用情況下的BRAM的配置選項以及設置介紹完成。
編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1644

    文章

    21993

    瀏覽量

    615513
  • Xilinx
    +關注

    關注

    73

    文章

    2184

    瀏覽量

    124612
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    vivadoip的工程封裝

    請教一下,vivado怎么把帶ip的工程進行封裝,保證代碼不可見,可以通過端口調(diào)用。我嘗試了以下方法,ippackage,如果要在另一個程序里調(diào)用,也要提供源代碼;另一個方法是將網(wǎng)表文件edf文件與端口聲明結合,這種方法只能
    發(fā)表于 07-14 09:18

    怎么在Vivado HLS中生成IP?

    是對的,請糾正我,但我認為這一步只需按一個按鈕)3 - 將IP內(nèi)核導入Vivado并: a-生成塊設計(這是我最不舒服的步驟,我會很高興獲得一些好的建議,因為算法很復雜且IP不是基本
    發(fā)表于 03-24 08:37

    BRAM IP包括哪幾種類型?怎么使用?

    BRAM IP包括哪幾種類型?Vivado中xilinx_BRAM IP
    發(fā)表于 03-08 07:11

    Vivado生成IP

    vivado生成ip后缺少一大片文件,之前是可以用的,中途卸載過Modelsim,用vivado打開過ISE工程,因為工程中很多IP
    發(fā)表于 04-24 23:42

    基于Xilinx_FPGA_IP的FFT算法的設計與實現(xiàn)

    利用FPGAIP設計和實現(xiàn)FFT算法
    發(fā)表于 05-24 14:14 ?37次下載

    Vivado中用HDL定義BRAM存儲器并用updatemem合成bit文件

    最近被這么一個工作折騰了好幾天:一個非IPI的Vivado工程(需要全部Verilog手寫),在Artix-7 FPGA實現(xiàn)了一個ARM Cortex-M0 DesignStart軟
    發(fā)表于 02-08 05:40 ?5123次閱讀
    <b class='flag-5'>Vivado</b>中用HDL定義<b class='flag-5'>BRAM</b>存儲器并用updatemem合成bit文件

    了解VivadoIP的原理與應用

    IPIP Core) Vivado中有很多IP核可以直接使用,例如數(shù)學運算(乘法器、除法器、浮點運算器等)、信號處理(FFT、DFT、D
    發(fā)表于 11-15 11:19 ?9501次閱讀

    vivado調(diào)用IP詳細介紹

    大家好,又到了每日學習的時間了,今天咱們來聊一聊vivado 調(diào)用IP。 首先咱們來了解一下vivadoIP
    的頭像 發(fā)表于 05-28 11:42 ?3.8w次閱讀

    Vivado中xilinx_BRAM IP使用

    Vivado2017.2 中BRAM版本為 Block Memory Generator Specific Features 8.3。BRAM IP
    發(fā)表于 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的調(diào)用

    今天介紹的是vivado的三種常用IP:時鐘倍頻(Clocking Wizard),實時仿真(ILA),ROM調(diào)用(Block Memory)。
    發(fā)表于 02-02 10:14 ?4273次閱讀

    VCS獨立仿真Vivado IP的問題補充

    在仿真Vivado IP時分兩種情況,分為未使用SECURE IP和使用了SECURE IP
    的頭像 發(fā)表于 06-06 14:45 ?2223次閱讀
    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。
    的頭像 發(fā)表于 08-07 15:36 ?5602次閱讀
    如何在<b class='flag-5'>Vivado</b>中配置FIFO <b class='flag-5'>IP</b><b class='flag-5'>核</b>

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

    FPGA開發(fā)中使用頻率非常高的兩個IP就是FIFO和BRAM,上一篇文章中已經(jīng)詳細介紹了Vivado FIFO IP,今天我們來聊一聊
    的頭像 發(fā)表于 08-29 16:41 ?8312次閱讀
    <b class='flag-5'>Vivado</b>中<b class='flag-5'>BRAM</b> <b class='flag-5'>IP</b>的配置方式和使用技巧

    Vivado IPShared Logic選項配置

    在給Vivado中的一些IP進行配置的時候,發(fā)現(xiàn)有Shared Logic這一項,這里以Tri Mode Ethernet MAC IP
    的頭像 發(fā)表于 09-06 17:05 ?2288次閱讀
    <b class='flag-5'>Vivado</b> <b class='flag-5'>IP</b><b class='flag-5'>核</b>Shared Logic選項配置

    FPGA實現(xiàn)基于VivadoBRAM IP的使用

    Xilinx公司的FPGA中有著很多的有用且對整個工程很有益處的IP,比如數(shù)學類的IP,數(shù)字信號處理使用的
    的頭像 發(fā)表于 12-05 15:05 ?2345次閱讀

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品