TWI674765B - 一種疊代解碼裝置及其控制方法 - Google Patents

一種疊代解碼裝置及其控制方法 Download PDF

Info

Publication number
TWI674765B
TWI674765B TW106106292A TW106106292A TWI674765B TW I674765 B TWI674765 B TW I674765B TW 106106292 A TW106106292 A TW 106106292A TW 106106292 A TW106106292 A TW 106106292A TW I674765 B TWI674765 B TW I674765B
Authority
TW
Taiwan
Prior art keywords
signal
judgment result
decoded signals
decoded
iterative
Prior art date
Application number
TW106106292A
Other languages
English (en)
Other versions
TW201832475A (zh
Inventor
林專湖
黃偉傑
崔家駿
張仲堯
Original Assignee
瑞昱半導體股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 瑞昱半導體股份有限公司 filed Critical 瑞昱半導體股份有限公司
Priority to TW106106292A priority Critical patent/TWI674765B/zh
Priority to US15/862,596 priority patent/US10461776B2/en
Publication of TW201832475A publication Critical patent/TW201832475A/zh
Application granted granted Critical
Publication of TWI674765B publication Critical patent/TWI674765B/zh

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1108Hard decision decoding, e.g. bit flipping, modified or weighted bit flipping
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1128Judging correct decoding and iterative stopping criteria other than syndrome check and upper limit for decoding iterations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1131Scheduling of bit node or check node processing
    • H03M13/114Shuffled, staggered, layered or turbo decoding schedules
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • H03M13/2975Judging correct decoding, e.g. iteration stopping criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • H04L1/005Iterative decoding, including iteration between signal detection and decoding operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1044Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3905Maximum a posteriori probability [MAP] decoding or approximations thereof based on trellis or lattice decoding, e.g. forward-backward algorithm, log-MAP decoding, max-log-MAP decoding
    • H03M13/3927Log-Likelihood Ratio [LLR] computation by combination of forward and backward metrics into LLRs

Abstract

一種接收裝置,包含有一疊代解碼器,用來接收至少一編碼訊號,以及對該至少一編碼訊號執行疊代解碼,以產生複數個解碼訊號,其中,該複數個解碼訊號包含有第一次疊代的一第一解碼訊號、第二次疊代的一第二解碼訊號及第三次疊代的一第三解碼訊號;一第一判斷單元,耦接於該疊代解碼器,用來判斷該複數個解碼訊號是否發散,以產生一第一判斷結果;以及一控制單元,耦接於該第一判斷單元,用來根據至少該第一判斷結果,產生一控制訊號,其中,該控制訊號用於指示該疊代解碼器是否停止對該至少一編碼訊號執行該疊代解碼。

Description

一種疊代解碼裝置及其控制方法
本發明相關於一種用於通訊系統的裝置及方法,尤指一種疊代解碼裝置及其控制方法。
在通訊系統中,解碼編碼訊號的方法有很多種,其中疊代解碼(或稱遞迴解碼)(iterative coding)具有較佳的效能(即低位元錯誤率(bit error rate,BER))。然而,一次完整的疊代解碼演算會包含有複數次的疊代運算,對應產生複數個解碼訊號,因此會造成較多的功率消耗以及較長延遲等缺點。因此,如何克服疊代解碼的缺點又能保有疊代解碼的效能是亟待解決的問題。
因此,本發明提供了一種疊代解碼裝置及其控制方法,用來處理疊代解碼,以解決上述問題。
本發明揭露一種接收裝置,包含有一疊代解碼器(iterative decoder),用來接收至少一編碼訊號,以及對該至少一編碼訊號執行疊代解碼(iterative decoding),以產生複數個解碼訊號,其中,該複數個解碼訊號包含有第一次疊代的一第一解碼訊號、第二次疊代的一第二解碼訊號及第三次疊代的一第三解 碼訊號;一第一判斷單元,耦接於該疊代解碼器,用來判斷該複數個解碼訊號是否發散,以產生一第一判斷結果;以及一控制單元,耦接於該第一判斷單元,用來根據至少該第一判斷結果,產生一控制訊號,其中,該控制訊號用於指示該疊代解碼器是否停止對該至少一編碼訊號執行該疊代解碼。
本發明另揭露一種控制方法,用以控制上述疊代解碼器的運作。
10、20‧‧‧接收裝置
100‧‧‧疊代解碼器
110‧‧‧第一判斷單元
120‧‧‧控制單元
200‧‧‧第二判斷單元
30‧‧‧渦輪解碼器
300‧‧‧第一最大後驗機率解碼器
302‧‧‧第二最大後驗機率解碼器
304‧‧‧第一交錯器
306‧‧‧第二交錯器
308‧‧‧第一反交錯器
310‧‧‧第二反交錯器
40、50‧‧‧流程
400、402、404、406、408、410、412、414、416、500、502、504、506、508、510‧‧‧步驟
sig_code1‧‧‧編碼訊號
sig_code2‧‧‧解碼訊號
sig_ctr‧‧‧控制訊號
rst1、rst2‧‧‧判斷結果
y s1y s2y p1y p2‧‧‧接收位元
L 1L 2‧‧‧對數似然比值
L a1L a2‧‧‧先驗資訊
L e1L e2‧‧‧外部資訊
TX‧‧‧傳送端
RX‧‧‧接收端
第1圖為本發明實施例一接收裝置的示意圖。
第2圖為本發明實施例一接收裝置的示意圖。
第3圖為本發明實施例一渦輪碼解碼器的示意圖。
第4圖為本發明實施例一流程的流程圖。
第5圖為本發明實施例一流程的流程圖。
第6圖為本發明實施例一模擬結果圖。
第7圖為本發明實施例一模擬結果圖。
第1圖為本發明實施例一接收裝置10的示意圖。接收裝置10包含有一疊代解碼器(iterative decoder)100、一第一判斷單元110及一控制單元120。詳細來說,疊代解碼器100可用來接收至少一編碼訊號sig_code1,以及對至少一編碼訊號sig_code1執行疊代解碼(iterative decoding),以產生複數個解碼訊號sig_code2,其中,複數個解碼訊號sig_code2包含有第一次疊代的第一解碼訊號、第二次疊代的第二解碼訊號及第三次疊代的第三解碼訊號。第一判斷單元110耦 接於疊代解碼器100,可用來判斷複數個解碼訊號sig_code2是否發散,以產生第一判斷結果rst1。控制單元120接於第一判斷單元110,可用來根據至少第一判斷結果rst1,產生一控制訊號sig_ctr,其中,控制訊號sig_ctr用來指示疊代解碼器100是否停止對至少一編碼訊號sig_code1執行疊代解碼。
根據本發明,接收裝置10可透過使用判斷結果,在判斷編碼訊號無法被正確解碼的情況下(例如:判斷出複數個解碼訊號出現發散現象),直接停止疊代解碼,可避免疊代解碼器100無意義的後續解碼運作。本發明不僅可節省不必要的功率消耗,也降低了解碼延遲。
第2圖為本發明實施例一接收裝置20的示意圖。相較於接收裝置10,接收裝置20另包含有一第二判斷單元200。第二判斷單元200耦接於疊代解碼器100及控制單元120,可用來對複數個解碼訊號sig_code2執行一錯誤檢測,以產生一第二判斷結果rst2。在此情況下,控制單元120可根據第一判斷結果rst1及第二判斷結果rst2,產生控制訊號sig_ctr。疊代解碼器100及第一判斷單元110的運作方式可參考前述,於此不贅述。在一實施例中,當第二判斷結果rst2指示複數個解碼訊號sig_code2通過錯誤檢測時,控制單元120停止疊代解碼器100對至少一編碼訊號sig_code1執行疊代解碼。在一實施例中,第二判斷結果rst2指示複數個解碼訊號sig_code2未通過錯誤檢測以及第一判斷結果rst1指示複數個解碼訊號sig_code2不發散時,控制單元120指示疊代解碼器100繼續對至少一編碼訊號sig_code1執行疊代解碼。透過使用多個判斷結果,可進一步節省不必要的功率消耗以及降低解碼延遲。
在一實施例中,疊代解碼器100可以是一渦輪解碼器(turbo decoder) 或低密度奇偶檢查碼(Low Density Parity Check Codes,LDPC)解碼器,用來解碼以錯誤更正碼(error control code,ECC)編碼的接收訊號,該錯誤更正碼可為渦輪碼(turbo code)、低密度奇偶檢查碼等編碼,但不限於此。
在一實施例中,第一判斷單元110可執行以下步驟,以判斷複數個解碼訊號sig_code2是否發散:對複數個解碼訊號sig_code2執行符號差異(sign difference,SD)運算,用來分別計算複數個解碼訊號sig_code2間(即第一解碼訊號、第二解碼訊號及第三解碼訊號間)的複數個對應差異的一總和,以產生複數個總和訊號;分別比較該複數個總和訊號的大小,以產生複數個比較結果;以及根據複數個比較結果來決定複數個解碼訊號sig_code2是否發散,以產生第一判斷結果rst1。
在一實施例中,該複數個對應差異包括有複數個對數似然比值(log-likelihood ratio,LLR)差異、複數個外部資訊(extrinsic information)差異及複數個先驗資訊(priori information)差異中至少一者。
以下另舉例說明數個接收裝置20的運作實施例。
控制單元120根據第一判斷結果rst1及/或第二判斷結果rst2來決定是否指示疊代解碼器100停止執行疊代解碼的方法有很多種。在一實施例中,當第二判斷結果rst2指示複數個解碼訊號sig_code2通過循環冗餘檢查(cyclic redundancy check,CRC)時,控制單元120指示疊代解碼器100停止對至少一編碼訊號sig_code1執行疊代解碼。在一實施例中,當第二判斷結果rst2指示複數個解碼訊號sig_code2未通過循環冗餘檢查以及第一判斷結果rst1指示複數個解碼訊號 sig_code2發散時,控制單元120指示疊代解碼器100停止對至少一編碼訊號sig_code1執行疊代解碼。在一實施例中,當疊代解碼器100所執行的複數個解碼的次數大於一預先決定次數時,控制單元120指示疊代解碼器100停止對至少一編碼訊號sig_code1執行疊代解碼。在一實施例中,該預先決定次數的決定係與環境通道雜訊有關。
在一實施例中,當第二判斷結果rst2指示複數個解碼訊號sig_code2未通過循環冗餘檢查,以及第一判斷結果rst1指示複數個解碼訊號sig_code2收斂時,控制單元120指示疊代解碼器100對至少一編碼訊號sig_code1繼續執行疊代解碼。在一實施例中,當第二判斷結果rst2指示複數個解碼訊號sig_code2未通過循環冗餘檢查,以及第一判斷結果rst1指示複數個解碼訊號sig_code2未收斂且未發散時,控制單元120指示疊代解碼器100對至少一編碼訊號sig_code1繼續執行疊代解碼。
第一判斷單元110判斷複數個解碼訊號sig_code2收斂或發散的方法有很多種。在一實施例中,當複數個解碼訊號sig_code2間(即第一解碼訊號、第二解碼訊號及第三解碼訊號間)的複數個對應差異的一總和小於一預先設定值時,第一判斷單元110產生第一判斷結果rst1指示複數個解碼訊號sig_code2收斂。當複數個解碼訊號sig_code2間(即第一解碼訊號、第二解碼訊號及第三解碼訊號間)的複數個對應差異的總和不小於該預先設定值時,第一判斷單元110產生第一判斷結果rst1指示複數個解碼訊號sig_code2發散。進一步地,該複數個對應差異可為複數個對數似然比值差異、複數個外部資訊差異或複數個先驗資訊差異。
在一實施例中,第一判斷單元110可根據以下步驟來判斷複數個解碼 訊號sig_code2收斂或發散。第一判斷單元110計算第一解碼訊號及第二解碼訊號間的第一複數個對應差異的一第一總和。第一判斷單元110計算第二解碼訊號及第三解碼訊號間的第二複數個對應差異的一第二總和。當第一總和大於第二總和時,第一判斷單元110將一數值設定為0,以及當該第一總和不大於該第二總和時,第一判斷單元110將該數值設定為1。當該數值小於一預先設定值時,第一判斷單元110產生第一判斷結果rst1指示複數個解碼訊號sig_code2收斂。當該數值不小於該預先設定值時,第一判斷單元110產生第一判斷結果rst1指示複數個解碼訊號sig_code2發散。也就是說,長度為2的視窗可被使用來比較2組解碼訊號的差異,以改善判斷的準確度。
在一實施例中,第一判斷單元110可根據以下步驟來判斷複數個解碼訊號sig_code2收斂或發散。第一判斷單元110計算第一解碼訊號及第二解碼訊號間的第一複數個對應差異的一第一總和。第一判斷單元110計算第二解碼訊號及第三解碼訊號間的第二複數個對應差異的一第二總和。第一判斷單元110計算第三解碼訊號及第四解碼訊號間的第三複數個對應差異的一第三總和。當第一總和大於第二總和時,第一判斷單元110將一第一數值設定為0,以及當第一總和不大於第二總和時,第一判斷單元110將第一數值設定為1。當第二總和大於第三總和時,第一判斷單元110將一第二數值設定為0,以及當第二總和不大於第三總和時,第一判斷單元110將第二數值設定為1。第一判斷單元110將第一數值及第二數值相加為一數值。當該數值小於一預先設定值時,第一判斷單元110產生第一判斷結果rst1指示複數個解碼訊號sig_code2收斂。當該數值不小於預先設定值時,第一判斷單元110產生第一判斷結果rst1指示複數個解碼訊號sig_code2發散。也就是說,長度為3的視窗可被使用來比較3組解碼訊號的差異,以改善判斷的準確度。
需注意的是,上述例子是以視窗長度2及3來舉例說明比較多組編碼訊號的方法。本領域具通常知識者當可根據上述實施例,推得視窗長度為大於1的任一正整數的相似實施例。
第3圖為本發明實施例一渦輪碼解碼器30的示意圖,其碼率為1/3,用來舉例說明第2圖的疊代解碼器100。渦輪碼解碼器30包含有一第一最大後驗機率(maximum a posteriori,MAP)解碼器300,一第二最大後驗機率解碼器302,一第一交錯器(interleaver)304,一第二交錯器306,一第一反交錯器(de-interleaver)308及一第二反交錯器310。在第3圖中,y s1,y s2是接收位元(例如軟位元)的系統部分(systematic part),y p1,y p2是接收位元(例如軟位元)的校驗部分(parity part),u k 是第k個資訊位元,L m 是對數似然比值,m=1,2,L em 是第m最大後驗機率解碼器所輸出的外部資訊,L am是用來輸入第m最大後驗機率解碼器的先驗資訊,指標i表示第i次疊代。第一最大後驗機率解碼器300所輸出的外部資訊L e1,經第一交錯器304的處理後,做為輸入第二最大後驗機率解碼器302的先驗資訊L a2。對應地,第二最大後驗機率解碼器302所輸出的外部資訊L e2,經第一反交錯器308的處理後,做為輸入第一最大後驗機率解碼器300的先驗資訊L a1
根據渦輪碼解碼器30所產生的上述資訊,可用來判斷正負符號差異的方法可有以下三種:
(1)硬決定輔助(hard-decision-aided,HDA):
(2)符號改變比(sign-change ratio,SCR):
(3)符號差異比(sign-difference ratio,SDR):
根據符號差異計算總和符號差異:
根據以上所述,以下舉例說明接收裝置20的一運作方式。
1.平均兩個最大後驗機率解碼器輸出的總和符號差異,以增加穩定度:
2.當i 1時,比較當次疊代(i)與前一次疊代(i-1)的總和符號差異,若總和符號差異遞增,判斷“真(True)”,若非遞增,判斷“假(False)”:
在可正確解碼接收訊號的情況下,可預期隨著疊代次數的增加,符號差異的數量會隨著降低,即N (i)<N (i-1),以及最後可達到N (i) 0。
3.設定觀察視窗的長度為ww RR是最大疊代次數,記錄符號差異的“真”的次數:
其中,r是目前的疊代次數。
4.設定渦輪碼解碼器30的發散條件如下:w d 為發散觀察視窗的長 度,s d 為發散門檻,s d w d ,以及s(w d ) s d 。若此發散條件成立,表示符號差異的數量未隨著疊代次數增加而減少,接收裝置20判斷即使執行後續的疊代解碼,i=r+1,r+2,...,R-1,循環冗餘檢查仍不會成立。因此,接收裝置20可提前終止渦輪碼解碼器30的疊代解碼。
5.設定渦輪碼解碼器30的收斂條件如下:w c 為收斂觀察視窗,以及s(w c )=0。若此收斂條件成立,表示符號差異的數量隨著疊代次數增加而減少,意即單調遞減(monotonic decreasing),接收裝置20判斷後續的疊代在達到最大預設值前循環冗餘檢查可能會成立,因此,渦輪碼解碼器30繼續執行疊代解碼直到循環冗餘檢查成立或達到最大預先決定的疊代次數。
6.可透過設定發散條件的w d s d 來關閉符號差異的功能,例如設定w d =Rs d =R
7.當設定w c w d 時,應滿足w c >w d ,以節省功率消耗。
8.考慮硬體架構的實現,當執行硬決定輔助及符號改變比來判斷符號差異時,接收裝置20需暫存前一次疊代的輸出。反之,當執行符號差異比來判斷符號差異時,接收裝置20不需暫存前一次疊代的輸出。
以上所述的步驟及原則可歸納為第4圖的一流程40,其包含有步驟400~416,詳細的運作方式可參考前述,在此不贅述。
前述接收裝置10的運作方式可歸納為第5圖的一流程50,其包含有以下步驟:
步驟500:開始。
步驟502:接收至少一編碼訊號。
步驟504:對該至少一編碼訊號執行疊代解碼,以產生複數個解碼訊 號,其中,該複數個解碼訊號包含有第一次疊代的一第一解碼訊號、第二次疊代的一第二解碼訊號及第三次疊代的一第三解碼訊號。
步驟506:判斷該複數個解碼訊號是否發散,以產生一第一判斷結果。
步驟508:根據至少該第一判斷結果,產生一控制訊號,其中,該控制訊號用於指示該疊代解碼器是否停止對該至少一編碼訊號執行疊代解碼。
步驟510:結束。
第6圖為本發明實施例一模擬結果圖。模擬環境的設定為先進長期演進系統,頻寬為10兆赫(MHz),所使用的是調變及編碼方案(modulation and coding scheme,MCS)5,通道為加成性高斯白雜訊(additive white Gaussian noise,AWGN)通道,最大疊代次數為16。第6圖以平均疊代次數比較了兩種早期終止的方法:循環冗餘檢查(習知技術)及循環冗餘檢查+符號差異比(本發明),其中本發明所使用的模擬參數為w d =3,s d =2,w c =5。觀察第6圖可知,在訊號對雜訊比為-2分貝(dB)的情況下,相較於習知技術,本發明可節省9.5次的疊代解碼。在訊號對雜訊比為-1分貝的情況下,相較於習知技術,本發明可節省1次的疊代解碼。因此,本發明可大幅降低功率消耗。
第7圖為本發明實施例一模擬結果圖。第7圖具有與第6圖相同的模擬環境及模擬參數。觀察第7圖可知,考慮區塊錯誤率(block error rate,BLER)10%,相較於習知技術,本發明的效能損失僅為0.015分貝。若考慮區塊錯誤率1%,相較於習知技術,本發明的效能損失僅為0.005分貝。因此,本發明可在損失些微的效能的情況下,大幅降低功率消耗。
需注意的是,可根據設計考量或系統需求,將疊代解碼器100、第一 判斷單元110第二判斷單元200及控制單元120整合為一或多個單元。此外,接收裝置10及/或接收裝置20及其中單元可以硬體(例如電路)、軟體、韌體、電子系統、或上述裝置的組合來實現,不限於此。
綜上所述,本發明提供了一種疊代解碼裝置及其控制方法,在判斷接收訊號難以被正確解碼的情況下,直接停止後續的疊代解碼,可避免執行不必要的疊代解碼。因此,本發明不僅可節省不必要的功率消耗,也降低了解碼延遲。

Claims (9)

  1. 一種接收裝置,包含有:一疊代解碼器(iterative decoder),用來接收至少一編碼訊號,以及對該至少一編碼訊號執行疊代解碼(iterative decoding),以產生複數個解碼訊號,其中,該複數個解碼訊號包含有第一次疊代的一第一解碼訊號、第二次疊代的一第二解碼訊號及第三次疊代的一第三解碼訊號;一第一判斷單元,耦接於該疊代解碼器,用來判斷該複數個解碼訊號是否發散,以產生一第一判斷結果;一控制單元,耦接於該第一判斷單元,用來根據至少該第一判斷結果,產生一控制訊號,其中,該控制訊號用於指示該疊代解碼器是否停止對該至少一編碼訊號執行該疊代解碼;以及一第二判斷單元,耦接於該疊代解碼器及該控制單元,用來對該複數個解碼訊號執行一錯誤檢測,以產生一第二判斷結果,其中,該控制單元根據該第一判斷結果及該第二判斷結果,產生該控制訊號。
  2. 如請求項1所述的接收裝置,其中當該第二判斷結果指示該複數個解碼訊號通過該錯誤檢測時,該控制單元指示該疊代解碼器停止對該至少一編碼訊號執行該疊代解碼。
  3. 如請求項1所述的接收裝置,其中當該第二判斷結果指示該複數個解碼訊號未通過該錯誤檢測以及該第一判斷結果指示該複數個解碼訊號不發散時,該疊代解碼器繼續對該至少一編碼訊號執行該疊代解碼。
  4. 如請求項1或2所述的接收裝置,其中該疊代解碼器包括有一渦輪解 碼器(turbo decoder)及一低密度奇偶檢查碼(Low Density Parity Check Codes,LDPC)解碼器其中一者。
  5. 如請求項1所述的接收裝置,其中該第一判斷單元對該複數個解碼訊號執行一符號差異(sign difference,SD)運算,以判斷該複數個解碼訊號是否發散。
  6. 請求項5所述的接收裝置,其中該第一判斷單元執行以下步驟:對該複數個解碼訊號執行該符號差異運算,用來分別計算該複數個解碼訊號間的複數個對應差異的一總和,以產生複數個總和訊號;分別比較該複數個總和訊號的大小,以產生複數個比較結果;以及根據該複數個比較結果來決定該複數個解碼訊號是否發散,以產生該第一判斷結果。
  7. 如請求項5所述的接收裝置,其中該第一判斷單元對該複數個解碼訊號間的複數個對應差異執行該符號差異運算,該複數個對應差異包括有複數個對數似然比值(log-likelihood ratio,LLR)差異、複數個外部資訊(extrinsic information)差異及複數個先驗資訊(priori information)差異中至少一者。
  8. 一種控制方法,係用以控制一疊代解碼器的運作,該控制方法包含有:接收至少一編碼訊號;對該至少一編碼訊號執行疊代解碼(iterative decoding),以產生複數個解碼訊號,其中,該複數個解碼訊號包含有第一次疊代的一第一解碼訊號、 第二次疊代的一第二解碼訊號及第三次疊代的一第三解碼訊號;判斷該複數個解碼訊號是否發散,以產生一第一判斷結果;根據至少該第一判斷結果,產生一控制訊號,其中,該控制訊號用於指示該疊代解碼器是否停止對該至少一編碼訊號執行該疊代解碼;以及對該複數個解碼訊號執行一錯誤檢測,以產生一第二判斷結果,其中,根據該第一判斷結果及該第二判斷結果,產生該控制訊號。
  9. 如請求項8所述的控制方法,其中,產生該第一判斷結果的步驟包括有:對該複數個解碼訊號執行一符號差異(sign difference,SD)運算,用來分別計算該複數個解碼訊號間的複數個對應差異的一總和,以產生複數個總和訊號;分別比較該複數個總和訊號的大小,以產生複數個比較結果;以及根據該複數個比較結果,產生該第一判斷結果。
TW106106292A 2017-02-24 2017-02-24 一種疊代解碼裝置及其控制方法 TWI674765B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW106106292A TWI674765B (zh) 2017-02-24 2017-02-24 一種疊代解碼裝置及其控制方法
US15/862,596 US10461776B2 (en) 2017-02-24 2018-01-04 Device and method of controlling an iterative decoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW106106292A TWI674765B (zh) 2017-02-24 2017-02-24 一種疊代解碼裝置及其控制方法

Publications (2)

Publication Number Publication Date
TW201832475A TW201832475A (zh) 2018-09-01
TWI674765B true TWI674765B (zh) 2019-10-11

Family

ID=63246934

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106106292A TWI674765B (zh) 2017-02-24 2017-02-24 一種疊代解碼裝置及其控制方法

Country Status (2)

Country Link
US (1) US10461776B2 (zh)
TW (1) TWI674765B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102629457B1 (ko) * 2018-10-24 2024-01-26 삼성전자주식회사 반도체 메모리 장치, 제어 장치, 및 메모리 시스템
CN111211870B (zh) * 2020-01-06 2021-07-20 华南理工大学 一种turbo接收系统中的迭代终止决策方法
CN116192166B (zh) * 2023-04-28 2023-08-01 南京创芯慧联技术有限公司 迭代译码方法、装置、存储介质和电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070168830A1 (en) * 2002-06-28 2007-07-19 Interdigital Technology Corporation Fast H-ARQ acknowledgement generation method using a stopping rule for turbo decoding
US20120198308A1 (en) * 2011-01-31 2012-08-02 Nedeljko Varnica Methods and systems for efficient decoding of concatenated error correction codes

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7131092B2 (en) * 2004-12-21 2006-10-31 Via Technologies, Inc. Clock gating circuit
WO2008124921A1 (en) * 2007-04-11 2008-10-23 The Royal Institution For The Advancement Of Learning/Mcgill University Convergence determination and scaling factor estimation based on sensed switching activity or measured power consumption
US8826109B2 (en) * 2012-09-04 2014-09-02 Lsi Corporation LDPC decoder irregular decoding of regular codes

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070168830A1 (en) * 2002-06-28 2007-07-19 Interdigital Technology Corporation Fast H-ARQ acknowledgement generation method using a stopping rule for turbo decoding
US20120198308A1 (en) * 2011-01-31 2012-08-02 Nedeljko Varnica Methods and systems for efficient decoding of concatenated error correction codes

Also Published As

Publication number Publication date
US20180248563A1 (en) 2018-08-30
US10461776B2 (en) 2019-10-29
TW201832475A (zh) 2018-09-01

Similar Documents

Publication Publication Date Title
JP4777876B2 (ja) ターボデコーダの反復の早期終了
JP2005531983A (ja) ターボ復号のための停止規則を用いた高速のh−arq応答の生成方法
WO2007075098A1 (en) Generalized multi-threshold decoder for low-density parity check codes
WO2014075267A1 (zh) 译码处理方法及译码器
TWI674765B (zh) 一種疊代解碼裝置及其控制方法
US7886209B2 (en) Decoding device, decoding method, and receiving apparatus
KR101609884B1 (ko) 통신 시스템에서 복호된 데이터의 신뢰성을 판단하는 장치 및 방법
Jiang et al. Reliability-based iterative decoding of LDPC codes using likelihood accumulation
KR100738250B1 (ko) Llr의 부호 비교를 이용한 터보 복호기의 반복복호제어장치 및 방법
KR102197751B1 (ko) 블록 터보 부호의 저 복잡도 오류정정을 위한 신드롬 기반의 혼합 복호 장치 및 그 방법
JP2002344330A (ja) ターボ復号装置およびターボ復号における復号の繰返し回数の制御方法
CN108540142B (zh) 接收装置及其控制方法
KR100530339B1 (ko) 터보 복호기의 복호 지연시간 감소장치 및 그 방법
TW201902139A (zh) 用於對低密度奇偶校驗資料進行解碼以對碼字進行解碼的方法以及解碼器
KR100823727B1 (ko) 터보 복호기에서 잡음 분산값을 이용한 반복중단 제어장치및 그 방법
JP2006060296A (ja) 連接符号システムおよび連接符号処理方法、復号装置
KR100662076B1 (ko) 연판정 출력의 차이값에 대한 절대평균값을 이용한 반복중단 제어장치 및 그 방법
Tan et al. A Novel Stopping Criterion for LTE-A High Speed Turbo Decoder
KR20040086872A (ko) 터보 복호기의 반복복호 횟수 제어장치 및 그 방법
Abotabl et al. Extrinsic dispersion transfer chart for finite length LDPC codes design
KR100776910B1 (ko) 비이진부호에서의 scr/sdr을 이용한 반복 복호 장치및 그 동작 방법
Kaur et al. Iterative decoding of turbo codes
TWI569584B (zh) 採用動態調整因子的解碼方法
Levanen et al. Efficient parity bit estimation for Turbo codes
Wei et al. New stopping criteria for Turbo decoder