余子寒,姜永廣,隋天宇,劉 文
(1.中國電子科技集團(tuán)公司第三十研究所,四川成都610041;2.信息化部檔案館,北京100000)
LTE中偽隨機(jī)序列生成算法的設(shè)計(jì)與實(shí)現(xiàn)*
余子寒1,姜永廣1,隋天宇1,劉 文2
(1.中國電子科技集團(tuán)公司第三十研究所,四川成都610041;2.信息化部檔案館,北京100000)
加擾是LTE物理層過程的一個(gè)重要環(huán)節(jié),而擾碼序列產(chǎn)生的快慢會(huì)對(duì)系統(tǒng)的整體性能產(chǎn)生重要的影響。由于產(chǎn)生偽隨機(jī)序列的比特型生成算法存在耗時(shí)長、占用存儲(chǔ)空間大的缺點(diǎn),針對(duì)此問題提出了一種新型的緊湊型生成算法。在CCS5.2平臺(tái)對(duì)該算法進(jìn)行了實(shí)現(xiàn)之后,基于TMS320C6670型號(hào)DSP進(jìn)行了功能和性能測試,測試結(jié)果表明,該算法功能正確,且性能較比特型生成算法提高了10倍左右。
長期演進(jìn) 偽隨機(jī)序列 數(shù)字信號(hào)處理器
偽隨機(jī)序列在通信系統(tǒng)中應(yīng)用廣泛,可應(yīng)用于OFDM(Orthogonal Frequency Division Multiplexing)系統(tǒng)的峰均比抑制[1],也可應(yīng)用于通信系統(tǒng)同步[2]、信息系統(tǒng)加密[3]、信道估計(jì)[4]、抗干擾等領(lǐng)域。LTE中用到的偽隨機(jī)序列是由31位比特長度的Gold序列來定義,主要用于對(duì)數(shù)據(jù)進(jìn)行加擾,該Gold序列是通過兩個(gè)m序列移位后再做模二相加得到[5],見式(1)、式(2)、式(3):
式中,Nc=1 600,c(n)的長度為MPN,第一個(gè)m序列用x1(0)=1,x1(n)=0,n=1,2,3,…30來初始化,第二個(gè)m序列則需要根據(jù)不同的應(yīng)用場景進(jìn)行初始化,如在控制信道中用cinit=NcellID來初始化,而業(yè)務(wù)信道中則用+來初始化?;贒SP(Digital Signal Processor)的C語言編程產(chǎn)生c(n)序列時(shí),由于序列的每一位都是二進(jìn)制比特1或者0,開發(fā)者可以選擇將每一位比特?cái)?shù)據(jù)存進(jìn)8位無符號(hào)整型數(shù)據(jù)中,也就是將每一個(gè)比特序列值存進(jìn)一個(gè)8位比特長度的DSP最小數(shù)據(jù)類型里面,然后根據(jù)協(xié)議中的公式設(shè)計(jì)出比特型算法。這種算法雖然實(shí)現(xiàn)簡單,但當(dāng)需要生成較長的擾碼序列時(shí),不僅會(huì)占用大量的存儲(chǔ)空間,而且運(yùn)算量也會(huì)相應(yīng)的增加,不利于進(jìn)行實(shí)時(shí)的數(shù)據(jù)處理。針對(duì)LTE用到的Gold序列的特點(diǎn),文中提出了一種緊湊型的偽隨機(jī)序列生成算法,該算法將序列的每32個(gè)比特放到一個(gè)32位無符號(hào)整形數(shù)據(jù)中,通過提高每次運(yùn)算處理的數(shù)據(jù)量,不僅可以大大降低數(shù)據(jù)存儲(chǔ)空間,同時(shí)也可以有效改善數(shù)據(jù)處理速率。
緊湊型生成算法的思路是:定義兩個(gè)32位無符號(hào)整形數(shù)組x1[n]和x2[n]用于存放兩個(gè)m序列,先將初始化的31個(gè)比特放到x1[0]和x2[0]的低31位,再根據(jù)公式中的遞推關(guān)系求出序列的第32個(gè)比特位,并將其分別放到x1[0]和x2[0]的最高有效位。此時(shí)相當(dāng)于已經(jīng)求出m序列的前32位,那么下一步需要做的就是找出x1[n+1]和x1[n]及x2[n+1]和x2[n]的遞推關(guān)系,根據(jù)遞推關(guān)系最終就可以得到兩個(gè)m序列值。最后對(duì)兩個(gè)m序列移位后進(jìn)行模二相加即可得到緊湊型的Gold序列c(n)。當(dāng)計(jì)算x1[n]時(shí),初始化x1[0]的計(jì)算過程如圖1所示,圖1中方框內(nèi)的0、1、2…代表m序列的比特位號(hào),計(jì)算x1[1]的過程如圖2所示,其中x1(60)、x1(61)、x1(62)、x1(63)可以根據(jù)式(2)計(jì)算得到,即:
x1[0]作為一個(gè)32位無符號(hào)整形數(shù)據(jù),載入的是第一個(gè)m序列的第0號(hào)到第31號(hào)比特位的對(duì)應(yīng)值。此時(shí)得出x1[1]和x1[0]之間的關(guān)系:
其中,temp1用于求出x1[1]的低28位,即從第32到第59比特位,temp2為求出的第29到第60比特位對(duì)應(yīng)值,temp1^temp2運(yùn)算可得到第60、61、62、63比特位對(duì)應(yīng)的值,基于以上運(yùn)算可得到x1[1]對(duì)應(yīng)的從第32號(hào)到第63號(hào)位比特序列值。從x1[1]和x1[0]之間的關(guān)系中,同理可歸納出x1[n+1]和 x1[n]的遞推關(guān)系如下:
圖1 初始化x1[0]Fig.1 Initializingx1[0]
圖2 計(jì)算x1[1]Fig.2 Calculating x1[1]
當(dāng)計(jì)算x2[n]時(shí),初始化x2[0]的過程如圖3所示。計(jì)算x2[1]的過程如圖4所示,其中x2(60)、x2(61)、x2(62)、x2(63)可以根據(jù)式(3)計(jì)算得到,原理和求x1[n]相同,這樣就可以從中找出x2[1]和x2[0]的遞推關(guān)系,并歸納出x2[n+1]和x2[n]之間的遞推關(guān)系,只是x2[n+1]和x2[n]之間的遞推關(guān)系比x1[n+1]和x1[n]之間的遞推關(guān)系相對(duì)復(fù)雜,詳細(xì)情況可參考后續(xù)對(duì)算法的實(shí)現(xiàn)過程。
圖3 初始化x2[0]Fig.3 Initializing x2[0]
圖4 計(jì)算x2[1]Fig.4 Calculating x2[1]
2.1 CCS5.2簡介
CCS5.2是TI嵌入式處理器較新的集成開發(fā)環(huán)境IDE(Integrated Development Environment),包含編輯器、編譯器、調(diào)試器、操作系統(tǒng)等開發(fā)組件。CCSv5相對(duì)于CCSv4體積更小、速度更快、界面更簡單。目前的CCS5.2使用動(dòng)態(tài)下載,用戶只需下載一個(gè)小的初始安裝包,然后根據(jù)需要選擇相應(yīng)的軟件包進(jìn)行下載并自動(dòng)安裝,以后還可以添加其它功能。CCS5.2還對(duì)常用的任務(wù)如CCS的啟動(dòng)、調(diào)試會(huì)話的啟動(dòng)、新工程的創(chuàng)建進(jìn)行了提速,同時(shí)也加快了單步運(yùn)行、存儲(chǔ)目標(biāo)配置等過程的響應(yīng)速度。關(guān)于CCS5.2的使用,開發(fā)者可以從幫助文檔中獲得有益的提示。
2.2 緊湊型算法的實(shí)現(xiàn)
基于DSP的C語言編程實(shí)現(xiàn)的程序可讀性好,也便于在不同的DSP平臺(tái)之間進(jìn)行移植[6]。建立新工程并對(duì)工程進(jìn)行適當(dāng)?shù)呐渲煤?就可以編寫函數(shù)模塊并加載所需要的頭文件。編譯運(yùn)行通過后就可以進(jìn)行在線調(diào)試,在線調(diào)試之前需要將開發(fā)板與主機(jī)進(jìn)行連接,然后配置.ccxml文件,并測試主機(jī)和開發(fā)板的連通性,連接成功后即可將.out文件下載到開發(fā)板上,之后就可進(jìn)行單步調(diào)試。
對(duì)函數(shù)進(jìn)行封裝的關(guān)鍵代碼如下:
文中對(duì)比特型生成算法和緊湊型生成算法分別做了實(shí)現(xiàn),比特型生成算法的關(guān)鍵代碼如下:
基于CCS5.2軟件開發(fā)環(huán)境和自帶仿真器的TMDXEVM6670L評(píng)估板對(duì)兩種算法進(jìn)行在線調(diào)試后,令M_pn=86 400,并開通O2級(jí)別優(yōu)化,循環(huán)測試1 000次,記錄平均耗時(shí),得到性能比較結(jié)果見表1,可以發(fā)現(xiàn)新算法較比特型算法可以節(jié)省87.5%的內(nèi)存空間,所耗費(fèi)的cycle數(shù)也可以降低90.3%。
表1 上述兩種算法的性能比較Table 1 Performance comparison of the abovetwo types of algorithm
為滿足LTE物理層的高速率數(shù)據(jù)處理要求,工程師們不僅要根據(jù)開發(fā)平臺(tái)對(duì)算法做出選擇,而且需要做大量的優(yōu)化工作。偽隨機(jī)序列的產(chǎn)生模塊是LTE系統(tǒng)開發(fā)中的一個(gè)重要模塊,幾乎所有物理信道的加擾模塊都會(huì)用到,還有其它一些物理層過程也會(huì)用到,比如用于UE(User Equipment)端專用參考信號(hào)的產(chǎn)生[7]。當(dāng)然文中提到的新算法可以通過使用dsplib.h中的一些匯編函數(shù)指令,或者使用一些SIMD(Single Instruction Multiple Data)進(jìn)行優(yōu)化,這樣可以使新算法達(dá)到更優(yōu)的性能。另外,根據(jù)項(xiàng)目的需要,開發(fā)者也可以選擇在FPGA(Field Programmable Gate Array)上實(shí)現(xiàn)偽隨機(jī)序列的產(chǎn)生算法[8]。
[1] ZELENKOV A V,LITVINENKO A.OFDM PAPR reduction by pre-scrambling and clipping[C]//Electronics Conference(BEC),2012 13th Biennial Baltic.IEEE, 2012:141-144.
[2] 段永顥,孫宇明,趙鵬.跳頻OFDM通信系統(tǒng)同步算法及實(shí)現(xiàn)[J].通信技術(shù),2012,45(06):76-79.
DUAN Yong-hao,SUN Yu-ming,ZHAO Peng.FHOFDM Receiving Synchronization Algorithm and Implementation[J].Communications Technology,2012,45 (06):76-79.
[3] 劉栩,石乃軒,王健,等.多重加密通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].通信技術(shù),2010,43(05).
LIU Xu,SHI Nai-xuan,WANG Jian,et al.Design and Implementation of Multiple-Encryption Communication System[J].Communications Technology,2010,43(05).
[4] KIM J,KIM S,KIM N Y,et al.A Novel Location Finding System for 3GPP LTE[C]//Personal,Indoor and Mobile Radio Communications,2009 IEEE 20th International Symposium on.[s.l.]:IEEE,2009:3213-3217.
[5] 3GPP.TS 36.211(Version 11.3.0 Release 11).Access EUTR:Physical Channels and Modulation[S].Europe: ETSI,2013:103-104.
[6] 郭勇,邵凝寧.Viterbi譯碼算法在55系列DSP上的C語言實(shí)現(xiàn)[J].無線電通信技術(shù),2013,39(02):79-82.
GUO Yong,SHAO Ning-ning.C Language Implementation of Viterbi Decoding Algorithm of Viterbi Decoding in 55x DSP[J].Radio Communications Technology,2013, 39(02):79-82.
[7] 陳貝,陳發(fā)堂.LTE-A中UE專用參考信號(hào)的DSP實(shí)現(xiàn)[J].光通信研究,2013,39(04):65.
CHEN Bei,CHEN Fa-tang.DSP Realization of UE-Specific Reference Signals in LTE-A Systems[J],2013,39 (04):65.
[8] JEONG C B,LEE Y H,BAE H D.High-speed J-delayed&K-dimensional LFSR Architecture in VLSI [C]//Circuits and Systems(MWSCAS),2013 IEEE 56th International Midwest Symposium.[s.l.]:IEEE, 2013:433-436.
YU Zi-han(1987-),male,M.Sci.,majoring in communication and information system.
姜永廣(1973—),男,碩士,高級(jí)工程師,主要研究方向?yàn)橥ㄐ排c系統(tǒng)工程;
JIANG Yong-guang(1973-),male,M.Sci.,senior engineer,mainly specialized in communication and systems engineering.
隋天宇(1983-),男,博士,工程師,主要研究方向?yàn)橥ㄐ排c網(wǎng)絡(luò)系統(tǒng)設(shè)計(jì);
SUI Tian-yu(1983-),male,Ph.D.,engineer,mainly engaged in the design of communications and networks.
劉 文(1982—),女,碩士,工程師,主要研究方向?yàn)橹笓]自動(dòng)化。
LIU Wen(1982-),female,M.Sci.,engineer,majoring in command automation.
Design and Realization of Pseudo-Random Sequence Generating Algorithm in LTE
YU Zi-han1,JIANG Yong-guang1,SUI Tian-yu1,LIU Wen2
(1.No.30 Institute of CETC,Chengdu Sichuan 610041,China; 2.General Archive of Information Department,Beijing 100000,China)
Scrambling is an important link to physical-layer procedure in LTE,and the generating speed of scrambling sequence has a significant influence on the overall performance of the system.Aiming at the disadvantages of long time-consuming and large storage occupation for bit-generation algorithm of pseudorandom sequence,a novel type of compact generation algorithm is proposed.Function and performance tests are carried out on the basis of TMS320C6670 DSP after the realization of this algorithm on CCS5.2 platform.The test result indicates the validity of this algorithm,and that the performance of new algorithm is better than that of the bit-generation algorithm by about 10 times.
LTE;pseudo-random sequence;DSP
TP393
A
1002-0802(2014)02-0150-04
10.3969/j.issn.1002-0802.2014.02.006
余子寒(1987—),男,碩士研究生,主要研究方向?yàn)橥ㄐ排c信息系統(tǒng)開發(fā);
國家自然科學(xué)基金(No.61171501)
Foundation Item:National Natural Science Foundation of China(No.61171501)