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

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

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

xilinx core generator里面的block ram介紹

FPGA設(shè)計(jì)論壇 ? 來源:CSDN技術(shù)社區(qū) ? 作者:Snail_Walker ? 2022-06-20 17:21 ? 次閱讀

CORE Generator里有很多的IP核,適合用于各方面的設(shè)計(jì)。一般來說,它包括了:基本模塊,通信網(wǎng)絡(luò)模塊,數(shù)字信號(hào)處理模塊,數(shù)字功能設(shè)計(jì)模塊,存儲(chǔ)器模塊,微處理器,控制器與外設(shè),標(biāo)準(zhǔn)與協(xié)議設(shè)計(jì)模塊,語音處理模塊,標(biāo)準(zhǔn)總線模塊,視頻與圖像處理模塊等。

在Xilinx的IP核里有xilinx core generator 里面的memory interface generator 和block ram,使用這兩個(gè)可以使用FPGA內(nèi)部和外部的RAM。memory interface generator 是 ddr2/ddr3/qdr2 這些外部存儲(chǔ)器的接口,block ram 是 fpga 芯片內(nèi)部片上的存儲(chǔ)器。接下來介紹一下block ram。

block ram有三種:?jiǎn)慰赗Am、簡(jiǎn)化雙口RAM和真雙口RAM。

單口:

46f9a1f8-f078-11ec-ba43-dac502259ad0.png

簡(jiǎn)化雙口,A寫入,B讀出:

4719ae4e-f078-11ec-ba43-dac502259ad0.png

真雙口,A和B都可以讀寫:

47323da6-f078-11ec-ba43-dac502259ad0.png

使用IP核,確定數(shù)據(jù)位寬和深度:(超出地址范圍將返回?zé)o效數(shù)據(jù),在對(duì)超出地址范圍的數(shù)據(jù)進(jìn)行操作的時(shí)候,不能夠set或者reset)。這里我選擇的是16位的位寬,128的深度。

474d7102-f078-11ec-ba43-dac502259ad0.png

設(shè)置操作模式:(寫優(yōu)先,讀優(yōu)先,不改變)

476ef4a8-f078-11ec-ba43-dac502259ad0.png

這里的寫優(yōu)先的意思就是你寫入的數(shù)據(jù),會(huì)出現(xiàn)在輸出端口,不管你給的地址是什么。這種好處就是保證了你讀出的數(shù)據(jù)是最新的。

478697d4-f078-11ec-ba43-dac502259ad0.png

讀優(yōu)先指的就是:不管你寫入的數(shù)據(jù),是先把你要讀的數(shù)據(jù)讀出。

47a3ac84-f078-11ec-ba43-dac502259ad0.png

不改變模式就是正常的模式,該讀的時(shí)候讀,改寫的時(shí)候?qū)懀海ㄒ话銢]有特殊要求就是選這個(gè))

47bea49e-f078-11ec-ba43-dac502259ad0.png

接著寫coe文件,打開txt,輸入:

MEMORY_INITIALIZATION_RADIX=10;

MEMORY_INITIALIZATION_VECTOR=

512,515,518,522,525,528,531,535,538,54,......12,23;

保存之后為coe格式。

這個(gè)如果很少就自己輸入,如果比較大,比如一幅圖片,那就使用matlab吧!

舉個(gè)例子,你要生成ROM

% 生成 ROM 的 .coe文件

clc clear all close all x = linspace(0, pi/2 ,1024); % 在區(qū)間[0,2pi]之間等間隔地取1024個(gè)點(diǎn) y_cos = cos(x); y_sin = sin(x); y_cos = y_cos * 2^16; y_sin = y_sin * 2^16; fid = fopen('D:/cos_coe.txt','wt'); fprintf(fid, ' .0f ' , y_cos); fclose(fid); fid = fopen('D:/sin_coe.txt','wt'); fprintf(fid, ' .0f ' , y_sin); fclose(fid);

比特寫功能(byte_write):

當(dāng)使用8bit一字節(jié)的時(shí)候沒有優(yōu)先級(jí),而存儲(chǔ)在寬度限定為8bit的倍數(shù)。當(dāng)使用9bit一字節(jié)的時(shí)候,每一個(gè)字節(jié)都包含一個(gè)優(yōu)先級(jí)位,存儲(chǔ)限定為9bit的倍數(shù)。9bit的一般不用于NO_CHANGE模式。對(duì)于雙口的RAM,只能是讀優(yōu)先或者寫優(yōu)先。

我們要設(shè)置為primitive原語的模式,還可以選擇增加復(fù)位等功能,但是復(fù)位不能異步,只能同步實(shí)現(xiàn)。

最后生成了IP核之后,點(diǎn)擊你的IP核的下方,然后可以看到你的instance,你就知道怎么用這個(gè)IP核了。另外對(duì)于IP核的使用,其實(shí)你看datasheet那就更好了。

47d44c40-f078-11ec-ba43-dac502259ad0.png

47ee42c6-f078-11ec-ba43-dac502259ad0.png

原文標(biāo)題:FPGA開發(fā)之RAM IP的使用

文章出處:【微信公眾號(hào):FPGA設(shè)計(jì)論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

    關(guān)注

    1620

    文章

    21510

    瀏覽量

    598904
  • Xilinx
    +關(guān)注

    關(guān)注

    70

    文章

    2137

    瀏覽量

    120386
  • generator
    +關(guān)注

    關(guān)注

    0

    文章

    56

    瀏覽量

    33045
  • Block
    +關(guān)注

    關(guān)注

    0

    文章

    26

    瀏覽量

    14635

原文標(biāo)題:FPGA開發(fā)之RAM IP的使用

