Kode Hamming: Contoh Koreksi Kesalahan

Daftar Isi:

Anonim

Apa itu Error?

Data yang dikirim dapat rusak selama komunikasi. Kemungkinan besar akan terpengaruh oleh kebisingan eksternal atau gangguan fisik lainnya. Dalam situasi seperti ini, data masukan tidak bisa sama dengan data keluaran. Ketidakcocokan ini disebut "Error".

Kesalahan data dapat mengakibatkan hilangnya data penting atau aman. Sebagian besar transfer data dalam sistem digital akan berbentuk 'Transfer bit.' Bahkan sedikit perubahan pun dapat memengaruhi kinerja seluruh sistem. Dalam urutan data, jika 1 diubah menjadi 0 atau 0 diubah menjadi 1, ini disebut "Kesalahan bit."

Dalam tutorial kode Hamming ini, Anda akan mempelajari:

  • Apa itu Error?
  • Jenis Kesalahan
  • Apa itu Deteksi dan Koreksi Kesalahan?
  • Apa itu kode Hamming?
  • Sejarah kode Hamming
  • Penerapan kode Hemming:
  • Keuntungan dari kode Hamming
  • Kekurangan kode Hamming
  • Proses Encoding pesan menggunakan Kode Hamming
  • Proses Mendekripsi Pesan dalam kode Hamming

Jenis Kesalahan

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

  • Kesalahan bit tunggal
  • Beberapa kesalahan bit
  • Kesalahan beruntun

Kesalahan Bit Tunggal

Perubahan yang dibuat dalam satu bit di seluruh urutan data dikenal sebagai "Kesalahan bit tunggal". Namun, terjadinya kesalahan bit tunggal tidaklah umum. Selain itu, kesalahan ini hanya terjadi pada sistem komunikasi paralel karena data ditransfer secara bitwise dalam satu jalur. Oleh karena itu, ada lebih banyak kemungkinan satu baris dapat berisik.

Beberapa Kesalahan Bit

Dalam urutan data, jika ada perubahan dalam dua atau lebih bit dari urutan data dari pemancar ke penerima, ini dikenal sebagai "Kesalahan bit ganda".

Jenis kesalahan ini sebagian besar terjadi di jaringan komunikasi data jenis serial dan paralel.

Kesalahan Beruntun

Perubahan himpunan bit dalam urutan data dikenal sebagai "Kesalahan meledak". Jenis kesalahan data ini dihitung dari perubahan bit pertama hingga perubahan bit terakhir.

Apa itu Deteksi dan Koreksi Kesalahan?

Dalam sistem komunikasi digital, kesalahan akan ditransfer dari satu sistem komunikasi ke sistem 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 mengidentifikasi kesalahan terlebih dahulu dan memperbaikinya.

Deteksi kesalahan adalah metode untuk mendeteksi kesalahan yang ada 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 ke data saat dikirim dari sumbernya. Kode-kode ini disebut "Kode pendeteksian kesalahan".

Tiga jenis kode deteksi kesalahan adalah:

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

Pemeriksaan 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 unit harus genap, yang dikenal sebagai bit paritas.

Pemeriksaan Redundansi Longitudinal

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

Pemeriksaan Redundansi Siklik

Cyclic Redundancy Check adalah urutan redundan yang harus ditambahkan ke bagian akhir unit. Itulah mengapa unit data yang dihasilkan harus habis dibagi oleh bilangan biner kedua yang telah ditentukan sebelumnya.

Di tempat tujuan, data yang masuk perlu dibagi dengan nomor yang sama. Jika tidak ada sisa, maka unit data dianggap benar dan diterima. Jika tidak, ini menunjukkan bahwa unit data rusak dalam transmisi, dan karenanya harus ditolak.

Apa itu kode Hamming?

Kode Hamming adalah 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 yang berlebihan dalam pesan. Bit redundan 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 dibangun oleh RWHamming untuk mendeteksi kesalahan.
  • Kode Hamming harus diterapkan ke unit data dengan panjang berapa pun dan menggunakan hubungan antara data dan bit redundansi.
  • Dia mengerjakan masalah metode koreksi kesalahan dan mengembangkan serangkaian algoritme yang semakin kuat yang disebut kode Hamming.
  • Pada tahun 1950, dia menerbitkan Kode Hamming, yang banyak digunakan saat ini dalam aplikasi seperti memori ECC.

