Path Metric Calculation Traceback

2.5.3 Branch Metric Calculation

Metode pada perhitungan branch metric untuk hard decision decoder dan soft decision decoder berbeda [12]. Perhitungan pada hard decision decoder menggunakan Hamming distance. Hamming distance akan mengitung jarak antar pasangan bit masukan dan pasangan bit ideal. Oleh karena itu, branch metric dapat mengambil nilai dari 0, 1, dan 2. Sehingga setiap pasangan bit masukan memiliki empat branch metric satu untuk masing-masing nilai pasangan ideal. Perhitungan pada soft decision decoder menggunakan Euclidean distance. Misalkan x menjadi bit pertama yang diterima dalam pasangan, y adalah bit yang kedua, x dan y adalah nilai-nilai ideal. Maka branch metric adalah: 2 2 y y x x M b − + − = 2.12 Ketika pengawasandi menghitung 4 branch metric untuk soft decision decoder, pengawasandi hanya perlu mengetahui perbedaan dari perhitungan metrik. Jadi, nilai branch metric tidak akan berubah jika pengawasandi mengurangi 1 nilai dari semua 4 branch metric, sehingga: ; 2 2 2 2 2 2 y yy y x xx x M b + − + + − = 2.13 atau . 2 2 2 2 2 2 yy y xx x y x M M b b − + − = − − = 2.14 b M dapat dihitung tanpa perkalian di level perangkat keras. 2 x dan 2 y dihitung terlebih dahulu dan perkalian x dengan x dan y dengan y dapat dilakukan dengan sangat mudah dalam perangkat keras jika x dan y adalah konstan.

2.5.4 Path Metric Calculation

Path metrics dihitung menggunakan prosedur yang disebut Add- Compare-Select ACS [12]. Prosedur ini diulang untuk setiap bagian penyandi. 1. Add, terdapat dua keadaan pada proses sebelumnya yang berubah ke keadaan sekarang dan terdapat pasangan bit keluaran yang terkait pada proses perubahan tersebut. Path metric baru dihitung dengan menambahkan path metric sebelumnya dan branch metric yang sesuai. 2. Compare – select, dua jalur yang dihasilkan dari tahap add akan dibandingkan dan salah satu jalur akan dibuang. Ketentuan yang digunakan dalam pemilihan jalur yang akan dibuang adalah jalur yang memiliki nilai metrik yang paling besar. Karena terdapat 2 k-1 bagian penyandi, maka terdapat 2 k-1 jalur survivor pada waktu tertentu. Perbedaan antara metric dua jalur survivor tidak dapat melebihi 1 − K Log δ , dengan δ adalah sebuah perbedaan antara maksimum dan minimum dari branch metric yang memungkinkan.

2.5.5 Traceback

Ketika pengawasandi mengawasandikan sebuah aliran data yang berkelanjutan, pengawasandi diharapkan memiliki nilai latency yang terbatas [12]. Jalur-jalur di awal grafik menjadi milik dari jalur survivor. Bit yang telah diawasandikan sesuai dengan bagian ini dan dapat dikirim ke output. Pengawasandian dilakukan dengan langkah berikut: 1. Menemukan jalur survivor untuk pasangan bit masukan N+D. 2. Melakukan Traceback dari akhir jalur survivor apapun sampai ke awal. 3. Mengirimkan N bit ke output. 4. Menemukan jalur survivor untuk pasangan bit masukan N lainnya. 5. Kembali ke langkah no 2. Dalam prosedur ini, D merupakan parameter penting yang disebut decoding depth. Sebuah decoding depth harus cukup besar untuk kualitas pengawasandian, tidak kurang dari 5K. Peningkatan D mengurangi kemungkinan kesalahan pengawasandian, tetapi juga meningkatkan latency. Gambar 2.9 menujukkan grafik dari jalur survivor. Gambar 2.4 Contoh grafik jalur survivor. Lingkaran biru menunjukkan bagian penyandi. Hal ini menujukkan bahwa semua jalur survivor mempunyai awal yang umum garis merah dan hanya berbeda dibagian akhir [12]. Adapun N, menujukkan seberapa banyak bit yang di kirim ke output setelah masing-masing traceback. Sebagai contoh, jika N=1, nilai dari latency minimal, tetapi pengawasandi perlu melacak seluruh tree setiap melangkah. Komputasi ini tidak efektif. Dalam implementasi hardware, N biasanya sama dengan D. 16

BAB III PERANCANGAN SIMULASI KODE KONVOLUSI

3.1 Gambaran Umum Program

Gambar 3.1 memperlihatkan diagram alir program simulasi kode konvolusi secara singkat dari awal hingga akhir program dijalankan. Mulai Data ECG Grafik ECG dan Probabilitas error Selesai kanal AWGN Pengawasandian Viterbi Penyadian Konvolusi Gambar 3.1 Diagram alir model program simulasi kode konvolusi. Dari Gambar 3.1, alir program simulasi kode konvolusi dapat dijelaskan secara umum sebagai berikut, program mendapat masukan data berupa data ECG. Data ECG didapat dengan cara memotong ECG database dalam ukuran yang sesuai dengan ukuran masukan dari kode konvolusi. Kemudian data ECG yang telah dipotong, dikonversi ke dalam bentuk biner. Data ECG dalam bentuk biner masuk ke dalam proses penyandian konvolusi. Data ECG yang telah disandikan kemudian disimpan ke dalam Interleaving buffer. Selanjutnya, data ECG disandikan kembali penyadian konvolusi. Data ECG yang telah disandikan dua kali tersebut dikirimkan ke penerima melalui Additive White Gaussian Noise AWGN. Pada proses pengiriman tersebut, data ECG mendapatkan error yang random dari kanal AWGN. Data ECG diterima pada penerima melalui De-interleaving buffer. Data ECG akan diurutkan kembali sesuai dengan urutan data sebelum masuk ke dalam proses Interleaving. Kemudian data ECG diawasandikan pada