專(zhuān)利名稱(chēng):基于維特比算法的fm0編碼的解碼方法
技術(shù)領(lǐng)域:
本發(fā)明涉及無(wú)線(xiàn)數(shù)字通信中的信號(hào)解碼,特別是一種基于維特比算法的FMO編碼的解碼方法。
背景技術(shù):
維特比算法是一種基于最大似然估計(jì)法實(shí)現(xiàn)噪聲信道中信號(hào)解碼的方法。自1967年提出以來(lái),獲得了長(zhǎng)足的發(fā)展,現(xiàn)已廣泛地應(yīng)用在了個(gè)人移動(dòng)通信、網(wǎng)絡(luò)調(diào)制解碼器、衛(wèi)星通信和家庭無(wú)線(xiàn)網(wǎng)絡(luò)等現(xiàn)代通信系統(tǒng)中。盡管對(duì)于不同的編碼種類(lèi),維特比算法的實(shí)現(xiàn)方法各有差異,但是,維特比算法在不同編碼種類(lèi)中實(shí)現(xiàn)時(shí)的核心思想是一致的。使用維特比算法的解碼器根據(jù)先驗(yàn)的編碼規(guī)則得到各個(gè)狀態(tài)下前向(時(shí)間上從前至后)路徑的累積度量,判斷狀態(tài)的跳轉(zhuǎn)關(guān)系,再根據(jù)累積度量的大小,以及編碼中確定的冗余信息,進(jìn)行反向(時(shí)間上從后往前)回溯,從而譯出編碼信息。簡(jiǎn)言之,維特比算法的核心是利用確定的編碼規(guī)則,進(jìn)行前向累加比較選擇和反向回溯。這種前后向互相配合的解碼方式,可以在特定的信噪比條件下,提供較好的誤碼率特性。FMO編碼是數(shù)字通信領(lǐng)域中,一種較為常見(jiàn)的信號(hào)編碼方式。因其編碼規(guī)則簡(jiǎn)單、對(duì)稱(chēng),編解碼電路的硬件開(kāi)銷(xiāo)較小,因而被廣泛應(yīng)用在了各類(lèi)低功耗號(hào)的無(wú)線(xiàn)通信系統(tǒng)中,例如射頻識(shí)別(Radio Frequency Identification,簡(jiǎn)稱(chēng) RFID)和近場(chǎng)通信(Near FieldCommunication,簡(jiǎn)稱(chēng)NFC)等。近年來(lái),隨著這些無(wú)線(xiàn)通信系統(tǒng)逐漸應(yīng)用到倉(cāng)儲(chǔ)、運(yùn)輸、零售、門(mén)禁和小額電子支付等領(lǐng)域,F(xiàn)MO編碼已經(jīng)遍及了現(xiàn)代生活的各個(gè)角落。參考圖I 是 FMO 編碼的編碼規(guī)則。其中,S1 (101)、S2 (102), S3 (103), S4 (104)是FMO編碼中的4種碼元符號(hào)(或稱(chēng)為4種狀態(tài))。每一個(gè)符號(hào)的周期時(shí)間為T(mén),幅度為±1。對(duì)于一個(gè)周期為T(mén)的輸入編碼信號(hào),邏輯“O”所對(duì)應(yīng)的狀態(tài)為S2 (102)和S3 (103),邏輯“I”所對(duì)應(yīng)的狀態(tài)為SI (101)和S4 (104)。這4種狀態(tài)間的跳轉(zhuǎn)規(guī)則(105)如下I)當(dāng)前的狀態(tài)為SI (101)時(shí),若下一個(gè)編碼信號(hào)為邏輯“0”,則下一個(gè)狀態(tài)跳轉(zhuǎn)到S3 (103);若下一個(gè)編碼信號(hào)為邏輯“1”,則下一個(gè)狀態(tài)跳轉(zhuǎn)到S4 (104)。2)當(dāng)前的狀態(tài)為S2 (102)時(shí),若下一個(gè)編碼信號(hào)為邏輯“0”,則下一個(gè)狀態(tài)保持
52(102)不變;若下一個(gè)編碼信號(hào)為邏輯“1”,則下一個(gè)狀態(tài)跳轉(zhuǎn)到SI (101)。3)當(dāng)前的狀態(tài)為S3 (103)時(shí),若下一個(gè)編碼信號(hào)為邏輯“0”,則下一個(gè)狀態(tài)保持
53(103)不變;若下一個(gè)編碼信號(hào)為邏輯“1”,則下一個(gè)狀態(tài)跳轉(zhuǎn)到S4 (104)。4)當(dāng)前的狀態(tài)為S4 (104)時(shí),若下一個(gè)編碼信號(hào)為邏輯“0”,則下一個(gè)狀態(tài)跳轉(zhuǎn)到S2 (102);若下一個(gè)編碼信號(hào)為邏輯“1”,則下一個(gè)狀態(tài)跳轉(zhuǎn)到SI (101)。目前,F(xiàn)MO編碼的解碼電路通常使用碼元相關(guān)算法來(lái)實(shí)現(xiàn)。這一算法通過(guò)比較輸入信號(hào)同各個(gè)碼元符號(hào)之間的相似度,判斷輸入信號(hào)對(duì)應(yīng)的編碼值。采用碼元相關(guān)算法的解碼電路硬件開(kāi)銷(xiāo)較小,適合于低成本的便攜式無(wú)線(xiàn)通信設(shè)備。然而,由于相關(guān)算法在解碼的過(guò)程中,難以完整地利用FMO編碼在4種狀態(tài)間跳轉(zhuǎn)時(shí)兩兩對(duì)稱(chēng)的編碼規(guī)則,解碼效率存
3在提聞的空間。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題是為使用FMO編碼的無(wú)線(xiàn)通信系統(tǒng)提供一種基于維特比算法的FMO編碼的解碼方法,該解碼方法是一種硬件可實(shí)現(xiàn)且性能較優(yōu)的解碼算法。能在解碼電路輸入信號(hào)受到噪聲干擾的條件下,降低解碼的誤碼率,獲得較好的通信成功率。實(shí)現(xiàn)這一目的的核心方法是根據(jù)FMO編碼已知的特殊狀態(tài)跳轉(zhuǎn)規(guī)則,應(yīng)用維特比算法前向累加比較選擇和反向回溯的核心思想,譯出輸入的編碼信號(hào)。本發(fā)明具體的技術(shù)解決方案如下一種基于維特比算法的FMO編碼的解碼方法,其特點(diǎn)在于,該解碼方法包括下列步驟①對(duì)解碼電路的輸入信號(hào)形成分支度量解碼電路對(duì)源碼進(jìn)行采樣獲得相應(yīng)的輸入信號(hào)的按比特順序依次與FMO編碼的四種狀態(tài)的碼兀符號(hào)SI (1,1)、S2 (I, — 1)、S3 ( 一1,1)、S4 (- 1,一 I)進(jìn)行逐次相乘后相加構(gòu)成輸入信號(hào)依信號(hào)比特順序的分支度量表;②計(jì)算累積度量根據(jù)FMO編碼特定的狀態(tài)跳轉(zhuǎn)規(guī)則,將解碼電路連續(xù)的輸入信號(hào)當(dāng)前比特所對(duì)應(yīng)的某一狀態(tài)(SI、S2、S3、S4)的可能的前態(tài)的分支度量進(jìn)行比較,選擇具有較大分支度量的前態(tài)的分支度量與該狀態(tài)當(dāng)前比特下的分支度量進(jìn)行相加得到所述的當(dāng)前比特該狀態(tài)的累積度量,形成累積度量表;③記錄狀態(tài)跳轉(zhuǎn)關(guān)系根據(jù)累積度量,比較前一比特下符合FMO編碼狀態(tài)跳轉(zhuǎn)規(guī)則的兩種累積度量的結(jié)果,選擇其中較大的一個(gè)累積度量,作為當(dāng)前比特當(dāng)前狀態(tài)的跳轉(zhuǎn)前態(tài);當(dāng)兩種累積度量結(jié)果相等時(shí),任選一個(gè)作當(dāng)前比特當(dāng)前狀態(tài)的跳轉(zhuǎn)前態(tài),形成狀態(tài)跳轉(zhuǎn)關(guān)系記錄表;④回溯解碼根據(jù)設(shè)定的回溯深度D,在完成解碼電路連續(xù)的輸入信號(hào)的第X比特的形成分支度量、計(jì)算累積度量、記錄狀態(tài)跳轉(zhuǎn)關(guān)系后,從第X比特的最大似然解碼狀態(tài),根據(jù)連續(xù)D比特的狀態(tài)跳轉(zhuǎn)關(guān)系,選擇第Χ-D+l比特中記錄的跳轉(zhuǎn)前態(tài)所對(duì)應(yīng)的編碼值,作為第X-D比特的解碼值。所述的輸入信號(hào)是FMO編碼的數(shù)字信號(hào),或在FMO編碼信號(hào)基礎(chǔ)上增加冗余前導(dǎo)比特的數(shù)字信號(hào),或在FMO編碼信號(hào)基礎(chǔ)上增加冗余收尾比特的數(shù)字信號(hào),或在FMO編碼信號(hào)基礎(chǔ)上同時(shí)增加冗余前導(dǎo)比特和冗余收尾比特的數(shù)字信號(hào),或?qū)MO編碼信號(hào)作為整體信號(hào)的一部分,而其余部分不使用FMO編碼的數(shù)字信號(hào)。所述的輸入信號(hào)采樣,對(duì)于一個(gè)比特的輸入信號(hào),其采樣次數(shù)為2次或2~欠,其中N為大于I的正整數(shù)。所述的前一比特下符合FMO編碼狀態(tài)跳轉(zhuǎn)規(guī)則的兩種狀態(tài)的累積度量,當(dāng)所計(jì)算的輸入比特為連續(xù)輸入碼流的首比特時(shí),在不存在前導(dǎo)冗余比特的情況下,首比特4個(gè)狀態(tài)前一比特的累積度量全為“0”,或4個(gè)其它相等的數(shù)值。所述的第X比特的最大似然解碼狀態(tài),是第X比特4個(gè)累積度量中數(shù)值最大的一個(gè)所對(duì)應(yīng)的狀態(tài),或第X比特4個(gè)累積度量中數(shù)值最大的幾個(gè)狀態(tài)中任意一個(gè)所對(duì)應(yīng)的狀態(tài)。
所述的回溯深度D為大于或等于I的正整數(shù)。當(dāng)所述的回溯深度D和第X比特之和大于全部源碼長(zhǎng)度時(shí),通過(guò)減少回溯深度的方式進(jìn)行解碼,或通過(guò)硬判決的方式進(jìn)行解碼,或通過(guò)增加全O冗余輸入信號(hào)的方式進(jìn)行解碼。
圖I是FMO編碼的波形映射和狀態(tài)跳轉(zhuǎn)示意圖;圖2是無(wú)前導(dǎo)和收尾冗余信息時(shí),6比特連續(xù)信號(hào)的源碼、及其對(duì)應(yīng)的FMO編碼波形、解碼電路輸入和FMO編碼4個(gè)狀態(tài)下的分支度量示意圖;圖3是無(wú)前導(dǎo)和收尾冗余信息時(shí),6比特連續(xù)信號(hào)的源碼、及其對(duì)應(yīng)的FMO編碼波形、解碼電路輸入、FMO編碼4個(gè)狀態(tài)下的分支度量、累積度量示意圖;圖4是無(wú)前導(dǎo)和收尾冗余信息時(shí),6比特連續(xù)信號(hào)的源碼、及其對(duì)應(yīng)的FMO編碼波形、解碼電路輸入、FMO編碼4個(gè)狀態(tài)下的累積度量、狀態(tài)跳轉(zhuǎn)關(guān)系示意圖;圖5是無(wú)前導(dǎo)和收尾冗余信息時(shí),6比特連續(xù)信號(hào)的源碼、及其對(duì)應(yīng)的FMO編碼波形、解碼電路輸入、FMO編碼4個(gè)狀態(tài)下的累積度量、狀態(tài)跳轉(zhuǎn)關(guān)系、解碼結(jié)果示意圖;圖6是以存在噪聲條件下的信號(hào)輸入為例,本發(fā)明具體實(shí)施方式
的介紹示意圖。
具體實(shí)施例方式下面結(jié)合實(shí)施例和附圖對(duì)本發(fā)明作進(jìn)一步說(shuō)明,但不應(yīng)以此限制本發(fā)明的保護(hù)范圍。一種基于維特比算法的FMO編碼的解碼方法,特點(diǎn)在于該解碼方法包括以下四個(gè)步驟I)形成分支度量所述分支度量指的是解碼電路連續(xù)的輸入信號(hào)同碼元符號(hào)之間的相似程度。所述相似程度以解碼電路的輸入信號(hào)同碼元符號(hào)本身進(jìn)行乘加所得的數(shù)值大小予以表征。所述輸入信號(hào)來(lái)自于對(duì)源碼所對(duì)應(yīng)的編碼波形的采樣。所述的乘加操作是,將同一比特內(nèi)的解碼電路的輸入信號(hào),逐位與碼元符號(hào)對(duì)應(yīng)的邏輯值相乘,再對(duì)乘積進(jìn)行求和。由于FMO編碼總共有4種狀態(tài),任意一比特源碼信號(hào)都會(huì)產(chǎn)生4個(gè)分支度量,分別對(duì)應(yīng)到這4種狀態(tài)中??蛇x的,一比特源碼所對(duì)應(yīng)的編碼波形被采樣的次數(shù)可以為2次,也可以為2N次,其中N>1的正整數(shù)??蛇x的,各次采樣的結(jié)果在進(jìn)行乘加操作時(shí),其權(quán)重可以相同,也可以不同。如圖2所示,對(duì)于連續(xù)6比特的源碼(201),它可以有圖中給出的FMO編碼波形(202)。該編碼波形(202)經(jīng)采樣次數(shù)為2的量化后,可以得到連續(xù)12個(gè)解碼電路的輸入信號(hào)(203)。解碼電路通過(guò)將這連續(xù)的12個(gè)輸入信號(hào)同4種碼元符號(hào)進(jìn)行乘加操作,得到SI、S2、S3、S4這4個(gè)狀態(tài)下各自的分支度量(204、205、206、207)。以第I比特在SI狀態(tài)的分支度量計(jì)算為例,其輸入信號(hào)為-1,1(2031),而SI狀態(tài)對(duì)應(yīng)的碼元符號(hào)為1,I。乘加操作的結(jié)果為(_1X1) + (1X1)=0,因此,SI狀態(tài)第I比特的分支度量為0(2041)。同理,第2比特的輸入信號(hào)為-I,-I (2032),其與SI碼元符號(hào)進(jìn)行乘加操作的結(jié)果為(-1 Xl) + (_1 X I) =-2,因此,SI狀態(tài)第2比特的分支度量為-2 (2042)。依此類(lèi)推,可以得到4種狀態(tài)下,總計(jì)4路 24 個(gè)分支度量(204、205、206、207)。2)計(jì)算累積度量;所述累積度量指的是根據(jù)FMO編碼特定的狀態(tài)跳轉(zhuǎn)規(guī)則,將解碼電路連續(xù)的輸入信號(hào)所對(duì)應(yīng)的分支度量有選擇地相加所得的累加值。由于FMO編碼總共有4種狀態(tài),累積度量亦有4路。所述有選擇地相加是,對(duì)某一特定狀態(tài)可能的前態(tài)的累積度量進(jìn)行比較,選擇其中較大的一個(gè)與該狀態(tài)當(dāng)前比特下的分支度量進(jìn)行相加。FMO編碼的特殊編碼規(guī)則決定任意一個(gè)狀態(tài)的前態(tài),只可能是全部4種狀態(tài)中的兩種。適用于FMO編碼的累積度量計(jì)算,僅需對(duì)這兩個(gè)狀態(tài)在前一比特下的累積度量進(jìn)行比較。可選的,當(dāng)前比特某一狀態(tài)所對(duì)應(yīng)的兩個(gè)可能的前態(tài)的累積度量相等,則可以選擇任意一個(gè)作為被加數(shù),與當(dāng)前比特的分支度量相加,而不影響當(dāng)前比特下的累積度量值??蛇x的,解碼電路連續(xù)輸入信號(hào)的第I比特,其前態(tài)的累積度量可以根據(jù)編碼中是否插入確定的冗余前導(dǎo)信息決定。如圖3所示,對(duì)于沒(méi)有確定冗余前導(dǎo)信息的連續(xù)6比特輸入信號(hào),SI、S2、S3、S4這4個(gè)狀態(tài)在第I比特時(shí)的分支度量(2041、2051、2061、2071)即為這4個(gè)狀態(tài)在第I比特時(shí)的累積度量(3011、3021、3031、3041)。自第2比特起,各狀態(tài)的累積度量開(kāi)始具有特定的前比特累積度量值。以下以第2比特在SI狀態(tài)的累積度量(3012)計(jì)算為例,說(shuō)明累積度量的計(jì)算方法。根據(jù)FMO編碼規(guī)則,SI狀態(tài)可能的前態(tài)只有S2和S4兩種。解碼電路比較S2和S4兩種狀態(tài)在第I比特時(shí)的累積度量-2 (3021)和O (3041)。由于O (3041)>_2(3021),所以,第2比特在SI狀態(tài)的累積度量(3012)等于第I比特在S4狀態(tài)的累積度量O(3041)同第2比特在SI狀態(tài)的分支度量-2 (2042)相加的結(jié)果-2。依此類(lèi)推,可以得到4種狀態(tài)下的所有累積度量值(301、302、303、304)。3)記錄狀態(tài)跳轉(zhuǎn)關(guān)系;所述狀態(tài)跳轉(zhuǎn)關(guān)系指的是,某一個(gè)比特的4個(gè)編碼狀態(tài),各自是由前一個(gè)比特時(shí)的哪一個(gè)狀態(tài)跳轉(zhuǎn)而來(lái)。狀態(tài)跳轉(zhuǎn)關(guān)系由累積度量計(jì)算時(shí)的比較結(jié)果決定。解碼電路在計(jì)算當(dāng)前比特某一編碼狀態(tài)的累積度量時(shí),都需要比較其前一個(gè)比特可能的兩個(gè)狀態(tài)的累積度量,根據(jù)最大似然法則,解碼電路選擇前一比特這兩個(gè)可能的狀態(tài)中累積度量較大的一個(gè)作為該狀態(tài)當(dāng)前比特的跳轉(zhuǎn)前態(tài),并將其記錄下來(lái)??蛇x的,所述當(dāng)前比特某一狀態(tài)所對(duì)應(yīng)的兩個(gè)可能的前態(tài)的累積度量相等,則可以選擇這兩個(gè)狀態(tài)中的任意一個(gè)作為當(dāng)前比特該狀態(tài)的跳轉(zhuǎn)前態(tài),并將其記錄下來(lái)。可選的,解碼電路連續(xù)輸入信號(hào)的第I比特,其前態(tài)的跳轉(zhuǎn)關(guān)系可以根據(jù)編碼中是否插入確定的冗余前導(dǎo)信息決定。如圖4所示,對(duì)于沒(méi)有確定冗余前導(dǎo)信息的連續(xù)6比特輸入信號(hào),除第I比特外,其后的每一比特都對(duì)應(yīng)了 4個(gè)狀態(tài)跳轉(zhuǎn)關(guān)系的記錄值(401、402、403、404)。自第2比特起,各狀態(tài)開(kāi)始記錄跳轉(zhuǎn)的前態(tài)。以下第2比特SI狀態(tài)的狀態(tài)跳轉(zhuǎn)關(guān)系(4021)為例,說(shuō)明狀態(tài)跳轉(zhuǎn)關(guān)系的記錄方法。根據(jù)FMO編碼規(guī)則,SI狀態(tài)可能的前態(tài)只有S2和S4兩種。解碼電路比較S2和S4兩種狀態(tài)在第I比特時(shí)的累積度量-2 (3021)和O (3041)。由于O (3041)>-2 (3021),所以,記錄S4為第2比特SI狀態(tài)的跳轉(zhuǎn)前態(tài)(4012)。依此類(lèi)推,可以得到4種狀態(tài)下的所有狀態(tài)跳轉(zhuǎn)關(guān)系(401、402、403、404 )。
4)回溯解碼所述回溯解碼指的是,解碼電路根據(jù)回溯深度D,在完成第X比特的累積度量計(jì)算和狀態(tài)跳轉(zhuǎn)關(guān)系記錄后,從第X比特最大似然解碼狀態(tài)起,按照狀態(tài)跳轉(zhuǎn)關(guān)系的記錄,譯出第(X-D)比特的源碼值。所述回溯深度D指的是解碼電路向前回溯解碼的比特?cái)?shù)??蛇x的,解碼電路連續(xù)輸入信號(hào)之后,可以插入確定的冗余收尾信息,也可以不插入冗余收尾信息。對(duì)于能夠使用已插入的確定冗余收尾信息進(jìn)行回溯解碼的源碼,所述當(dāng)前比特的最大似然解碼狀態(tài),指的是冗余收尾信息所對(duì)應(yīng)的狀態(tài)。對(duì)于無(wú)法使用已插入的確定冗余收尾信息進(jìn)行回溯解碼,或沒(méi)有插入確定冗余收尾信息的源碼,所述當(dāng)前比特的最大似然解碼狀態(tài),指的是當(dāng)前比特的累積度量中數(shù)值最大的狀態(tài)。可選的,對(duì)于無(wú)法使用已插入的確定冗余收尾信息進(jìn)行回溯解碼,或沒(méi)有插入確定冗余收尾信息的源碼,當(dāng)前比特的累積度量中具有多個(gè)相等的最大值,可選擇其中的任意一個(gè)作為當(dāng)前比特的最大似然解碼狀態(tài)??蛇x的,對(duì)于沒(méi)有確定冗余收尾信息的末尾比特Y,可直接以其最大似然解碼狀態(tài)為解碼結(jié)果,也可以通過(guò)將累積度量和狀態(tài)跳轉(zhuǎn)關(guān)系的深度增加D比特,在計(jì)算最后D比特的累積度量時(shí),使用O作為所有狀態(tài)的分支度量,再在第(Y+D)比特時(shí),譯出第Y比特的解碼值??蛇x的,對(duì)于沒(méi)有確定冗余收尾信息的末尾比特前Z比特(其中Z為整數(shù)且小于D),可以通過(guò)縮短回溯深度,使用末尾比特Y的最大似然解碼狀態(tài)回溯出第(Y-Z)比特的解碼結(jié)果,也可以通過(guò)將累積度量和狀態(tài)跳轉(zhuǎn)關(guān)系的深度增加D比特,在計(jì)算最后D比特的累積度量時(shí),使用O作為所有狀態(tài)的分支度量,再在第(Z+D)比特時(shí),譯出第Z比特的解碼值。如圖5所示,對(duì)于沒(méi)有確定冗余收尾信息的6比特連續(xù)輸入信號(hào),以下以回溯深度D=2為例,說(shuō)明回溯解碼的方法。由于回溯深度為D=2,則在第3比特時(shí),可以譯出第I比特的源碼。由于第3比特并非確定的冗余收尾比特,它的最大似然解碼狀態(tài)為第3比特累積度量值最大的狀態(tài)S2 (3023),根據(jù)狀態(tài)跳轉(zhuǎn)關(guān)系記錄表(401、402、403、404),第3比特S2狀態(tài)對(duì)應(yīng)的前態(tài)為S4(4022),向前回溯I比特,第2比特的S4狀態(tài)對(duì)應(yīng)的前態(tài)為S3(4042),再向前回溯I比特,S3對(duì)應(yīng)的編碼信息為O。由此可得,第I比特的解碼結(jié)果為O (5011)。依此類(lèi)推,可以在第4、第5、第6比特時(shí)得到第2、第3、第4比特的解碼結(jié)果(5012、5013、5014)。由于沒(méi)有冗余收尾信息,在第6比特時(shí),除了譯出第4比特外,還將以I比特回溯和直接最大似然狀態(tài)判決的方式得到第5比特和第6比特的解碼結(jié)果(5015、5016)。如圖5所示,第6比特的4個(gè)累積度量的最大值出現(xiàn)在S3狀態(tài)上(3036),而第6比特S3狀態(tài)所記錄的跳轉(zhuǎn)前態(tài)為SI,由于SI對(duì)應(yīng)的編碼信息為1,S3狀態(tài)對(duì)應(yīng)的編碼信息為0,第5比特的解碼結(jié)果為I (5015),第6比特的解碼結(jié)果為O (5016)。參考圖6,以下以一個(gè)存在噪聲干擾條件下,具有I比特確定冗余前導(dǎo)信息、I比特確定冗余收尾信息,回溯深度為3,總計(jì)長(zhǎng)度為6比特的連續(xù)輸入信號(hào)碼流為例,介紹本發(fā)明的具體實(shí)施方式
。如圖6所示,該實(shí)例中,F(xiàn)MO編碼的6比特源碼為010110 (601)。在對(duì)這一串源碼進(jìn)行編碼時(shí),增加了 I比特的冗余前導(dǎo)狀態(tài)S4 (602)和I比特的冗余收尾狀態(tài)S3 (603),從而形成了完整的編碼波形(604)。由于受到了噪聲的干擾,采樣得到的解碼電路輸入碼流(605)中存在錯(cuò)誤。其中,I個(gè)采樣位成為了模糊信號(hào)(-1,O) (606),I個(gè)采樣位成為了錯(cuò)誤信號(hào)(_1,-1) (607)。根據(jù)這一串被噪聲干擾后的解碼電路輸入信號(hào)與S1、S2、S3、S4這四個(gè)狀態(tài)的相關(guān)性,可以得到解碼電路輸入信號(hào)各比特的分支度量(608 )。在這一組分支度量中,由于冗余前導(dǎo)比特(602)和冗余收尾比特(603)都是確定狀態(tài),它們的分支度量記作一個(gè)遠(yuǎn)大于其余分支度量的數(shù)值10 (609、610)。通過(guò)前向的累加、比較、選擇操作,可以根據(jù)FMO編碼的編碼規(guī)則得到對(duì)應(yīng)于上述分支度量(608)的累積度量(611),以及狀態(tài)跳轉(zhuǎn)關(guān)系記錄表(612)。由于圖6所示實(shí)例中使用的回溯深度為3,解碼電路在其接收到第4比特的時(shí)候獲得第I比特的解碼值。比較第4比特的累積度量值可知,其最大似然解碼狀態(tài)為S4,它記錄的跳轉(zhuǎn)前態(tài)為S3 (615);而第3比特的S3狀態(tài)記錄的跳轉(zhuǎn)前態(tài)為SI (614);第2比特的SI狀態(tài)記錄的跳轉(zhuǎn)前態(tài)為S2 (613),因?yàn)镾2對(duì)應(yīng)的編碼值為0,所以可知第I比特的解碼結(jié)果為O (619)。同理,第2比特的解碼結(jié)果在獲得第5比特的最大似然解碼狀態(tài)SI時(shí)譯出第5比特的SI狀態(tài)記錄的跳轉(zhuǎn)前態(tài)為S4 (616),第4比特的S4狀態(tài)記錄的跳轉(zhuǎn)前態(tài)為S3 (615),第3比特的S3狀態(tài)記錄的跳轉(zhuǎn)前態(tài)為SI (614),因?yàn)镾I對(duì)應(yīng)的編碼值為1,所以可知第2比特的解碼結(jié)果為1(620)。同理,第3比特的解碼結(jié)果在獲得第6比特的最大似然解碼狀態(tài)S3時(shí)譯出第6比特的S3狀態(tài)記錄的跳轉(zhuǎn)前態(tài)為SI (617),第5比特的SI狀態(tài)記錄的跳轉(zhuǎn)前態(tài)為S4 (616),第4比特的S4狀態(tài)記錄的跳轉(zhuǎn)前態(tài)為S3 (615),因?yàn)镾3對(duì)應(yīng)的編碼值為0,所以可知第3比特的解碼結(jié)果為O (621)。同理,第4比特的解碼結(jié)果在獲得冗余收尾比特的最大似然解碼狀態(tài)S3時(shí)譯出冗余收尾比特的S3狀態(tài)記錄的跳轉(zhuǎn)前態(tài)為S3 (618),第6比特的S3狀態(tài)記錄的跳轉(zhuǎn)前態(tài)為SI (617),第5比特的SI狀態(tài)記錄的跳轉(zhuǎn)前態(tài)為S4 (616),因?yàn)镾4對(duì)應(yīng)的編碼值為1,所以可知第4比特的解碼結(jié)果為I (622)。第5比特的解碼結(jié)果在獲得冗余收尾比特的最大似然解碼狀態(tài)S3時(shí),通過(guò)減小I比特的回溯深度譯出冗余收尾比特的S3狀態(tài)記錄的跳轉(zhuǎn)前態(tài)為S3 (618),第6比特的
S3狀態(tài)記錄的跳轉(zhuǎn)前態(tài)為SI (617),因?yàn)镾I對(duì)應(yīng)的編碼值為1,所以可知第5比特的解碼結(jié)果為I (623)。第6比特的解碼結(jié)果在獲得冗余收尾比特的最大似然解碼狀態(tài)S3時(shí),通過(guò)減小2比特的回溯深度譯出冗余收尾比特的S3狀態(tài)記錄的跳轉(zhuǎn)前態(tài)為S3 (618),因?yàn)镾I對(duì)應(yīng)的編碼值為0,所以可知第6比特的解碼結(jié)果為O (624)。由此可得,完整的6比特的解碼結(jié)果為010110 (619 624),與源碼(601)—致。雖然本發(fā)明已通過(guò)較佳實(shí)施例說(shuō)明如上,但這一較佳實(shí)施例并非用以限定本發(fā)明。本領(lǐng)域的技術(shù)人員,在不脫離本發(fā)明的精神和范圍內(nèi),應(yīng)有能力對(duì)該較佳實(shí)施例做出各種改正和補(bǔ)充,因此,本發(fā)明的保護(hù)范圍以權(quán)利要求書(shū)的范圍為準(zhǔn)。
權(quán)利要求
1.一種基于維特比算法的FMO編碼的解碼方法,其特征在于,該解碼方法包括下列步驟 ①對(duì)解碼電路的輸入信號(hào)形成分支度量解碼電路對(duì)源碼進(jìn)行采樣獲得相應(yīng)的輸入信號(hào)的按比特順序依次與FMO編碼的四種狀態(tài)的碼兀符號(hào)SI (1,1)、S2 (I, — 1)、S3 (— I,1)、S4 (- 1,一 I)進(jìn)行逐次相乘后相加構(gòu)成輸入信號(hào)依信號(hào)比特順序的分支度量表; ②計(jì)算累積度量根據(jù)FMO編碼特定的狀態(tài)跳轉(zhuǎn)規(guī)則,將解碼電路連續(xù)的輸入信號(hào)當(dāng)前比特所對(duì)應(yīng)的某一狀態(tài)(SI、S2、S3、S4)的可能的前態(tài)的分支度量進(jìn)行比較,選擇具有較大分支度量的前態(tài)的分支度量與該狀態(tài)當(dāng)前比特下的分支度量進(jìn)行相加得到所述的當(dāng)前比特該狀態(tài)的累積度量,形成累積度量表; ③記錄狀態(tài)跳轉(zhuǎn)關(guān)系根據(jù)累積度量,比較前一比特下符合FMO編碼狀態(tài)跳轉(zhuǎn)規(guī)則的兩種累積度量的結(jié)果,選擇其中較大的一個(gè)累積度量,作為當(dāng)前比特當(dāng)前狀態(tài)的跳轉(zhuǎn)前態(tài);當(dāng)兩種累積度量結(jié)果相等時(shí),任選一個(gè)作當(dāng)前比特當(dāng)前狀態(tài)的跳轉(zhuǎn)前態(tài),形成狀態(tài)跳轉(zhuǎn)關(guān)系記錄表; ④回溯解碼根據(jù)設(shè)定的回溯深度D,在完成解碼電路連續(xù)的輸入信號(hào)的第X比特的形成分支度量、計(jì)算累積度量、記錄狀態(tài)跳轉(zhuǎn)關(guān)系后,從第X比特的最大似然解碼狀態(tài),根據(jù)連續(xù)D比特的狀態(tài)跳轉(zhuǎn)關(guān)系,選擇第Χ-D+l比特中記錄的跳轉(zhuǎn)前態(tài)所對(duì)應(yīng)的編碼值,作為第X-D比特的解碼值。
2.根據(jù)權(quán)利要求I所述的基于維特比算法的FMO編碼的解碼方法,其特征在于,所述的輸入信號(hào)是FMO編碼的數(shù)字信號(hào),或在FMO編碼信號(hào)基礎(chǔ)上增加冗余前導(dǎo)比特的數(shù)字信號(hào),或在FMO編碼信號(hào)基礎(chǔ)上增加冗余收尾比特的數(shù)字信號(hào),或在FMO編碼信號(hào)基礎(chǔ)上同時(shí)增加冗余前導(dǎo)比特和冗余收尾比特的數(shù)字信號(hào),或?qū)MO編碼信號(hào)作為整體信號(hào)的一部分,而其余部分不使用FMO編碼的數(shù)字信號(hào)。
3.根據(jù)權(quán)利要求I所述的基于維特比算法的FMO編碼的解碼方法,其特征在于,所述的輸入信號(hào)采樣,對(duì)于一個(gè)比特的輸入信號(hào),其采樣次數(shù)為2次或2N次,其中N為大于I的正整數(shù)。
4.根據(jù)權(quán)利要求I所述的基于維特比算法的FMO編碼的解碼方法,其特征在于,所述的前一比特下符合FMO編碼狀態(tài)跳轉(zhuǎn)規(guī)則的兩種狀態(tài)的累積度量,當(dāng)所計(jì)算的輸入比特為連續(xù)輸入碼流的首比特時(shí),在不存在前導(dǎo)冗余比特的情況下,首比特4個(gè)狀態(tài)前一比特的累積度量全為“0”,或4個(gè)其它相等的數(shù)值。
5.根據(jù)權(quán)利要求I所述的基于維特比算法的FMO編碼的解碼方法,其特征在于,所述的第X比特的最大似然解碼狀態(tài),是第X比特4個(gè)累積度量中數(shù)值最大的一個(gè)所對(duì)應(yīng)的狀態(tài),或第X比特4個(gè)累積度量中數(shù)值最大的幾個(gè)狀態(tài)中任意一個(gè)所對(duì)應(yīng)的狀態(tài)。
6.根據(jù)權(quán)利要求I所述的基于維特比算法的FMO編碼的解碼方法,其特征在于,所述的回溯深度D為大于或等于I的正整數(shù)。
7.根據(jù)權(quán)利要求I至6任一項(xiàng)所述的基于維特比算法的FMO編碼的解碼方法,其特征在于,當(dāng)所述的回溯深度D和第X比特之和大于全部源碼長(zhǎng)度時(shí),通過(guò)減少回溯深度的方式進(jìn)行解碼,或通過(guò)硬判決的方式進(jìn)行解碼,或通過(guò)增加全O冗余輸入信號(hào)的方式進(jìn)行解碼。
全文摘要
一種基于維特比算法的FM0編碼的解碼方法,包括對(duì)解碼電路的輸入信號(hào)形成分支度量;計(jì)算累積度量;記錄狀態(tài)跳轉(zhuǎn)關(guān)系;回溯解碼四個(gè)步驟,為使用FM0編碼的無(wú)線(xiàn)通信系統(tǒng)提供一種硬件可實(shí)現(xiàn)且性能較優(yōu)的解碼算法,在存在噪聲的情況下,提供較高的系統(tǒng)通信成功率。
文檔編號(hào)H04L1/00GK102932105SQ20121042799
公開(kāi)日2013年2月13日 申請(qǐng)日期2012年10月31日 優(yōu)先權(quán)日2012年10月31日
發(fā)明者車(chē)文毅 申請(qǐng)人:上海坤銳電子科技有限公司