一種基于DSP的MIMO系統(tǒng)空時編碼盲識別方法
(1)預白化。預白化的目的是去除信道對接收信號相關性的影響。白化矩陣W通過對分時相關矩陣P做特征值分解得到
,其中A-1為特征值矩陣Λ的廣義逆。W與原數(shù)據(jù)相乘便可得到解相關矩陣Y。 (2)計算時滯相關度。利用接收信號預白化后得到的解相關矩陣Y,依據(jù)統(tǒng)計學公式計算時滯相關范數(shù)
空時編碼矩陣的理論時滯相關特性僅與編碼矩陣本身有關。因此,應用與式(1)相同的形式,可將編碼矩陣不同的列進行矩陣乘加運算,并取F范數(shù)來表征。
由此得出計算空時編碼的時滯相關矩陣R(τ)
其中,空時編碼矩陣的每一列代表不同的發(fā)射時刻,A(u)是碼型A編碼矩陣的第u列,l為碼型分組長度。已預白化后的接收信號矩陣與發(fā)送端編碼矩陣,在時滯相關函數(shù)F范數(shù)上有如下關系
(3)判決碼型。遍歷候選碼集,計算出接收信號與候選碼集中每一種空時碼的相關度,取其中最相關的碼型便為判決碼型。
2.3 軟件設計
軟件系統(tǒng)采用模塊化結(jié)構(gòu)設計,程序流程如圖5所示。包括系統(tǒng)啟動、配置系統(tǒng)寄存器、設置全局變量和開啟中斷控制等。當ADC模塊將采樣數(shù)據(jù)全部寫入SDRAM后,CPLD通知DSP觸發(fā)DMA中斷1,將SDRAM中的數(shù)據(jù)讀入DSP,讀取結(jié)束后DMA觸發(fā)中斷2,并對ADC采樣數(shù)據(jù)進行處理:(1)預白化,去除新到對采樣數(shù)據(jù)相關性的影響。(2)計算采樣數(shù)據(jù)與候選集中每種碼字的時滯相關度。(3)根據(jù)上述計算結(jié)果,選取使時滯相關度最小的碼型為判決碼型。
通過對DMAC寄存器的設置,可控制DMA的流向、通道和方式,典型的數(shù)據(jù)讀取關鍵代碼如下:
數(shù)據(jù)處理部分的關鍵函數(shù)包括白化和時滯相關量計算,數(shù)據(jù)傳遞采用了單維讀入與多維傳遞的方式,即將多天線的數(shù)據(jù)按照天線順序依次讀入,但在DSP內(nèi)部數(shù)據(jù)傳遞時,多根天線的數(shù)據(jù)按照時間順序傳遞,在函數(shù)內(nèi)部手動尋址,即符合算法要求,又加快了數(shù)據(jù)處理的速度。數(shù)據(jù)處理時包括大量的矩陣轉(zhuǎn)置和乘加操作,在計算時優(yōu)化為內(nèi)積計算模式,使用ALU運算塊X和Y,每個周期并行計算時滯矩陣兩列之間的相關范數(shù),這便節(jié)省了內(nèi)存資源,減少了尋址次數(shù),且加快了計算速度。
本算法在不同參數(shù)下的Matlab性能仿真如圖6所示,采樣數(shù)據(jù)越長,接收天線數(shù)越多,識別性能也越好。實際測試證明與期望相一致,驗證了設計的合理性和正確性。
3 結(jié)束語
DSP芯片具有的特殊軟硬件結(jié)構(gòu)和指令系統(tǒng),使其能高速處理各種數(shù)字信號處理算法?;诖嗽O計的空時編碼盲識別方法具有速度快、精度高的特點。同時該系統(tǒng)依靠簡潔的外部硬件電路設計和合理的軟件程序設計,能夠?qū)崿F(xiàn)對常用空時編碼模式的正確識別。且該系統(tǒng)的可擴展性良好,當需要識別最新的空時編碼時,只需將其放入編碼方式候選集中,為其分配顯示接口即可,而無需過多更改硬件設置及軟件程序。
c++相關文章:c++教程
評論