ARM、FPGA和DSP的特點(diǎn)和區(qū)別是什么?
(1)在一個(gè)指令周期內(nèi)可完成一次乘法和一次加法;
(2)程序和數(shù)據(jù)空間分開(kāi),可以同時(shí)訪(fǎng)問(wèn)指令和數(shù)據(jù);
(3)片內(nèi)具有快速RAM,通常可通過(guò)獨(dú)立的數(shù)據(jù)總線(xiàn)在兩塊中同時(shí)訪(fǎng)問(wèn);
(4)具有低開(kāi)銷(xiāo)或無(wú)開(kāi)銷(xiāo)循環(huán)及跳轉(zhuǎn)的硬件支持;
(5)快速的中斷處理和硬件I/O支持;
(6)具有在單周期內(nèi)操作的多個(gè)硬件地址產(chǎn)生器;
(7)可以并行執(zhí)行多個(gè)操作;
(8)支持流水線(xiàn)操作,使取指、譯碼和執(zhí)行等操作可以重疊執(zhí)行。
當(dāng)然,與通用微處理器相比,DSP芯片的其他通用功能相對(duì)較弱些。
ARM(Advanced RISC Machines)是微處理器行業(yè)的一家知名企業(yè),設(shè)計(jì)了大量高性能、廉價(jià)、耗能低的RISC處理器、相關(guān)技術(shù)及軟件。ARM架構(gòu)是面向低預(yù)算市場(chǎng)設(shè)計(jì)的第一款RISC微處理器,基本是32位單片機(jī)的行業(yè)標(biāo)準(zhǔn),它提供一系列內(nèi)核、體系擴(kuò)展、微處理器和系統(tǒng)芯片方案,四個(gè)功能模塊可供生產(chǎn)廠(chǎng)商根據(jù)不同用戶(hù)的要求來(lái)配置生產(chǎn)。由于所有產(chǎn)品均采用一個(gè)通用的軟件體系,所以相同的軟件可在所有產(chǎn)品中運(yùn)行。目前ARM在手持設(shè)備市場(chǎng)占有90以上的份額,可以有效地縮短應(yīng)用程序開(kāi)發(fā)與測(cè)試的時(shí)間,也降低了研發(fā)費(fèi)用。
FPGA是英文Field Programmable Gate Array(現(xiàn)場(chǎng)可編程門(mén)陣列)的縮寫(xiě),它是在PAL、GAL、PLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物,是專(zhuān)用集成電路(ASIC)中集成度最高的一種。FPGA采用了邏輯單元陣列LCA(Logic Cell Array)這樣一個(gè) 新概念,內(nèi)部包括可配置邏輯模塊CLB(Configurable Logic Block)、輸出輸入模塊IOB (Input Output Block)和內(nèi)部連線(xiàn)(Interconnect)三個(gè)部分。用戶(hù)可對(duì)FPGA內(nèi)部的邏輯模塊和I/O模塊重新配置,以實(shí)現(xiàn)用戶(hù)的邏輯。它還具有靜態(tài)可重復(fù)編程和動(dòng)態(tài)在系統(tǒng)重構(gòu)的特性,使得硬件的功能可以像軟件一樣通過(guò)編程來(lái)修改。作為專(zhuān)用集成電路(ASIC)領(lǐng)域中的一種半定制電路,F(xiàn)PGA既解決了定制電路的不足,又克服了原有可編程器件門(mén)電路數(shù)有限的缺點(diǎn)??梢院敛豢鋸埖闹v,F(xiàn)PGA能完成任何數(shù)字器件的功能,上至高性能CPU,下至簡(jiǎn)單的74電路,都可以用FPGA來(lái)實(shí)現(xiàn)。FPGA如同一張白紙或是一堆積木,工程師可以通過(guò)傳統(tǒng)的原理圖輸入法,或是硬件描述語(yǔ)言自由的設(shè)計(jì)一個(gè)數(shù)字系統(tǒng)。通過(guò)軟件仿真,我們可以事先驗(yàn)證設(shè)計(jì)的正確性。在PCB完成以后,還可以利用FPGA的在線(xiàn)修改能力,隨時(shí)修改設(shè)計(jì)而不必改動(dòng)硬件電路。使用FPGA來(lái)開(kāi)發(fā)數(shù)字電路,可以大大縮短設(shè)計(jì)時(shí)間,減少PCB面積,提高系統(tǒng)的可靠性。FPGA是由存放在片內(nèi)RAM中的程序來(lái)設(shè)置其工作狀態(tài)的,因此工作時(shí)需要對(duì)片內(nèi)的RAM進(jìn)行編程。用戶(hù)可以根據(jù)不同的配置模式,采用不同的編程方式。加電時(shí),F(xiàn)PGA芯片將EPROM中數(shù)據(jù)讀入片內(nèi)編程RAM 中,配置完成后,F(xiàn)PGA進(jìn)入工作狀態(tài)。掉電后,F(xiàn)PGA恢復(fù)成白片,內(nèi)部邏輯關(guān)系消失,因此,F(xiàn)PGA能夠反復(fù)使用。FPGA的編程無(wú)須專(zhuān)用的FPGA 編程器,只須用通用的EPROM、PROM編程器即可。當(dāng)需要修改FPGA功能時(shí),只需換一片EPROM即可。這樣,同一片F(xiàn)PGA,不同的編程數(shù)據(jù),可以產(chǎn)生不同的電路功能。因此,F(xiàn)PGA的使用非常靈活??梢哉f(shuō),F(xiàn)PGA芯片是小批量系統(tǒng)提高系統(tǒng)集成度、可靠性的最佳選擇之一。目前FPGA的品種很多,有XILINX的XC系列、TI公司的TPC系列、ALTERA公司的FIEX系列等。
他們的區(qū)別是什么呢?DSP主要是用來(lái)計(jì)算的,比如進(jìn)行加密解密、調(diào)制解調(diào)等,優(yōu)勢(shì)是強(qiáng)大的數(shù)據(jù)處理能力和較高的運(yùn)行速度。ARM具有比較強(qiáng)的事務(wù)管理功能,可以用來(lái)跑界面以及應(yīng)用程序等,其優(yōu)勢(shì)主要體現(xiàn)在控制方面,而FPGA可以用VHDL或verilogHDL來(lái)編程,靈活性強(qiáng),由于能夠進(jìn)行編程、除錯(cuò)、再編程和重復(fù)操作,因此可以充分地進(jìn)行設(shè)計(jì)開(kāi)發(fā)和驗(yàn)證。當(dāng)電路有少量改動(dòng)時(shí),更能顯示出FPGA的優(yōu)勢(shì),其現(xiàn)場(chǎng)編程能力可以延長(zhǎng)產(chǎn)品在市場(chǎng)上的壽命,而這種能力可以用來(lái)進(jìn)行系統(tǒng)升級(jí)或除錯(cuò)。
評(píng)論