日本强好片久久久久久AAA_色综合久久天天综合观看_久久精品国产亚洲av日韩_久久久久一级片

程控直流電源設(shè)計工程師解讀啥是FPGA/DSP?

DSP主要用于處理信號,事先算法,特點是多級流水,可以加快數(shù)據(jù)處理的速度,開發(fā)環(huán)境主要是C語言,可以說DSP應(yīng)用的范圍更專DSP的設(shè)計??梢岳斫鉃檐浖O(shè)計,程控直流電源設(shè)計工程師不需要太了解DSP的結(jié)構(gòu)。


FPGA區(qū)別于ASIC設(shè)計屬于硬件設(shè)計的范疇ASIC是硬件全定制FPGA是硬件半定制。具體來說ASIC整個程控直流電源設(shè)計電路都由程控直流電源設(shè)計工程師設(shè)計的,用多少資源設(shè)計多少資源一般多用于產(chǎn)品設(shè)計。FPGA資源事先由廠商給定,例如Altera Xilinx等都提供不同系列的FPGA芯片,程控直流電源設(shè)計工程師可以在給定資源下做硬件設(shè)計開發(fā)。


DSP就是一個指令比較獨特的處理器。它雖然是通用處理器,但是實際上不怎么“通用”。技術(shù)很牛的人可以用DSP做一臺電腦出來跑windows,而實際上真正這么干的肯定不怎么聰明。用DSP做信號處理,比其他種類的處理器要厲害;用DSP做信號處理之外的事情,卻并不見長。而且信號處理的代碼一般需要對算法很精通的人才能真正寫好。

  

數(shù)據(jù)結(jié)構(gòu)里面的時間復(fù)雜度和空間復(fù)雜度在這里是一把很嚴(yán)酷的尺子。 FPGA只不過披著軟件的外衣,實際上是硬件。FPGA內(nèi)部有兩層相對獨立的程控直流電源設(shè)計電路。使用者“編碼->編譯”后生成一個映像,這個映像作用于第一層程控直流電源設(shè)計電路。這層程控直流電源設(shè)計電路之際上就是一個0,1的開關(guān)矩陣,這個開關(guān)矩陣用來控制第二層工作程控直流電源設(shè)計電路,將第二層工作程控直流電源設(shè)計電路配置成一個相應(yīng)的處理器。

  

理論上FPGA可以配置成任何需要的處理器,而實際上為了盡量少出bug,F(xiàn)PGA開發(fā)都使用已經(jīng)開發(fā)好的“庫文件”,也就是把人家能穩(wěn)定工作的程控直流電源設(shè)計電路圖拿過來?!?/span>

因此,對大多數(shù)FPGA開發(fā)者來說,F(xiàn)PGA內(nèi)部有幾個核基本上只能從庫文件里面選——除非程控直流電源設(shè)計工程師有能力自己設(shè)計核心內(nèi)部的程控直流電源設(shè)計電路和核間總線——ram和rom也是用宏來配置,自己只需要改改外部的專用程控直流電源設(shè)計電路和接線方式等等。

  

甚至外部的專用程控直流電源設(shè)計電路都有庫文件,搭個積木就完事了。玩FPGA真正掙錢的人是做積木的人,程控直流電源設(shè)計工程師原創(chuàng)幾個積木并且能申請專利,迫使人家給程控直流電源設(shè)計工程師交專利費(fèi),那程控直流電源設(shè)計工程師這輩子可以衣食無憂了。

  

補(bǔ)充幾個小概念

DSP

DSP原意就是指數(shù)字信號處理,只不過DSP芯片由于主要功能是實現(xiàn)數(shù)字信號處理實現(xiàn)各種算法所以簡稱為DSP(數(shù)字信號處理器)。  

FPGA

FPGA一樣可以做DSP(數(shù)字信號處理),就意味著可以用FPGA做硬件設(shè)計來實現(xiàn)DSP芯片的功能,當(dāng)然,相比較專業(yè)的DSP芯片成本太高。  

ARM

現(xiàn)在除了FPGA和DSP之外還有一個近幾年熱門的產(chǎn)品ARM。ARM主要應(yīng)用與手持設(shè)備和嵌入式產(chǎn)品,幾乎籠罩了90%的市場份額,可以說ARM開發(fā)也偏向于軟件開發(fā),設(shè)計者主要是講wince系統(tǒng)或者linux系統(tǒng)移植到ARM開發(fā)平臺上,然后做各種軟件應(yīng)用開發(fā)?!?/span>

所以這三個方向都有其不同的應(yīng)用場合,很難講誰更有前途。主要是給設(shè)計者提供了一個硬件平臺開發(fā)的核心,還是需要獨立的應(yīng)用設(shè)計和高效的算法設(shè)計,所以設(shè)計者應(yīng)該處理好工具的掌握和具體設(shè)計的區(qū)別:FPGA——并行處理,內(nèi)部資源多;DSP——成本低,低功耗,高性能的處理能力。


也許FPGA更有前途,DSP其實只是個特殊的處理器,有專用的硬件乘法器,有桶形移位器可以把數(shù)據(jù)從存儲器移到ALU,還有流水線等技術(shù)。

  

但FPGA同樣可以完成這些功能,并且FPGA是并行工作的,現(xiàn)在很多FPGA內(nèi)部可以使用軟DSP或者硬核的DSP,當(dāng)程控直流電源設(shè)計工程師的項目需要時序很嚴(yán)格的情況非FPGA莫屬。

  

比如說用DSP和USB芯片CY68013進(jìn)行FIFO(同步傳送)數(shù)據(jù)時,IFCLK可以是外部或內(nèi)部,USB芯片在(IFCONFIG的IFCLKSRC里配置)。如果IFCLK使用內(nèi)部的情況下,DSP根本無法知道我把數(shù)據(jù)送到FIFO數(shù)據(jù)端口后USB芯片內(nèi)部時鐘過了多少周期,但FPGA就可以,因為FPGA的時鐘取自于USB芯片的48M輸出,在FPGA內(nèi)部做一個狀態(tài)機(jī),當(dāng)數(shù)據(jù)送到USB芯片的FIFO數(shù)據(jù)端口時,下一狀態(tài)把SLWR拉低,再下一狀態(tài)拉高,就等于USB內(nèi)部過了一周期,數(shù)據(jù)就寫進(jìn)USB芯片內(nèi)部的FIFO了。


舉個簡單的例子,很多關(guān)于時序的案例非FPGA莫屬,DSP做算法快速,成熟,F(xiàn)PGA更有挑戰(zhàn),據(jù)我的經(jīng)驗,F(xiàn)PGA現(xiàn)在內(nèi)部起碼有很多核是可以用的,

  

這像一個可配置的單片機(jī),不用的我就不放進(jìn)項目。以ACTEL的FPGA來說,用的比較多的軟核是:Core8051S、CoreABC、微處理器軟核,特別說明CoreABC占用的空間非常少,可以裁減指令,可以配置數(shù)據(jù)寬度8,16,32,有1組通用輸入端口和輸出端口,可配置堆棧。

  

CoreDES、CoreAES128、CoreFROM、CoreI2C、CoreGPIO、CoreInterrupt、CoreLPC、CoreSDR、CoreUART,還有很多很多,看這些名字,很多人都知道干什么用的。 關(guān)于DPS,F(xiàn)PGA,AME程控直流電源設(shè)計工程師如何看待呢?哪個是程控直流電源設(shè)計工程師的最愛?


圖片加載中...

在線留言