一種基于稀疏矩陣的多核并行擾碼方法
同理,并行擾碼生成器在i時(shí)刻的狀態(tài)向量Fi也可以寫(xiě)為三元組的形式。值得注意的是,由于Fi是列向量,其三元組形式中的列序號(hào)均為1。
1.2.2 稀疏矩陣相乘
對(duì)狀態(tài)轉(zhuǎn)移矩陣A、狀態(tài)向量Fi進(jìn)行三元組存儲(chǔ)后,利用其三元組結(jié)構(gòu)完成兩者的矩陣乘法。具體步驟為:首先遍歷A的三元組中第一行對(duì)應(yīng)的列序號(hào),若在列向量Fi的三元組中有相同的行序號(hào),則將兩個(gè)三元組中的對(duì)應(yīng)元素相乘并累加,直至A的三元組中第一行元素遍歷完畢,然后將其乘累加結(jié)果進(jìn)行模二運(yùn)算,再作為Fi+N的第一個(gè)數(shù)據(jù)。以此類推,可以得到一個(gè)并行周期后的寄存器狀態(tài)向量Fi+N,將得到的Fi+N再次進(jìn)行三元組存儲(chǔ),重復(fù)上述步驟,即可實(shí)現(xiàn)N路的并行擾碼生成器。
2 運(yùn)算量分析
由于產(chǎn)生m序列的r級(jí)線性反饋移位寄存器能夠遍歷除全0外的2r-1個(gè)狀態(tài),不失一般性,且假設(shè)寄存器狀態(tài)向量Fi中每個(gè)元素取值1,0的概率都為0.5。在實(shí)現(xiàn)并行擾碼生成器時(shí),狀態(tài)轉(zhuǎn)移矩陣A與狀態(tài)向量Fi進(jìn)行一次乘法運(yùn)算后,采用普通矩陣相乘的乘法次數(shù)為r2,而采用稀疏矩陣相乘的平均乘法次數(shù)為0.5×an,式中an為稀疏矩陣A的非零元素個(gè)數(shù)。
由于加擾、解擾的運(yùn)算量主要來(lái)自于并行擾碼生成器,如式(8)所示,采用文獻(xiàn)中IEEE 802.11n的擾碼生成多項(xiàng)式,給出了實(shí)現(xiàn)并行擾碼生成器時(shí),分別采用普通矩陣乘法與稀疏矩陣乘法的運(yùn)算量見(jiàn)表1。
表中,N表示并行支路數(shù),采用文獻(xiàn)中IEEE 802.11n的擾碼生成多項(xiàng)式,F(xiàn)i的一次狀態(tài)轉(zhuǎn)移矩陣T如式(9)所示,則A=TN,r=7。
從表1可以看出,采用IEEE 802.11n的生成多項(xiàng)式,與普通矩陣乘法實(shí)現(xiàn)的多核并行擾碼方法相比,基于稀疏矩陣的多核并行擾碼方法,其乘法運(yùn)算量降低了一個(gè)數(shù)量級(jí)。
3 結(jié)語(yǔ)
針對(duì)多核環(huán)境中的無(wú)線通信信號(hào)處理,本文提出了一種基于稀疏矩陣的多核并行擾碼方法,該方法考慮擾碼生成器中狀態(tài)轉(zhuǎn)移矩陣的稀疏特性,應(yīng)用稀疏矩陣的運(yùn)算產(chǎn)生了并行輸出的偽隨機(jī)碼,并且利用多個(gè)處理器核對(duì)輸入信號(hào)進(jìn)行并行加擾、解擾。該方法與普通矩陣乘法實(shí)現(xiàn)的多核并行擾碼相比,其乘法運(yùn)算量降低了,同時(shí)還充分利用多核資源,為在多核環(huán)境中實(shí)現(xiàn)高速信號(hào)的加擾、解擾提供了參考。
評(píng)論