chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

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

Vivado中BRAM IP的配置方式和使用技巧

CHANBAEK ? 來源:FPGA入門到精通 ? 作者:未可知摩爾 ? 2023-08-29 16:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

FPGA開發(fā)中使用頻率非常高的兩個IP就是FIFO和BRAM,上一篇文章中已經(jīng)詳細(xì)介紹了Vivado FIFO IP,今天我們來聊一聊BRAM IP。

本文將詳細(xì)介紹Vivado中BRAM IP的配置方式和使用技巧。

一、BRAM IP核的配置

1、打開BRAM IP核

在Vivado的IP Catalog中找到Block Memory Generator IP核,雙擊打開參數(shù)配置界面。

圖片

2、配置BRAM IP基本參數(shù)

圖片

(1)IP名

定制的IP的名字只能在定制時設(shè)定好,后續(xù)不能修改。

IP名設(shè)定,簡單易懂即可,按照功能或數(shù)據(jù)寬度和深度來設(shè)定即可,例如BRAM_8x256,即表示數(shù)據(jù)寬度為8bit,數(shù)據(jù)深度為256bit。

(2)接口類型(Interface Type)

Native:最基本的接口,包括數(shù)據(jù)寫入、數(shù)據(jù)讀取等信號。

AXI4:AXI4總線通信協(xié)議接口

(3)存儲類型(Memory Type)

Single Port RAM:單端口RAM

Simple Dual Port RAM:簡單雙端口RAM,可選同步時鐘和異步時鐘,A端口只支持寫數(shù)據(jù),B端口只支持讀數(shù)據(jù)。

True Dual Port RAM:真雙端口RAM,可選同步時鐘和異步時鐘,A端口和B端口都支持寫數(shù)據(jù)和讀數(shù)據(jù)。

Single Port ROM:單端口ROM

Dual Port ROM:雙端口ROM,A端口和B端口都可以讀取數(shù)據(jù)

3、配置A端口或B端口參數(shù)

A端口和B端口參數(shù)配置界面基本一致,這里只介紹A端口的參數(shù)配置。

圖片

(1)存儲大小設(shè)置(Memory Size)

設(shè)置讀數(shù)據(jù)或?qū)憯?shù)據(jù)端的數(shù)據(jù)位寬和深度,數(shù)據(jù)位寬范圍為1 ~ 4608bit,數(shù)存儲深度為2~1048576。

operating mode:讀寫同一個地址時,操作模式設(shè)定:寫優(yōu)先、讀優(yōu)先、不變,建議在實際應(yīng)用時不出現(xiàn)這種情況。

Enable Port Type:設(shè)定是否開放端口使能控制信號。

(2)輸出數(shù)據(jù)寄存設(shè)置

Primitives Output Register:輸出數(shù)據(jù)是否插入一個寄存器,如果不選中這個,則讀數(shù)據(jù)延時只有1個周期,否則讀數(shù)據(jù)延時有2個周期。

建議選中這個輸出寄存器,可以改善時序。

(3)復(fù)位參數(shù)設(shè)置

RSTA Pin (setreset pin):復(fù)位端口選擇,如果選中,則開放復(fù)位端口。

Output Reset Value (Hex):設(shè)定復(fù)位生效后,輸出數(shù)據(jù)值,默認(rèn)為0

4、Other Options

這部分初始化值,對于RAM來說可能用處不大,但對于ROM來說很重要。

圖片

選中這個Load Init File,再點擊“Browse”選中“coe或mif”格式文件,最后點擊“Edit”,在打開的界面選擇“Valide”校驗一下,如果有問題,這部分會提示紅色文字,否則繼續(xù)下一步即可。

5、IP設(shè)置參數(shù)總覽

IP設(shè)置參數(shù)總覽,可看到資源消耗、寬度、深度、讀延遲等信息。

圖片

6、點擊OK生成IP核。

在IP核生成完成后,點擊source窗口下的“IP source”,鼠標(biāo)左鍵單擊這個IP,在“Instantiation Template”下,雙擊“veo”后綴文件,即可看到例化模板。

