FPGA系統設計實戰經驗分享 硬體篇

2021-04-15 20:38:05 字數 3245 閱讀 1561

產品,或者實驗室的師兄們都用那個公司的產品多一些等等。如果自己對那個公司的產品比較熟悉,還是不要輕易更換。因為學習軟體和了解晶元結構還是需要一些時間的,而且也會引入一些設計風險。人一般會有慣性的思維的,往往會把一些經驗帶到新的專案中,而實際上不同廠商的晶元在設計細節方面還是有些不同的,對這個公司的晶元適合,不一定對另外公司的晶元適合。

如果是在新產品設計的適合選擇fpga晶元廠商,那麼可以參考以下的幾個原則:

a. 如果需要盡快上市,搶占市場,一般選擇開發簡單的altera或者xilinx產品;

b.  如果產品已經穩定,需要提高保密性能和穩定性能,可以考慮lattice,quicklogic或者actel公司的反融絲型別或者flash型別的fpga;

c. 如果需要很強的抗干擾性能,工作環境十分惡劣,如果航空航天,一般選actel

公司的產品。

幾個廠商的fpga簡介:

& nbspaltera的晶元在國內的高校用的比較多,就像在高校裡面用vhdl的人比較多一樣。altera的晶元產品比較全,目前主要的就是 flex10k系列,acex1k系列,cyclone系列等應用的比較廣泛,stratix系列一般在通訊等高階領域應用比較多一些。

flex10k是比較老的系列了,**也很高,是5v的器件,主要應用在5v的訊號環境,抗干擾性能好一些,但是功耗和體積都比較大,規模也有限制。

acex1k是乙個比較成功的系列,相容5v和3.3v,如果系統是 3.3v是5v的混合訊號系統,而且中5v訊號比較多,建議採用acex1k系列,**也不錯。只是最大的規模是10萬門,公升級空間小。

cyclone系列目前altera公司成本最低的fpga,但是只能支援3.3v,不相容5v訊號。如果系統中只有3.3v或者5v訊號不多,那麼red logic還是推薦您選擇cyclone系列的 fpga。

xilinx的公司的產品更多的被企業採用。相對於altera,xilinx的歷史更悠久一些,客戶更多。xilinx公司對晶元提供的參考設計較altera公司提供的涉及的領域更寬,品種更多。免費使用的ip核也更多一些。

xilinx的高階fpga在市場上占有一定的優勢,如virtexii系列就是非常成功的。

actel公司的fpga以反融絲型別的為主,應用與一些特定的領域;

& nbspquicklogic公司的cpld也是以反融絲為主推,一般用於產品的加密,目前還很難破解。其出品的整合了pci硬核的fpga是比較有特色的產品,較fpga+pci介面晶元的方案成本更低,較fpga實現pci軟核的方案穩定性更好。

lattice公司目前也開始推廣低成本的應用的fpga產品,在本論壇的lattice版面有更詳細的介紹。

2. 選擇fpga型號

首先選擇好了某個系列的fpga,接下來就要選擇乙個具體的型號了。需要考慮的因素主要有以下幾點:

a. 封裝

主要在於選擇管腳的數目,如果管腳夠用,盡量選擇表貼封裝,如tqfp或者qfp的。red logic不推薦選擇bga的原因是:

1) 會帶來的焊接成本提高;

2) 增加了佈線難度,可能不得不增加pcb的層數;

3) 降低了測試性,增加了測試成本。

當然,如果專案需要,必須選擇bga封裝的,那麼盡量選擇管腳間距大一些

的,比如1mm或者0.8mm。

例如,對於cyclone系列的fpga,ep1c12就有f324和q240兩種封裝,前

者是bga的,後者是pqfp的。如果150個使用者io對您的設計已經足夠了,

那麼最好選擇後者,兩層板就可以做下來,而f324封裝的最少要4層板才行。

b. 資源

