ITBO20110385A1 - Metodo di decodifica di un messaggio codificato con un codice dg-ldpc - Google Patents

Metodo di decodifica di un messaggio codificato con un codice dg-ldpc Download PDF

Info

Publication number
ITBO20110385A1
ITBO20110385A1 IT000385A ITBO20110385A ITBO20110385A1 IT BO20110385 A1 ITBO20110385 A1 IT BO20110385A1 IT 000385 A IT000385 A IT 000385A IT BO20110385 A ITBO20110385 A IT BO20110385A IT BO20110385 A1 ITBO20110385 A1 IT BO20110385A1
Authority
IT
Italy
Prior art keywords
iterations
svn
nodes
code
decoding method
Prior art date
Application number
IT000385A
Other languages
English (en)
Inventor
Oreste Andrisano
Raffaele Soloperto
Original Assignee
Consiglio Nazionale Ricerche
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 Consiglio Nazionale Ricerche filed Critical Consiglio Nazionale Ricerche
Priority to IT000385A priority Critical patent/ITBO20110385A1/it
Publication of ITBO20110385A1 publication Critical patent/ITBO20110385A1/it

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/1148Structural properties of the code parity-check or generator matrix
    • H03M13/1174Parity-check or generator matrices built from sub-matrices representing known block codes such as, e.g. Hamming codes, e.g. generalized LDPC codes
    • 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/1191Codes on graphs other than LDPC codes
    • 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/13Linear codes
    • H03M13/19Single error correction without using particular properties of the cyclic codes, e.g. Hamming codes, extended or generalised Hamming codes

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Selective Calling Equipment (AREA)

Description

