專利名稱:一種wcdma基站rach前導(dǎo)檢測功能實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及移動(dòng)通信系統(tǒng),具體涉及一種WCDMA基站RACH前導(dǎo)檢測實(shí)現(xiàn)方法。
技術(shù)背景在WCDMA移動(dòng)通信系統(tǒng)中,WCDMA基站通過空中接口和用戶終端聯(lián)系,用戶終 端通過上行的隨機(jī)接入RACH信道接入系統(tǒng),RACH信道包括前導(dǎo)部分和RACH消息部 分。WCDMA基站要正確接收用戶終端的上行接入,就要首先正確檢測RACH前導(dǎo)。WCDMA基站可以包括電源部分、高頻處理部分和基帶和接口處理部分?;鶐Ш徒?口處理部分完成基站和基站控制器的接口、時(shí)鐘和控制功能、基帶處理等功能。其中基 帶處理功能包括HSDPA處理、接入和下行處理、上行專用處理。具體功能為HSDPA 處理主要進(jìn)行HSDPA相關(guān)的業(yè)務(wù)處理。接入和下行處理主要進(jìn)行前導(dǎo)檢測、接入消息解調(diào)和譯碼、下行發(fā)送(包括符號(hào)級(jí)和碼片級(jí))處理。上行專用處理主要進(jìn)行上行專用信道的處理,包括符號(hào)級(jí)和碼片級(jí)。本發(fā)明是WCDMA基站接入和下行處理中的RACH前導(dǎo)檢測處理方法。 發(fā)明內(nèi)容本發(fā)明的目的在于提供一種WCDMA基站RACH前導(dǎo)檢測的實(shí)現(xiàn)方法。 本發(fā)明的功能描述如下根據(jù)信令處理部分配置的參數(shù)(擾碼號(hào)、允許的簽名號(hào)、接入子信道號(hào)、檢測門限、 相干積分長度、非相干累計(jì)個(gè)數(shù)、小區(qū)半徑)對(duì)用戶終端發(fā)起的RACH前導(dǎo)信號(hào)進(jìn)行檢測。本發(fā)明的前導(dǎo)檢測方法是把16條簽名P0, Pl, P2, ... P15,分為4個(gè)組,第O 組包括PO, Pl, P2, P3,第1組包括P4, P5, P6, P7,以此類推。在進(jìn)行簽名檢測時(shí), 已知簽名屬于哪一個(gè)組,也就是說簽名檢測是針對(duì)某個(gè)簽名組的4條簽名進(jìn)行的。前導(dǎo) 檢測必須覆蓋整個(gè)小區(qū),考慮到往返延遲,檢測窗口是小區(qū)半徑的2倍。前導(dǎo)檢測的運(yùn) 算量非常大,在采用軟件方式進(jìn)行前導(dǎo)檢測的情況下,上述假設(shè)可以降低運(yùn)算量,因而 是一種必要的措施。本發(fā)明包括前導(dǎo)擾碼生成、前導(dǎo)數(shù)據(jù)分離、前導(dǎo)解擴(kuò)、前導(dǎo)PDP (Power Delay Profiles)合并、前導(dǎo)路徑檢測、FHT、簽名能量計(jì)算、浮點(diǎn)轉(zhuǎn)換、尋找N個(gè)能量最大徑等處理模塊。在檢測到有效的前導(dǎo)后(簽名和接入時(shí)隙在允許的ASC內(nèi)),本發(fā)明進(jìn)一步判斷系統(tǒng) 是否有資源用于消息解調(diào),如果有資源,該方法給出正的(+1) AICH指示;如果沒有資 源,則給出負(fù)的(-1) AICH指示。對(duì)于其他情況,即沒有檢測到前導(dǎo)或檢測到無效前導(dǎo) (簽名號(hào)或接入時(shí)隙不在ASC內(nèi)),給出OAICH指示,即不予響應(yīng)。在本發(fā)明中,天線數(shù)據(jù)通過FPGA傳送到功能模塊,因此該功能模塊的外部接口是與 FPGA的接口。 FPGA在256碼片(66.7us)的中斷信號(hào)觸發(fā)下,向接收緩沖區(qū)寫入數(shù)據(jù)。該模塊的內(nèi)部接口包括與信令部分的接口、與下行碼片級(jí)處理模塊的接口和與RACH 消息解析模塊的接口。與信令部分的接口該模塊通過訪問信令部分建立的PRACH信道實(shí)體獲得擾碼號(hào)、 允許的簽名號(hào)、接入子信道號(hào)、檢測門限、相干積分長度、非相干累加個(gè)數(shù)等參數(shù)。該 模塊通過訪問信令部分建立的CELL實(shí)體獲得小區(qū)半徑參數(shù),并以此確定搜索窗口參數(shù)。與下行碼片級(jí)處理模塊的接口該模塊在每個(gè)接入時(shí)隙的前導(dǎo)檢測結(jié)束后,將檢測 到的有效簽名和產(chǎn)生的接入指示存儲(chǔ)到與下行碼片級(jí)處理模塊的共享存儲(chǔ)區(qū)(全局變 量),以生成下行AICH信道。與RACH消息碼片級(jí)解析模塊的接口該模塊在每個(gè)接入時(shí)隙的前導(dǎo)檢測結(jié)束后,將 檢測到的有效簽名(獲得了正的接入指示的簽名)、簽名的多徑信息和該接入時(shí)隙的時(shí)隙 號(hào)存儲(chǔ)到與RACH消息碼片級(jí)解調(diào)模塊的共享存儲(chǔ)區(qū)(全局變量),這些信息幫助RACH消 息碼片級(jí)解調(diào)模塊確定解調(diào)操作的起始位置和RACH消息控制部分和數(shù)據(jù)部分的信道化 碼。
圖1是WCDMARACH前導(dǎo)檢測框圖;具體實(shí)施方式
下面結(jié)合附圖和實(shí)例,對(duì)本發(fā)明作進(jìn)一步說明。如圖1所示。前導(dǎo)擾碼生成模塊根據(jù)擾碼號(hào)生成前導(dǎo)擾碼,作為解復(fù)用解擾碼的依 據(jù),輸出到前導(dǎo)解擴(kuò)模塊。天線數(shù)據(jù)首先送入前導(dǎo)數(shù)據(jù)分離模塊,經(jīng)過前導(dǎo)分離模塊處 理后,送到前導(dǎo)解擴(kuò)模塊。前導(dǎo)解擴(kuò)模塊輸出多徑參數(shù)到前導(dǎo)PDP合并模塊,另外前導(dǎo) 解擴(kuò)模塊按時(shí)延順序輸出解擴(kuò)后的符號(hào)到FHT模塊。前導(dǎo)PDP合并模塊2個(gè)天線上的PDP結(jié)果進(jìn)行合并,合并后的PDP將服務(wù)于路徑檢測模塊。前導(dǎo)路徑檢測模塊檢測出高于 門限值的多徑。把結(jié)果輸出到FHT模塊。FHT模塊一方面輸出復(fù)時(shí)延參數(shù)到尋找最好徑 模塊,另一方面輸出FHT結(jié)果到簽名能量計(jì)算模塊,在路徑檢測模塊給出的多徑位置上, 利用FHT模塊給出的簽名相干積分結(jié)果計(jì)算一條簽名的PDP能量,然后經(jīng)過門限檢測和 判決,判斷這條徑是否需要繼續(xù)處理,如果能量高于門限,則進(jìn)行浮點(diǎn)轉(zhuǎn)換,然后進(jìn)入 尋找N個(gè)能量最大徑模塊中處理。利用N個(gè)能量最大徑進(jìn)行簽名檢測,輸出檢測出的簽 名。檢測出的簽名和復(fù)時(shí)延參數(shù)在尋找最好的徑模塊中估計(jì)檢測出多徑的時(shí)移和頻偏。本發(fā)明把16條簽名P0, Pl, P2, ... P15,分為4個(gè)組,第O組包括PO, Pl, P2, P3,第1組包括P4, P5, P6, P7,以此類推。在進(jìn)行簽名檢測時(shí),已知簽名屬于哪一個(gè) 組,也就是說簽名檢測是針對(duì)某個(gè)簽名組的4條簽名進(jìn)行的。前導(dǎo)檢測必須覆蓋整個(gè)小 區(qū),考慮到往返延遲,檢測窗口是小區(qū)半徑的2倍。前導(dǎo)檢測的運(yùn)算量非常大,在采用 軟件方式進(jìn)行前導(dǎo)檢測的情況下,上述假設(shè)可以降低運(yùn)算量,因而是一種必要的措施。 同時(shí),這種假設(shè)對(duì)上層RRM算法提出了前提。同樣基于運(yùn)算量的考慮,前導(dǎo)檢測采用FHT算法。服務(wù)于FHT算法,在進(jìn)行前導(dǎo)解擴(kuò)之前,擾碼生成模塊對(duì)生成的擾碼進(jìn)行了抽取分 離的操作,具體操作是將擾碼按列寫入4行X1024列的矩陣,使擾碼分離為4條擾碼片 段(每行為1條擾碼片段),每條擾碼片段都是隔4抽取。對(duì)天線數(shù)據(jù)也要進(jìn)行同樣的抽 取分離操作,該操作由數(shù)據(jù)分離模塊完成。在對(duì)擾碼和天線數(shù)據(jù)進(jìn)行了上述抽取分離操 作后,前導(dǎo)解擴(kuò)模塊可以直接進(jìn)行相關(guān)操作。圖1中需要具體功能描述的模塊功能描述如下-1.前導(dǎo)擾碼生成模塊 該模塊函數(shù)原型為void prach一generate一descram一code一c (const prach—descrambling—params一t *params)輸入?yún)?shù)結(jié)構(gòu)體如下typedef struct {uint32 scram—code—number;int32氺 scratch—buffer;cbitl6x2氺 descram—code;uint32 signature—group; } prach_descrambling_params—t;功能描述該模塊生成前導(dǎo)擾碼,并對(duì)其進(jìn)行抽取分離處理,以方便FHT模塊的處理。這里的 前導(dǎo)擾碼,實(shí)際上是3g卯協(xié)議TS25.213里的"前導(dǎo)碼",并對(duì)變量部分進(jìn)行了共扼處理。 產(chǎn)生的前導(dǎo)擾碼的結(jié)構(gòu)如下式-々descram—code(k)= Sr-pre, n(k) xCsig, s(k) x e x(l+j), k = 0, 1, 2, 3, …,4095 Sr-pre,n和Csig, s是3g卯協(xié)議TS25. 213里的"前導(dǎo)擾碼"和"前導(dǎo)簽名"。生成的前導(dǎo)擾碼進(jìn)行了抽取分離操作,具體操作相當(dāng)于將長度為4096的擾碼按列寫 入4行X 1024列的矩陣,使擾碼分離為4條長度為1024的擾碼片段,每行為一個(gè)擾碼片 段,每個(gè)擾碼片段都是隔4抽取規(guī)律。 輸入?yún)?shù)params 指向輸入?yún)?shù)結(jié)構(gòu)體prach—descrambling—params—t的指針;scram—code—number前導(dǎo)擾石馬號(hào)0 8191;scratch—buffer 指向scratch buffer的指針。scratch buffer大小為128 X32bits,用來臨時(shí)存放擾碼(4096bits);descram—code 存放擾碼的內(nèi)存地址,從該地址開始存放生成的擾碼。該內(nèi)存空間大小為256X32bits。生成的擾碼是二進(jìn)制復(fù)擾碼形式; signature_group 簽名組號(hào),0 3。指示要檢測的簽名組。 輸出參數(shù)前導(dǎo)擾碼。存放在地址descram—code開始的256個(gè)32bits字內(nèi)。該擾碼是二進(jìn)制復(fù)擾碼 形式(cbitl6x2),經(jīng)過了抽取分離操作,4條擾碼片段級(jí)連存放。用于構(gòu)造該擾碼的簽名 是signature_group簽名組里的第1條簽名。2.前導(dǎo)數(shù)據(jù)分離模塊 該模塊函數(shù)原型為void prach—data—demux—c (const prach—data—demux_params_t印arams)輸入?yún)?shù)結(jié)構(gòu)體為 typedef struct {cint2xl6氺 antenna一0—input;cint2xl6氺 antenna—0一demux;cint2xl6氺 antenna—1—input; cint2xl6氺 antenna—l一demux; uint32 num_chips; } prach—data—demux_params—t;功能描述該模塊對(duì)天線數(shù)據(jù)進(jìn)行抽取分離,為FHT算法做準(zhǔn)備。具體規(guī)則與擾碼生成模塊對(duì) 擾碼的抽取分離操作一致。總共需處理的天線數(shù)據(jù)碼片數(shù)(復(fù)數(shù))為num—chips,則抽取 分離操作相當(dāng)于把這些碼片數(shù)據(jù)按列寫入4行Xnunuchips/4列的矩陣,每一行是一個(gè)天 線數(shù)據(jù)片段,每個(gè)天線數(shù)據(jù)片段都是隔4抽取規(guī)律。 抽取分離操作在兩個(gè)天線上分別進(jìn)行。 輸入?yún)?shù)antenna—0—i叩ut指向天線0數(shù)據(jù)的指針。這里的天線數(shù)據(jù)是lx碼片速率的,存放格 式為cint2x16,每個(gè)32位字存儲(chǔ)2個(gè)復(fù)數(shù)碼片,低16位為碼片0,高16位為碼片1。 每個(gè)碼片數(shù)據(jù),低8位表示I路,高8位表示Q路;antenna—0_demux指向天線0輸出緩沖區(qū)的指針。該緩沖區(qū)存放天線0數(shù)據(jù)抽取分離后 的結(jié)果;antennaj—i叩ut指向天線1數(shù)據(jù)的指針; antenna_l—demux指向天線1輸出緩沖區(qū)的指針; rmm_chips 要處理的碼片個(gè)數(shù)。 輸出參數(shù)天線0數(shù)據(jù)抽取分離后的結(jié)果,存放在antenna—O—demux指向的緩沖區(qū),緩沖區(qū)大小為 num—chips/2X32bits,存放格式為cint2xl6, 4條數(shù)據(jù)片段級(jí)連存放在該緩沖區(qū); 天線1數(shù)據(jù)抽取分離后的結(jié)果,存放在antenna—l一demux指向的緩沖區(qū),緩沖區(qū)大小為 num—chips/2X32bits,存放格式為cint2xl6, 4條數(shù)據(jù)片段級(jí)連存放在該緩沖區(qū)。3.前導(dǎo)解擴(kuò)模塊 該模塊的函數(shù)原型為void prach_despread—c(const prach—despread—params—t *params)輸入?yún)?shù)結(jié)構(gòu)體為typedef struct {cint2xl6水a(chǎn)ntennaO一data; cint2xl6* antennal—data; cbitl6x2氺descrambling—code; uint32 data—offset; uint32 num_chips; uint32 num—all—chips: cintlx32氺coherent—outputO; uint32氺PDP—outputO; cintlx32氺coherent—outputl; uint32氺 PDP_outputl; }prach—despread_params—t;功能描述該模塊完成前導(dǎo)碼的解擴(kuò)。這里所謂的"解擴(kuò)"包括"相干積分"和"PDP"的計(jì)算。相干積分是擾碼生成模塊生成的4個(gè)擾碼片段與數(shù)據(jù)分離模塊生成的4個(gè)數(shù)據(jù)片段分別進(jìn) 行相干累加的結(jié)果,所以每個(gè)窗口位置給出4個(gè)"相干積分"結(jié)果。PDP是對(duì)4個(gè)相干積 分結(jié)果的模值平方進(jìn)行累加的結(jié)果,由于是在簽名檢測之前給出的PDP,它是整個(gè)簽名組 的PDP。對(duì)該模塊的每次調(diào)用,執(zhí)行64個(gè)連續(xù)窗口位置(chip)的檢測,給出64個(gè)PDP值,和 256個(gè)相干積分值。前導(dǎo)解擴(kuò)操作在兩個(gè)天線上分別進(jìn)行。 要覆蓋更大的窗口可以對(duì)該模塊進(jìn)行多次調(diào)用。 輸入?yún)?shù)antermaO—data 指向天線O數(shù)據(jù)的指針。該數(shù)據(jù)是經(jīng)過數(shù)據(jù)分離模塊處理后的結(jié)果, 存放格式為cint2xl6;antennal—data 指向天線1數(shù)據(jù)的指針。該數(shù)據(jù)是經(jīng)過數(shù)據(jù)分離模塊處理后的結(jié)果, 存放格式為cint2xl6;descrambling—code指向前導(dǎo)擾碼的指針。該擾碼是前導(dǎo)擾碼生成模塊的輸出結(jié)果,存 放格式為cbitl6x2;data—offset 對(duì)天線數(shù)據(jù)的抽取起點(diǎn)相對(duì)于每個(gè)數(shù)據(jù)片段(4個(gè)數(shù)據(jù)片段級(jí)連存放)的偏移量。該模塊每次調(diào)用執(zhí)行64個(gè)連續(xù)窗口位置的檢測,即在每個(gè)數(shù)據(jù)片段上前進(jìn)16個(gè)樣點(diǎn)。所以data—offset的典型值取16個(gè)倍數(shù);n咖一chips 每個(gè)數(shù)據(jù)片段的長度——碼片數(shù);n咖—al1—chips4個(gè)數(shù)據(jù)片段(級(jí)連存放)的總長度——碼片數(shù);coherent—output0指向天線0相干積分輸出緩沖區(qū)的指針。該緩沖區(qū)存放天線0的相干積分結(jié)果,大小為256X32bits,存放格式為cintlx32。PDP一outputO 指向天線0 PDP輸出緩沖區(qū)的指針。該緩沖區(qū)存放天線0的PDP結(jié)果, 大小為64X32bits。coherent一outputl指向天線1相干積分輸出緩沖區(qū)的指針。該緩沖區(qū)存放天線1的相干 積分結(jié)果,大小為256X32bits,存放格式為cintlx32。PDP一outputl 指向天線1 PDP輸出緩沖區(qū)的指針。該緩沖區(qū)存放天線I的PDP結(jié)果, 大小為64X32bits。輸出參數(shù)天線0的相干積分結(jié)果,存放在coherent—output0指向的緩沖區(qū); 天線0的PDP結(jié)果,存放在PDP—output0指向的緩沖區(qū); 天線1的相干積分結(jié)果,存放在coherent一outputl指向的緩沖區(qū); 天線1的PDP結(jié)果,存放在PDP一outputl指向的緩沖區(qū);4.前導(dǎo)PDP合并模塊 該模塊的函數(shù)原型為uint32 prach—combine—pdp—c (const prach—combine—pdp—params—t *params)輸入?yún)?shù)結(jié)構(gòu)體為typedef struct { uint32* PDPO;uint32* PDP1;uint32 length;uint32氺 PDP—output;} prach_combine_pdp_jparams—t;功能描述該模塊對(duì)2個(gè)天線上的PDP結(jié)果進(jìn)行合并。兩個(gè)天線的PDP來自前導(dǎo)解擴(kuò)模塊。合并操 作是對(duì)兩個(gè)天線的PDP進(jìn)行簡單累加。合并后的PDP將服務(wù)于路徑檢測模塊。在進(jìn)行PDP合并的同時(shí),該模塊給出合并后的最大PDP能量值。 輸入?yún)?shù)PDP0 指向天線0 PDP的指針。天線0 PDP由前導(dǎo)解擴(kuò)模塊給出。 PDP1 指向天線1 PDP的指針。天線1 PDP由前導(dǎo)解擴(kuò)模塊給出。 length 天線0和天線1 PDP的長度。PDP_output指向PDP輸出緩沖區(qū)的指針。該緩沖區(qū)存放合并后的PDP。 輸出參數(shù)合并后的PDP。存放在PDP—output指向的緩沖區(qū)。 合并后的最大PDP能量(返回值)。5.前導(dǎo)路徑檢測模塊 該模塊的函數(shù)原型為uint32 prach—path—detection—c (const prach一path一detection—par柳s一t承par柳s)輸入?yún)?shù)結(jié)構(gòu)體為 typedef struct {uint32率 power—delay—profile:uint32 input—size;uint32 threshold;uint32氺 offset—indices;} prach_path—detection_params—t; 功能描述-該模塊利用PDP合并模塊給出的PDP進(jìn)行多徑檢測。檢測門限也是一個(gè)輸入?yún)?shù)。高于門限值的PDP能量被認(rèn)為指示了多徑的存在。輸入?yún)?shù)power_delay—profile指向PDP的指針。該P(yáng)DP是兩個(gè)天線上的PDP合并之后的結(jié)果, 由PDP合并模塊給出。input—size 指示需要處理的PDP能量個(gè)數(shù)。threshold 多徑檢測門限。高于該門限的PDP能量被認(rèn)為指示了多徑的存在。offset—indices指向多徑位置緩沖區(qū)的指針。該緩沖區(qū)用來存放找到的多徑的位置,多徑位置是用對(duì)應(yīng)的PDP能量在PDP數(shù)組里的下標(biāo)表示的。 輸出參數(shù)多徑位置,存放在offset—indices指向的緩沖區(qū)。多徑位置用對(duì)應(yīng)的PDP能量在PDP數(shù)組里的下標(biāo)表示。多徑個(gè)數(shù)(返回值)。6.FHT模塊該模塊的函數(shù)原型為void prach_fht_c (const prach—fht—paxams—t *params)輸入?yún)?shù)結(jié)構(gòu)體為typedef struct {c i nt 1 x32氺 i叩ut—ant ennaO;cintlx32氺 input—antennal;uint32 num—fht;uint32氺 ignored—OffsetArray;cintlx32* complex—profileO—sigO;cintlx32* complex—profileO—sigl;cintlx32* complex—profile0—sig2;cintlx32* complex—profile0—sig3;cintlx32* complex—profilei—sigO;cintlx32* complex—profilel一sigl;cintlx32* complex—profilei—sig2;cintlx32* complex—profilel一sig3; } prach_fht_params—t;功能描述該模塊執(zhí)行冊(cè)T算法。完整的FHT算法實(shí)際上是前導(dǎo)擾碼生成模塊、數(shù)據(jù)分離模塊、前 導(dǎo)解擴(kuò)模塊和該模塊共同完成的。每此調(diào)用前導(dǎo)解擴(kuò)模塊,給出連續(xù)64個(gè)窗口位置的檢測結(jié)果,其中每個(gè)窗口位置給出4 個(gè)相干積分結(jié)果。冊(cè)T模塊利用每個(gè)窗口位置的4個(gè)相干積分結(jié)果計(jì)算該窗口位置處,簽 名組內(nèi)4條簽名的相干積分結(jié)果。FHT模塊完成下式所示的運(yùn)算,'l,1,1,rco/ 0l,--1,l,--ico/zl一鄉(xiāng)21,1,-1,--i一w'g3l,--1,ico/ 3公式左側(cè)是給出的簽名組內(nèi)每個(gè)簽名的相干積分結(jié)果。公式右側(cè)第1項(xiàng)是2階hadamard 矩陣,第2項(xiàng)是一個(gè)窗口位置上的4個(gè)相干積分結(jié)果。FHT運(yùn)算在兩個(gè)天線上分別進(jìn)行。 輸入?yún)?shù)i叩iit—antenna0指向天線0數(shù)據(jù)的指針。這里的天線0數(shù)據(jù)是前導(dǎo)解擴(kuò)模塊給出的相干 積分結(jié)果。數(shù)據(jù)存放格式為cintlx32。i叩ut—antennal指向天線1數(shù)據(jù)的指針。這里的天線1數(shù)據(jù)是前導(dǎo)解擴(kuò)模塊給出的相干 積分結(jié)果。數(shù)據(jù)存放格式為cintlx32。num—fht執(zhí)行FHT運(yùn)算的次數(shù)。 一次FHT運(yùn)算計(jì)算出一個(gè)窗口位置的4條簽名的相干積 分結(jié)果,因此nuriLfht等于執(zhí)行FHT運(yùn)算的窗口寬度。 ignored—Off set Array 該參數(shù)目前不使用。complex—profileO—sig0指向(天線0,簽名0)的相干積分輸出緩沖區(qū)的指針。"簽名0" 指簽名組內(nèi)的第0號(hào)簽名。該緩沖區(qū)存放簽名組內(nèi)第0號(hào)簽名的相干積分結(jié)果,緩沖區(qū) 大小為num_fhtX32bits,存放格式為cintlx32。complex—profile0—sigl指向(天線0,簽名1)的相干積分輸出緩沖區(qū)的指針。"簽名1" 指簽名組內(nèi)的第1號(hào)簽名。該緩沖區(qū)存放簽名組內(nèi)第1號(hào)簽名的相干積分結(jié)果,緩沖區(qū) 大小為num—fhtX32bits,存放格式為cintlx32。complex—profile0—sig2指向(天線0,簽名2)的相干積分輸出緩沖區(qū)的指針。"簽名2" 指簽名組內(nèi)的第2號(hào)簽名。該緩沖區(qū)存放簽名組內(nèi)第2號(hào)簽名的相干積分結(jié)果,緩沖區(qū) 大小為誦一fhtX32bits,存放格式為cintlx32。complex—profile0—sig3指向(天線0,簽名3)的相干積分輸出緩沖區(qū)的指針。"簽名3" 指簽名組內(nèi)的第3號(hào)簽名。該緩沖區(qū)存放簽名組內(nèi)第3號(hào)簽名的相干積分結(jié)果,緩沖區(qū) 大小為誦—fhtX32bits,存放格式為cintlx32。co即lex—profilel—sig0指向(天線1,簽名0)的相干積分輸出緩沖區(qū)的指針。"簽名0" 指簽名組內(nèi)的第0號(hào)簽名。該緩沖區(qū)存放簽名組內(nèi)第0號(hào)簽名的相干積分結(jié)果,緩沖區(qū)大小為num—fhtX32bits,存放格式為cintlx32。complex—profilel—sigl指向(天線1,簽名1)的相干積分輸出緩沖區(qū)的指針。"簽名1" 指簽名組內(nèi)的第1號(hào)簽名。該緩沖區(qū)存放簽名組內(nèi)第1號(hào)簽名的相干積分結(jié)果,緩沖區(qū) 大小為num—fhtX32bits,存放格式為cintlx32。complex一profile1—sig2指向(天線1,簽名2)的相千積分輸出緩沖區(qū)的指針。"簽名2" 指簽名組內(nèi)的第2號(hào)簽名。該緩沖區(qū)存放簽名組內(nèi)第2號(hào)簽名的相干積分結(jié)果,緩沖區(qū) 大小為num—fhtX32bits,存放格式為cintlx32。complexj)rofile1—sig3指向(天線1,簽名3)的相干積分輸出緩沖區(qū)的指針。"簽名3" 指簽名組內(nèi)的第3號(hào)簽名。該緩沖區(qū)存放簽名組內(nèi)第3號(hào)簽名的相干積分結(jié)果,緩沖區(qū) 大小為num—fhtx32bits,存放格式為cintlx32。輸出參數(shù)(天線0,簽名0)的相干積分結(jié)果,存放在complex—profile0—sigO指向的緩沖區(qū); (天線0,簽名l)的相干積分結(jié)果,存放在complex—profile(Lsigl指向的緩沖區(qū); (天線0,簽名2)的相干積分結(jié)果,存放在complex—profile(Lsig2指向的緩沖區(qū); (天線0,簽名3)的相干積分結(jié)果,存放在complex—profile(Lsig3指向的緩沖區(qū); (天線l,簽名0)的相干積分結(jié)果,存放在complex—profileLsigO指向的緩沖區(qū); (天線l,簽名l)的相干積分結(jié)果,存放在comple^profilel—sigl指向的緩沖區(qū); (天線l,簽名2)的相干積分結(jié)果,存放在complex—profilel—sig2指向的緩沖區(qū); (天線l,簽名3)的相干積分結(jié)果,存放在complexjrofileLsig3指向的緩沖區(qū).7.簽名能量計(jì)算模塊 該模塊的函數(shù)原型為void prach—energy—calc—c (prach—energy—calc—params—t *params)輸入?yún)?shù)結(jié)構(gòu)體為typedef struct {cint1x32* complex—prof ile0;cintlx32* complex—profilel;uint32 num—inputs;uint32氺 offset—indices;uint32氺 energy—prof ile;uint32 max—energy;int32 reservedO; int32 reservedl;} prach—energy—calc_params_t;功能描述該模塊在路徑檢測模塊給出的多徑位置上,利用FHT模塊給出的簽名相干積分結(jié)果計(jì)算 一條簽名的PDP能量。這里計(jì)算的是每個(gè)簽名的PDP能量,與PDP合并模塊處理的PDP (簽名組的PDP)不同。 每次只計(jì)算1個(gè)簽名的PDP, 4條簽名的PDP需要分別調(diào)用該模塊進(jìn)行計(jì)算。 輸入?yún)?shù)complex—profile0指向天線0的簽名相干積分結(jié)果的指針。該相干積分結(jié)果由FHT模 塊給出,存儲(chǔ)格式為cintlx32。complex—profilel指向天線1的簽名相干積分結(jié)果的指針。該相干積分結(jié)果由FHT模 塊給出,存儲(chǔ)格式為cintlx32。num—i叩uts 指示多徑個(gè)數(shù)。該參數(shù)由路徑檢測模塊給出。offset—indices 指向多徑位置信息的指針。多徑位置由路徑檢測模塊給出。多徑位 置是對(duì)應(yīng)的PDP能量在PDP數(shù)組中的下標(biāo)。energyjrofile 指向輸出簽名PDP的緩沖區(qū)的指針。該緩沖區(qū)用于存放計(jì)算出來的簽名PDP。緩沖區(qū)大小為num—i叩utsx32bits。輸出參數(shù)簽名在多徑位置的能量,存放在energy—profile指向的緩沖區(qū)。 max—energy簽名在多徑位置的最大能量。用于浮點(diǎn)轉(zhuǎn)換模塊進(jìn)行能量歸一化。8.浮點(diǎn)轉(zhuǎn)換模塊 該模塊的函數(shù)原型為void prach—block_fp—convert一c (const prach—block一fp—params—t氺params)輸入?yún)?shù)結(jié)構(gòu)體為typedef struct {uint32* energy—profile;uint2xl6承 block一fp—profile;uint32 prof ile一length;uint32 max—energy;} prach—block—fp_params—t功能描述-該模塊利用簽名的最大能量對(duì)簽名的PDP進(jìn)行歸一化(所謂的"浮點(diǎn)轉(zhuǎn)換"),并把簽名 PDP能量的下標(biāo)編碼到歸一化的能量中,以方便排序操作后容易找到能量在原始簽名PDP 中的位置。假設(shè)最大簽名能量max—energy的最高非0位為N (LSB為第1位),能量值energy的歸 一化操作如下進(jìn)行energy—norm = |_energy/(2N-8)」L」表示向下取整。歸一化后的能量energy—norm是16bits寬度的無符號(hào)整數(shù),實(shí)際有 效位為低8位。能量下標(biāo)的編碼如下進(jìn)行,首先,將歸一化后的能量energy—norm左移8位,使有效 能量值移到高8位,低8位用來存放能量下標(biāo)編碼,第i (iK),l,2,…,i《255)條多徑的編 碼為255-i。這種編碼一方面在能量排序后可以方便地找到能量的原始位置, 一方面不會(huì) 改變能量排序結(jié)果。輸入?yún)?shù)energy—profile 指向簽名能量的指針。簽名能量由簽名能量計(jì)算模塊給出。 block—fp—profile指向浮點(diǎn)能量輸出緩沖區(qū)的指針。該緩沖區(qū)存放歸一化并且進(jìn)行了 能量下標(biāo)編碼的偽浮點(diǎn)形式的簽名能量。存放格式為uint2xl6,也就是每個(gè)32bit字存 放2個(gè)16位能量,低16位為能量0,高16位為能量1。 profile—length 該值取為能量個(gè)數(shù)的1/8。max—energy 簽名的最大能量。該參數(shù)由簽名能量計(jì)算模塊給出,用來對(duì)簽名能量進(jìn)行歸一化。輸出參數(shù)偽浮點(diǎn)形式的簽名能量,存放在bl0Ck_fp_pr0file指向的緩沖區(qū)。9.尋找N個(gè)能力最大徑模塊 該模塊的函數(shù)原型為void prach一search—max一c (const prach一seaxch—腿x—params—t承params)輸入?yún)?shù)結(jié)構(gòu)體為typedef struct {uint2xl6承 block—fp一profile;uint32氺 output—buffer;uint32 input—length;uint32 N—max;} prach—search—max_params—t; 功能描述-該模塊在浮點(diǎn)轉(zhuǎn)換模塊給出的偽浮點(diǎn)簽名能量上找到N—max個(gè)最大能量。 輸入?yún)?shù)bloCk_fp_Pr0file 指向偽浮點(diǎn)形式簽名能量的指針。偽浮點(diǎn)簽名能量由浮點(diǎn)轉(zhuǎn)換模 塊給出。output—buffer 指向輸出最大能量緩沖區(qū)的指針。該緩沖區(qū)用于存放找到的最大能量值。i叩ut—length 該值設(shè)置為偽浮點(diǎn)能量個(gè)數(shù)的1/32。N—max 要查找的最大能量的個(gè)數(shù)。輸出參數(shù)最大簽名能量,存放在output—buffer指向的緩沖區(qū)。應(yīng)當(dāng)注意,凡不脫離本發(fā)明思想的任何改進(jìn)的方法都屬于本發(fā)明的保護(hù)范圍,本發(fā) 明具體保護(hù)范圍由權(quán)利要求書限定。
權(quán)利要求
1、一種WCDMA基站RACH前導(dǎo)檢測功能實(shí)現(xiàn)方法,其特征在于把16條簽名P0,P1,P2,...P15,分為4個(gè)組,第0組包括P0,P1,P2,P3,第1組包括P4,P5,P6,P7,以此類推。在進(jìn)行簽名檢測時(shí),已知簽名屬于哪一個(gè)組,也就是說簽名檢測是針對(duì)某個(gè)簽名組的4條簽名進(jìn)行的。前導(dǎo)檢測必須覆蓋整個(gè)小區(qū),考慮到往返延遲,檢測窗口是小區(qū)半徑的2倍。
2、 根據(jù)權(quán)利要求1所述的方法,其特征在于使用前導(dǎo)擾碼生成、前導(dǎo)數(shù)據(jù)分離、 前導(dǎo)解擴(kuò)、前導(dǎo)PDP (Power Delay Profiles)合并、前導(dǎo)路徑檢測、FHT、簽名能量計(jì) 算、浮點(diǎn)轉(zhuǎn)換、尋找N個(gè)能量最大徑功能模塊完成RACH前導(dǎo)檢測功能。
3、 根據(jù)權(quán)利要求1或2所述的方法,其特征在于前導(dǎo)擾碼生成模塊對(duì)生成的前導(dǎo) 擾碼進(jìn)行抽取分離操作,具體操作為將長度為4096的擾碼按列寫入4行X1024列的矩陣, 使擾碼分離為4條長度為1024的擾碼片段,每行為一個(gè)擾碼片段,每個(gè)擾碼片段都是隔 4抽取規(guī)律。
4、 根據(jù)權(quán)利要求1或2所述的方法,其特征在于前導(dǎo)數(shù)據(jù)分離模塊對(duì)天線來的數(shù) 據(jù)進(jìn)行抽取分離。總共需處理的天線數(shù)據(jù)碼片數(shù)(復(fù)數(shù))為num一chips,則抽取分離操作 相當(dāng)于把這些碼片數(shù)據(jù)按列寫入4行Xnum—chips/4列的矩陣,每一行是一個(gè)天線數(shù)據(jù)片 段,每個(gè)天線數(shù)據(jù)片段都是隔4抽取規(guī)律。抽取分離操作在兩個(gè)天線上分別進(jìn)行。
5、 根據(jù)權(quán)利要求1或2所述的方法,其特征在于前導(dǎo)解擴(kuò)模塊完成前導(dǎo)碼的解擴(kuò)。 這里所謂的"解擴(kuò)"包括"相干積分"和"PDP"的計(jì)算。相干積分是擾碼生成模塊生成 的4個(gè)擾碼片段與數(shù)據(jù)分離模塊生成的4個(gè)數(shù)據(jù)片段分別進(jìn)行相干累加的結(jié)果,所以每 個(gè)窗口位置給出4個(gè)"相干積分"結(jié)果。PDP是對(duì)4個(gè)相干積分結(jié)果的模值平方進(jìn)行累加 的結(jié)果,由于是在簽名檢測之前給出的PDP,它是整個(gè)簽名組的PDP。對(duì)該模塊的每次調(diào) 用,執(zhí)行64個(gè)連續(xù)窗口位置(chip)的檢測,給出64個(gè)PDP值,和256個(gè)相干積分值。 前導(dǎo)解擴(kuò)操作在兩個(gè)天線上分別進(jìn)行。要覆蓋更大的窗口可以對(duì)該模塊進(jìn)行多次調(diào)用。
6、 根據(jù)權(quán)利要求2所述的方法,其特征在于簽名能量計(jì)算模塊每次只計(jì)算l個(gè)簽 名的PDP, 4條簽名的PDP需要分別調(diào)用該模塊進(jìn)行計(jì)算。
7、 根據(jù)權(quán)利要求2所述的方法,其特征在于浮點(diǎn)轉(zhuǎn)換模塊利用簽名的最大能量對(duì) 簽名的PDP進(jìn)行歸一化(所謂的"浮點(diǎn)轉(zhuǎn)換"),并把簽名PDP能量的下標(biāo)編碼到歸一化 的能量中,以方便排序操作后容易找到能量在原始簽名PDP中的位置。假設(shè)最大簽名能量max—energy的最高非0位為N (LSB為第1位),能量值energy 的歸一化操作如下進(jìn)行energy—norm = Lenergy/(2N-8)」 L」表示向下取整。歸一化后的能量energy—norm是16bits寬度的無符號(hào)整數(shù),實(shí)際有效 位為低8位。能量下標(biāo)的編碼如下進(jìn)行,首先,將歸一化后的能量energy—norm左移8位,使有 效能量值移到高8位,低8位用來存放能量下標(biāo)編碼,第i (i=0,l,2,...,i《255)條多徑的 編碼為255-i。這種編碼一方面在能量排序后可以方便地找到能量的原始位置, 一方面不 會(huì)改變能量排序結(jié)果。
全文摘要
本發(fā)明公開了一種WCDMA基站RACH前導(dǎo)檢測功能的實(shí)現(xiàn)方法。根據(jù)信令處理部分配置的參數(shù)(擾碼號(hào)、允許的簽名號(hào)、接入子信道號(hào)、檢測門限、相干積分長度、非相干累計(jì)個(gè)數(shù)、小區(qū)半徑)對(duì)用戶終端發(fā)起的RACH前導(dǎo)信號(hào)進(jìn)行檢測。本發(fā)明的前導(dǎo)檢測方案是把16條簽名P0,P1,P2,...P15,分為4個(gè)組,第0組包括P0,P1,P2,P3,第1組包括P4,P5,P6,P7,以此類推。在進(jìn)行簽名檢測時(shí),已知簽名屬于哪一個(gè)組,也就是說簽名檢測是針對(duì)某個(gè)簽名組的4條簽名進(jìn)行的。前導(dǎo)檢測必須覆蓋整個(gè)小區(qū),考慮到往返延遲,檢測窗口是小區(qū)半徑的2倍。前導(dǎo)檢測的運(yùn)算量非常大,在采用軟件方式進(jìn)行前導(dǎo)檢測的情況下,上述假設(shè)可以降低運(yùn)算量,因而是一種必要的措施。
文檔編號(hào)H04Q7/38GK101242671SQ20081010183
公開日2008年8月13日 申請(qǐng)日期2008年3月13日 優(yōu)先權(quán)日2008年3月13日
發(fā)明者陳朝陽 申請(qǐng)人:北京北方烽火科技有限公司