TWI517595B - 用於資料傳輸過程中動態解碼之具有ecc資訊的資料結構及用於形成該資料結構的方法 - Google Patents

用於資料傳輸過程中動態解碼之具有ecc資訊的資料結構及用於形成該資料結構的方法 Download PDF

Info

Publication number
TWI517595B
TWI517595B TW103111502A TW103111502A TWI517595B TW I517595 B TWI517595 B TW I517595B TW 103111502 A TW103111502 A TW 103111502A TW 103111502 A TW103111502 A TW 103111502A TW I517595 B TWI517595 B TW I517595B
Authority
TW
Taiwan
Prior art keywords
parity
codeword
segment
message
check
Prior art date
Application number
TW103111502A
Other languages
English (en)
Other versions
TW201537902A (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 TW103111502A priority Critical patent/TWI517595B/zh
Publication of TW201537902A publication Critical patent/TW201537902A/zh
Application granted granted Critical
Publication of TWI517595B publication Critical patent/TWI517595B/zh

Links

Landscapes

  • Error Detection And Correction (AREA)

Description

用於資料傳輸過程中動態解碼之具有ECC資訊的 資料結構及用於形成該資料結構的方法
本發明關於一種具有ECC資訊的資料結構,特別是關於一種用於資料傳輸過程中動態解碼之具有ECC資訊的資料結構及用於形成該資料結構的方法。
錯誤更正碼(Error Correction Code,ECC)能藉由增加某些冗餘資訊,檢查及糾正具有錯誤的訊息。該些錯誤可能產生於由來源到接收器的傳輸過程或由於存儲設備的缺陷所造成。對於儲存設備而言,ECC已被廣泛地採用來增加資料存取的可靠性,並因此減少製造成本。隨著位元密度的增加及閃存設備多層製程的開發,ECC扮演了更重要的角色。然而,為了得到ECC所提供的好處,加密與解密過程的時間將顯著減少了資料存取的時間。
要將訊息一編碼,該訊息要先輸入提供ECC的編碼器中,已編碼過的資料儲存於一閃存記憶體中。傳統上,為了減少等待時間,該訊息會先儲存於閃存記憶體中直到奇 偶校驗位元已如第1圖所示般產生。如此一來,奇偶校驗位元就會於閃存記憶體中加附到該訊息的尾端,如第2圖所繪示。
傳統上,為了要解碼儲存於閃存記憶體裏的資料,送到ECC解碼器中的資料應該與加密過的資料同階。解密流程如第2圖所示。然而,該解密流程在解碼器收到奇偶校驗部分錢沒有辦法開始。此外,用於暫存資料的緩衝器的尺寸也因此要加大。
低密度奇偶校驗(Low-Density Parity Check,LDPC)碼是ECC的一種,可以被用來傳輸資訊經過嘈雜的通訊通道,該通道可以是具有記憶體或者沒有記憶體。LDPC碼可以不同形式的奇偶校驗矩陣來表示,LDPC碼的奇偶校驗矩陣的結構可以是,比如隨機的、循環的或準循環的。由準循環奇偶校驗矩陣界定的LDPC碼是特別常見和具有計算效率,這些碼被稱為準循環低密度奇偶校驗(Quasi-Cyclic Low-Density Parity Check,QC-LDPC)碼。
代表特定LDPC碼的奇偶校驗矩陣可對應於一具有檢查節點與變量節點的二分圖。經演算法藉使用迭代訊息,LDPC解碼器可解碼接收到的碼字。每一迭代運算或子迭代運算包含二個與變量節點及檢查節點相關的更新步驟。在第一更新步驟中,訊息可由某些檢查節點傳到某些變量節點中。在第二更新步驟中,訊息可由某些變量節點傳回某些檢查節點。
依據一層狀的解碼過程,LDPC解碼器可執行上述更新步驟。在該解碼過程中,僅那些需要用於更新特定校驗節點的變量節點可被更新,或僅那些需要用於更新特定變量節點的校驗節點可被更新。
層狀的LDPC解碼器可被用來解碼QC-LDPC碼。對一具有準循環奇偶校驗矩陣的QC-LDPC碼而言,它的特徵在於由循環子矩陣所組成。因為每一循環子矩陣代表一檢查節點與一變量節點間的連結,如果在第一層中的循環子矩陣能首先進行而隨後處理零子矩陣,因為減少了等待時間,解碼程序就能加速。因此,亟需基於這種技術的資料結構與用於形成該資料結構的奇偶校驗矩陣,以便解碼器的吞吐率能增加而輸入緩衝器的需求能減少。
傳統解碼QC-LDPC或LDPC碼字的方法必須在所有訊息都接收後才能進行計算,浪費了不少時間在等待。因此,需要改進的方法以縮短等待的時間。此外,該法也應該要能達到在資料傳輸過程中的動態解碼目的。
因此,依照本發明的一種態樣,一種用於資料傳輸過程中動態解碼之具有ECC資訊的碼字資料結構,包含:一訊息部分,用以攜帶一訊息;一第一奇偶校驗部分,位於該碼字的首端;及一第二奇偶校驗部分,位於該碼字的尾端。 一解碼器於接收到該第一奇偶校驗部分後開始對該碼字進行解碼。
依照本發明的另一種態樣,一種用於資料傳輸過程中動態解碼之具有ECC資訊的碼字資料結構,包含:一第一訊息部分,用以攜帶一部分訊息;一第二訊息部分,用以攜帶另一部分訊息;一第一奇偶校驗部分,位於該第一訊息部分與第二訊息部分間;及一第二奇偶校驗部分,位於該碼字的尾端。一解碼器於接收到該第一奇偶校驗部分後開始對該碼字進行解碼。
依照本發明的又一種態樣,一種用於資料傳輸過程中動態解碼之具有ECC資訊的碼字資料結構,包含:複數個訊息部分;及複數個奇偶校驗部分。該些訊息部分與奇偶校驗部分交錯地配置,一奇偶校驗部分位於該碼字的尾端,一解碼器在首先接收到一奇偶校驗部分後開始對該碼字進行解碼。
依照本發明的再一種態樣,一種用於形成資料傳輸過程中動態解碼之具有ECC資訊的碼字資料結構的方法,包含步驟:劃分具有一訊息段與一奇偶校驗段的一奇偶校驗矩陣為複數層;選擇連接到檢查節點之在一第一層的奇偶校驗段中的奇偶校驗位元節點;組合該被選擇奇偶校驗位元節點為一第一奇偶校驗段及其餘的奇偶校驗位元節點為一第二奇偶校驗段;重置該奇偶校驗矩陣,以便該第一奇偶校驗段位 於該訊息段的首端且該第二奇偶校驗段位於該訊息段的尾端;依照該重置的奇偶校驗矩陣,形成一生成矩陣;及以該生成矩陣運算一訊息以獲得該碼字。
又本發明的再一態樣,一種用於形成資料傳輸過程中動態解碼之具有ECC資訊的碼字資料結構的方法,包含步驟:劃分具有一訊息段與一奇偶校驗段的一奇偶校驗矩陣為複數層;選擇連接到檢查節點之在一第一層的奇偶校驗段中的奇偶校驗位元節點;組合該被選擇奇偶校驗位元節點為一第一奇偶校驗段及其餘的奇偶校驗位元節點為一第二奇偶校驗段;劃分該訊息段為一第一訊息段與一第二訊息段;重置該奇偶校驗矩陣,以便該第一奇偶校驗段位於該第一訊息段與該第二訊息段間且該第二奇偶校驗段位於該第二訊息段的尾端;依照該重置的奇偶校驗矩陣,形成一生成矩陣;及以該生成矩陣運算一訊息以獲得該碼字。
依照本案構想,該碼字為一準循環低密度奇偶校驗碼字。連接到檢查節點之在一第一層的奇偶校驗段中的奇偶校驗位元節點為單位子矩陣及/或單位子矩陣的循環子矩陣。未連接到檢查節點之在一第一層的奇偶校驗段中的奇偶校驗位元節點為零子矩陣。
因為解碼器能在第一奇偶校驗部分收到後就開始對該碼字進行解碼,只要第一奇偶校驗部分能被安置於較原始奇偶校驗部分更移前的位置,用在解碼的等待時間可以 縮短。此外,在資料傳輸過程中動態解碼能因而達成。
第1圖顯示傳統錯誤更正碼(ECC)的編碼流程。
第2圖顯示傳統ECC完整的解碼流程。
第3圖為依照本發明的第一實施例,用於形成在資料傳輸過程中達成動態解碼之碼字資料結構的方法流程圖。
第4圖說明一奇偶校驗矩陣與對應碼字的資料結構。
第5圖說明一應用本發明的奇偶校驗矩陣與對應碼字的資料結構。
第6圖顯示說明於第4圖與第5圖的校驗節點矩陣間,第一檢查節點的Tanner圖之比較。
第7圖說明傳統方法與本發明開始解碼的時間點。
第8圖為依照本發明的第二實施例,用於形成在資料傳輸過程中達成動態解碼之碼字資料結構的方法流程圖。
第9圖顯示說明於第二實施例中的資料結構。
第10圖說明傳統方法與本發明開始解碼的時間點。
本發明將藉由參照下列的實施例而更具體地描述。
第一實施例
請參閱第3圖至第7圖,第一實施例藉由該些圖式 說明。依照本發明的精神,如果一碼字的資料結構能在資料傳輸過程中達成動態解碼,該資料結構應該要被重置,本發明的資料結構關於其生成矩陣與奇偶校驗矩陣。因此,在開始說明本發明前,先介紹傳統的奇偶校驗矩陣與對應的矩陣結構。
請見第4圖。用於解碼一層狀QC-LDPC碼字的傳統奇偶校驗矩陣包含兩段:一訊息段與一奇偶校驗段。為了簡化描述說明,傳統奇偶校驗矩陣稱為“原始”奇偶校驗矩陣,以便與應用本發明而改變的奇偶校驗矩陣做出區別。很顯然,在這實施例中,原始奇偶校驗矩陣能被劃分成6層。每一層也具有訊息段與奇偶校驗段。更詳細地來說,訊息段與奇偶校驗段能進一步分成數個子矩陣。原始奇偶校驗矩陣具有96個子矩陣,分置於6列與16行中。該原始奇偶校驗矩陣的第一層由虛線方框所包圍,訊息段有10個子矩陣,奇偶校驗段有6個子矩陣。因為原始奇偶校驗矩陣是稀疏矩陣,子矩陣是以零矩陣(零子矩陣)、單位矩陣(單位子矩陣)及/或單位矩陣的循環矩陣(循環子矩陣)形式存在。如果子矩陣包含訊息,它會被標示(訊息段以垂直線標示、奇偶校驗段以水平線標示)以與零子矩陣區分。
此處,子矩陣是p x p的矩陣。數字p可以是64、128或更多。應當注意,以上提到的數目僅僅是示例性的。實作上,該數字將大於以上所揭露者。
該資料結構能由使用自原始奇偶校驗矩陣而來的一生成矩陣而形成,並顯示於原始奇偶校驗矩陣的上方。該資料結構包含一訊息部分與一奇偶校驗部分。可以很清楚地看到有第一層奇偶校驗段的奇偶校驗位元節點連結到檢查節點。它們是一單位子矩陣或該單位子矩陣的循環子矩陣。奇偶校驗位元節點被實線方框所包圍。反之,它們為零子矩陣。有二個奇偶校驗位元節點連接到檢查節點。
開始進行本發明的描述,請同時參閱第3圖、第4圖與第5圖。第3圖為依照本發明的第一實施例,用於形成在資料傳輸過程中達成動態解碼之碼字資料結構的方法流程圖。第5圖為一應用本發明的奇偶校驗矩陣與對應碼字的資料結構。為了區分以上二校驗節點矩陣,應用本發明的奇偶校驗矩陣稱作“修正”奇偶校驗矩陣。
首先,劃分繪示於第4圖的原始奇偶校驗矩陣為數個層(S11),該原始奇偶校驗矩陣具有一訊息段與一奇偶校驗段。此處,一共有6層。接著,選擇連接到檢查節點在一第一層的奇偶校驗段中的奇偶校驗位元節點(S12)。在該奇偶校驗位元節點被選擇後,組合該被選擇的奇偶校驗位元節點為一第一奇偶校驗段(第5圖中為實線方框所包圍者),其餘奇偶校驗位元節點為一第二奇偶校驗段(S13)。接著,重置該原始奇偶校驗矩陣,以便第一奇偶校驗段位於該訊息段的首端,第二奇偶校驗段位於該訊息段的尾端(S14)。很明 顯的該原始奇偶校驗矩陣已轉變為修正奇偶校驗矩陣。接著,依照該重置的(修正)奇偶校驗矩陣形成一生成矩陣(S15)。最後,以該生成矩陣運算一訊息以獲得該碼字(S16)。如此一來,就可以得到用於在資料傳輸過程中達成動態解碼之碼字資料結構。
請見第5圖的上半部。新的格式具有一第一奇偶校驗部分、一第二奇偶校驗部分與一訊息部分。第一奇偶校驗部分位於碼字首端。第二奇偶校驗部分位於碼字尾端。用於攜帶訊息的訊息部分介於第一奇偶校驗部分與第二奇偶校驗部分間。請見第6圖,該圖描繪原始奇偶校驗矩陣第一檢查節點的Tanner圖,該Tanner圖經重置後已轉變為下方修正奇偶校驗矩陣的Tanner圖。解碼器能在接收第一奇偶校驗部分後隨即解碼該碼字。請見第7圖。對於傳統解碼QC-LDPC或LDPC碼字的方法而言,其解碼器應由t1開始解碼。然而,對於攜帶相同訊息但使用新格式的一重置的QC-LDPC或LDPC碼字而言,對應的解碼器能由t2開始解碼。t2早於t1,以致依照本發明的解碼過程,其時間可以縮短。這優點是傳統解碼方法所沒辦法提供的。
第二實施例
依照本發明,第一實施例中的第一奇偶校驗段不僅可以置於訊息段首端,它也能在訊息段“中”,該方式提供於第二實施例,請參閱第8圖至第10圖。
以第4圖中第一實施例的原始奇偶校驗矩陣為例,用於說明本實施例。所有結構亦由第一實施例繼承至此。
請見第8圖。本方法一開始先劃分具有訊息段與奇偶校驗段的原始奇偶校驗矩陣為數層(S21)。本實施例中也是6層。選擇連接到檢查節點之在一第一層的奇偶校驗段中的奇偶校驗位元節點(S22)。在奇偶校驗位元節點被選擇後,組合該被選擇的奇偶校驗位元節點為一第一奇偶校驗段,其餘奇偶校驗位元節點為一第二奇偶校驗段(S23)。上述步驟和第一實施例所揭露的相似。不同的是該訊息段被劃分為一第一訊息段與一第二訊息段(S24)。奇偶校驗矩陣被重置,以便第一奇偶校驗段位於第一訊息段與第二訊息段間,第二奇偶校驗段位於第二訊息段的尾端(S25)。接著,依照該重置的奇偶校驗矩陣形成一生成矩陣(S26)。最後,以該生成矩陣運算一訊息以獲得該碼字(S27)。
從第9圖與第一實施例對應的解說,常人能了解新的資料結構能具有依序包含一第一訊息部分、一第一奇偶校驗部分、一第二訊息部分及一第二奇偶校驗部分的結構。第一訊息部分攜帶一部份的訊息,第一奇偶校驗部分介於第一訊息部分與第二訊息間。亦即,第一奇偶校驗部分介於訊息段間。第二訊息部分攜帶另一部分的訊息,並接著連接該第二奇偶校驗部分。
如同第一實施例所述,解碼器在接收第一奇偶校驗部分後開始解碼該碼字。請見第10圖,再一次比較依照本實施例與傳統方法的解碼速度。對於用來解碼QC-LDPC或LDPC碼字的傳統方法來說,該解碼器應由t1開始解碼。對於攜帶相同訊息但使用新格式的一重置的QC-LDPC或LDPC碼字而言,對應的解碼器能由t3開始解碼。t3也早於t1,以致依照本發明的解碼過程,其時間可以縮短。然而,比較於第一實施例的t2,t3落後於t2。這意味著第一奇偶校驗段的位置將導致不同解碼碼字的開啟時間。較佳的是將第一奇偶校驗段置於訊息段首端。
從上面的描述中推斷,可以得知具有數個訊息部分與奇偶校驗部分的碼字,技術上是可以獲得的,而該些訊息部分與奇偶校驗部分是相互參雜的。只要某一奇偶校驗部分位於碼字的尾端,解碼器在接收到第一個奇偶校驗部分後就能開始解碼該碼字。然而,這樣的格式可能會占用較多的資源來運算,相較於第一及第二實施例,比較不實用。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。

Claims (14)

  1. 一種用於資料傳輸過程中動態解碼之具有ECC資訊的碼字資料結構,包含:一訊息部分,用以攜帶一訊息;一第一奇偶校驗部分,位於該碼字的首端;及一第二奇偶校驗部分,位於該碼字的尾端,其中一解碼器於接收到該第一奇偶校驗部分後開始對該碼字進行解碼。
  2. 如申請專利第1項所述之碼字資料結構,其中該碼字為一準循環低密度奇偶校驗碼字。
  3. 一種用於資料傳輸過程中動態解碼之具有ECC資訊的碼字資料結構,包含:一第一訊息部分,用以攜帶一部分訊息;一第二訊息部分,用以攜帶另一部分訊息;一第一奇偶校驗部分,位於該第一訊息部分與第二訊息部分間;及一第二奇偶校驗部分,位於該碼字的尾端,其中一解碼器於接收到該第一奇偶校驗部分後開始對該碼字進行解碼。
  4. 如申請專利第3項所述之碼字資料結構,其中該碼字為一準循環低密度奇偶校驗碼字。
  5. 一種用於資料傳輸過程中動態解碼之具有ECC資訊的碼字資料結構,包含:複數個訊息部分;及複數個奇偶校驗部分,其中該些訊息部分與奇偶校驗部分交錯地配置,一奇偶校驗部分位於該碼字的尾端,一解碼器在首先接收到一奇偶校驗部分後開始對該碼字進行解碼。
  6. 如申請專利第5項所述之碼字資料結構,其中該碼字為一準循環低密度奇偶校驗碼字。
  7. 一種用於形成資料傳輸過程中動態解碼之具有ECC資訊的碼字資料結構的方法,包含步驟:劃分具有一訊息段與一奇偶校驗段的一奇偶校驗矩陣為複數層;選擇連接到檢查節點之在一第一層的奇偶校驗段中的奇偶校驗位元節點;組合該被選擇奇偶校驗位元節點為一第一奇偶校驗段及其餘的奇偶校驗位元節點為一第二奇偶校驗段;重置該奇偶校驗矩陣,以便該第一奇偶校驗段位於該訊息段的首端且該第二奇偶校驗段位於該訊息段的尾端;依照該重置的奇偶校驗矩陣,形成一生成矩陣;及以該生成矩陣運算一訊息以獲得該碼字。
  8. 如申請專利第7項所述之方法,其中該碼字為一準循環低密度奇偶校驗碼字。
  9. 如申請專利第7項所述之方法,其中連接到檢查節點之在一第一層的奇偶校驗段中的奇偶校驗位元節點為單位子矩陣及/或單位子矩陣的循環子矩陣。
  10. 如申請專利第7項所述之方法,其中未連接到檢查節點之在一第一層的奇偶校驗段中的奇偶校驗位元節點為零子矩陣。
  11. 一種用於形成資料傳輸過程中動態解碼之具有ECC資訊的碼字資料結構的方法,包含步驟:劃分具有一訊息段與一奇偶校驗段的一奇偶校驗矩陣為複數層;選擇連接到檢查節點之在一第一層的奇偶校驗段中的奇偶校驗位元節點;組合該被選擇奇偶校驗位元節點為一第一奇偶校驗段及其餘的奇偶校驗位元節點為一第二奇偶校驗段;劃分該訊息段為一第一訊息段與一第二訊息段;重置該奇偶校驗矩陣,以便該第一奇偶校驗段位於該第一訊息段與該第二訊息段間且該第二奇偶校驗段位於該第二訊息段的尾端;依照該重置的奇偶校驗矩陣,形成一生成矩陣;及以該生成矩陣運算一訊息以獲得該碼字。
  12. 如申請專利第11項所述之方法,其中該碼字為一準循環低密度奇偶校驗碼字。
  13. 如申請專利第11項所述之方法,其中連接到檢查節點之在一第一層的奇偶校驗段中的奇偶校驗位元節點為單位子矩陣及/或單位子矩陣的循環子矩陣。
  14. 如申請專利第11項所述之方法,其中未連接到檢查節點之在一第一層的奇偶校驗段中的奇偶校驗位元節點為零子矩陣。
TW103111502A 2014-03-27 2014-03-27 用於資料傳輸過程中動態解碼之具有ecc資訊的資料結構及用於形成該資料結構的方法 TWI517595B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW103111502A TWI517595B (zh) 2014-03-27 2014-03-27 用於資料傳輸過程中動態解碼之具有ecc資訊的資料結構及用於形成該資料結構的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW103111502A TWI517595B (zh) 2014-03-27 2014-03-27 用於資料傳輸過程中動態解碼之具有ecc資訊的資料結構及用於形成該資料結構的方法

Publications (2)

Publication Number Publication Date
TW201537902A TW201537902A (zh) 2015-10-01
TWI517595B true TWI517595B (zh) 2016-01-11

Family

ID=54851041

Family Applications (1)

Application Number Title Priority Date Filing Date
TW103111502A TWI517595B (zh) 2014-03-27 2014-03-27 用於資料傳輸過程中動態解碼之具有ecc資訊的資料結構及用於形成該資料結構的方法

Country Status (1)

Country Link
TW (1) TWI517595B (zh)

Also Published As

Publication number Publication date
TW201537902A (zh) 2015-10-01

Similar Documents

Publication Publication Date Title
US10320419B2 (en) Encoding method, decoding method, encoding device and decoding device for structured LDPC
WO2017194013A1 (zh) 纠错编码方法及装置
US9577675B1 (en) System and method for encoding user data with low-density parity-check codes with flexible redundant parity check matrix structures
WO2017080249A1 (zh) 生成用于在信道中传输的低密度奇偶校验码的方法及设备
US8880976B2 (en) Method and apparatus for encoding LBA information into the parity of a LDPC system
US9077378B2 (en) Integrated-interleaved low density parity check (LDPC) codes
CN113612486B (zh) 一种构建pbrl ldpc码的基矩阵方法、系统、装置及存储介质
WO2015135298A1 (zh) 一种支持低码率编码的方法及装置、计算机存储介质
US9473173B2 (en) Method for early terminating decoding processes of serial concatenated coding and decoder using the same
TWI580197B (zh) 低密度奇偶檢查碼之編解碼方法
JP2007166605A (ja) パリティ検査行列、パリティ検査行列の生成方法、エンコーディング方法及びエラー訂正装置
KR20090041224A (ko) 연접 디코더 및 연접 디코딩 방법
JP4832447B2 (ja) チャネルコードを用いた復号化装置及び方法
US9548761B2 (en) Coding and decoding of error correcting codes
WO2019096184A1 (zh) 阶梯码的解码方法、装置及存储介质
US9015548B2 (en) Error detection correction method and semiconductor memory apparatus
US20160049962A1 (en) Method and apparatus of ldpc encoder in 10gbase-t system
US9350388B2 (en) Data format with ECC information for on-the-fly decoding during data transfer and method for forming the data format
CN105556852A (zh) 用于共享公共硬件资源的不同的低密度奇偶校验(ldpc)码的低密度奇偶校验编码
US20160154697A1 (en) Error correction coding with high-degree overlap among component codes
CN107733441B (zh) 编码方法及装置、译码方法及装置
TWI517595B (zh) 用於資料傳輸過程中動態解碼之具有ecc資訊的資料結構及用於形成該資料結構的方法
KR101484066B1 (ko) 엘디피시 부호의 디코딩 방법
WO2018126914A1 (zh) 准循环低密度奇偶校验码的编码方法及装置、存储介质
JP6629073B2 (ja) 符号化装置、半導体チップ及び符号化プログラム