• Tidak ada hasil yang ditemukan

UNJUK KERJA KOREKSI KESALAHAN TIPE-II HYBRID ARQ DENGAN MENGGUNAKAN KASKADE KODE HAMMING

N/A
N/A
Protected

Academic year: 2021

Membagikan "UNJUK KERJA KOREKSI KESALAHAN TIPE-II HYBRID ARQ DENGAN MENGGUNAKAN KASKADE KODE HAMMING"

Copied!
11
0
0

Teks penuh

(1)

Unjuk Kerja Koreksi Kesalahan Tipe-II Hybrid ARQ dengan Menggunakan Kaskade Kode 39

UNJUK KERJA KOREKSI KESALAHAN TIPE-II HYBRID

ARQ DENGAN MENGGUNAKAN KASKADE KODE

HAMMING

Naemah Mubarakah

1)

1) Staf Pengajar Departemen Teknik Elektro, Fakultas Teknik USU

Abstrak

Keandalan dan throughput adalah dua aspek penting yang menunjukkan unjuk kerja dari sistem komunikasi data. Kontrol kesalahan seperti Forward Error Control (FEC) dan Automatic Repeat Request (ARQ) kurang memberikan solusi unjuk kerja yang optimum. Kontrol kesalahan hybrid ARQ merupakan gabungan FEC dan ARQ sehingga dapat digunakan untuk meningkatkan unjuk kerja sistem. Kontrol kesalahan tipe-II hybrid ARQ (adaptive ARQ) dengan menggunakan kaskade kode Hamming dimaksudkan untuk menyediakan throughput yang tinggi mengatasi kemungkinan kesalahan bit pada kanal. Ini dapat dilihat dari penggunaan kaskade kode Hamming (7,4) dengan tingkat kaskade satu memiliki throughput yang lebih baik dibandingkan GH–ARQ, sedangkan tingkat kaskade dua memiliki keandalan yang cukup baik. Dari hasil simulasi diperoleh pada BER 10-6 sampai

dengan 7,5.10-5, sistem Hamming (7,4) dengan tingkat kaskade level kedua memberikan throughput

yang setara dengan tingkat kaskade level pertama. Sedangkan pada BER > 7,5.10-5, sistem dengan tingkat kaskade level kedua memiliki throughput lebih rendah dari sistem dengan tingkat kaskade level pertama, tetapi memiliki keandalan yang lebih baik. Dengan demikian terlihat sistem tipe-II hybrid ARQ memiliki peningkatan unjuk kerja yang optimal.

Kata kunci: Throughput, Keandalan, Kode Hamming, tipe-II hybrid ARQ 1. Pendahuluan

Pada sistem komunikasi diupayakan agar informasi yang diterima sama dengan informasi yang dikirimkan. Tetapi pada kenyataannya sering terjadi kesalahan sehingga informasi yang diterima berbeda dengan informasi yang dikirimkan.

Dalam bentuk digital, bit informasi dapat dikodekan oleh sebuah pengkode sebelum ditransmisikan, dan dikembalikan ke bit informasi asal oleh pendekode pada sisi penerima. Pada kedua alat tersebut dilengkapi dengan pengontrol kesalahan.

Secara mendasar, ada dua teknik kontrol kesalahan bit informasi, yaitu Automatic Repeat Request (ARQ) dan Forward Error Control

(FEC). ARQ hanya mampu mendeteksi kesalahan dan meminta transmisi ulang, sementara FEC hanya mendeteksi dan mengoreksi kesalahan bit informasi (Kausa, Maan A. and Rahman, Mushfiqur, 1991).

Untuk mengevaluasi unjuk kerjanya, digunakan dua parameter penting yaitu

throughput dan keandalan. Throughput adalah perbandingan jumlah rata-rata bit informasi

yang berhasil diterima oleh penerima setiap satuan waktu terhadap jumlah seluruh bit yang dapat ditransmisikan setiap satuan waktu. Keandalan adalah ukuran kebenaran data yang dikodekan oleh penerima.

Sistem FEC menyediakan efisiensi

throughput yang tetap, tergantung pada tingkat kode dan tidak terpengaruh oleh kondisi kanal. Ketika kesalahan bit yang terjadi melebihi kemampuan sistem FEC tersebut seiring dengan menurunnya kualitas kanal, maka keandalan sistem berkurang.

Sistem ARQ menyediakan keandalan yang tinggi, tidak tergantung kualitas kanal. Tetapi ARQ memiliki throughput yang sangat tergantung pada jumlah permintaan transmisi ulang karena terjadi kesalahan, dan throughput

menurun karena meningkatnya kesalahan yang terjadi seiring dengan menurunnya kualitas kanal (Lin, Shu and Yu, Philip S., 1982).

Sistem yang memiliki kelebihan sistem FEC dan ARQ, dan terhindar dari kekurangan sistem tersebut adalah hybrid ARQ. Ada dua skema hybrid ARQ:

(2)

1. Type-I hybrid ARQ atau fixed-rate hybrid

ARQ.

2. Type-II hybrid ARQ atau adaptive ARQ. Pada penerima type-I hybrid ARQ, blok yang didekodekan diuji oleh detektor kesalahan dan pendekode mengoreksi setiap kesalahan pada blok yang diterima. Karena itu koreksi kesalahan ini berdasarkan kode yang sama, skema ini disebut juga fixed-rate hybrid ARQ. Tingkat kode koreksi kesalahan yang tetap memiliki kelemahan terhadap kanal yang memiliki kualitas berubah-ubah. Jika kualitas kanal sangat baik, kemampuan sistem pengoreksi kesalahan mungkin lebih daripada nilai optimalnya. Jika kualitas kanal buruk, lebih banyak kesalahan yang mungkin terjadi daripada kesalahan yang dapat diatasi sesuai dengan kapasitas kode pengoreksi kesalahan. Akibatnya terlalu banyak transmisi ulang yang diminta dan

throughput menurun.

2. Landasan Teori 2.1. Kontrol Kesalahan

Secara mendasar, ada dua teknik kontrol kesalahan bit informasi, yaitu Automatic Repeat Request (ARQ) dan Forward Error Control