圖片

二、BRAM IP核的接口

1、時鐘信號和復(fù)位信號

復(fù)位信號 rsta/rstb

時鐘 clka(A端口時鐘) clkb(b端口時鐘),復(fù)位信號 rsta(A端口復(fù)位),rstb(B端口復(fù)位)

2、端口信號

A和B端口信號基本一樣,這里以A端口為例。

ena A端口使能信號

wea A端口寫使能信號

addra A端口讀寫地址

dina A端口的寫入數(shù)據(jù)

douta A端口的讀取數(shù)據(jù)

三、BRAM IP核的調(diào)用

BRAM IP核的調(diào)用很簡單,這里以同步時鐘下的簡單雙端口RAM為例:

module top (
  input clk,
  input [7:0] data_in,
  input wr_en, 
  input [7:0] wr_addr,
  input [7:0] rd_addr,
  output [7:0] data_out  
);

    BRAM_8x256 u_BRAM_8x256 (
      .clka(clk),    // input wire clka
      .ena(1'b1),      // input wire ena
      .wea(wr_en),      // input wire [0 : 0] wea
      .addra(wr_addr),  // input wire [7 : 0] addra
      .dina(data_in),    // input wire [7 : 0] dina
      .clkb(clk),    // input wire clkb
      .enb(1'b1),      // input wire enb
      .addrb(rd_addr),  // input wire [7 : 0] addrb
      .doutb(data_out)  // output wire [7 : 0] doutb
    );

endmodule

下面是BRAM IP核的一個簡單的testbench:

module test;

reg clk;  
reg [7:0] din;
reg wen;
reg [7:0] waddr;
reg [7:0] raddr;
wire [7:0] dout;

top u_top(
  .clk(clk), 
  .data_in(din),
  .wr_en(wen),
  .wr_addr(waddr),
  .rd_addr(raddr),
  .data_out(dout)  
);

initial begin
  clk = 0;
  wen = 0; waddr = 0; raddr = 0;
  #10 wen = 1; waddr = 1; din = 5; 
  #10 wen = 1; waddr = 2; din = 6; 
  #10 wen = 1; waddr = 3; din = 7; 
  #10 wen = 1; waddr = 4; din = 8;
  #10 wen = 1; waddr = 5; din = 9;
  #10 wen = 0; raddr = 1;
  #10 wen = 0; raddr = 2;
  #10 wen = 0; raddr = 3;
  #10 wen = 0; raddr = 4;
  #10 wen = 0; raddr = 5;
  #30 $finish;
end

always #5 clk = ~clk;  

endmodule

仿真測試圖:

圖片

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

    關(guān)注

    1650

    文章

    22207

    瀏覽量

    626899
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5495

    瀏覽量

    127800
  • fifo
    +關(guān)注

    關(guān)注

    3

    文章

    402

    瀏覽量

    45288
  • IP核
    +關(guān)注

    關(guān)注

    4

    文章

    338

    瀏覽量

    51535
  • BRAM
    +關(guān)注

    關(guān)注

    0

    文章

    41

    瀏覽量

    11489
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    FPGA設(shè)計BRAM的知識科普

    FPGA設(shè)計BRAM是一項非常關(guān)鍵的內(nèi)置存儲資源,F(xiàn)PGA開發(fā)需要熟練使用BRAM,今天再復(fù)習(xí)一下BRAM的知識,包括BRAM的定義、組
    發(fā)表于 08-15 15:44 ?7621次閱讀
    FPGA設(shè)計<b class='flag-5'>中</b><b class='flag-5'>BRAM</b>的知識科普

    請問vivado如何減少BRAM瓦片這一數(shù)量?如何操作?

    嗨,我的設(shè)計在合成中使用141.5 BRAM瓦片。但是,在Zynq可以使用140 BRAM瓦片。實施后,這個數(shù)量下降到133瓦。我的問題是vivado如何減少這一數(shù)量?實施?這點可以
    發(fā)表于 10-31 16:17

    初始化BRAM警告coe文件不存在

    大家好,我搜索了幾個關(guān)于初始化BRAM的線程,但我找不到答案。我使用的是Vivado 2015.4。我寫了一個coe文件,想把coe文件加載到BRAM。首先,我添加一個
    發(fā)表于 04-17 09:47

    如何使用Vivado IP Block Design?

    對你所有的人來說,我已經(jīng)閱讀了有關(guān)IP Block Designs的手冊和培訓(xùn)材料,并成功地生成了AXI LITE BRAM IP設(shè)計,以及之前在USER社區(qū)為您提供的一些幫助。我所
    發(fā)表于 03-20 08:52

    vivadobram加載coe文件數(shù)據(jù)僅在實例化中生成datain

    vivadobram加載coe文件數(shù)據(jù)僅在instatntiation中生成datain,但沒有datain
    發(fā)表于 04-15 10:12

    URAM和BRAM的區(qū)別是什么

    地址,讀出的是該地址原有數(shù)據(jù);A端口寫而B端口讀同一地址,讀出的是新寫入的數(shù)據(jù)?!   嵗?b class='flag-5'>方式  對于 BRAM,可采用原語、XPM_MEMORY、RTL代碼或者IP Core的方式
    發(fā)表于 12-23 16:57

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

    BRAM IP核包括哪幾種類型?Vivadoxilinx_BRAM IP核怎么使用?
    發(fā)表于 03-08 07:11

    如何在Vivado Design Suite 中進(jìn)行IP加密

    此視頻概述了Vivado Design SuiteIP加密。 它涵蓋了IP加密工具流程,如何準(zhǔn)備加密IP以及如何在
    的頭像 發(fā)表于 11-20 06:34 ?7247次閱讀

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

    ? Xilinx公司的FPGA中有著很多的有用且對整個工程很有益處的IP核,比如數(shù)學(xué)類的IP核,數(shù)字信號處理使用的IP核,以及存儲類的IP核,本篇文章主要介紹
    的頭像 發(fā)表于 12-29 15:59 ?1.3w次閱讀

    Vivadoxilinx_BRAM IP核使用

    Vivado2017.2 BRAM版本為 Block Memory Generator Specific Features 8.3。BRAM I
    發(fā)表于 03-10 06:15 ?19次下載
    <b class='flag-5'>Vivado</b><b class='flag-5'>中</b>xilinx_<b class='flag-5'>BRAM</b> <b class='flag-5'>IP</b>核使用

    淺析VivadoIP核DDS使用方式及注意事項

    vivado提供了DDS IP核可以輸出正余弦波形,配置方法如下
    的頭像 發(fā)表于 04-27 15:52 ?1.2w次閱讀
    淺析<b class='flag-5'>Vivado</b>的<b class='flag-5'>IP</b>核DDS使用<b class='flag-5'>方式</b>及注意事項

    一文解析Vivado的三種封裝IP方式

    Vivado提供了三種封裝IP方式:(1)將當(dāng)前工程封裝為IP;(2)將當(dāng)前工程的BD(IPI 設(shè)計)封裝為
    的頭像 發(fā)表于 08-10 18:09 ?8722次閱讀
    一文解析<b class='flag-5'>Vivado</b>的三種封裝<b class='flag-5'>IP</b>的<b class='flag-5'>方式</b>

    如何在Vivado配置FIFO IP

    Vivado IP核提供了強(qiáng)大的FIFO生成器,可以通過圖形化配置快速生成FIFO IP核。
    的頭像 發(fā)表于 08-07 15:36 ?6733次閱讀
    如何在<b class='flag-5'>Vivado</b><b class='flag-5'>中</b><b class='flag-5'>配置</b>FIFO <b class='flag-5'>IP</b>核

    Vivado IP核Shared Logic選項配置

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

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

    Xilinx公司的FPGA中有著很多的有用且對整個工程很有益處的IP核,比如數(shù)學(xué)類的IP核,數(shù)字信號處理使用的IP核,以及存儲類的IP核,本篇文章主要介紹
    的頭像 發(fā)表于 12-05 15:05 ?2864次閱讀