FPGA器件選型研究
發布時間:2008/6/16 0:00:00 訪問次數:598
1 引 言
現場可編程門陣列fpga有集成度高、體積小、靈活可重配置、實驗風險小等優點,在復雜數字系統中得到了越來越廣泛的應用。隨著fpga技術的成熟和不斷飛速發展,數字電路的設計只需一片fpga器件、一些存儲設備和一些電氣接口匹配電路的解決方案已成為主流選擇方案。根據多年的應用經驗,相關數字系統中,fpga器件的選型非常重要,不合理的選型會導致一系列的后續設計問題,有時甚至會使設計失敗;合理的選型不光可以避免設計問題,而且可以提高系統的性價比,延長產品的生命周期,獲得預想不到的經濟效果。
經過深入研究,總結了以下選型問題:器件的供貨渠道和開發工具的支持;器件的硬件資源;器件的電氣接口標準;器件的速度等級;器件的溫度等級;器件的封裝;器件的價格。
2 fpga器件選型應該考慮的問題
2.1 器件的供貨渠道和開發工具的支持
目前,主要的fpga供應商有xllinx公司、altera公司、lattic公司和actel公司,其中xllinx公司和altera公司的規模最大,能提供器件的種類非常豐富。fpga的發展速度非常快,很多型號的fpga器件已不是主流產品,為了提高產品的生命周期,最好在貨源比較足的主流器件中選型。目前,altera公司的主流器件有cycloneⅱ,cycloneⅲ,statixⅱ,statixⅱgx,statixⅲ和statixⅲgx等系列,其中cycloneⅱ和cycloneⅲ系列主要應用于邏輯設計和簡單的數字信號處理,statixⅱ和statixⅲ系列主要應用于高速復雜數字信號處理和高速邏輯設計,statixⅱgx和statixⅲgx系列主要應用于通訊領域[1];xllinx公司的主流器件有spartan-3e,spartan-3a,virtex-4lx,virtex-4 sx,virtex-4 fx,virtex-5 lx,virtex-5sx和virtex-5 fx等系列,其中spartan-3e和spartan-3a系列主要應用于邏輯設計和簡單數字信號處理,vir-tex-4 lx和virtex-5 lx系列主要應用于高速邏輯設計,virtex-4 sx和virtex-5 sx系列主要應用于高速復雜數字信號處理,virtex-4 fx和virtex-5 fx系列主要應用于嵌入式系統[3]。
兩家公司都提供了優秀的開發工具。xllinx公司有集成開發環境ise,altera公司有集成開發環境quartusⅱ,兩個集成開發環境支持本公司所有器件的設計和開發[2,3]。該集成開發環境不僅功能強大、界面友好,而且有很多第三方合作伙伴提供相應的技術支持,能使器件獲得更高的性能。因此,如果沒有特殊應用要求,建議最好在這兩家公司進行器件選型。
2.2器件的硬件資源
硬件資源是器件選型的重要標準。硬件資源包括邏輯資源、i/o資源、布線資源、dsp資源、存儲器資源、鎖相環資源、串行收發器資源和硬核微處理器資源等。
邏輯資源和i/o資源的需求是每位設計人員最關心的問題,一般都會考慮到,可是,過度消耗i/o資源和布線資源可能產生的問題卻很容易被忽視。主流fpga器件中,邏輯資源都比較豐富,一般可以滿足應用需求。可是,在比較復雜的數字系統中,過度i/o資源的消耗可能會導致2個問題:fpga負荷過重,器件發熱嚴重,嚴重影響器件的速度性能、工作穩定性和壽命,設計中要考慮器件的散熱問題;局部布線資源不足,電路的運行速度明顯降低,有時甚至使設計不能適配器件,設計失敗。根據本人的應用經驗:
(1)在做復雜數字信號處理時,位數比較高的乘法器和除法器對全局布線資源的消耗量比較大;
(2)在做邏輯設計時,雙向i/o口對局部布線資源的消耗量比較大;
(3)在利用存儲器資源設計濾波器的應用場合,局部布線資源的消耗量比較大;
(4)在電氣接口標準比較多,而邏輯比較復雜的應用場合,局部布線資源的消耗量比較大。
據altera公司推薦,設計中最好能預留30%以上的邏輯資源、20%以上的i/o資源和30%以上的布線資源。而且,從兩家公司器件的結構看,xllinx公司器件的可編程邏輯塊相對于al-tera公司要復雜一些,使用起來要靈活一些。在一些復雜的、控制信號比較多的設計中,適合選用xllinx公司的產品。不過xllinx公司器件布線資源是分段的,器件延時的可預測性要差一些。在這些應用場合,最好首先做設計仿真,對設計?肖耗的布線資源,尤其是很容易被忽視的局部布線資源,要有一個比較充分的了解,然后在考慮器件選型,是比較理想的。
在做乘法運算比較多而且對速度性能要求比較高的應用場合,最好能選用帶dsp資源比較多的器件,例如,altera公司的statixⅱ和statixⅲ系列[2],xllinx公司的virtex-4 sx和virtex-5 sx系列等[3]。
器件中的存儲器資源主要有2種用途:作高性能濾波器;實現小容量高速數據緩存。這是一種比較寶貴的硬件資源,一般器件中的存儲器資源都不太多,存儲器資源較多的器件邏輯容量也非常大,用得也比較少,供貨渠道也不多,器件價格也非常高。因此,在器件選型時,最好不要片面追求設計的集成度而選用這種器件,可以考慮選用低端器件+外擴存儲器的設計方案
1 引 言
現場可編程門陣列fpga有集成度高、體積小、靈活可重配置、實驗風險小等優點,在復雜數字系統中得到了越來越廣泛的應用。隨著fpga技術的成熟和不斷飛速發展,數字電路的設計只需一片fpga器件、一些存儲設備和一些電氣接口匹配電路的解決方案已成為主流選擇方案。根據多年的應用經驗,相關數字系統中,fpga器件的選型非常重要,不合理的選型會導致一系列的后續設計問題,有時甚至會使設計失敗;合理的選型不光可以避免設計問題,而且可以提高系統的性價比,延長產品的生命周期,獲得預想不到的經濟效果。
經過深入研究,總結了以下選型問題:器件的供貨渠道和開發工具的支持;器件的硬件資源;器件的電氣接口標準;器件的速度等級;器件的溫度等級;器件的封裝;器件的價格。
2 fpga器件選型應該考慮的問題
2.1 器件的供貨渠道和開發工具的支持
目前,主要的fpga供應商有xllinx公司、altera公司、lattic公司和actel公司,其中xllinx公司和altera公司的規模最大,能提供器件的種類非常豐富。fpga的發展速度非常快,很多型號的fpga器件已不是主流產品,為了提高產品的生命周期,最好在貨源比較足的主流器件中選型。目前,altera公司的主流器件有cycloneⅱ,cycloneⅲ,statixⅱ,statixⅱgx,statixⅲ和statixⅲgx等系列,其中cycloneⅱ和cycloneⅲ系列主要應用于邏輯設計和簡單的數字信號處理,statixⅱ和statixⅲ系列主要應用于高速復雜數字信號處理和高速邏輯設計,statixⅱgx和statixⅲgx系列主要應用于通訊領域[1];xllinx公司的主流器件有spartan-3e,spartan-3a,virtex-4lx,virtex-4 sx,virtex-4 fx,virtex-5 lx,virtex-5sx和virtex-5 fx等系列,其中spartan-3e和spartan-3a系列主要應用于邏輯設計和簡單數字信號處理,vir-tex-4 lx和virtex-5 lx系列主要應用于高速邏輯設計,virtex-4 sx和virtex-5 sx系列主要應用于高速復雜數字信號處理,virtex-4 fx和virtex-5 fx系列主要應用于嵌入式系統[3]。
兩家公司都提供了優秀的開發工具。xllinx公司有集成開發環境ise,altera公司有集成開發環境quartusⅱ,兩個集成開發環境支持本公司所有器件的設計和開發[2,3]。該集成開發環境不僅功能強大、界面友好,而且有很多第三方合作伙伴提供相應的技術支持,能使器件獲得更高的性能。因此,如果沒有特殊應用要求,建議最好在這兩家公司進行器件選型。
2.2器件的硬件資源
硬件資源是器件選型的重要標準。硬件資源包括邏輯資源、i/o資源、布線資源、dsp資源、存儲器資源、鎖相環資源、串行收發器資源和硬核微處理器資源等。
邏輯資源和i/o資源的需求是每位設計人員最關心的問題,一般都會考慮到,可是,過度消耗i/o資源和布線資源可能產生的問題卻很容易被忽視。主流fpga器件中,邏輯資源都比較豐富,一般可以滿足應用需求。可是,在比較復雜的數字系統中,過度i/o資源的消耗可能會導致2個問題:fpga負荷過重,器件發熱嚴重,嚴重影響器件的速度性能、工作穩定性和壽命,設計中要考慮器件的散熱問題;局部布線資源不足,電路的運行速度明顯降低,有時甚至使設計不能適配器件,設計失敗。根據本人的應用經驗:
(1)在做復雜數字信號處理時,位數比較高的乘法器和除法器對全局布線資源的消耗量比較大;
(2)在做邏輯設計時,雙向i/o口對局部布線資源的消耗量比較大;
(3)在利用存儲器資源設計濾波器的應用場合,局部布線資源的消耗量比較大;
(4)在電氣接口標準比較多,而邏輯比較復雜的應用場合,局部布線資源的消耗量比較大。
據altera公司推薦,設計中最好能預留30%以上的邏輯資源、20%以上的i/o資源和30%以上的布線資源。而且,從兩家公司器件的結構看,xllinx公司器件的可編程邏輯塊相對于al-tera公司要復雜一些,使用起來要靈活一些。在一些復雜的、控制信號比較多的設計中,適合選用xllinx公司的產品。不過xllinx公司器件布線資源是分段的,器件延時的可預測性要差一些。在這些應用場合,最好首先做設計仿真,對設計?肖耗的布線資源,尤其是很容易被忽視的局部布線資源,要有一個比較充分的了解,然后在考慮器件選型,是比較理想的。
在做乘法運算比較多而且對速度性能要求比較高的應用場合,最好能選用帶dsp資源比較多的器件,例如,altera公司的statixⅱ和statixⅲ系列[2],xllinx公司的virtex-4 sx和virtex-5 sx系列等[3]。
器件中的存儲器資源主要有2種用途:作高性能濾波器;實現小容量高速數據緩存。這是一種比較寶貴的硬件資源,一般器件中的存儲器資源都不太多,存儲器資源較多的器件邏輯容量也非常大,用得也比較少,供貨渠道也不多,器件價格也非常高。因此,在器件選型時,最好不要片面追求設計的集成度而選用這種器件,可以考慮選用低端器件+外擴存儲器的設計方案