文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2016.03.013
中文引用格式: 代文強,李貴勇. 一種LTE-A幀定時同步算法的AISC設(shè)計與實現(xiàn)[J].電子技術(shù)應(yīng)用,2016,42(3):47-50.
英文引用格式: Dai Wenqiang,Li Guiyong. ASIC design and implementation of a LTE-A frame timing synchronization scheme[J].Application of Electronic Technique,2016,42(3):47-50.
0 引言
當前LTE-Advanced系統(tǒng)架構(gòu)趨于扁平化,以往的幀定時同步方案已不再適合LTE-Advanced系統(tǒng),因此,需要尋找一種新的幀定時同步實現(xiàn)方案。本文將該算法分成3個步驟:粗定時同步和小區(qū)組內(nèi)ID號檢測、精定時同步、幀同步和小區(qū)組ID號檢測。由于定時同步需進行FFT運算以及相關(guān)運算,這樣劃分能夠利用粗定時同步迅速地找到PSS的大致位置,縮小精定時同步的檢測范圍,很大程度上減少了精定時同步的計算量,并且加快幀定時同步過程的完成。
本文通過ASIC設(shè)計方案與傳統(tǒng)的FPGA處理相比,得出ASIC設(shè)計更適合于對實時性和可靠性要求高的大規(guī)模復(fù)雜的信號處理系統(tǒng),并且在面積和功耗上也有很大優(yōu)勢,可保證良好地適用于LTE_A用戶終端。
1 相關(guān)算法研究
1.1 粗定時同步和小區(qū)組內(nèi)ID號檢測
粗定時同步是為了迅速地找到主同步信號(Primary Synchronization Signal,PSS)的大致位置并獲得小區(qū)組內(nèi)標識(Identity,ID)號以便確定PSS的滑動范圍,因此從減少計算量、方便實現(xiàn)等因素考慮,決定采用基于接收PSS對稱性相關(guān)的粗定時同步方案[1]。
PSS在時頻域均具有對稱性,能夠在接收端利用該特性檢測PSS。該方案的具體步驟是:接收半幀的數(shù)據(jù)(假設(shè)這半幀的數(shù)據(jù)中含有一個完整的PSS),以第1個數(shù)據(jù)點為起點,依次取出長度為2 048的數(shù)據(jù),用r(n)表示,并將r(n)分成兩個部分。對這兩部分數(shù)據(jù)做滑動相關(guān)運算,運算結(jié)果的最大值所在位置就是PSS的大致位置,如式(1)所示[2]:
其中,N表示相關(guān)窗長度,即半個OFDM符號長度,當降采樣率設(shè)成1/16時,N取64。獲得的PSS大致位置為:
對該粗定時同步方案進行Matlab仿真,設(shè)置的仿真條件為:高斯白噪聲信道,信噪比為-10 dB,普通CP,定時偏移設(shè)為0,頻偏設(shè)為2 000 Hz,發(fā)送信號中PSS采用的為1。仿真圖如圖1所示。
從上圖可看出,最大值的橫坐標是2 333,通過換算得到在接收數(shù)據(jù)中的位置是35 280。PSS的實際位置為35 265,仿真結(jié)果與它差了15個點。由于進行了降采樣處理,采樣率為1/16,15個點的誤差可以接受。
該方案在找到PSS的大致位置后,最大值所在的組所對應(yīng)的即為接收PSS的根指數(shù),通過u與的一一對應(yīng)關(guān)系[2],可以得到的值。
1.2 精定時同步
為滿足同步精度要求,需要在粗定時同步的基礎(chǔ)上進行精定時同步來縮小查找范圍。本文采用基于接收PSS與本地PSS相關(guān)的算法[3]進行精定時同步。首先,由粗定時同步得到的在本地生成頻域PSS,再通過快速傅里葉反變換運算(Inverse Fast Fourier Transform,IFFT)變換到時域上。然后在d的左右各64個點范圍內(nèi),即[d×16-64,d×16+63],直接與降采樣前的時域接收數(shù)據(jù)進行滑動相關(guān),最大值所在的位置即精定時同步的位置。相關(guān)函數(shù)由下式所示[3]:
對精定時同步進行Matlab仿真,設(shè)置的仿真條件為:高斯白噪聲信道,信噪比為-10 dB,普通CP,定時偏移設(shè)為0,頻偏設(shè)為2 000 Hz,發(fā)送信號中PSS采用的為1。仿真圖如圖2所示。
從上圖可看出,最大值的橫坐標是63,與實際的位置相符。
1.3 幀同步和小區(qū)組ID號檢測
通過定時同步可以找到PSS的精確位置,但是不能判斷當前接收數(shù)據(jù)屬于前半幀還是后半幀(子幀0或者子幀5)[5]。因此需要通過檢測輔同步信號(Second Synchronization Signal,SSS)來完成幀同步,并獲得。為了降低復(fù)雜度、減少計算量,決定采用解擾的辦法獲取SSS生成式[1]中的參數(shù)m0和m1,根據(jù)m0和m1與的一一對應(yīng)關(guān)系,得到小區(qū)ID組號。
常用的解擾檢測算法有相干檢測算法與非相干檢測算法,本文采用相干檢測算法[4]。此算法的原理如下:
將時域接收PSS通過FFT變換成頻域PSS,用Rpss(k)表示,并生成本地頻域PSS,用Tpss(k)表示。當信道的相干時間大于4個OFDM符號長度時,能夠算出信道沖激響應(yīng)的估計值:
其中,i=0,1,…,30,M表示分段相關(guān)時的分段數(shù),NM表示每段中的數(shù)據(jù)長度,這里假設(shè)M=4。
2 ASIC設(shè)計與實現(xiàn)
2.1 結(jié)構(gòu)說明
本文所設(shè)計的幀定時同步模塊的硬件結(jié)構(gòu)如圖3所示,由4個部分組成:接口模塊、存儲器模塊、控制模塊和運算模塊。
圖3中,regif模塊采用通用的ZSP總線接口,對模塊相關(guān)功能所需參數(shù)進行設(shè)置,并能查詢該模塊的運行狀態(tài);mem模塊實現(xiàn)ZSP總線和運算模塊對存儲器資源的讀寫,包含輸入與輸出存儲器。
2.2 運算(core)模塊
本模塊主要分為FFT模塊、產(chǎn)生本地PSS或SSS序列模塊、最大值查找模塊、PSS沖激響應(yīng)計算模塊和m0/m1估計模塊。
2.2.1 FFT模塊
本模塊支持的運算點數(shù)分為128點、256點、512點、1 024點和2 048點。FFT運算完成后,找出最大值以及歸一化因子并輸出。同時采用八路并行的方式來設(shè)計。八路并行結(jié)構(gòu)就是在并行迭代結(jié)構(gòu)的基礎(chǔ)上,把并行迭代結(jié)構(gòu)中每一級的全并行改成八路并行,減少了并行單元的數(shù)量,從而降低芯片的面積[6]。
2.2.2 產(chǎn)生本地PSS或SSS序列模塊
本模塊能夠根據(jù)不同的需要產(chǎn)生本地頻域或時域同步序列。首先根據(jù)配置的小區(qū)ID組號和小區(qū)組內(nèi)ID號,和PSS序列或者SSS序列生成公式,產(chǎn)生62點頻域的PSS或SSS序列。
2.2.3 最大值查找模塊
本模塊能夠查找到輸入數(shù)據(jù)中的主峰值以及兩個次主峰值,并能夠查找到每個主峰值周圍的3個輔助峰值。每個主峰值至少間隔128個點。以輸入數(shù)據(jù)長度為2 048點為例,首先找出第1個點到第2 048個點的最大值和所在的位置并記錄。然后,取當前峰值左右共128個(可配)長度位置之后開始讀取,左右各讀取18個(可配)數(shù)據(jù)進行對比,找出3個最大值作為輔峰值,記錄這3個輔峰值的大小及位置。接下來,將該主峰值以及左右各128點數(shù)據(jù)清零,開始查找第二個主峰值,后續(xù)以此類推。
2.2.4 PSS沖擊響應(yīng)計算模塊
本模塊輸入數(shù)據(jù)長度固定為128點,為接收到的時域PSS序列,每點數(shù)據(jù)虛實各占16 b。輸入數(shù)據(jù)首先進行FFT運算,得到頻域的128點PSS序列,并提取出其中的62點PSS序列。根據(jù)配置的小區(qū)組內(nèi)ID號和PSS序列生成公式,產(chǎn)生62點本地的頻域PSS序列。將接收的PSS序列與本地PSS序列進行相關(guān)運算,得到PSS序列的沖激響應(yīng)。此沖激響應(yīng)信號為62點32 b數(shù)據(jù),實部16 b,虛部16 b。
2.2.5 m0估計模塊
本功能模塊輸入數(shù)據(jù)長度固定為128點,為接收到的時域SSS序列,每點數(shù)據(jù)大小為32 b,虛實各占16 b。輸入數(shù)據(jù)進行FFT運算后,得到頻域的128點從END狀態(tài)跳轉(zhuǎn)到IDLE狀態(tài)。提取出其中的62點SSS序列,得到偶數(shù)位置上的數(shù)據(jù)Rsss(2k)。然后,根據(jù)配置的小區(qū)組內(nèi)ID號M=m0-m1,生成解擾序列c0(k),對進行解擾。
2.2.6 m1估計模塊
2.3 控制模塊
本文所設(shè)計的控制模塊使用有限狀態(tài)機(Finite Status Machine,F(xiàn)SM)來進行實現(xiàn)??刂颇K的FSM跳轉(zhuǎn)如圖4所示。
(1)IDLE狀態(tài):模塊未啟動時均處于該狀態(tài),當模塊的啟動信號start有效時,從IDLE狀態(tài)跳轉(zhuǎn)到PARA狀態(tài)。
(2)PARA狀態(tài):進入此狀態(tài)后,并且para_en有效時,模塊會從參數(shù)寄存器讀取對應(yīng)功能的參數(shù)配置值。當參數(shù)讀取完成后,拉高para_finish信號,指示參數(shù)讀取已經(jīng)完成,從PARA狀態(tài)跳轉(zhuǎn)到PROC狀態(tài)。
(3)PROC狀態(tài):進入此狀態(tài)后,并且 meas_en有效時,進行模塊具體功能的運算。當運算完成后,拉高proc_finish信號,指示運算已經(jīng)完成,從PROC狀態(tài)跳轉(zhuǎn)到END狀態(tài)。
(4)END狀態(tài):進入此狀態(tài)后,表明外部配置的功能任務(wù)已經(jīng)完成,拉高cell_finish信號,從END狀態(tài)跳轉(zhuǎn)到IDLE狀態(tài)。
3 實驗部分
3.1 仿真驗證
3.1.1 m0值估計功能仿真結(jié)果
從圖5可以看出,本次仿真沒有使能中斷,因此只能不斷讀取中斷標志寄存器的值,直到中斷標志寄存器置位,才能判斷該模塊運行已經(jīng)結(jié)束,然后再從存儲器中讀取輸出數(shù)據(jù),并比較輸出數(shù)據(jù)的正確性。對比結(jié)果表明,該功能能夠達到預(yù)期的目標。
3.1.2 m1值估計功能仿真結(jié)果
從圖6可以看出,在運行m1值估計功能之前,首先運行了存儲器清零功能。在模塊完成了存儲器清零功能之后,將需要進行m1值估計的輸入數(shù)據(jù)存入存儲器中,然后對參數(shù)寄存器和控制寄存器進行配置,并啟動模塊工作。模塊運行結(jié)束后,正常產(chǎn)生中斷信號。仿真結(jié)束后的數(shù)據(jù)對比表明,該功能能夠達到預(yù)期的目標。
3.2 邏輯綜合
本文采用了Design Compiler綜合工具對所設(shè)計模塊進行邏輯綜合,它能夠?qū)TL代碼轉(zhuǎn)換成門級網(wǎng)表,并且產(chǎn)生相應(yīng)的延時文件。
從圖7和圖8能得出:本設(shè)計綜合后的邏輯面積是1 302 392.271 666 μm2,總功率是51.291 1 mW。
4 結(jié)論
實驗表明,本文設(shè)計的實現(xiàn)方案能夠快速準確實現(xiàn)定時同步、幀同步和小區(qū)ID號檢測等功能,經(jīng)過驗證、綜合后,本設(shè)計可作為一個成熟的IP核,并可移植到含有幀定時同步功能的ASIC芯片中。
參考文獻
[1] ZHANG Z,LIU J,LONG K.Low-complexity cell search with fast PSS identification in LTE[J].Vehicular Technology,IEEE Transactions on,2012,61(4):1719-1729.
[2] 張德民,朱翔,李小文.LTE系統(tǒng)中小區(qū)搜索定時同步的FPGA設(shè)計[J].電子技術(shù)應(yīng)用,2013,39(9).
[3] SHENG Y,LUO X.Algorithm study on cell search in LTE[J].Communications Technology,2009(3):035.
[4] PARK H G,KIM I K,KIM Y S.Efficient coherent neigh-bour cell search for synchronous 3GPP LTE system[J].Electronics Letters,2008,44(21):1267-1268.
[5] 3GPP TS 36.211 v11.0.0.Evolved universal terrestrial radio access(E-UTRA);physical channels and modulation (Release 11)[S].2013:108-111.
[6] 李杰.低功耗可擴展FFT專用集成電路的設(shè)計[D].長沙:湖南大學,2011:20-53.