Comprendere il ruolo dei codici LDPC in 5G NR

I codici a basso tasso di densità di Parity-Check (LDPC) sono stati adottati come schema di codifica del canale per i canali di dati in 5G Nuova Radio (NR), sostituendo i codici turbo utilizzati in 4G LTE. Questa transizione è stata guidata da LDPC codici superiori di errore-correzione prestazioni ad alti tassi di codice e il loro parallelismo intrinseco, che consente di decodifica ad alta velocità, un requisito per 5G bit potenziato banda larga (eDPB)

Le sfide chiave dell'hardware nell'implementazione del decoder LDPC

1. Complessità e utilizzo delle risorse

L'area di elaborazione di file di dati è in genere eseguita utilizzando algoritmi di monitoraggio iterativo, più comunemente l'algoritmo di propagazione delle credenze (BP), ogni iterazione richiede l'aggiornamento dei nodi di controllo (CN) e dei nodi variabili (VN) scambiando messaggi di probabilità lungo i bordi del grafico Tanner.

Un'altra sfida di risorse deriva dalla precisione dei messaggi interni. L'aritmetica a punto di galleggiamento è impraticabile per l'hardware a bassa potenza; invece, le rappresentazioni a punto fisso con 4-8 bit per messaggio sono comuni. Tuttavia, riducendo gli errori di quantizzazione della larghezza di bit, potenzialmente degradanti le prestazioni di correzione degli errori.

2. Consumo di energia

LDPC decoder, per loro natura iterativa, consuma energia proporzionale al numero di iterazioni e l'attività di commutazione nelle unità di elaborazione e nella memoria. Un decoder tipico può avere bisogno di 10-20 iterazioni per convergere a bassi rapporti segnale-rumore (SNR). Durante il funzionamento del picco di potenza, il processore di decoder può dominare il bilancio della banda di base.

Ridurre la potenza di memoria richiede tecniche come il gating dell'orologio, la lettura/soppressione della lettura per i nodi di controllo convergenti precoce, e le librerie multi-Vt per le celle di bassa lettura. L'alimentazione di leakage, mentre più piccolo a nodi avanzati (7nm e sotto), diventa proporzionalmente più significativo durante i periodi di chiusura del bilancio.

Inoltre, l'algoritmo stesso influenza la potenza. L'algoritmo di somma-prodotto (SPA) offre le migliori prestazioni ma comporta funzioni iperboliche di costo computazionale. La maggior parte delle implementazioni hardware utilizzano l'approssimazione del min-sum (MS) o le sue varianti (offset min-sum, normalized min-sum) per sostituire gli aggiornamenti di check-node con operazioni di comparazione e selezione più semplici.

3. Potenza e Latency

5G NR mira a raggiungere i massimi livelli di dati di 20 Gbps per downlink e 10 Gbps per uplink. Per raggiungere tale throughput, un decoder LDPC deve elaborare un nuovo blocco di codice ogni poche centinaia di nanosecondi. Latenza, soprattutto per le comunicazioni a bassa latenza (URLLC), deve essere sull'ordine di decine di microsecondi.

Il concetto di "multaneo" (in inglese) è aumentato attraverso l'elaborazione di più iterazioni in modo conduttivo, ma il pipelining introduce un overhead di latenza pari al numero di fasi di pipeline volte il periodo di clock.

4. Congestione di memoria e di routine

I decodificatori a LDPC sono a carico della memoria. Ogni iterazione richiede la memorizzazione dei LLR, dei messaggi VN-to-CN, dei messaggi CN-to-VN e a volte dei valori a posteriori. Per un blocco di codice di lunghezza N] = 26144 bit (massimo per BG1) e messaggi a 8 bit, il requisito di memoria supera 200 KB per iterazione

5. Flessibilità e supporto multi-standard

I dispositivi 5G devono supportare una vasta gamma di tassi di codice (da 1/3 a 8/9) e bloccare le dimensioni tramite le versioni di corrispondenza e ridondanza dei tassi (RV) per la richiesta di ripetizione automatica ibrida (HARQ). L'hardware decoder deve ospitare diversi fattori di sollevamento e grafici di base senza una sostanziale perdita di prestazioni.

Strategie per superare le sfide hardware

1. Architetture parallele e pipelined

La scelta del programma di decodifica ha un impatto profondo sull'efficienza hardware. La programmazione a inondazione aggiorna tutti i nodi di controllo simultaneamente, massimizzando il parallelismo ma richiedendo doppio buffering dei messaggi e conduce ad alta larghezza di banda di memoria. La decodifica a strati (chiamato anche "squadramento a righe" o "classificazione verticale") elabora una riga della matrice di controllo di parità alla volta, permettendo il riutilizzo immediato dei messaggi aggiornati e la convergenza più rapida (Grittura).

Per i codici LDPC quasi-ciclici, un approccio comune è quello di istantanare unità di elaborazione Z (CNU e VNU) e utilizzare una rete di spostamento per allineare i messaggi secondo i turni ciclici specificati nella matrice di base.

Per esempio, un CNU può avere un pipeline di 3 stadi: messaggi di lettura, valori minimi di calcolo e risultati di scrittura. La profondità del gasdotto deve essere contabilizzata per nella programmazione per evitare rischi di dati. In decodifica a strati, il trattamento di strati consecutivi può essere sovrapposto se la struttura di memoria permette di leggere e scrivere allo stesso indirizzo, una tecnica nota come [Flascio di lettura]

2. Ottimizzazione algoritmica e aritmetica

