專(zhuān)利名稱(chēng):用于對(duì)數(shù)據(jù)進(jìn)行塊編碼的裝置與方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)的塊編碼,具體地講,本發(fā)明(盡管并非專(zhuān)門(mén)地)涉及一種針對(duì)一個(gè)通用移動(dòng)通信系統(tǒng)(UMTS)蜂窩網(wǎng)絡(luò)的傳送格式組合指示(TFCI)的塊編碼。
UMTS是針對(duì)第三代(3G)蜂窩網(wǎng)絡(luò)的歐洲建議。UMTS網(wǎng)絡(luò)可與現(xiàn)存GSM網(wǎng)絡(luò)互操作,并且為高速包交換數(shù)據(jù)傳輸提供了發(fā)展?jié)摿ΑR幌盗?GPP標(biāo)準(zhǔn)中均定義了UMTS傳輸協(xié)議。這些標(biāo)準(zhǔn)定義了一系列用于傳輸?shù)膶?基本上與ISO 7層定義一致),包括一個(gè)物理層(通常叫做層1;L1),一個(gè)數(shù)據(jù)鏈接層(通常叫做層2;L2)以及一個(gè)網(wǎng)絡(luò)層(層3,L3)。在物理層,按10毫秒時(shí)間的幀傳輸數(shù)據(jù),每一個(gè)幀包含15個(gè)時(shí)隙。把每一個(gè)時(shí)隙邏輯地分配給一個(gè)信道。幀結(jié)構(gòu)和信道映射的細(xì)節(jié)不是本發(fā)明的主題,因此,若想了解進(jìn)一步的背景信息,讀者可參照相應(yīng)的ETSI標(biāo)準(zhǔn)(TS25.211,“Physical channels and mapping of transportchannels on to physical channels(FDD)”)。
在物理層,許多邏輯信道(從而幀中的時(shí)隙)傳送控制信息,例如導(dǎo)頻比特和功率控制比特。也可以選擇令控制信息包括一個(gè)傳送格式組合指示(TFCI),TFCI向接收器提供關(guān)于包含在傳送TFCI的時(shí)隙中的傳送格式的組合的信息。如果在時(shí)隙中傳送不同速率的數(shù)據(jù)(這是UMTS所允許的),那么可以使用TFCI,以允許進(jìn)行正確的解碼,以便從時(shí)隙中抽取數(shù)據(jù),并在協(xié)議的層2將其提供給媒介存取控制層(MAC)。在盲傳送格式檢測(cè)的情況中,不傳送TFCI。
在進(jìn)行傳輸之前,使用二階李特-繆勒(Reed-Muller)代碼的一個(gè)(32,10)子代碼對(duì)TFCI進(jìn)行編碼。如果指示少于10比特,那么通過(guò)把最高有效比特設(shè)置為0來(lái)填充它。以下的塊編碼,TFCI代碼字為32比特長(zhǎng)。
應(yīng)該認(rèn)識(shí)到,一個(gè)32,10代碼需要320比特的存儲(chǔ)量用于編碼矩陣(32×10),并且如以下更加詳細(xì)的解釋?zhuān)瑸榱藢?duì)TFCI進(jìn)行編碼,需要相當(dāng)復(fù)雜的處理過(guò)程。在用戶(hù)設(shè)備(UE)的環(huán)境中,例如在一個(gè)具有硅面積限制的緊致移動(dòng)電話(huà)中,應(yīng)該認(rèn)識(shí)到,人們希望盡可能多地簡(jiǎn)化對(duì)TFCI的編碼。
根據(jù)本發(fā)明的第一個(gè)方面,提供了一種對(duì)一個(gè)未編碼字進(jìn)行塊編碼,以產(chǎn)生一個(gè)代碼字的方法。該方法包括提供一個(gè)可用于對(duì)一個(gè)二進(jìn)制序列進(jìn)行完全計(jì)數(shù)的計(jì)數(shù)器,其中的二進(jìn)制序列具有一個(gè)小于未編碼字總比特寬度的比特寬度;提供一個(gè)緩沖器,該緩沖器具有一個(gè)至少等于代碼字比特寬度的比特寬度,操作計(jì)數(shù)器在代碼字中遍歷比特總數(shù)的范圍,針對(duì)該范圍中的每一個(gè)計(jì)數(shù)器值,在計(jì)數(shù)器值和未編碼字的比特的一個(gè)預(yù)確定子集之間執(zhí)行一個(gè)邏輯AND操作,在邏輯AND操作的結(jié)果上執(zhí)行一個(gè)模2操作,將模2操作的結(jié)果存儲(chǔ)在緩沖器的一個(gè)預(yù)確定比特位置中,該預(yù)確定位置與計(jì)數(shù)器的值具有一個(gè)預(yù)確定的關(guān)系,判斷計(jì)數(shù)器是否已經(jīng)對(duì)整個(gè)具有至少等于代碼字比特寬度的值的數(shù)量的一個(gè)序列進(jìn)行計(jì)數(shù),并且把緩沖器的內(nèi)容作為代碼字加以輸出。
在第二個(gè)方面中,提供了用于對(duì)一個(gè)未編碼字進(jìn)行塊編碼,以產(chǎn)生一個(gè)代碼字的裝置,該裝置包括一個(gè)計(jì)數(shù)器、一個(gè)緩沖器、以及一個(gè)可用于執(zhí)行AND和模2操作的邏輯處理器。把計(jì)數(shù)器配置成可對(duì)整個(gè)具有一個(gè)小于未編碼字總比特寬度的比特寬度的二進(jìn)制序列進(jìn)行計(jì)數(shù);把邏輯處理器配置成可把計(jì)數(shù)器值與來(lái)自未編碼字的比特的一個(gè)預(yù)確定子集進(jìn)行AND操作,并可在結(jié)果上執(zhí)行一個(gè)模2操作;把緩沖器配置成可接收模2操作的結(jié)果,并可把結(jié)果存儲(chǔ)在一個(gè)顯示與計(jì)數(shù)器值的一個(gè)預(yù)確定映射關(guān)系的比特位置中;以及把該裝置配置成當(dāng)計(jì)數(shù)器已完成對(duì)整個(gè)具有至少等于代碼字比特寬度的值的數(shù)量的一個(gè)序列的計(jì)數(shù)操作時(shí),可提供來(lái)自緩沖器的輸出代碼字。
現(xiàn)在,將參照附圖,通過(guò)舉例的方式描述本發(fā)明的實(shí)施例。在這些附圖中
圖1是本發(fā)明的可能的硬件設(shè)備的一個(gè)框圖;以及圖2是一個(gè)流程圖,顯示了當(dāng)操作本發(fā)明的方法時(shí)所執(zhí)行的步驟。
如以上所描述的,通常使用一個(gè)(32,10)二階李特-繆勒代碼對(duì)TFCI進(jìn)行編碼。也可以把以上所描述的技術(shù)應(yīng)用于其它李特-繆勒方案,以及其它塊編碼方案。
還應(yīng)該認(rèn)識(shí)到,盡管通常在將一個(gè)時(shí)隙傳輸?shù)揭粋€(gè)接收器之前在傳輸器處進(jìn)行編碼,但是為了提供接收器編碼算法操作所針對(duì)的一個(gè)參照,解碼器使用與接收器中相同的技術(shù)是可能的。
用于TFCI編碼的二階李特-繆勒代碼的(32,10)子代碼的代碼字,是10基序列的一個(gè)線(xiàn)性組合。以下的表1中給出了這些基序列。
表1
為了達(dá)到具有比特bk,k=1,2,...,31的一個(gè)32比特的TFCI,根據(jù)下列方程,處理TFCI信息比特,a0,a1,...,a9(它們形成了一個(gè)無(wú)符號(hào)TFC索引,并且能夠表示1024個(gè)可能的傳送格式組合中的任何一個(gè)組合)b(i)=Σn=09a(n).M(i,n)%2]]>其中x%2是對(duì)模-2進(jìn)行計(jì)數(shù)的x的值。
從硬件角度而言,把10比特TFC索引與該表的32行中的每一行做AND操作,通過(guò)采用一個(gè)模2操作(通常對(duì)該10比特一起進(jìn)行XOR操作),把每一AND操作的結(jié)果減少到1比特值,然后每一個(gè)模2比特代表了以32比特塊編碼的TFCI的一個(gè)單一比特。
因此,為了對(duì)TFC索引進(jìn)行編碼,必須存儲(chǔ)一個(gè)320位表,并且執(zhí)行32個(gè)10比特AND和XOR操作。
對(duì)于任何被限制在輸入范圍{0,...,63}的指示符,可以使用以下所描述的技術(shù)來(lái)顯著簡(jiǎn)化這一處理過(guò)程。
對(duì)于上述的編碼(具有以上的范圍限制)的某些應(yīng)用,TFC索引(比特6~9)的4個(gè)最高有效比特將總是為0。因此,以上所給出的系數(shù)表的最右邊的4列對(duì)最終代碼字沒(méi)有影響。因此,在本發(fā)明中,忽略該表的最右邊4列。此外,還應(yīng)該加以注意的是,李特-繆勒編碼方案總是把比特5(在列M(1,5)中)設(shè)置成1,從而不必存儲(chǔ)這一比特的值。
這樣,在以上限制范圍內(nèi),僅需處理該表中最左邊的4列。這一實(shí)現(xiàn)僅有助于減少編碼過(guò)程的復(fù)雜度。然而,如以下所解釋的,該過(guò)程還可以進(jìn)一步得以簡(jiǎn)化。
參照?qǐng)D1,鑒于以上所解釋的原因,可以丟棄TFC索引最頂端的4個(gè)比特(比特6~9)。然后,可以把5個(gè)最低有效比特(0~4)輸送到一個(gè)AND邏輯電路2的輸入端。接下來(lái),可以提供一個(gè)5比特計(jì)數(shù)器4,在以下所給出的例子中,簡(jiǎn)單地把其配置成可從0~31順序地計(jì)數(shù)。從以下的描述中,還將可以認(rèn)識(shí)到,計(jì)數(shù)器可以按不同的順序計(jì)數(shù)(例如可以使用一個(gè)狀態(tài)機(jī)對(duì)其加以實(shí)現(xiàn)),在這一情況中,不需要采用以下所描述的地址交錯(cuò)。
應(yīng)該加以注意的是,該表中所示的李特-繆勒基序列的特征之一是,該表的0,1,2,3和4列中,比特的每一組合是唯一的。因此,按10進(jìn)位,值0~31的每一個(gè)值由該表中的一個(gè)獨(dú)立行唯一地加以表示。這意味著,如果計(jì)數(shù)器4從0~31計(jì)數(shù),那么將產(chǎn)生該表的0~4列的各行中所代表的比特組合。
然而,根據(jù)對(duì)該表的觀(guān)察可以注意到,表中的值不按0~31順序地計(jì)數(shù)。取而代之,相應(yīng)的情況如下面表2中所示。
表2
因此,如果對(duì)AND電路2的輸出進(jìn)行模2處理(例如,通過(guò)使用一個(gè)XOR過(guò)程6對(duì)所有這些比特一起進(jìn)行XOR操作),那么XOR門(mén)的輸出將代表已編碼的TFCI的32比特之一。還將注意到,把TFC索引的比特5直接輸送到XOR過(guò)程6。如以上所提到的,這是因?yàn)樵摯a表的比特5總是被加以設(shè)置,因此,TFC索引的比特5將總是通過(guò)AND電路2而保持不變。
參照以上的表2。如果計(jì)數(shù)器4按順序0~31依次計(jì)數(shù),那么該表中右手列數(shù)字提供了對(duì)于該具體計(jì)數(shù)來(lái)說(shuō)必須把來(lái)自XOR門(mén)的輸出比特放入其中的比特編號(hào)。有利的是,可以提供一個(gè)32比特緩沖器8,并且把該緩沖器的尋址(為了選擇把XOR門(mén)6的輸出放置在哪一比特位置)加以“交錯(cuò)”,以致于能夠?qū)⒈?中所示的映射施加于計(jì)數(shù)器4的輸出和其中存儲(chǔ)有XOR門(mén)的輸出的緩沖器8中的比特位置之間。
換句話(huà)說(shuō),如以上所扼要提到的,如果計(jì)數(shù)器按表2的右手列中所示的順序計(jì)數(shù)(例如,使用一個(gè)定制的狀態(tài)機(jī)),那么可以簡(jiǎn)單地將XOR門(mén)的輸出順序地放入32比特緩沖器中連續(xù)的比特位置。
無(wú)論采用以上所描述的兩種實(shí)施方式中的哪一種,將會(huì)注意到,一個(gè)計(jì)數(shù)器和顯著簡(jiǎn)化了編碼過(guò)程的多路分解組合,取代了現(xiàn)有技術(shù)的表1中所示的已存儲(chǔ)的編碼矩陣。
以下提供了圖1的一個(gè)VHSIC硬件描述語(yǔ)言(VHDL)定義。
<pre listing-type="program-listing"><![CDATA[-- DescriptionExample of reduced TFCI encoder-- Copyright(c)-Ubinetics 2001library IEEE;use IEEE.std_logic_1164.all;use IEEE.std_logic_signed.all;entity tfci_encoder is port(TFC in std_logic_vector(5 downto 0);TFCI out std_logic_vector(31 downto 0);END_FLAG out std_logic;CLK in std_logic;RST_H in std_logic;EN_H in std_logic);end tfci_encoder;architecture RTL of fir_tdl_std issignal resstd_logic_vector(31 downto 0);signal sumstd_logic;signal countinteger range 31 downto 0;begin-- Increment count on clock edge.-- Write output at end of cycle.inc_countprocess(CLK,RST_H)begin if(CLK′event and CLK=′1′)then if(RST_H=′1′)then count<=(others=>′0′); elsif count=31 then TFCI<=res; END_FLAG<=′1′;--end of encoding! else count<=count+1; END_FLAG<=′0′; end if; end if;end process;--encocde logic for TFCI encoderencode_logicprocess(tfc,count)begin sum<=(TFC(1)and count(1)) xor(TFC(2)and count(2)) xor(TFC(3)and count(3)) xor(TFC(4)and count(4)) xor(TFC(5)and count(5)) xor TFC(6);end process;--Use a line decoder to write enable the correct bit--in the″res″register according to the interleaving patternstore_resprocess(CLK,RST_H) begin if(CLK′event and CLK=′1′)then if(RST_H=′1′)thenres<=(others=>′0′); elsecase count is when 1=>res(0)<=sum; when 2=>res(1)<=sum; when 3=>res(2)<=sum; when 4=>res(3)<=sum; when 5=>res(4)<=sum; when 6=>res(5)<=sum; when 7=>res(6)<=sum; when 8=>res(7)<=sum; when 9=>res(8)<=sum; when 10=>res(9)<=sum; when 11=>res(10)<=sum; when 12=>res(11)<=sum; wheh 13=>res(12)<=sum; when 14=>res(13)<=sum; when 15=>res(14)<=sum; when 17=>res(15)<=sum; when 18=>res(16)<=sum; when 19=>res(17)<=sum; when 20=>res(18)<=sum; when 21=>res(19)<=sum; when 22=>res(20)<=sum; when 23=>res(21)<=sum; when 24=>res(22)<=sum; when 25=>res(23)<=sum; when 26=>res(24)<=sum; when 27=>res(25)<=sum; when 28=>res(26)<=sum; when 29=>res(27)<=sum; when 30=>res(28)<=sum; when 31=>res(29)<=sum; when 0 =>res(30)<=sum; when 16=>res(31)<=sum; end case; end if; end if;end process; end RTL;]]></pre>參照?qǐng)D2,所涉及的過(guò)程如下。在步驟20中,增加計(jì)數(shù)器2。在步驟22中,檢查計(jì)數(shù)器,以檢查編碼過(guò)程是否已經(jīng)完成,因?yàn)橛?jì)數(shù)器已經(jīng)對(duì)李特-繆勒代碼的所有可能的組合(在以上所給出的例子中為32個(gè))完整地進(jìn)行了計(jì)數(shù)。
然后,在步驟24中,把計(jì)數(shù)器值與TFC索引的最低有效5比特做AND操作。在步驟26中,對(duì)AND操作的結(jié)果做XOR操作,以產(chǎn)生一個(gè)單一比特值。然后,把XOR操作的結(jié)果存儲(chǔ)在32比特緩沖器中相應(yīng)的位置(步驟28),并重復(fù)這一操作。當(dāng)完成這一過(guò)程時(shí),把TFCI從該緩沖器輸出(步驟30)。
權(quán)利要求
1.一種對(duì)一個(gè)未編碼字進(jìn)行塊編碼,以產(chǎn)生一個(gè)代碼字的方法,包括(a)提供一個(gè)可用于從頭至尾對(duì)一個(gè)二進(jìn)制序列進(jìn)行計(jì)數(shù)的計(jì)數(shù)器,其中的二進(jìn)制序列具有一個(gè)小于未編碼字總比特寬度的比特寬度,(b)提供一個(gè)緩沖器,該緩沖器具有一個(gè)至少等于代碼字比特寬度的比特寬度;(c)操作計(jì)數(shù)器在代碼字中遍歷比特總數(shù)的范圍,(d)針對(duì)所述范圍中的每一個(gè)計(jì)數(shù)器值,在計(jì)數(shù)器值和未編碼字的比特的一個(gè)預(yù)確定子集之間執(zhí)行一個(gè)邏輯AND操作,(e)在邏輯AND操作的結(jié)果上執(zhí)行一個(gè)模2操作,(f)把模2操作的結(jié)果存儲(chǔ)在緩沖器的一個(gè)預(yù)確定的比特位置中,該預(yù)確定的位置與計(jì)數(shù)器的值具有一個(gè)預(yù)確定的關(guān)系,(g)判斷計(jì)數(shù)器是否已經(jīng)對(duì)整個(gè)具有至少等于代碼字比特寬度的值的數(shù)量的一個(gè)序列進(jìn)行計(jì)數(shù),并且把緩沖器的內(nèi)容作為代碼字加以輸出。
2.根據(jù)權(quán)利要求1的一種方法,其中,第一個(gè)字是一個(gè)傳送格式組合指示(TFCI),該塊編碼實(shí)現(xiàn)了一個(gè)李特-繆勒(Reed-Muller)代碼,且代碼字是一個(gè)在一個(gè)UMTS幀中使用的TFCI代碼字。
3.根據(jù)權(quán)利要求1或權(quán)利要求2的一種方法,其中,在邏輯AND操作的結(jié)果和來(lái)自非處于所述比特子集的未編碼字的比特的一個(gè)組合上執(zhí)行該模2操作。
4.根據(jù)任一先前權(quán)利要求的一種方法,其中,未編碼字的比特寬度為10,而且其中,代碼字的比特寬度為32。
5.根據(jù)權(quán)利要求4的一種方法,其中,代碼字是一個(gè)TFCI代碼字,與一個(gè)384kbps容量級(jí)UMTS傳輸一起使用,而且其中,計(jì)數(shù)器可從頭至尾對(duì)預(yù)確定的5比特二進(jìn)制序列進(jìn)行計(jì)數(shù)。
6.用于對(duì)一個(gè)未編碼字進(jìn)行塊編碼,以產(chǎn)生一個(gè)代碼字的裝置,包括(a)一個(gè)計(jì)數(shù)器,(b)一個(gè)緩沖器,以及(c)一個(gè)可用于執(zhí)行AND和模2操作的邏輯處理器,把計(jì)數(shù)器配置成可對(duì)整個(gè)具有一個(gè)小于未編碼字總比特寬度的比特寬度的二進(jìn)制序列進(jìn)行計(jì)數(shù);把邏輯處理器配置成可把計(jì)數(shù)器值與來(lái)自未編碼字的比特的一個(gè)預(yù)確定子集進(jìn)行AND操作,并可在結(jié)果上執(zhí)行一個(gè)模2操作;把緩沖器配置成可接收模2操作的結(jié)果,并可把結(jié)果存儲(chǔ)在一個(gè)顯示與計(jì)數(shù)器值的一個(gè)預(yù)確定映射關(guān)系的比特位置中;以及把該裝置配置成當(dāng)計(jì)數(shù)器已完成對(duì)整個(gè)具有至少等于代碼字比特寬度的值的數(shù)量的一個(gè)序列的計(jì)數(shù)操作時(shí),可提供來(lái)自緩沖器的輸出代碼字。
7.根據(jù)權(quán)利要求6的裝置,其中,計(jì)數(shù)器是一個(gè)5比特計(jì)數(shù)器,且緩沖器是一個(gè)32比特緩沖器,將緩沖器中比特位置和計(jì)數(shù)器值之間的預(yù)確定映射進(jìn)行配置,以提供一個(gè)用于一個(gè)UMTS網(wǎng)絡(luò)的針對(duì)一個(gè)TFCI的李特-繆勒編碼。
8.根據(jù)權(quán)利要求7的裝置,其中,TFCI用于384kbps容量級(jí)的傳輸。
全文摘要
一種塊編碼方法,特別是一種用于在一個(gè)3GUMTS網(wǎng)絡(luò)中對(duì)TFCI信息進(jìn)行編碼的塊編碼方法,可以通過(guò)下列方法得以簡(jiǎn)化提供一個(gè)對(duì)整個(gè)二進(jìn)制序列進(jìn)行計(jì)數(shù)的計(jì)數(shù)器,其中的二進(jìn)制序列具有一個(gè)小于未編碼字總比特寬度的比特寬度,在整個(gè)被編碼字中總比特?cái)?shù)范圍內(nèi)循環(huán)該計(jì)數(shù)器,將計(jì)數(shù)器值與未編碼字的比特的一個(gè)預(yù)確定子集執(zhí)行AND操作,在邏輯AND操作的結(jié)果上執(zhí)行一個(gè)模2操作,并存儲(chǔ)模2操作的結(jié)果。可以把這一技術(shù)用于產(chǎn)生一個(gè)復(fù)雜度顯著減小的李特-繆勒編碼。
文檔編號(hào)H03M13/00GK1554153SQ02817828
公開(kāi)日2004年12月8日 申請(qǐng)日期2002年9月10日 優(yōu)先權(quán)日2001年9月12日
發(fā)明者羅伯特·拉金, 羅伯特 拉金 申請(qǐng)人:優(yōu)比耐特克斯有限公司