TW201714083A - 以再編碼方案用於糾錯碼解碼的提前終止方法 - Google Patents
以再編碼方案用於糾錯碼解碼的提前終止方法 Download PDFInfo
- Publication number
- TW201714083A TW201714083A TW104133888A TW104133888A TW201714083A TW 201714083 A TW201714083 A TW 201714083A TW 104133888 A TW104133888 A TW 104133888A TW 104133888 A TW104133888 A TW 104133888A TW 201714083 A TW201714083 A TW 201714083A
- Authority
- TW
- Taiwan
- Prior art keywords
- codeword
- decoding
- result
- soft value
- located portion
- Prior art date
Links
Landscapes
- Error Detection And Correction (AREA)
Abstract
本發明揭露一種以再編碼方案用於糾錯碼解碼的提前終止方法。該方法包含步驟:A.接收軟數值;B.對該軟數值進行硬判決以決定一碼字;C.分拆該碼字為一資料部與一第一同位部;D.再編碼該資料部以取得一第二同位部;E.檢查是否該第一同位部與該第二同位部相等;及F.如果步驟E的結果為是,停止解碼該碼字;如果步驟E的結果為非,對該碼字進行一解碼演算法。藉該方法,如果同位區塊中有許多的錯誤,該接收的碼字仍然可以被正確地解碼,並改善解碼性能。
Description
本發明關於一種用於糾錯碼解碼的方法,特別是關於一種以再編碼方案用於糾錯碼解碼的提前終止方法。
藉由增加一些冗餘資訊,糾錯碼能檢查並修正帶有錯誤的訊息。這些錯誤可能在傳輸過程中從源頭到一接收器中被引入,或是因儲存設備中的缺陷而產生。對於儲存設備來說,糾錯碼已經廣泛地採用來增加的資料存取的可靠性,並因而減少製造成本。隨著快閃記憶體裝置位元密度及多層製造程序的增加,糾錯碼扮演越來越重要的角色。然而,糾錯碼的編碼器/解碼器需要大面積成本,以滿足高解碼性能的需求。主要的面積成本之一來自徵狀測試,其需要很多的互連電路與XOR閘以供碼字正確性檢查。不僅應用該糾錯碼裝置的總成本增加,用來完成解碼程序的時間也變得更長了。
為了解決上述問題,許多習知技術提出了不同面向的解決方案,其中多數有提前終止迭代計算的步驟。例如,
美國專利第7,765,453號提供一種用於迭代向前糾錯解碼器的提前終止方法以及一種使用該方法的控制器。該方法具有步驟:接收資料的一編碼幀,該資料的編碼幀包含一定量的碼塊,而每一碼塊具有一相應的碼塊大小;為該資料編碼幀的每一碼塊決定一第一最大次數迭代,以對一第一碼塊迭代執行一解碼運算直到以下之一發生(a)該第一最大次數迭代已經達到及(b)該第一碼塊已收斂;及基於實際使用迭代次數,為該資料編碼幀的剩餘碼塊決定一第二最大次數迭代,以解碼該第一碼塊。該美國專利第7,765,453號充分利用一選取的解碼器的性能並減少迭代計算的次數。然而,用來實現該方法的硬體(控制器)對於解碼器來說是另一個面積成本。同時,解碼器的架構尺寸無法縮小。
另一種提前終止方法揭露於美國專利第7,765,453號中。該方法包含步驟:基於接收的一碼字,經過通訊通道接收一測試碼字;對一同位檢查矩陣的每一列,執行一低密度同位檢查,對該測試碼字進行運算;一但進行的運算已對所有的列執行,重複該進行的運算;監視進行的運算的過程;依照該同位檢查矩陣,選擇性地產生一終止訊號來回應該測試碼字為一有效碼字;及終止該進行的運算以回應該終止訊號的產生。該美國專利第7,765,453號僅適用於低密度同位檢查,對於減少面積成本的幫忙則有限。
因此,需要一種創新的提前終止方法,特別是該方法能使用低複雜性硬體並降低面積成本。
為了減少硬體複雜性、改善解碼程序的性能及產出量,本發明提出一種以再編碼方案用於糾錯碼解碼的提前終止方法。該方法包含步驟:A.接收軟數值;B.對該軟數值進行硬判決以決定一碼字;C.分拆該碼字為一資料部與一第一同位部;D.再編碼該資料部以取得一第二同位部;E.檢查是否該第一同位部與該第二同位部相等;及F.如果步驟E的結果為是,停止解碼該碼字;如果步驟E的結果為非,對該碼字進行一解碼演算法。
依照本發明,亦提出另一種以再編碼方案用於糾錯碼解碼的提前終止方法。該方法包含步驟:A.接收第一軟數值;B.對該第一軟數值進行硬判決以決定一第一碼字且對該第一軟數值進行一解碼演算法以取得第二軟數值;C.分拆該第一碼字為一資料部與一第一同位部;D.再編碼該資料部以取得一第二同位部;E.對該第二軟數值進行硬判決以決定一第二碼字與該第二碼字的一第三同位部;F.檢查是否該第二同位部與該第三同位部相等;及G.如果步驟F的結果為是,停止迭代解碼;如果步驟F的結果為非,對該第二碼字進行該解碼演算法。
最好,該方法進一步於步驟G後包含步驟:G1.在該解碼演算法進行後,檢查是否迭代計算的次數達到一預設的最大次數;及G2.如果步驟H1的結果為是,停止解碼演算法的迭代計算;如果步驟H1的結果為非,還原該進行處理的碼字為該第一軟數值,自步驟A重複流程。
依照本發明,提出再一種以再編碼方案用於糾錯碼解碼的提前終止方法。該方法包含步驟:A.接收軟數值;B.對該軟數值進行硬判決以決定一第一碼字;C.分拆該第一碼字為一第一資料部與一第一同位部;D.再編碼該第一資料部以取得一第二碼字;E.分拆該第二碼字為一第二資料部與一第二同位部;F.計算該第一同位部與該第二同位部間不匹配的位元的數量;G.檢查是否該數量大於或等於一預設的數值;及H.如果步驟G的結果為是,對該第一碼字進行一解碼演算法;如果步驟G的結果為非,對該第二碼字進行該解碼演算法。
最好,該方法進一步於步驟H後包含步驟:H1.檢查是否迭代計算的次數達到一預設的最大次數或滿足該解碼演算法的一目前終止條件;及H2.如果步驟G1的結果為是,停止該解碼演算法的迭代計算;如果步驟G1的結果為非,還原該進行處理的碼字為該軟數值,自步驟A重複流程。
由本發明所提出的方法,接收碼字的正確性能被檢查而不需徵狀測試,減少解碼器的面積成本。同時,為了提前
終止,編碼器能被重複使用。基於再編碼的碼字,解碼性能可藉由取代錯誤的同位部而改善。
第1圖為依照本發明的一種以再編碼方案用於糾錯碼解碼的提前終止方法之流程圖。
第2圖為依照本發明的另一種以再編碼方案用於糾錯碼解碼的提前終止方法之流程圖。
第3圖為依照本發明的又一種以再編碼方案用於糾錯碼解碼的提前終止方法之流程圖。
本發明將藉由參照下列的實施方式而更具體地描述。
本發明的一個態樣是提供一種藉採用再編碼方案的提前終止方法,該再編碼方案用以檢查接收碼字的正確性。這意味著編碼器與解碼器能具有某些相同的邏輯電路,以便設計的成本能降低。特別是相較於傳統方法,此處提供的方法不需要額外用於徵狀測試的硬體。用於徵狀測試的大面積成本能被減省。要強調的是,本發明能應用到經過嘈雜的有線或無線通信管道傳輸的碼字,它也能被用於檢查儲存在一儲存設備(如固態硬碟)中的資料,其中一些位元可能有問題。接收的訊息能被還原到原始的狀態,並得到正確的資訊。
請參閱第1圖,說明依照本發明的一實施例。第1圖為依照本發明的一種以再編碼方案用於糾錯碼解碼的提前終止方法之流程圖。該方法的第一步驟是從一通道或一存儲裝置接收軟數值(S01)。該軟數值意味著為了表明可靠性,傳入的資料可能包含傳輸管道或儲存設備的特性,不是只有接收器收到的0或1。接著,對該軟數值進行一硬判決以決定一碼字(S02)。該碼字分拆為兩部分:一資料部與一第一同位部(S03)。現在,該碼字的資料部可能具有正確訊息,資料部及/或第一同位部也可能有錯誤位元。接著,再編碼該資料部以取得一第二同位部(S04)。此時已具有第一同位部與第二同位部。檢查是否該第一同位部與該第二同位部相等(S05)。如果步驟S05的結果為是,停止解碼該碼字(S06-1);如果步驟S05的結果為非,對該碼字進行一解碼演算法(S06-2)。在最後步驟中,“是”的情況意味著資料部具有正確資訊,提前終止策略得到滿足。“非”的情況指出錯誤發生,進一步解碼程序是需要的。
在上述實施例中,很明顯地,如果一訊息被正確地傳輸,碼字就不需進行徵狀測試,且能夠通過使用相同的編碼電路(碼字被傳送之前被處理使用的電路)找出。對其它情況而言,碼字需要進一步解碼。這樣的做法可以節省解碼時間以及硬體的面積成本。然而,理想的傳輸情況很稀少。
本發明揭露其它的實施例,該些實施例說明更多提前終止的細節操作。
請參閱第2圖,第2圖為依照本發明的另一種以再編碼方案用於糾錯碼解碼的提前終止方法之流程圖。第一步驟是接收第一軟數值(S11)。接著,對該第一軟數值進行硬判決以決定一第一碼字且對該第一軟數值進行一解碼演算法以取得第二軟數值(S12)。也就是說第一軟數值藉由不同處理程序來取得不同的狀態。對於第一碼字,分拆其為一資料部與一第一同位部(S13)。接著,再編碼該資料部以取得一第二同位部(S14)。對該第二軟數值進行硬判決以決定一第二碼字與該第二碼字的一第三同位部(S15)。要注意的是在解碼演算法進行後,必然會發現某些錯誤,且第二碼字中某些位元會翻轉。該解碼演算法不必完全執行結束,它的目的是找出某些存在的錯誤。此時,檢查是否該第二同位部與該第三同位部相等(S16)。如果步驟S16的結果為是,停止迭代解碼(S17-1);如果步驟S16的結果為非,對該第二碼字進行該解碼演算法(S17-2)。在解碼演算法進行之後,檢查是否迭代計算的次數達到一預設的最大次數(S18)。該預設的最大次數可以是任何的數字,應用於任何解碼演算法中。通常來說,較大的數字需要較長的時間完成解碼流程。最後,如果步驟S18的結果為是,停止解碼演算法的迭代計算(S19-1);如果步驟S18的結果為非,則還原該進行處理的碼字為該第一
軟數值,自步驟S11重複流程(S19-2)。“是”的情況說明當計算的最大次數達到時,變化量已收斂且資料部幾乎是正確的。“非”的情況顯示在碼字中還有隱藏的錯誤。處理過的碼字需要被視為新的第一軟數值,再一次進行處理。很顯然,此時的錯誤相較硬判決下的第一碼字來的少。
依照本發明,再編碼方案也能被用來改進解碼性能及產出量。另一個提出的方法比較接收碼字與再編碼碼字的同位部,並檢查同位區塊中不匹配的位元的總數目。請見第3圖,第3圖為依照本發明的又一種以再編碼方案用於糾錯碼解碼的提前終止方法之流程圖。第一步驟是接收軟數值(S21)。接著,對該軟數值進行硬判決以決定一第一碼字(S22)。分拆該第一碼字為一第一資料部與一第一同位部(S23)。取第一資料部,再編碼該第一資料部以取得一第二碼字(S24)。接著,分拆該第二碼字為一第二資料部與一第二同位部(S25)。計算該第一同位部與該第二同位部間不匹配的位元的數量(S26)。其次,檢查是否該數量大於或等於一預設的數值(S27)。預設的數值,N,可以依照設計人員的意思而為任何數值。通常來說,較大的數字需要較長的時間完成解碼流程。如果步驟S27的結果為是,對該第一碼字進行一解碼演算法(S28-1);如果步驟S27的結果為非,對該第二碼字進行該解碼演算法(S28-2)。步驟S28-1與S28-2的目的是挑選含有較少錯誤的碼字以進一步解碼,從而解碼所思時間可以縮短。接
著,檢查是否迭代計算的次數達到一預設的最大次數或滿足該解碼演算法的一目前終止條件(S29)。使用預設的最大次數是要達成如前面實施例中描述的相同的目標。目前終止條件可以隨不同的解碼演算法的而不同,它被用來確認解碼結果已經收斂,進而縮短解碼時間。例如,它可以要求執行步驟S03到步驟S06-1或S06-2,二個同位部必須是相等的。最後,如果步驟S29的結果為是,停止該解碼演算法的迭代計算(S30-1);如果步驟S29的結果為非,還原該進行處理的碼字為該軟數值,自步驟S21重複流程(S30-2)。相同地,“非”的情況顯示在碼字中還有隱藏的錯誤。處理過的碼字需要被視為新的第一軟數值,再一次進行處理。
雖然本發明已以實施方式揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
Claims (5)
- 一種以再編碼方案用於糾錯碼解碼的提前終止方法,包含步驟:A.接收軟數值;B.對該軟數值進行硬判決以決定一碼字;C.分拆該碼字為一資料部與一第一同位部;D.再編碼該資料部以取得一第二同位部;E.檢查是否該第一同位部與該第二同位部相等;及F.如果步驟E的結果為是,停止解碼該碼字;如果步驟E的結果為非,對該碼字進行一解碼演算法。
- 一種以再編碼方案用於糾錯碼解碼的提前終止方法,包含步驟:A.接收第一軟數值;B.對該第一軟數值進行硬判決以決定一第一碼字且對該第一軟數值進行一解碼演算法以取得第二軟數值;C.分拆該第一碼字為一資料部與一第一同位部;D.再編碼該資料部以取得一第二同位部;E.對該第二軟數值進行硬判決以決定一第二碼字與該第二碼字的一第三同位部;F.檢查是否該第二同位部與該第三同位部相等;及G.如果步驟F的結果為是,停止迭代解碼;如果步驟F的結果為非,對該第二碼字進行該解碼演算法。
- 如申請專利範圍第2項所述的提前終止方法,進一步於步驟G後包含步驟:G1.在該解碼演算法進行後,檢查是否迭代計算的次數達到一預設的最大次數;及G2.如果步驟H1的結果為是,停止解碼演算法的迭代計算;如果步驟H1的結果為非,還原該進行處理的碼字為該第一軟數值,自步驟A重複流程。
- 一種以再編碼方案用於糾錯碼解碼的提前終止方法,包含步驟:A.接收軟數值;B.對該軟數值進行硬判決以決定一第一碼字;C.分拆該第一碼字為一第一資料部與一第一同位部;D.再編碼該第一資料部以取得一第二碼字;E.分拆該第二碼字為一第二資料部與一第二同位部;F.計算該第一同位部與該第二同位部間不匹配的位元的數量;G.檢查是否該數量大於或等於一預設的數值;及H.如果步驟G的結果為是,對該第一碼字進行一解碼演算法;如果步驟G的結果為非,對該第二碼字進行該解碼演算法。
- 如申請專利範圍第4項所述的提前終止方法,進一步於步驟H後包含步驟: H1.檢查是否迭代計算的次數達到一預設的最大次數或滿足該解碼演算法的一目前終止條件;及H2.如果步驟G1的結果為是,停止該解碼演算法的迭代計算;如果步驟G1的結果為非,還原該進行處理的碼字為該軟數值,自步驟A重複流程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW104133888A TWI544325B (zh) | 2015-10-15 | 2015-10-15 | 以再編碼方案用於糾錯碼解碼的提前終止方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW104133888A TWI544325B (zh) | 2015-10-15 | 2015-10-15 | 以再編碼方案用於糾錯碼解碼的提前終止方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI544325B TWI544325B (zh) | 2016-08-01 |
TW201714083A true TW201714083A (zh) | 2017-04-16 |
Family
ID=57183648
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW104133888A TWI544325B (zh) | 2015-10-15 | 2015-10-15 | 以再編碼方案用於糾錯碼解碼的提前終止方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI544325B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112688694A (zh) * | 2019-10-18 | 2021-04-20 | 王晋良 | 用于列表型连续消去的解码器及其解码方法 |
-
2015
- 2015-10-15 TW TW104133888A patent/TWI544325B/zh active
Also Published As
Publication number | Publication date |
---|---|
TWI544325B (zh) | 2016-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10673468B2 (en) | Concatenated and sliding-window polar coding | |
TWI663839B (zh) | 使用硬選取硬解碼模式下的解碼器產生軟資訊的方法 | |
AU761792B2 (en) | An iterative decoder and an iterative decoding method for a communication system | |
US8781033B2 (en) | Apparatus and method for breaking trapping sets | |
JP4777876B2 (ja) | ターボデコーダの反復の早期終了 | |
US9654147B2 (en) | Concatenated error correction device | |
US20170288698A1 (en) | Power saving for bit flipping decoding algorithm in ldpc decoder | |
US9531406B2 (en) | Decoding of LDPC code | |
US20170070243A1 (en) | Early termination method with re-encoding scheme for decoding of error correction code | |
CN108270518B (zh) | 用以解码接收信息的解码方法与相关解码装置 | |
US8365054B2 (en) | Soft reed-solomon decoder based on error-and-erasure reed-solomon decoder | |
US11323138B1 (en) | Reed-Solomon code soft-decision decoding method and device | |
US20080109710A1 (en) | Viterbi decoding method | |
TWI544325B (zh) | 以再編碼方案用於糾錯碼解碼的提前終止方法 | |
CN110492889B (zh) | 检测纠正两位错误的编码解码方法、编码解码器及处理器 | |
JP6567238B1 (ja) | 誤り訂正復号装置および誤り訂正復号方法 | |
US11539380B2 (en) | Decoding device, decoding method, control circuit, and storage medium | |
CN110489269B (zh) | 检测纠正三位错误的编码解码方法、编码解码器及处理器 | |
TWI645683B (zh) | 使用代數碼與ldpc碼的部分聯結編碼系統 | |
KR101484066B1 (ko) | 엘디피시 부호의 디코딩 방법 | |
JPH1022839A (ja) | 軟判定誤り訂正復号方法 | |
US11251815B2 (en) | Decoding circuit and decoding method based on Viterbi algorithm | |
US8977934B2 (en) | Method of early termination of channel decoding by re-encoding | |
CN108270517B (zh) | 用以解码接收信息的解码方法与相关解码装置 | |
WO2020115874A1 (ja) | 誤り訂正復号装置および誤り訂正復号方法 |