Kode Hamming: Deteksi dan Koreksi Kesalahan dengan Contoh

Apa itu Kesalahan?

Data yang dikirimkan dapat rusak selama komunikasi. Kemungkinan besar hal ini dipengaruhi oleh kebisingan eksternal atau kegagalan fisik lainnya. Dalam situasi seperti ini, data masukan tidak boleh sama dengan data keluaran. Ketidakcocokan ini dikenal sebagai “Kesalahan.”

Kesalahan data dapat mengakibatkan hilangnya data penting atau aman. Sebagian besar transfer data dalam sistem digital akan berbentuk 'Bit transfer'. Perubahan sekecil apa pun dapat memengaruhi kinerja keseluruhan sistem. Dalam suatu rangkaian data, jika 1 diubah menjadi 0 atau 0 diubah menjadi 1, hal ini disebut “Bit error”.

Jenis Kesalahan

Ada tiga jenis utama kesalahan bit yang terjadi dalam transmisi data dari pengirim ke penerima.

  • Kesalahan bit tunggal
  • Kesalahan beberapa bit
  • Kesalahan meledak

Jenis Kesalahan

Kesalahan Bit Tunggal

Perubahan yang terjadi pada satu bit dalam keseluruhan rangkaian data dikenal sebagai “Kesalahan bit tunggal”. Akan tetapi, terjadinya kesalahan bit tunggal tidak begitu umum. Selain itu, kesalahan ini hanya terjadi dalam sistem komunikasi paralel karena data ditransfer per bit dalam satu baris. Oleh karena itu, ada kemungkinan lebih besar bahwa satu baris dapat mengalami gangguan.

Kesalahan Beberapa Bit

Dalam urutan data, jika terjadi perubahan pada dua atau lebih bit urutan data dari pemancar ke penerima, hal ini disebut dengan “Kesalahan beberapa bit”.

Jenis kesalahan ini paling banyak terjadi pada jaringan komunikasi data tipe serial dan paralel.

Kesalahan Meledak

Perubahan kumpulan bit dalam urutan data dikenal sebagai “Burst error”. Jenis kesalahan data ini dihitung dari perubahan bit pertama hingga perubahan bit terakhir.

Apa itu Deteksi Kesalahan & Koreksi Kesalahan?

Dalam sistem komunikasi digital, kesalahan akan ditransfer dari satu sistem komunikasi ke sistem komunikasi lainnya. Jika kesalahan ini tidak terdeteksi dan diperbaiki, maka data akan hilang. Untuk komunikasi yang efektif, data sistem harus ditransfer dengan akurasi tinggi. Ini akan dilakukan dengan terlebih dahulu mengidentifikasi kesalahan dan memperbaikinya.

Deteksi kesalahan adalah metode untuk mendeteksi kesalahan yang terdapat pada data yang dikirimkan dari pemancar ke penerima dalam sistem komunikasi data.

Di sini, Anda dapat menggunakan kode redundansi untuk menemukan kesalahan ini, dengan menambahkan data saat dikirimkan dari sumbernya. Kode-kode ini disebut “Kode pendeteksi kesalahan”.

Tiga jenis kode deteksi kesalahan adalah:

  • Pengecekan Paritas
  • Cyclic Redundancy Check (CRC)
  • Pemeriksaan Redundansi Longitudinal (LRC)

Pengecekan Paritas

  • Ini juga dikenal sebagai pemeriksaan paritas.
  • Ini memiliki mekanisme hemat biaya untuk deteksi kesalahan.
  • Dalam teknik ini, bit redundan dikenal sebagai bit paritas. Itu ditambahkan untuk setiap unit data. Jumlah total 1 dalam satuan harus menjadi genap, yang dikenal sebagai bit paritas.

Pemeriksaan Redundansi Longitudinal

Dalam teknik deteksi kesalahan ini, blok bit disusun dalam format tabel. Metode LRC membantu Anda menghitung bit paritas untuk setiap kolom. Himpunan paritas ini juga dikirimkan bersama dengan data aslinya. Blok paritas membantu Anda memeriksa redundansi.

Pemeriksaan Redundansi Siklik

Cyclic Redundancy Check adalah rangkaian redundant yang harus ditambahkan pada akhir unit. Itu sebabnya unit data yang dihasilkan harus habis dibagi dengan bilangan biner kedua yang telah ditentukan sebelumnya.

