99在线精品免费视频九九视-99在线精品视频-99在线精品视频免费观里-99在线精品视频在线观看-99在线免费播放

FPGA設(shè)計(jì)實(shí)用分享02 之 XILINX的可參數(shù)化FIFO

  發(fā)布時(shí)間:2023-10-26  |    作者:yi jin yun  |  瀏覽量:1173

一、背景

FIFOFPGA項(xiàng)目中使用最多的IP核,一個(gè)項(xiàng)目使用幾個(gè),甚至是幾十個(gè)FIFO都是很正常的。通常情況下,每個(gè)FIFO的參數(shù),特別是位寬和深度,是不同的。

明德?lián)P(MDY)2021年承擔(dān)了多個(gè)基于XILINX芯片的研發(fā)項(xiàng)目,包括VPX網(wǎng)絡(luò)透明傳輸項(xiàng)目(芯片為XC7K325T-2FBG900)、某高端測(cè)試儀項(xiàng)目(芯片為XCKU060-FFVA1156)、某網(wǎng)閘設(shè)備項(xiàng)目(芯片為XC7Z030-FBG676)等,另外,明德?lián)P自研了基于XC7K325T-2FBG900和基于XC7K410T-2FBG900芯片的核心板,在XILINX研發(fā)領(lǐng)域擁有豐富的經(jīng)驗(yàn)。

這些項(xiàng)目都必須用到FIFO。如果按照通常做法,每種位寬和深度的IP,都要打開FIFO IP核界面、命名(命名不好不好分辨需要的FIFO)、設(shè)置參數(shù)、生成并編譯IP核,工作量可以想象出來(lái)是非常多的。更重要的是隨之而來(lái)的管理問(wèn)題,如何管理這幾十個(gè)不同FIFO,如何檢查FIFO的設(shè)置是否正確,都是一個(gè)不小的挑戰(zhàn)。

對(duì)于我們專門承接項(xiàng)目的團(tuán)隊(duì),絕不可忍受如此重復(fù)、枯燥、容易出錯(cuò)的工作。經(jīng)過(guò)精心研究,終于找到了一條實(shí)用的方法:使用XILINX的原語(yǔ)--xpm_fifo_asyncxpm_fifo_sync

XILINX原語(yǔ)xpm_fifo_asyncxpm_fifo_syncFPGA中,可以直接例化使用,并且可以參數(shù)化FIFO的位寬和深度的。即在設(shè)計(jì)時(shí),不用生成FIFO IP,直接例化就可以使用了。



二、獲得參考代碼




打開VIVADO軟件,點(diǎn)擊上圖中的Language Templates,將會(huì)彈出Language Templates窗口,如下圖。

Language Templates窗口中,依次點(diǎn)擊verilogXilinx Parameterized Macros(XPM)XPMXPM_FIFO,如上圖。可以看到有三種FIFO,分別是異步的XPM FIFOxpm_fifo_asyncAXI總線的FIFOxpm_fifo_axis和同步的XMP FIFOxpm_fifo_sync


選擇xpm_fifo_async,右邊的Preview窗口,將出現(xiàn)xpm_fifo_async的注釋以及參考代碼。將此部分代碼拷出來(lái),并將注釋刪除,剩下的是xpm_fifo_async的例化參考。

上圖是對(duì)xpm_fifo_async的參數(shù)例化部分。下面是需要重點(diǎn)關(guān)注并經(jīng)常使用的參數(shù)。

?  FIFO_WRITE_DEPTHFIFO的寫深度,其實(shí)就是在這里設(shè)置FIFO的深度,注意該值通常是2N次方,如8163264等數(shù)。

?  PROG_EMPTY_THRESHFIFO的快空的水線。當(dāng)FIFO存儲(chǔ)的數(shù)據(jù)量小于該水線時(shí),FIFO的快空信號(hào)將會(huì)變高。

?  PROG_FULL_THRESHFIFO的快滿的水線。當(dāng)FIFO存儲(chǔ)的數(shù)據(jù)量大于該水線時(shí),FIFO的快滿信號(hào)將會(huì)變高,表示有效。

?  READ_DATA_WIDTH:讀數(shù)據(jù)的位寬。

?  WRITE_DATA_WIDTH:將數(shù)據(jù)的位寬。

?  RD_DATA_COUNT_WIDHT:讀側(cè)數(shù)據(jù)統(tǒng)計(jì)值的位寬。

?  WR_DATA_COUNT_WIDTH:寫側(cè)數(shù)據(jù)統(tǒng)計(jì)值的位寬。

上圖是對(duì)xpm_fifo_async的接口信號(hào)部分。下面是需要重點(diǎn)關(guān)注并經(jīng)常使用的信號(hào)。

?  wr_clkFIFO的寫時(shí)鐘

?  rstFIFO的復(fù)位信號(hào),高電平有效。要注意的是,該信號(hào)是屬于寫時(shí)鐘域的。

?  wr_enFIFO的寫使能信號(hào)。

?  dinFIFO的寫數(shù)據(jù)

?  full:寫滿指示信號(hào),當(dāng)FIFO寫滿時(shí),該信號(hào)變高。

?  wr_data_countFIFO存儲(chǔ)數(shù)據(jù)量指示信號(hào),用來(lái)指示當(dāng)前FIFO已經(jīng)寫入但未讀出的數(shù)據(jù)個(gè)數(shù)。

?  rd_clkFIFO的讀時(shí)鐘。

