Showing posts with label Transmisi. Show all posts
Showing posts with label Transmisi. Show all posts

Kode Blok Data dan Kode Humming.

September 29, 2015 Add Comment


1. Blok Data
Pengkodean untuk pengiriman data secara blok yang dilengkapi dengan paritas ganjil atau paritas genap merupakan cara pengujian lebih baik, karena satu blok data akan disertai dengan paritas yang diletakan pada akhir blok data.
Untuk menguji data terkirim terjadi kesalahan bit (bit error) atau tidak bit paritas tersebutlah yang digunakan sebagai kunci uji untuk setiap karakter terkirim, dalam sistem transmisi data secara blok data artinya beberapa karakter terkumpul menjadi satu blok data maka bit paritas ini juga bisa dimanfaatkan.


Gambar 1. Rangkaian pembangkit paritas


Adapun penempatan bit paritas pada blok data adalah ditempatkan pada akhir sebuah blok, dengan demikian bit akhir dari blok data inilah yang disebut dengan block check character(BCC).
Paritas dapat dibangkitkan melalui software atau melalui hardware, baik secara software maupun secara hardware memiliki metode logika yang sama. Berikut merupakan pembangkitan paritas menggunakan gerbang EXOR:
Berdasarkan gambar 1. jika kode ASCII yang ingin dikirimkan memiliki logikabit 101 0010 maka akan didapatkan paritas sebagai berikut:

Gambar 2. Pembangkitan paritas dengan masukan 101 0010


Bit-0 EXOR bit-1 = 1, 
bit-2 EXOR 1 = 1, 
bit-3 EXOR 1 = 1, 
bit-4 EXOR 1 = 0,
bit-5 EXOR 0 = 0, 
bit-6 EXOR 0 = 1.
Dengan demikian didapatkan paritas genap berlogika 1 dan paritas ganjil didapatkan logika 0. Kelemahan kode paritas ini adalah apabila terjadi kesalahan atau error pada 2 bit maka error tidak terdekteksi sebagai error, 
Sebagai contoh data = 1010000 paritas genap digunakan sehingga data terkirim adalah 01010000. Ternyata pada penerima data terkirim menjadi 01010011,
Maka secara rumus paritas data adalah benar pada hal terdapat kesalahan pada bit 0 dan bit 1 yaitu berubah dari 00 menjadi 11. Dengan demikian error atau kesalahan pada bit 0 dan bit 1 tidak terdeteksi.
Perbaikan dari sistem ini adalah dengan mengirimkan data bukan perkarakter tetapi melalui blok data.
Misalkan dalam satu blok data disusun dari 7 buah karakter, dan isi data berupa pesan berbunyi “selamat” maka paritas dapat dicari dengan cara sebagai berikut:


Dari blok data yang terbentuk dari pesan selamat dicari kode ASCII setiap karakter, kemudian dicari paritasnya dalam kode ini diambil paritas genap dan dituliskan pada bit-7.
Setelah ditemukan semua paritas dari setiap karakter pembentuk pesan dan dituliskan pada bit-7, maka langkah selanjutnya adalah mencari paritas dari setiap kolom mulai bit-0 sampai bit-7 dan dituliskan secara mendatar pada baris BCC.
Adapun fungsi dari paritas pada bit-7 adalah sebagai kunci uji data untuk mencari error setiap karakter secara horisontal, istilah deteksi error secara horizontal adalah longitudinal redundancy check (LRC). 
Sedang fungsi paritas pada BCC sebagai baris penutup blok data difungsikan sebagai deteksi error secara vertikal, istilah deteksi vertikal adalah vertical redundancy check (VRC). Dari kedua paritas inilah terbentuk model matrik deteksi error yaitu kombinasi dari deteksi LRC dan deteksi VRC.

