您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關FPGA芯片該如何選型,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
FPGA芯片如何選型
在FPGA的設計與研發過程中,我相信不少工程師應該遇到過FPGA芯片選型這種頭疼的事情。為什么說是頭疼呢?這個說白了還不是研發成本惹的禍,哈哈哈,是不是一語中的。在做設計或者做研發的時候,大公司還好一些,基本很少會出現需要研發工程師去選型的問題,如果你是主管或者負責人除外。在很多小公司或者小團隊中,不懂技術的老板給你撂下一句話,你來搞定。這個時候,你應該清楚,“你來搞定”這四個字包含哪些,老板的意思就是就這么多錢,就這么長時間,你得加把勁了。有點太直白了,哈哈哈,那下面我們就來聊聊FPGA芯片如何選型,僅供參考,交流學習,共同進步。
關于FPGA芯片選型,這個問題真的很嚴肅,因為你既要考慮到性能還要兼顧到成本,說白了也就是性價比。選型,我們肯定要從現有的FPGA芯片中去選,這個時候就很考驗工程師的知識廣度儲備了,如果你了解的芯片比較多比較詳細,那再好不過了。如果你接觸的很少,這個時候就需要你去瘋狂閱讀了。下面就當下應用比較多的Intel、Xilinx,Lattice、Actel 數家廠商簡單聊聊,其他廠商的選型可以對應延伸類似選擇。
一、選型前準備
在我們做芯片選型的時候,一開始要根據項目的實際情況對選型芯片做個預估,要對有可能滿足需求的芯片有整體的了解,也就是說要盡可能多的獲取芯片的資料。獲取資料最便捷的途徑就是這些廠商的官方網站,就Intel(Altera)、Xilinx、Lattice、Microsemi(Actel)四家來說。
一般情況下,官方網站都會按照產品系列或應用場合列出所有的產品,直觀的告訴你某個系列產品的應用場合。比如在Intel Altera的網站,就會明確標明它的三大類的FPGA產品,高端的Stratix系列,中端的Arria系列和低成本的Cyclone系列。有的廠家每年都會推出一個產品選型手冊,很多公司網站上還提供評估工具。
如果你經常逛一逛這些廠家的官方網站,看一些概述類的文檔,當對各FPGA廠家的產品系列有比較廣泛的了解以后,選型就不會成為太大的問題了。確定要做的方向之前,如果能夠找到類似的產品,可以研究下這些產品所采用的方案,如果找不到,可以通過檢索知網等數據庫,也可以看看其他人做類似的方向所采用的方案,這也是非常好的一個參考,需要注意的是很多學術研究型的方案并不是經過產品驗證的,有些方案還是比較滯后的,總之需要做一個綜合的評估。
二、FPGA廠商的選擇
如上所述,Intel(Altera)、Xilinx、Lattice、Microsemi(Actel)四家廠商來說,每個廠家的產品都有各自的特色和適用領域。選擇廠家是一個相對比較復雜,要綜合考慮下面幾個因素:
1、要項目特殊的需求。比如說你要選擇4mmx4mm封裝的小體積同時又不需要配置芯片的FPGA,那么可能Actel就是你唯一的選擇。如果你需要一個帶ADC的FPGA芯片,那么可能你只能選擇Xilinx和Actel的某些帶ADC的FPGA;
2、看芯片廠商的供貨。好的供貨渠道對于產品的量產會有比較好的保證,如果沒有特殊渠道還是選擇那些比較好買并且廣泛使用的型號;
3、看芯片廠商的報價。較低的價格會降低產品的成本,尤其是在批量使用的時候,節省成本費用,在滿足功能需求的同時,會有效的提高產品的競爭力;
4、看己方技術人員。就是技術人員對所有符合要求的廠家的產品的熟悉程度。使用最熟悉的產品,可以有效的縮短開發的難度,減少開發時間,提高產品上市時間;
5、看芯片的成熟度。是不是有較好的開發軟件平臺,是不是有較好的技術支持,是不是有大批量的應用,是否可以比較容易的獲取到資源等等;
6、……
三、芯片系列的選擇
每個FPGA的生產廠商都有多個系列的產品,來滿足不同應用場合對性能和價格的不同需求。例如對于Intel Altera公司的FPGA產品,主要分為三個系列,分別是高端的Stratix,中端的Arria和低端的Cyclone。每一個系列FPGA具體的性能特點也都可以在Intel的官方網站上找到相應的文檔。在選擇的時候,要根據實際的項目需求,來選擇合適的系列。
比如說,如果需要實現一個比較簡單的控制功能,對資源的要求比較低,且成本控制要求比較高,那么就需要從Cyclone系列的FPGA入手,評估這一系列的FPGA是否可以滿足要求。但如果要做比較大型的ASIC芯片的validation,對FPGA的邏輯資源,帶寬以及運行頻率的要求都比較高,那么就要去評估Stratix系列的FPGA。有一個基本的原則是需要注意的,可以用低端的芯片完成的工作,就不要采用高端的芯片,目標是達到性能和成本的最佳平衡點。
每一個系列的FPGA芯片,可能又分為好幾代的產品,比如Intel Altera的Cyclone系列,到現在已經發展了Cyclone,CycloneII,CycloneIII,CycloneIV以及CycloneVI等多款產品。這種產品的升級換代很大程度上都是由于半導體工藝的升級換代引起的。
隨著半導體工藝的升級換代,FPGA芯片也在升級換代的過程中,提供了更強大的功能,更低的功耗和更好的性價比。那么在確定一個系列的FPGA后,選擇哪一代的產品則又成為一個問題。個人建議是在價格和供貨都沒有問題的情況下,選擇越新的產品越好。一定不能選擇廠家已經或者即將停產的芯片。
任何產品都是有生命周期的,目標就是盡量保證在產品的生命周期里,所用到的芯片的生命周期還沒有結束。在產品初期規劃時做芯片選型,要盡可能選用廠家剛量產或者量產不久的產品,甚至在有確切的供貨渠道的情況下,可以選擇廠家即將量產的芯片。
四、芯片的綜合考量
舉例說明,在CycloneIII這個系列的FPGA中,又分為兩個不同的子系列,普通的CycloneIII和CycloneIII LS。在每個子系列里,根據片內資源的不同又分為更多的型號,比如普通的CycloneIII子系列,就包含了EP3C5,EP3C10,EP3C16,EP3C25,EP3C40,EP3C55,EP3C80和EP3C120等8種型號的芯片。每個型號的芯片又根據通用I/O口數量和封裝區分出不同的芯片。比如,EP3C5的芯片又有EP3C5E144,EP3C5M164,EP3C5F256和EP3C5U256這四種不同的芯片。而每一種芯片,又有不同的速度等級,比如說EP3C5E144就有C7,C8,I7和A7四個速度等級。
下面的表格從不同的角度列出了普通CycloneIII系列的FPGA的參數,這些表格都源自于CycloneIII芯片的官方文檔:
4.1、各型號芯片的片內資源表。這個表格中給出了每個型號芯片的片內資源,其中Maximum User I/Os給出了該型號最多擁有的User I/O的數量,但需要注意的是,不同的封裝擁有的User I/O的數量并不相同。
4.2、各型號芯片的封裝信息。下面的表格給出了各型號芯片的封裝信息,以及該封裝下,芯片所具有的可用I/O的數量和查分信號通道的數量。
在選擇具體的芯片型號以及封裝的時候,要根據下面幾個方面做綜合考量:
4.2.1、片上資源。要根據設計的大小選擇合適的片上資源。這個是比較難確定的一個參數,自己做的設計到底有多大,需要多少片上資源,很難一下子確定下來。比較推薦的一個方式是先拿之前的設計去綜合后映射到某一個芯片上,看看需要占用多少的片內資源,然后評估要做的新的設計跟之前的大小,做換算后得到需要片上資源的數量。另外的一種方式就是先完成新的設計,直接綜合出來映射到不同型號的芯片上,然后評估哪一種芯片合適。還有一個需要注意的地方就是,不能選擇片上資源剛剛夠用的芯片,要留有一定的余量,以便于后期設計錯誤的修正和升級。
4.2.2、封裝。選擇封裝,主要需要在兩個方面考量,第一個就是可用的I/O口的數量。第二個就是封裝的尺寸。I/O數量是一個必要的條件,先要根據這個條件篩選出可以用的芯片。然后在篩選出來的芯片中,再根據封裝類型,尺寸和pitch尺寸選擇合適的芯片。在封裝尺寸符合要求的情況下,盡量選擇有利于PCB設計和生產的封裝。比如如果有TQFP封裝的芯片,尺寸又符合項目的需求,那么就不要選擇BGA封裝的。對于BGA封裝的芯片,如果有pitch為1.0mm的可以滿足要求,就不要選擇pitch為0.5mm的。這直接影響到PCB設計難度,制造成本和良率。
3、速度等級。速度等級是一個相對比較獨立的參數。要根據實際設計所能綜合出來的最高運行頻率和需求的運行頻率做比較,盡量選用速度等級比較慢的芯片。當所有的速度等級都不能滿足需要的時候,更多的要從優化設計的角度來提高設計本身所能達到的最高運行頻率。
上述就是小編為大家分享的FPGA芯片該如何選型了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。