Please enable JavaScript.
Coggle requires JavaScript to display documents.
Codici rilevatori e correttori(4.1/4.3), Codici di parità (4.2), Codici di…
-
Codici di parità (4.2)
I codici di parità sono quelli in cui la distanza di Hamming è 2 e sono quindi in grado di rilevare solo la presenza di un errore singolo o in generale rilevano l'occorrenza di un numero dispari di errori
alla sequenza di bit si aggiunge un bit di controllo in modo che il numero totale (bit dati + il bit di controllo) di 1 sia pari oppure dispari a seconda del protocollo scelto
Un problema che i codici di parità hanno è che quando l'errore è sul bit di parità, questo comporta il rilevamento di un errore quando, invece, la sequenza dei bit è ricevuta correttamente
Per questi problemi i codici di parità sono limitati all'interno dei computer, un esempio sono i bus PCI e SCSI che usano la parità per trovare errori di trasmissione
Codici di Hamming (4.4)
I codici di Hamming sono codici distanza di Hamming minore o uguale a 3, quindi permettono la correzione automatica degli errori singoli, per individuare la posizione del bit errato si usano in posizioni ben precise i bit di parità, quindi supponiamo che una codeword ( bit dati + bit ridondanti) sia formata da 4 bit di dati e 3 di parità allora la codeword sarà di 7 bit, viene usata questa equazione (2^r -1>= m +r).
In questa tecnica è fondamentale la posizione in cui vengono collocati i bit di check, di solito di bi di parità si aggiungono nelle posizioni corrispondenti alle potenze del 2 partendo da sinistra quindi: b1, b2, b4, b8 ecc.. Ogni bit di parità (o check) correggeranno errori fino al bit di check successivo quindi b1 e b2 controllano fino a b3, mentre b4 controlla fino a b7 e così via.
Bisognerà inserire i bit di dati lasciando libere le posizioni dei bit di check, quindi per 1 totale di una codeword di 15 bit serviranno 4 bit di check, ogni bit di check controlla una serie di bit specifici e non altri per una questione di peso
Perché non possono esistere due numeri diversi con stessi identici pesi, infatti i bit con peso differente individuano univocamente la posizione errata.
Questa tecnica consente solo di correggere solo gli errori singoli non di individuarne di doppi, esistono codici di Hamming, con codeword più lunghe e con + bit di controllo consentono sia la correzione di errori singoli sia la rilevazione di errori doppi, quindi più aumenta la lunghezza della stringa di controllo e più si possono individuare e correggere gli errori questo però peggiora il throughput perché un po' di tempo viene usato per la trasmissione dei bit di controllo
I codici rilevatori vengono usati nei casi in cui è richiesta un 'elevata affidabilità e a collegamenti simplex dove il ricevente non richiede la trasmissione del messaggio ricevuto, sennò in presenza di un errore c'è la ritrasmissione del messaggio