codifica | decodifica | compressione

> hamming | (7,4) | ecc <

// Codice di Hamming – Codice di correzione degli errori per una trasmissione dati affidabile

[CORREZIONE]

Correzione degli errori

Rileva e corregge automaticamente gli errori a singolo bit nei dati.

[RILEVAMENTO]

Rilevamento errori doppi

Può rilevare (ma non correggere) errori a due bit in ogni blocco.

[EFFICIENTE]

Overhead minimo

Solo 3 bit di parità per ogni 4 bit di dati (efficienza del 75%).

>> dettagli tecnici

Come funziona il codice Hamming:

Il codice Hamming(7,4) aggiunge 3 bit di parità a ogni gruppo di 4 bit di dati, creando blocchi da 7 bit. I bit di parità sono posizionati in posizioni che sono potenze di 2 (1, 2, 4). Quando si verificano errori, la sindrome (risultato del controllo di parità) indica direttamente la posizione del bit errato.

Struttura Hamming(7,4):

Dati: 1011 (4 bit) Posizioni: P1 P2 D1 P3 D2 D3 D4 Hamming: 1 0 1 1 0 1 1 P1 = D1 ⊕ D2 ⊕ D4 = 1 ⊕ 0 ⊕ 1 = 0 P2 = D1 ⊕ D3 ⊕ D4 = 1 ⊕ 1 ⊕ 1 = 1 P3 = D2 ⊕ D3 ⊕ D4 = 0 ⊕ 1 ⊕ 1 = 0

Perché usare il codice Hamming:

  • >Correzione degli errori in memoria
  • >Comunicazioni satellitari
  • >Sistemi di archiviazione dati
  • >Trasmissione di rete
  • >Array RAID

>> domande frequenti

Che cos’è il codice Hamming?

Il codice Hamming è un codice di correzione degli errori inventato da Richard Hamming nel 1950. Aggiunge bit di parità ai dati per consentire il rilevamento e la correzione automatica degli errori a singolo bit.

Cosa significa (7,4)?

Hamming(7,4) significa 7 bit totali con 4 bit di dati e 3 bit di parità. Può correggere qualsiasi errore a singolo bit nel blocco di 7 bit. Altre varianti includono (15,11) e (31,26).

Come funziona la correzione degli errori?

Alla ricezione dei dati, i bit di parità vengono ricalcolati. Se non corrispondono, la sindrome (la differenza) indica direttamente quale bit è errato. L’errore viene corretto invertendo quel bit.

Hamming rispetto ad altri codici ECC?

Il codice Hamming è semplice ed efficiente per errori a singolo bit. Codici più complessi come Reed-Solomon possono correggere errori multipli ma con maggior overhead. Hamming è perfetto per canali a bassa rumorosità.

Altre lingue