亚洲电影av-亚洲第一综合网站-亚洲第一在线-亚洲第一影院-成年人视频在线免费-成年人视频在线观看免费

電子方案開(kāi)發(fā)供應(yīng)鏈平臺(tái)
一鍵發(fā)布任務(wù)
獲取驗(yàn)證碼
返回

發(fā)布成功


贊賞作者

贊賞金額:

  • ¥2
  • ¥5
  • ¥10
  • ¥50
  • ¥100
  • ¥200

支付金額:5

支付方式:

微信支付

贊賞成功!
你的贊賞是對(duì)作者最大的肯定~?

當(dāng)前位置 : 首頁(yè) > 方案訊 > 方案訊詳情
FPGA整體結(jié)構(gòu)
發(fā)布時(shí)間:2022-06-21 閱讀量:736 來(lái)源:我愛(ài)方案網(wǎng)整理 作者:我愛(ài)方案網(wǎng)

FPGA架構(gòu)主要包括可配置邏輯塊CLB(Configurable Logic Block)、輸入輸出塊IOB(Input Output Block)、內(nèi)部連線(Interconnect)和其它內(nèi)嵌單元四個(gè)部分。

CLB是FPGA的基本邏輯單元。實(shí)際數(shù)量和特性會(huì)依器件的不同而改變,但是每個(gè)CLB都包含一個(gè)由4或6個(gè)輸入、若干選擇電路(多路復(fù)用器等)和觸發(fā)器組成的可配置開(kāi)關(guān)矩陣。開(kāi)關(guān)矩陣具有高度的靈活性,經(jīng)配置可以處理組合型邏輯、移位寄存器或 RAM。

FPGA可支持許多種I/O標(biāo)準(zhǔn),因而可以為系統(tǒng)設(shè)計(jì)提供理想的接口橋接。FPGA 內(nèi)的I/O按bank分組,每個(gè)bank能獨(dú)立支持不同的I/O標(biāo)準(zhǔn)。目前最先進(jìn)的FPGA提供了十多個(gè)I/O bank,能夠提供靈活的I/O支持。

CLB 提供了邏輯性能,靈活的互連布線則負(fù)責(zé)在CLB和I/O之間傳遞信號(hào)。布線有幾種類(lèi)型,從設(shè)計(jì)用于專(zhuān)門(mén)實(shí)現(xiàn) CLB 互連(短線資源)、到器件內(nèi)的高速水平和垂直長(zhǎng)線(長(zhǎng)線資源)、再到時(shí)鐘與其它全局信號(hào)的全局低skew布線(全局性專(zhuān)用布線資源)。一般,各廠家設(shè)計(jì)軟件會(huì)將互連布線任務(wù)隱藏起來(lái),用戶(hù)根本看不到,從而大幅降低了設(shè)計(jì)復(fù)雜性。

內(nèi)嵌硬核單元包括RAM、DSP、DCM(數(shù)字時(shí)鐘管理模塊)及其它特定接口硬核等,F(xiàn)PGA器件內(nèi)部結(jié)構(gòu)如下示意圖。

1655780484156269.png


圖5 FPGA器件內(nèi)部結(jié)構(gòu)圖 


一般來(lái)說(shuō),器件型號(hào)數(shù)字越大,表示器件能提供的邏輯資源規(guī)模越大。在FPGA器件選型時(shí),用戶(hù)需要對(duì)照此表格,根據(jù)業(yè)務(wù)對(duì)邏輯資源(CLB)、內(nèi)部BlockRAM、接口(高速Serdes對(duì)數(shù))、數(shù)字信號(hào)處理(DSP硬核數(shù))以及今后擴(kuò)展等多方面的需求,綜合考慮項(xiàng)目最合適的邏輯器件。

FPGA開(kāi)發(fā)流程

FPGA的設(shè)計(jì)流程就是利用EDA開(kāi)發(fā)軟件和編程工具對(duì)FPGA芯片進(jìn)行開(kāi)發(fā)的過(guò)程。FPGA的開(kāi)發(fā)流程一般如下圖所示,包括功能定義/器件選型、設(shè)計(jì)輸入、功能仿真、邏輯綜合、布局布線與實(shí)現(xiàn)、編程調(diào)試等主要步驟。

1、功能定義/器件選型:在FPGA設(shè)計(jì)項(xiàng)目開(kāi)始之前,必須有系統(tǒng)功能的定義和模塊的劃分,另外就是要根據(jù)任務(wù)要求,如系統(tǒng)的功能和復(fù)雜度,對(duì)工作速度和器件本身的資源、成本、以及連線的可布性等方面進(jìn)行權(quán)衡,選擇合適的設(shè)計(jì)方案和合適的器件類(lèi)型。


2、 設(shè)計(jì)輸入:設(shè)計(jì)輸入指使用硬件描述語(yǔ)言將所設(shè)計(jì)的系統(tǒng)或電路用代碼表述出來(lái)。最常用的硬件描述語(yǔ)言是Verilog HDL。


