詳解嵌入式開(kāi)發(fā)中DSP與FPGA的關(guān)系
常所說(shuō)的單片機側重于控制,不支持信號處理,屬于低端嵌入式處理器,arm可以看做是低端單片機升級版,支持操作系統管理,更多接口如網(wǎng)卡,處理能力更強;fpga是可編程邏輯器件,側重時(shí)序,可構建從小型到大型的幾乎所有數字電路系統,dsp主要完成復雜的數字信號處理,如fft,通常一個(gè)復雜系統可以由單片機、arm、fpga、dsp中的一種或幾種構成,各有優(yōu)勢和不足。
本文引用地址:http://dyxdggzs.com/article/201808/385344.htmdsp通常用于運算密集型,fpga用于控制密集型,許多人都用dsp高算法,用fpga 作外圍控制電路。
去年xilinx在北京介紹FPGA和DSP融合的時(shí)候,大有席卷DSP和FPGA市場(chǎng)之勢。但后來(lái)在實(shí)際中發(fā)現其阻力也是不小的,關(guān)鍵是很難搭配FPGA和DSP的比重。我們知道FPGA擅長(cháng)各種控制(也包括適時(shí)性非常高的信號處理如移動(dòng)通信中基帶濾波,該濾波用C5000,C6000很難勝任,除非多芯片并行),DSP擅長(cháng)各種信號處理運算,但在一個(gè)系統中究竟有多大的控制電路,有多少密集運算?變數是很大的,我們不可能用一個(gè)芯片解決這個(gè)問(wèn)題。對于運算密集性系統,我們如果使用這種芯片的話(huà)很有可能還要其他DSP,那么我們需要了解多種DSP編程和接口設計,這是否與我們的初衷背道而馳呢?
上面都是一些基本概念的介紹,下面我就來(lái)通俗介紹一下,在DSP里,你是一個(gè)軟件設計者,硬件已經(jīng)完全固化,你所要做的,就是在這個(gè)固定的硬件平臺實(shí)現其功能的最優(yōu)化,一般TI的DSP涉及最多的是一些基本的BIOS操作系統之間的任務(wù)調度,以及算法改進(jìn)與優(yōu)化等待, DSP的關(guān)鍵優(yōu)勢包括其對于新型及復雜算法時(shí)的更短的開(kāi)發(fā)時(shí)間,以及能夠運行多種算法的靈活性。
而對于FPGA來(lái)說(shuō),你是一個(gè)硬件設計者,FPGA就是一張白紙,上面寫(xiě)什么,畫(huà)什么都取決于你。同樣一片FPGA,菜鳥(niǎo)和高手實(shí)現的功能會(huì )是天壤之別,FPGA的最大優(yōu)勢在于硬件實(shí)現已及通過(guò)并行處理實(shí)現的效率增益。使用FPGA,您大多的時(shí)間并非進(jìn)行算法設計與優(yōu)化,而是邏輯設計與時(shí)序約束等等。
FPGA與DSP關(guān)系:
1、 DSP側重于核心算法處理,FPGA側重于外圍控制處理。
2、 DSP內是用C語(yǔ)言編寫(xiě),語(yǔ)言執行是串行處理,效率比較低。
FPGA側重于并行處理,效率較高;還有交合邏輯(外圍接口、通訊等);
FPGA發(fā)展領(lǐng)域:
使用領(lǐng)域:電子設計、通訊、汽車(chē)、軍工
不適合:消費類(lèi)產(chǎn)品(手機)—FPGA功耗高;
FPGA技術(shù)難點(diǎn):
1、 需要專(zhuān)門(mén)的硬件語(yǔ)言來(lái)開(kāi)發(fā)
2、 FPGA靈活性比較高,設計是由工程師來(lái)決定,需要測試驗證
主圖:

評論