faga

faga

FPGA,簡單的來說,即現場可程式門陣列,既解決了定製電路的不足,又克服了原有可程式器件門電路數有限的缺點。

互動名片

FPGA(Field-ProgrammableGateArray),即現場可程式門陣列,它是在PAL、GAL、CPLD等可程式器件的基礎上進一步發展的產物。它是作為專用積體電路(ASIC)領域中的一種半定製電路而出現的,既解決了定製電路的不足,又克服了原有可程式器件門電路數有限的缺點。

FPGA簡介

背景

見圖見圖

目前以硬體描述語言(Verilog或VHDL)所完成的電路設計,可以經過簡
單的綜合與布局,快速的燒錄至FPGA上進行測試,是現代IC設計驗證的技術主流。這些可編輯元件可以被用來實現一些基本的邏輯門電路(比如AND、OR、XOR、NOT)或者更複雜一些的組合功能比如解碼器或數學方程式。在大多數的FPGA裡面,這些可編輯的元件里也包含記憶元件例如觸發器(Flip-flop)或者其他更加完整的記憶塊。

系統設計師可以根據需要通過可編輯的連線把FPGA內部的邏輯塊連線起來,就好像一個電路試驗板被放在了一個晶片里。一個出廠後的成品FPGA的邏輯塊和連線可以按照設計者而改變,所以FPGA可以完成所需要的邏輯功能。

FPGA一般來說比ASIC(專用集成晶片)的速度要慢,無法完成複雜的設計,而且消耗更多的電能。但是他們也有很多的優點比如可以快速成品,可以被修改來改正程式中的錯誤和更便宜的造價。廠商也可能會提供便宜的但是編輯能力差的FPGA。因為這些晶片有比較差的可編輯能力,所以這些設計的開發是在普通的FPGA上完成的,然後將設計轉移到一個類似於ASIC的晶片上。另外一種方法是用CPLD(複雜可程式邏輯器件備)。

CPLD與FPGA的關係
早在1980年代中期,FPGA已經在PLD設備中紮根。CPLD和FPGA包括了一些相對大數量的可編輯邏輯單元。CPLD邏輯門的密度在幾千到幾萬個邏輯單元之間,而FPGA通常是在幾萬到幾百萬。

CPLD和FPGA的主要區別是他們的系統結構。CPLD是一個有點限制性的結構。這個結構由一個或者多個可編輯的結果之和的邏輯組列和一些相對少量的鎖定的暫存器。這樣的結果是缺乏編輯靈活性,但是卻有可以預計的延遲時間和邏輯單元對連線單元高比率的優點。而FPGA卻是有很多的連線單元,這樣雖然讓它可以更加靈活的編輯,但是結構卻複雜的多。

CPLD和FPGA另外一個區別是大多數的FPGA含有高層次的內置模組(比如加法器和乘法器)和內置的記憶體。一個因此有關的重要區別是很多新的FPGA支持完全的或者部分的系統內重新配置。允許他們的設計隨著系統升級或者動態重新配置而改變。一些FPGA可以讓設備的一部分重新編輯而其他部分繼續正常運行。

FPGA工作原理

FPGA採用了邏輯單元陣列LCA(LogicCellArray)這樣一個概念,內部包括可配置邏輯模組CLB(ConfigurableLogicBlock)、輸出輸入模組IOB(InputOutputBlock)和內部連線(interconnect)三個部分。現場可程式門陣列(FPGA)是可程式器件。與傳統邏輯電路和門陣列(如PAL,GAL及CPLD器件)相比,FPGA具有不同的結構,FPGA利用小型查找表(16×1RAM)來實現組合邏輯,每個查找表連線到一個D觸發器的輸入端,觸發器再來驅動其他邏輯電路或驅動I/O,由此構成了即可實現組合邏輯功能又可實現時序邏輯功能的基本邏輯單元模組,這些模組間利用金屬連線互相連線或連線到I/O模組。FPGA的邏輯是通過向內部靜態存儲單元載入編程數據來實現的,存儲在存儲器單元中的值決定了邏輯單元的邏輯功能以及個模組之間或模組與I/O間的連線方式,並最終決定了邏輯單元的邏輯功能以及各模組之間或模組與I/O間的聯接方式,並最終決定了FPGA所能實現的功能,FPGA允許無限次的編程.