2. Kode Humming
Kerusakan data atau kesalahan data yang diterima oleh terminal penerima dalam sistem komunikasi data sering terjadi, hal yang mendasar sebagai penyebab adalah adanya interferensi sinyal luar yang masuk ke dalam jalur komunikasi, koneksi kawat penghubung, terminal, konektor pada layer terendah yang kurang baik. 
Hal tersebut menyebabkan sinyal gangguan (noise), sebagai akibat gangguan tersebut muncul permasalahan pada data yang diterima oleh penerima berupa data error. 
Terlebih pada transmisi data serial dengan kecepatan tinggi dan kualitas jalur transmisi yang rendah kesalahan (error) sangat mungkin terjadi, ukuran banyaknya bit error dalam blok data disebut sebagai bit error rate   (BER).
Terdapat toleransi kesalahan bit dalam sistem transmisi data, dan batasan nilai BER dalam satu kelompok data 105 bit.
Dalam penanganan kesalahan (error handling) bit terkirim tahapan utama dalam penerimaan data adalah deteksi kesalahan bit terkirim, selanjutnya dilakukan koreksi terhadap kesalahan (error).
Perbaikan data bisa dilakukan oleh penerima atau pengirim melalui permintaan pengiriman ulang data, permintaan ini melalui sinyal NAK dari penerima ke pengirim.
Seperti telah dijelaskan sebelumnya bahwa proses deteksi kesalahan melalui bit yang ditambahkan (redundant bit) ke dalam data, dengan metode pengkodean tersebut dapat ditentukan kesalahan bitnya. 
Sistem pengkodean yang lain yang dapat digunakan dalam komunikasi data adalah kode Hamming. Konsep penerapan kode Hamming adalah dengan menggunakan bit paritas untuk disisipkan pada posisi tertentu dalam blok data, dengan demikian memungkinkan untuk dapat digunakan dalam pemeriksaan kesalahan dalam blok data. 
Aturan untuk menyatakan bit Hamming adalah melalui pendekatan 2n, nilai n dan n adalah bilangan bulat positif, cara untuk menentukan bit Hamming adalah sebagai berikut :
 Data = 1011 → penyisipan bit Hamming adalah 101x1xx
 Nilai x dapat dipilih 1 atau 0 dan disisipkan pada data
 Menentukan jumlah modulo-2 bit-1 agar data berparitas genap.
Bit ke- 7 6 5 4 3 2 1
Data    1 0 1 x 1 x x
Langkah selanjutnya adalah menentukan bit-Hamming yang harus disisipkan ke dalam bit-bit data, dalam hal ini semua bit yang ditandai dengan hurf x adalah tempat posisi bit Humming yang seharus disisipkan. 
Dengan demikian data yang semula terdiri dari 4 bit data maka pada akhirnya jumlah bit adalah 7 bit.
 Tabel penentuan bit-Hamming
 Bit-Hamming disisipkan ke dalam data, sehingga menjadi:
Bit ke- 7 6 5 4 3 2 1
Data    1 0 1 0 1 0 1
 Deteksi data error yang diakibatkan data berubah saat transmisi, diasumsikan terjadi perubahan pada bit ke 3 dari nilai logika 1 menjadi logika 0. Sehingga data yang diterima sebagai berikut:
Bit ke- 7 6 5 4 3 2 1
Data    1 0 1 0 0 0 1
 Pemeriksaan data melalui bit-bit Hamming ditemukan error berikut posisi bitnya, pada contoh terjadi error pada posisi bit ke 3.
 Berdasarkan tabel penentuan error diperoleh nilai biner 011, yang berarti bisa ditentukan kesalahan adalah pada posisi bit ke 3 pada data.
Perbaikan logika bit dapat dilakukan dengan melakukan inverting bit ke dari data, dengan demikian tidak diperlukan lagi pengiriman NAK ke pengirim untuk melakukan pengiriman ulang
---------------------- Suplemen ---------------------

Gerbang Logika EXOR




Artikel Terkait
Komunikasi Data
15. Topologi Jaringan Liniear Bus
14. Media Transmisi Jaringan
13. Perangkat Keras Jaringan 2 (Repeaters, Birdges dan Routers)
12. Perangkat Keras Jaringan 1 (File Servers, WorkStation, NIC dan Hubs)
11. Sistem Jaringan Lokal
10. Kode Blok Data dan Kode Humming
9. Unipolar, Polar dan Bipolar Line Coding dalam Slide
8. Kode 2B1Q, Kode Blok dan Kode ASCII
7. Unipolar Line Coding, Polar Line Coding dan Bipolar Line Coding
4. OSI (Open System Interconnection)
3. Aplikasi Komunikasi
2. Pengantar Sistem komunikasi Data
1. Glosarium Komunikasi Data.


