《電子技術應用》
您所在的位置:首頁 > 可编程逻辑 > 其他 > 教学:FPGA存储单元的四种调用方法

教学:FPGA存储单元的四种调用方法

2022-10-21
來源:科学计算technomania
關鍵詞: 存储单元 Xilinx XPM Vivado

  首先,什么是XPM?可能很多人沒聽過也沒用過,它的全稱是Xilinx Parameterized Macros,也就是Xilinx的參數化的宏,跟原語的例化和使用方式一樣。可以在Vivado中的Tools->Language Templates中查看都有哪些XPM可以例化。

 25.JPG

  26.JPG

  從上圖中可以看出,目前可以例化的XPM主要有三種:跨時鐘域處理、FIFO和MEMORY。

  我們以MEMORY為例,在Vivado中可以通過下面四種方式調用FPGA中的存儲單元,均可以選擇是Block RAM還是Distributed RAM.

  方法1:RTL代碼

  我們在定義一個memory變量后,可以在前面指定其資源類型:

  (*ram_style = “block” *)reg [3:0] mem_bram [15:0] ;

  (*ram_style = “distributed” *)reg [3:0] mem_dram [15:0] ;

  使用RTL代碼的方式非常靈活,但由于少了很多的控制項,綜合后的結果可能不是最優的。

  方法2:原語(PrimiTIve)

  使用原語也可以例化MEMORY,但沒見幾個工程師這么用過,因為接口實在太多了,所以實用性不高。

 27.JPG

  方法3:IP Core

  這種方式應該是使用最多的,但缺點也很明顯:

  當修改參數時需要重新打開IP,然后Generate;

  不同版本的Vivado之間還需要進行Update;

  有時沒注意到IP中的參數,導致結果并不是自己想要的;

  最近在調試中就碰到這樣一個問題,FIFO中的默認輸出延遲是1,即輸出數據比讀使能晚一拍,而且Output Registers默認是不勾選的。但這個選項不知道什么時候被改了,導致程序最終的輸出結果一直有問題,在debug時一直檢查的是RTL代碼,直到定位到FIFO模塊時才發現了這個問題。如果此時我們使用的是XPM,那從代碼中很容易就能看出來錯誤。

  方法4:XPM_MEMORY

  相對而言,XPM的缺點就不是很明顯,純代碼例化的方式更加靈活、簡單。



更多信息可以來這里獲取==>>電子技術應用-AET<< 

mmexport1621241704608.jpg 


 


本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 国产精品av电影| 欧美精品999| 久久精品国产sm调教网站演员 | 日本精品二区| 日韩一区二区三区在线播放| 69av视频在线播放| 日日摸日日碰夜夜爽无码| 九九精品视频在线| 国产系列第一页| 精品一区二区中文字幕| 天天综合狠狠精品| 国外色69视频在线观看| www.色综合| 国产精品毛片va一区二区三区| 99久久综合狠狠综合久久止| 日韩中文字幕国产精品| 欧美中文字幕在线观看视频| 久久综合电影一区| 91免费欧美精品| 欧美日韩一区二区三区免费| 国产精品一区二区免费| 久久夜色精品国产亚洲aⅴ| 欧美精品性视频| 欧美日本韩国一区二区三区| 免费影院在线观看一区| 久久婷婷国产精品| 欧美日本韩国一区二区三区| 午夜精品一区二区三区在线观看| 日本一区精品| 国产精品91在线| 性高潮久久久久久久久| 国产mv免费观看入口亚洲| 国产精品久久久久久久av大片| 亚洲精品中文字幕乱码三区不卡| 日韩免费观看视频| 欧美另类69精品久久久久9999| 91精品国产综合久久久久久蜜臀| 日本丰满少妇黄大片在线观看| 亚洲视频导航| 综合操久久久| 99在线免费观看视频|