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

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

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

探究一種避免綜合與實現(xiàn)直接修改BRAM初始化值的方法

FPGA技術(shù)江湖 ? 來源:網(wǎng)絡(luò)交換FPGA ? 2023-02-02 14:03 ? 次閱讀

1、引言

交換機(jī)設(shè)計為例。在交換機(jī)設(shè)計前期,轉(zhuǎn)發(fā)表項是固化在交換機(jī)內(nèi)部的(給FPGA片內(nèi)BRAM初始值),但是在測試過程中,往往需要對表項進(jìn)行修改,如果直接修改BRAM的coe文件,則需要重新綜合、實現(xiàn)、生成bit文件,其中,綜合與實現(xiàn)耗時十分嚴(yán)重,設(shè)計規(guī)模越大,消耗的時間越長,而生成bit文件消耗的時間則相對固定。

針對上述問題,本文探究一種避免綜合與實現(xiàn),直接修改BRAM初始化值的方法,可以避免綜合、實現(xiàn)兩個步驟,修改BRAM初始值后,直接生成bit文件,可節(jié)約大量的時間。

2、 操作方法

(1) 完成初始設(shè)計,綜合、實現(xiàn)(但是不生成bit文件) ;
(2) 打開布線后的dcp文件(使用Vivado直接打開),如下圖所示:

f94e2fc6-a2b7-11ed-bfe3-dac502259ad0.png

(3) 找到想修改的目標(biāo)BRAM:

<3.1> ctrl+f ;

f96a1f74-a2b7-11ed-bfe3-dac502259ad0.jpg

<3.2> 選擇需要修改的BRAM ;

f989d274-a2b7-11ed-bfe3-dac502259ad0.png

<3.3> 在properties界面,可以直接修改初始化文件(需要熟悉原語,其初始化方式與RAMB18E1相同);

f9a0b840-a2b7-11ed-bfe3-dac502259ad0.png

<3.4>保存,退出;

<3.5>在主工程中打開實現(xiàn)設(shè)計,按照相同的方式可以找到對應(yīng)的RAM與初始化值,可以發(fā)現(xiàn)初始化值已經(jīng)改變了 ;

<3.6> 生成bitstream文件。

3、 上板實測

(1) coe文件:

f9b0fe3a-a2b7-11ed-bfe3-dac502259ad0.png

(2) 修改后的RAM初始化值

f9bc8fa2-a2b7-11ed-bfe3-dac502259ad0.png

(3) 上板實測結(jié)果:

f9d4e2dc-a2b7-11ed-bfe3-dac502259ad0.png

4、 結(jié)論

在僅修改BRAM初始化值的場景下,該方法可以大大減小從修改BRAM初始值到重新生成bitstream的時間,在交換機(jī)調(diào)試過程中,具有一定實用價值。






審核編輯:劉清

聲明:本文內(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)注

    1624

    文章

    21575

    瀏覽量

    600755
  • 交換機(jī)
    +關(guān)注

    關(guān)注

    20

    文章

    2603

    瀏覽量

    98926
  • DCP
    DCP
    +關(guān)注

    關(guān)注

    0

    文章

    29

    瀏覽量

    17182
  • BRAM
    +關(guān)注

    關(guān)注

    0

    文章

    41

    瀏覽量

    10931

原文標(biāo)題:Vivado 直接修改RAM初始化文件,避免重新綜合、實現(xiàn)的方法

