TWI674765B - 一種疊代解碼裝置及其控制方法 - Google Patents
一種疊代解碼裝置及其控制方法 Download PDFInfo
- 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
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/11—Error 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/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1108—Hard decision decoding, e.g. bit flipping, modified or weighted bit flipping
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/11—Error 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/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1128—Judging correct decoding and iterative stopping criteria other than syndrome check and upper limit for decoding iterations
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/11—Error 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/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1131—Scheduling of bit node or check node processing
- H03M13/114—Shuffled, staggered, layered or turbo decoding schedules
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/29—Coding, 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/2957—Turbo codes and decoding
- H03M13/2975—Judging correct decoding, e.g. iteration stopping criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0047—Decoding adapted to other signal detection operation
- H04L1/005—Iterative decoding, including iteration between signal detection and decoding operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1044—Adding 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/3905—Maximum 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/3927—Log-Likelihood Ratio [LLR] computation by combination of forward and backward metrics into LLRs
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
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 s1、y s2、y p1、y p2‧‧‧接收位元
L 1、L 2‧‧‧對數似然比值
L a1、L a2‧‧‧先驗資訊
L e1、L 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.設定觀察視窗的長度為w,w R,R是最大疊代次數,記錄符號差異的“真”的次數:
其中,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 =R及s 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)
- 一種接收裝置,包含有:一疊代解碼器(iterative decoder),用來接收至少一編碼訊號,以及對該至少一編碼訊號執行疊代解碼(iterative decoding),以產生複數個解碼訊號,其中,該複數個解碼訊號包含有第一次疊代的一第一解碼訊號、第二次疊代的一第二解碼訊號及第三次疊代的一第三解碼訊號;一第一判斷單元,耦接於該疊代解碼器,用來判斷該複數個解碼訊號是否發散,以產生一第一判斷結果;一控制單元,耦接於該第一判斷單元,用來根據至少該第一判斷結果,產生一控制訊號,其中,該控制訊號用於指示該疊代解碼器是否停止對該至少一編碼訊號執行該疊代解碼;以及一第二判斷單元,耦接於該疊代解碼器及該控制單元,用來對該複數個解碼訊號執行一錯誤檢測,以產生一第二判斷結果,其中,該控制單元根據該第一判斷結果及該第二判斷結果,產生該控制訊號。
- 如請求項1所述的接收裝置,其中當該第二判斷結果指示該複數個解碼訊號通過該錯誤檢測時,該控制單元指示該疊代解碼器停止對該至少一編碼訊號執行該疊代解碼。
- 如請求項1所述的接收裝置,其中當該第二判斷結果指示該複數個解碼訊號未通過該錯誤檢測以及該第一判斷結果指示該複數個解碼訊號不發散時,該疊代解碼器繼續對該至少一編碼訊號執行該疊代解碼。
- 如請求項1或2所述的接收裝置,其中該疊代解碼器包括有一渦輪解 碼器(turbo decoder)及一低密度奇偶檢查碼(Low Density Parity Check Codes,LDPC)解碼器其中一者。
- 如請求項1所述的接收裝置,其中該第一判斷單元對該複數個解碼訊號執行一符號差異(sign difference,SD)運算,以判斷該複數個解碼訊號是否發散。
- 請求項5所述的接收裝置,其中該第一判斷單元執行以下步驟:對該複數個解碼訊號執行該符號差異運算,用來分別計算該複數個解碼訊號間的複數個對應差異的一總和,以產生複數個總和訊號;分別比較該複數個總和訊號的大小,以產生複數個比較結果;以及根據該複數個比較結果來決定該複數個解碼訊號是否發散,以產生該第一判斷結果。
- 如請求項5所述的接收裝置,其中該第一判斷單元對該複數個解碼訊號間的複數個對應差異執行該符號差異運算,該複數個對應差異包括有複數個對數似然比值(log-likelihood ratio,LLR)差異、複數個外部資訊(extrinsic information)差異及複數個先驗資訊(priori information)差異中至少一者。
- 一種控制方法,係用以控制一疊代解碼器的運作,該控制方法包含有:接收至少一編碼訊號;對該至少一編碼訊號執行疊代解碼(iterative decoding),以產生複數個解碼訊號,其中,該複數個解碼訊號包含有第一次疊代的一第一解碼訊號、 第二次疊代的一第二解碼訊號及第三次疊代的一第三解碼訊號;判斷該複數個解碼訊號是否發散,以產生一第一判斷結果;根據至少該第一判斷結果,產生一控制訊號,其中,該控制訊號用於指示該疊代解碼器是否停止對該至少一編碼訊號執行該疊代解碼;以及對該複數個解碼訊號執行一錯誤檢測,以產生一第二判斷結果,其中,根據該第一判斷結果及該第二判斷結果,產生該控制訊號。
- 如請求項8所述的控制方法,其中,產生該第一判斷結果的步驟包括有:對該複數個解碼訊號執行一符號差異(sign difference,SD)運算,用來分別計算該複數個解碼訊號間的複數個對應差異的一總和,以產生複數個總和訊號;分別比較該複數個總和訊號的大小,以產生複數個比較結果;以及根據該複數個比較結果,產生該第一判斷結果。
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)
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)
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)
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 |
-
2017
- 2017-02-24 TW TW106106292A patent/TWI674765B/zh active
-
2018
- 2018-01-04 US US15/862,596 patent/US10461776B2/en active Active
Patent Citations (2)
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 |
TW201832475A (zh) | 2018-09-01 |
US10461776B2 (en) | 2019-10-29 |
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 | |
CN102064917A (zh) | 一种ldpc编码调制系统的解调译码方法 | |
KR101609884B1 (ko) | 통신 시스템에서 복호된 데이터의 신뢰성을 판단하는 장치 및 방법 | |
Jiang et al. | Reliability-based iterative decoding of LDPC codes using likelihood accumulation | |
KR100738250B1 (ko) | Llr의 부호 비교를 이용한 터보 복호기의 반복복호제어장치 및 방법 | |
KR102197751B1 (ko) | 블록 터보 부호의 저 복잡도 오류정정을 위한 신드롬 기반의 혼합 복호 장치 및 그 방법 | |
CN108540142B (zh) | 接收装置及其控制方法 | |
KR100530339B1 (ko) | 터보 복호기의 복호 지연시간 감소장치 및 그 방법 | |
KR100823727B1 (ko) | 터보 복호기에서 잡음 분산값을 이용한 반복중단 제어장치및 그 방법 | |
KR100662076B1 (ko) | 연판정 출력의 차이값에 대한 절대평균값을 이용한 반복중단 제어장치 및 그 방법 | |
CN118054797B (zh) | 编码及译码方法、装置、设备 | |
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 | |
WO2012093956A1 (en) | Method for stopping iteration in an iterative turbo decoder and an iterative turbo decoder |