Molti progetti utilizzano 6-8 bit per LLR e 4-6 bit per messaggi interni. L'algoritmo di minimo consumo e i suoi derivati (offset min-sum, normalized min-sum) sono quasi universali a causa della loro bassa complessità. Per esempio, compensare il minimo-sum sottrae un piccolo costante (tipicamente 0.5 in punto fisso).

Le tecniche di terminazione anticipata si fermano a decodificare quando viene rilevata una parola di codice valida (utilizzando il controllo della sindrome) o quando i messaggi sono convergenti. Ciò riduce la potenza media e la latenza, soprattutto all'alto SNR dove solo una o due iterazioni possono essere sufficienti.

Un'altra ottimizzazione è l'uso di decodifica autocorretta[] o [] approcci basati sulla affidabilità[[[[]]]], che soppongono messaggi inaffidabili per migliorare la convergenza e ridurre il numero di iterazioni.

3. Tecniche di gestione del potere

Tensione dinamica e scalatura di frequenza (DVFS) permette al decoder di operare a una frequenza di tensione e di clock inferiore quando il dispositivo non è in modalità di picco di throughput, riducendo drasticamente la potenza dinamica. Poiché la struttura del telaio 5G NR comprende slot con velocità di dati variabili, il decoder può essere messo in uno stato di bassa potenza durante i simboli di idle.

All'interno del decoder, il gating dell'orologio viene applicato a livello dell'unità di elaborazione: quando un nodo di controllo o un nodo variabile si aggiorna, il suo orologio può essere disabilitato per il resto dell'iterazione. Allo stesso modo, le banche di memoria che non sono accessibili possono essere messe in modalità di sonno tramite il gating di potenza di ritenzione.

4. Riutilizzo della memoria e compressione

La compressione della rappresentazione della matrice di controllo di parità può ridurre i requisiti di archiviazione. Per i codici quasi-ciclici, solo i valori di spostamento ciclico devono essere memorizzati, non la matrice completa, salvando l'area ROM significativa. Per i messaggi di nodo variabili, la quantizzazione incrementale e lo storage delta possono ridurre il numero di bit di memoria per messaggio di 1–2 bit con perdita di prestazioni trascurabili.

Il programma di decodifica a strati riduce in modo intrinseco i requisiti di memoria perché solo un livello di valore di messaggi CN-to-VN deve essere memorizzato in qualsiasi momento, a differenza di programmazione inondata che richiede lo stoccaggio per tutti i bordi. Combinato con gli aggiornamenti in-place della memoria LLR a posteriori, decodificatori strati di solito hanno bisogno di 50% in meno di memoria rispetto ai decodi inondati.

5. Disegni riconfigurabili e multi-modifica

Per supportare la gamma completa di parametri di codice 5G, i progettisti spesso implementano un'architettura riconfigurabile in cui la selezione del grafico di base, il fattore di sollevamento e il numero di iterazioni sono programmabili tramite registri di controllo. Le unità di elaborazione sono progettate per gestire la dimensione massima del sotto-blocco (Z=384), e per unità di scrittura più piccole Z, non utilizzate sono alimentate.

Alcuni progetti avanzati incorporano un decoder multi-mode che può gestire sia LDPC che codici polari (utilizzati per i canali di controllo in 5G). Questo riutilizzo di unità aritmetiche salva l'area, ma aggiunge la complessità nella pianificazione e nel controllo.

Algoritmi avanzati e le loro implicazioni hardware

Mentre il minimo-sum standard è adeguato per molti scenari, i ricercatori continuano a sviluppare algoritmi migliorati che offrono migliori prestazioni-complessità trade-off. I sistemi di calcolo multi-bit compensato del min-sum regolano dinamicamente l'offset in base alle condizioni del canale, che richiedono un piccolo tavolo di ricerca.

Per esempio, l'aggiunta di un moltiplicatore per la scalata in un min-sum normalizzato può raddoppiare l'area di un CNU rispetto ad una semplice unità di consumo di energia. I vantaggi nella riduzione dell'iterazione devono superare il costo dell'hardware. Molti disegni commerciali si attaccano con il minimo-sum compensato a causa del suo favorevole trade-off.

Tendenze future e oltre 5G

Mentre 3GPP si evolve verso 5G-Advanced e 6G, le richieste sui decoder LDPC aumenteranno. Le connessioni a banda più elevate (mmWave, sub-THz) e i nuovi casi di utilizzo come il rilevamento integrato e la comunicazione richiederanno decodificatori con il throughput superiore a 100 Gbps.

Un'altra tendenza è l'utilizzo di flussi di design altamente automatizzati: la sintesi di alto livello (HLS) dai modelli C++ consente una più rapida esplorazione dei trade-off architettonici. Tuttavia, la RTL ottimizzata a mano domina ancora i progetti di produzione per la massima efficienza.

Infine, l'adozione di codici LDPC oltre 5G, come per la comunicazione satellitare e reti di spazio profondo, continuerà a guidare innovazioni nelle implementazioni di decoder a bassa potenza e ad alta capacità .

Conclusioni

L'implementazione di decodificatori LDPC per dispositivi 5G è una sfida multiforme che richiede un'attenta co-design di algoritmi e hardware. Complessità, potenza, throughput, memoria e flessibilità tutti interagiscono in uno spazio di progettazione contrattato. Attraverso l'uso di decodifica a strati, ottimizzato aritmetico, gestione avanzata di energia e dati riconfigurabili, gli ingegneri hanno sviluppato decodificatori che soddisfano gli obiettivi ambizionativi di 5GR.

Per ulteriori informazioni sullo standard 5G NR LDPC, fare riferimento alla specifica 3GPP TS 38.212]. Un'indagine dettagliata delle architetture decoder LDPC può essere trovata in questo documento IEEE]. Un esempio di un decoder a basso potere strati è presentato in [[FLT]