一般在設計的開始階段,無法估計規模大小。所有一般需要根據經驗來選擇。一般都要選擇你確定的封裝裡面規模最大的型號。一般來說,相同的封裝會有不同的容量,比如cyclone系列的pqfp240封裝,就有1c6和1c12兩個型號,資源相差一倍以上。那麼實驗階段就可以先用1c12做實驗,將來再改用 1c6的,pcb不用重新設計。

資源包括了邏輯資源(如le或者slice)和儲存資源(如m4k或block ram)。

選擇晶元的時候不僅要考慮邏輯資源夠用,還要保證儲存資源夠用。假如您的設計用了1000個le,200kbit的儲存器,如果從邏輯資源考慮,ep1c6就足夠了,有接近6000個le,但是m4k的容量確不能滿足要求。如果不想更改設計,您就必須選擇ep1c12了。

c. 公升級性

為了以後增加功能或者公升級效能,您的fpga設計好後,必須有一定的公升級空間。比如您目前的設計用了70%的晶元資源,那麼您就必須考慮是否能夠滿足將來的需要了。  

(xilinx和altera的fpga產品都是基於sram的,上電後需要外部cpu或者儲存器進行配置才能工作。

配置過程中,如果出現干擾,就會產生配置錯誤。

而actel公司的反融絲型fpga與asic一樣,是固化在晶元內部的,上電就開始工作的,所以說更抗干擾性能更強一些。但是只能燒寫一次,開發起來成本比較高,週期也長一些。必須充分**,否則差一點點就要費乙個**啊。

可以採用altera的晶元做原型的驗證和樣機。經過測試,如果不能滿足要求,在更換actel的晶元,這樣可以保證邏輯部分是沒有問題的。altera的晶元目前也採用了一些措施,比如差錯重新配置等,也可以用外部的cpu來配置fpga,上電後對fpga進行簡單的測試,如果有問題,再重新配置。

如果邏輯規模不大,可以採用maxii系列的cpld,由於採用了flash結構,不需要外部配置,可靠性要高很多。)

二。fpga主要的外設晶元選擇

red logic根據以往的經驗,推薦您一些晶元,供您參考。其他應用的晶元,您可以到我們的**上諮詢。

1. 電源晶元

如果電流較小,可以選用as1117系列, 表貼型封裝;

如果電流較大,可以選用as28xx系列, 表貼型封裝;

2. 儲存晶元

盡量選擇公升級空間大,管腳相容的系列;

sdram一般選擇samsung的k4s系列,或者現代的hy57v系列;

asram一般選擇issi的61lv系列;

nor  flash一般選擇amd的29lv系列或者sst的晶元;

nand flash一般選擇samsung的k9s系列;

3. 其他晶元

video encoder/decoder   – philips;

vga  adc/dac        -adi;

adc/dac                  -adi, ti , bb;

usb                          -cycpress;

pci                           -plx;

聯結器              -amp,semitec;

MongoDB實戰經驗分享

nosql並不是no sql,而是指not only sql。nosql的出現是為了彌補sql資料庫因為事務等機制帶來的對海量資料 高併發請求的處理的效能上的欠缺。nosql不是為了替代sql而出現的,它是一種替補方案,而不是解決方案的首選。絕大多數的nosql產品都是基於大記憶體和高效能隨機讀寫的...

微服務實戰經驗分享

在過去的幾個月裡,我們已經聽到很多關於微服務的優缺點了。微服務真的只是soa嗎?微服務確實有助於進行複雜系統架構嗎?不論大家怎麼說,有一些公司已經轉向或正準備轉向基於微服務的方法了。他們在實踐過程中分享自己獲得的正面或負面的經驗,是很自然的事。最近,droplet公司的tom livesey分享了他...

牛人的FPGA設計經驗分享

在ic工業中有許多不同的領域,ic設計者的特徵也會有些不同。在a領域的乙個好的ic設計者也許會花很長時間去熟悉b領域的知識。在我們職業生涯的開始,我們應該問我們自己一些問題,我們想要成為怎樣的ic設計者?消費?pc外圍?通訊?微處理器或dsp?等等?ic設計的基本規則和流程是一樣的,無論啥樣的都會加...