Jumat, 03 Mei 2019

Penjelasan Even Parity dan Odd Parity

Bit parity merupakan bilangan biner yang ditambahkan untuk meyakinkan bahwa jumlah bit yang dikirimkan mempunyai angka satu yang selalu genap atau ganjil. Ada dua varian bit parity, yaitu even parity bit dan odd parity bit.
Even parity bit diset ke 1 jika jumlah angka 1 yang dikirimkan berjumlah ganjil (berarti membuat total angka 1 berjumlah genap). Odd parity bit akan diset ke 1 jika jumlah angka 1 yang dikirimkan berjumlah genap (berarti membuat total angka 1 berjumlah ganjil). Berikut gambaran even dan odd parity bit:

tabel


Jika jumlah bit ganjil (termasuk bit parity) berubah pada waktu transmisi, maka bit parity menjadi tidak benar dan mengindikasikan adanya kesalahan pada waktu pengiriman. Oleh karena itu, bit parity merupakan kode pendeteksi kesalahan (error detecting code), dan bukan merupakan kode pengoreksi kesalahan (error correcting code) karena tidak ada cara untuk menentukan bit mana yang keliru. Data harus diabaikan seluruhnya dan mengulangi lagi transmisi dari awal. Pada media transmisi yang terganggu, transmisi yang berhasil akan membutuhkan banyak waktu atau tidak berhasil sama sekali. Parity mempunyai keuntungan, yaitu hanya menggunakan satu bit saja dan membutuhkan satu saja gerbang XOR untuk men-generate-nya.
Bit parity checking sering digunakan untuk transmisi karakter ASCII, karena karakter ini hanya mempunyai 7 bit dan bit ke-8 dapat digunakan untuk bit parity. Sebagai contoh, diasumsikan pengiriman 4 bit dengan nilai 1001, dengan bit parity terletak di sebelah paling kanan. Penjelasan transmisi menggunakan even parity, sebagai berikut:
A akan mengirim : 1001
A menghitung nilai bit parity : 1^0^0^1 = 0
A menambahkan bit parity dan kirim : 10010
B menerima : 10010
B menghitung keseluruhan parity : 1^0^0^1^0 = 0
B melaporkan bahwa transmisi berhasil dengan parity yang benar (genap).
Jika transmisi menggunakan odd parity, maka penjelasannya sebagai berikut:
A akan mengirim : 1001
A menghitung nilai bit parity : ~(1^0^0^1) = 1
A menambahkan bit parity dan kirim : 10011
B menerima : 10011
B menghitung keseluruhan parity : 1^0^0^1^1 = 1
B melaporkan bahwa transmisi berhasil dengan parity yang benar (ganjil).
Mekanisme ini dapat mendeteksi kesalahan bit tunggal, karena jika satu bit berubah ketika melewati jalur yang jelek, maka akan terdapat jumlah angka satu yang tidak benar pada saat data diterima. Pada contoh di atas, B menghitung nilai parity dan mencocokkan dengan bit parity pada nilai yang diterima, mengindikasikan bahwa tidak ada kesalahan bit tunggal. Pada contoh di bawah ini akan terjadi kesalahan transmisi pada bit kedua:
A akan mengirim : 1001
A menghitung nilai bit parity : 1^0^0^1 = 0
A menambahkan bit parity dan kirim : 10010 *TRANSMISSION ERROR*
B menerima : 11010
B menghitung keseluruhan parity : 1^1^0^1^0 = 1
B melaporkan terjadi transmisi yang tidak benar, karena nilai parity tidak sama.
Pada kasus di atas, B menghitung nilai parity (0) tidak sama dengan bit parity (1) pada nilai yang diterima. Hal ini mengindikasikan terjadi kesalahan. Di bawah ini contoh yang sama tetapi dengan kesalahan pada bit parity-nya sendiri.
A akan mengirim : 1001
A menghitung nilai bit parity : 1^0^0^1 = 0
A menambahkan bit parity dan kirim : 10010 *TRANSMISSION ERROR*
B menerima : 10011
B menghitung keseluruhan parity : 1^0^0^1^1 = 1
B melaporkan terjadi transmisi yang tidak benar, karena nilai parity tidak sama.
Sekali lagi, B menghitung keseluruhan odd parity, dan mengindikasikan kesalahan bit. Ada keterbatasan pada skema parity ini, yaitu ketika ada kesalahan pada pengiriman data dengan bit yang salah berjumlah genap seperti pada contoh di bawah ini:
A akan mengirim : 1001
A menghitung nilai bit parity : 1^0^0^1 = 0
A menambahkan bit parity dan kirim : 10010 *TRANSMISSION ERROR*
B menerima : 11011
B menghitung keseluruhan parity : 1^1^0^1^1 = 0
B melaporkan transmisi berhasil dengan parity yang benar walaupun sebenarnya data sudah tidak benar.

DAFTAR PUSTAKA

 http://en.wikipedia.org/wiki/Parity_bit

Ziemer, RodgerE.; Tranter, William H. Principles of communication : systems, modulation, and noise (Seventh ed.). Hoboken, New Jersey.

Tidak ada komentar:

Posting Komentar