高性能信號處理通用平臺研究
0引言
當(dāng)前信號處理領(lǐng)域內(nèi)陣列信號處理技術(shù)正在迅速發(fā)展,各種新的算法及新的處理技術(shù)不斷出現(xiàn),要求信號處理系統(tǒng)具有快速適應(yīng)各種新算法和新技術(shù)的能力,采用傳統(tǒng)的基于專用硬件的設(shè)計方法所開發(fā)出來的信號處理系統(tǒng)無法滿足這樣的要求。開發(fā)具有通用性的計算平臺,盡可能通過軟件來實(shí)現(xiàn)信號處理功能,成為信號處理的新趨勢,“軟件雷達(dá)”、“軟件無線電”等概念都是基于這一思想。
通過靈活的軟件編程來適應(yīng)算法的變化,通過簡單的硬件擴(kuò)展來適應(yīng)規(guī)模的變化,使系統(tǒng)的靈活性大大提高,研制周期、費(fèi)用大為減少。要支持這種設(shè)計思路,必須研制出組成通用計算平臺的信號處理模塊,該模塊既能滿足系統(tǒng)實(shí)時處理需求,又具備通用性、可擴(kuò)展性。
本文提出了一種基于TMS320C6701信號處理器的高性能信號處理模塊的設(shè)計方案,設(shè)計了具有一定通用性的并行信號處理模塊,該模塊具有高速互連接口,可以根據(jù)應(yīng)用系統(tǒng)的需求構(gòu)成不同的并行系統(tǒng),完成各種信號處理任務(wù)。
1系統(tǒng)結(jié)構(gòu)
隨著微電子技術(shù)的突飛猛進(jìn),處理器的速度不斷得以提高,但實(shí)際應(yīng)用對于計算能力的需求還是遠(yuǎn)遠(yuǎn)超出了單個處理器可以提供的范圍,采用并行處理技術(shù)構(gòu)成多處理器系統(tǒng)滿足需要較強(qiáng)計算能力的應(yīng)用是一種行之有效的技術(shù)途徑。
并行處理的目的是通過采用多個處理單元同時對任務(wù)進(jìn)行處理,加速整個計算的過程,從而減少任務(wù)的執(zhí)行時間。整個任務(wù)可分解成一些小的任務(wù),分別分配給并行處理系統(tǒng)中各個處理單元執(zhí)行。一般而言,這些并行執(zhí)行的任務(wù)都不能完全獨(dú)立執(zhí)行,一個任務(wù)中的計算可能需要用到另一個任務(wù)中的數(shù)據(jù),各處理單元之間存在進(jìn)行數(shù)據(jù)交換的要求。因?yàn)榻粨Q數(shù)據(jù)而必須等待的時間,反映了處理單元之間的同步開銷。因此不難看出,并行處理額外增加了數(shù)據(jù)通信和同步等待等開銷。
為使任務(wù)執(zhí)行時間減少增加處理單元個數(shù)成為首要手段,同時要將任務(wù)進(jìn)行更細(xì)粒度的劃分以增加任務(wù)的并行度,但在增加處理單元和任務(wù)細(xì)粒度化的同時將帶來總通信量的增加,再加上同步時間和任務(wù)分配不均所造成的空等待時間開銷,增加處理單元的個數(shù)對增加系統(tǒng)處理能力得不償失。這使得在設(shè)計并行處理系統(tǒng)時必須著重考慮以下兩個方面:處理單元性能的提高以及處理單元間通信技術(shù)的改進(jìn)。
1.1處理單元的選擇
在通信、語音、圖像處理中信號的動態(tài)范圍有限,一般采用定點(diǎn)運(yùn)算就可以滿足要求,雷達(dá)、聲納信號需要較大的數(shù)據(jù)動態(tài)范圍和數(shù)據(jù)精度,若按定點(diǎn)處理會發(fā)生數(shù)據(jù)上溢出或下溢出,嚴(yán)重時處理將無法進(jìn)行,如果使用移位定標(biāo)或用定點(diǎn)模擬浮點(diǎn)運(yùn)算,程序的執(zhí)行速度將大大降低,為增強(qiáng)計算平臺的適用性,該通用信號處理平臺使用浮點(diǎn)處理器。
同樣的任務(wù)量,用高性能的處理單元構(gòu)成的“小”規(guī)模系統(tǒng),其效率要高于用較低性能的處理單元構(gòu)成的“大”規(guī)模系統(tǒng)。并行處理單元的性能相當(dāng)重要,它不僅包括運(yùn)算速度,還包括存儲器帶寬、數(shù)據(jù)通信速度等,美國TI公司的TMS320C6000系列DSP是業(yè)界最高性能的通用可編程DSP,TMS320C6701又是該系列中性能較高的浮點(diǎn)處理器。該款DSP完全滿足設(shè)計的通用計算平臺對信號處理單元性能的要求,因此選擇TMS320C6701作為信號處理模塊的處理單元。
1.2通信網(wǎng)絡(luò)的設(shè)計
陣列信號處理必然是多個信號處理單元并行工作,子任務(wù)分配在并行處理系統(tǒng)的各個處理單元中,子任務(wù)間數(shù)據(jù)通信速度和同步時間等不僅取決于處理單元本身的通信速度,還取決于連接處理單元的通信互連網(wǎng)絡(luò),通信鏈路豐富的復(fù)雜網(wǎng)絡(luò)往往能提供較高的數(shù)據(jù)通信速度,然而其設(shè)計和維護(hù)的難度要高得多。針對不同的實(shí)際應(yīng)用,采用不同形式的通信網(wǎng)絡(luò),可以降低通信網(wǎng)絡(luò)的復(fù)雜度。
在互連結(jié)構(gòu)設(shè)計中,把整個并行信號處理系統(tǒng)的互連結(jié)構(gòu)分為兩級:系統(tǒng)級互連結(jié)構(gòu)、模塊級互連結(jié)構(gòu)。
系統(tǒng)級互連結(jié)構(gòu)主要用于模塊間的通信,該設(shè)計中系統(tǒng)級的控制網(wǎng)絡(luò)和信號處理網(wǎng)絡(luò)分別采用RaceWay及VME實(shí)現(xiàn)。模塊級互連結(jié)構(gòu)主要指信號處理模塊內(nèi)的網(wǎng)絡(luò)結(jié)構(gòu)。信號處理模塊系統(tǒng)結(jié)構(gòu)如圖1所示。
信號處理模塊內(nèi)包含4個DSP,可提供4GFLOPS的峰值處理能力。模塊內(nèi)采用共享總線互連結(jié)構(gòu)。一般情況下,程序代碼和運(yùn)算數(shù)據(jù)應(yīng)存放于各DSP的片內(nèi)RAM或局部存儲器中,這樣可以減少共享存儲器訪問次數(shù),減少總線爭用,縮短存儲訪問延時。共享存儲器通常用來支持模塊內(nèi)4個DSP之間交換數(shù)據(jù),以及用來支持在模塊之間交換數(shù)據(jù)。
為了減少模塊內(nèi)各個DSP爭用總線帶來的時延,提高DSP之間的通信能力,相鄰的DSP之間還通過雙向的FIFO連接,構(gòu)成FIFO環(huán)。這種結(jié)構(gòu)十分適合流水處理的應(yīng)用,最大限度地減小了數(shù)據(jù)移動的開銷,提高了處理器間的通信速度。
流水處理以其簡單高效而被廣泛采用,但因?yàn)樗焕昧巳蝿?wù)時間上的并行性,而忽視了空間上的并行性,所以并行度不高,加速比受到限制。當(dāng)流水線中某一段任務(wù)負(fù)載量大于其他段時,就會形成處理瓶頸而降低系統(tǒng)效率。因此,流水線往往和并發(fā)操作結(jié)合起來,即在流水線處理的基礎(chǔ)上,部分的利用空間并行性,稱為局部并行全局串行網(wǎng)絡(luò)。與之對應(yīng)的是全局并行局部串行網(wǎng)絡(luò),即先利用空間并行性再利用時間并行性,設(shè)計出并行工作的多條流水線。
該并行信號處理系統(tǒng)的信號處理模塊所采用的互連形式——共享總線和FIFO環(huán)的結(jié)構(gòu),能夠很好地適應(yīng)流水處理的各種變形。
模擬信號相關(guān)文章:什么是模擬信號
評論