3、 功能仿真:功能仿真指在邏輯綜合之前對(duì)用戶(hù)所設(shè)計(jì)的電路進(jìn)行邏輯功能驗(yàn)證。仿真前,需要搭建好測(cè)試平臺(tái)并準(zhǔn)備好測(cè)試激勵(lì),仿真結(jié)果將會(huì)生成報(bào)告文件和輸出信號(hào)波形,從中便可以觀察各個(gè)節(jié)點(diǎn)信號(hào)的變化。如果發(fā)現(xiàn)錯(cuò)誤,則返回設(shè)計(jì)修改邏輯設(shè)計(jì)。常用仿真工具有Model Tech公司的ModelSim、Sysnopsys公司的VCS等軟件。 


4、 邏輯綜合:所謂綜合就是將較高級(jí)抽象層次的描述轉(zhuǎn)化成較低層次的描述。綜合優(yōu)化根據(jù)目標(biāo)與要求優(yōu)化所生成的邏輯連接,使層次設(shè)計(jì)平面化,供FPGA布局布線軟件進(jìn)行實(shí)現(xiàn)。就目前的層次來(lái)看,綜合優(yōu)化是指將設(shè)計(jì)輸入編譯成由與門(mén)、或門(mén)、非門(mén)、RAM、觸發(fā)器等基本邏輯單元組成的邏輯連接網(wǎng)表,而并非真實(shí)的門(mén)級(jí)電路。

真實(shí)具體的門(mén)級(jí)電路需要利用FPGA制造商的布局布線功能,根據(jù)綜合后生成的標(biāo)準(zhǔn)門(mén)級(jí)結(jié)構(gòu)網(wǎng)表來(lái)產(chǎn)生。為了能轉(zhuǎn)換成標(biāo)準(zhǔn)的門(mén)級(jí)結(jié)構(gòu)網(wǎng)表,HDL程序的編寫(xiě)必須符合特定綜合器所要求的風(fēng)格。常用的綜合工具有Synplicity公司的Synplify/Synplify Pro軟件以及各個(gè)FPGA廠家自己推出的綜合開(kāi)發(fā)工具。


5、布局布線與實(shí)現(xiàn):布局布線可理解為利用實(shí)現(xiàn)工具把邏輯映射到目標(biāo)器件結(jié)構(gòu)的資源中,決定邏輯的最佳布局,選擇邏輯與輸入輸出功能鏈接的布線通道進(jìn)行連線,并產(chǎn)生相應(yīng)文件(如配置文件與相關(guān)報(bào)告);實(shí)現(xiàn)是將綜合生成的邏輯網(wǎng)表配置到具體的FPGA芯片上。由于只有FPGA芯片生產(chǎn)商對(duì)芯片結(jié)構(gòu)最為了解,所以布局布線必須選擇芯片開(kāi)發(fā)商提供的工具。


6、編程調(diào)試:設(shè)計(jì)的最后一步就是編程調(diào)試。芯片編程是指產(chǎn)生使用的數(shù)據(jù)文件(位數(shù)據(jù)流文件,Bitstream Generaon),將編程數(shù)據(jù)加載到FPGA芯片中;之后便可進(jìn)行上板測(cè)試。最后將FPGA文件(如.bit文件)從電腦下載到單板上的FPGA芯片中。

如何使用FPGA

FPGA開(kāi)發(fā)完畢,最終得到驗(yàn)證好的加載文件。輸出加載文件后,即可開(kāi)始正常業(yè)務(wù)處理和驗(yàn)證(以軟件加載方式為例,描述整個(gè)過(guò)程) 


1、邏輯加載;


2、單板軟件加載邏輯后,需要復(fù)位邏輯;


3、復(fù)位完成后,軟件需等待等待一段時(shí)間至邏輯鎖相環(huán)工作穩(wěn)定; 


4、軟件啟動(dòng)對(duì)邏輯的外部RAM、內(nèi)部Block RAM、DDRC等的自檢操作;


5、軟件完成自檢以后,對(duì)邏輯所有可寫(xiě)RAM空間及寄存器進(jìn)行初始化操作;


6、初始化完畢,軟件參考邏輯芯片手冊(cè)配置表項(xiàng)及寄存器;


7、邏輯準(zhǔn)備好,可以開(kāi)始處理業(yè)務(wù)。 


FPGA適用場(chǎng)景

FPGA適合非規(guī)則性多并發(fā)、密集計(jì)算及協(xié)議解析處理場(chǎng)景,例如人工智能、基因測(cè)序、視頻編碼、數(shù)據(jù)壓縮、圖片處理、網(wǎng)絡(luò)處理等各領(lǐng)域的加速。


文章評(píng)論

您需要登錄才可以對(duì)文章進(jìn)行評(píng)論。

沒(méi)有賬號(hào)?立即注冊(cè)

最新活動(dòng)
意見(jiàn)反饋
取消