歡迎光臨!1kic網專注于為電子元器件行業提供免費及更實惠的芯片ic交易網站。
FPGA到底是什么,以及其開發流程簡述
來源:互聯網 | 作者:中華ic網整理 | 發表于:2015-12-08
FPGA是一種器件。其英文名 feild programable gate arry 。很長,但不通俗。通俗來說,是一種功能強大似乎無所不能的器件。通常用于通信、網絡、圖像處理、工業控制等不同領域的器件。就像ARM、DSP等嵌入式器件一樣,成為無數碼農碼工們情感傾瀉而出的代碼真正獲得生命的地方。

       FPGA是一種器件。其英文名 feild programable  gate arry 。很長,但不通俗。通俗來說,是一種功能強大似乎無所不能的器件。通常用于通信、網絡、圖像處理、工業控制等不同領域的器件。就像ARM、DSP等嵌入式器件一樣,成為無數碼農碼工們情感傾瀉而出的代碼真正獲得生命的地方。只不過,一樣的編程,卻是不一樣的思想。嵌入式軟件人員看到的是C。而FPGA工程師看到是硬件描述語言,verilog或VHDL。軟件看到是函數、對象、重構。FPGA工程師則是模塊、流水、復用。從現象上看,都是代碼到下載程序再到硬件上運行。不能只看現象而忽略本質。

      FPGA 開發本質上是設計一顆IC,不是所有verilog/VHDL代碼,都能獲得青睞去流片成為真正的芯片,而更多的則成為運行在FPGA器件上,成為完成相同功能的替代品。其實現的功能卻一點也不遜色于百萬身價流片的近親。從而成為獨樹一幟的行業。

      FPGA開發的流程,是通過verilog/VHDL等硬件描述語言通過EDA工具編譯、綜合、布局布線成為下載文件,最終加載到FPGA器件中去,完成所實現的功能。那硬件描述語言描述的是什么?這里描述的就是組合邏輯電路和時序邏輯電路。組合邏輯電路就是大家所熟知的 與門、或門、非門,時序邏輯電路則是觸發器。

      數字芯片上絕大部分邏輯都是這兩種邏輯實現的。也就是基本上每個電子行業的人所學過的數字電路。順便說一下,感謝香農大師,在其碩士畢業論文《繼電器與開關電路的符號分析》就奠定了數字電路的的根基。只不過在FPGA中,與或非的操作變成了查找表的操作。于是所有的數字電路變成了查找表和寄存器,這就構成了FPGA的基礎。查找表負責邏輯實現,寄存器存儲電路狀態。二者配合,雙劍合璧,天衣無縫。這是最初的FPGA的雛形。

      現代FPGA內部出了查找表和寄存器之外,還有RAM塊,用于存儲大量的數據塊,這是因為RAM塊較寄存器來存儲大量數據更能節省芯片實現的面積。FPGA內部的時序電路則需要時鐘的輸入,通常FPGA內部需要時鐘種類較多,因此需要在片內產生所需的的相關的時鐘,如不同頻率,不同相位的時鐘,因此時鐘管理單元DCM/PLL也是必不可少的內部部件。

      除此之外,FPGA內部還包括接口I/O,I/O分為普通I/O和高速I/O,高速I/O支持例如高速的SERDES,用于實現XAUI,PCIE等高速接口,這些接口動輒幾Gbps到10Gbps以上。此外種類多種多樣的硬核IP也是各FPGA廠商差異化競爭利器,例如POWERPC、ARM等硬核IP。從而構成CPU FPGA于一體的集可編程性和可重構的處理平臺。因此,相對來所,FPGA雖然發展有二三十年的歷史,其基本架構一直不變不大。      

        回到問題開始的地方,FPGA的英文翻譯過來是現場可編程門陣列。這是相對ASIC來說的,ASIC的硬件也可看做是門陣列,但是其是非可編程的器件。流片完成其功能就固化了,而FPGA的可編程性就在其能夠重新下載配置文件,來改變其內在的功能,這就是其可編程性的由來。從前端開發流程來說,FPGA和ASIC開發并無二至。由于ASIC開發一次性投入成本較高,FPGA無疑是一種經濟的替代方案,用于實現的高速的數據并行處理。如業務能夠支撐大規模應用并且協議固化,則能夠分攤成本的ASIC實現就有成本的優勢。

       FPGA作為一種器件,技術上主要壟斷在少數大公司手中,那就是雙巨頭ALTERAXILINX。除此之外還有一些份額相對較小的公司,例如ACTEL和LATTICE。不止是FPGA的硬件芯片,其配套的EDA工具技術壁壘更高。因此相對于CPU來說,FPGA的國產化更不樂觀,不過已經有國內的廠商來從事這一行業,例如國微和京微雅格等,也在一些細分市場上推出自己的FPGA產品。

分享到:

1kic網-首個免費IC網-電子元器件ic交易網-芯片集成電路代理商供應商查詢

 
日本亚欧乱色视频在线_农村妇女野外牲交视频_中文无码肉感爆乳在线