(FEC). Terdapat dua kategori ARQ yaitu

stop-and-wait ARQ (SW ARQ), dan continuous

ARQ yang terdiri dari dua tipe yaitu go-back-N

ARQ (GBN ARQ) dan selective-repeat ARQ (SR ARQ). SW ARQ dirancang untuk kanal

half-duplex, sedangkan continuous ARQ dirancang untuk kanal full-duplex (Lin, Shu, Costello, Daniel J. and Miller, 1984).

2.1.1 Stop and Wait ARQ

Teknik SW ARQ adalah prosedur ARQ yang paling sederhana. Pada SW ARQ, pengirim mentransmisikan suatu vektor kode (code word) ke penerima dan menunggu dari penerima suatu acknowledgment untuk setiap vektor kode. Positive acknowledgment (ACK) dari penerima menunjukkan bahwa vektor kode yang dikirim telah diterima dengan sukses. Pengirim kemudian mentransmisikan vektor kode berikutnya. Jika negative acknowledgment

(NAK)yang diterima, maka ada suatu kesalahan pada vektor kode yang terdekteksi dan pengirim mentransmisikan ulang vektor kode tersebut. Transmisi ulang dilakukan terus-menerus sampai pengirim menerima ACK.

Teknik yang sederhana ini kurang efisien, karena adanya waktu kosong (idle time) yang terjadi selama menunggu acknowledgment

setiap pengiriman vektor kode.

Gambar Stop and wait ARQ (Stallings, William, 1985) 2.1.2 Go Back N ARQ

Dengan teknik GBN ARQ, pengirim mentransmisikan vektor kode dan menerima

acknowledgment secara terus-menerus, tidak perlu menunggu acknowledgment sebelum mentransmisikan vektor kode berikutnya.

Round trip delay adalah interval waktu antara pengiriman vektor kode dan penerimaan

acknowledgment untuk vektor kode tersebut. Pada interval ini, ada N-1 vektor kode lain yang juga ditransmisikan. Jika pengirim menerima NAK untuk vektor kode ke-i maka pengirim berhenti mentransmisikan vektor kode dan mentransmisikan ulang vektor kode ke-i, beserta

N-1 vektor kode selama round trip delay. Di bagian penerima, dilakukan pembuangan vektor kode ke-i yang mengandung kesalahan beserta

N-1 vektor kode yang telah diterima. Pentransmisian ulang dilakukan terus-menerus sampai pengiriman menerima ACKuntuk vektor kode ke-i, dan setelah itu pengiriman mentransmisikan vektor kode dalam antrian berikutnya.

Teknik GBN ARQ menjadi tidak efisien jika round trip delay besar dan laju pengiriman data tinggi. Hal ini disebabkan pentransmisian ulang vektor kode yang mengandung kesalahan diikuti dengan N-1 vektor kode yang telah diterima.

Gambar Go Back N ARQ (Stallings, William, 1985) 2.1.3 Selective Repeat ARQ

Kekurangan pada teknik GBN ARQ dapat diatasi dengan teknik SR ARQ. Pada teknik SR ARQ, vektor kode dan acknowledgment

ditransmisikan terus-menerus. Jika pengirim menerima NAK untuk vektor kode ke-i, maka pengirim berhenti mentransmisikan vektor kode dan mentransmisi ulang vektor kode ke-i, tidak

(3)

termasuk vektor kode selama round trip delay. Kemudian pengirim meneruskan lagi pentransmisian vektor kode baru setelah penghentian tersebut.

Gambar Selective Repeat ARQ (Stallings, William, 1985)

Di sisi penerima dibutuhkan suatu buffer

untuk menyimpan vektor kode selama round trip delay yang bebas dari kesalahan. Teknik SR ARQ merupakan teknik ARQ yang paling efisien, namun SR ARQ membutuhkan perangkat yang rumit dan berkemampuan tinggi.

2.1.4 Hybrid ARQ

Keuntungan utama ARQ daripada FEC adalah perangkat pengkodean ARQ lebih sederhana daripada FEC, dan keluwesan ARQ karena informasi ditransmisikan ulang hanya ketika terjadi kesalahan. Sistem ARQ menyediakan keandalan yang tinggi, tidak tergantung kualitas kanal, tetapi memiliki

throughput yang tergantung pada kesalahan transmisi sehingga throughput menurun ketika tingkat kesalahan kanal tinggi karena transmisi ulang yang dilakukan terlalu sering.

Sistem FEC menyediakan efisien

throughput yang tetap dan tidak terpengaruh oleh kondisi kanal tetapi tergantung pada tingkat kemampuan kode. Ketika kesalahan bit informasi yang terjadi melebihi kemampuan sistem FEC tersebut seiring dengan menurunnya kualitas kanal, maka keandalan sistem berkurang.

Hybrid ARQ, yaitu kombinasi antara ARQ untuk pola kesalahan yang jarang terjadi dan FEC untuk pola kesalahan yang sering terjadi, lebih efisien dibandingkan ARQ saja. Strategi kontrol kesalahan hybrid ARQ ini jelas memiliki potensi meningkatkan throughput pada sistem dua arah untuk mengatasi tingginya tingkat kesalahan bit kanal.

2.2 Kode Hamming

Kode Hamming adalah tingkat pertama dari kode linier yang dirancang untuk koreksi kesalahan. Untuk sembarang bilang positif m >

3, ada suatu kode Hamming dengan parameter berikut:

Panjang kode : n =2m – 1

Jumlah simbol informasi : k = 2mm – 1

Jumlah simbol parity check : m = n – k

Kapasitas koreksi kesalahan : t = 1 (dmin= 3)

Matriks parity checkH dari kode ini terdiri

dari semua m–tuple bukan–nol sebagai kolomnya. Pada bentuk sistematik, kolom dari

H disusun sebagai berikut:

H = [ In-k PT ] = [ Im Q ] ... (2.1)

Di mana Im adalah matriks identitas m x m

dan submatriks Q terdiri dari k kolom yang

