掌握FPGA設(shè)計(jì)三大黃金法則,讓你設(shè)計(jì)更輕松
發(fā)布時(shí)間:2016-12-12 責(zé)任編輯:susan
【導(dǎo)讀】FPGA采用了邏輯單元陣列LCA這樣一個(gè)概念,內(nèi)部包括可配置邏輯模塊CLB、輸出輸入模塊IOB和內(nèi)部連線三個(gè)部分?,F(xiàn)場可編程門陣列(FPGA)是可編程器件,與傳統(tǒng)邏輯電路和門陣列(如PAL,GAL及CPLD器件)相比,F(xiàn)PGA具有不同的結(jié)構(gòu)。
FPGA利用小型查找表(16&TImes;1RAM)來實(shí)現(xiàn)組合邏輯,每個(gè)查找表連接到一個(gè)D觸發(fā)器的輸入端,觸發(fā)器再來驅(qū)動(dòng)其他邏輯電路或驅(qū)動(dòng)I/O,由此構(gòu)成了既可實(shí)現(xiàn)組合邏輯功能又可實(shí)現(xiàn)時(shí)序邏輯功能的基本邏輯單元模塊,這些模塊間利用金屬連線互相連接或連接到I/O模塊。FPGA的邏輯是通過向內(nèi)部靜態(tài)存儲(chǔ)單元加載編程數(shù)據(jù)來實(shí)現(xiàn)的,存儲(chǔ)在存儲(chǔ)器單元中的值決定了邏輯單元的邏輯功能以及各模塊之間或模塊與I/O間的聯(lián)接方式,并最終決定了FPGA所能實(shí)現(xiàn)的功能,F(xiàn)PGA允許無限次的編程。
不管你是一名邏輯設(shè)計(jì)師、硬件工程師或系統(tǒng)工程師,甚或擁有所有這些頭銜,只要你在任何一種高速和多協(xié)議的復(fù)雜系統(tǒng)中使用了FPGA,你就很可能需要努力解決好器件配置、電源管理、IP集成、信號(hào)完整性和其他的一些關(guān)鍵設(shè)計(jì)問題。
不過,你不必獨(dú)自面對這些挑戰(zhàn),因?yàn)樵诋?dāng)前業(yè)內(nèi)領(lǐng)先的FPGA公司里工作的應(yīng)用工程師每天都會(huì)面對這些問題,而且他們已經(jīng)提出了一些將令你的設(shè)計(jì)工作變得更輕松的設(shè)計(jì)指導(dǎo)原則和解決方案。掌握FPGA設(shè)計(jì)的三大黃金法則,讓你設(shè)計(jì)更輕松。
一、面積與速度的平衡互換原則
這里的面積指的是FPGA的芯片資源,包括邏輯資源和I/O資源等;這里的速度指的是FPGA工作的最高頻率(和DSP或者ARM不同,F(xiàn)PGA設(shè)計(jì)的工作頻率是不固定的,而是和設(shè)計(jì)本身的延遲緊密相連)。 在實(shí)際設(shè)計(jì)中,使用最小的面積設(shè)計(jì)出最高的速度是每一個(gè)開發(fā)者追求的目標(biāo),但是“魚和熊掌不可兼得”,取舍之間展示了一個(gè)開發(fā)者的智慧。
1.速度換面積
速度優(yōu)勢可以換取面積的節(jié)約。面積越小,就意味著可以用更低的成本來實(shí)現(xiàn)產(chǎn)品的功能。速度換面積的原則在一些較復(fù)雜的算法設(shè)計(jì)中常常會(huì)用到。在這些算法設(shè)計(jì)中,流水線設(shè)計(jì)常常是必須用到的技術(shù)。在流水線的設(shè)計(jì)中,這些被重復(fù)使用但是使用次數(shù)不同的模塊將會(huì)占用大量的FPGA資源。對FPGA的設(shè)計(jì)技術(shù)進(jìn)行改造,將被重復(fù)使用的算法模塊提煉出最小的復(fù)用單元,并利用這個(gè)最小的高速代替原設(shè)計(jì)中被重復(fù)使用但次數(shù)不同的模塊。當(dāng)然,在改造的過程中必然會(huì)增加一些其他的資源來實(shí)現(xiàn)這個(gè)代替的過程。但是只要速度具有優(yōu)勢,那么增加的這部分邏輯依然能夠?qū)崿F(xiàn)降低面積提高速度的目的。
可以看到,速度換面積的關(guān)鍵是高速基本單元的復(fù)用。
2.面積換速度
在這種方法中面積的復(fù)制可以換取速度的提高。支持的速度越高,就意味著可以實(shí)現(xiàn)更高的產(chǎn)品性能。一些注重產(chǎn)品性能的應(yīng)用領(lǐng)域可以采用并行處理技術(shù),實(shí)現(xiàn)面積換速度。
二、硬件可實(shí)現(xiàn)原則
FPGA設(shè)計(jì)通常會(huì)使用HDL語言,比如Verilog HDL或者VHDL。當(dāng)采用HDL語言來描述一個(gè)硬件電路功能的時(shí)候,一定要確保代碼描述的電路是硬件可實(shí)現(xiàn)的。
Verilog HDL語言的語法與C語言很相似,但是它們之間有著本質(zhì)的區(qū)別。C語言是基于過程的高級語言,編譯后可以在CPU上運(yùn)行。而Verilog HDL語言描述的本身就是硬件結(jié)構(gòu),編譯后是硬件電路。因此,有些語句在C語言的環(huán)境中應(yīng)用是沒有問題的,但是在HDL語言環(huán)境下就會(huì)導(dǎo)致結(jié)果不正確或者不理想。如:
for(i=0;i《16;i++)
DoSomething();
在C語言中運(yùn)行沒有任何問題,但是在Verilog HDL的環(huán)境下編譯就會(huì)導(dǎo)致綜合后的資源嚴(yán)重浪費(fèi)。
三、同步設(shè)計(jì)原則
同步電路和異步電路是FPGA設(shè)計(jì)的兩種基本電路結(jié)構(gòu)形式。
異步電路的最大缺點(diǎn)是會(huì)產(chǎn)生毛刺。同步設(shè)計(jì)的核心電路是由各種觸發(fā)器構(gòu)成的。這類電路的任何輸出都是在某個(gè)時(shí)鐘的邊沿驅(qū)動(dòng)觸發(fā)器產(chǎn)生的。所以,同步設(shè)計(jì)可以很好地避免毛刺的產(chǎn)生。
FPGA基本特點(diǎn):
1)采用FPGA設(shè)計(jì)ASIC電路(專用集成電路),用戶不需要投片生產(chǎn),就能得到合用的芯片。
2)FPGA可做其它全定制或半定制ASIC電路的中試樣片。
3)FPGA內(nèi)部有豐富的觸發(fā)器和I/O引腳。
4)FPGA是ASIC電路中設(shè)計(jì)周期最短、開發(fā)費(fèi)用最低、風(fēng)險(xiǎn)最小的器件之一。
5)FPGA采用高速CMOS工藝,功耗低,可以與CMOS、TTL電平兼容。
主要FPGA生產(chǎn)廠商
1)Xilinx 開發(fā)平臺(tái)是ISE
2)Altera,開發(fā)平臺(tái)是Quartus II
3)Actel ,開發(fā)平臺(tái)是Libero
4)LatTIce
5)Atmel
特別推薦
- 意法半導(dǎo)體與英諾賽科簽署氮化鎵技術(shù)開發(fā)與制造協(xié)議
- 貿(mào)澤電子開售Molex的航空航天解決方案
- 利用高精度窗口監(jiān)控器有效提高電源輸出性能
- 詳解控制變壓器操作和尺寸
- 【聚焦產(chǎn)業(yè)變革?共筑創(chuàng)新生態(tài)】IIC Shanghai 2025盛大啟幕
- Wi-Fi 7頻率控制核心密碼:三大關(guān)鍵器件深度解析
- 用于電動(dòng)汽車車載充電器的 CLLLC 與 DAB 比較
技術(shù)文章更多>>
- 貿(mào)澤電子開售Molex的航空航天解決方案
- 意法半導(dǎo)體與英諾賽科簽署氮化鎵技術(shù)開發(fā)與制造協(xié)議
- 解碼宿遷專班護(hù)航金天國際全球大會(huì)背后的中國創(chuàng)新密碼
- 從元件到生態(tài):DigiKey可持續(xù)創(chuàng)新視頻系列全紀(jì)錄
- 2025廣州國際汽車技術(shù)展來襲:前沿技術(shù)、精彩論壇,不容錯(cuò)過!
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
行程開關(guān)
修復(fù)設(shè)備
蓄電池
旋轉(zhuǎn)開關(guān)
血壓計(jì)
血氧儀
壓電蜂鳴器
壓接連接器
壓控振蕩器
壓力傳感器
壓力開關(guān)
壓敏電阻
揚(yáng)聲器
遙控開關(guān)
醫(yī)療電子
醫(yī)用成像
移動(dòng)電源
音頻IC
音頻SoC
音頻變壓器
引線電感
語音控制
元件符號(hào)
元器件選型
云電視
云計(jì)算
云母電容
真空三極管
振蕩器
振蕩線圈