Di tempat tujuan, data yang masuk perlu dibagi dengan angka yang sama. Jika tidak ada sisa, maka unit data dianggap benar dan diterima. Jika tidak, maka unit data tersebut rusak saat pengiriman, dan karenanya harus ditolak.

Apa itu kode Hamming?

Kode Hamming merupakan kode liner yang berguna untuk mendeteksi kesalahan hingga dua kesalahan bit langsung. Ia mampu melakukan kesalahan bit tunggal.

Dalam kode Hamming, sumber mengkodekan pesan dengan menambahkan bit berlebihan dalam pesan. Bit-bit redundant ini sebagian besar disisipkan dan dihasilkan pada posisi tertentu dalam pesan untuk menyelesaikan proses deteksi dan koreksi kesalahan.

Sejarah kode Hamming

  • Kode Hamming adalah teknik yang dibuat oleh RWHamming untuk mendeteksi kesalahan.
  • Kode Hamming harus diterapkan pada unit data dengan panjang berapa pun dan menggunakan hubungan antara data dan bit redundansi.
  • Dia mengerjakan masalah metode koreksi kesalahan dan mengembangkan serangkaian algoritma yang semakin kuat yang disebut kode Hamming.
  • Pada tahun 1950, ia menerbitkan Kode Hamming, yang saat ini banyak digunakan dalam aplikasi seperti memori ECC.

Penerapan kode Hamming

Berikut beberapa penerapan umum penggunaan kode Hamming:

  • Satelit
  • Memori Komputer
  • modem
  • Kamera Plasma
  • Buka konektor
  • Kawat pelindung
  • Prosesor Tertanam

Keuntungan dari kode Hamming

  • Metode kode Hamming efektif pada jaringan di mana aliran data diberikan untuk kesalahan bit tunggal.
  • Kode Hamming tidak hanya mendeteksi kesalahan bit tetapi juga membantu Anda membuat indentasi bit yang mengandung kesalahan sehingga dapat diperbaiki.
  • Kemudahan penggunaan kode hamming membuatnya cocok untuk digunakan dalam memori komputer dan koreksi kesalahan tunggal.

Kekurangan kode Hamming

  • Deteksi kesalahan bit tunggal dan kode koreksi. Namun, jika ditemukan kesalahan pada beberapa bit, maka hasilnya mungkin menghasilkan bit lain yang seharusnya benar untuk diubah. Hal ini dapat menyebabkan kesalahan data lebih lanjut.
  • Algoritma kode Hamming hanya dapat menyelesaikan masalah bit tunggal.

Cara Mengkodekan pesan dalam Kode Hamming

Proses yang digunakan pengirim untuk mengkodekan pesan mencakup tiga langkah berikut:

  • Perhitungan jumlah total bit yang berlebihan.
  • Memeriksa posisi bit yang berlebihan.
  • Terakhir, menghitung nilai bit-bit yang berlebihan ini.

Ketika bit-bit redundan di atas tertanam dalam pesan, maka pesan tersebut dikirim ke pengguna.

Langkah 1) Perhitungan jumlah total bit redundan.

Anggaplah pesan tersebut berisi:

  • n– jumlah bit data
  • p – jumlah bit redundan yang ditambahkan ke dalamnya sehingga np dapat menunjukkan setidaknya (n + p + 1) keadaan berbeda.

Di sini, (n + p) menggambarkan lokasi kesalahan di setiap posisi bit (n + p) dan satu keadaan tambahan menunjukkan tidak ada kesalahan. Karena bit p dapat menunjukkan 2p negara bagian, 2p setidaknya harus sama dengan (n + p + 1).

Langkah 2) Menempatkan bit-bit yang berlebihan pada posisi yang benar.

Bit redundan harus ditempatkan pada posisi bit pangkat 2. Misalnya, 1, 2, 4, 8, 16, dst. Bit tersebut disebut sebagai p1 (di posisi 1), hal2 (di posisi 2), hal3 (di posisi 4), dll.

Langkah 3) Perhitungan nilai bit redundan.

Bit yang berlebihan harus menjadi bit paritas yang menjadikan jumlah 1 genap atau ganjil.