merupakan m–tuple dengan bobot 2 atau lebih. Sebagai contoh m = 3. Matriks parity check dari kode Hamming dengan panjang kode 7 disusun dengan bentuk: ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ = 1 1 1 0 1 0 0 0 1 1 1 0 1 0 1 1 0 1 0 0 1 H

yang merupakan matriks parity check dari kode linier (7,4).

Kolom dari Q dapat disusun dengan

sembarang cara tanpa mempengaruhi sifat jarak dan bobot dari distribusi kode. Dalam bentuk sistematik, matriks pembangkit dari kode adalah:

G = [QT I 2 m

– m – 1 ] = [P Ik] ... (2.2)

di mana Q T = P adalah transpose dari Q dan

I2m - m – 1 = Ik adalah suatu matriks identitas

k x k.

Kolom dari H bukan–nol dan berbeda

sehingga jika dua kolom ditambahkan tidak akan menghasilkan nol. Jarak minimal dari kode Hamming adalah 3. Karena jarak minimal dari kode Hamming tepatnya adalah 3, maka kode ini memiliki kemampuan mengoreksi semua pola kesalahan dengan satu kesalahan atau mendeteksi semua pola kesalahan dengan dua kesalahan atau kurang.

Distribusi bobot dari suatu kode Hamming dengan panjang n = 2m – 1 telah diketahui.

Jumlah vektor kode dengan bobot i, Ai secara

sederhana merupakan koefisien dari zi pada

ekspansi dari polinomial berikut:

Unjuk Kerja Koreksi Kesalahan Tipe-II Hybrid ARQ dengan Menggunakan Kaskade Kode 41

(4)

Jurnal Teknik Elektro ENSIKOM Vol. 3, No. 2 – DESEMBER 2005 (39 – 49) 42

(

)

(

)

(

)

( )

{

2 1/2 1 1 1 1 1 ) ( + + − − − + = n n z z n z n z A

}

... (2.3)

Polinomial ini adalah bobot enumerator untuk kode Hamming (Kausa, Maan A. and Rahman, Mushfiqur, 1991). Jika suatu kode Hamming digunakan untuk deteksi kesalahan terhadap suatu BSC, probabilitas kesalahan tak terdeteksinya, Pu (E) adalah:

Pu (E) = 2 -m