FPGA晶片結構

 目前主流的FPGA仍是基於查找表技術的,已經遠遠超出了先前版本的基本性能,並且整合了常用功能(如RAM、時鐘管理和DSP)的硬核(ASIC型)模組。如圖1-1所示(註:圖1-1隻是一個示意圖,實際上每一個系列的FPGA都有其相應的內部結構),FPGA晶片主要由7部分完成,分別為:可程式輸入輸出單元、基本可程式邏輯單元、完整的時鐘管理、嵌入塊式RAM、豐富的布線資源、內嵌的底層功能單元和內嵌專用硬體模組。圖1-1FPGA晶片的內部結構FPGA的基本特點

FPGA晶片的內部結構FPGA晶片的內部結構

1.可程式輸入輸出單元(IOB)可程式輸入/輸出單元簡稱I/O單元,是晶片與外界電路的接口部分,完成不同電氣特性下對輸入/輸出信號的驅動與匹配要求,其示意結構如圖1-2所示。FPGA內的I/O按組分類,每組都能夠獨立地支持不同的I/O標準。通過軟體的靈活配置,可適配不同的電氣標準與I/O物理特性,可以調整驅動電流的大小,可以改變上、下拉電阻。目前,I/O口的頻率也越來越高,一些高端的FPGA通過DDR暫存器技術可以支持高達2Gbps的數據速率。 

 圖1-2典型的IOB內部結構示意圖

典型的IOB內部結構示意圖典型的IOB內部結構示意圖

外部輸入信號可以通過IOB模組的存儲單元輸入到FPGA的內部,也可以直接輸入FPGA內部。當外部輸入信號經過IOB模組的存儲單元輸入到FPGA內部時,其保持時間(HoldTime)的要求可以降低,通常默認為0。為了便於管理和適應多種電器標準,FPGA的IOB被劃分為若干個組(bank),每個bank的接口標準由其接口電壓VCCO決定,一個bank只能有一種VCCO,但不同bank的VCCO可以不同。只有相同電氣標準的連線埠才能連線在一起,VCCO電壓相同是接口標準的基本條件。

 2.可配置邏輯塊(CLB)CLB是FPGA內的基本邏輯單元。CLB的實際數量和特性會依器件的不同而不同,但是每個CLB都包含一個可配置開關矩陣,此矩陣由4或6個輸入、一些選型電路(多路復用器等)和觸發器組成。開關矩陣是高度靈活的,可以對其進行配置以便處理組合邏輯、移位暫存器或RAM。在Xilinx公司的FPGA器件中,CLB由多個(一般為4個或2個)相同的Slice和附加邏輯構成,如圖1-3所示。每個CLB模組不僅可以用於實現組合邏輯、時序邏輯,還可以配置為分散式RAM和分散式ROM。

圖1-3典型的CLB結構示意圖

典型的CLB結構示意圖典型的CLB結構示意圖

Slice是Xilinx公司定義的基本邏輯單位,其內部結構如圖1-4所示,一個Slice由兩個4輸入的函式、進位邏輯、算術邏輯、存儲邏輯和函式復用器組成。算術邏輯包括一個異或門(xorg)和一個專用與門(MULTAND),一個異或門可以使一個Slice實現2bit全加操作,專用與門用於提高乘法器的效率;進位邏輯由專用進位信號和函式復用器(MUXC)組成,用於實現快速的算術加減法操作;4輸入函式發生器用於實現4輸入LUT、分散式RAM或16比特移位暫存器(Virtex-5系列晶片的Slice中的兩個輸入函式為6輸入,可以實現6輸入LUT或64比特移位暫存器);進位邏輯包括兩條快速進位鏈,用於提高CLB模組的處理速度。

