> hamming | (7,4) | ecc <

// Hamming-kode – fejlrettelseskode til pålidelig datatransmission

[KORRECTION]

Fejlkorrektion

Registrerer og retter automatisk enkelt-bit-fejl i data.

[DETEKTION]

Detektion af dobbeltfejl

Kan registrere (men ikke rette) fejl på to bit i hver blok.

[EFFEKTIV]

Minimal overhead

Kun 3 paritetsbit for hver 4 databits (75 % effektivitet).

>> teknisk info

Sådan fungerer Hamming-kode:

Hamming(7,4)-koden tilføjer 3 paritetsbit til hver 4 databits og danner blokke på 7 bit. Paritetsbittene placeres på positioner, der er potenser af 2 (1, 2, 4). Når der opstår fejl, peger syndromet (resultatet af paritetskontrollen) direkte på den bit, der er fejl i.

Hamming(7,4)-struktur:

Data: 1011 (4 bit) Positioner: 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

Hvorfor bruge Hamming-kode:

  • >Fejlkorrektion i hukommelse
  • >Satellitkommunikation
  • >Databaseskyttelsessystemer
  • >Netværksoverførsel
  • >RAID-arrays

>> ofte stillede spørgsmål

Hvad er Hamming-kode?

Hamming-kode er en fejlrettelseskode opfundet af Richard Hamming i 1950. Den tilføjer paritetsbit til data, så enkelt-bit-fejl kan registreres og rettes automatisk.

Hvad betyder (7,4)?

Hamming(7,4) betyder 7 bit i alt med 4 databits og 3 paritetsbit. Koden kan rette enhver enkelt-bit-fejl i 7-bit-blokken. Andre varianter omfatter (15,11) og (31,26).

Hvordan fungerer fejlkorrektion?

Når data modtages, beregnes paritetsbittene på ny. Hvis de ikke stemmer, angiver syndromet (forskellen) direkte, hvilken bit der er forkert. Fejlen rettes ved at vende den bit.

Hamming vs. andre ECC-koder?

Hamming-kode er enkel og effektiv til enkelt-bit-fejl. Mere komplekse koder som Reed–Solomon kan rette flere fejl, men med større overhead. Hamming er ideel til kanaler med lav støj.

Andre sprog