Unipolar Line Coding, Polar Line Coding dan Bipolar Line Coding

September 01, 2015 Add Comment


Dalam sistem komunikasi data, data yang dikirimkan sering  diterima tetapi rusak atau error. Untuk mengantisipasinya maka diterapkan pengkodean terhadap pengiriman data.
Oleh karena data yang dikirimkan adalah dalam bentuk sinyal digital maka pengkodean data dilakukan dengan membentuk pola data. 
Tujuannya menjamin sebuah pesan dapat diterima sesuai dengan pesan yang dikirimkan baik dari sisi reliabilitas maupun dari integritas data.
Sinyal digital tersusun dari sederetan bit biner dan setiap bit memiliki 2(dua) kondisi yaitu logika 0 dan logika 1. 
Bentuk kode biner 1 dan 0 tersebut pada saat dikirimkan, melalui media transmisi diubah menjadi format sinyal digital secara serial, kode yang digunakan untuk membentuk data tersebut dikenal dengan istilah line-code.
a.  Unipolar Line Coding
Kode ini menggunakan hanya satu non-zero dan satu zero level tegangan, yaitu untuk logika 0 memiliki level zero dan untuk logika 1 memiliki level non-zero.
Implementasi unipolar line coding merupakan pengkodean sederhana, akan tetapi terdapat dua permasalahan utama yaitu akan muncul komponen DC dan tidak adanya sikronisasi untuk sekuensial data panjang baik untuk logika 1 atau 0. 
Secara diagram pulsa ditunjukan pada gambar berikut:
Gambar 1. Diagram pulsa kode unipolar


b. Polar Line Coding
Kode ini menggunakan dua buah level tegangan untuk non-zero guna merepresentasikan kedua level data, yaitu satu positip dan satu negatip. Permasalahan yang muncul adalah adanya tegangan DC pada jalur komunikasi, untuk pengkodean polar terdapat 4 macam jenis kode polar seperti ditunjukan pada gambar berikut:




Gambar 2. Struktur kode polar

1) Non Return to Zero (NRZ)
Terdapat dua jenis kode NRZ yang meliputi:
 Level-NRZ, 
level sinyal merupakan representasi dari bit, yaitu untuk logika 0 dinyatakan dalam tegangan positip dan untuk logika 1 dinyatakan dalam tegangan negatip. Kelemahan kode ini memiliki sinkronisasi rendah untuk serial data yang panjang baik untuk logika 1 dan 0.
 Invers-NRZ, 
Kode dengan ciri invers level tegangan,  memiliki nilai logika 1 apabila ada perubahan level tegangan dari tegangan negatif ke tegangan positif atau dari tegangan positif ke tegangan negatif dan berlogika 0 apabila tidak ada perubahan level tegangan. 
Untuk logika 1 dalam sederetan data memungkinkan adanya sinkronisasi, walaupun demikian untuk sekuensial yang panjang untuk data berlogika 0 tetap terdapat permasalahan.




Gambar 3. Diagram pulsa pengkodean NRZ


Berdasarkan diagram pulsa di atas ternyata untuk pengkodean NRZ-I masih lebih baik dibanding pengkodean NRZ-L. Walaupun demikian keduanya tetap tidak memberikan sinkronisasi yang lengkap. Penerapan kode ini dapat memberikan sinkronisasi yang lengkap apabila setiap bit terjadi perubahan sinyal.
2). Return to Zero (RZ)
Kode RZ level sinyal merupakan representasi dari bit, yaitu untuk logika 0 dinyatakan dalam tegangan negatip dan untuk logika 1 dinyatakan dalam tegangan positip, dan sinyal harus kembali zero untuk separuh sinyal berdasarkan interval dari setiap bit, artinya bila waktu untuk satu bit baik logika 1 atau logika 0 sama dengan 1 detik maka pernyataan logika 1 dengan level tegangan positip adalah 0,5 detik dan 0,5 detik berikutnya level tegangan kembali ke nol volt (zero). Demikian juga untuk pernyataan logika 0 level tegangan negatip adalah 0,5 detik dan 0,5 detik berikutnya level tegangan kembali ke nol volt (zero).