圖1-4典型的4輸入Slice結構示意圖

典型的4輸入Slice結構示意圖典型的4輸入Slice結構示意圖

業內大多數FPGA均提供數字時鐘管理(Xilinx的全部FPGA均具有這種特性)。Xilinx推出最先進的FPGA提供數字時鐘管理和相位環路鎖定。相位環路鎖定能夠提供精確的時鐘綜合,且能夠降低抖動,並實現過濾功能。4.嵌入式塊RAM(BRAM)大多數FPGA都具有內嵌的塊RAM,這大大拓展了FPGA的套用範圍和靈活性。塊RAM可被配置為單連線埠RAM、雙連線埠RAM、內容地址存儲器(CAM)以及FIFO等常用存儲結構。RAM、FIFO是比較普及的概念,在此就不冗述。CAM存儲器在其內部的每個存儲單元中都有一個比較邏輯,寫入CAM中的數據會和內部的每一個數據進行比較,並返回與連線埠數據相同的所有數據的地址,因而在路由的地址交換器中有廣泛的套用。除了塊RAM,還可以將FPGA中的LUT靈活地配置成RAM、ROM和FIFO等結構。在實際套用中,晶片內部塊RAM的數量也是選擇晶片的一個重要因素。單片塊RAM的容量為18k比特,即位寬為18比特、深度為1024,可以根據需要改變其位寬和深度,但要滿足兩個原則:首先,修改後的容量(位寬深度)不能大於18k比特;其次,位寬最大不能超過36比特。當然,可以將多片塊RAM級聯起來形成更大的RAM,此時只受限於晶片內塊RAM的數量,而不再受上面兩條原則約束。5.豐富的布線資源布線資源連通FPGA內部的所有單元,而連線的長度和工藝決定著信號在連線上的驅動能力和傳輸速度。FPGA晶片內部有著豐富的布線資源,根據工藝、長度、寬度和分布位置的不同而劃分為4類不同的類別。第一類是全局布線資源,用於晶片內部全局時鐘和全局復位/置位的布線;第二類是長線資源,用以完成晶片Bank間的高速信號和第二全局時鐘信號的布線;第三類是短線資源,用於完成基本邏輯單元之間的邏輯互連和布線;第四類是分散式的布線資源,用於專有時鐘、復位等控制信號線。在實際中設計者不需要直接選擇布線資源,布局布線器可自動地根據輸入邏輯網表的拓撲結構和約束條件選擇布線資源來連通各個模組單元。從本質上講,布線資源的使用方法和設計的結果有密切、直接的關係。6.底層內嵌功能單元內嵌功能模組主要指DLL(DelayLockedLoop)、PLL(PhaseLockedLoop)、DSP和CPU等軟處理核(SoftCore)。現在越來越豐富的內嵌功能單元,使得單片FPGA成為了系統級的設計工具,使其具備了軟硬體聯合設計的能力,逐步向SOC平台過渡。DLL和PLL具有類似的功能,可以完成時鐘高精度、低抖動的倍頻和分頻,以及占空比調整和移相等功能。Xilinx公司生產的晶片上集成了DLL,Altera公司的晶片集成了PLL,Lattice公司的新型晶片上同時集成了PLL和DLL。PLL和DLL可以通過IP核生成的工具方便地進行管理和配置。DLL的結構如圖1-5所示。

圖1-5典型的DLL模組示意圖

7.內嵌專用硬核

