比較ARM,AVR,MSP430,Coldfire,DSP,FPGA
DSP(digital singnal processor)是一種獨特的微處理器,有自己的完整指令系統,是以數字信號來處理大量信息的器件。一個數字信號處理器在一塊不大的芯片內包括有控制單元、運算單元、各種寄存器以及一定數量的存儲單元等等,在其外圍還可以連接若干存儲器,并可以與一定數量的外部設備互相通信,有軟、硬件的全面功能,本身就是一個微型計算機。DSP采用的是哈佛設計,即數據總線和地址總線分開,使程序和數據分別存儲在兩個分開的空間,允許取指令和執行指令完全重疊。也就是說在執行上一條指令的同時就可取出下一條指令,并進行譯碼,這大大的提高了微處理器的速度。另外還允許在程序空間和數據空間之間進行傳輸,因為增加了器件的靈活性。其工作原理是接收模擬信號,轉換為0或1的數字信號,再對數字信號進行修改、刪除、強化,并在其他系統芯片中把數字數據解譯回模擬數據或實際環境格式。它不僅具有可編程性,而且其實時運行速度可達每秒數以千萬條復雜指令程序,遠遠超過通用微處理器,是數字化電子世界中日益重要的電腦芯片。它的強大數據處理能力和高運行速度,是最值得稱道的兩大特色。由于它運算能力很強,速度很快,體積很小,而且采用軟件編程具有高度的靈活性,因此為從事各種復雜的應用提供了一條有效途徑。根據數字信號處理的要求,DSP芯片一般具有如下主要特點:
(1)在一個指令周期內可完成一次乘法和一次加法;
(2)程序和數據空間分開,可以同時訪問指令和數據;
(3)片內具有快速RAM,通??赏ㄟ^獨立的數據總線在兩塊中同時訪問;
(4)具有低開銷或無開銷循環及跳轉的硬件支持;
(5)快速的中斷處理和硬件I/O支持;
(6)具有在單周期內操作的多個硬件地址產生器;
(7)可以并行執行多個操作;
(8)支持流水線操作,使取指、譯碼和執行等操作可以重疊執行。
當然,與通用微處理器相比,DSP芯片的其他通用功能相對較弱些。
FPGA是英文Field Programmable Gate Array(現場可編程門陣列)的縮寫,它是在PAL、GAL、PLD等可編程器件的基礎上進一步發展的產物,是專用集成電路(ASIC)中集成度最高的一種。FPGA采用了邏輯單元陣列LCA(Logic Cell Array)這樣一個新概念,內部包括可配置邏輯模塊CLB(Configurable Logic Block)、輸出輸入模塊IOB(Input Output Block)和內部連線(Interconnect)三個部分。用戶可對FPGA內部的邏輯模塊和I/O模塊重新配置,以實現用戶的邏輯。它還具有靜態可重復編程和動態在系統重構的特性,使得硬件的功能可以像軟件一樣通過編程來修改。作為專用集成電路(ASIC)領域中的一種半定制電路,FPGA既解決了定制電路的不足,又克服了原有可編程器件門電路數有限的缺點。可以毫不夸張的講,FPGA能完成任何數字器件的功能,上至高性能CPU,下至簡單的74電路,都可以用FPGA來實現。FPGA如同一張白紙或是一堆積木,工程師可以通過傳統的原理圖輸入法,或是硬件描述語言自的設計一個數字系統。通過軟件仿真,我們可以事先驗證設計的正確性。在PCB完成以后,還可以利用FPGA的在線修改能力,隨時修改設計而不必改動硬件電路。使用FPGA來開發數字電路,可以大大縮短設計時間,減少PCB面積,提高系統的可靠性。FPGA是由存放在片內RAM中的程序來設置其工作狀態的,因此工作時需要對片內的RAM進行編程。用戶可以根據不同的配置模式,采用不同的編程方式。加電時,FPGA芯片將EPROM中數據讀入片內編程RAM中,配置完成后,FPGA進入工作狀態。掉電后,FPGA恢復成白片,內部邏輯關系消失,因此,FPGA能夠反復使用。FPGA的編程無須專用的FPGA編程器,只須用通用的EPROM、PROM編程器即可。當需要修改FPGA功能時,只需換一片EPROM即可。這樣,同一片FPGA,不同的編程數據,可以產生不同的電路功能。因此,FPGA的使用非常靈活??梢哉f,FPGA芯片是小批量系統提高系統集成度、可靠性的最佳選擇之一。目前做FPGA比較領先的有XILINX、ALTERA公司。
ARM具有比較強的事務管理功能,可以用來跑界面以及應用程序等,其優勢主要體現在控制方面,
而DSP主要是用來計算的,比如進行加密解密、調制解調等,優勢是強大的數據處理能力和較高的運行速度。
FPGA可以用VHDL或verilogHDL來編程,靈活性強,由于能夠進行編程、除錯、再編程和重復操作,因此可以充分地進行設計開發和驗證。當電路有少量改動時,更能顯示出FPGA的優勢,其現場編程能力可以延長產品在市場上的壽命,而這種能力可以用來進行系統升級或除錯。FPGA目前的趨勢是有代替前兩者的可能,在FPGA內部置入乘法器和DSP塊,就具有高速的DSP處理能力。在FPGA內置入硬核CPU或軟核CPU(Xilinx有powerpc硬核的產品,有microblaze軟核。Altera有NIOS II軟核)就可以成為既有能實現數字邏輯有適應嵌入式開發的綜合性器件了。
***********************************************************************************************************************************
dsp-數據處理;cpu-控制;fpga-接口轉換
FPGA---通過編程實現電路
DSP--通過編程指導處理單元完成數據處理及控制
CPU嘛,復雜的東東
我覺得fpga就是一種可編程的器件,用它也可以實現DSP或者是cpu只不過可能性能達不到要求.
dsp用作數字信號處理,
而cpu是一種控制器,有許多種,比方說通用的如奔騰,還有單片機等.
cpu是一種電路,而fpga是一種相對于asic的電路實現方法.
在很大程度上dsp與床鋪有些類似,都是進行運算處理數據的,內部結構比較復雜,fpga是可以控制的邏輯器件,可以根據需求進行編程。
就工作頻率上來說,pc機上的cpu以GHz為計量單位;而你見過哪款fpga芯片的頻率超過1GHz的,基本上,目前的500MHz就封頂了。
單片機低速
DSP高速
FPGA超高速
FPGA可編程器件,用戶可以根據各自的需要實現接口協議,協議解析,數據處理,控制,優點是用戶可隨心所欲的編程。
DSP其實就是內部嵌有CPU和一些專用數字處理模塊(微引擎,乘法電路)的asic,專用于高速的數據信號處理。但是其主要執行過程還是由軟件實現的。
CPU就是毫無疑問的中央處理器了,它根據用戶給出的指令,進行它的操作,其實里面的最基本的還是加乘操作。
因為DSP和CPU都是專用集成電路,所以內部時鐘頻率可以做的很高,密度可以做的很高,特別是CPU,往往都代表了半導體的最新最高工藝。FPGA雖然在執行頻率上沒有DSP和CPU那么高,工藝可能也沒有那么先進,但是FPGA可以通過并行處理和流水線,達到比CPU和DSP更高的數據處理能力。而且現在FPGA也內嵌了DSP模塊和CPU,可以設計成片上系統。對于對CPU要求不高的單板,只要使用FPGA內的CPU就可以了,不需要另外再貼塊CPU芯片了。因為三種器件各有其優勢,所以是誰也沒有辦法替代誰。主要的競爭在FPGA與DSP,低端CPU之間展開。
DSP是軟件實現算法
FPGA是硬件實現算法,所以FPGA的處理速度會更高
FPGA比DSP快的一個重要原因是FPGA可以實現并行運算,而DSP由于硬件結構條件限制,主要還是依靠軟件來提取指令執行,理解為還是串行執行
http://group.ednchina.com/619/8191.aspx?page=1
http://bbs.lierda.com/showthread.php?p=64175#post64175
http://www.dzsc.com/dzbbs/20061110/200765191126796347.html
http://www.dzsc.com/dzbbs/20070123/200765182728796124.html
http://zhidao.baidu.com/question/84684733.html
http://hi.baidu.com/zorrl/blog/item/9b84be1975f9847fdbb4bdd9.html
主站蜘蛛池模板:
兴国县|
凤凰县|
西青区|
科技|
南昌市|
获嘉县|
盘锦市|
红安县|
游戏|
满城县|
恩施市|
巩义市|
蓬安县|
惠州市|
海阳市|
伊川县|
岳西县|
长海县|
扬中市|
米泉市|
山阳县|
布拖县|
鹿邑县|
廊坊市|
小金县|
沂水县|
马边|
从化市|
图木舒克市|
巴林左旗|
广西|
襄城县|
宁南县|
准格尔旗|
利川市|
平昌县|
肃南|
昌平区|
大田县|
邵东县|
苍溪县|
評論