基于DSP的實時數(shù)據(jù)處理系統(tǒng)淺析
前言:
隨著信息技術的飛速發(fā)展,人們更加迫切得需要準確、快速地獲取大量數(shù)據(jù),并能從中方便、準確地提取有用信息。隨著對系統(tǒng)需求的增加,系統(tǒng)不但需要高速的數(shù)據(jù)處理能力,還需要具有良好的系統(tǒng)控制功能。因此,傳統(tǒng)的單一DSP的架構已經不能完全滿足人們的需求。
針對這一問題,現(xiàn)在比較流行的解決方案為:DSP/MCU融合或者DSP+FPGA架構。
1.1 DSP特點
DSP一般采用哈佛架構,超長指令字架構等,數(shù)據(jù)存取和指令分開,內部運算單元多,有專門的運算乘加結構,因此運算速度極高。其內部存儲器(RAM和ROM)很大,并且可以擴展,外部接口豐富,配合流水線操作,特別適合進行大量數(shù)字信號的快速處理。盡管如此,DSP芯片的單機處理能力還是有限的。
1.2 MCU特點
MCU接口相當靈活,并集成了FLASH、DAC、ADC、SRAM、總線、定時器/計時器、I/O、串行口等功能單元,非常適合于各種控制應用。但是,MCU數(shù)據(jù)存取和指令沒有分開,運算速度較低,運算單元較少,且內部存儲器不大,對大量數(shù)字信號的快速處理無能為力。
1.3 FPGA特點
FPGA以強大的靈活性著稱。FPGA可以反復地編程、擦除以及靈活的外圍設備接口是它的最大的亮點。非常適合高性能運算密集型應用,可以以更大的并行度實現(xiàn)產品所需功能。
1.4 DSP/MCU融合或者DSP+FPGA架構的優(yōu)點和局限性
面對大量數(shù)據(jù)處理并且需要許多控制功能的實時系統(tǒng),將 DSP和 MCU的優(yōu)缺點互補,不失為一個好的解決方案,也逐漸受到人們的青睞。
而采用DSP+FPGA的數(shù)字硬件系統(tǒng)正顯示出它的優(yōu)越性,越來越受到人們的重視。
SP+FPGA結構最大的特點是結構靈活,通用性強,同時其開發(fā)周期較短,系統(tǒng)易于維護和擴展,適合于實時數(shù)據(jù)采集和處理。傳統(tǒng)DSP芯片的結構本質上是串行的,對于需要處理的數(shù)據(jù)量大、處理速度高,但是運算結構相對比較簡單的底層信號處理算法來說,并沒有優(yōu)勢可言,而這恰好是FPGA硬件的強項。而且針對DSP芯片不能直接與PC機進行異步串行通行的缺點,可以通過FPGA的相關通信協(xié)議轉換來彌補。再結合FPGA的并行處理方式,使得DSP+FPGA非常適合超高速和實時信號處理領域。
然而,雖然DSP/MCU融合或者DSP+FPGA架構的方案解決了單一處理器不能兼顧大數(shù)據(jù)量處理和大量控制功能并存的問題,但是魚與熊掌不可得兼,不能否認,DSP/MCU融合或者DSP+FPGA架構的方案又引出了新的問題。隨著系統(tǒng)處理器數(shù)量的增加,帶來的,無疑將是系統(tǒng)體積的增大,功耗的提高。至于系統(tǒng)的抗干擾能力和穩(wěn)定性更是問題,也更加要費一番苦心去解決。
2、基于SOPC嵌入式系統(tǒng)的FPGA的架構
針對需要良好控制能力的實時數(shù)據(jù)采集系統(tǒng),從追求高性能、低成本的角度考慮,基于 SOPC技術和uClinux嵌入式操作系統(tǒng)的FPGA架構是個很好的解決方案。
2.1 FPGA代替部分DSP功能
隨著工藝技術的進步,F(xiàn)PGA的功耗不斷降低,速度逐漸提高,同時成本也越來越低。因此,在某些領域,代替DSP或者MCU,為許多需要功能復雜的應用提供了快速、低成本的解決方案。用FPGA來實現(xiàn)數(shù)字信號處理可以很好地解決并行性和速度問題,而且其靈活的可配置特性以及先進的開發(fā)工具使得FPGA構成的DSP系統(tǒng)彌補了傳統(tǒng)方案的諸多不足。
2.2 SOPC技術
圖1 SOPC結構圖
SOPC技術是美國Altera公司于2000年最早提出的,并同時推出了相應的開發(fā)軟件QuartusⅡ。通常,除常規(guī)的SRAM、DRAM、Flash外,系統(tǒng)還需要配置網(wǎng)絡通信接口、串行通信接口、USB接口、VGA接口、PS/2接口或其他專用接口等。這樣才能構成一個完整的系統(tǒng),使系統(tǒng)更為完備,能適應多任務的要求。但同時帶來了整個系統(tǒng)的體積、功耗增加的問題,并且降低了系統(tǒng)的可靠性。如果將ARM或其他知識產權以硬核方式植入FPGA中,則利用FPGA中的可編程邏輯塊,就能很好地解決這些問題,這樣就使得FPGA靈活的硬件設計和硬件實現(xiàn)與處理器的強大軟件功能有機地結合,高效地實現(xiàn)SOPC系統(tǒng)。
而且在構建SOPC系統(tǒng)的過程中,我們可以通過QuartusⅡ將系統(tǒng)模型方便地搭建在FPGA上,避免了專用配置和采用金屬互連的走線。器件面積更小,開發(fā)周期更短,成本更低。在QuartusⅡ中構建系統(tǒng)模型的時候,還可以利用相關工具(DSP Builder)很方便地將各種DSP算法的IP核添加到工程中。實踐證明,用FPGA實現(xiàn)的MPEG4壓縮/解壓縮速度比通用DSP快10倍以上。
2.3 uClinux嵌入式操作系統(tǒng)
uClinux是一種廣泛應用于嵌入式設備中的操作系統(tǒng),是針對微控制領域而設計的操作系統(tǒng),適合不具備內存管理單元(MMU)的微處理器,它的特點是高穩(wěn)定性、強大的網(wǎng)絡功能和出色的文件系統(tǒng)支持等。基于uClinux操作系統(tǒng)的應用程序,其所有的硬件細節(jié)均對用戶屏蔽,對硬件進行直接控制的底層驅動程序均封裝在操作系統(tǒng)內,通過設備驅動程序接口來完成,用戶只需在高層通過操作系統(tǒng)所提供的系統(tǒng)調用進行編程,像在PC機上一樣,擁有完善的操作系統(tǒng)并提供應用程序接口(API),將開發(fā)好的應用程序直接在嵌入式系統(tǒng)上執(zhí)行,不需要了解所有硬件部件的細節(jié),并編寫相應的驅動子程序,降低了軟件設計難度和工作量,有很好的可移植性。而且,uClinux有一個完整的TCP/IP協(xié)議棧,對其他許多的網(wǎng)絡協(xié)議也都提供支持;RTlinux模塊可以對系統(tǒng)的實時性提供軟件上的支持;而且,嵌入式操作系統(tǒng)uClinux可以作為一個模塊,融合到SOPC系統(tǒng),與SOPC系統(tǒng)一起,方便地嵌入到FPGA處理器中。最后,再結合FPGA的硬件并行處理架構,這種高靈活性、高集成度、高實時性嵌入式處理系統(tǒng)完全有能力應付要求實時性較高的場合。
2.4 研究開發(fā)嵌入式數(shù)據(jù)采集系統(tǒng)的重要意義
隨著嵌入式技術的發(fā)展,嵌入式系統(tǒng)的開發(fā)成本逐漸降低,通用性日漸提高,更便于維護和移植,而且嵌入式系統(tǒng)體積小、功耗少、穩(wěn)定性高,在工業(yè)控制和以太網(wǎng)的傳輸方面優(yōu)勢更加明顯。所以,研究開發(fā)嵌入式數(shù)據(jù)采集系統(tǒng)對應付海量數(shù)據(jù)處理的實時系統(tǒng)有十分重要的意義。
3、總結與展望
采用DSP/MCU或者DSP+ARM的架構,可以很好的滿足大量數(shù)據(jù)處理并且需要許多控制功能的實時系統(tǒng),但是隨著性能的提高,功耗和集成度問題顯而易見。當需要處理的數(shù)據(jù)量不大的時候,基于SOPC技術的FPGA系統(tǒng)可以應付,而且靈活性好,集成度高,功耗小,但是無法解決海量數(shù)據(jù)的處理。隨著技術的進步,也許在不久的未來,基于哈佛結構的DSP芯片會有更好的結構改善,或者FPGA會發(fā)展到能夠獨當一面的地步,或者DSP、FPGA、MCU會融合得更好,或者一種新的結構的芯片,異軍突起……
科研技術的快速發(fā)展與進步,各種新的方案也隨之不斷出現(xiàn),這就使得人們在解決方案的選擇上有了更多的自由與空間。然而,可以肯定的是,在選擇解決方案的時候,追求高性能、不斷降低成本的,將是我們始終不變的目標。
評論