文章出處:【微信號(hào):gh_9d70b445f494,微信公眾號(hào):FPGA設(shè)計(jì)論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Xilinx FPGA IP之Block Memory Generator功能概述

    Xilinx Block Memory Generator(BMG)是一個(gè)先進(jìn)的內(nèi)存構(gòu)造器,它使用Xilinx fpga中的嵌入式塊RAM
    的頭像 發(fā)表于 11-14 17:49 ?2004次閱讀
    <b class='flag-5'>Xilinx</b> FPGA IP之<b class='flag-5'>Block</b> Memory <b class='flag-5'>Generator</b>功能概述

    Xilinx FPGA IP之Block Memory Generator AXI接口說明

    之前的文章對(duì)Block Memory Generator的原生接口做了說明和仿真,本文對(duì)AXI接口進(jìn)行說明。
    的頭像 發(fā)表于 11-14 18:25 ?1433次閱讀
    <b class='flag-5'>Xilinx</b> FPGA IP之<b class='flag-5'>Block</b> Memory <b class='flag-5'>Generator</b> AXI接口說明

    XILINX Core Generator的官方教學(xué)PPT

    XILINX Core Generator的官方教學(xué)PPT
    發(fā)表于 08-15 18:44

    下載Xilinx IP Core

    除了在Xilinx官網(wǎng)上在哪里能下載到Xilinx IP Core 及l(fā)icense? 如FFTFIRCORDIC核等!
    發(fā)表于 06-20 23:51

    Xilinx FPGA入門連載48:FPGA片內(nèi)RAM實(shí)例之RAM配置

    `Xilinx FPGA入門連載48:FPGA片內(nèi)RAM實(shí)例之RAM配置特權(quán)同學(xué),版權(quán)所有配套例程和更多資料下載鏈接:http://pan.baidu.com/s/1jGjAhEm 1新建源文件打開
    發(fā)表于 01-22 13:39

    Spartan 3E XC3S250E中的100Kbit RAM模塊使用問題

    ; RAMB16_S18),該語言模板支持1Kx16。我如何使這7個(gè)塊表現(xiàn)得像一個(gè)RAM Block.are有任何基元用于自定義RAM塊的長(zhǎng)度和深度。我也嘗試過使用Core發(fā)生器,但它
    發(fā)表于 02-27 09:16

    Xilinx Block RAM能否在一個(gè)時(shí)鐘周期內(nèi)始終如一地返回?cái)?shù)據(jù)?

    我在Xilinx Spartan-3E(XC3S500E)上使用Verilog創(chuàng)建了一個(gè)使用多個(gè)雙端口Block RAM的設(shè)計(jì),所有這些都通過Verilog原語實(shí)例化,例如
    發(fā)表于 04-24 07:35

    請(qǐng)幫助我解決Block RAM問題?

    ,維克多Rdp_fifo3.v 3 KB以上來自于谷歌翻譯以下為原文I am trying to use the block ram on Xilinx Spartan 3AN (XC3S400AN
    發(fā)表于 06-04 09:08

    創(chuàng)建Block RAM IP不起作用

    DCM_SP為spartan 3E創(chuàng)建50Mhz DCM時(shí)鐘的IP,并且它可以工作。我不確定為什么當(dāng)我嘗試創(chuàng)建Block RAM IP時(shí)它不起作用。我真的很感激一些幫助。歡迎來到Xilinx
    發(fā)表于 06-05 13:39

    請(qǐng)問9K Block RAM設(shè)計(jì)中那些2 9K Block RAM在哪里?

    嗨,我想為我的設(shè)計(jì)使用比特流加密,我遇到了一個(gè)關(guān)于9K Block RAM的問題,在答案記錄39999中描述了r然后我決定在我的設(shè)計(jì)中刪除所有9k Block RAM并將它們更改為16
    發(fā)表于 06-06 07:23

    為什么為spartan6生成fifo ip_core時(shí)會(huì)出現(xiàn)警告?

    :/。Xilinx / prova_di_block_maker / ipcore_dir / tmp / _cg / provaIP / doc / fifo_generator
    發(fā)表于 11-11 16:28

    XILINX BMG介紹

      1、BRAM 簡(jiǎn)介  2、Block Memory Generator Feature  2.1 Type  2.1.0、Signals Descriptions  2.1.1
    發(fā)表于 02-25 06:16

    xilinx 7系列FPGA里面的Block RAM

    RAM。 今天咱們就聊一聊7系列FPGA里面的Block RAM。 在7系列FPGA里面,每個(gè)Bloc
    的頭像 發(fā)表于 11-23 14:08 ?7802次閱讀
    <b class='flag-5'>xilinx</b> 7系列FPGA<b class='flag-5'>里面的</b><b class='flag-5'>Block</b> <b class='flag-5'>RAM</b>

    關(guān)于Block RAM的寄存器輸出

    關(guān)于Block RAM的寄存器輸出,我們?cè)凇锻ㄟ^RTL改善時(shí)序的技巧之Block RAM的輸出》中介紹過。如果我們?cè)跁r(shí)序報(bào)告中關(guān)鍵路徑上看到
    的頭像 發(fā)表于 03-26 15:50 ?1723次閱讀
    關(guān)于<b class='flag-5'>Block</b> <b class='flag-5'>RAM</b>的寄存器輸出

    FPGA的RAM存儲(chǔ)資源詳細(xì)資料說明

    本文檔的主要內(nèi)容詳細(xì)介紹的是FPGA的RAM存儲(chǔ)資源詳細(xì)資料說明包括了:1、 FPGA存儲(chǔ)資源簡(jiǎn)介,2、 不同廠家的 Block RAM 布局,3、 塊
    發(fā)表于 12-09 15:31 ?10次下載
    FPGA的<b class='flag-5'>RAM</b>存儲(chǔ)資源詳細(xì)資料說明