典型的DLL模組示意圖典型的DLL模組示意圖

 內嵌專用硬核是相對底層嵌入的軟核而言的,指FPGA處理能力強大的硬核(HardCore),等效於ASIC電路。為了提高FPGA性能,晶片生產商在晶片內部集成了一些專用的硬核。例如:為了提高FPGA的乘法速度,主流的FPGA中都集成了專用乘法器;為了適用通信匯流排與接口標準,很多高端的FPGA內部都集成了串並收發器(serdes),可以達到數十Gbps的收發速度。Xilinx公司的高端產品不僅集成了PowerPC系列CPU,還內嵌了DSPCore模組,其相應的系統級設計工具是EDK和PlatformStudio,並依此提出了片上系統(SystemonChip)的概念。通過PowerPC、Miroblaze、Picoblaze等平台,能夠開發標準的DSP處理器及其相關套用,達到SOC的開發目的。

FPGA的基本特點

1)採用FPGA設計ASIC電路(專用積體電路),用戶不需要投片生產,就能得到合用的晶片。2)FPGA可做其它全定製或半定製ASIC電路的中試樣片。3)FPGA內部有豐富的觸發器和I/O引腳。4)FPGA是ASIC電路中設計周期最短、開發費用最低、風險最小的器件之一。5)FPGA採用高速CMOS工藝,功耗低,可以與CMOS、TTL電平兼容。可以說,FPGA晶片是小批量系統提高系統集成度、可靠性的最佳選擇之一。FPGA是由存放在片內RAM中的程式來設定其工作狀態的,因此,工作時需要對片內的RAM進行編程。用戶可以根據不同的配置模式,採用不同的編程方式。加電時,FPGA晶片將EPROM中數據讀入片內編程RAM中,配置完成後,FPGA進入工作狀態。掉電後,FPGA恢復成白片,內部邏輯關係消失,因此,FPGA能夠反覆使用。FPGA的編程無須專用的FPGA編程器,只須用通用的EPROM、PROM編程器即可。當需要修改FPGA功能時,只需換一片EPROM即可。這樣,同一片FPGA,不同的編程數據,可以產生不同的電路功能。因此,FPGA的使用非常靈活。

FPGA配置模式

FPGA有多種配置模式:並行主模式為一片FPGA加一片EPROM的方式;主從模式可以支持一片PROM編程多片FPGA;串列模式可以採用串列PROM編程FPGA;外設模式可以將FPGA作為微處理器的外設,由微處理器對其編程。如何實現快速的時序收斂、降低功耗和成本、最佳化時鐘管理並降低FPGA與PCB並行設計的複雜性等問題,一直是採用FPGA的系統設計工程師需要考慮的關鍵問題。如今,隨著FPGA向更高密度、更大容量、更低功耗和集成更多IP的方向發展,系統設計工程師在從這些優異性能獲益的同時,不得不面對由於FPGA前所未有的性能和能力水平而帶來的新的設計挑戰。例如,領先FPGA廠商Xilinx最近推出的Virtex-5系列採用65nm工藝,可提供高達33萬個邏輯單元、1,200個I/O和大量硬IP塊。超大容量和密度使複雜的布線變得更加不可預測,由此帶來更嚴重的時序收斂問題。此外,針對不同套用而集成的更多數量的邏輯功能、DSP、嵌入式處理和接口模組,也讓時鐘管理和電壓分配問題變得更加困難。幸運地是,FPGA廠商、EDA工具供應商正在通力合作解決65nmFPGA獨特的設計挑戰。不久以前,Synplicity與Xilinx宣布成立超大容量時序收斂聯合工作小組,旨在最大程度地幫助系統設計工程師以更快、更高效的方式套用65nmFPGA器件。設計軟體供應商Magma推出的綜合工具BlastFPGA能幫助建立最佳化的布局,加快時序的收斂。最近FPGA的配置方式已經多元化!

FPGA主要生產廠商

1、Altera 

2、Xilinx

3、ACTEL

4、Lattice

其中Altera作為世界老牌可程式邏輯器件的廠家,是當前世界範圍內市場占有率最大的廠家,它和Xilinx主要生產一般用途FPGA,其主要產品採用RAM工藝。Actel主要提供非易失性FPGA,產品主要基於反熔絲工藝和FLASH工藝。