Kedua jenis paritas tersebut adalah?

  • Jumlah total bit dalam pesan dibuat genap disebut paritas genap.
  • Jumlah bit dalam pesan yang dibuat ganjil disebut paritas ganjil.

Di sini, semua bit redundan, p1, harus dihitung sebagai paritas. Ini harus mencakup semua posisi bit yang representasi binernya harus menyertakan 1 di posisi pertama tidak termasuk posisi p1.

P1 adalah bit paritas untuk setiap bit data pada posisi yang representasi binernya memuat angka 1 pada posisi yang kurang penting tidak termasuk 1 Suka (3, 5, 7, 9, …. )

P2 adalah bit paritas untuk setiap bit data pada posisi yang representasi binernya mencakup 1 pada posisi 2 dari kanan, tidak termasuk 2 Suka (3, 6, 7, 10, 11,…)

P3 adalah bit paritas untuk setiap bit pada posisi yang representasi binernya mencakup 1 di posisi 3 dari kanan tidak menyertakan 4 Suka (5-7, 12-15,… )

Mendekripsi Pesan dalam kode Hamming

Penerima mendapat pesan masuk yang perlu melakukan perhitungan ulang untuk menemukan dan memperbaiki kesalahan.

Proses perhitungan ulang dilakukan dengan langkah-langkah sebagai berikut:

  • Menghitung jumlah bit yang berlebihan.
  • Memposisikan semua bit redundan dengan benar.
  • Pemeriksaan paritas

Langkah 1) Menghitung jumlah bit yang berlebihan

Anda dapat menggunakan rumus yang sama untuk pengkodean, jumlah bit yang berlebihan

2p ? n + hal + 1

Di sini, jumlah bit data dan p adalah jumlah bit redundan.

Langkah 2) Menempatkan semua bit yang berlebihan dengan benar

Di sini, p adalah bit redundan yang terletak pada posisi bit pangkat 2, Misalnya 1, 2, 4, 8, dst.

Langkah 3) Pemeriksaan paritas

Bit paritas perlu dihitung berdasarkan bit data dan bit redundansi.

p1 = paritas(1, 3, 5, 7, 9, 11…)

p2 = paritas(2, 3, 6, 7, 10, 11… )

p3 = paritas(4-7, 12-15, 20-23… )

Ringkasan

  • Data yang dikirimkan dapat rusak selama komunikasi
  • Tiga jenis kesalahan Bit adalah 1) Kesalahan Bit Tunggal 2) Kesalahan Bit Berganda 3) Kesalahan Bit Burst
  • Perubahan yang dilakukan dalam satu bit di seluruh urutan data dikenal sebagai “Kesalahan bit tunggal.”
  • Dalam urutan data, jika terjadi perubahan pada dua atau lebih bit urutan data dari pemancar ke penerima, hal ini disebut dengan “Kesalahan beberapa bit”.
  • Perubahan kumpulan bit dalam urutan data dikenal sebagai “Burst error”.
  • Deteksi kesalahan adalah metode untuk mendeteksi kesalahan yang terdapat pada data yang dikirimkan dari pemancar ke penerima dalam sistem komunikasi data.
  • Tiga jenis kode deteksi kesalahan adalah 1) Pemeriksaan Paritas 2) Pemeriksaan Redundansi Siklik (CRC) 3) Pemeriksaan Redundansi Longitudinal (LRC)
  • Kode Hamming merupakan kode liner yang berguna untuk mendeteksi kesalahan hingga dua kesalahan bit langsung. Ia mampu melakukan kesalahan bit tunggal.
  • Kode Hamming adalah teknik yang dibuat oleh RWHamming untuk mendeteksi kesalahan.
  • Aplikasi umum yang menggunakan kode Hamming adalah Memori Komputer Satelit, Modem, Prosesor Tertanam, dll.
  • Manfaat terbesar dari metode kode hamming adalah efektif pada jaringan di mana aliran data diberikan untuk kesalahan bit tunggal.
  • Kelemahan terbesar dari metode kode hamming adalah metode ini hanya dapat menyelesaikan masalah bit tunggal.
  • Kita dapat melakukan proses enkripsi dan decoding pesan dengan bantuan kode hamming.

Buletin Harian Guru99

Awali hari Anda dengan berita AI terbaru dan terpenting yang disampaikan saat ini.