FPGA最初的應(yīng)用領(lǐng)域也是傳統(tǒng)的應(yīng)用領(lǐng)域,通信領(lǐng)域,但隨著信息產(chǎn)業(yè)以及微電子計數(shù)發(fā)展,F(xiàn)PGA的應(yīng)用范圍編輯航空航天、汽車、醫(yī)療、工業(yè)控制等領(lǐng)域。下面分4個方面介紹FPGA的用武之地:視頻圖像處理、通信領(lǐng)域、數(shù)字信號處理和其他領(lǐng)域。
1. 視頻圖像處理領(lǐng)域
視頻圖像處理是多媒體領(lǐng)域中的熱門技術(shù),因為視頻圖像處理的數(shù)據(jù)量越來越大。基于這些大量的數(shù)據(jù),可分為視頻編解碼和目標(biāo)識別兩大類。
1.1 視頻編解碼
從信道容量的角度考慮數(shù)據(jù)的傳輸帶寬,如何壓縮圖像,采用什么樣的算法這已經(jīng)相對成熟了。目前正在用的視頻編解碼器可達(dá)數(shù)百種,但常用的還是少數(shù)的幾種。
MPEG-2
比如很老但還在使用的MPEG-2,主要在廣播信號和DVD電影的編碼,但隨著高清DVD逐漸采用VC-1和H.264標(biāo)準(zhǔn)進行編碼,MPEG-2將會逐漸退出。
MPEG-4
相比MPEG-2,其能夠以更低的速率傳送視頻卻能保持相同的圖像質(zhì)量。它引入了描述 自然的或合成的對象等新概念來構(gòu)成場景,并支持與用戶交互,給視頻節(jié)目制作商提供了改進的內(nèi)容保護功能和創(chuàng)建更加靈活、可復(fù)制內(nèi)容的能力。這些優(yōu)點,使得其在衛(wèi)星視頻傳送中得到應(yīng)用
H.264
它其實是MPEG-4中的第十部分,主要以其高數(shù)據(jù)壓縮率和質(zhì)量走紅。
還有一些JPEG等算法。
1.2 目標(biāo)識別
目標(biāo)識別主要是用來提取相關(guān)信息,比如圖像邊緣提取,同時結(jié)合一些人工智能等方面的知識,相對來講還是處在一個快速發(fā)展階段,也是圖像處理研究的前沿內(nèi)容。特別是移動目標(biāo)檢測與跟蹤技術(shù),在機器人視覺、交通檢測、機器導(dǎo)航等民用領(lǐng)域有著廣泛的應(yīng)用,同時在火力攔截、導(dǎo)彈電視和紅外視頻制導(dǎo)等軍用方面也發(fā)揮著重要作用。
可識別的視頻行為包括:突然入侵、移動物體、運動路徑、遺留物體、指向接近、移走物體六大類檢測。試想,動車上應(yīng)該也有這個視頻檢測技術(shù),車頭應(yīng)該有檢測多少范圍內(nèi)前方是否有車,當(dāng)然這肯定不是視野范圍內(nèi)的,采用雷達(dá)或者其他測試手段,但是肯定有視頻圖像傳輸與識別制導(dǎo)系統(tǒng)。原因在這不探討,但是既然發(fā)生這樣撞尾事件,我們視頻檢測制導(dǎo)還是很有我們需要提高的,去努力的方向。
有人會說,不是有專門的視頻處理的 DSP 器件么,DSP 書上說它做這個,F(xiàn)PGA 也說做這個,到底是哪個做這個?似乎有自夸自的嫌疑。對傳統(tǒng)上是采用 DSP 處理,只是我們列出的這些算法和應(yīng)用對計算性能的要求已遠(yuǎn)遠(yuǎn)超出了傳統(tǒng) DSP 處理器的能力,即使采用高端的 DSP 處理器,如果將 DSP 單做這部分的話完全可以,只是在應(yīng)用中,DSP 做的事情比較多,這個時候,F(xiàn)PGA 就可以用做協(xié)處理器來承擔(dān)性能關(guān)鍵的處理工作。與標(biāo)準(zhǔn) DSP處理器相比,F(xiàn)PGA 構(gòu)造的并行計算特性可支持更高的采樣速率和更大的數(shù)據(jù)吞吐能力,同時計算功效也更高。
1.3 圖像處理支持資源
(1)相關(guān) IP 核
Xilinx 和 ALTERA 都提供了視頻 IP 核組,以供視頻監(jiān)控系統(tǒng)中快速設(shè)計、仿真、實現(xiàn)和驗證視頻和圖像處理算法,其中包括設(shè)計用的基本基元和高級算法。
CCM、CFA插值、DPC :
Gamma Corrction
等等大量的IP資源。
2. 通信領(lǐng)域
通信領(lǐng)域是FPGA應(yīng)用的傳統(tǒng)領(lǐng)域,到如今依舊是FPGA應(yīng)用的熱點和研究的熱點。這里將無線通信領(lǐng)域分為有線通信領(lǐng)域和無線通信領(lǐng)域介紹。
2.1 有線通信
有線通信,顧名思義,借助線纜傳送信號的通信方式。線纜可以指金屬導(dǎo)線、光纖等有形媒質(zhì)傳送方式,信號可以指代聲音、文字、圖像等。
有線通信的另一種叫法稱為固網(wǎng),我們不得不信,很多的進步都是基于很大的欲望的驅(qū)使,僅僅是十幾年的時間,全世界被一個叫做 Internet 的網(wǎng)絡(luò)給連接在一起。這是有線通信的最大的一個實例,當(dāng)然有線通信的例子還有一些我們近的不能再近的有線網(wǎng)絡(luò),最開始用的座機電話網(wǎng)、有線電視網(wǎng)等。
在維持和保證這些網(wǎng)絡(luò)給我們帶來幸福的同時,無形的促進了一些技術(shù)的產(chǎn)生,這些技術(shù)包括交換機、路由器、防火墻、網(wǎng)關(guān)、數(shù)據(jù)收發(fā)器、高速接口等網(wǎng)絡(luò)設(shè)備方面的開發(fā)技術(shù)。有線網(wǎng)絡(luò)的網(wǎng)絡(luò)質(zhì)量的好壞直接決定于這些網(wǎng)絡(luò)設(shè)備的提高。當(dāng)年做網(wǎng)絡(luò)設(shè)備的中興、華為如今已成為該領(lǐng)域的巨頭。
有線網(wǎng)絡(luò)如火如荼的發(fā)展了十幾年至到今天,雖說已經(jīng)比較成熟了,但是依然充滿著很大的挑戰(zhàn)和沖擊,電信市場正在經(jīng)歷新一輪整合發(fā)展時期,因特網(wǎng)的需求仍在繼續(xù)推動產(chǎn)業(yè)的創(chuàng)新。目前,家庭視頻和高級商業(yè)服務(wù)業(yè)務(wù)的快速發(fā)展對全球電信網(wǎng)絡(luò)的帶寬提出了更大挑戰(zhàn)。這一挑戰(zhàn)始于網(wǎng)絡(luò)接入邊緣,并直接延伸到城域網(wǎng)絡(luò)和核心網(wǎng)絡(luò)。為了響應(yīng)上述需求,運營商正在追求包括 40Gbps SONET(OC-768 和 OTU3)以及 40G 以太網(wǎng)在內(nèi)的更高的端口速率。越來越多的運營商更是將瞄準(zhǔn)了 100G 端口速率。
商業(yè)和經(jīng)濟的發(fā)展形勢迫切地需要可擴展的、靈活的且高效益成本的技術(shù)解決方案,從而滿足電信行業(yè)不斷變化的需求和標(biāo)準(zhǔn)。為了跟上這些變化,加快超高帶寬系統(tǒng)的部署,有線通信設(shè)備生產(chǎn)商正在從傳統(tǒng)的專用集成電路(ASIC)和成品(ASSP)芯片轉(zhuǎn)向可編程硬件平臺和 IP 解決方案。
2.2 無線通信
在有線通信的基礎(chǔ)上,人們在傳輸上為了更方便、距離更遠(yuǎn),無線通信技術(shù)在以前所未有的速度向前發(fā)展。無線發(fā)報機、BB 機、大哥大這些是我們很早用到的無線通信終端,再到我們現(xiàn)在用的 2G、3G 手機,已足以見得發(fā)展的迅猛。
無線系統(tǒng)通信類型可以分為微波通信系統(tǒng)、無線電尋呼系統(tǒng)、蜂窩移動通信、無繩電話系統(tǒng)、集群無線通信系統(tǒng)、衛(wèi)星通信系統(tǒng)、分組無線網(wǎng)等典型的通信系統(tǒng),其中的移動通信技術(shù)在世界范圍內(nèi)獲得了廣泛的應(yīng)用,從以模擬系統(tǒng)為特征的第一代帶今天的一征繳頻分復(fù)用接入(OFDMA)和多輸入多輸出(MIMO 為特征的第四代數(shù)字系統(tǒng)。其表現(xiàn)就是要求越來越高的數(shù)據(jù)服務(wù)。
為了滿足我們這個高數(shù)據(jù)率服務(wù),有越來越大的寬帶無線接入技術(shù)的需求就浮出了,這就需要一個可以提供較寬處理帶寬,具有產(chǎn)品及時面市優(yōu)勢的靈活硬件平臺來滿足這些需求。
以上是從大方向的角度考慮 FPGA 在今后無線通信應(yīng)用領(lǐng)域的需求,細(xì)化起來,就設(shè)計到標(biāo)準(zhǔn)通信系統(tǒng)的各個模塊了,標(biāo)準(zhǔn)的數(shù)字通信系統(tǒng)框圖如圖:
從圖上分析信源、信宿、信源編譯碼,信道編譯碼一般屬于基帶,調(diào)制又可分為一級調(diào)制、二級調(diào)制,通過一級調(diào)制將信號調(diào)制到中頻,通過二級調(diào)制將信號調(diào)制到可以發(fā)射出去的射頻。
在基帶中涉及到如何將信號采樣,信號量化;各種信源編碼譯碼算法,比如簡單點 等長碼,復(fù)雜點 變長碼,典型的是這個 Huffman 編碼,圖像數(shù)據(jù)的話比如 MEPG-2、H.264等;信道編碼譯碼算法,又分為線性分組碼、循環(huán)碼、BCH 碼、卷積碼、糾正碼、交織、 Turbo 碼等等,典型 OFDM 系統(tǒng)中的用到這個 RS 碼、LDPC 碼、交織等信道相關(guān)處理。
調(diào)制過程中用到這個調(diào)制方式,采用調(diào)頻、調(diào)幅還是調(diào)相,調(diào)相是采用是 QPSK 還是用更高效率的 NQPSK,以及相對應(yīng)的解調(diào)處理;還包括這些功能模塊在系統(tǒng)中數(shù)據(jù)傳送的通信接口協(xié)議,低速的有這個典型的 RS232,高速的有這個百兆千兆以太網(wǎng)、吉比特 IO、光纖等等。從上面的分析看出,F(xiàn)PGA 在通信系統(tǒng)領(lǐng)域的使用說雖是傳統(tǒng)依然熱是有道理的,還需大家的力量融入其中。
2.3 通信領(lǐng)域支持資源
由于 FPGA 在通信領(lǐng)域的成熟性,不管是哪個 FPGA 廠商,對通信領(lǐng)域的 IP 的支持都是很豐富的,這里將 Xilinx 和 altera 兩大巨頭在這個領(lǐng)域的支持的 IP 陳列出來,具體的 IP核功能描述大家可以參看附錄 XX。
AlteraIP:略
3.數(shù)字信號處理領(lǐng)域
數(shù)字信號處理(Digital Signal Processing,DSP)。我們最初使用的系統(tǒng)都是模擬系統(tǒng),比如第一代的移動通信系統(tǒng),以及最初用的模擬電視,還是黑白的。隨著數(shù)字時代的到來,很多模擬系統(tǒng)以及模擬產(chǎn)品都轉(zhuǎn)向了數(shù)字化,手機上也弄了一個模擬接收器,開始轉(zhuǎn)向第二代移動通信系統(tǒng)。數(shù)字系統(tǒng)相比于模擬系統(tǒng)有如下幾大優(yōu)點:
(1) 抗干擾性強;
(2) 便于進行各種數(shù)字信號處理;
(3) 易于實現(xiàn)集成化;
(4) 經(jīng)濟效益超過模擬通信
(5) 傳輸與交換可結(jié)合起來,傳輸電話與傳輸數(shù)據(jù)也可以結(jié)合起來,成為一個統(tǒng)一體,有利于實現(xiàn)綜合業(yè)務(wù)通信網(wǎng);
(6) 便于多路復(fù)用;
3.1 數(shù)字處理系統(tǒng)模型
數(shù)字系統(tǒng)雖然有這些優(yōu)點,但是我們實際傳送過程中還都是模擬信號,包括最開始的信號來源,和最終傳送發(fā)送出去的信號都是模擬信號。所以我們要進行數(shù)字處理,就必須采用兩種器件將我們這個模擬世界和數(shù)字世界給連接起來,這兩種器件分別是模數(shù)轉(zhuǎn)換器 ADC和數(shù)模轉(zhuǎn)換器 DAC。我們可以得到典型的數(shù)字信號處理的一個模型,如圖 。
模數(shù)轉(zhuǎn)化器 ADC 周期性的對輸入的模擬信號采樣,并做量化,其實 ADC 是由采樣保持和量化編碼器構(gòu)成的。采樣需要滿足奈奎斯特采樣定理,采樣位寬數(shù)和采樣速率決定了后期數(shù)字信號處理的精度。
采樣得到的數(shù)字?jǐn)?shù)據(jù)后,開始在做 DSP 處理了,應(yīng)用不同,處理的算法和過程就不一樣,目前數(shù)字信號可以干的事情可以列表如表 。
從表中可以看出,廣泛的看幾乎是采用數(shù)字的系統(tǒng)和產(chǎn)品應(yīng)用里都涉及到數(shù)字信號的處理,包括表中還列出了前面我們講到的通信領(lǐng)域和視頻圖像處理領(lǐng)域相關(guān)的應(yīng)用,同時表中列出了通用領(lǐng)域的一些算法,這是數(shù)字信號處理較普遍性、較專對性的。
經(jīng)過數(shù)字信號處理之后,得到的仍然是數(shù)字信號,數(shù)模轉(zhuǎn)換器DAC將會對這些數(shù)字信號進行模擬化后發(fā)送出去,在通信過程中一般是在射頻或是中頻做這個處理。
3.2DSP 實現(xiàn)方式
講到數(shù)字信號處理的實現(xiàn)方式很多人的第一反映就是數(shù)字信號處理器,就是我們這個硬件 DSP。沒錯它是一個專門做數(shù)字信號處理的,但是除此之外,其實還有幾種做數(shù)字信號處理的方式,所以在本節(jié)最開始的時候就講到大家要區(qū)分一下我們這里數(shù)字信號處理DSP和數(shù)字信號處理器 DSP,以免內(nèi)心一直存在這么一個糾結(jié)的問題影響這一節(jié)的學(xué)習(xí)。
除了專用的硬件 DSP 外,通用微處理器、專用的 ASIC 硬件、還有專用的 FPGA也可以做數(shù)字信號處理。我們來一一分析一下。
通用處理器
首先是通用微處理器,也可以稱為中央處理器(CPU)或者微處理器(MPU),通過在處理器中運行適當(dāng)?shù)?DSP 算法可以執(zhí)行 DSP 任務(wù)。特別是在近幾年來很火的 GPU,這個專門做圖像處理的處理器里,它內(nèi)部采用很多個處理器并行操作,在數(shù)字圖像的相關(guān)處理可謂相當(dāng)?shù)膶I(yè),在一些高端顯卡里面一般都配置有 GPU。
ASIC 硬件
其次是專用的 ASIC 硬件,這一塊主要是客戶化的執(zhí)行 DSP 任務(wù)的硬件實現(xiàn),相對來說,實現(xiàn)的功能單一,只能實現(xiàn)實現(xiàn)定義好的功能。這一類的器件比如數(shù)字濾波器芯片、數(shù)碼相機里的專用圖像處理芯片等等。但是優(yōu)點是功能經(jīng)過全面的驗證,并優(yōu)化后,做成 ASIC化,運行非常穩(wěn)定,速度也非???。
專用的數(shù)字信號處理器(DSP處理器)
第三種就是專用的數(shù)字信號處理器,它是一種特殊的微處理器芯片,經(jīng)過了專門的設(shè)計,執(zhí)行 DSP 任務(wù)時比通用的微處理器要快更高效,同時也比專用 ASIC 更加靈活。那么它特殊在哪里呢?在我們上一小節(jié)列舉的那些 DSP 算法中,有一個共同地方就是,需要大量的乘法和加法來完成,再怎么復(fù)雜的算法也都是有許許多多的這樣的乘加來構(gòu)成的。而乘法在硬件里用邏輯來搭建的話不管是面積上還是速度性能上都不是很理想,在通用的微處理器里,即使有硬件乘法器,數(shù)量也是有限,做其復(fù)雜算法來,速度性能上還是欠佳。于是硬件 DSP 這樣擁有大量的乘加結(jié)構(gòu)的處理器出現(xiàn)了,這就是它的特殊之處。
缺點:盡管是專門做數(shù)字信號處理的器件,但是它依然存在問題,針對它的開發(fā)依然是基于串行的任務(wù)隊列的軟件模式開發(fā),效率和靈活性依然有限。
專用的 FPGA硬件
第四種就是專用的 FPAG 硬件,剛才我們有講到列舉的那些 DSP 算法的一個共同特點是大量用到乘加操作,如果想要把 DSP 算法做好,確實是需要這些做這些乘加操作的硬件支持。細(xì)心的讀者會發(fā)現(xiàn),這里說的是專用的 FPGA 硬件,和之前在 FPGA 原理里提到的各種 FPGA 并沒有很大的出路,只是在它們的基礎(chǔ)上再添加了這些專用用來做 DSP 的乘加硬件,如圖
專用來做DSP的硬件
用 FPGA 來做數(shù)字信號處理的好處在于,完全是硬件化并行化編程操作,可以在速度和面積之間的轉(zhuǎn)變有很大的靈活性,在下一節(jié)里我們將通過一個例子來看看它的體現(xiàn)。
3.3 FPGA 做數(shù)字信號處理優(yōu)勢
這里給出 DSP 處理的最基本的乘加例子,實現(xiàn)的算方表達(dá)式如下:
Y=(A1?A2) +( A3?A4)
采用 FPGA 的并行機制,假設(shè)乘法器都是并行操作,我們得到如下圖實現(xiàn)的電路。從圖上我們看到,這種方式執(zhí)行的時間相當(dāng)與一個乘法器和一個加法器實現(xiàn)的時間,速度非常快,但是他卻消耗了兩個乘法器和一個加法器。
由于 FPGA 的編程的靈活性,我們也可以采用 資源共享的方式來得到一個串行的實現(xiàn)電路
在圖中可以看到,它消耗了兩個二選一多路器、一個乘法器、一個加法器和一個觸發(fā)器。雖然多了兩個二選一多路器和一個觸發(fā)器,但是這資源比乘法器的資源還是節(jié)約了不少。但是它的速度就降下來了,通過開關(guān) Sel 來控制,先做 A1 和 A2 的乘法,結(jié)果在時鐘驅(qū)動下保留在寄存器中,然后翻轉(zhuǎn) Sel,再做 A3 和 A4 的乘法,結(jié)果和上次運行的存放在寄存器中的結(jié)果做加法,在第二個時鐘驅(qū)動下存儲最終結(jié)果。這樣共享用一個乘法器,速度相比第一種情況慢,好的地方就是節(jié)約了面積。但是需要提的是,即使是這樣的共享式的實現(xiàn)速度也會比 DSP 專用芯片的軟實現(xiàn)速度要快。
相比之下得出,采用專用的 FPGA 做 DSP,不但可以在速度和面積上靈活調(diào)節(jié),至少實現(xiàn)速度還是比專用的DSP 要快一點。通常我們很多場合,專用DSP 的使用還是如日中天,一個原因是我們專用的 FPGA 的做 DSP 的資源還不是很富足,二個原因是專用 DSP 的開發(fā)采用的是軟件式開發(fā),而 FPGA 采用的是硬件開發(fā),這對很多工程師來講還是會選擇前者的,第三個原因是這個成本問題,畢竟傳統(tǒng)的專用的 DSP 芯片比專用的 FPGA 芯片要便宜。
3.4 DSP 支持資源
各 FPGA 廠商對數(shù)字信號處理的資源支持還是比較強大的,這包括前面提到的在通信領(lǐng)域和圖像處理領(lǐng)域提供的支持資源,有相關(guān)的 IP 核、相關(guān)的使用工具和一些參考設(shè)計方案,這里我們就不再重復(fù),只是做一些補充。
4.嵌入式領(lǐng)域
傳統(tǒng)的 控制系統(tǒng) 都是在 微處理器的控制下執(zhí)行各種控制和數(shù)據(jù)的處理應(yīng)用,這些微處理器包括單片機、ARM、PowerPC等等。隨著 FPGA 的使用普遍性,越來越多的系統(tǒng) 用 FPGA 作為高速數(shù)據(jù)接口 粘合以及做一些協(xié)同處理。出現(xiàn)了微處理器+FPGA 的片上系統(tǒng)的架構(gòu)。
通常這樣的架構(gòu)是在單板上設(shè)計,如下圖所示的一個系統(tǒng):
單板系統(tǒng)
從圖上看到,除了微處理器外還有DSP 器件、FLASH與SDRAM 存儲器。系統(tǒng)安排CPU 做整體的控制,F(xiàn)PGA 做一些接口邏輯粘合和一些信號的預(yù)處理, DSPs 做一個復(fù)雜的算法,F(xiàn)LASH 和 SDRAM 分別作為程序存儲和數(shù)據(jù)緩存。這樣的系統(tǒng)安排在一塊或者數(shù)塊 PCB 板上,不僅調(diào)試難度大,而且系統(tǒng)維護也不是方便。關(guān)鍵的問題是電路板上如果有這么些器件的話,成本是一個問題,而且占用了相當(dāng)?shù)拿娣e,增加了很多焊點,每一個焊點都是對電路的穩(wěn)定性構(gòu)成威脅。
于是,提出了一種 基于 FPGA 的片上系統(tǒng)的替代的方案,如圖所示
FPGA內(nèi)嵌DSP和CPU
在FPGA 內(nèi)部集成了CPU、DSP以及各種接口控制模塊,對有些存儲量要求不大的系統(tǒng)甚至外部的FLASH 和 SDRAM 都集成了。這樣做的思想會給帶來帶來哪些挑戰(zhàn)和機遇呢?這是我們接下來需要探討的問題。
4.1 創(chuàng)新挑戰(zhàn)和機遇
傳統(tǒng)的嵌入式開發(fā)完全是純軟件形式,而在 FPGA 平臺上,首先要面對的是怎么去規(guī)劃 FPGA,哪些是作為 CPU,如何實現(xiàn)?其實,系統(tǒng)中有硬件開發(fā)部分和軟件開發(fā)部分,如何在設(shè)計的時候支持這種硬件開發(fā)語言和軟件開發(fā)語言混合驗證,以保證系統(tǒng)正常工作?當(dāng)然這些問題在現(xiàn)在來講已經(jīng)解決了,但是我們能夠帶著這些問題來學(xué)習(xí)在后面的知識,這些問題在后面支持資源里都能夠得到解答。
那么機遇在哪?剛才有提到,首先如果一個系統(tǒng)有如圖似的需求的時候,采用FPGA 內(nèi)嵌的方式占用的板級面積小,焊點少系統(tǒng)穩(wěn)定,同時成本相比低,當(dāng)然這里并不包括一些只需控制器做一些控制的系統(tǒng)和產(chǎn)品,如果將 FPGA 純當(dāng)一個控制器用的話,成本相對單片機、ARM 來說還是有些高,這也是 FPGA 開發(fā)的一個問題,但是低端的 FPGA 芯片也能支持嵌入式處理器,資源有限。當(dāng)哪天 FPGA 價格能夠等同于這些微處理器的時候,這些微處理器也將面臨退役了。其實是它可以很靈活的配置硬件外設(shè),用來做控制系統(tǒng)驗證,對系統(tǒng)構(gòu)架設(shè)計者來說,非常有用。最后是對一個工程師來講,不但要會做硬件程序開發(fā)還得會軟件開發(fā),于公司來講,更愿意招這樣的全才。
基于 FPGA 的嵌入式的優(yōu)點只有用的時候才能真正感受,同時,你也能感受其缺點。雖說在建好硬件平臺的之后是軟件開發(fā),但是如果你是一個習(xí)慣于軟件開發(fā)的工程師,相信這里的軟件開發(fā)會讓你的意志力得到很大的提高,這種方式軟件開發(fā)編譯過程比傳統(tǒng)嵌入式開發(fā)要滿很多,這是各廠家有待需要提高的。
4.2 嵌入式支持資源
(1)硬核與軟核
硬核指的是一種專用的預(yù)定好的硬線邏輯塊實現(xiàn)的內(nèi)核,各好的理解就是直接將那位微處理器給放到 FPGA 芯片里。目前主流的 FPGA 廠商都會選擇一個特定的處理器來實現(xiàn)硬核。如下表,開發(fā)者可以直接在相關(guān)開發(fā)平臺上使用這些硬核。
軟核與硬核不同,是將一組邏輯資源塊配置成一個微處理器。同時,還提供了很多外圍設(shè)備,比如定時器、中斷控制器、各種內(nèi)存控制器、各種通信接口驅(qū)動等軟核,注意這里指代的軟核包括以 RTL 級網(wǎng)表形式,也包括布局布線后的 LUT 級形式。
需要說明的是,相比于硬核,軟核的速度要慢一些,這很好理解,但是軟核更簡單。在資源允許的情況下,我們可以配置多核,這個是硬核不行的,有多少個硬核你只能用幾個。同樣,主流的 FPGA 廠商也會做一個軟核,如表所示,其中 NIOS 是有 16 位和 32 位兩種架構(gòu),分別支持 16 位和 32 位數(shù)據(jù)寬度,而 MicroBlaze 只有 32 位的架構(gòu),Q90C1XX 確是一個 9 位的微控制器。
-
FPGA
+關(guān)注
關(guān)注
1630文章
21798瀏覽量
606065 -
圖像處理
+關(guān)注
關(guān)注
27文章
1300瀏覽量
56899 -
JPEG
+關(guān)注
關(guān)注
0文章
66瀏覽量
29999 -
工業(yè)控制
+關(guān)注
關(guān)注
38文章
1468瀏覽量
86033 -
目標(biāo)識別
+關(guān)注
關(guān)注
0文章
42瀏覽量
10466
原文標(biāo)題:淺析FPGA的應(yīng)用領(lǐng)域
文章出處:【微信號:gh_9d70b445f494,微信公眾號:FPGA設(shè)計論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論