第一節(jié) 什么是FPGA
FPGA 的全稱為 Field-Programmable Gate Array, 即現(xiàn)場可編程門陣列。FPGA 就是一個可以“改變”內(nèi)部結(jié)構(gòu)的芯片,而讓這個芯片來實現(xiàn)怎樣的功能,就需要通過編程即設(shè)計HDL,經(jīng)過 EDA工具編譯、綜合、布局布線成后轉(zhuǎn)換為可燒錄的文件,最終加載到 FPGA 器件中去,改變 FPGA 內(nèi)部的連線,完成所實現(xiàn)的功能。
單片機里面的器件、布局等是確定的(即硬件是固定的)。其他的DSP等同理。
FPGA內(nèi)部的電路結(jié)構(gòu)是不確定的,可以通過編程來進行改變。
單片機通過改變指令來實現(xiàn)預(yù)期的功能。
FPGA通過改變內(nèi)部電路結(jié)構(gòu)來實現(xiàn)預(yù)期的功能。
FPGA一般用于速度快、數(shù)據(jù)量大、精度高的場合中,如:通信接口設(shè)計、數(shù)字信號處理等。同時也作為ASIC設(shè)計的原型驗證。還可以應(yīng)用于一些非標(biāo)場合(非標(biāo)準(zhǔn)接口),以及新型科技的試驗。
相比于單片機、CPU:FPGA效率更高、功耗更低,但易于開發(fā)程度差;
相比于ASIC:FPGA具有更短的開發(fā)周期與開發(fā)難度,但成本過高、性能較差,在資源的利用率上遠(yuǎn)不及ASIC。
第二節(jié) FPGA的基本結(jié)構(gòu)
FPGA可編程的特性決定了其實現(xiàn)數(shù)字邏輯的結(jié)構(gòu)不能像專用ASIC那樣通過固定的邏輯門電路來完成,而只能采用一種可以重復(fù)配置的結(jié)構(gòu)來實現(xiàn)。查找表(LUT)可以很好地滿足這一要求,目前主流的FPGA芯片仍是基于SRAM工藝的查找表結(jié)構(gòu)。
FPGA芯片說明書中可以查看該器件具體的參數(shù)指標(biāo),包含可編程邏輯模塊的數(shù)量、固定功能邏輯模塊(如乘法器)的數(shù)目以及存儲器資源(如嵌入式 RAM)的大小等。在比較 FPGA 時,上述結(jié)構(gòu)是最重要的參考指標(biāo)。在最底層的可配置邏輯模塊(如片上的邏輯單元)上,存在著基本的兩種部件:觸發(fā)器和查找表(LUT),而觸發(fā)器和查找表的組合方式不同,是各個FPGA家族之間區(qū)別的重要依據(jù),并且查找表本身的結(jié)構(gòu)也可能各不相同(有 4 輸入或 6 輸入或其他)。
查找表(Look-Up-Table)簡稱為 LUT,其本質(zhì)上就是一個RAM。目前 FPGA 內(nèi)部中多使用4輸入的LUT,每一個 LUT 可以看成一個有 4 位地址線(對應(yīng)4輸入)的RAM。當(dāng)用戶在 EDA 工具上通過原理圖或HDL設(shè)計了一個邏輯電路以后,F(xiàn)PGA開發(fā)軟件會自動計算邏輯電路的所有可能結(jié)果,并把真值表(即結(jié)果)事先寫入 RAM 中。這樣,每輸入一個信號進行邏輯運算就等于輸入一個地址進行查找表操作,通過地址找到對應(yīng)的 RAM 中的結(jié)果,最后將其輸出。
輸入并進行結(jié)果的查找要明顯比當(dāng)場計算來的迅速。
將輸入的所有可能性視為地址,將對應(yīng)的輸出結(jié)果與相應(yīng)的地址對應(yīng)起來,構(gòu)成查找表。
第三節(jié) 更為復(fù)雜的FPGA結(jié)構(gòu)
1985,Xilinx公司推出了第一塊 FPGA 芯片——XC2064,最初的 FPGA 包含了 8×8=64 的邏輯塊陣列和 85000 個晶體管,其門電路不超過 1000 個,且每個邏輯塊由一個四輸入的查找表和其它一些簡單功能模塊構(gòu)成。隨著技術(shù)的發(fā)展和工藝節(jié)點的進步,F(xiàn)PGA在容量和性能不斷提高的同時,功耗卻在不斷的優(yōu)化減少。文章來源:http://www.zghlxwxcb.cn/news/detail-794331.html
在 FPGA 內(nèi)部, 有著“軟內(nèi)核”與“硬內(nèi)核” 之分。軟內(nèi)核是通過編程來實現(xiàn)的功能(軟功能,只要與非門、查找表夠多,就能實現(xiàn))。硬內(nèi)核是芯片直接實現(xiàn)的功能(硬功能,如時鐘單元,是電路固定死的)。軟內(nèi)核與硬內(nèi)核之間優(yōu)勢互補,軟內(nèi)核的優(yōu)勢在于可以在利用芯片資源的基礎(chǔ)上利用編程設(shè)計讓其完成需要實現(xiàn)的任何功能(注意是數(shù)字功能,不包括模擬功能)。而硬內(nèi)核由于是實現(xiàn)固定功能的器件,因此其優(yōu)勢在于資源利用率高且功耗較低,占用硅片的面積也較小,并具有較高的性能。兩者最重要的區(qū)別在于:與軟內(nèi)核相比硬內(nèi)核可用于實現(xiàn)模擬功能,例如鎖相環(huán)的倍頻功能,這個功能需要在模擬電路下實現(xiàn),所以這一部分是在 FPGA 內(nèi)部用硬件來實現(xiàn)的。文章來源地址http://www.zghlxwxcb.cn/news/detail-794331.html
第四節(jié) 帶嵌入式處理器的FPGA
第五節(jié) 數(shù)據(jù)存儲及配置方式
到了這里,關(guān)于明德?lián)PFPGA至簡設(shè)計原理與應(yīng)用 第一篇 FPGA基礎(chǔ)知識 第一章 FPGA簡介的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!