文章出處:【微信號:HXSLH1010101010,微信公眾號:FPGA技術(shù)江湖】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    有沒有一種方法最佳的方法實現(xiàn)初始化I/O引腳

    大家好,我希望這聽起來不像是懶人問題。令人驚奇的是,在MPLABX/XC8項目中,有沒有一種最佳的實踐/推薦方法來對控制器的所有引腳進(jìn)行初始化初始化,特別是如果它的
    發(fā)表于 01-25 13:30

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

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

    請問初始化BRAM后怎么顯示BRAM數(shù)據(jù)?

    嗨,大家好,我想用coe文件初始化BRAM,但有兩個問題。首先,當(dāng)我加載coe文件時,存在文件不存在的錯誤。見下圖:有人可以幫我解決問題嗎?其次,我刪除了錯誤文件,因為“文件組”下有兩個coe文件
    發(fā)表于 04-18 11:27

    如何避免Spartan默認(rèn)初始化BRAM?

    嗨,我需要讀取BRAM的上電,但是在編程階段它們默認(rèn)為0。有辦法防止這種情況嗎?謝謝以上來自于谷歌翻譯以下為原文Hi, I need to read the power-up values
    發(fā)表于 07-23 11:37

    初始化BRAM primitaves出現(xiàn)錯誤和循環(huán)漏洞的原因?

    大家好,我直在嘗試在我的項目中初始化我的BRAM primitaves段時間,并繼續(xù)遇到意外錯誤和循環(huán)漏洞。概述:用于綜合的Synpli
    發(fā)表于 07-26 10:04

    如何去編寫一種PWM初始化函數(shù)?

    如何去編寫一種PWM初始化函數(shù)?ADC如何進(jìn)行初始化呢?電調(diào)首次使用為什么需設(shè)置量程?
    發(fā)表于 07-21 07:34

    變量初始化的基本原則

    、變量初始化變量初始化的基本原則為:可綜合代碼中完成內(nèi)部變量的初始化,Testbench中完成可綜合
    發(fā)表于 01-19 07:07

    基于粒子群算法的同步時序電路初始化

    摘要:針對同步時序電路的初始化問題,提出了一種新的實現(xiàn)方法。當(dāng)時序電路中有未確定狀態(tài)的觸發(fā)器時,就不能順利完成該電路的測試生成,因此初始化
    發(fā)表于 05-13 09:36 ?6次下載

    一種多類原型模糊聚類的初始化方法

    一種多類原型模糊聚類的初始化方法 模糊聚類是非監(jiān)督模式分類的個重要分支,在模式識別和圖像處理中已經(jīng)得到了廣泛的應(yīng)用.但現(xiàn)有模糊聚類算法大都需要聚類數(shù)
    發(fā)表于 10-21 16:02 ?980次閱讀

    基于WRED協(xié)議的TCP連接初始化的優(yōu)化方法

    針對數(shù)據(jù)中心中由于SYN包丟失而引起的TCP連接被延遲從而錯過任務(wù)時間限制的問題,在無需更換現(xiàn)有設(shè)備以及無需修改應(yīng)用和TCP的前提下,提出一種基于加權(quán)隨機(jī)早期檢測(WRED)協(xié)議的TCP連接初始化
    發(fā)表于 11-29 14:18 ?0次下載
    基于WRED協(xié)議的TCP連接<b class='flag-5'>初始化</b>的優(yōu)化<b class='flag-5'>方法</b>

    一種修飾符能使變量在處理器復(fù)位而不被初始化

    一種修飾符能使變量在處理器復(fù)位而不被初始化
    的頭像 發(fā)表于 03-14 15:01 ?3907次閱讀
    <b class='flag-5'>一種</b>修飾符能使變量在處理器復(fù)位而不被<b class='flag-5'>初始化</b>

    修改BRAM初始化避免綜合實現(xiàn)

    實現(xiàn)、生成bit文件,其中,綜合實現(xiàn)耗時十分嚴(yán)重,設(shè)計規(guī)模越大,消耗的時間越長,而生成bit文件消耗的時間則相對固定。針對上述問題,本文探究一種
    的頭像 發(fā)表于 11-30 15:37 ?2532次閱讀
    <b class='flag-5'>修改</b><b class='flag-5'>BRAM</b><b class='flag-5'>初始化</b><b class='flag-5'>值</b>的<b class='flag-5'>避免</b><b class='flag-5'>綜合</b>與<b class='flag-5'>實現(xiàn)</b>

    如何使用精確估計滿秩空間相關(guān)矩陣實現(xiàn)MNMF穩(wěn)定初始化方法

    多通道非負(fù)矩陣分解(MNMF)是最有效的盲源分離技術(shù)之。提出了一種通過精確估計滿秩空間相關(guān)矩陣的MNMF穩(wěn)定初始化方法。替代初始化可以是作
    發(fā)表于 10-16 08:00 ?3次下載
    如何使用精確估計滿秩空間相關(guān)矩陣<b class='flag-5'>實現(xiàn)</b>MNMF穩(wěn)定<b class='flag-5'>初始化</b>的<b class='flag-5'>方法</b>

    華為技術(shù)有限公司公開“智能駕駛系統(tǒng)初始化方法和裝置”專利

    2月1日消息,企查查APP顯示,1月29日,華為技術(shù)有限公司公開“智能駕駛系統(tǒng)初始化方法和裝置”專利,公開號為CN110723151B。 該專利摘要顯示,本申請公開了一種智能駕駛系統(tǒng)初始化
    的頭像 發(fā)表于 02-01 15:52 ?1739次閱讀

    VHDL和Verilog中數(shù)組定義、初始化、賦值方法

    方法:實際應(yīng)用里,通常需要在上電復(fù)位過程中對變量進(jìn)行初始化,如果數(shù)組個數(shù)少時,直接初始值即可,但是數(shù)組個數(shù)多時,可以用循環(huán)實現(xiàn)賦值,通常的
    的頭像 發(fā)表于 09-23 14:20 ?1.1w次閱讀