Gambar 4. Diagram pulsa pengkodean RZ


Penggunaan kode ini memiliki sinkronisasi sempurna, untuk kode balik bit dilakukan dengan perubahan 2 sinyal, kecepatan pulsa adalah 2x kecepatan kode NRZ dan diperlukan bandwidth sekuensial bit yang lebih lebar. Sebagai awal sebuah bit data dapat digunakan level non-zero.
3). Manchester
Pada kode Manchester terjadi inversi level sinyal pada saat sinyal bit berada di tengah interval, kondisi ini digunakan untuk dua hal yaitu sinkronisasi dan bit representasi. Kondisi logika 0 merupakan representasi sinyal transisi dari positip ke negatip dan kondisi logika 1 merupakan representasi sinyal transisi dari negatip ke positip serta memiliki kesempurnaan sinkronisasi. 
Selalu terjadi transisi pada setiap tengah (middle) bit, dan kemungkinan satu transisi pada akhir setiap bit. Baik untuk sekuensial bit bergantian (10101), tetapi terjadi pemborosan bandwidth untuk kondisi jalur berlogika 1 atau berlogika 0 untuk waktu yang panjang, kode digunakan untuk IEEE 802.3 (Ethernet).


Gambar 5. Diagram pulsa pengkodean Manchester


4) Diferensial Manchester
Pada kode Diferensial Manchester inversi level sinyal pada saat berada di tengah interval sinyal bit digunakan untuk sinkronisasi, ada dan tidaknya tambahan transisi pada awal interval bit berikutnya merupakan identifikasi bit, dimana logika 0 jika terjadi transisi dan logika 1 jika tidak ada transisi, memiliki kesempurnaan sinkronisasi. 
Baik untuk jalur berlogika 1 pada waktu yang panjang, tetapi terjadi pemborosan bandwidth untuk kondisi jalur berlogika 0 untuk waktu yang panjang, kode digunakan untuk IEEE 802.5 (Token Ring).


Gambar 6. Diagram pulsa diferensial Manchester


Gambar 7 menunjukan contoh format pengkodean bit biner data ke dalam metode pengkodean dalam bentuk diagram pulsa, yaitu pengkodean biner ke unpolar NRZ (Non Return Zero), biner ke format polar NRZ, dari biner ke unipolar RZ (Return Zero), dari biner dikodekan ke bipolar RZ (Return Zero) dan dari biner ke kode manchester.


Gambar 7 Pengkodean bit biner (line-code).
c. Bipolar Line Coding
Kode bipolar menggunakan dua level tegangan yaitu non-zero dan zero guna menunjukan level dua jenis data, yaitu untuk logika 0 ditunjukan dengan level nol, untuk logika 1 ditunjukan dengan pergantian level tegangan positip dan negatip, jika bit pertama berlogika 1 maka akan ditunjukan dengan amplitudo positip, bit kedua akan ditunjukan dengan amplitudo negatip, bit ketiga akan ditunjukan dengan amplitudo positip dan seterusnya.
Dalam menggunakan jalur saat melakukan pengiriman data membutuhkan lebih sedikit bandwidth dibanding dengan kode Manchester untuk sekuensial bit logika 0 aau logika 1, kemungkinan terjadi kehilangan sinkronisasi untuk kondisi jalur berlogika 0.
Gambar 8. Diagram pulsa kode bipolar



Artikel Terkait
Komunikasi Data
15. Topologi Jaringan Liniear Bus
14. Media Transmisi Jaringan
13. Perangkat Keras Jaringan 2 (Repeaters, Birdges dan Routers)
12. Perangkat Keras Jaringan 1 (File Servers, WorkStation, NIC dan Hubs)
11. Sistem Jaringan Lokal
10. Kode Blok Data dan Kode Humming
9. Unipolar, Polar dan Bipolar Line Coding dalam Slide
8. Kode 2B1Q, Kode Blok dan Kode ASCII
7. Unipolar Line Coding, Polar Line Coding dan Bipolar Line Coding


4. OSI (Open System Interconnection)

3. Aplikasi Komunikasi

2. Pengantar Sistem komunikasi Data
1. Glosarium Komunikasi Data.