FPGA設計的注意事項

 不管你是一名邏輯設計師、硬體工程師或系統工程師,甚或擁有所有這些頭銜,只要你在任何一種高速和多協定的複雜系統中使用了FPGA,你就很可能需要努力解決好器件配置、電源管理、IP集成、信號完整性和其他的一些關鍵設計問題。不過,你不必獨自面對這些挑戰,因為在當前業內領先的FPGA公司里工作的套用工程師每天都會面對這些問題,而且他們已經提出了一些將令你的設計工作變得更輕鬆的設計指導原則和解決方案

I/O信號分配

 可提供最多的多功能引腳、I/O標準、端接方案和差分對的FPGA在信號分配方面也具有最複雜的設計指導原則。儘管Altera的FPGA器件沒有設計指導原則(因為它實現起來比較容易),但賽靈思的FPGA設計指導原則卻很複雜。但不管是哪一種情況,在為I/O引腳分配信號時,都有一些需要牢記的共同步驟:1.使用一個電子數據表列出所有計畫的信號分配,以及它們的重要屬性,例如I/O標準、電壓、需要的端接方法和相關的時鐘。2.檢查製造商的塊/區域兼容性準則。3.考慮使用第二個電子數據表制訂FPGA的布局,以確定哪些管腳是通用的、哪些是專用的、哪些支持差分信號對和全局及局部時鐘、哪些需要參考電壓。4.利用以上兩個電子數據表的信息和區域兼容性準則,先分配受限制程度最大的信號到引腳上,最後分配受限制最小的。例如,你可能需要先分配串列匯流排和時鐘信號,因為它們通常只分配到一些特定引腳。5.按照受限制程度重新分配信號匯流排。在這個階段,可能需要仔細權衡同時開關輸出(SSO)和不兼容I/O標準等設計問題,尤其是當你具有很多個高速輸出或使用了好幾個不同的I/O標準時。如果你的設計需要局部/區域時鐘,你將可能需要使用高速匯流排附近的管腳,最好提前記住這個要求,以免最後無法為其安排最合適的引腳。如果某個特定塊所選擇的I/O標準需要參考電壓信號,記住先不要分配這些引腳。差分信號的分配始終要先於單端信號。如果某個FPGA提供了片內端接,那么它也可能適用於其他兼容性規則。6.在合適的地方分配剩餘的信號。在這個階段,考慮寫一個只包含連線埠分配的HDL檔案。然後通過使用供應商提供的工具或使用一個文本編輯器手動創建一個限制檔案,為I/O標準和SSO等增加必要的支持信息。準備好這些基本檔案後,你可以運行布局布線工具來確認是否忽視了一些準則或者做了一個錯誤的分配。這將使你在設計的初始階段就和布局工程師一起工作,共同規劃PCB的走線、冗餘規劃、散熱問題和信號完整性。FPGA工具可能可以在這些方面提供幫助,並協助你解決這些問題,因此你必須確保了解你的工具包的功能。你諮詢一位布局專家的時間越晚,你就越有可能需要去處理一些複雜的問題和設計反覆,而這些可能可以通過一些前期分析加以避免。一旦你實現了滿意的信號分配,你就要用限制檔案鎖定它們。-------------------基於CMOS的設計主要消耗三類功率:內部的(短路)、漏電的(靜態的)以及開關的(電容)。當門電路瞬變時,VDD與地之間短路連線消耗內部功率。漏電功耗是CMOS工藝普遍存在的寄生效應引起的。而開關功耗則是自負載電容,放電造成的。開關功耗與短路功耗合在一起稱為動態功耗。下面介紹降低靜態功耗和動態功耗的設計技巧。

降低靜態功耗