{ 1 + (2m – 1) (1 – 2p)2m-1 ... (2.4)

Probabilitas Pu (E) untuk kode Hamming

memenuhi batas atas 2-(n-k) = 2-m untuk p< ½,

yaitu Pu ( E ) < 2-m.

3. Koreksi Kesalahan Tipe-II Hybrid ARQ Berdasarkan Kaskade Kode Hamming 3.1 Pengkode Kaskade Kode Hamming

Suatu rentetan bit dengan panjang N

digunakan sebagai masukan di mana rentetan itu belum dikodekan untuk koreksi kesalahan, dan

N bit tersebut sebagai level ke-nol dari kaskade. Kode Hamming (n, k) tertentu digunakan untuk koreksi kesalahan di mana N bit informasi dibagi menjadi grup-grup k bit.

Gambar Pengkodean untuk dua level kaskade (Kausa, Maan A. and Rahman, Mushfiqur, 1991)

Setiap grup dengan panjang k bit kemudian dikodekan ke n bit dengan pengkode Hamming (n, k). Jumlah total bit pada tingkat ini adalah (N/k)n. Tingkat ini adalah level pertama dari kaskade. Level kedua dari kaskade dibentuk dengan membagi (N/k)n bit yang ada menjadi grup-grup lagi yang terdiri dari k bit. Bit-bit ini membentuk (N/k2)n grup yang serupa. Setiap

grup dikodekan lagi menjadi n bit oleh pengkode yang sama. Pada akhir tingkat ini ada (N/k2)n2 = N(n/k)2 bit. Proses ini dilanjutkan

sampai mencapai level kaskade tertentu. Gambar di atas (Kausa, Maan A. and Rahman,

Mushfiqur, 1991) menggambarkan proses ini untuk dua level kaskade (M = 2).

3.2 Pendekode Kaskade Kode Hamming

Penerima menerima rentetan bit yang telah dikodekan ke level ke–M dengan N(n/k)2 bit. Pada tingkat ini kesalahan bit kanal adalah ε. Kemudian penerima membagi bit yang diterima sebagai blok-blok bit dengan panjang n bit, dan sindrom dihitung dari setiap blok untuk koreksi kesalahan.

Gambar Pendekatan untuk dua level kaskade (Kausa, Maan A. and Rahman, Mushfiqur, 1991)

Setelah dilakukan pengecekan tingkat pertama, penerima membuang bit cek sehingga tinggal k informasi, tetapi sekarang dengan probabilitas kesalahan bit yang berbeda, yaitu

ε. Probabilitas kesalahan bit setelah pendekodean adalah sama untuk semua posisi n

pada blok, dan pembuangan bit cek tidak mengubah probabilitas kesalahan per posisi untuk bit informasi. Bit yang tersisa berhubungan dengan level ke-(M–1) dari kaskade. Penerima membagi lagi bit-bit ini menjadi blok-blok yang terdiri dari n bit, mengecek kesalahan pada setiap blok, dan membuang bit cek. Pendekodean level kaskade yang lebih rendah memiliki probabilitas kesalahan bit ε. Proses ini berlanjut sampai penerima mendekodekan N bit informasi yang asli. Gambar di atas (Kausa, Maan A. and Rahman, Mushfiqur, 1991) menggambarkan proses pendekodean untuk dua level kaskade.

3.3 Probabilitas Kesalahan Bit yang

Didekodekan

Vektor kode yang didekodekan adalah salah bila paling sedikit satu bit salah, dan tidak berarti setiap bit pada vektor kode yang diterima adalah salah. Tingkat kesalahan bit setelah pendekodean ε digunakan untuk menghitung kesalahan, di mana tingkat kesalahan bit kanal adalah ε. Tingkat kesalahan bit ε untuk suatu kodeHamming (n, k) adalah:

(5)

( ) ( ) ( )ni n i i i A n i ε ε A i n i ε − = −

⎥ ⎦ ⎤ ⎢ ⎣ ⎡ + − − − ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ + = 1 2 1 . 1 -n 1 ' i 0 1 .... (3.1)

di mana: Ai = distribusi bobot kode linier dan

i = 0,…,n

Misalnya untuk kode Hamming (7,4) dengan

M = 1 dan ε = 10-1, didapatkan : ε’ = 0,06688

3.4 Penyebaran Bit

Pengambilan keputusan yang sederhana pada level kedua dari kaskade dapat membuat k bit yang berdekatan pada suatu waktu dianggap sebagai sebuah blok. Hal ini mengakibatkan kesalahan karena pengecekan level kedua pendekodean tidak bisa memberikan keputusan yang benar tanpa rentetan yang diterima bebas dari kesalahan atau mengandung satu kesalahan per blok. Di lain pihak, jika ada kesalahan tertinggal pada grup ini dari bit-bit setelah pengecekan tingkat pertama, akan ada paling sedikit tiga kesalahan per blok, dan ini terjadi bila kanal memiliki lebih dari satu kesalahan per blok. Kebanyakan kesalahan yang tertinggal terbatas pada bagian informasi, dan pengecekan tingkat kedua tidak dapat mengoreksinya. Solusi dari masalah ini adalah menyebarkan bit cek tingkat pertama dari blok yang sama (bit interleaving). Proses ini ekuivalen dengan mengacak kesalahan setelah proses pendekodean. Pada sisi pengirim, untuk melakukan level kedua dari pengkodean, setiap

k bit informasi dipilih dari k blok yang berbeda dari level pertama pengkodean. Proses ini diperlukan untuk menjaga bit informasi pada tingkat yang sama.

Jika proses pengkodean kaskade diatur oleh interleaving yang sesuai, maka kesalahan bit pada setiap blok sesudah deinterleaving

adalah bebas secara statistik, karena setiap bit didekodekan berasal dari blok yang berbeda. Sehingga probabilitas kesalahan bit yang didekodekan dengan dua level pendekodean adalah: ( ) ( ) ( )ni n i i i A n i ε ε A i n i ε − = −

⎥ ⎦ ⎤ ⎢ ⎣ ⎡ + − − − ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ + = 1 2 1 . ' 1 -' n 1 '' i 1 1 .... (3.2)

di mana ε‘ diberikan oleh persamaan (3.1). Misalnya untuk kode Hamming (7,4) dengan M = 2 dan ε’ = 0,06688, diperoleh:

ε’’ = 0,033063.

Gambar Penyebaran 4 x 16 bit untuk dua level kaskade menggunakan kode Hamming (7,4) (Kausa, Maan A. and Rahman, Mushfiqur, 1991)

3.5 Probabilitas Pendekodean yang Tepat dari Kaskade Kode Hamming

Jika k bit ditransmisikan melalui suatu BSC

yang memiliki tingkat kesalahan bit ε, maka probabilitas penerimaan bit secara benar adalah: (1-ε )k ... (3.3)

Unjuk Kerja Koreksi Kesalahan Tipe-II Hybrid ARQ dengan Menggunakan Kaskade Kode 43

(6)

Jika digunakan kode Hamming (n,k), maka probabilitasnya menjadi:

( 1 - ε )n + nε ( 1 - ε )n – 1 ... (3.4)

Bila digunakan dua level kaskade, maka pada penerima, setelah langkah pendekodean pertama, tingkat kesalahan bit berkurang menjadi ε‘. Sehubungan adanya interleaving, diperoleh n bit independen. Probabilitas pendekodean yang tepat dari suatu blok setelah langkah pendekodean kedua adalah:

(1 - ε’)n + nε(1 - ε’) n – 1 ... (3.5)

Jika digunakan tiga level kaskade, maka probabilitas pendekodean yang tepat dari satu blok dengan n bit adalah:

(1 - ε “) n + nε “ (1 - ε “) n – 1... (3.6) Di mana ε “ diperoleh dari persamaan (3.2). Teknik ini diaplikasikan pada sembarang level dari kaskade di bawah kondisi interleaving

yang sempurna.

Pada prinsipnya untuk sembarang level kaskade, jika dimulai dengan N bit, maka tepat sebelum langkah final pendekodean ada N/k

dengan n bit yang didekodekan.

Probabilitas pendekodean yang tepat dari superblok adalah Pcj, di mana bit-bit dikodekan

untuk level i. Dan untuk M = 1:

Pc.1 = [(1 - ε)n+nε(1 - ε)n – 1]N / k ... (3.7)

Hal ini sesuai kenyataan bahwa semua N/k

sub–blok secara lengkap independen. Tetapi ini tidak berlaku untuk M > 1 karena meskipun semua n bit dalam satu blok adalah independen, bit-bit pada blok yang berbeda tergantung satu sama lain sehubungan langkah pendekodean yang lalu. Probabilitas pendekodean yang tepat dari superblok tidak dapat diperoleh dengan mengalikan masing-masing probabilitas dari sub–blok. Satu solusi untuk masalah ini adalah menggunakan batas berikut ini. Jika:

Pc ≡ probabilitas pendekodean yang tepat dari

suatu sub–blok

PC ≡ probabilitas pendekodean yang tepat dari

superblok

Pe = 1 – Pc ≡ probabilitas pendekodean yang

salah dari suatu sub–blok Maka:

PE = probabilitas keputusan yang salah dari

superblok

< Pe+ Pe. . . . + Pe= ( N / k ) Pe

dan PC > 1 – PE . Jika diterapkan untuk M = 2

menghasilkan:

Pc,2 > 1–

{

1−

[

(

1−ε'

)

n+'

(

1−ε'

)

n−1

]

}

k

N ... (3.8)

Ketatnya batas ini tergantung pada nilai Pe

dan jumlah sub–blok N/k. Perlu ditekankan bahwa nilai PC yang diperoleh dengan batas

tersebut merupakan pendekatan konservatif dan nilai aktualnya akan selalu lebih besar.

3.6 Koreksi Kesalahan Tipe-II Hybrid ARQ

Jika sistem kaskade digunakan pada skema

hybrid ARQ, rentetan bit awal (N) memiliki beberapa redundant bit untuk deteksi kealahan berdasarkan kode deteksi kesalahan (n,k) yang dibangkitkan oleh suatu kode polinomial. Hal ini dibutuhkan hanya untuk suatu message pada transmisi pertamanya.

Ketika penerima mendeteksi kehadiran kesalahan pada word yang diterima, penerima menyimpan word yang mengandung kesalahan pada suatu buffer, dan meminta transmisi ulang. Transmisi ulang terdiri dari superblok dari sub– blok parity check bit, yang berdasarkan pada

message asli dan suatu kode koreksi kesalahan Hamming pada level pertama pengkodean. Superblok parity check bit yang diterima ini digunakan untuk mengoreksi kesalahan pada

word yang mengandung kesalahan yang tersimpan pada buffer penerima. Blok yang didekodekan diperiksa kesalahannya oleh kode deteksi kesalahan. Jika koreksi kesalahan tidak berhasil, penerima penyimpan level pertama

parity check bit dan meminta transmisi ulang kedua. Transmisi ulang kedua adalah superblok lainnya dari sub–blok parity check bit

berdasakan message asli, bit cek level pertama seperti yang tersimpan pada pengirim, dan kode koreksi kesalahan yang sama. Sebelum pengkodean dilakukan interleaving dan sesudahnya pendekodean dilakukan deinterleaving

yang sesuai. Blok bit–cek level kedua yang diterima ini digunakan lagi untuk mengoreksi

message yang mengandung kesalahan yang

tersimpan pada penerima. Proses ini diulang bila perlu sampai parity check bit level ke-M

ditransmisikan.

Jika NAK masih dikirimkan balik dan transmisi ulang ke-(M+1) masih dibutuhkan, penerima membuang semua bit yang telah tersimpan. Kemudian pengirim mentransmisikan seluruh data seperti yang telah tersimpan pada

buffer. Transmisi ulang ini terdiri dari bit

(7)

informasi ditambah dengan parity check bit

dari semua level. Transmisi ulang berikutnya dilakukan untuk seluruh message dan semua

parity bit sampai ke–M . Sehingga rentetan dari transmisi ulang adalah I, P1, P2, …. ,PM, (I + P1 + P2 + . . . . +PM ), ( I + P1 + P2 + . . . . +PM ), .

. . , sesuai dengan jumlah NAK yang dikirim oleh penerima. Jadi pada sistem ini, setelah transmisi ulang ke-M dilakukan pembaharuan seluruh data tanpa melalui pengkodean setingkat demi setingkat.

4. Analisis dan Simulasi Proses Unjuk Kerja Koreksi Kesalahan Tipe-II Hybrid ARQ

4.1 Keandalan

Keandalan adalah suatu ukuran kebenaran data yang diterima. Probabilitas word yang dikirim telah diterima dan mengandung kesalahan dinotasikan dengan P(E). Supaya diperoleh sistem dengan keandalan tinggi, kode deteksi kesalahan yang digunakan harus mampu membuat P(E) sangat kecil. Pada suatu sistem ARQ, P(E) adalah:

f u u P P P E P + = ) ( ... (4.1) di mana:

Pu = Probabilitas suatu kesalahan tak

terdeteksi pada n-bit word yang didekodekan.

Pf = Probabilitas n-bit word yang

didekodekan bebas dari kesalahan Untuk membuat P(E) sangat kecil, Pu

dibuat jauh lebih kecil dibandingkan Pf. Batas Pu

yang digunakan pada kebanyakan kode adalah:

Pu < 2 – ( n - k ) ... (4.2)

di mana: n = Panjang bit vektor kode = 7 k = Panjang bit massage = 4

Misalnya untuk kode Hamming (7,4) diperoleh: Pu < 0,125.

Batas ini adalah batas yang sederhana menurut Korzhik. Beberapa kode bahkan memiliki batas yang lebih ketat yaitu:

[

n n

]

n

u ε ε

P 2−( −1)1+(12 ) 2(1 ) ... (4.3)

Jika kode yang memenuhi salah satu dari batas tersebut digunakan untuk deteksi

kesalahan, probabilitas suatu kesalahan tidak terdeteksi dapat dibuat sangat kecil dengan menggunakan jumlah parity bit yang tidak terlalu banyak.

4.2 Analisis Throughput

Pada sistem ini diasumsikan kanal transmisi memiliki kesalahan acak dengan tingkat kesalahan bit (Bit Error Rate [BER]) ε, dan kanal umpan balik bebas dari kesalahan. Karena SR ARQ adalah skema ARQ yang paling efisien, maka analisis throughput

dilakukan untuk sistem kaskade dengan SR ARQ. Throughput dari skema ini diasumsikan penerima memiliki buffer tanpa batas.

Untuk menghitung throughput, terlebih dahulu ditentukan jumlah rata-rata bit yang perlu ditransmisikan sebelum N bit informasi berhasil diterima oleh penerima. Jika jumlah ini adalah T, maka throughput η adalah:

T N

η= ... (4.4)

Jika sampai dilakukan transmisi ke-i, i = 0, 1, 2,... (di mana i = 0 adalah transmisi pertama), dan:

Ec,i = penerima menerima blok dengan tepat Ed,I = penerima mendeteksi kesalahan dan

meminta transmisi ulang

Ee,I = penerima tidak mendeteksi adanya

kesalahan maka:

Pr (Ec,i) + Pr (Ed,i) + Pr(Ee,i) = 1 i = 0, 1, 2,.. .... (4.5)

Jika diasumsikan Pr(Ee,i) = 0, maka untuk level M = 2:

a. Pr (Ec,3) = Pr (Ec,4) = . . .= Pc,2 ... (4.6)

Dan akibatnya:

Pr (Ed,3) = Pr (Ed,4) = ... = 1 - Pc,2 = Pd,2 . (4.7)

b. Kejadian ini antara satu sama lain dan kejadian sebelumnya adalah bebas statistik. Sehingga jumlah rata-rata transmisi V adalah:

V = 1.Pr(Ec,0) + 2.Pr (Ed,0 Ec,1)

+ 3.Pr(Ed,0 Ed,1 Ec,2) + 4.Pr (Ed,0 Ed,1 Ec,2)Pc,2

+ 5.Pr(Ed,0 Ed,1 Ec,2)Pd,2Pc,2 + 6 . Pr (Ed,0 Ed,1 Ec,2)P2d,2Pc,2 + … ... (4.8)

Jika dilakukan evaluasi probabilitas di atas dengan memasukkan persamaan lain:

a. Pr(Ec,0) atau Pc,0 diberikan oleh persamaan: Pc,0 = (1 – ε)N ... (4.9)

b. Pr(Ed,0 Ec,1) = Pr(Ec,1|Ed,0) Pr(Ed,0) ... (4.10)

Pr(Ec,1|Ed,0) adalah probabilitas dari

pendekodean yang tepat pada level pertama,

Unjuk Kerja Koreksi Kesalahan Tipe-II Hybrid ARQ dengan Menggunakan Kaskade Kode 45

(8)

Jurnal Teknik Elektro ENSIKOM Vol. 3, No. 2 – DESEMBER 2005 (39 – 49) 46

jika terdeteksi suatu kesalahan pada data informasi. Probabilitas ini dihitung sebagai: Pr(Ec,1|Ed,0) = [(probabilitas pendekodean

yang tepat pada tingkat ini) – (probabilitas pola yang dapat dikoreksi yang tidak terjadi karena sudah dikoreksi pada transmisi sebelumnya)]/(probabilitas pola yang dapat terjadi pada tingkat ini).

Untuk kode Hamming (n,k) probabilitas Pr(Ec,1|Ed,0) adalah:

[

] [

]

2 ) 1 ( 1 ) 1 ( ) ( ) 1 ( ) -(1 n ) -(1 n n-1 1 k k n n k k n ε ε ε ε ε ε ε − − − − + − − + − (4.11) Jika sejumlah B blok dengan k2 bit digunakan

sebagai bit informasi pada rentetan awal, maka blok-blok ini bebas statistik setelah pendekodean, sehingga dipeoleh: ) | Pr(Ec,1 Ed,0 [ ] [ ] B k k n n k k n ⎪⎭ ⎪ ⎬ ⎫ ⎪⎩ ⎪ ⎨ ⎧ − − − − + − − + − 2 ) 1 ( 1 ) 1 ( ) ( ) 1 ( ) -(1 n ) -(1 n n-1 1 ε ε ε ε ε ε ε (4.12) c. Probabilitas berikutnya adalah:

Pr(Ed,0 Ed,1 Ec,2) = Pr(Ed,0) Pr(Ed,1| Ed,0).

Pr(Ec,2| Ed,0 Ed,1) ... (4.13)

Faktor persamaan tersebut adalah :

Pr(Ed,0) = 1 - Pc,0 ... (4.14)

Pr(Ed,1|Ed,0) = 1 – Pr(Ec,1|Ed,0) ... (4.15)

Yang diperoleh dari persamaan (4.9) dan (4.12)

Faktor persamaan berikutnya menggunakan batas: Pr(Ec,2| Ed,0 Ed,1) > B c c c P P P ⎪⎭ ⎪ ⎬ ⎫ ⎪⎩ ⎪ ⎨ ⎧ − − 1 , 1 , 2 , 1 ... (4.16)

d. Probabilitas dari faktor persamaan yang terakhir adalah: Pr(Ed,0 Ed,1 Ed,2) = Pr(Ed,0) Pr(Ed,1| Ed,0). Pr(Ed,2| Ed,0 Ed,1) ... (4.17) di mana: Pr(Ed,2| Ed,0 Ed,1) = 1 – Pr(Ec,2| Ed,0 Ed,1) (4.18) < 1 - B c c c P P P ⎪⎭ ⎪ ⎬ ⎫ ⎪⎩ ⎪ ⎨ ⎧ − − 1 , 1 , 2 , 1

Untuk mengevaluasi throughput dari sistem, harus dilakukan perhitungan panjang bit dari setiap transmisi. Panjang bit transmisi pertama adalah N bit. Ketika digunakan suatu kode Hamming (n,k), dengan m = n - k parity

check bit, panjang bit transmisi ulang ke-i, ℓi,

adalah: i = ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ − k m k n N i1 i < M ... (4.19) Untuk i > M, pengirim akan mentransmisikan semua bit cek seperti yang telah tersimpan sebagai tambahan bagi bit informasi, sehingga:

i = M k n N ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ i > M ... (4.20)

Pada kasus ini, penerima hanya tergantung pada blok yang sekarang diterima, dan mengabaikan semua bit sebelumnya. Kemudian, untuk M = 2:

(

,0 ,1

)

(

,0 ,1 ,2

)

0 , 1 .Pr d c 1 .Pr d d c c k E E E n k m k m N E E k m N NP T ⎦ ⎤ ⎢ ⎣ ⎡ ⎠ ⎞ ⎜ ⎝ ⎛ + + + ⎥⎦ ⎤ ⎢⎣ ⎡ + + =

(

,0 ,1 ,2

)

,2 2 Pr 1 Ed Ed Ed Pc k n k n k m k m N ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎣ ⎡ ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ + ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ + + +

(

)

. . . Pr 2 1 ,0 ,1 ,2 ,2 ,2 2 + ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎣ ⎡ ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ + ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ + + + Ed Ed Ed Pd Pc k n k n k m k m N

(

)

(

)

⎩ ⎨ ⎧ ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ + + + ⎥⎦ ⎤ ⎢⎣ ⎡ + + = c,0 1 .Pr d,0 c,1 1 .PrEd,0Ed,1Ec,2 k n k m k m E E k m P N T

(

)

(

)

⎪⎭ ⎪ ⎬ ⎫ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ + ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ + + + 2 , 2 , 1 , 0 , 2 2 , 1 , 0 , 1 Pr Pr 1 c d d d d d d P E E E k n E E E k n k m k m [1] (4.21)

Kemudian throughput η dapat dihitung dengan harga T pada persamaan (4.21). Panjang bit transmisi ulang dengan digunakannya kode Hamming (7,4) dan panjang informasi N = 16 bit adalah 1 = 12, 2 = 21 dan 3 = 49 bit.

Misalnya bila digunakan kode Hamming (7,4), level kaskade M = 2, jumlah bit informasi 4x16 bit dan BER = 10-1, sehingga n = 7, k = 4,

ε = 10-1 dan N = 64. Komponen-komponen dari

persamaan (4,21) adalah: Pc,0 = 0,4782969 Pr(Ed,0 Ec,1) = 0,01931211412 Pr(Ed,0 Ed,1 Ec,2) ≈ 0,02511954929 Pr(Ed,0 Ed,1 Ed,2) ≈ 0,4772714366 Pc,2 = (1- ε’’)n = 0,7902913933

Jumlah rata-rata bit yang ditransmisikan adalah: T = 249,6105789 ≈ 250 bit

Dan throughput-nya adalah 0,256

250 64 = = = T N η

4.3 Perancangan Simulasi Proses

Program simulasi proses digunakan untuk menggambarkan proses pengkodean, transmisi

(9)

data, deteksi kesalahan, transmisi ulang (ARQ), koreksi kesalahan (FEC), dan pendekodean.

4.3.1 Menu Masukan

Masukan bit informasi berjumlah 4 x 16 bit dengan proses masukan dilakukan secara acak (random), bit 0 atau bit 1 seluruhnya. Masukan tingkat kaskade (level pengkodean) dibatasi untuk M = 1 dan M = 2, di mana bit informasi sebelum pengkodean dihitung sebagai level M = 0. Fungsi masukan lain adalah tingkat kesalahan bit ε (BER) dengan harga 10-6 sampai 10-1.

4.3.2 Pegkodean dan Interleaving

Level pengkodean yang digunakan berdasarkan masukan yang telah dilakukan sebelumnya, dengan level maksimal M = 2. Pada proses pengkodean ini digunakan kode Hamming (7,4) dengan matriks pembangkit G. Pada masing-masing tingkat kaskade dilakukan proses penyebaran bit (interleaving) yang sesuai. Juga dilakukan penghitungan jumlah total bit T yang telah ditransmisikan, untuk keperluan menghitung throughput.

4.3.3 Transmisi Data

Pada proses transmisi data dilakukan suatu proses acak untuk membuat beberapa bit mengalami kesalahan. Jumlah bit yang salah disesuaikan dengan fungsi masukan tingkat kesalahan bit ε (BER). Bit-bit yang ditransmisikan adalah bit informasi ditambah beberapa redundant bit untuk deteksi kesalahan berdasarkan kode deteksi kesalahan (7,4) yang dibangkitkan oleh kode polinomial g(X) = 1 + X + X3.

4.3.4 Pendekodean dan De-interleaving

Pada bit-bit yang telah diterima dilakukan proses deteksi dan koreksi kesalahan. Matriks

parity check H yang digunakan oleh kode

Hamming (7,4). Pengoreksi kesalahan dilakukan berdasarkan penjumlahan biner antara vektor r

yang diterima dengan vektor kesalahan e, v = r + e. Untuk suatu kesalahan yang terdeteksi

tetapi tidak dapat dikoreksi, dilakukan suatu prosedur SR-ARQ, seperti tersebut pada bagian 3.6. Pada bagian penerima, diasumsikan kapasitas buffer tanpa batas dan kanal umpan balik untuk mengirim acknowledgment tanpa derau. Setelah dilakukan proses ARQ dan FEC, sehingga vektor-vektor yang diterima dianggap telah bebas dari kesalahan, maka dilakukan proses pendekodean dan de-interleaving yang

sesuai dengan tingkat kaskade M yang digunakan.

4.3.5 Diagram Blok Program Simulasi Proses

Gambar Diagram blok simulasi proses kaskade kode Hamming untuk koreksi kesalahan tipe-II hybrid ARQ 4.3.6 Diagram Alir Program Simulasi Proses

Pada diagram alir program simulasi proses, mula-mula dimasukkan tingkat level kaskade. Dalam hal ini simulasi proses-proses hanya menggunakan level kaskade tingkat 1 dan 2 saja. Kemudian dimasukkan tingkat kesalahan BER, dalam hal ini BER dibatasi antara 10-1 – 10-6. Proses acak 64 bit informasi dikodekan dengan menggunakan generator hamming. Pada pentransmisian diberikan error yang acak yang sesuai dengan tingkat BER.

Sebelum didekodekan, dilakukan pengecekan. Jika terdapat kesalahan pada data transmisi, dilakukan perbaikan dengan koreksi kesalahan FEC, apabila koreksi kesalahan FEC tidak mampu untuk memperbaiki kesalahan, maka akan dilakukan koreksi kesalahan SR-ARQ. Sehingga akan diperoleh throughput dan keandalan yang tinggi.

Unjuk Kerja Koreksi Kesalahan Tipe-II Hybrid ARQ dengan Menggunakan Kaskade Kode 47

(10)

Gambar Diagram alir simulasi proses kaskade kode Hamming untuk koreksi kesalahan tipe-II hybrid

ARQ 4.3.7 Hasil Simulasi Proses

Pada bagian ini diperoleh 4 x 16 bit informasi. Untuk mengetahui kondisi dan unjuk kerja setiap dilakukan eksperimen terhadap simulasi proses, maka dibuat satu laporan hasil simulasi proses dan parameter yang digunakan pada simulasi proses tersebut. Hal-hal yang ditampilkan pada laporan tersebut adalah tingkat kaskade M yang digunakan, tingkat kesalahan bit ε (BER), keandalan dan throughputη, yaitu: Keandalan = (bit informasi yang benar) (jumlah bit informasi)

Throughput: η = (jumlah bit informasi) (total bit ditransmisikan)

4.4 Analisis Unjuk Kerja Hasil Program Simulasi Proses

Program simulasi proses ini digunakan untuk penghitungan unjuk kerja (keandalan dan

throughput) tipe-II hybrid ARQ (adaptive ARQ) berdasarkan kaskade kode Hamming (7,4).

Untuk mengetahui unjuk kerja sistem ini, dilakukan beberapa percobaan simulasi proses yang mencakup throughput dan keandalan.

Dari hasil simulasi diperoleh bahwa pada

BER 10-6 sampai dengan 7,5.10-5, sistem

Hamming (7,4) dengan M = 2 memberikan

throughput yang setara sistem Hamming (7,4) dengan M = 1. Sedangkan pada BER > 7,5.10-5,

sistem ini hanya memiliki throughput lebih rendah dari sistem Hamming (7,4) dengan

M = 1.

Sistem dengan tingkat kaskade M = 1 memiliki keandalan satu hanya sampai pada BER = 7,5.10-2. Sedangkan sistem dengan

tingkat kaskade M = 2 andal dalam mengoreksi kesalahan bit sampai pada BER = 8.10-2. Hal ini menunjukkan bahwa sistem Hamming (7,4) dengan tingkat kaskade M = 2 memiliki keandalan lebih tinggi daripada sistem Hamming (7,4) dengan tingkat kaskade M = 1.

Dengan demikian tingkat kaskade yang efisien dan efektif adalah M = 1 pada BER < 7,5.10-2, dan M = 2 pada 7,5.10-2 < BER < 8.10-2. Sedangkan pada BER > 8.10-2 sistem dengan

tingkat kaskade M = 1 maupun M = 2 tidak cukup andal dalam mengoreksi kesalahan bit. Karena tidak dilakukan simulasi proses untuk tingkat kaskade M > 2, maka tidak diketahui dibutuhkannya tingkat kaskade M > 2 pada BER > 8.10-2 untuk mendapatkan tingkat keandalan

yang tinggi.

5. Kesimpulan

1. Keterbatasan unjuk kerja (throughput dan keandalan) ARQ dan FEC dapat diatasi dengan koreksi kesalahan tipe-II hybrid

ARQ yang menggunakan kaskade kode Hamming.

2. Tingkat kaskade kode Hamming yang efisien dan efektif untuk koreksi kesalahan tipe-II hybrid ARQ (adaptive ARQ) dalam mengatasi perubahan tingkat kesalahan bit adalah M = 1 pada BER < 7,5.10-2 dan M =

2 pada 7,5.10-2 < BER < 8.10-2.

3. Pada koreksi kesalahan tipe-II hybrid

ARQ, penggunaan FEC dan ARQ yang bersamaan mengakibatkan sistem memiliki

throughput dan keandalan yang lebih baik daripada penggunaan sistem ARQ atau FEC saja.

Daftar Pustaka

Andrew S. Tanenbaum, “Jaringan Komputer”, Edisi Bahasa Indonesia dari Computer Network Edisi III, Prenhallindo, Jakarta. Kausa, Maan A. and Rahman, Mushfiqur, “An

Adaptive Error Control Scheme Using

Hybrid ARQ Schemes”, IEEE

Trans.Commun, Vol.39 No.7, July 1991. Law, Averill M. and Kelton, W.David,

“Simulation Modeling & Analysis”, McGraw-Hill, Inc, 1991.

(11)

Unjuk Kerja Koreksi Kesalahan Tipe-II Hybrid ARQ dengan Menggunakan Kaskade Kode 49

Lin, Shu and Yu, Philip S., “A Hybrid ARQ Scheme with Parity Retransmission for Error Control of Satellite Channels”, IEEE Trans. Commun.vol.COM-30 no.7, July 1982.

Lin, Shu and Costello, Daniel J., Jr., “Error Control Coding, Fundamentals and Applications”, Prentice Hall, New Jersey, 1983.

Lin, Shu, Costello, Daniel J. and Miller, Michael J., “Automatic-Repeat-Request Error-Control Shemes”, IEEE Commun. Magazine, vol.22 no.12, December 1984.

Poli, Alain and Huguet Llorenc, “Error Correcting Codes, Theory and Applications, Prentice Hall, Masson, 1992.

Stallings, William, “Data and Computer Communication”, Macmillan, New York, 1985.

Yu, Philip S. and Lin, Shu, “An Efficient Selective-Repeat ARQ Scheme for Satellite Channels and Its Throughput Analysis”, IEEE Trans. Commun, vol.COM-29 no.3, March 1981.

Referensi

Dokumen terkait

sekolah tersebut. Hal pertama yang dilakukan pada tahap perencanaan dan pengembangan produk ini adalah penyusunan produk awal yang terdiri dari: 1) merancang

