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