?  rd_enFIFO的讀使能。

?  doutFIFO讀出的數(shù)據(jù)。

?  emptyFIFO的空指示信號(hào)。當(dāng)其為1表示FIFO處于空狀態(tài),當(dāng)其為0,表示FIFO內(nèi)有數(shù)據(jù)。




三、定義自用的FIFO模塊

從第二步可以看出,xpm_fifo_async是可以參數(shù)化深度和位寬的。但xpm_fifo_async有很多參數(shù)和信號(hào),并且其中有部分是不使用的。為了使用上的方便,可以自定義自用的FIFO模塊。

例如,明德?lián)P就定義了一個(gè)模塊mdyFifoAsy,該信號(hào)的接口信號(hào)如下圖。可以看出,名稱更加規(guī)范,并且定義常用的信號(hào),如讀時(shí)鐘rd_clk,寫時(shí)鐘wrclk、寫使能wrreq等信號(hào)。


明德?lián)P還在模塊mdyFifoAsy定義了一些常用的參數(shù),分別是FIFO深度參數(shù):DEPT_WFIFO位寬的參數(shù):DATA_W,還有FIFO快滿參數(shù)AL_FUL和快空參數(shù)AL_EMP,如下圖。



接下來(lái),就是在mdyFifoAsy中例化并使用xpm_fifo_async了。如下圖,就是對(duì)xpm_fifo_async的參數(shù)例化。將DEPT_W傳給FIFO_WRITE_DEPTHDATA_W傳給READ_DATA_WIDTH等。



下圖是對(duì)xpm_fifo_async的信號(hào)例化。將不用的信號(hào)留空,將dout連到qdin連到datawr_en連到wrreq等。您可以根據(jù)自己情況來(lái)定制FIFO






四、應(yīng)用

定制完自己的FIFO后,就可以直接例化使用了。

上圖就是使用了一個(gè)位寬為8,深度為256FIFO

上圖就是使用了一個(gè)位寬為18,深度為1024FIFO

FIFOFPGA、芯片設(shè)計(jì)中,最常用的IP核,在存儲(chǔ)控制、算法實(shí)現(xiàn)、接口設(shè)計(jì)中,都少不了FIFO,因此合理并正確使用FIFO的技術(shù)就非常有必要了,明德?lián)P錄制了FIFO的訓(xùn)練視頻,掌握后技術(shù)能力將有大提升。

通過(guò)上面介紹可知,通過(guò)此種方式,再也不用生成FIFO IP核啦,整個(gè)工程大小基本上可以減少一大半。

上面舉的例子是xpm_fifo_async,同步FIFOxpm_fifo_sync的使用方法是類似的。


溫馨提示:明德?lián)P2023推出了全新課程——邏輯設(shè)計(jì)基本功修煉課,降低學(xué)習(xí)FPGA門檻的同時(shí),增加了學(xué)習(xí)的趣味性,并組織了考試贏積分活動(dòng)

http://www.cqqtmy.cn/ffkc/415.html

(點(diǎn)擊→了解課程詳情?)感興趣請(qǐng)聯(lián)系易老師:13112063618(微信同步)


明德?lián)P除了培訓(xùn)學(xué)習(xí)還有項(xiàng)目承接業(yè)務(wù),擅長(zhǎng)的項(xiàng)目主要包括的方向有以下幾個(gè)方面:

1. MIPI視頻拼接
     2. SLVS-EC轉(zhuǎn)MIPI接口(IMX472 IMX492)
     3. PCIE采集系統(tǒng)
     4. 圖像項(xiàng)目
     5. 高速多通道ADDA系統(tǒng)
     6. 基于FPGA板卡研發(fā)
     7. 多通道高靈敏電荷放大器
     8. 射頻前端

需要了解相關(guān)信息可以聯(lián)系:易老師13112063618(微信同號(hào))


本文TAG:

Copyright ? 2012-2023 版權(quán)所有:深圳明德?lián)P科技教育有限公司

主站蜘蛛池模板: 99爱在线精品视频免费观看9 | 欧美三极 | 色国产在线视频一区 | 91久久精品日日躁夜夜躁欧美 | 深夜释放自己黄瓜视频 | 中国一级一级全黄 | 女人黄色大片子色 | 免费播放欧美一级特黄 | 视频国产一区 | 久久中文字幕亚洲 | 亚洲精品日本一区二区在线 | 青青青国产在线手机免费观看 | 古代的一a一片一级一片 | 国产成人精品三级 | 国产网站免费看 | 欧美一级特黄aa大片 | 亚洲精品在线网 | 秘书上班和老板啪啪中文字幕 | 亚洲国产成人久久综合一区 | 91日本在线精品高清观看 | 国产一区精品在线 | 国产亚洲毛片在线 | 99综合网| 亚洲网站大全 | 一级毛片aaa片免费观看 | 色婷婷六月桃花综合影院 | 国语对白清晰好大好白 | 99久久免费中文字幕精品 | 日本成人片网站 | 国产在线视频一区二区三区 | 好吊妞gao988在线播放 | 国产日韩一区二区 | 欧美日本一道本 | 国产在线欧美精品 | 国产成人午夜福在线观看 | 日韩欧美视频 | 国产精品成人h片在线 | 玖玖在线免费视频 | 亚洲福利视频一区二区三区 | 在线视频亚洲欧美 | 亚洲人成网站在线播放观看 |