簡介
雖然靜態電流與動態電流相比可以忽略不計,然而對電池供電的手持設備就顯得十分重要,在設備通電而不工作時更是如此。靜態電流的因素眾多,包括處於沒有完全關斷或接通的狀態下的I/O以及內部電晶體的工作電流、內部連線的電阻、輸入與三態電驅動器的上拉或下拉電阻。在易失性技術中,保持編程信息也需一定的靜態功率。抗熔斷是一種非易失性技術,因此信息存儲不消耗靜態電流。
幾種降低靜態功耗的設計方法
·驅動輸入應有充分的電壓電平,因而所有電晶體都是完全通導或關閉的。·由於I/O線上的上拉或下拉電阻要消耗一定的電流,因此儘量避免使用這些電阻。·少用驅動電阻或雙極電晶體,這些器件需維持一個恆定電流,從而增加了靜態電流。·將時鐘引腳按參數表推薦條件連線至低電平。懸空的時鐘輸入會大大增加靜態電流。·在將設計畫分為多個器件時,減少器件間I/O的使用。eX器件LP方式引腳的使用ActeleX系列設計了特殊的低功率“休眠”模式。在該引腳驅動至高電平800ns後,器件進入極低功率待機模式,待機電流小於100μA。在低功率模式下,所有I/O(除時鐘輸入外)都處於三態,而核心全部斷電。由於核心被斷電,觸發器中存儲的信息會丟失,在進入工作模式(在引腳驅動至低平200ms後)時,用戶需再次對器件初始化。同樣,用戶也應關閉所有通過CLKA、CLKB以及HCLK輸入的時鐘。然而這些時鐘並不處於三態,時鐘就可進入器件,從而增加功耗,因此在低功率模式下,時鐘輸入必須處於邏輯0或邏輯1。有時用戶很難阻止時鐘進入器件。在此場合,用戶可使用與CLKA或CLKA相鄰的正常輸入引腳並在設計中加進CLKINT。這樣,時鐘將通過靠近時鐘引腳的正常輸入進入器件,再通過CLKINT向器件提供時鐘資源。採用這種輸入電路後,由於常規I/O是三態的,因此用戶不必擔心時鐘進入器件。當然,增加一級門電路會產生0.6ns的較大時鐘延時,幸好這在多數低功率設計中是可以接受的。注意應將與CLKINT緩衝器相關的CLKA或CLKB引腳接地。此外還要注意,CLKINT只可用作連線時鐘,HCLK並不具備將內部走線網連線到HCLK的能力,因而HCLK資源不能被常規輸入驅動。換句話說,如果使用LP引腳就不能使用HCLK;使用HCLK時就應在外部截斷時鐘信號。

降低動態功耗

動態功耗是在時鐘工作且輸入正在開關時的功耗。對CMOS電路,動態功耗基本上確定了總功耗。動態功耗包括幾個成分,主要是電容負載充電與放電(內部與I/O)以及短路電流。多數動態功率是內部或外部電容向器件充、放電消耗的。如果器件驅動多個I/O負載,大量的動態電流構成總功耗的主要部分。對設計中給定的驅動器,動態功耗由下式計算p=CL×V2DD×f式中,CL是電容負載,VDD是電源電壓,f則是開關頻率。總功耗是每個驅動器功耗之總和。由於VDD是固定的,降低內部功耗就要降低平均邏輯開關頻率,減少每個時鐘沿處的邏輯開關總數、減少連線網路,特別是高頻信號連線網路中的電容值。對低功率設計,需要從系統至工藝的每個設計級別中採取相應預防措施,級別越高,效果越好。

FPGA與CPLD的辨別和分類