Sehubungan dengan pelaksanaan Seleksi Umum Prakualifikasi Jasa Konsultansi yang dilaksanakan oleh Pokja ULP Dinas Pekerjaan Umum Kab. Buru Selatan Paket Pekerjaan

Teknik referensial digunakan untuk mendeskripsikan dialog tindak tutur pada program tv sentilan sentilun edisi 16 Januari 2015 dengan judul “ Ada Gula Ada Mafia”, sedangkan

Berdasarkan latar belakang yang dikemukakan, dapat dibuat penelitian dengan mengetahui bagaimana penerapan model pembelajaran kooperatif tipe TGT dengan menggunakan

Setiap peserta JAMKESDA mempunyai hak mendapatkan pelayanan kesehatan dasar meliputi pelayanan rujukan rawat jalan tingkat lanjutan (RJTL), rawat inap tingkat lanjutan (RITL)

Berdasarkan seluruh hasil tahapan penelitian yang telah dilakukan pada Penerapan Algoritma C4.5 dalam mengklasifikasi masyarakat yang berhak menerima bantuan Kartu

Jumlah iuran yang diterima Badan Penyelenggara Jaminan Sosial (BPJS) Kesehatan Daerah Istimewa Yogyakarta (DIY) tidak sebanding dengan biaya klaim dari peserta..

– Intel membayar suku bunga 5.2% kepada pemberi pinjaman – Intel setuju untuk menukar suku bunga pinjamannya dengan – Intel setuju untuk menukar suku bunga pinjamannya dengan