Penerapan kode Hamming

Berikut adalah beberapa aplikasi umum penggunaan kode Hemming:

  • Satelit
  • Memori Komputer
  • Modem
  • PlasmaCAM
  • Konektor terbuka
  • 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 memberikan deteksi kesalahan bit tetapi juga membantu Anda untuk mengindentasi bit yang mengandung kesalahan sehingga dapat diperbaiki.
  • Kemudahan penggunaan kode hamming membuatnya paling sesuai untuk digunakan dalam memori komputer dan koreksi kesalahan tunggal.

Kekurangan kode Hamming

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

Proses Encoding pesan menggunakan Kode Hamming

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

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

Ketika bit redundan di atas disematkan di dalam pesan, itu dikirim ke pengguna.

Langkah 1) Perhitungan jumlah 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) status yang berbeda.

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

Langkah 2) Menempatkan bit redundan di posisi yang benar.

Bit p redundan harus ditempatkan pada posisi bit pangkat 2. Misalnya, 1, 2, 4, 8, 16, dll. Mereka disebut sebagai p 1 (pada posisi 1), p 2 (pada posisi 2) , p 3 (di posisi 4), dll.

Langkah 3) Perhitungan nilai bit redundan.

Bit redundan harus bit paritas membuat bilangan 1s bisa genap atau ganjil.

Dua jenis paritas adalah -

  • Jumlah bit dalam pesan yang 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 dalam posisi yang representasi binernya menyertakan 1 di posisi yang kurang penting tidak termasuk 1 Suka (3, 5, 7, 9,

…. )

P2 adalah bit paritas untuk setiap bit data dalam 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 dalam posisi yang representasi binernya menyertakan 1 di posisi 3 dari kanan tidak termasuk 4 Suka (5-7, 12-15,

…)

Proses Mendekripsi Pesan dalam kode Hamming

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

Proses penghitungan 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

2 p ≥ n + p + 1

Di sini, jumlah bit data dan p adalah jumlah bit yang berlebihan.

Langkah 2) Dengan benar menempatkan semua bit yang berlebihan

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

Langkah 3) Pemeriksaan paritas

Bit paritas perlu dihitung berdasarkan bit data dan bit redundan.

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 dikirim dapat rusak selama komunikasi
  • Tiga jenis kesalahan Bit adalah 1) Kesalahan Bit Tunggal 2) Kesalahan Beberapa Bit 3) Kesalahan Burst Bit
  • Perubahan yang dibuat dalam satu bit di seluruh urutan data dikenal sebagai "Kesalahan bit tunggal".
  • Dalam urutan data, jika ada perubahan dalam dua atau lebih bit dari urutan data dari pemancar ke penerima, ini dikenal sebagai "Kesalahan bit ganda".
  • Perubahan himpunan bit dalam urutan data dikenal sebagai "Kesalahan meledak".
  • Deteksi kesalahan adalah metode untuk mendeteksi kesalahan yang ada dalam data yang dikirimkan dari pemancar ke penerima dalam sistem komunikasi data
  • Tiga jenis kode deteksi kesalahan adalah 1) Parity Checking 2) Cyclic Redundancy Check (CRC) 3) Longitudinal Redundancy Check (LRC)
  • Kode Hamming adalah kode liner yang berguna untuk mendeteksi kesalahan hingga dua kesalahan bit langsung. Ia mampu melakukan kesalahan bit tunggal.
  • Kode Hamming adalah teknik yang dibangun oleh RWHamming untuk mendeteksi kesalahan.
  • Aplikasi umum penggunaan kode Hemming adalah Satelit Memori Komputer, Modem, Prosesor Tertanam, dll.
  • Manfaat terbesar dari metode kode hamming efektif pada jaringan di mana aliran data diberikan untuk kesalahan bit tunggal.
  • Kelemahan terbesar dari metode kode hamming adalah ia hanya dapat menyelesaikan masalah bit tunggal.
  • Kami dapat melakukan proses mengenkripsi dan mendekode pesan dengan bantuan kode Hamming.