專利名稱:Wcdma系統(tǒng)無(wú)線網(wǎng)絡(luò)控制器執(zhí)行的下行擴(kuò)頻碼分配方法
技術(shù)領(lǐng)域:
本發(fā)明屬于移動(dòng)通信領(lǐng)域的用戶信道分配方法,具體涉及寬帶碼分多址(WCDMA)移動(dòng)通信系統(tǒng)中無(wú)線網(wǎng)絡(luò)控制器(RNC)所執(zhí)行的為用戶分配下行鏈路正交可變擴(kuò)頻(OVSF)碼的方法。
背景技術(shù):
在WCDMA系統(tǒng)中,網(wǎng)絡(luò)部分被分成無(wú)線接入網(wǎng)(RAN)和核心網(wǎng)(CN)兩大部分,RAN主要由基站(BS)與無(wú)線網(wǎng)絡(luò)控制器(RNC)組成,每個(gè)RNC需要對(duì)多個(gè)BS進(jìn)行控制。由于無(wú)線網(wǎng)絡(luò)控制器(RNC)需要對(duì)每個(gè)基站的每個(gè)用戶分配一個(gè)用于下行鏈路信道的正交可變擴(kuò)頻碼(OVSF),因此RNC在分配OVSF時(shí)需要進(jìn)行大量運(yùn)算處理并占用大量存儲(chǔ)器空間以存儲(chǔ)全部的OVSF碼以及各碼的使用狀態(tài)。
圖1表示OVSF碼的二叉樹(shù)結(jié)構(gòu)。圖1中,用Cch,SF,k唯一地表示一個(gè)OVSF碼,其中擴(kuò)頻因子(SF)是該碼的擴(kuò)頻因子,k是碼的序號(hào)(簡(jiǎn)稱為碼號(hào)),0≤k≤SF-1。OVSF碼的不同擴(kuò)頻因子對(duì)應(yīng)著不同的碼長(zhǎng)度。參照?qǐng)D1,在OVSF碼樹(shù)中,每個(gè)碼字右側(cè)相連的兩個(gè)碼字為其下層的兩個(gè)子碼,每個(gè)碼字左側(cè)相鄰的一個(gè)碼字為其父碼。
OVSF碼分配的基本準(zhǔn)則是對(duì)于一個(gè)OVSF碼,如果其是可分配的,則它的所有子碼都一定是可分配的;如果它的子碼和父碼中至少有一個(gè)是不可分配的,則該OVSF碼是不可分配的。這個(gè)準(zhǔn)則保證了分配的OVSF碼之間的正交性,同時(shí)也限制了可分配的OVSF碼的數(shù)量。
在采用WCDMA技術(shù)的移動(dòng)通信系統(tǒng)中,OVSF碼的主要作用是在上行方向上區(qū)分同一用戶的不同物理信道和在下行方向上區(qū)分同一小區(qū)內(nèi)的不同物理信道。在上行方向上,由于一個(gè)用戶使用一個(gè)獨(dú)立的OVSF碼樹(shù),所以可用的OVSF碼資源比較充足,只需要對(duì)其OVSF碼樹(shù)進(jìn)行簡(jiǎn)單的維護(hù)。在下行方向上,由于一個(gè)小區(qū)內(nèi)所有用戶共享使用同一個(gè)OVSF碼樹(shù),從而使得可用的OVSF碼資源比較緊張,需要有專門(mén)的算法來(lái)維護(hù)。而上述運(yùn)算和分配均有RNC執(zhí)行,因此需要一個(gè)OVSF碼分配方法以便使RNC在盡可能少的運(yùn)算步驟和占用最少存儲(chǔ)器容量的情況下,有效地為用戶分配下行鏈路OVSF碼。
發(fā)明內(nèi)容
本發(fā)明的目的是提供WCDMA系統(tǒng)無(wú)線網(wǎng)絡(luò)控制器執(zhí)行的為移動(dòng)用戶終端下行鏈路分配擴(kuò)頻碼的方法,該方法使得無(wú)線網(wǎng)絡(luò)控制器以最少的運(yùn)算步驟和占用最小存儲(chǔ)器空間來(lái)實(shí)現(xiàn)OVSF碼分配操作,并有助于提高OVSF碼的利用率。下面介紹本發(fā)明的技術(shù)原理。
首先,由于WCDMA系統(tǒng)在下行方向使用的擴(kuò)頻因子大于等于4,因此一個(gè)小區(qū)所使用的OVSF碼樹(shù)總共有1020(=4+8+16+32+64+128+256+512)個(gè)OVSF碼字,如果用每個(gè)碼字的使用狀態(tài)與該碼字一起存儲(chǔ)在RNC存儲(chǔ)器內(nèi),則不僅占用大量存儲(chǔ)器空間,而且由RNC執(zhí)行的查找碼字并判斷其使用狀態(tài)的運(yùn)算過(guò)程也相對(duì)復(fù)雜費(fèi)時(shí)。
本發(fā)明采用將1020個(gè)碼字的使用狀態(tài)信息集中存儲(chǔ)的方式,即采用位圖來(lái)存貯一個(gè)OVSF碼樹(shù)中所有OVSF碼字的使用狀態(tài)。具體地說(shuō),用一個(gè)位對(duì)應(yīng)一個(gè)OVSF碼字的使用狀態(tài)信息,該位的值為1表示該OVSF碼字不可分配,該位的值為0表示可分配。將表示整個(gè)OVSF碼樹(shù)中所有各碼字使用狀態(tài)的位圖存儲(chǔ)在RNC的隨機(jī)存取存儲(chǔ)器(RAM)中,存儲(chǔ)一個(gè)完整碼樹(shù)的1020個(gè)OVSF碼字所需的空間開(kāi)銷僅僅為128個(gè)字節(jié),既節(jié)約了存貯空間,又使得對(duì)各個(gè)碼字使用狀態(tài)的查詢運(yùn)算簡(jiǎn)單化。
本發(fā)明在利用位圖表示完整碼樹(shù)中各個(gè)碼字使用狀態(tài)的情況下,進(jìn)一步用連續(xù)整數(shù)1、2、3、...、1020來(lái)標(biāo)識(shí)碼樹(shù)中每一個(gè)OVSF碼字,如圖2所示。在圖2中,某個(gè)擴(kuò)頻因子為SF(SF∈{4,8,16,32,64,128,256,512})、碼號(hào)為k(0≤k≤SF-1)的OVSF碼,按照本發(fā)明的標(biāo)號(hào)方式,其標(biāo)號(hào)為(SF-3+k),這個(gè)標(biāo)號(hào)也就是該OVSF碼字狀態(tài)信息位在位圖中的位置標(biāo)號(hào)。根據(jù)本發(fā)明的標(biāo)號(hào)方式,可以根據(jù)一個(gè)OVSF碼字的標(biāo)號(hào),計(jì)算出其下層兩個(gè)子碼的標(biāo)號(hào)和其上層父碼的標(biāo)號(hào)。
具體計(jì)算方法如下對(duì)于標(biāo)號(hào)為i(1≤i≤508)的OVSF碼,其下層兩個(gè)子碼的標(biāo)號(hào)分別為2*i+3、2*i+4;對(duì)于標(biāo)號(hào)為i(5≤i≤1024)的OVSF碼,其父碼的標(biāo)號(hào)為 其中運(yùn)算符號(hào) 表示對(duì)n下取整,例如n等于3.5時(shí),則 等于3。本發(fā)明采用的標(biāo)號(hào)方法,使得父或子碼的標(biāo)號(hào)具有明晰的數(shù)學(xué)關(guān)系,以便極大簡(jiǎn)化由RNC執(zhí)行的查找各個(gè)碼字使用狀態(tài)的運(yùn)算步驟。由于圖2中OVSF碼的標(biāo)號(hào)也是其在位圖中的標(biāo)號(hào),兩者可以等同,因此,依據(jù)這個(gè)數(shù)學(xué)關(guān)系可以直接得到其父碼或子碼在位圖中對(duì)應(yīng)的標(biāo)號(hào),也就可以很快獲得其對(duì)應(yīng)的狀態(tài),從而加快無(wú)線網(wǎng)絡(luò)控制器執(zhí)行OVSF碼分配的操作。
從圖2中可以看出,OVSF碼樹(shù)中擴(kuò)頻因子為SF的一層中,應(yīng)當(dāng)包含共計(jì)SF個(gè)碼字。當(dāng)無(wú)線網(wǎng)絡(luò)控制器具體執(zhí)行分配擴(kuò)頻因子為SF的OVSF碼給某個(gè)移動(dòng)用戶終端時(shí),需要從該移動(dòng)用戶終端所在小區(qū)的OVSF碼樹(shù)中擴(kuò)頻因子為SF的那一層的第一個(gè)碼字(其碼字標(biāo)號(hào)為SF-3)開(kāi)始查找,如該層第一個(gè)碼字不可分配,則查找該層第二個(gè)碼字,直到找到一個(gè)可分配的OVSF碼字。如果該SF層中的所有SF個(gè)OVSF碼字都不可分配,則分配失敗。在查找標(biāo)號(hào)為i(SF-3≤i≤2*SF-4)的可分配OVSF碼并將其分配給某個(gè)特定移動(dòng)用戶終端的過(guò)程中,無(wú)線網(wǎng)絡(luò)控制器需要執(zhí)行如下操作步驟1.查找位圖中第i位的值如果為0,則表示該碼字可以分配,繼續(xù)以下步驟的操作,如果該位值為1則表示該碼字不可分配而終止操作;步驟2.對(duì)標(biāo)號(hào)為i的OVSF碼及其更上層碼字分別執(zhí)行如下操作如果與該OVSF碼具有共同父碼的碼字在位圖中對(duì)應(yīng)的狀態(tài)信息位的值為0,則將它們的共同父碼(如果存在的話)在位圖中對(duì)應(yīng)位的狀態(tài)信息位的值置為1,然后判斷與該父碼具有更上層共同父碼的碼字的狀態(tài)信息位值是否為0,并相應(yīng)處理父碼的更上層父碼的狀態(tài)信息位,如此循環(huán)直到最高層父碼;如果具有共同父碼的碼字狀態(tài)信息位為1則結(jié)束本步驟;步驟3.將標(biāo)號(hào)為i的OVSF碼的所有下一層子碼(如果存在的話)及其更下各層子碼在位圖中對(duì)應(yīng)的狀態(tài)信息位的值置為1。
步驟4.將標(biāo)號(hào)為i的OVSF碼分配給移動(dòng)用戶終端,并將位圖中表示該碼字狀態(tài)信息的第i位的值置為1。
當(dāng)某個(gè)移動(dòng)用戶終端通信完畢時(shí),無(wú)線網(wǎng)絡(luò)控制器需要執(zhí)行OVSF碼字回收操作,此時(shí)同樣需要對(duì)要回收碼字所在碼樹(shù)中各層的OVSF碼字進(jìn)行操作。RNC執(zhí)行回收擴(kuò)頻因子為SF、碼號(hào)為k(0≤k≤SF-1)的OVSF碼(其標(biāo)號(hào)為i=SF-3+k)時(shí),其具體執(zhí)行的操作過(guò)程如下步驟1.對(duì)標(biāo)號(hào)為i的OVSF碼字及其更高層碼字分別執(zhí)行如下操作如果與該OVSF碼字具有相同父碼的碼字在位圖中對(duì)應(yīng)狀態(tài)信息位的值為0,則將其父碼(如果存在的話)在位圖中對(duì)應(yīng)位的值置為0,如果與父碼具有更上層相同父碼的碼字的狀態(tài)信息位的值為0,將更上層父碼的狀態(tài)信息位設(shè)置為0;如果具有相同父碼的碼字的狀態(tài)信息位為1則結(jié)束本步驟;步驟2.將標(biāo)號(hào)為i的OVSF碼字的所有下層子碼(如果存在的話)及其更下層子碼在位圖中對(duì)應(yīng)的狀態(tài)信息位的值置為0;步驟3.標(biāo)號(hào)為i的OVSF碼的狀態(tài)恢復(fù)為可分配狀態(tài),即將位圖中第i位的值置為0。
本發(fā)明的寬帶碼分多址移動(dòng)通信系統(tǒng)中無(wú)線網(wǎng)絡(luò)控制器為移動(dòng)用戶終端分配下行鏈路正交可變擴(kuò)頻因子碼字的方法,包括步驟將每個(gè)小區(qū)所使用的SF為4、8、16、32、64、128、256、512的總計(jì)1020個(gè)碼字按照從1到1020的順序進(jìn)行標(biāo)號(hào);為每個(gè)碼字設(shè)置一位的狀態(tài)信息位,該狀態(tài)信息位的值為0表示該碼字可以分配給移動(dòng)用戶終端,該狀態(tài)信息位的值為1則表示該碼字不可分配;在無(wú)線網(wǎng)絡(luò)控制器的存儲(chǔ)器內(nèi)設(shè)置具有1020位的位圖空間,位圖中各位的位置按照從1至1020的順序進(jìn)行位置編號(hào);將碼字標(biāo)號(hào)為1至1020的各個(gè)碼字的一位狀態(tài)信息存儲(chǔ)在存儲(chǔ)器位圖空間中位置編號(hào)與碼字標(biāo)號(hào)相同的位置;當(dāng)移動(dòng)用戶終端因通信需要分配擴(kuò)頻因子為SF的碼字時(shí),在存儲(chǔ)器位圖空間中按照位置編號(hào)從SF-3到2*SF-4的順序查找狀態(tài)信息位的值為0的碼字,將查找到的第一個(gè)狀態(tài)信息位為0位置編號(hào)對(duì)應(yīng)的碼字分配給移動(dòng)用戶終端,并將該碼字的狀態(tài)信息位設(shè)置為1;當(dāng)位置編號(hào)從SF-3到2*SF-4的所有位置上的狀態(tài)信息位均為1時(shí),則判斷沒(méi)有碼字可分配而終止分配;當(dāng)移動(dòng)用戶終端結(jié)束通信并回收擴(kuò)頻因子為SF的碼字時(shí),在存儲(chǔ)器位圖空間中將與該碼字標(biāo)號(hào)相同的位置編號(hào)上的狀態(tài)信息位設(shè)置為0。
按照本發(fā)明的上述方法,其特征在于當(dāng)查找到并分配一個(gè)碼字給移動(dòng)用戶終端時(shí),判斷與該碼字具有相同父碼的另一相鄰碼字的狀態(tài)信息位是否為0,如果為0則將它們的相同父碼的狀態(tài)信息位設(shè)置為1,進(jìn)一步判斷與它們父碼具有相同父碼的另一相鄰碼字的狀態(tài)信息位是否為0,如果為0則將更上一層的父碼的狀態(tài)信息位設(shè)置為1,直至發(fā)現(xiàn)另一相鄰碼字的狀態(tài)信息位為1或?qū)⒋a樹(shù)最上層的父碼設(shè)置為1為止;和將該被分配碼字之下各層中的所有子碼的狀態(tài)信息位的設(shè)置為1。
按照本發(fā)明的上述方法,其特征在于當(dāng)回收一個(gè)碼字時(shí),判斷與該碼字具有相同父碼的另一相鄰碼字的狀態(tài)信息位是否為0,如果為0,則將該碼字的父碼的狀態(tài)信息位設(shè)置為0,進(jìn)一步判斷與它們的父碼具有相同父碼的另一相鄰碼字的狀態(tài)信息位是否為0,如果為0則將更上一層父碼的狀態(tài)信息位設(shè)置為0,直至發(fā)現(xiàn)另一相鄰碼字的狀態(tài)信息位為1或?qū)⒋a樹(shù)最上層的父碼設(shè)置為0為止;和將該被回收碼字之下各層中的所有子碼的狀態(tài)信息位設(shè)置為0。
使用本發(fā)明的方法,可以將無(wú)線網(wǎng)絡(luò)控制器分配下行鏈路擴(kuò)頻碼的操作步驟簡(jiǎn)化到最少步驟,并節(jié)省了用于存儲(chǔ)全部碼樹(shù)中各個(gè)碼字狀態(tài)信息的存儲(chǔ)空間。
圖1為OVSF碼樹(shù)結(jié)構(gòu)示意圖;圖2為按照本發(fā)明方法對(duì)WCDMA下行OVSF碼字進(jìn)行標(biāo)號(hào)后的碼樹(shù)結(jié)構(gòu)示意圖;圖3為按照本發(fā)明的方法為移動(dòng)用戶終端查找并指定一個(gè)擴(kuò)頻因子為SF的OVSF碼字的操作步驟;圖4為按照本發(fā)明的方法從移動(dòng)用戶終端回收一個(gè)擴(kuò)頻因子為SF、碼號(hào)為k的OVSF碼字的操作步驟;圖5為按照本發(fā)明方法由32位CPU執(zhí)行無(wú)線網(wǎng)絡(luò)控制器功能時(shí),該CPU查詢存儲(chǔ)器位圖空間中第n位是否為0的具體操作步驟;圖6為按照本發(fā)明方法由32位CPU執(zhí)行無(wú)線網(wǎng)絡(luò)控制器功能時(shí),該CPU設(shè)置存儲(chǔ)器位圖空間中第n位為0的具體操作步驟;圖7為按照本發(fā)明方法由32位CPU執(zhí)行無(wú)線網(wǎng)絡(luò)控制器功能時(shí),該CPU設(shè)置存儲(chǔ)器位圖空間中第n位為1的具體操作步驟。
具體實(shí)施例方式
下面將參照本發(fā)明的一個(gè)實(shí)施例及其附圖來(lái)進(jìn)一步說(shuō)明本發(fā)明。
本發(fā)明的下行鏈路OVSF碼字查找和分配方法主要由WCDMA系統(tǒng)中的RNC設(shè)備執(zhí)行,表示完整碼樹(shù)中各個(gè)碼字使用狀態(tài)信息的位圖被存儲(chǔ)在RNC的RAM內(nèi),RNC設(shè)備中所具體使用的中央處理器(CPU)為奔騰III系列的32位CPU芯片。在WCDMA系統(tǒng)的RNC中,每一個(gè)小區(qū)對(duì)應(yīng)一個(gè)OVSF碼樹(shù),碼樹(shù)中各個(gè)碼字的擴(kuò)頻因子最小為4、最大為512,每個(gè)OVSF碼樹(shù)中碼字的總數(shù)為1020個(gè),每個(gè)碼字具有一位的狀態(tài)信息位,這樣總計(jì)需要1020位的存儲(chǔ)容量用于存儲(chǔ)整個(gè)碼樹(shù)中各個(gè)碼字的狀態(tài)信息,將1020個(gè)碼字按照從1到1020的順序進(jìn)行編號(hào),將編號(hào)后所有碼字的總計(jì)1020位的狀態(tài)信息組成一個(gè)位圖,在該位圖中每個(gè)碼字的狀態(tài)信息在位圖中的位置編號(hào)就是該碼字的碼字順序標(biāo)號(hào)。下面以一個(gè)OVSF碼樹(shù)進(jìn)行說(shuō)明。
從圖1和圖2可以看到,對(duì)OVSF碼樹(shù)的碼字分配過(guò)程,就是對(duì)該碼樹(shù)位圖空間內(nèi)這1020個(gè)位的狀態(tài)信息數(shù)值進(jìn)行置0或置1的過(guò)程。對(duì)整個(gè)OVSF碼樹(shù)的分配操作只需要三種最基本的位圖操作查詢指定的位狀態(tài)信息是否為0、指定位的狀態(tài)信息被置0和指定位的狀態(tài)信息被置1。由于使用本發(fā)明的方法,在CPU中碼樹(shù)中碼字的狀態(tài)信息占用的字節(jié)數(shù)相當(dāng)于128個(gè)標(biāo)準(zhǔn)的8位長(zhǎng)字節(jié),這也說(shuō)明了采用本發(fā)明的位圖存貯OVSF碼狀態(tài)信息的優(yōu)點(diǎn)。
圖3表示使用本發(fā)明的方法,由無(wú)線網(wǎng)絡(luò)控制器執(zhí)行的在位圖中查找和指定移動(dòng)用戶終端下行鏈路OVSF碼字的操作。這里假設(shè)該移動(dòng)用戶終端需要一個(gè)擴(kuò)頻因子為SF的下行鏈路碼字,這就需要RNC從該用戶所在小區(qū)碼樹(shù)中擴(kuò)頻因子為SF的層中查找到一個(gè)可分配OVSF碼字。整個(gè)查找操作過(guò)程如圖3所示,尤其需要注意圖3中改變上層父碼的過(guò)程,因?yàn)樵撨^(guò)程實(shí)際為需要循環(huán)執(zhí)行的多個(gè)步驟。圖3中,與一個(gè)碼字具有相同父碼的相鄰另一個(gè)碼字之間互為兄弟碼。由于在查找和指定分配碼字過(guò)程中,根據(jù)碼樹(shù)中OVSF碼字標(biāo)號(hào)的數(shù)學(xué)關(guān)系可以非常簡(jiǎn)單地得到要查詢位圖中的那個(gè)位,并獲得位的位置編號(hào),因而整個(gè)查詢和分配碼字操作所需時(shí)間是非常短的,具有較高的時(shí)間效率。此外,對(duì)于多碼分配,只需要對(duì)上述操作過(guò)程作適當(dāng)修改即可。
圖4表示使用本發(fā)明的方法,由無(wú)線網(wǎng)絡(luò)控制器執(zhí)行的回收碼字的操作。由于采用本發(fā)明的位圖和碼字編號(hào)方法,回收碼字操作過(guò)程也是比較簡(jiǎn)單的。這里假設(shè)要回收的OVSF碼的擴(kuò)頻因子為SF、碼號(hào)為k(0≤k≤SF-1),則無(wú)線網(wǎng)絡(luò)控制器具體執(zhí)行的整個(gè)操作過(guò)程如圖4所示。如同圖3一樣,圖4所示的改變上層父碼狀態(tài)信息的過(guò)程,也是需要循環(huán)執(zhí)行的多個(gè)步驟。圖4中的兄弟碼的定義與圖3中相同。
圖3、4所示的操作步驟,構(gòu)成了本發(fā)明的WCDMA系統(tǒng)無(wú)線網(wǎng)絡(luò)控制器為移動(dòng)用戶終端分配下行鏈路OVSF碼字方法的基本內(nèi)容。
由于具體使用的CPU為具有32位運(yùn)算能力的奔騰III系列芯片,故將本發(fā)明方法使用的位圖劃分為每個(gè)字節(jié)長(zhǎng)度為32位的總計(jì)32個(gè)字節(jié),這樣就需要在CPU的RAM中設(shè)置一個(gè)具有32個(gè)字節(jié)和每字節(jié)32位長(zhǎng)度的共計(jì)1024位的位圖空間,由于一個(gè)碼樹(shù)只使用1020個(gè)碼字,該碼樹(shù)位圖空間中第32個(gè)字節(jié)的最后四位空置不用。
在CPU具體執(zhí)行分配操作時(shí),指定第一個(gè)32位字節(jié)的最左邊第一位為整個(gè)位圖的第1位,該第一字節(jié)中從左向右的其它各位依次被指定為整個(gè)位圖的第2位、第3位、...、第32位;指定位圖中第二個(gè)32位長(zhǎng)字節(jié)的第一位為整個(gè)位圖的第33位,該第二字節(jié)中從左向右的其它各位被指定為位圖的第34位、第35位……直到指定第32字節(jié)的第28位為位圖的第1020位。在使用具有32位運(yùn)算能力的奔騰III系列CPU芯片的情況下,在存儲(chǔ)器位圖中查詢第n位是否為0的具體操作步驟如圖5所示,將位圖中第n位設(shè)置為0的具體操作步驟如圖6所示,將位圖中第n位設(shè)置為1具體操作步驟如圖7所示,其中1≤n≤1020。
圖5中,CPU在執(zhí)行查詢位圖第n位是否為0的過(guò)程中,首先將位圖第n位所在字節(jié)中的全部32位狀態(tài)信息值賦給變量element,將位圖的該第n位的位置編號(hào)與該第n位所在字節(jié)中第一位在位圖中的位置編號(hào)之間的差值賦給變量pos-in-eie,將一個(gè)32位的二進(jìn)制數(shù)值10000000000000000000000000000000(在圖5中該32位二進(jìn)制數(shù)值使用十六進(jìn)制的數(shù)值80000000HEX表示)右移pos-in-ele位所獲得的數(shù)值賦給變量ele-map,判斷將變量element和ele-map進(jìn)行逐位的“與”運(yùn)算所獲得的結(jié)果是否為0,如果結(jié)果為0則判斷第n位為0,反之則判斷第n位不為0。
圖6中,CPU在執(zhí)行將位圖第n位設(shè)置為0的過(guò)程中,首先將位圖第n位所在字節(jié)的全部32位狀態(tài)信息值賦給變量element,將位圖的該第n位的位置編號(hào)與該第n位所在字節(jié)中第一位的位置編號(hào)之間的差值賦給變量pos-in-ele,將一個(gè)32位的二進(jìn)制數(shù)值10000000000000000000000000000000(在圖6中該32位二進(jìn)制數(shù)值使用十六進(jìn)制的數(shù)值80000000HEX表示)右移pos-in-ele位所獲得的數(shù)值賦給變量ele-map,將變量ele-map進(jìn)行逐位的“非”運(yùn)算,將變量element與變量ele-map進(jìn)行逐位的“與”運(yùn)算并將所獲得的結(jié)果返回到該第n位所在字節(jié)。
圖7中,CPU在執(zhí)行將位圖第n位設(shè)置為1的過(guò)程中,首先將位圖第n位所在字節(jié)的全部32位狀態(tài)信息值賦給變量element,將位圖的該第n位的位置編號(hào)與該第n位所在字節(jié)中第一位的位置編號(hào)之間的差值賦給變量pos-in-ele,將一個(gè)32位的二進(jìn)制數(shù)值10000000000000000000000000000000(在圖6中該32位二進(jìn)制數(shù)值使用十六進(jìn)制的數(shù)值80000000HEX表示)右移pos-in-ele位所獲得的數(shù)值賦給變量ele-map,將變量element與變量ele-map進(jìn)行逐位的“或”運(yùn)算并將所獲得的結(jié)果返回到該第n位所在字節(jié)。
圖5、6、7中,狀態(tài)信息位圖之所以采用32位長(zhǎng)度的字節(jié)是因?yàn)闊o(wú)線網(wǎng)絡(luò)控制器實(shí)際采用了具有32位運(yùn)算能力的奔騰III系列CPU芯片。如果采用其它位數(shù)運(yùn)算能力的CPU芯片,則可以相應(yīng)地改變所選擇的位圖字節(jié)長(zhǎng)度。
本發(fā)明的方法由于在運(yùn)算操作中采用了狀態(tài)信息位圖進(jìn)行OVSF碼字分配的運(yùn)算,與其它方式的OVSF碼分配方法相比,在時(shí)間復(fù)雜度相同的情況下,本發(fā)明的方法占用了非常少的無(wú)線網(wǎng)絡(luò)控制器存貯空間,具有較好的效率。
權(quán)利要求
1.一種在寬帶碼分多址移動(dòng)通信系統(tǒng)中無(wú)線網(wǎng)絡(luò)控制器為移動(dòng)用戶終端分配下行鏈路正交可變擴(kuò)頻因子碼字的方法,包括步驟將每個(gè)小區(qū)所使用的SF為4、8、16、32、64、128、256、512的總計(jì)1020個(gè)碼字按照從1到1020的順序進(jìn)行標(biāo)號(hào);為每個(gè)碼字設(shè)置一位的狀態(tài)信息位,該狀態(tài)信息位的值為0表示該碼字可以分配給移動(dòng)用戶終端,該狀態(tài)信息位的值為1則表示該碼字不可分配;在無(wú)線網(wǎng)絡(luò)控制器的存儲(chǔ)器內(nèi)設(shè)置具有1020位的位圖空間,位圖中各位的位置按照從1至1020的順序進(jìn)行位置編號(hào);將碼字標(biāo)號(hào)為1至1020的各個(gè)碼字的一位狀態(tài)信息存儲(chǔ)在存儲(chǔ)器位圖空間中位置編號(hào)與碼字標(biāo)號(hào)相同的位置;當(dāng)移動(dòng)用戶終端因通信需要分配擴(kuò)頻因子為SF的碼字時(shí),在存儲(chǔ)器位圖空間中按照位置編號(hào)從SF-3到2*SF-4的順序查找狀態(tài)信息位的值為0的碼字,將查找到的第一個(gè)狀態(tài)信息位為0位置編號(hào)對(duì)應(yīng)的碼字分配給移動(dòng)用戶終端,并將該碼字的狀態(tài)信息位設(shè)置為1;當(dāng)位置編號(hào)從SF-3到2*SF-4的所有位置上的狀態(tài)信息位均為1時(shí),則判斷沒(méi)有碼字可分配而終止分配;當(dāng)移動(dòng)用戶終端結(jié)束通信并回收擴(kuò)頻因子為SF的碼字時(shí),在存儲(chǔ)器位圖空間中將與該碼字標(biāo)號(hào)相同的位置編號(hào)上的狀態(tài)信息位設(shè)置為0。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于當(dāng)查找到并分配一個(gè)碼字給移動(dòng)用戶終端時(shí),判斷與該碼字具有相同父碼的另一相鄰碼字的狀態(tài)信息位是否為0,如果為0則將它們的相同父碼的狀態(tài)信息位設(shè)置為1,進(jìn)一步判斷與它們父碼具有相同父碼的另一相鄰碼字的狀態(tài)信息位是否為0,如果為0則將更上一層的父碼的狀態(tài)信息位設(shè)置為1,直至發(fā)現(xiàn)另一相鄰碼字的狀態(tài)信息位為1或?qū)⒋a樹(shù)最上層的父碼設(shè)置為1為止;和將該被分配碼字之下各層中的所有子碼的狀態(tài)信息位的設(shè)置為1。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于當(dāng)回收一個(gè)碼字時(shí),判斷與該碼字具有相同父碼的另一相鄰碼字的狀態(tài)信息位是否為0,如果為0,則將該碼字的父碼的狀態(tài)信息位設(shè)置為0,進(jìn)一步判斷與它們的父碼具有相同父碼的另一相鄰碼字的狀態(tài)信息位是否為0,如果為0則將更上一層父碼的狀態(tài)信息位設(shè)置為0,直至發(fā)現(xiàn)另一相鄰碼字的狀態(tài)信息位為1或?qū)⒋a樹(shù)最上層的父碼設(shè)置為0為止;和將該被回收碼字之下各層中的所有子碼的狀態(tài)信息位設(shè)置為0。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于當(dāng)無(wú)線網(wǎng)絡(luò)控制器使用具有32位運(yùn)算能力的CPU時(shí),將位圖劃分為32位長(zhǎng)度的32個(gè)字節(jié),第32個(gè)字節(jié)中的最后四位空置不用,CPU在執(zhí)行查詢位圖第n位是否為0的過(guò)程中,首先將位圖第n位所在字節(jié)中的全部32位狀態(tài)信息值賦給變量element,將位圖的該第n位的位置編號(hào)與該第n位所在字節(jié)中第一位在位圖中的位置編號(hào)之間的差值賦給變量pos-in-ele,將一個(gè)32位的二進(jìn)制數(shù)值10000000000000000000000000000000右移pos-in-ele位所獲得的數(shù)值賦給變量ele-map,判斷將變量element和ele-map進(jìn)行逐位的“與”運(yùn)算所獲得的結(jié)果是否為0,如果結(jié)果為0則判斷第n位為0,反之則判斷第n位不為0。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于當(dāng)無(wú)線網(wǎng)絡(luò)控制器使用具有32位運(yùn)算能力的CPU時(shí),將位圖劃分為32位長(zhǎng)度的32個(gè)字節(jié),第32個(gè)字節(jié)中的最后四位空置不用,CPU在執(zhí)行將位圖第n位設(shè)置為0的過(guò)程中,首先將位圖第n位所在字節(jié)的全部32位狀態(tài)信息值賦給變量element,將位圖的該第n位的位置編號(hào)與該第n位所在字節(jié)中第一位的位置編號(hào)之間的差值賦給變量pos-in-ele,將一個(gè)32位的二進(jìn)制數(shù)值10000000000000000000000000000000右移pos-in-ele位所獲得的數(shù)值賦給變量ele-map,將變量ele-map進(jìn)行逐位的“非”運(yùn)算,將變量element與變量ele-map進(jìn)行逐位的“與”運(yùn)算并將所獲得的結(jié)果返回到該第n位所在字節(jié)。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于當(dāng)無(wú)線網(wǎng)絡(luò)控制器使用具有32位運(yùn)算能力的CPU時(shí),將位圖劃分為32位長(zhǎng)度的32個(gè)字節(jié),第32個(gè)字節(jié)中的最后四位空置不用,CPU在執(zhí)行將位圖第n位設(shè)置為1的過(guò)程中,首先將位圖第n位所在字節(jié)的全部32位狀態(tài)信息值賦給變量element,將位圖的該第n位的位置編號(hào)與該第n位所在字節(jié)中第一位的位置編號(hào)之間的差值賦給變量pos-in-ele,將一個(gè)32位的二進(jìn)制數(shù)值10000000000000000000000000000000右移pos-in-ele位所獲得的數(shù)值賦給變量ele-map,將變量element與變量ele-map進(jìn)行逐位的“或”運(yùn)算并將所獲得的結(jié)果返回到該第n位所在字節(jié)。
全文摘要
本發(fā)明涉及寬帶碼分多址(WCDMA)移動(dòng)通信系統(tǒng)中無(wú)線網(wǎng)絡(luò)控制器(RNC)所執(zhí)行的為用戶分配下行鏈路正交可變擴(kuò)頻(OVSF)碼的方法,使用本發(fā)明的方法可以使無(wú)線網(wǎng)絡(luò)控制器以最少的運(yùn)算步驟和占用最小存儲(chǔ)器空間來(lái)實(shí)現(xiàn)為移動(dòng)用戶終端分配下行鏈路OVSF碼的操作,并有助于提高OVSF碼的利用率。
文檔編號(hào)H04J13/02GK1635727SQ20041010153
公開(kāi)日2005年7月6日 申請(qǐng)日期2004年12月23日 優(yōu)先權(quán)日2004年12月23日
發(fā)明者官弼根, 閻海花, 聶穎, 陳威 申請(qǐng)人:北京北方烽火科技有限公司