在FPGA設(shè)計(jì)過(guò)程中,使用好雙口RAM,也是提高效率的一種方法。
官方將雙口RAM分為簡(jiǎn)單雙口RAM和真雙口RAM。

簡(jiǎn)單雙口RAM只有一個(gè)寫(xiě)端口,一個(gè)讀端口。

真雙口RAM分別有兩個(gè)寫(xiě)端口和兩個(gè)讀端口。
無(wú)論是簡(jiǎn)單雙口RAM還是真雙口RAM,在沒(méi)有讀操作的情況下,應(yīng)將讀使能rden信號(hào)拉成低電平,節(jié)省功耗。
在兩種情況下,都應(yīng)當(dāng)避免read-during-write,雖然可在軟件中進(jìn)行設(shè)置,但是,作為設(shè)計(jì)者,應(yīng)當(dāng)盡量避免此種情況。
對(duì)于真雙口RAM,還應(yīng)當(dāng)避免兩個(gè)讀端口或者兩個(gè)寫(xiě)端口同時(shí)操作同一個(gè)地址,RAM中并沒(méi)有此種沖突解決電路,設(shè)計(jì)者應(yīng)該避免這種沖突。
無(wú)論是那種雙口RAM,讀時(shí)序圖是相同的。

當(dāng)讀使能有效時(shí),數(shù)據(jù)會(huì)在時(shí)鐘下一個(gè)上升沿從Q端輸出。
真雙口RAM給設(shè)計(jì)帶來(lái)很多便利。在高速存儲(chǔ)中,需要對(duì)連續(xù)的數(shù)據(jù)同時(shí)處理,使用簡(jiǎn)單雙口RAM只能讀取一個(gè)數(shù)據(jù),而使用真雙口RAM可以同時(shí)讀取兩個(gè)數(shù)據(jù),這樣明顯提高讀取速度以及處理速度。

調(diào)用真雙口RAM,如圖設(shè)置。

這里可以設(shè)置時(shí)鐘方案,而讀使能rden并非必須信號(hào)。當(dāng)使用rden信號(hào)時(shí),此信號(hào)高電平有效,當(dāng)不使用rden信號(hào)時(shí),給定地址,下一個(gè)脈沖數(shù)據(jù)從q端口送出。

這里的設(shè)置非常重要,當(dāng)選中read output ports時(shí),q端會(huì)增加一級(jí)寄存器。雖然這樣增加流水線能夠提高電路的速度,但同時(shí)從讀使能有效到最終數(shù)據(jù)有效將會(huì)多延遲一個(gè)時(shí)鐘周期。在設(shè)計(jì)中要格外注意。根據(jù)設(shè)計(jì)自行設(shè)置。


上面兩張圖是指定對(duì)同一地址操作時(shí)的輸出。作為設(shè)計(jì)者,應(yīng)盡量在自己的設(shè)計(jì)中避免這種情況發(fā)生。
真雙口RAM用好了是非常省時(shí)間的。之前我們文章中提到硬件FFT的實(shí)現(xiàn),在實(shí)現(xiàn)過(guò)程中,使用基2的設(shè)計(jì)方案,需要同時(shí)讀取兩個(gè)RAM數(shù)據(jù),這種情況下可以使用真雙口RAM提高效率。
-
FPGA
+關(guān)注
關(guān)注
1660文章
22408瀏覽量
636231 -
RAM
+關(guān)注
關(guān)注
8文章
1399瀏覽量
120545 -
電平
+關(guān)注
關(guān)注
5文章
372瀏覽量
41595
原文標(biāo)題:雙口RAM,值得研究
文章出處:【微信號(hào):ALIFPGA,微信公眾號(hào):FPGA極客空間】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
利用FPGA實(shí)現(xiàn)雙口RAM的設(shè)計(jì)及應(yīng)用
基于FPGA的雙口RAM實(shí)現(xiàn)及應(yīng)用
求助,雙口RAM選型!
FPGA雙口ram
基于FPGA的雙口RAM實(shí)現(xiàn)及應(yīng)用
數(shù)據(jù)采集系統(tǒng)中用SRAM模擬雙口RAM
Xilinx分布式RAM和塊RAM—單口、雙口、簡(jiǎn)單雙口、真雙口的區(qū)別
RAM分為簡(jiǎn)單雙口RAM和真雙口RAM
評(píng)論