專利名稱:一種譯碼方法及實現該方法的譯碼器的制作方法
本專利涉及的是在不良信道中傳輸信息的糾錯編碼方法,尤其是涉及并行鏈接卷積碼和串行鏈接卷積碼編碼技術中的譯碼方法及其譯碼器。
C.Berrou,A.G1avieux,P.Thitimajshama于1993年在Proceedings of theIEEE International Conference on Communications(ICC’93)(1064-1074頁)發表首次并行鏈接卷積編碼(Parallel Concatenated Convolutional CodesPCCC)技術(又名Turbo碼)。并行鏈接卷積編碼被譽為“接近仙農極限的糾錯編碼和譯碼”。從那以后,并行鏈接卷積編碼一直是人們研究的熱點。
并行鏈接卷積編碼的譯碼方式是軟輸入/軟輸出的迭代譯碼。譯碼器通過多次的迭代來達到減小差錯率的目的,多次迭代后輸出譯碼結果。C.Berrou,A.Glavieux,P.Thitimajshama在“接近仙農極限的糾錯編碼和譯碼Turbo碼”(ICC’93)一文中所用的最大迭代次數為18次。大迭代次數帶來的是大的譯碼時延,而大的譯碼時延必然不能滿足實時通信的要求。
幾年來科學界提出了多種自適應迭代譯碼算法,即在不太影響最終的差錯率的前提下減小并行鏈接卷積碼的平均譯碼迭代次數的方法。J.Hagenauer,E.Offer和L.Papke在IEEE Trans.Inform Theory(IT-42,429-445頁1996)中發表的論文“二進制塊卷積碼的迭代譯碼”提出通過計算譯碼器軟輸出的互熵的方法來減小并行鏈接卷積編碼的平均譯碼迭代次數。B.Kim和H.S.Lee在Proceedings of the IEEE Region 10 Conference(TENCON’99.494-497頁第1卷)發表的論文“用外信息來減少Turbo碼譯碼器的迭代次數”中提出通過計算譯碼器軟輸出的方差的方法來減小并行鏈接卷積編碼的平均譯碼迭代次數。但這兩種方法在差錯率和平均迭代次數方面都不太好。最有效的方法是,C.W.Yue,K.B.Letaief.R.S.Cheng,R.D.Murch在IEEE Vehicular Technology Conference(VTC’99,2214-2218頁)發表的論文“關于Turbo碼的FER性能和譯碼復雜度”中提出在一幀數據中外加循環冗余碼校驗(CRC)比特來減小并行鏈接卷積碼的平均譯碼迭代次數。該方法能有效地減小并行鏈接卷積碼的平均譯碼迭代次數,但外加的循環冗余碼校驗(CRC)比特又使得資源的利用率下降。
另外串行鏈接卷積編碼(Serial Concatenated Convolutional CodesSCCC)也采用迭代譯碼,也存在上述問題。
本專利的目的是提供一種無需外加比特并且能有效地減小并行鏈接卷積碼和串行鏈接卷積碼的平均譯碼迭代次數的自適應迭代譯碼方案及實現該方案的譯碼器。
本發明所述的譯碼方法由下列步驟構成1.將譯碼迭代計數器I初始化為1;2.對輸入數據進行譯碼;3.當I<Imin或Imin<I<Imax時,I加1并且返回第2步;4.當I=Imin時,判斷與門1輸出為1還是0。如果為1,結束對該幀數據的迭代譯碼;否則I加1并返回第2步;5.當I=Imax時,結束對該幀數據的迭代譯碼;其中,用Imax代表允許的最大譯碼迭代次數,用Imin代表允許的最小譯碼迭代次數。
本發明所述的譯碼器為在現有的譯碼器中加上一個迭代終止檢測器。
本發明對并行鏈接卷積碼和串行鏈接卷積碼的實際運用很有幫助。在保證良好的差錯概率(比特差錯率BER和幀差錯率FER)并且幾乎不增加譯碼復雜度和不使用外加的比特的前提下,本發明可減小并行鏈接卷積碼和串行鏈接卷積碼的平均譯碼迭代次數,從而減小了并行鏈接卷積碼和串行鏈接卷積碼的平均譯碼時延。
本發明適用于遞歸系統卷積碼和非遞歸卷積碼的并行鏈接卷積碼和串行鏈接卷積碼。本發明適用于各種不同的編碼速率、不同的編碼束縛長度、不同的生成多項式、不同交織器和不同的幀長的并行鏈接卷積編碼器和串行鏈接卷積碼。本發明僅使用于帶拖尾比特的并行鏈接卷積碼和串行鏈接卷積碼,且適用于加拖尾比特的各種不同方式。
本發明同樣可以用于編碼器中各遞歸系統卷積編碼器的生成多項式不相同的情況,只是譯碼器中的每個迭代終止檢測器的結構應根據與之對應的遞歸系統卷積編碼器生成多項式各自設計。
下面結合附圖對本發明作詳細說明
圖1為常規并行鏈接卷積編碼器結構示意圖;圖2為常規串行鏈接卷積編碼器結構示意圖;圖3為本發明所述終止檢測器的一實施例的結構示意圖;圖4為本發明所述終止檢測器的另一實施例的結構示意圖;圖5本發明所述并行鏈接卷積碼譯碼器的一實施例的結構示意圖;圖6本發明所述串行鏈接卷積碼譯碼器的一實施例的結構示意圖;圖7為一種自適應迭代并行鏈接卷積碼譯碼器的結構簡圖。
圖1中的編碼器可為遞歸系統卷積碼(Recursive SystematicConvolutional codesRSC)編碼器或非遞歸卷積碼(NonrecursiveSystematic Convolutional codesNSC)編碼器。
當針對使用遞歸系統卷積碼的并行鏈接卷積碼和串行鏈接卷積碼設計出迭代終止檢測器時,先假設編碼器都為遞歸系統卷積碼并使用相同的生成多項式,每個遞歸系統卷積碼編碼器都使用了各自的拖尾比特來終止編碼器。假設它們的生成多項式都為gf(D)/gb(D)。一個迭代終止檢測器由一個硬判決器、一個生成多項式為[1/gb(D),...,DM-1/gb(D)]的遞歸系統卷積編碼器、一個數字邏輯或非門和一個可控開關構成。如果該迭代終止檢測器輸出邏輯為1,則認定譯碼正確;否則認定譯碼不正確。在所述的迭代終止檢測器中連接結構包括數據從硬判決器的輸入端輸入,硬判決器的輸出端接卷積碼編碼器的輸入端,卷積碼編碼器的M個輸出端分別接或非門的各輸入端,一個可控制開關接到或非門的輸出,可控制開關的輸出為該迭代終止檢測器的輸出。其工作流程為在一幀數據輸入前對迭代終止檢測器中所有寄存器清零,將開關打開,然后輸入一幀的數據,當一幀的數據(包括所有的拖尾比特)輸入后,開關閉合,輸出或非門運算的結果。
針對使用非遞歸系統卷積碼的并行鏈接卷積碼和串行鏈接卷積碼設計的迭代終止檢測器的構成和原理如下使用非遞歸系統卷積碼的并行鏈接卷積碼或串行鏈接卷積碼,都使用全0比特作為拖尾。假設并行鏈接卷積碼或串行鏈接卷積碼中所有的非遞歸系統卷積碼的束縛長度K都為M+1(其中寄存器個數為M)。針對這種并行鏈接卷積碼和串行鏈接卷積碼設計的迭代終止檢測器由一個硬判決器、一個生成多項式為[1,...,DM-1]的卷積編碼器、一個數字邏輯或非門和一個可控開關構成,其工作原理是判斷經過譯碼后軟輸出中拖尾比特的硬判結果是否全為二進制0。如果是,該迭代終止檢測器輸出邏輯為1;否則,輸出邏輯為0。在所述的迭代終止檢測器中連接結構包括數據從硬判決器的輸入端輸入,硬判決器的輸出端接卷積碼編碼器的輸入端,卷積碼編碼器的M個輸出端分別接或非門的各輸入端,一個可控制開關接到或非門的輸出,可控制開關的輸出為該迭代終止檢測器的輸出。
圖2中的編碼器可為遞歸系統卷積碼(Recursive SystematicConvolutional codesRSC)編碼器或非遞歸卷積碼(NonrecursiveSystematic Convolutional codesNSC)編碼器。
參照圖3描述本發明中針對Qualcomm公司提出的cdma2000標準中所使用的并行鏈接卷積碼(Turbo碼)設計的終止檢測器結構的實施例,其中反饋生成多項式gb(D)=1+D2+D3。其結構是輸入數據接硬判決器的輸入端,硬判決器的輸出端接二進制加法器1的輸入端口a,二進制加法器2的輸出端接二進制加法器1的輸入端口b,二進制加法器1的輸出端接寄存器1D的輸入端,寄存器1D的輸出端接寄存器2D的輸入端,寄存器2D的輸出端接寄存器3D的輸入端,二進制加法器2的輸入端分別接寄存器2D、3D的輸出端,或非門的三個輸入端分別接寄存器1D、2D和加法器1的輸出端,一個可控制開關接到或非門的輸出,該可控制開關的輸出為該迭代終止檢測器的輸出。
參照圖4描述本發明的另一最佳實施例——針對并行鏈接卷積編碼器中非遞歸系統卷積碼束縛長度為4(其中寄存器個數為3)設計的終止檢測器。其結構是輸入數據接硬判決器的輸入端,硬判決器的輸出端接寄存器1D的輸入端,寄存器1D的輸出端接寄存器2D的輸入端,或非門的三個輸入端分別接寄存器1D、2D和硬判決器的輸出端,一個可控制開關接到或非門的輸出,該可控制開關的輸出為該迭代終止檢測器的輸出。
圖5所示為一種使用迭代終止檢測器的并行鏈接卷積碼譯碼器實施例的示意圖。N個迭代終止檢測器的輸出作為與門1G的輸入。該譯碼器是針對帶有N組拖尾比特(tail bits)的并行鏈接卷積碼編碼器設計的。該譯碼器可使用任意一種譯碼算法,如最大后驗概率MAP、Log-MAP和Max-Log-MAP譯碼器等。
本發明所述的新的自適應迭代譯碼方案包括如下步驟1.將譯碼迭代計數器I初始化為1;2.將從信道接收到的數據進行解復用器(demultiplexer)和解刪除器(depuncturer),將輸出數據中對應第一組卷積碼校驗比特的數據和系統碼數據輸入到譯碼器1T進行譯碼。譯碼器lT的輸出輸入到交織器1I和迭代終止檢測器1M。交織器1I的輸出和解復用解刪除器輸出的第二組系統卷積碼校驗比特的數據輸入到譯碼器2T,按該過程數據經過其余的譯碼器和交織器,最后譯碼器NT的輸出輸入到迭代終止檢測器NM和解交織器1J、2J,解交織器1J的輸出作為下一次迭代譯碼器1M的輸入,所有迭代終止檢測器的輸出輸入到與門1;3.當I<Imin或Imin<I<Imax時,I加1并且返回第2步;4.當I=Imin時,判斷與門1輸出為1還是0。如果為1,結束對該幀數據的迭代譯碼,將解交織器2J的輸出輸入到硬判決器,硬判決器輸出為最終譯碼的輸出;否則I加1并返回第2步;5.當I=Imax,結束對該幀數據的迭代譯碼,將解交織器2J的輸出輸入到硬判決器,硬判決器輸出為最終譯碼的輸出。
上述步驟中,用Imax代表允許的最大譯碼迭代次數,用Imin代表允許的最小譯碼迭代次數。
圖6所示為一種使用迭代終止檢測器的串行鏈接卷積碼譯碼器實施例的示意圖。2個迭代終止檢測器的輸出作為與門1G的輸入。該譯碼器是針對帶有2組拖尾比特(tail bits)的串行鏈接卷積碼編碼器設計的。該譯碼器可使用任意一種譯碼算法,如最大后驗概率MAP、Log-MAP和Max-Log-MAP譯碼器等。
本發明所述的新的自適應迭代譯碼方案包括如下步驟
1.將譯碼迭代計數器I初始化為1;2.將從信道接收到的數據到解復用和解刪除器1X進行解復用(demultiplexe)和解刪除(depuncture),將輸出數據中對應卷積碼校驗比特的數據和系統碼數據輸入到譯碼器1T進行譯碼。譯碼器1T的輸出輸入到解交織器1J和迭代終止檢測器1M。解交織器1J的輸出輸入到解復用解刪除器2X,其輸出輸入到譯碼器2T,譯碼器2T的輸出輸入到迭代終止檢測器2M和交織器1I,交織器1I的輸出作為下一次迭代譯碼器1M的輸入,所有迭代終止檢測器的輸出輸入到與門1;3.當I<Imin或Imin<I<Imax時,I加1并且返回第2步;4.當I=Imin時,判斷與門1輸出為1還是0。如果為1,結束對該幀數據的迭代譯碼,將解交織器2J的輸出輸入到硬判決器,硬判決器輸出為最終譯碼的輸出;否則I加1并返回第2步;5.當I=Imax,結束對該幀數據的迭代譯碼,將解交織器2J的輸出輸入到硬判決器,硬判決器輸出為最終譯碼的輸出。
上述步驟中,用Imax代表允許的最大譯碼迭代次數,用Imin代表允許的最小譯碼迭代次數。
本發明可以與其他自適應迭代譯碼算法相結合(如使用外加循環冗余碼校驗(CRC)比特的自適應迭代譯碼算法),達到減小迭代譯碼次數的目的。
鑒于現有的多數無線通信系統中都使用外加循環冗余碼校驗(CRC)比特,本發明與使用外加循環冗余碼校驗(CRC)比特的自適應迭代譯碼算法相結合可以在使用少量外加循環冗余碼校驗(CRC)比特的條件下達到非常好的譯碼效果(尤其在差錯率和譯碼時延方面)。
圖7為將本發明的方法和外加循環冗余碼(CRC)方法結合使用的自適應迭代并行鏈接卷積碼譯碼器的實施例。N個譯碼器的輸出輸入都到循環冗余碼(CRC)校驗器和迭代終止檢測器,其中如果循環冗余碼(CRC)校驗器校驗成功,輸出邏輯1,否則輸出邏輯0。N個循環冗余碼(CRC)校驗器和N個迭代終止檢測器的輸出都輸入到與門1。如果與門輸出為邏輯1,結束整個迭代譯碼過程。
本發明所述的結束譯碼方法還可以包括如下步驟
1.將譯碼迭代計數器I初始化為1;2.對輸入數據進行譯碼;3.當I<Imin時,I加1并且返回第2步;4.當Imin≤I<Imax時,判斷與門1輸出為1還是0。如果為1,結束對該幀數據的迭代譯碼,將解交織器2J的輸出輸入到硬判決器,硬判決器輸出為最終譯碼的輸出;否則I加1并返回第2步。
5.當I=Imax時,結束對該幀數據的迭代譯碼,將解交織器2J的輸出輸入到硬判決器,硬判決器輸出為最終譯碼的輸出。
上述步驟中,用Imax代表允許的最大譯碼迭代次數,用Imin代表允許的最小譯碼迭代次數。
權利要求
1.一種應用于并行鏈接卷積碼和串行鏈接卷積碼的譯碼器,其特征為在傳統的迭代譯碼器中加上一個迭代終止檢測器。
2.根據權利要求1所述的譯碼器,其特征為所述的迭代終止檢測器包括一個硬判決器、一個卷積碼編碼器、一個或非門和一個可控制開關;所述的迭代終止檢測器中的卷積碼編碼器是針對反饋生成多項式為[gb(D)]的遞歸系統卷積碼設計(其中其寄存器個數為M),其生成多項式為[1/gb(D),...,DM-1/gb(D)];該或非門為M個輸入端口的或非門;該可控制開關只在整幀數據(包括拖尾比特)輸入后閉合,在下一幀數據輸入前打開;在所述的迭代終止檢測器中連接結構包括數據從硬判決器的輸入端輸入,硬判決器的輸出端接卷積碼編碼器的輸入端,卷積碼編碼器的M個輸出端分別接或非門的各輸入端,一個可控制開關接到或非門的輸出,可控制開關的輸出為該迭代終止檢測器的輸出。
3.根據權利要求1所述的譯碼器,其特征為所述的迭代終止檢測器包括一個硬判決器、一個卷積碼編碼器、一個或非門和一個可控制開關;迭代終止檢測器中的卷積碼編碼器是針對非遞歸系統卷積碼(其中其寄存器個數為M)設計,其生成多項式為[1,...,DM-1];該或非門為M個輸入端口的或非門;該可控制開關只在整幀數據(包括拖尾比特)輸入后閉合,在下一幀數據輸入前打開;在所述的迭代終止檢測器中連接結構包括數據從硬判決器的輸入端輸入,硬判決器的輸出端接卷積碼編碼器的輸入端,卷積碼編碼器的M個輸出端分別接或非門的各輸入端,一個可控制開關接到或非門的輸出,可控制開關的輸出為該迭代終止檢測器的輸出。
4.一種自適應迭代譯碼方案,其特征為由下列步驟構成1).將譯碼迭代計數器I初始化為1;2).對輸入數據進行譯碼;3).當I<Imin或Imin<I<Imix時,I加1并且返回第2步;4).當I=Imin時,判斷與門1輸出為1還是0;如果為1,結束對該幀數據的迭代譯碼,將解交織器的輸出輸入到硬判決器,硬判決器輸出為最終譯碼的輸出;否則I加1并返回第2步;5).當I=Imax時,結束對該幀數據的迭代譯碼,將解交織器的輸出輸入到硬判決器,硬判決器輸出為最終譯碼的輸出;其中,用Imax代表允許的最大譯碼迭代次數,用Imin代表允許的最小譯碼迭代次數。
5.根據權利要求4所述的自適應迭代譯碼方案,其特征為還可由下列步驟構成1).將譯碼迭代計數器I初始化為1;2).將從信道接收到的數據進行解復用(demultiplex)和解刪除(depuncture),將輸出數據中對應第一組系統卷積碼校驗比特的數據和系統碼數據輸入到譯碼器1T進行譯碼。譯碼器1T的輸出輸入到交織器1I和迭代終止檢測器1M。交織器1I的輸出和解復用解刪除器輸出的第二組系統卷積碼校驗比特的數據輸入到譯碼器2T,按該過程數據經過其余的譯碼器和交織器,最后譯碼器NT的輸出輸入到迭代終止檢測器NM和解交織器1J、2J,解交織器1J的輸出作為下一次迭代譯碼器1M的輸入,所有迭代終止檢測器的輸出輸入到與門1;3).當I<Imin或Imin<I<Imix時,I加1并且返回第2步;4).當I=Imin時,判斷與門1輸出為1還是0;如果為1,結束對該幀數據的迭代譯碼,并將解交織器2J的輸出輸入到硬判決器,硬判決器輸出為最終譯碼的輸出;否則I加1并返回第2步;5).當I=Imix,結束對該幀數據的迭代譯碼,并將解交織器2J的輸出輸入到硬判決器,硬判決器輸出為最終譯碼的輸出;其中,用Imix代表允許的最大譯碼迭代次數,用Imin代表允許的最小譯碼迭代次數。
6.根據權利要求4所述的自適應迭代譯碼方案,其特征為還可由下列步驟構成1).將譯碼迭代計數器I初始化為1;2).將從信道接收到的數據到解復用和解刪除器1X進行解復用(demultiplex)和解刪除(depuncture),將輸出數據中對應卷積碼校驗比特的數據和系統碼數據輸入到譯碼器1T進行譯碼;譯碼器1T的輸出輸入到解交織器1J和迭代終止檢測器1M;解交織器1J的輸出輸入到解復用解刪除器2X,其輸出輸入到譯碼器2T,譯碼器2T的輸出輸入到迭代終止檢測器2M和交織器1I,交織器1I的輸出作為下一次迭代譯碼器1M的輸入,所有迭代終止檢測器的輸出輸入到與門1;3).當I<Imin或Imin<I<Imax時,I加1并且返回第2步;4).當I=Imin時,判斷與門1輸出為1還是0;如果為1,結束對該幀數據的迭代譯碼,并將解交織器2J的輸出輸入到硬判決器,硬判決器輸出為最終譯碼的輸出;否則I加1并返回第2步;5).當I=Imax,結束對該幀數據的迭代譯碼,并將解交織器2J的輸出輸入到硬判決器,硬判決器輸出為最終譯碼的輸出;上述步驟中,用Imax代表允許的最大譯碼迭代次數,用Imin代表允許的最小譯碼迭代次數。
7.根據權利要求4所述的自適應迭代譯碼方案,其特征為還可由下列步驟構成1).將譯碼迭代計數器I初始化為1;2).對輸入數據進行譯碼;3).當I<Imin時,I加1并且返回第2步;4).當Imin≤I<Imax時,判斷與門1輸出為1還是0;如果為1,結束對該幀數據的迭代譯碼,并將解交織器2J的輸出輸入到硬判決器,硬判決器輸出為最終譯碼的輸出;否則I加1并返回第2步;5).當I=Imax時,結束對該幀數據的迭代譯碼,并將解交織器2J的輸出輸入到硬判決器,硬判決器輸出為最終譯碼的輸出;其中,用Imax代表允許的最大譯碼迭代次數,用Imin代表允許的最小譯碼迭代次數。
全文摘要
本發明提供一種無需外加比特并且能有效地減小并行鏈接卷積碼和串行鏈接卷積碼的平均譯碼迭代次數的自適應迭代譯碼方案及實現該方案的譯碼器,即在現有的譯碼器中加上一個迭代終止檢測器,本發明在保證良好的差錯率,幾乎不增加譯碼復雜度和不使用外加的比特的前提下來減小并行鏈接卷積碼和串行鏈接卷積碼的平均譯碼迭代次數,從而減小了并行鏈接卷積碼和串行鏈接卷積碼的平均譯碼時延。
文檔編號H03M13/00GK1333599SQ0113085
公開日2002年1月30日 申請日期2001年8月28日 優先權日2001年8月28日
發明者古建, 楊大成 申請人:楊大成