FPGA與CPLD的辨別和分類主要是根據其結構特點和工作原理。通常的分類方法是:將以乘積項結構方式構成邏輯行為的器件稱為CPLD,如Lattice的ispLSI系列、Xilinx的XC9500系列、Altera的MAX7000S系列和Lattice(原Vantis)的Mach系列等。將以查表法結構方式構成邏輯行為的器件稱為FPGA,如Xilinx的SPARTAN系列、Altera的FLEX10K或ACEX1K系列等。儘管FPGA和CPLD都是可程式ASIC器件,有很多共同特點,但由於CPLD和FPGA結構上的差異,具有各自的特點:①CPLD更適合完成各種算法和組合邏輯,FPGA更適合於完成時序邏輯。換句話說,FPGA更適合於觸發器豐富的結構,而CPLD更適合於觸發器有限而乘積項豐富的結構。②CPLD的連續式布線結構決定了它的時序延遲是均勻的和可預測的,而FPGA的分段式布線結構決定了其延遲的不可預測性。③在編程上FPGA比CPLD具有更大的靈活性。CPLD通過修改具有固定內連電路的邏輯功能來編程,FPGA主要通過改變內部連線的布線來編程;FPGA可在邏輯門下編程,而CPLD是在邏輯塊下編程。④FPGA的集成度比CPLD高,具有更複雜的布線結構和邏輯實現。⑤CPLD比FPGA使用起來更方便。CPLD的編程採用E2PROM或FASTFLASH技術,無需外部存儲器晶片,使用簡單。而FPGA的編程信息需存放在外部存儲器上,使用方法複雜。⑥CPLD的速度比FPGA快,並且具有較大的時間可預測性。這是由於FPGA是門級編程,並且CLB之間採用分散式互聯,而CPLD是邏輯塊級編程,並且其邏輯塊之間的互聯是集總式的。⑦在編程方式上,CPLD主要是基於E2PROM或FLASH存儲器編程,編程次數可達1萬次,優點是系統斷電時編程信息也不丟失。CPLD又可分為在編程器上編程和在系統編程兩類。FPGA大部分是基於SRAM編程,編程信息在系統斷電時丟失,每次上電時,需從器件外部將編程數據重新寫入SRAM中。其優點是可以編程任意次,可在工作中快速編程,從而實現板級和系統級的動態配置。⑧CPLD保密性好,FPGA保密性差。⑨一般情況下,CPLD的功耗要比FPGA大,且集成度越高越明顯

FPGA的套用

1.電路設計中FPGA的套用
連線邏輯,控制邏輯是FPGA早期發揮作用比較大的領域也是FPGA套用的基石.事實上在電路設計中套用FPGA的難度還是比較大的這要求開發者要具備相應的硬體知識(電路知識)和軟體套用能力(開發工具)這方面的人才總是緊缺的,往往都從事新技術,新產品的開發成功的產品將變成市場主流基礎產品供產品設計者套用在不遠的將來,通用和專用IP的設計將成為一個熱門行業!搞電路設計的前提是必須要具備一定的硬體知識.在這個層面,乾重於學,當然,快速入門是很重要的,越好的位子越不等人電路開發是黃金飯碗.
2.產品設計
把相對成熟的技術套用到某些特定領域如通訊,視頻,信息處理等等開發出滿足行業需要並能被行業客戶接受的產品這方面主要是FPGA技術和專業技術的結合問題,另外還有就是與專業客戶的界面問題產品設計還包括專業工具類產品及民用產品,前者重點在性能,後者對價格敏感產品設計以實現產品功能為主要目的,FPGA技術是一個實現手段在這個領域,FPGA因為具備接口,控制,功能IP,內嵌CPU等特點有條件實現一個構造簡單,固化程度高,功能全面的系統產品設計將是FPGA技術套用最廣大的市場,具有極大的爆發性的需求空間產品設計對技術人員的要求比較高,路途也比較漫長不過現在整個行業正處在組建"首發團隊"的狀態,只要加入,前途光明產品設計是一種職業發展方向定位,不是簡單的愛好就能做到的!產品設計領域會造就大量的企業和企業家,是一個近期的發展熱點和機遇
3.系統級套用
系統級的套用是FPGA與傳統的計算機技術結合,實現一種FPGA版的計算機系統如用Xilinx V-4,V-5系列的FPGA,實現內嵌POWER PC CPU,然後再配合各種外圍功能,實現一個基本環境,在這個平台上跑LINUX等系統這個系統也就支持各種標準外設和功能接口(如圖象接口)了這對於快速構成FPGA大型系統來講是很有幫助的。這種"山寨"味很濃的系統早期優勢不一定很明顯,類似ARM系統的境況但若能慢慢發揮出FPGA的優勢,逐漸實現一些特色系統也是一種發展方向。若在系統級套用中,開發人員不具備系統的擴充開發能力,只是搞搞編程是沒什麼意義的,當然設備驅動程式的開發是另一種情況,搞系統級套用看似起點高,但不具備深層開發能力,很可能會變成愛好者,就如很多人會做網頁但不能稱做會編程類似以上是幾點個人開發,希望能幫助想學FPGA但很茫然無措的人理一理思路。這是一個不錯的行業,有很好的個人成功機會。但也肯定是一個競爭很激烈的行業,關鍵看的就是速度和深度當然還有市場適應能力。