DESCRIZIONE
del brevetto per Invenzione Industriale dal titolo:
"METODO DI DECODIFICA DI UN MESSAGGIO CODIFICATO CON UN CODICE DG-LDPC"
La presente invenzione è relativa a un metodo di decodifica di un messaggio codificato con un codice DG-LPDC, ossia un codice a controllo di parità a bassa densità doppiamente generalizzato ("Doubly Generalized Low-Density Parity-Check").
I codici DG-LDPC stanno destando un sempre maggiore interesse nel campo delle telecomunicazioni per essere utilizzati nei moderni sistemi di codifica di canale, in quanto offrono una grande flessibilità e prestazioni quasiottime, in termini di tasso di errore per bit ("bit error rate") (BER) e/o tasso di errore per parola codificata ("codeword error rate") (CER) per un certo rapporto di segnale-rumore ( "Signal-to-Noise ratio") (SNR).
Un codice DG-LDPC è rappresentabile, come noto, tramite un grafo bipartito ("bipartite graph"), altrimenti noto come grafico di Tanner, il quale comprende un numero N di "Super Variable Nodes" (SVNs), indicati generalmente con la sigla SVN, e un numero M di "Super Check Nodes (SCNs), indicati con la sigla SCN. A ciascun nodo SVN o SCN è associato un rispettivo subcodice costituito da un codice a correzione di errore, il quale è caratterizzato da una lunghezza di parola di codice e da una lunghezza di parola di informazione. Ciascun nodo SVN è collegato con alcuni nodi SCN secondo una cosiddetta matrice di adiacenze per lo scambio di informazioni durante il processo di codifica o decodifica di un messaggio o parola di informazione.
Nel processo di codifica, il messaggio da trasmettere viene, prima di tutto, modulato con una modulazione BPSK e, successivamente, separato in una pluralità di porzioni di messaggio (pluralità di gruppi di bit), ciascuna porzione di messaggio venendo alimentata ad un rispettivo nodo SVN per la codifica secondo il rispettivo subcodice. Il messaggio codificato così ottenuto viene poi immesso nel canale di trasmissione.
Nel processo di decodifica, il messaggio ricevuto dal canale di trasmissione viene separato in una pluralità di porzioni di messaggio, le quali vengono alimentate ai rispettivi nodi SVN. La tecnica normalmente utilizzata per decodificare messaggi codificati con un codice DG-LDPC sfrutta un algoritmo chiamato "belief propagation", il quale è basato su di un meccanismo iterativo in cui informazioni relative al messaggio ricevuto vengono elaborate nei nodi SVN e SCN e per calcolare valori di rapporti di verosimiglianza dei bit di parola di codice ed i valori di rapporto di verosimiglianza calcolati vengono scambiati ripetutamente tra i nodi SVN e gli adiacenti nodi SCN. Tale algoritmo prevede una fase di inizializzazione, in cui ciascun nodo SVN calcola, per ciascun bit di parola di codice, un rispettivo primo valore di rapporto di verosimiglianza logaritmico ("Log Likelihood Ratio") sulla base di campioni della porzione di messaggio ricevuto. Successivamente, per ciascuna delle iterazioni, i nodi SVN e SCN compiono le elaborazioni descritte qui di seguito.
Ciascun nodo SCN calcola, per ciascun bit di parola di codice, un rispettivo secondo valore di rapporto di verosimiglianza logaritmico in funzione dei primi valori di rapporto di verosimiglianza logaritmico calcolati dai nodi SVN adiacenti durante la interazione precedente, o nella fase di inizializzazione, e trasmette tale secondo valore ai nodi SVN adiacenti. Ciascun nodo SVN calcola, per ciascun bit di parola di codice, un rispettivo nuovo primo valore di rapporto di verosimiglianza logaritmico in funzione dei secondi valori di rapporto di verosimiglianza logaritmico appena calcolati dai nodi SCN adiacenti, e trasmette il nuovo primo valore ai nodi SCN adiacenti per essere usati alla successiva iterazione. Ciascun nodo SVN calcola, per ciascun bit della rispettiva porzione di messaggio ricevuto, un rispettivo valore di probabilità a posteriori che il bit in questione sia pari a 0 o 1 in funzione dei secondi valori di rapporto di verosimiglianza logaritmico appena calcolati dai nodi SCN adiacenti. A questo punto, viene fatta un "hard decision" sui terzi valori di rapporto di verosimiglianza logaritmico per decodificare i bit del messaggio ricevuto e viene calcolata la sindrome d'errore del messaggio decodificato. Se la sindrome è nulla, significa che è stata decodificata una parola di codice, e quindi termino le iterazioni.
L'algoritmo di decodifica può continuare ad iterare fino ad un numero massimo di iterazioni prestabilito, dopo il quale si ha una ragionevole certezza che il messaggio ricevuto converga al messaggio trasmesso. Normalmente il numero massimo di iterazioni è pari a 100.
La tecnica di decodifica sopra descritta viene applicata anche in fase di valutazione delle prestazioni di un codice DG-LDPC, che comprende una fase di simulazione del codice DG-LDPG al calcolatore. La fase di simulazione serve a stabilire le prestazioni del codice DG-LDPG, sia in termini di BER e/o CER, sia in termini di velocità di convergenza al messaggio trasmesso. Per esempio, tramite la simulazione è possibile stabilire il numero di iterazioni da utilizzare in un decodificatore reale. A tale scopo, il numero massimo di iterazioni da impostare nelle simulazioni è di entità tale per cui le simulazioni possono durare diversi giorni o perfino alcune settimane, utilizzando un personal computer allo stato dell'arte.
Siccome il meccanismo di decodifica che viene ripetuto ad ogni iterazione è molto complesso e oneroso dal punto di vista computazionale, il numero di iterazioni necessario per le simulazioni o il numero di iterazioni prestabilito per un decodificatore reale è tale da comportare tempi di simulazione estremamente lunghi e, rispettivamente, decodificatori piuttosto lenti.
Scopo della presente invenzione è di fornire un metodo di decodifica di un messaggio codificato con un codice DG-LDPC, il quale metodo sia esente dagli inconvenienti sopra descritti e, nello stesso tempo, sia di facile ed economica realizzazione .
In accordo con la presente invenzione viene fornito un metodo di decodifica di un messaggio codificato con un codice DG-LDPC secondo quanto definito nelle rivendicazioni indipendenti allegate.
La presente invenzione verrà ora descritta con riferimento ai disegni annessi, che ne illustrano un esempio di attuazione non limitativo, in cui:
- la figura 1 illustra un grafo bipartito ("bipartite graph") rappresentante un codice DG-LDPC a cui è applicato il metodo di decodifica della presenta invenzione; e
- la figura 2 illustra risultati di simulazione del metodo di decodifica dell'invenzione.
Con riferimento alla figura 1, il codice DG-LDPC comprende un numero N di primi nodi, i quali sono noti come "Super Variable Nodes" e sono indicati con la sigla SVN, e un numero M di secondi nodi, i quali sono noti come "Super Check Nodes" e sono indicati con la sigla SCN. Ciascun nodo SVN comunica con uno o più nodi SCN sulla base di una matrice di adiacenze. I percorsi di comunicazione tra nodi definiti dalla matrice di adiacenze sono indicati con E. Ciascuno dei nodi SVN e SCN è definito da un rispettivo sub-codice costituito, per esempio, da un codice a correzione di errore. Il codice a correzione di errore di ciascun nodo SVN è definito, a sua volta, da rispettivi parametri dv e kv, che rappresentano la lunghezza, in numero di bit, della parola di codice e, rispettivamente, del messaggio o parola di informazione. Analogamente, il codice a correzione di errore di ciascuno nodo SCN è definito da rispettivi parametri de e kc. Il numero di adiacenze di ciascun nodo SVN e SCN è pari al numero di bit della rispettiva parola di codice.
Il numero di bit di informazione da trasmettere è pari alla somma del numero di bit di informazione che tutti i nodi SVN devono gestire, cioè:
kvl kv2 ...+ kvN.
Il messaggio da trasmettere viene modulato con una modulazione BPSK, viene codificato secondo la logica del codice DG-LDPC illustrata dal grafo bipartito della figura 1 e poi viene immesso nel canale di trasmissione.
Il metodo di decodifica prevede di suddividere il messaggio ricevuto, che è costituito da una serie di campioni del segnale ricevuto dal canale di comunicazione, in una pluralità di porzioni di messaggio, cioè una pluralità di gruppi di campioni, pari al numero dei nodi SVN e di alimentare ciascuna porzione di messaggio al rispettivo nodo SVN, ed implementa un algoritmo di "belief propagation" caratterizzato da una procedura iterativa in cui le informazioni del messaggio ricevuto vengono elaborate nei nodi SVN e SCN per calcolare valori di rapporti di verosimiglianza dei bit di parola di codice ed i valori di rapporto di verosimiglianza calcolati vengono scambiati ripetutamente tra i nodi SVN ed i nodi SCN adiacenti, attraverso la matrice di adiacenze, per affinare il calcolo di tali valori, cioè per aumentare la verosimiglianza .
In particolare, il metodo di decodifica comprende una fase di inizializzazione, in cui ciascun nodo SVN (n-esimo nodo SVN) calcola, per ciascun bit di parola di codice del proprio codice (p-esimo bit di parola di codice), un rispettivo valore iniziale di rapporto di verosimiglianza logaritmico ("Log Likelihood Ratio") V<<0)>sulla base dei campioni ricevuti alimentati al nodo SVN medesimo impiegando una formula nota,
m cui:
- yn,jrappresenta il j-esimo campione ricevuto dell'nesimo nodo SVN;
<->cn,j<—>1<—>2bn,j;
bn,jrappresenta il j-esimo bit da trasmettere relativo all'n-esimo nodo SVN, ottenuto decodificando il campione yn,jtramite i codici dell'n-esimo nodo SVN e dei nodi SCN adiacenti all'n-esimo nodo SVN;
- xn,Prappresenta il p-esimo bit di parola di codice del codice dell'n-esimo nodo SVN; e
- No rappresenta la potenza di rumore gaussiano AWGN. Successivamente, in ciascuna delle iterazioni, cioè alla i-esima iterazione, i nodi SVN e SCN compiono le elaborazioni descritte qui di seguito.
Ciascun nodo SCN (m-esimo nodo SCN), calcola, per ciascun bit di parola di codice del proprio sub-codice (qesimo bit di parola di codice), un rispettivo valore di rapporto di verosimiglianza logaritmico U*<11>in funzione dei valori di rapporto di verosimiglianza logaritmico V<<1_1)>calcolati dai nodi SVN adiacenti durante l'iterazione precedente, o nella fase di inizializzazione se è l'iterazione corrente è la prima, impiegando una ulteriore formula nota,
m cui:
Zm,q rappresenta il q-esimo bit di parola di codice del codice dell'm-esimo nodo SCN; e
rappresenta il valore di rapporto di verosimiglianza calcolato, alla iterazione precedente, e ricevuto dal quel nodo SVN adiacente che è associato, mediante la matrice delle adiacenze, al j-esimo bit di parola di codice del codice dell'm-esimo nodo SCN.
Il nodo SCN trasmette il valore U*<11>appena calcolato ai nodi SVN adiacenti. Ciascun nodo SVN (n-esimo nodo SVN) calcola, per ciascun bit di parola di codice del proprio codice (p-esimo bit di parola di codice) , un rispettivo valore di rapporto di verosimiglianza logaritmico V<(l)>in funzione dei valori di rapporto di verosimiglianza logaritmico U*<11>calcolati dai nodi SCN adiacenti durante l'interazione corrente e dei campioni ricevuti yn,j Andrea FIORINI (Iscrizione Albo N.1197/B) alimentati al nodo SVN medesimo, impiegando una ulteriore formula nota,
in cui υ'^η,ί rappresenta il valore di rapporto di verosimiglianza calcolato dal quel nodo SCN che è associato, mediante la matrice delle adiacenze, al j-esimo bit di parola di codice del codice dell'n-esimo nodo SVN. Il nodo SVN trasmette il valore di rapporto di verosimiglianza logaritmico V<(l)>calcolato ai nodi SCN adiacenti per essere usato alla successiva iterazione.
Secondo la presente invenzione, ogni certo numero Ni di iterazioni, ciascun nodo SVN (n-esimo nodo SVN) calcola, per ciascun bit della rispettiva porzione di messaggio ricevuto (k-esimo bit in ingresso all'n-esimo nodo SVN), un valore di probabilità a posteriori che tale bit sia pari a 0 o 1 in funzione dei valori di rapporto di verosimiglianza logaritmico U*<11>calcolati dai nodi SCN adiacenti durante l'ultima iterazione e dei campioni ricevuti alimentati nodo SVN medesimo. Questa probabilità a posteriori è indicata con W<(l)>ed è calcolato tramite una formula nota,
Sempre ogni NI iterazioni, ciascun nodo SVN esegue una "hard decision" sui valori di probabilità a posteriori W<(l)>calcolati per determinare i valori dei bit dell'intero messaggio ricevuto. Più propriamente, se un valore di probabilità a posteriori W<(l)>è maggiore di zero, allora il corrispondente bit ricevuto è 0, altrimenti è 1. A questo punto, viene calcolata la sindrome d'errore dell'intero messaggio ricevuto (controllo di parità). Se la sindrome d'errore è nulla, allora le iterazioni vengono terminate, perché significa che il messaggio ricevuto è una parole di codice del codice DG-LDPC, altrimenti si prosegue con successive NI iterazioni.
Se la sindrome di errore calcolata ogni NI iterazioni è sempre diversa da zero, allora le iterazioni continuano fino ad un numero massimo di iterazioni Nmax .
I numeri NI e Nmax sono prestabiliti in funzione del cosiddetto "Extrinsic Information transfer chart", che viene comunemente chiamato "EXIT chart", del codice DG-LDPC utilizzato. In particolare, il numero Nmax è inversamente proporzionale alla distanza tra le due curve dell'EXIT chart. Vantaggiosamente, Nmax è compreso tra 50 e 100 e il numero NI è compreso tra 1/10 e 1/6 di Nmax.
Secondo una ulteriore forma di attuazione della presente invenzione, il calcolo dei valori di probabilità a posteriori W<(l)>, l'"hard decision" sui valori di probabilità a posteriori W<(l)>calcolati e il calcolo della sindrome di errore vengono eseguiti, invece che ogni NI iterazioni, ad ogni iterazione dopo un certo numero N2 di iterazioni dalla fase di inizializzazione . Se la sindrome d'errore è nulla, allora le iterazioni vengono terminate, altrimenti si ripete il calcolo dei valori di probabilità a posteriori W<(l)>, l'"hard decision" e il calcolo della sindrome di errore alla iterazione successiva. Se la sindrome di errore calcolata ad ogni iterazione successiva alle prime N2 è sempre diversa da zero, allora le iterazioni continuano fino ad un numero massimo di iterazioni Nmax.
Anche il numero N2 è prestabilito in funzione dell'EXIT chart del codice DG-LDPC utilizzato. Vantaggiosamente, il numero N2 è compreso tra 1/5 e 1/3 di Nmax .
Il metodo di decodifica dell'invenzione è facilmente implementabile in un decodificatore reale tramite una rete di porte logiche, cioè nella stessa maniera in cui vengono implementati i metodi di decodifica DG-LDPC noti.
Le prestazioni del metodo di decodifica della presente invenzione sono confermate da risultati di simulazioni. La figura 2 mostra i risultati di simulazioni di decodifica di un particolare codice DG-LPDC per confrontare la velocità di decodifica, in Kilo bit per secondo (Kbps), del metodo di decodifica dell'invenzione con il metodo di decodifica allo stato dell'arte. Nella figura 2, con PRA è indicata la velocità di decodifica del metodo di decodifica allo stato dell'arte, con ST0P1 la velocità di decodifica del metodo di decodifica secondo la prima forma di attuazione dell'invenzione (calcolo della sindrome d'errore ogni NI iterazioni) e con ST0P2 la velocità di decodifica del metodo di decodifica secondo l'altra forma di attuazione dell'invenzione (calcolo della sindrome d'errore ad ogni iterazione, dopo N2 iterazioni) .
Il codice DG-LPDC simulato ha una code rate pari a 0.5 e comprende 500 nodi SVN, ciascuno dei quali è definito da un codice a controllo di parità singola ("single-paritycheck") (SPC) con parametri (7,6), e 500 nodi SCN, ciascuno dei quali è definito da un codice di Hamming con parametri (7,4). Le prestazioni sono state ottenute trasmettendo 1000 parole di codice e fissando un rapporto segnale rumore Eb/NO pari a 1.8 dB, a cui corrisponde una CER pari a 1CT<4>. Le simulazioni sono state fatte usando un personal computer di tipo standard, cioè comprendente una CPU Pentium IV, 3 GHz, ed una RAM di 3 GByte.
I vantaggi del metodo di decodifica dell'invenzione sopra descritto risultano evidenti dalla osservazione della figura 2. Infatti, il metodo di decodifica secondo la forma di attuazione in cui la sindrome d'errore viene calcolata ogni NI iterazioni consente un incremento di velocità di decodifica, rispetto allo stato dell'arte, pari a circa il 50% e il metodo di decodifica secondo la forma di attuazione in cui la sindrome d'errore viene calcolata ogni iterazione dopo N2 iterazioni consente, sempre rispetto allo stato dell'arte, un incremento di velocità di addirittura il 2600%. In altre parole, il metodo di decodifica riduce il numero di elaborazioni fatte dai nodi SVN e SCN ad ogni iterazione, eseguendo alcune delle elaborazioni, cioè il calcolo dei valori di probabilità a posteriori W<(l)>, l'hard decision e il calcolo della sindrome d'errore del messaggio ricevuto, almeno dopo un certo numero NI o N2 di iterazioni.

Claims (6)

  1. RIVENDICAZIONI 1. Metodo di decodifica di un messaggio codificato con un codice DG-LDPC; il codice DG-LDPC comprendendo primi nodi (SVN) alimentati con campioni (yn,j) di rispettive porzioni del messaggio ricevuto e secondi nodi (SCN) comunicanti con i primi nodi (SVN) tramite una matrice di adiacenze (E); ciascuno dei primi e secondi nodi (SVN, SCN) essendo definito da un rispettivo sub-codice; il metodo di decodifica comprendendo e iterando, al massimo per un primo numero (Nmax) non unitario di iterazioni, le fasi: - calcolare, in ciascun nodo (SVN, SCN), valori di rapporto di verosimiglianza (V<(l)>, U*<11>) dei bit di parola di codice del rispettivo sub-codice in funzione di detti campioni (yn,j); e - scambiare, tra i primi nodi (SVN) ed i secondi nodi (SCN) attraverso detta matrice di adiacenze (E), i valori di rapporto di verosimiglianza (V<(l)>, U*<11>) appena calcolati; e comprendendo le ulteriori fasi: - calcolare, in ciascun primo nodo (SVN), valori di probabilità a posteriori (W<(l)>) per i bit della rispettiva porzione di messaggio ricevuto, in funzione dei campioni (yn,j) alimentati a tale primo nodo (SVN) e dei valori di rapporto di verosimiglianza (U*<11>) forniti dai secondi nodi (SCN) tramite la matrice di adiacenze (E); - determinare i valori dei bit del messaggio ricevuto in funzione dei valori di probabilità a posteriori (W<(l)>) calcolati; calcolare la sindrome di errore del messaggio ricevuto e terminare le iterazioni se la sindrome di errore è nulla; il metodo di decodifica essendo caratterizzato dal fatto che dette ulteriori fasi vengono eseguite dopo almeno un secondo numero (NI; N2) di iterazioni, maggiore di uno e inferiore a detto primo numero di iterazioni (Nmax).
  2. 2. Metodo di decodifica secondo la rivendicazione 1, in cui detto primo e secondo numero di iterazioni (Nmax, NI; Nmax; N2) sono prestabiliti in funzione della distanza tra le due curve dell'EXIT chart di detto codice DG-LDPC.
  3. 3. Metodo di decodifica secondo la rivendicazione 1 o 2, in cui dette ulteriori fasi vengono ripetute ogni detto secondo numero di iterazioni (NI).
  4. 4. Metodo di decodifica secondo la rivendicazione 3, in cui detto primo numero di iterazioni (Nmax) è inversamente proporzionale alla distanza tra le due curve dell'EXIT chart di detto codice DG-LDPC e detto secondo numero di iterazioni (NI) è compreso tra 1/10 e 1/6 del primo numero di iterazioni (Nmax).
  5. 5. Metodo di decodifica secondo la rivendicazione 1 o 2, in cui dette ulteriori fasi vengono ripetute ad ogni iterazione dopo detto secondo numero di iterazioni (N2).
  6. 6. Metodo di decodifica secondo la rivendicazione 5 in cui detto primo numero di iterazioni (Nmax) è inversamente proporzionale alla distanza tra le due curve dell'EXIT chart di detto codice DG-LDPC e detto secondo numero di iterazioni (N2) è compreso tra 1/5 e 1/3 del primo numero di iterazioni (Nmax).
IT000385A 2011-06-30 2011-06-30 Metodo di decodifica di un messaggio codificato con un codice dg-ldpc ITBO20110385A1 (it)

Priority Applications (1)

Application Number Priority Date Filing Date Title
IT000385A ITBO20110385A1 (it) 2011-06-30 2011-06-30 Metodo di decodifica di un messaggio codificato con un codice dg-ldpc

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IT000385A ITBO20110385A1 (it) 2011-06-30 2011-06-30 Metodo di decodifica di un messaggio codificato con un codice dg-ldpc

Publications (1)

Publication Number Publication Date
ITBO20110385A1 true ITBO20110385A1 (it) 2012-12-31

Family

ID=44898475

Family Applications (1)

Application Number Title Priority Date Filing Date
IT000385A ITBO20110385A1 (it) 2011-06-30 2011-06-30 Metodo di decodifica di un messaggio codificato con un codice dg-ldpc

Country Status (1)

Country Link
IT (1) ITBO20110385A1 (it)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6182261B1 (en) * 1998-11-05 2001-01-30 Qualcomm Incorporated Efficient iterative decoding
WO2007001305A1 (en) * 2005-06-27 2007-01-04 Thomson Licensing Stopping criteria in iterative decoders

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6182261B1 (en) * 1998-11-05 2001-01-30 Qualcomm Incorporated Efficient iterative decoding
WO2007001305A1 (en) * 2005-06-27 2007-01-04 Thomson Licensing Stopping criteria in iterative decoders

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
MATACHE A ET AL: "Stopping rules for turbo decoders", TMO PROGRESS REPORT, XX, XX, no. 42-142, 15 August 2000 (2000-08-15), pages 1 - 22, XP002225478 *
SOLOPERTO RAFFAELE: "Video Transmission over Wireless Channel", 17 January 2011 (2011-01-17), pages 1 - 44, XP002670798, Retrieved from the Internet <URL:http://www.lia.deis.unibo.it/phd/materials/courses/Seminari%20fine%20terzo%20anno%20XXIII%20ciclo/Raffaele%20Soloperto.pdf> [retrieved on 20120227] *
YIGE WANG ET AL: "Doubly Generalized LDPC Codes", PROC. IEEE INTERNATIONAL SYMPOSIUM ON INFORMATION THEORY, ISIT 2006, SEATTLE, USA, 9 July 2006 (2006-07-09) - 14 July 2006 (2006-07-14), pages 669 - 673, XP031032294, ISBN: 978-1-4244-0505-3 *

Similar Documents

Publication Publication Date Title
US20180357530A1 (en) Deep learning decoding of error correcting codes
Lugosch et al. Neural offset min-sum decoding
Johannesson et al. Fundamentals of convolutional coding
US11057049B2 (en) Generalized low-density parity check codes in digital communication system
CN101345601B (zh) 一种译码方法和译码器
KR101895164B1 (ko) 코드 디코딩 에러 정정 방법 및 장치
EP2392074A1 (en) Encoding and decoding methods for expurgated convolutional codes and convolutional turbo codes
US20230087247A1 (en) Method, system, device and storage medium for constructing base matrix of pbrl ldpc code
CN107968657B (zh) 一种适用于低密度奇偶校验码的混合译码方法
CN110730008B (zh) 一种基于深度学习的rs码置信传播译码方法
CN107979445A (zh) 使用预先排序的输入的基于基本校验节点的校正子解码
CN110113057A (zh) 一种利用深度学习的极化码译码器
Olmos et al. Scaling behavior of convolutional LDPC ensembles over the BEC
CN103199877A (zh) 一种结构化ldpc卷积码构造编码方法
CN106998240A (zh) 一种译码方法及译码器
Li et al. On the error performance of systematic polar codes
KR101307733B1 (ko) 블록 레이어 기반의 비 이진 qc-ldpc 부호의 복호 장치 및 그 방법
ITBO20110385A1 (it) Metodo di decodifica di un messaggio codificato con un codice dg-ldpc
Olmos et al. A finite length performance analysis of LDPC codes constructed by connecting spatially coupled chains
Zhang et al. Spatially-coupled split-component codes with bounded-distance component decoding
CN108199722B (zh) 一种基于矩阵格的bibd-ldpc码构造方法
CN104410428A (zh) 一种基于分时的分组马尔可夫叠加编码的多码率码编码方法
CN113037296A (zh) 一种基于ldpc级联的编译码方法及装置
Wang et al. Neural layered min-sum decoders for cyclic codes
Lechner et al. Optimization of binary LDPC codes for the q-ary symmetric channel with moderate q