如果符合一些簡(jiǎn)單的設(shè)計(jì)原則,采用最新的Xilinx7系列FPGA架構(gòu)上實(shí)現(xiàn)無(wú)線(xiàn)通信。Xilinx公司已經(jīng)創(chuàng)建了典型無(wú)線(xiàn)數(shù)據(jù)路徑的設(shè)計(jì)范例,表明中速級(jí)(-2)器件上使用的幾乎100%的 slice資源都支持500 MHz以上的時(shí)鐘頻率。如何真正時(shí)序高速設(shè)計(jì),需要注意一下幾點(diǎn)
影響時(shí)鐘頻率的基本規(guī)則
01
DSP48 slice數(shù)與時(shí)鐘速率成反比
一般來(lái)說(shuō)DSP48 slice數(shù)與時(shí)鐘速率成反比。Block RAM資源也按照階躍函數(shù)隨時(shí)鐘速率降低。這在無(wú)線(xiàn)電信號(hào)處理設(shè)計(jì)中較常見(jiàn),其中Block RAM基本上用來(lái)按照相對(duì)高的采樣率存儲(chǔ)大量函數(shù)運(yùn)算的系數(shù)集合,例如,DDS(直接數(shù)字合成器)的正弦/余弦值,峰值抵消脈沖產(chǎn)生器中的CFR (波峰因數(shù)衰減)系數(shù),或DPD (數(shù)字預(yù)失真)模型中的非線(xiàn)性函數(shù)抽樣。
所以,提供時(shí)鐘頻率能夠降低Slice和BlockRAM的資源利用,當(dāng)時(shí)鐘頻率從368.64轉(zhuǎn)換至491.52 MHz(1.33時(shí)鐘比) ,按照比例LUT和FF的數(shù)據(jù)量分別減少了1.34和1.44倍。將時(shí)鐘速率從245.76放大一倍至491.52 MHz,這些數(shù)據(jù)減少了1.8倍和1.7倍。這種非線(xiàn)性行為基本上是為執(zhí)行信號(hào)處理控制邏輯,不需要按照時(shí)鐘頻率進(jìn)行線(xiàn)性放大。
02
信號(hào)采樣率也影響資源利用率
采樣速率為25 Msamples/sec的濾波器帶寬在250 MHz運(yùn)行時(shí)與帶寬在500 MHz運(yùn)行時(shí)相比所需的邏輯資源略降低兩倍。采樣速率為500 Msamples/sec的多相實(shí)現(xiàn)帶寬在250 MHz運(yùn)行時(shí)與帶寬在500 MHz時(shí)相比,所需的邏輯資源增加兩倍。對(duì)邏輯資源使用的一階估計(jì)是時(shí)鐘頻率增加x倍相當(dāng)于邏輯利用率減少0.85至1.1倍
高速設(shè)計(jì)其他注意事項(xiàng)
01
流水線(xiàn)設(shè)計(jì)
適當(dāng)?shù)牧魉€(xiàn)程序當(dāng)然是設(shè)計(jì)高速程序的關(guān)鍵因素,所有的高速設(shè)計(jì)都推崇流水線(xiàn)設(shè)計(jì),在此不做詳細(xì)描述
02
合理使用BlockRAM
需要構(gòu)建一個(gè)以上Block RAM的存儲(chǔ)時(shí),可通過(guò)選擇最大限度地減少數(shù)據(jù)復(fù)用和資源利用的配置優(yōu)化速度。舉例來(lái)說(shuō), 存儲(chǔ)16位數(shù)據(jù)的16K存儲(chǔ)器最好使用16K × 1位的Block RAM進(jìn)行構(gòu)建,而不是1K × 16位的Block RAM.
03
正確使用DSP Slice
DSP slice邏輯本質(zhì)上可支持較高的時(shí)鐘速率。邏輯電平與數(shù)據(jù)路由路徑的數(shù)量限制了速度,因此在構(gòu)建高速設(shè)計(jì)時(shí)應(yīng)在每一個(gè)或兩個(gè)LUT電平上插入一個(gè)寄存器
04
合理的層次結(jié)構(gòu)
定義合理的層次結(jié)構(gòu),按照邏輯分區(qū)將設(shè)計(jì)劃分成相應(yīng)的功能模塊。這種層次結(jié)構(gòu)提供便于在層次邊界寄存輸出的方法,從而限制特定模塊的關(guān)鍵路徑。這樣分析和修復(fù)在單一模塊中定位的時(shí)序路徑就很容易。實(shí)際上,定位超高時(shí)鐘速度時(shí),應(yīng)在層次結(jié)構(gòu)的一些層級(jí)使用多個(gè)寄存器級(jí),以?xún)?yōu)化時(shí)序并為后端工具留下更多設(shè)計(jì)空間。好的設(shè)計(jì)層次結(jié)構(gòu)應(yīng)該將相關(guān)的邏輯集成在一起,使得區(qū)域分組和邏輯壓縮更為有效;
建立適當(dāng)?shù)膶哟谓Y(jié)構(gòu)可在多個(gè)模塊時(shí)獲取可重復(fù)結(jié)果
在模塊級(jí)應(yīng)用實(shí)現(xiàn)屬性,可令代碼簡(jiǎn)單并具可擴(kuò)展性,該屬性可傳播該模塊中聲明的所有信號(hào)
05
良好的時(shí)鐘管理和時(shí)鐘分配方法
盡可能減少獨(dú)立主時(shí)鐘數(shù)量
將時(shí)鐘元件放在設(shè)計(jì)層次結(jié)構(gòu)的頂層,以便在多個(gè)模塊共享時(shí)鐘,這將減少所需的時(shí)鐘資源,提高時(shí)序性能,并降低資源和功率利用率
在不相關(guān)時(shí)鐘域之間使用適當(dāng)?shù)脑偻郊夹g(shù)
限制時(shí)鐘“使能”的使用。實(shí)際上這條規(guī)則難以實(shí)現(xiàn),原因是在多周期實(shí)現(xiàn)中時(shí)鐘“使能”通常需要評(píng)估數(shù)據(jù)樣本或操作符輸出。實(shí)現(xiàn)有效的降低功耗技術(shù)很有效。在任何情況下,必須適當(dāng)寄存時(shí)鐘使能信號(hào)以刪除高扇出 nets
06
復(fù)位策略
最小化復(fù)位網(wǎng)絡(luò)的大小
避免全局復(fù)位。
優(yōu)選同步復(fù)位,實(shí)際上對(duì)DSP48邏輯片和Block RAM是強(qiáng)制的。
總結(jié)
高速設(shè)計(jì)時(shí)FPGA設(shè)計(jì)的未來(lái),隨著信號(hào)處理能力的增強(qiáng),F(xiàn)PGA高速設(shè)計(jì)必不可少。如何合理優(yōu)化FPGA架構(gòu)設(shè)計(jì)是我們必須要考慮的問(wèn)題。
-
FPGA
+關(guān)注
關(guān)注
1625文章
21623瀏覽量
601242 -
時(shí)鐘
+關(guān)注
關(guān)注
10文章
1714瀏覽量
131277 -
無(wú)線(xiàn)電信號(hào)
+關(guān)注
關(guān)注
1文章
50瀏覽量
12785
原文標(biāo)題:高速FPGA系統(tǒng)設(shè)計(jì)幾條軍規(guī)
文章出處:【微信號(hào):gh_873435264fd4,微信公眾號(hào):FPGA技術(shù)聯(lián)盟】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論