最新套用

台北時間2010年12月30日訊息,美英兩國科學家聯合開發了一款運算速度超快的電腦晶片,使當前台式機的運算能力提升20倍。當前的個人電腦使用雙核、4核、16核處理器來執行各項任務。如今,美英研究人員開發的中央處理器(CPU)將1000個核心有效集成於一個晶片上。這項突破或將在今後幾年開啟一個超高速運算的新時代,使家庭用戶不再對運行緩慢的電腦系統感到沮喪。雖然速度更快,但由於新型“超級”電腦的能耗遠低於當前電腦,所以更加環保。研究人員採用了一種名為“現場可程式門陣列”(以下簡稱“FPGA”)的晶片,使得微晶片就像都含有數百萬個電晶體一樣,而電晶體則是任何電路的基本組成部分。不過,FPGA晶片可由用戶安裝到特定電路,它們的功能不是在出廠時就設定好的。這樣一來,用戶可以將電晶體劃分成一個個“小群體”,要求每個“小群體”完成不同的任務。通過在FPGA晶片內創建逾1000個微電路,研究人員便將這個晶片變成了1000個核心的處理器——每個核心都可以遵照自己的指令工作。在測試中,FPGA晶片每秒能處理5GB的數據,處理速度大概相當於當前台式機的20倍。這項研究由英國格拉斯哥大學的韋姆·范德堡韋德(WimVanderbauwhede)博士和美國麻薩諸塞大學盧維爾分校的同行共同實施。范德堡韋德說:“FPGA晶片沒有套用於標準電腦上,原因是對FPGA晶片編程相當困難。FPGA晶片的處理能力強大,由於速度更快,能耗相當低,是我們更為環保的選擇。”雖然當前市場上銷售的電腦大多數核心超過一個,可以同時實施不同任務,但傳統多核處理器只能共用一個存儲源,這降低了運算速度。范德堡韋德的研究團隊給每個核心分配一定量的專用存儲空間,從而加快了處理器的運算速度。一名用戶坐在運算速度很慢的台式機前面,看上去一籌莫展。在測試中,FPGA晶片每秒能處理5GB的數據,處理速度大概相當於當前台式機的20倍范德堡韋德博士說:“這只是初期概念驗證研究,我們試圖展示對FPGA編程的便捷方式,令其超高速處理的潛力可以更為廣泛地套用於未來的運算器和電子設備上。雖然現有許多技術充分使用FPGA晶片,如等離子電視、液晶電視和電腦網路路由器,但它們在標準台式機上的套用卻十分有限。”“但是,我們看到,包括英特爾和ARM在內的一些廠商已經宣布將開發集成傳統CPU與FPGA晶片的微晶片。我認為此類處理器會得到更廣泛的套用,有助於在今後幾年進一步提升電腦運算速度。”范德堡韋德希望在2011年3月套用重構運算國際研討會上詳細介紹他的研究發現。

相關詞條

相關搜尋

熱門詞條

聯絡我們