top of page
No tags yet.

SEARCH BY TAGS: 

RECENT POSTS: 

FOLLOW ME:

  • Facebook Clean Grey
  • Twitter Clean Grey
  • Instagram Clean Grey

CRC (Cyclic Redundancy Check)

CRC (Cyclic Redundancy Check) adalah algoritma untuk memastikan integritas data dan mengecek kesalahan pada suatu data yang akan ditransmisikan atau disimpan.

Data yang hendak ditransmisikan atau disimpan ke sebuah media penyimpanan rentan sekali mengalami kesalahan, seperti halnya noise yang terjadi selama proses transmisi atau memang ada kerusakan perangkat keras. Untuk memastikan integritas data yang hendak ditransmisikan atau disimpan, CRC dapat digunakan. CRC bekerja secara sederhana, yakni dengan menggunakan perhitungan matematika terhadap sebuah bilangan yang disebut sebagai Checksum, yang dibuat berdasarkan total bit yang hendak ditransmisikan atau yang hendak disimpan.


Contoh 1 :

  1. Muat register 16-bit dengan hex FFFF (semua 1 s). Panggilan ini register CRC.

  2. Eksklusif ATAU byte delapan-bit pertama dari pesan dengan urutan byte rendah dari 16-bit CRC mendaftar, menempatkan hasilnya dalam register CRC.

  3. Shift CRC mendaftar satu bit ke kanan (menuju LSB), zerofilling MSB. Ekstrak dan memeriksa LSB.

  4. Jika LSB adalah 0, ulangi Langkah 3 (pergeseran lain). Jika LSB adalah 1, Eksklusif ATAU register CRC dengan hex A001 nilai polinomial (1010 0000 0000 0001).

  5. Ulangi 3 dan 4 sampai delapan pergeseran telah dilakukan. Bila ini dilakukan, byte delapan-bit lengkap akan diproses.

  6. Ulangi 2 … 5 untuk byte delapan-bit berikutnya pesan. Terus melakukan hal ini sampai semua byte telah diproses. Hasil akhir dari Isi register CRC adalah nilai CRC.

  7. Ketika CRC ditempatkan ke dalam pesan, byte yang atas dan bawah harus bertukar seperti yang dijelaskan di bawah ini. Menempatkan CRC ke pesan yang Ketika 16-bit CRC (dua delapan-bit byte) ditransmisikan dalam pesan, urutan byte rendah akan ditransmisikan pertama, diikuti oleh urutan tinggi byte-misalnya, jika nilai CRC 1241 hex (0001 0010 0100 0001)

contoh 2 :

Contoh hasil pada register geser 16 bit dengan gerbang XOR, dimana input pada bit 0, 5, 12 dan output pada bit 15, maka :

¨ CRC-CCITTT = X16 + X12 + X5 + 1

¨ CRC-16 = X16 + X15 + X2 + 1

¨ CRC-12 = X12 + X11 + X3 + X2 + 1

¨ LRC = X8 + 1

¨ RC-32 = X32 + X26 + X23 + X22 + X16

+ X12 + X11 + X10 + X8 + X7 + X5 + X4 + X2 + X1 + 1

contoh 3 :

  1. Diketahui: Pesan M = 1010001101 (10 bit) Pola P 110101 (6 bit) FCS R akan dikalkulasikan (5 bit)

  2. Pesan dikalikan dengan 25, menghasilkan 101000110100000.

  3. HasiInya. dibagi dengan P

  4. Sisanya ditambahkan dengan 2nM untuk memberi T=101000110101110, yang ditransmisikan.

  5. Bila tidak terdapat kesalahan, receiver menerima T utuh. Frame yang diterima dibagi dengan P

Karena tidak ada sisa, diasumsikan bahwa tidak terdapat kesalahan.

Pola P dipilih sebagai satu bit lebih panjang dibanding FCS yang diinginkan, dan pola bit yang dipilih tergantung pada jenis kesalahan yang diharapkan. Pada nilai minimum, orde bit yang tinggi maupun yang rendah dari P harus berupa 1.

Tidak ada metode yang ringkas untuk menentukan adanya satu kesalahan atau lebih. Suatu kesalahan terjadi dalam pembalikan bit. Ini ekuivalen dengan pengambilan eksklusif OR (XOR) bit dan 1 (modulo 2 dari 1 dijumlahkan ke bit): 0 + 1 = 1; 1 + 1 = 0. Jadi, kesalahan pada frame (n+k)?bit dapat ditunjukkan lewat bidang (n+k) dengan ls pada setiap posisi kesalahan.


bottom of page