FPGA研發(fā)之道(2)FPGA和他那些小伙伴們(一)系統(tǒng)架構(gòu)組
通常來講,“一個(gè)好漢三個(gè)幫”,一個(gè)完整的嵌入式系統(tǒng)中由單獨(dú)一個(gè)FPGA使用的情況較少。通常由多個(gè)器件組合完成,例如由一個(gè)FPGA+CPU來構(gòu)成。通常為一個(gè)FPGA+ARM,ARM負(fù)責(zé)軟件配置管理,界面輸入外設(shè)操作等操作,F(xiàn)PGA負(fù)責(zé)大數(shù)據(jù)量運(yùn)算,可以看做CPU的專用協(xié)處理器來使用,也常會(huì)用于擴(kuò)展外部接口。常用的有ARM+FPGA,DSP+FPGA,或者網(wǎng)絡(luò)處理器+FPGA等種種架構(gòu)形式,這些架構(gòu)形式構(gòu)成整個(gè)高速嵌入式設(shè)備的處理形態(tài)。
本文引用地址:http://m.butianyuan.cn/article/263946.htm不得不說的是,隨著技術(shù)的進(jìn)步,現(xiàn)在CPU中集成的單元也隨之增加,例如TI的“達(dá)芬奇”架構(gòu)的處理器內(nèi)部通常由ARM+DSP構(gòu)成。同時(shí)異構(gòu)的處理器形態(tài)業(yè)逐漸流行,如ARM9+ARM7的結(jié)構(gòu)。這類一個(gè)主要處理系統(tǒng)(ARM9)外帶輔助處理系統(tǒng)(ARM7)的設(shè)計(jì),同樣成為現(xiàn)在處理器設(shè)計(jì)的流行方向。主處理系統(tǒng)運(yùn)行嵌入式操作系統(tǒng),而輔助處理單元?jiǎng)t專注某一些的專用領(lǐng)域的處理。這些系統(tǒng)的應(yīng)用減少了FPGA作為CPU協(xié)處理單元的領(lǐng)域。因?yàn)楫吘笷PGA相比ARM等流行嵌入式處理器價(jià)格要相對較高。
在這種情形下,F(xiàn)PGA的廠商似乎也感受到了壓力,不約而同推出了帶ARM硬核的FPGA,例如ALTERA的 和XILINX的ZYNQ和ALTERA的SOC FPGA。這是即是互相競爭的需要,也是同眾多CPU廠商一掰手腕的杰總。即使在這兩種在趨勢下,經(jīng)典的處理器+FPGA的設(shè)計(jì)仍然可看做為高性能嵌入式系統(tǒng)的典型配置。
經(jīng)典的處理器+FPGA的配置中有多種的架構(gòu)形式,即多個(gè)處理器單元,可能是ARM,MIPS,或者DSP,F(xiàn)PGA也可能是多片的配置,具體架構(gòu)形式于具體處理的業(yè)務(wù)相關(guān)和目標(biāo)設(shè)備的定位也相關(guān)。因?yàn)镕PGA作為簡單業(yè)務(wù)流大數(shù)據(jù)量的處理形態(tài)仍然是CPU無可比擬的優(yōu)勢,F(xiàn)PGA內(nèi)部可以開發(fā)大量業(yè)務(wù)數(shù)據(jù)并行,從而實(shí)現(xiàn)高速的數(shù)據(jù)處理。
在實(shí)現(xiàn)高速處理方面,CPU的另一個(gè)發(fā)展趨勢是多核,多核處理器也能處理大數(shù)據(jù)量的業(yè)務(wù)的并行,例如業(yè)界TERILA已推出64核的多核處理器,采用MIPS處理器,通過二維MASH網(wǎng)絡(luò)連接在一起,形成NOC的結(jié)構(gòu)。在性能上已經(jīng)和現(xiàn)有的高速FPGA的處理能力上不相上下。但是多核處理器的不得不說的問題就是,同一業(yè)務(wù)流分配到多核處理上后,如需交互,例如訪問同一資源,就會(huì)造成讀寫的緩存一致的問題,解決的這一問題的天然思路是加鎖,即在變量訪問上加自旋鎖,但是帶來的問題就是處理性能的急劇下降。而FPGA無論并行處理和同一變量的訪問,都可以變成工程師的設(shè)計(jì)水平的問題,沒有原理性的挑戰(zhàn)。
沒有一種器件可以滿足全人類的眾多需求,因此不用擔(dān)心FPGA沒有用武之地。必定是一系列產(chǎn)品的組合。下面主要介紹一下FPGA可以作為現(xiàn)今熱門場景的幾種應(yīng)用。
(1)網(wǎng)絡(luò)存儲(chǔ)產(chǎn)品,特別是現(xiàn)在的NAS,或者SAN設(shè)備上,其存儲(chǔ)的時(shí)間、接口、安全性等都要求較高,而FPGA無論處理性能還是擴(kuò)展接口的能力都使其在這一領(lǐng)域大有作為?,F(xiàn)在高端FPGA單片就可以擴(kuò)展32個(gè)或者更多4G或者8G的FC接口。并且其協(xié)議處理相對的固定,也使FPGA在這一領(lǐng)域有大量的可能應(yīng)用。
(2)高速網(wǎng)絡(luò)設(shè)備,現(xiàn)在高速網(wǎng)絡(luò)設(shè)備10G、40/100G以太網(wǎng)設(shè)備領(lǐng)域,同樣FPGA也是關(guān)鍵的處理部件。特別是IPv6的商用化及大數(shù)據(jù)對于基礎(chǔ)設(shè)施的高要求,都使這一領(lǐng)域的處理應(yīng)用會(huì)逐漸廣泛,這一領(lǐng)域通常是高速網(wǎng)絡(luò)處理器(NP)+FPGA的典型架構(gòu)。
(3)4G等通信設(shè)備,對于新一代通信基站的信號(hào)處理,F(xiàn)PGA+DSP陣列的架構(gòu)就是絕配。特別是在專用處理芯片面世之前,這樣的架構(gòu)可以保證新一代通信基礎(chǔ)設(shè)施的迅速研發(fā)和部署。
沒有完美的架構(gòu),只有合適的組合,各種芯片和架構(gòu)都是為應(yīng)用服務(wù),互相的滲透是趨勢,也是必然。FPGA相對處理器的可編程領(lǐng)域,仍然屬于小眾(雖然人數(shù)也不少)。但是正像一則笑話所說:大腿雖然比根命根子粗,但決沒有命子重要。這算開個(gè)玩笑。FPGA的實(shí)現(xiàn)為以后的芯片化留下了許多可能和想象空間,從而在應(yīng)用大量爆發(fā)時(shí)通過芯片化來大幅降低成本,這這也正是其他可編程器件所不能比擬的。
評論