在相當長的一段時間內,FPGA、ASIC、DSP三者不同的技術特征造就了它們不同的應用領域,DSP在數字信號方面是絕對的霸主,ASIC是專業定制領域的牛人,而FPGA由于其價格高、功耗大,主要用于ASIC前端驗證和一些高端領域,在DSP和ASIC面前絕對屬于小弟。但近10年,這小弟特別努力,提高了半導體工藝水平,降低了功耗和芯片價格,此外由于其可編程,比較靈活,因此搶了 ASIC 不少的市場份額,還號稱ASIC終結者。但是他在成績面前不驕傲自滿,繼續努力,最近兩大FPGA廠商又都推出了帶DSP平臺的FPGA,開始行使起DSP的“職能”,把手伸到到了DSP的地盤。于是這哥仨掐起來了,美其名曰:沒有硝煙的戰爭。那么,未來FPGA能否終結ASIC?ASIC又將如何發揮自己的獨特魅力,應對FPGA的挑戰?FPGA能否真的取代DSP?DSP又將如何從多方面尋求創新與突破?ASIC、DSP、 FPGA的未來究竟何去何從?且聽下面分解。雖然“百度一下,你就知道”,但還是得介紹一下這哥仨是干嘛的:
火線三兄弟:DSP 、ASIC、FPGA
先明確一個概念,DSP首先是Digital Signal Processing(數字信號處理),然后才是Digital Singnal Processor(數字信號處理器)。大家一定覺得數字信號處理多么復雜(我也覺得,小弟數學不好,怕算法),其實觀念是非常簡單的,就是一個轉換器。打個比方,你(原始數據)對自己的長相不太滿意,需要整容,從醫院南大門進去,進入手術室(數字信號處理器),里面有各種整容設備(算法),然后從北大門(不是后門)出來,出來的時候你就不是你了,變成了你想要的效果(新數據),要么瘦了,要么胖了,甚至有可能你就變成梁朝偉了,這就是數字信號處理。進行數字信號處理的工具就叫數字信號處理器,DSP就在這種情況下閃亮登場了。下面進行一些基本概念的介紹(特別枯燥,但是咱得知道):DSP是在模擬信號變換成數字信號以后進行高速實時處理的專用處理器,它采用的是哈佛設計,即數據總線和地址總線分開,使程序和數據分別存儲在兩個分開的空間,允許取指令和執行指令完全重疊,也就是說在執行上一條指令的同時就可取出下一條指令,并進行譯碼,這大大的提高了微處理器的速度。一個數字信號處理器在一塊不大的芯片內包括有控制單元、運算單元、各種寄存器以及一定數量的存儲單元等等,在其外圍還可以連接若干存儲器,并可以與一定數量的外部設備互相通信,有軟、硬件的全面功能,因此其本身就是一個微型計算機。按照用途可分為通用型DSP芯片和專用型DSP芯片,通用型DSP芯片適合普通的DSP應用,如我們最常用的TI公司的一系列DSP芯片屬于通用型DSP芯片;專用DSP芯片是為特定的DSP運算而設計的,更適合特殊的運算。在近20多年的時間里,DSP芯片的應用已經從軍事、航空航天領域擴大到信號處理、通信、雷達、消費等許多領域,被譽為信息社會革命的“旗手”。一聽這名字就知道DSP特別有前途。
之所以要一起介紹ASIC、FPGA,是因為他倆長得比較像,是“近親”。 首先介紹FPGA,FPGA( Field Programmable Gate Array)即現場可編程門陣列,它是在PAL、GAL、PLD等可編程器件的基礎上進一步發展的產物,是專用集成電路(ASIC)中集成度最高的一種。作為專用集成電路(ASIC)領域中的一種半定制電路(ASIC設計分為全定制和半定制兩種,全定制設計是完全由設計師根據工藝,以盡可能高的速度和盡可能小的面積以及完全滿意的封裝、獨立地進行芯片設計;半定制設計是一種基于庫元件的約束性設計,約束的主要目的是簡化設計、縮短設計周期,并提高芯片的成品率。由于單元庫和功能模塊電路愈發成熟,全定制已逐漸被半定制所取代。),FPGA既解決了定制電路的不足,又克服了原有可編程器件門電路數有限的缺點。毫不夸張的講,FPGA能完成任何數字器件的功能,上至高性能CPU,下至簡單的74電路,都可以用FPGA來實現。
雖然FPGA在數字電路設計中無所不能,是個典型的“高帥富”,但這個小弟一開始可沒這么好的命,它是給老大哥ASIC打替補的。ASIC(Application SrIecific Intergrated Circuits)即專用集成電路,是指應特定用戶要求和特定電子系統的需要而設計、制造的集成電路,與通用集成電路相比具有體積更小、重量更輕、功耗更低、可靠性高、性能高、保密性增強、成本降低等優點。目前用FPGA/CPLD來進行ASIC設計是最為流行的方式之一。我們知道,FPGA 開發流程大致為:選定器件,安裝軟件,設計輸入,代碼調試(包括管腳定義、時序定義、時序分析),設計仿真(功能仿真、時序仿真)和下載調試。而ASIC 是為客戶定制的芯片,在ASIC 設計過程中,往往要用到FPGA 進行原型驗證。FPGA 驗證是進行ASIC 設計的重要環節,可以這么說,完成FPGA 驗證就完成了ASIC 整套流程的50~80%。
但是現在FPGA這個小弟特別有志氣,慢慢長大了,他開始打主力,排擠老大哥,在非常多的產品里都能看到他。這里有幾個原因,首先一個原因是價格。隨著半導體制造技術的進步,硅器件的單位面積制造成本迅速降低,這對FPGA是好事兒,FPGA 廠商采用新工藝使得成本不斷下降;但對ASIC就不一定了,隨著設計復雜性的增加,ASIC 的非重復性工程(NRE)費用、最少訂購數量以及開發工具套件的費用都在上漲,如果某一天,FPGA 廠商再把利潤釋放出來一些,可以想象ASIC的日子肯定不好過。第二,它可以反復擦寫。FPGA開發效率要比ASIC 要快很多,產品也可以早點賣出去。另外你還可以利用它的在線修改能力,隨時修改設計而不必改動硬件電路,可以去給已經賣給別人的東西更新,變成更好的東西,而如果這個時候你面對的是你設計的ASIC,你只好哭吧。第三,就好像廣告里面說的:方便,真方便~~
FPGA與DSP、ASIC:競爭還是競合?
首先咱們先聽聽專家們的意見,下面這張圖業界專家們對于這哥仨的看法。目前來看,ASIC、FPGA、DSP各自都有各自的優勢,沒有誰比誰更牛。
ASIC在這些領域具有壓倒性的優勢:“機頂盒的編解碼器芯片、無線應用的RF芯片、高檔汽車電子芯片等具體方面,ASIC的優勢明顯,尤其是市場成熟的消費電子領域,ASIC具有無可比擬的優勢”。但是ASIC有一個致命的缺陷:為客戶專門定制,所以的成本全部由自己來承擔,若量產達不到一定的規模就虧了,成本壓力,你懂的。
DSP也具有壓倒性的優勢的領域:“隨著無線通信的數字化,數字基站和數字手機得到空前的發展。作為數字信號處理的核心引擎,DSP曾經獨領風騷。在視頻和音頻的數字化進程中,DSP首當其沖地實現了數字化音頻和視頻壓縮編碼和解碼,從而很大程度上率先改變了人們的生活方式”。DSP在信號處理領域還是那么橫,但他也有壓力,那就是FPGA越來越牛了。當然了,FPGA里的一個乘法器無法和DSP里的乘法器相比,但是架不住人多吧,我用100個,200個,400個同時(大家要知道FPGA是并行的)運算呢?所以,這個壓力是必須可以有的。
FPGA呢,有點萬金油的意思,ASIC、DSP能干的他都能干,但請注意,萬金油不是萬能,更不是無敵,目前來說他有這兩個比較大的缺點:功耗高、成本高。撇開ASIC不談(個人認為,在某種程度上FPGA基本可以代替ASIC),現在音視頻處理、移動通信甚至整個通信行業流行的解決方案都是FPGA+DSP,其中FPGA做邏輯控制,DSP做浮點算法。如果算法不是很占資源,可以直接用FPGA來做(FPGA里面有DSP模塊,即乘法器);如果算法很占資源,也可以直接用FPGA來做,倆字:燒錢,所以如果你不是富二代,還是乖乖的用FPGA+DSP吧。小弟比較喜歡FPGA(可能是害怕算法),所以期待他哪天能打敗DSP,一統信號處理天下!
對于這哥仨的關系,尹勇生老師總結得特別唯物主義:“使用辯證的觀點,哪一個都不會真正替代被另一個所替代”。小時候老師教過我們:我國正處于并將長期處于在社會主義初級階段,小時候老師還教過我們要學會舉一反三,今天小弟也大膽活學活用一會:ASIC、FPGA、DSP正處于并將長期處于競爭競合階段,各領風騷好幾年!
評論
查看更多