優(yōu)化的維特比解碼器和全球?qū)Ш叫l(wèi)星系統(tǒng)接收器的制造方法
【專利說明】優(yōu)化的維特比解碼器和全球?qū)Ш叫l(wèi)星系統(tǒng)接收器
[0001]分案申請的相關(guān)信息
[0002]本申請是國際申請?zhí)枮镻CT/EP2008/064530,申請日為2008年10月27日,優(yōu)先權(quán)日為2007年10月26日,發(fā)明名稱為“優(yōu)化的維特比解碼器和全球?qū)Ш叫l(wèi)星系統(tǒng)接收器”的PCT申請進入國家階段后申請?zhí)枮?00880119377.1的中國發(fā)明專利申請的分案申請。
技術(shù)領(lǐng)域
[0003]本發(fā)明涉及一種用于全球?qū)Ш叫l(wèi)星系統(tǒng)(GNSS)的接收器,其包括用以解碼經(jīng)卷積編碼的數(shù)據(jù)的接收器。明確地說,但不排他地說,本發(fā)明的實施例涉及一種能夠解碼由對地靜止的衛(wèi)星(如WAAS/EGNOS衛(wèi)星)發(fā)射的增強數(shù)據(jù)的GPL接收器,以及一種用于根據(jù)伽利略標準的經(jīng)卷積編碼的數(shù)據(jù)的伽利略接收器。
【背景技術(shù)】
[0004]在GPS中,現(xiàn)有的基于衛(wèi)星的增強系統(tǒng)(SBAS)的對地靜止的衛(wèi)星由不同國家操作,用于提供額外信息以增強可從便攜式GPS接收器裝置得到的GPS定位質(zhì)量和完整性。
[0005]所述信息提供關(guān)于大氣校正的額外信息,其可應(yīng)用于改進定位的質(zhì)量和關(guān)于衛(wèi)星完整性的信息。
[0006]歸因于較大的軌道半徑和SBAS衛(wèi)星的對地靜止的軌道,已針對數(shù)據(jù)傳送使用較復(fù)雜的卷積編碼,這需要在接收器中具有較復(fù)雜的解碼能力,通常是維特比解碼器,這對系統(tǒng)產(chǎn)生增加的處理負荷。在SBAS實施方案的情況下,維特比解碼通常適用于單個SV且已知通過由通用處理器執(zhí)行的軟件解碼器來實施所述維特比解碼。此解決方案是簡單的,但就速度和功率經(jīng)濟受到關(guān)注來說為次優(yōu)的。
[0007]所提議的伽利略系統(tǒng)信號也將針對群集中的所有SV上的數(shù)據(jù)信道利用此卷積編碼機制,所述數(shù)據(jù)信道利用相同的基本卷積編碼技術(shù),然而有可能使用不同的生成多項式和符號速率。
[0008]這種新的導(dǎo)航信號格式的效應(yīng)將顯著增加處理開銷,因為所述解決方案中所使用的所有伽利略SV將要求同時操作維特比解碼算法,使得維特比解碼器對系統(tǒng)資源的負荷變得非常顯著。盡管理論上有可能以軟件來執(zhí)行所有這些,但處理開銷和額外存儲器要求將對GNSS導(dǎo)航解決方案產(chǎn)生額外成本和功率要求,這直接與小尺寸、低功率和低成本的市場目標沖突。
[0009]用于此問題的一個解決方案是以硬件實施維特比解碼器以從處理器完全卸載處理。盡管這種處理方式減少了對主要處理器的負荷,但僅僅將成本和功率迀移到不同子系統(tǒng)中。
[0010]因此,需要提供一種低功率GNSS接收器,其能夠在不對系統(tǒng)資源產(chǎn)生高負荷的情況下解碼經(jīng)卷積編碼的信號。此外,本發(fā)明旨在提供一種低功率GNSS接收器,其可與此項技術(shù)中已知的接收器相比較快地且使用較少功率來解碼卷積編碼信號。
【發(fā)明內(nèi)容】
[0011 ] 本發(fā)明的目標通過所附權(quán)利要求書的對象而獲得。在本發(fā)明的變型中,此目標通過基于在處理器中實施的特殊指令集的軟件維特比解碼器而獲得,所述指令集使得其能夠在不顯著增加硬件復(fù)雜性的情況下以低得多的CPU負荷處置維特比處理。
[0012]通過謹慎地應(yīng)用SV導(dǎo)航特有的適當(dāng)設(shè)計約束并分析維特比算法,可實現(xiàn)用于有效地將維特比加速邏輯嵌入到GNSS芯片組中的優(yōu)化架構(gòu)。
[0013]此外,通過硬件與軟件之間的緊密整合,這可在不顯著增加系統(tǒng)資源的情況下通過擴展常規(guī)RISC處理器的指令集來執(zhí)行。
【附圖說明】
[0014]圖1表示網(wǎng)格狀態(tài)圖。
[0015]圖2說明圖1的圖中的最低成本路徑。
[0016]圖3表示漢明距離的計算。
[0017]圖4說明成本分布。
[0018]圖5說明累積狀態(tài)成本圖。
[0019]圖6示意性展示維特比算法中的不同數(shù)據(jù)存取方法。
[0020]圖7說明與本發(fā)明實施例相關(guān)的指令架構(gòu)。
[0021]圖8和圖9涉及與本發(fā)明相關(guān)的指令的隱式尋址。
[0022]圖10說明所發(fā)射位的序列。
[0023]圖11和圖12表示圖10的位序列的解碼。
[0024]圖13示意性說明根據(jù)本發(fā)明一方面的以特殊指令集操作處理器。
【具體實施方式】
[0025]維特比編碼和解碼算法是此項技術(shù)中一般已知的且在技術(shù)文獻中有所描述。在下文中,將僅論述GNSS實施方案特有的若干方面。
[0026]在維特比實施方案中必須考慮若干準則:符號大小、符號解譯、生成多項式和長度以及符號速率。對于GNSS應(yīng)用,約束長度K = 7 (存儲器m = 6),其意味著所發(fā)射符號隨當(dāng)前數(shù)據(jù)位和先前六個數(shù)據(jù)位而變,碼速率位為2,其意味著對于每一數(shù)據(jù)位,發(fā)射兩個符號,符號速率大體上在250或500符號/秒左右,且生成多項式可變化。
[0027]維特比為對路徑成本表進行操作的卷積編碼和解碼技術(shù),所述路徑成本表基于先前接收的符號的潛在解譯而計算處于特定狀態(tài)的最大概率。由于多項式的長度為7,所以實施方案需要表示先前六個數(shù)據(jù)位的62個狀態(tài)。
[0028]所使用的卷積碼針對所發(fā)射的每一數(shù)據(jù)位產(chǎn)生兩個位符號,所述數(shù)據(jù)位被表示為兩個狀態(tài)之間的轉(zhuǎn)變,且具有64個狀態(tài)(K = 7),從每一狀態(tài)開始,具有由兩個潛在符號表示的兩個可能的下一狀態(tài),且對于每一狀態(tài),具有可永不被發(fā)射的兩個潛在符號。針對數(shù)據(jù)位發(fā)射的實際符號由生成多項式確定且隨先前6個數(shù)據(jù)位與正被發(fā)射的位而變。
[0029]因此,對于每一數(shù)據(jù)狀態(tài),符號由多項式確定,且狀態(tài)可如下預(yù)測:如果位為“1”,則下一狀態(tài)為32+(current_state/2),否則其僅為current_state/2,因此不需要狀態(tài)轉(zhuǎn)變表。
[0030]在發(fā)射每一符號時,所述表示因此由七個數(shù)據(jù)位確定,且當(dāng)接收到所述符號時,由解碼器基于多項式和先前六個數(shù)據(jù)位來對其進行解譯。在接收每一符號時,其被解譯并被賦予概率值,所述概率值是基于其與潛在有效的符號的相似性且用以計算特定符號序列解譯為正確的概率。
[0031]為了實現(xiàn)此,維特比解碼器保持記錄針對所有可能狀態(tài)找到的最低成本路徑,且針對每一可能狀態(tài),其記錄正被接收的先前最可能的符號序列及其累積成本。
[0032]—旦已接收到足夠的符號,便通過挑選最低成本狀態(tài)且回顧歷史以確定最可能被發(fā)射以產(chǎn)生所述狀態(tài)的數(shù)據(jù)位序列來解碼所述數(shù)據(jù)。
[0033]維特比編碼和解碼的原則一般為熟悉卷積編碼機制的人員所理解,且可用的分析表明這些方案所獲得的整體SNR改進均受益于向每一符號賦予一潛在值范圍,而非簡單的二進制決策,且通??捎冕槍γ恳环柕母哌_八級解譯來實現(xiàn)顯著增益。
[0034]對于K = 7,在可針對最佳性能、針對保持表示處于特定狀態(tài)的累積成本的至少兩組狀態(tài)信息所需要的此處理,并針對保持記錄產(chǎn)生所述用于獲得最佳解碼性能的狀態(tài)的通常先前34個轉(zhuǎn)變(數(shù)據(jù)位)所需要的每一狀態(tài)而提取第一數(shù)據(jù)位之前,常用的維特比解碼算法需要處理至少35個符號。
[0035]在給定這些約束的情況下,可首先選擇適當(dāng)?shù)淖钚?shù)據(jù)結(jié)構(gòu)來表示維特比解碼狀態(tài)且接著優(yōu)化這些狀態(tài)以用于嵌入式實施方案,假定特定考慮HW/SW交互和處理器子系統(tǒng)架構(gòu)。
[0036]在每一潛在當(dāng)前狀態(tài)中,存在由兩個符號編碼表示的兩個有效狀態(tài)轉(zhuǎn)變(分支),且存在表示無效轉(zhuǎn)變的兩個符號編碼,因此針對每一狀態(tài),僅存在兩個潛在后續(xù)者狀態(tài)和兩個潛在前驅(qū)者狀態(tài)。這些狀態(tài)可由圖1的網(wǎng)格圖表示。
[0037]依據(jù)每一潛在當(dāng)前狀態(tài),有效和無效分支由不同符號指示,因此對于每一狀態(tài),需要知道兩個潛在的下一狀態(tài)(其可以一般方式進行計算)和與所述分支相關(guān)聯(lián)的適當(dāng)符號,所述符號也可使用專用邏輯來計算,但可更易于從表中加載,因此采用與多項式無關(guān)的實施方案。
[0038]由于正在實施軟決策解碼器,所以首先需要針對根據(jù)所接收符號的強度而加權(quán)的所有潛在符號對來確定成本因素,且由于針對所有狀態(tài)的所有有效狀態(tài)轉(zhuǎn)變具有相等的概率,所以此加權(quán)與當(dāng)前狀態(tài)無關(guān)且僅取決于所接收符號對以及所接收符號對與和所述分支相關(guān)聯(lián)的實際符號對之間的漢明距離。這意味著對于每一符號,軟件必須計算與漢明距離相關(guān)聯(lián)的加權(quán)表,且這可接著應(yīng)用于所有狀態(tài)和使用漢明距離與狀態(tài)之間的映射進行的分支成本計算。
[0039]基本的維特比算法因此將針對所接收的每一符號對執(zhí)行以下計算序列,實際的實施方案將使這些過程并行,以通過謹慎設(shè)計相關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu)和實施自定義指令(在適當(dāng)時)來最小化負荷/存儲量和復(fù)雜指令序列。
[0040]對于所接收的符號對,計算與符號對解譯與四個可能的所發(fā)射符號對之間的漢明碼相關(guān)聯(lián)的一組四個成本。漢明成本表實際上是表示與解譯每一可能路線中的實際所接收輸入符號對相關(guān)聯(lián)的成本的四個值(即,00、01、10、11)的表。
[0041]對于每一潛在當(dāng)前狀態(tài)(64個狀態(tài)),針對所接收符號對的兩個潛在解譯中的每一者計算達到下一狀態(tài)中的每一者的成本(分支成本),這是基于狀態(tài)當(dāng)前成本和針對所接收