一種解擾解擴的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及移動通信領(lǐng)域,尤其涉及一種解擾解擴的方法及裝置。
【背景技術(shù)】
[0002]隨著移動通信技術(shù)的迅猛發(fā)展,越來越多的移動終端都開始支持多模通信模式,t匕如,支持寬帶碼分多址(WCDMA,Wideband Code Divis1n Multiple Access)和時分同步碼分多址(TD-SCDMA, Time Divis1n-Synchronous Code Divis1n Multiple Access)雙模式等。
[0003]目前,在移動終端的處理芯片中進行多種模式的解擾解擴功能的方法,具體為:WCDMA解擾解擴單元以及TD-SCDMA解擾解擴單元分別將接收天線發(fā)來的數(shù)據(jù)源進行解擾解擴后得到解擾解擴結(jié)果;將所述解擾解擴結(jié)果輸出到數(shù)據(jù)總線以寫回主存儲單元。其中,在WCDMA和TD-SCDMA模式中進行解擾解擴的方法可分為滑動相關(guān)和多碼道兩種,分別由兩套獨立的硬件電路實現(xiàn)。
[0004]但是,采用上述方法進行解擾解擴時,需要采用多套累加電路實現(xiàn)多碼道和滑動相關(guān),因此需要的硬件資源開銷較大。例如,在實現(xiàn)16個碼道或者抽頭數(shù)為16的滑動相關(guān)時,至少需要16套累加電路。當(dāng)碼道數(shù)或者抽頭數(shù)大于16時,這種硬件資源的開銷大的情況會非常突出。當(dāng)碼道數(shù)或者抽頭數(shù)小于16時,該方法中將會有部分電路處于閑置狀態(tài),即硬件資源未能最大化利用率。而未運算的電路會帶來一些不必要的功耗開銷。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本發(fā)明實施例提供一種解擾解擴的方法及裝置,能減少硬件開銷,使硬件資源達到最大利用率。
[0006]為達到上述目的,本發(fā)明的技術(shù)方案是這樣實現(xiàn)的:
[0007]本發(fā)明實施例提供了一種解擾解擴的方法,所述方法包括:
[0008]根據(jù)配置指令,生成擾碼及擴頻因子;
[0009]讀取緩存的定點數(shù)據(jù)后,利用所述擾碼及擴頻因子對所述定點數(shù)據(jù)進行計算得到解擾解擴后的數(shù)據(jù)。
[0010]上述方案中,所述根據(jù)配置指令,生成擾碼及擴頻因子之前,所述方法還包括:
[0011]實時從數(shù)據(jù)總線獲取指定長度的數(shù)據(jù),當(dāng)所述數(shù)據(jù)為浮點數(shù)據(jù)時,將所述浮點數(shù)據(jù)轉(zhuǎn)換為定點數(shù)據(jù)并緩存;
[0012]當(dāng)所述數(shù)據(jù)為定點數(shù)據(jù)時,直接緩存所述定點數(shù)據(jù)。
[0013]上述方案中,所述配置指令包括:對當(dāng)前通信模式解擾解擴所需的擾碼和擴頻因子,以及是否將解擾解擴結(jié)果轉(zhuǎn)換為浮點數(shù)據(jù)的指示。
[0014]上述方案中,所述生成擾碼及擴頻因子為:生成的擴頻因子為正交化碼OVSF中的指定碼,生成的擾碼為PN碼。
[0015]上述方案中,所述利用所述擾碼及擴頻因子對所述定點數(shù)據(jù)進行計算得到解擾解擴后的數(shù)據(jù)之后,所述方法還包括:
[0016]判斷配置指令中是否指示將所述解擾解擴結(jié)果轉(zhuǎn)換為浮點數(shù)據(jù),若是,則對所述解擾解擴結(jié)果進行轉(zhuǎn)換;否則,直接將所述解擾解擴結(jié)果作為輸出結(jié)果。
[0017]本發(fā)明實施例還提供了一種解擾解擴的裝置,所述裝置包括:控制單元、擾碼和擴頻因子產(chǎn)生單元、緩存單元以及數(shù)據(jù)運算單元;其中,
[0018]所述控制單元,用于根據(jù)配置指令,控制擾碼和擴頻因子生成單元生成擾碼及擴頻因子;
[0019]所述擾碼和擴頻因子生成單元,用于生成擾碼及擴頻因子;
[0020]所述數(shù)據(jù)運算單元,用于從所述緩存單元中讀取緩存的定點數(shù)據(jù)后,利用所述擾碼及擴頻因子對所述定點數(shù)據(jù)進行計算得到解擾解擴后的數(shù)據(jù);
[0021 ] 所述緩存單元,用于緩存定點數(shù)據(jù)。
[0022]上述方案中,所述裝置還包括:浮點定點轉(zhuǎn)換單元,用于在控制單元根據(jù)配置指令,確定當(dāng)前的解擾解擴模式之前,實時從數(shù)據(jù)總線獲取指定長度的數(shù)據(jù),當(dāng)所述數(shù)據(jù)為浮點數(shù)據(jù)時,將所述浮點數(shù)據(jù)轉(zhuǎn)換為定點數(shù)據(jù)并發(fā)送至緩存單元;當(dāng)所述數(shù)據(jù)為定點數(shù)據(jù)時,直接由緩存單元緩存所述定點數(shù)據(jù);
[0023]相應(yīng)的,所述緩存單元,具體用于緩存浮點定點轉(zhuǎn)換單元發(fā)來的定點數(shù)據(jù)。
[0024]上述方案中,所述配置指令包括:對當(dāng)前通信模式解擾解擴所需的擾碼和擴頻因子,以及是否將解擾解擴結(jié)果轉(zhuǎn)換為浮點數(shù)據(jù)的指示。
[0025]上述方案中,所述擾碼和擴頻因子生成單元,具體用于生成的擴頻因子為正交化碼OVSF中的指定碼,生成的擾碼為PN碼。
[0026]上述方案中,所述裝置還包括:定點浮點轉(zhuǎn)換單元,用于利用所述擾碼及擴頻因子對所述定點數(shù)據(jù)進行計算得到解擾解擴后的數(shù)據(jù)之后,判斷是否配置指令中指示將所述解擾解擴結(jié)果轉(zhuǎn)換為浮點數(shù)據(jù),若是,則對所述解擾解擴結(jié)果進行轉(zhuǎn)換;否則,直接將所述解擾解擴結(jié)果作為輸出結(jié)果。
[0027]本發(fā)明實施例所提供的解擾解擴的方法及裝置,能通過配置指令確定當(dāng)前通信模式的擾碼及擴頻因子,進而對緩存數(shù)據(jù)進行解擾解擴。如此,就能夠避免現(xiàn)有技術(shù)中,先區(qū)分通信模式,再選定對應(yīng)的硬件進行解擾解擴的方式,只使用一套解擾解擴裝置就能夠?qū)崿F(xiàn)多模式的解擾解擴,從而減少硬件開銷,使硬件資源達到最大利用率。
【附圖說明】
[0028]圖1為本發(fā)明實施例解擾解擴的方法流程示意圖;
[0029]圖2為本發(fā)明實施例多碼道實現(xiàn)方法示意圖;
[0030]圖3為本發(fā)明實施例滑動相關(guān)實現(xiàn)方法示意圖;
[0031]圖4為本發(fā)明實施例解擾解擴的裝置組成結(jié)構(gòu)示意圖;
[0032]圖5為本發(fā)明實施例浮點定點轉(zhuǎn)換單元組成結(jié)構(gòu)示意圖;
[0033]圖6為本發(fā)明數(shù)據(jù)運算單元組成示意圖;
[0034]圖7為本發(fā)明實施例定點浮點轉(zhuǎn)換單元組成結(jié)構(gòu)示意圖。
【具體實施方式】
[0035]下面結(jié)合附圖及具體實施例對本發(fā)明再作進一步詳細(xì)的說明。
[0036]實施例一、
[0037]本發(fā)明實施例提供的解擾解擴方法,如圖1所示,包括:
[0038]步驟101:根據(jù)配置指令,生成擾碼及擴頻因子。
[0039]這里,所述配置指令可以包括:對當(dāng)前通信模式解擾解擴所需的擾碼和擴頻因子,以及是否將解擾解擴結(jié)果轉(zhuǎn)換為浮點數(shù)據(jù)的指示;
[0040]優(yōu)選地,除所述擾碼以及擴頻因子之外,所述配置指令還可以包括:當(dāng)前通信模式,比如可以為WCDMA通信模式、或TD-SCDMA通信模式。
[0041]其中,確定當(dāng)前的通信模式的方法可以為現(xiàn)有技術(shù),這里不做贅述。
[0042]所述生成擾碼及擴頻因子為:生成的擴頻因子可以為正交化碼(OVSF, OrthogonalVariable Spreading Factor)中的指定碼,生成的擾碼可以為PN碼。其中,PN碼的生成方法為現(xiàn)有技術(shù),這里不做贅述。
[0043]步驟102:讀取緩存的定點數(shù)據(jù)后,利用所述擾碼及擴頻因子對所述定點數(shù)據(jù)進行計算得到解擾解擴后的數(shù)據(jù)。
[0044]這里,所述用所述擾碼及擴頻因子對所述定點數(shù)據(jù)進行計算得到解擾解擴后的數(shù)據(jù)可以為:利用所述擾碼與所述定點數(shù)據(jù)相乘后得到解擾結(jié)果,將所述解擾結(jié)果與所述擴頻因子相乘得到解擴結(jié)果。
[0045]所述讀取緩存的定點數(shù)據(jù)可以為讀取指定長度的定點數(shù)據(jù)。
[0046]優(yōu)選地,執(zhí)行步驟101之前,還可以包括:實時從數(shù)據(jù)總線獲取指定長度的數(shù)據(jù),當(dāng)所述數(shù)據(jù)為浮點數(shù)據(jù)時,將所述浮點數(shù)據(jù)轉(zhuǎn)換為定點數(shù)據(jù)并緩存;當(dāng)所述數(shù)據(jù)為定點數(shù)據(jù)時,直接緩存所述定點數(shù)據(jù)。其中,所述指定長度可以為2048bit。
[0047]優(yōu)選地,所述步驟102完成后,還會判斷是否仍有緩存的定點數(shù)據(jù),若有,則重復(fù)執(zhí)行步驟102 ;否則,判斷是否接收到配置總線發(fā)來的更新的配置信息,若收到,則返回執(zhí)行步驟101。
[0048]優(yōu)選地,所述步驟102完成后,還會判斷是否配置指令中指定將所述解擾解擴結(jié)果轉(zhuǎn)換為浮點數(shù)據(jù),若是,則對所述解擾解擴結(jié)果進行轉(zhuǎn)換,將所述解擾解擴結(jié)果轉(zhuǎn)換為浮點數(shù)據(jù)并輸出;否則,直接將所述解擾解擴結(jié)果作為輸出結(jié)果。
[0049]下面對本發(fā)明實施例中采用多碼道的解擾解擴的方法進行說明,如圖2所示,以兩個碼道為例,總數(shù)據(jù)的長度為2048bit,碼道I的擴頻因子為128,碼道2的擴頻因子為64。
[0050]首先,對數(shù)據(jù)段21進行碼道I的處理:圖2中所示的數(shù)據(jù)段21為所述總數(shù)據(jù)中的第一段數(shù)據(jù),長度為512,依據(jù)碼道I對應(yīng)的擴頻因子,將所述數(shù)據(jù)段21分成四段;依據(jù)碼道I對應(yīng)的擴頻因子對數(shù)據(jù)進行累加,該實施例例中碼道I將數(shù)據(jù)段I分成四段,產(chǎn)生四個累加結(jié)果分別為Sll、S12、S13和S14 ;
[0051]然后,對數(shù)據(jù)段42進行碼道2的處理:讀取數(shù)據(jù)緩存單元中的數(shù)據(jù)段2,所述數(shù)據(jù)段42為所述總數(shù)據(jù)中的第二段數(shù)據(jù),長度為512 ;并依據(jù)碼道2將數(shù)據(jù)段42分成八段,依據(jù)碼道2對應(yīng)的擴頻因子分別對數(shù)據(jù)段42中各個子段數(shù)據(jù)進行累加,該例中碼道2將產(chǎn)生八個結(jié)果,分別為 S21、S22、S23、S24、S25、S26、S27 和 S28 ;
[0052]依次類推,直至對2048位長的總數(shù)據(jù)完成計算。
[0053]下面對本發(fā)明實施例中采用滑動相關(guān)的解擾解擴的方法進行說明,如圖3所示,以4個抽頭、數(shù)據(jù)總長度2048bit、擴頻因子為512為例,數(shù)據(jù)段51為需要處理的總數(shù)據(jù)中的第一段數(shù)據(jù),長度為516。圖3中所示的抽頭,為需要滑動的數(shù)據(jù),本例中為4個抽頭。
[0054]讀取O到Sf-1個數(shù)據(jù)進行計算,產(chǎn)生結(jié)果S31 ;其中,Sf為擴頻因子的長度512bit ;
[0055]讀取I到Sf個數(shù)據(jù)進行計算,產(chǎn)生結(jié)果S32,其中,第Sf位數(shù)據(jù)為抽頭I ;
[0056]讀取2到Sf+Ι個數(shù)據(jù)進行計算,產(chǎn)生結(jié)果S33,其中第Sf+Ι位數(shù)據(jù)為抽頭2 ;
[0057]讀取3到Sf+2個數(shù)據(jù)進行計算,產(chǎn)生結(jié)果S34 ;其中,其中第Sf+2位數(shù)據(jù)為抽頭3 ;
[0058]讀取4到Sf+3個數(shù)據(jù)進行計算,產(chǎn)生結(jié)果S35 ;其中第Sf+3位數(shù)據(jù)為抽頭4。
[0059]依次類推,完成數(shù)據(jù)段I的4個抽頭計算后,再讀入數(shù)據(jù)段2進行處理,一共執(zhí)行4次相同的操作可以完成此次滑動相關(guān)計算的任務(wù)。
[0060]實施例二、
[0061 ] 為了支持以上功能,本發(fā)明實施例的解擾解擴的裝置包括以下子單元,其結(jié)構(gòu)如圖4所示:控制單元、擾碼和擴頻因子產(chǎn)生單元、緩存單元以及數(shù)據(jù)運算單元;其中,
[0062]所述控制單元,用于根據(jù)配置指令,控制擾碼和擴頻因子生成單元生成擾碼及擴頻因子;
[0063]所述擾碼和擴頻因子生成單元,用于生成擾碼及擴頻因子;
[0064]所述數(shù)據(jù)運算單元,用于從所述緩存單元中讀取緩存的定點數(shù)據(jù)后,利用所述擾碼及擴頻因子對所述定點數(shù)據(jù)進行計算得到解擾解擴后的數(shù)據(jù);
[0065]所述緩存單元,用于緩存定點數(shù)據(jù)。
[0066]所述控制單元,具體用于根據(jù)配置總線發(fā)來的配置指令,確定當(dāng)前的解擾解擴模式。
[00