TUGAS AKHIR
Diajukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
Oleh:
Nama : Dian Catur Arjanto
NIM : 035114048
PROGRAM STUDI TEKNIK ELEKTRO
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2007
FINAL PROJECT
Presented as Partial Fulfillment of the Requirements
To Obtain the Sarjana Teknik Degree
In Electrical Engineering Study Program
By:
Name : Dian Catur Arjanto
Student Number : 035114048
ELECTRICAL ENGINEERING STUDY PROGRAM
DEPARTMENT OF ELECTRICAL ENGINEERING
FACULTY OF SAINS AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2007
Kupersembahkan karya tulis ini kepada :
Tuhan Yesus Kristus Pelindungku,
Ayahnda dan Ibunda Tercinta,
Keempat saudaraku Novi, Diah, Andri dan Bayu yang kucintai,
Kekasihku tersayang, dan
Almamaterku Teknik Elektro USD
Berusahalah selama kamu mampu berusaha jangan pantang menyerah.
Lebih baik bertempur dan kalah dari pada tidak pernah bertempur sama sekali.
Gunakan waktumu sebaik – baiknya supaya tiada penyesalan nantinya.
Hidup hanya sekali jadilah seperti dirimu sendiri.
dari satu laju sampling telah membawa perkembangan pada sub – area baru dalam DSP (digital signal processing) yang dikenal sebagai multirate processing. Tugas akhir ini berisi tentang program simulasi multirate signal processing.
Program simulasi akan mensimulasikan tahap-tahap multirate signal processing, dari penentuan spesifikasi Low Pass Filter (LPF), perhitungan koefisien filter, jumlah MPS (multiplication persecond ) dan TSR (total storage requirement). Program akan menghitung koefisien filter menggunakan metode Optimal. Pengguna dapat melakukan pilihan proses decimation atau interpolation saat menjalankan program. Program simulasi menggunakan sinyal input berekstensi *.wav. Sinyal input hanya diolah satu sisi saja (mono). Nilai MPS dan TSR akan berbeda pada masing – masing tingkat dan dipengaruhi oleh nilai frekuensi sampling pada tingkat tersebut.
Program simulasi untuk multirate signal processing telah diamati dan diuji. Kinerja multirate signal processing diamati dari perubahan bentuk sinyal masukan dan sinyal keluaran serta perbedaan suara sinyal masukan dan keluaran. Program ini telah berhasil melakukan simulasi untuk proses decimation dan interpolation dengan baik.
Kata kunci : filter LPF, koefisien filter, MPS dan TSR.
processing (DSP) known as multirate processing. This final project contains the simulation program of multirate signal processing.
Simulation program simulates the steps of multirate signal processing, from determination of Low Pass Filter (LPF) specification, calculation of filter coefficient, the number of MPS (multiplication persecond) and TSR (total storage requirement). Program calculates filter coefficient using Optimal method. User can choose decimation or interpolation process when running the program. This simulation program uses input signal with *.wav extension. Input signal will be processed for one side only (mono). The value of MPS and TSR will be different at every stage and determined by sampling frequency value at each stage.
Simulation program for multirate signal processing have been observed and tested. The performance of multirate signal processing is observed from output and input signal transformation and the difference of output and input signal voice. This program has performed the simulation for decimation and interpolation process succesfully.
Keyword: LPF, filter coefficient, MPS and TSR
Anugerah-Nya penulis akhirnya dapat menyelesaikan tugas akhir ini dengan baik dan
lancar.
Dalam proses penulisan tugas akhir ini penulis menyadari bahwa ada begitu
banyak pihak yang telah memberikan perhatian dan bantuan dengan caranya
masing-masing sehingga tugas akhir ini dapat terselesaikan. Oleh karena itu penulis ingin
mengucapkan terima kasih antara lain kepada :
1. Tuhan Yesus atas penyertaan dan perlindungan - Nya.
2. Bapak Ir. Greg. Heliarko, SJ., B.ST., MA., M.Sc, selaku dekan fakultas teknik.
3. Bapak Damar Wijaya, S.T., M.T., selaku pembimbing atas bimbingan, dukungan,
saran dan kesabaran bagi penulis dari awal sampai tugas akhir ini bisa selesai.
4. Bapak Bayu Primawan, S.T., M.Eng. selaku pembimbing II yang telah bersedia
meluangkan waktu serta memberikan bimbingan dan saran yang tentunya sangat
berguna untuk Tugas Akhir ini.
5. Bapak B. Djoko Untoro S. SSi, MT dan Pius Yozy Merucahyo, ST, MT, selaku
penguji yang telah bersedia memberikan kritik dan saran.
6. Seluruh dosen teknik elektro atas ilmu yang telah diberikan selama penulis
menimba ilmu di Universitas Sanata Dharma.
7. Ayahnda dan Ibunda tercinta atas kasih sayang, semangat, doa, dan dukungan
secara moril maupun materiil, serta dorongan untuk segera menyelesaikan Tugas
Akhir ini.
kebosanan melanda.
10.Teman-teman akrabku: Eri, Ninik, Novi, Lukas, Nanang, Billy terima kasih atas
bantuan dan masukan yang telah diberikan selama ini.
11.Teman-teman elektro: Wisnu, Sukur, Dedi, Meri, Suryo, Inggit, Bakri, Widi,
Topan, Boboto, Andika dan Anom serta teman-teman angkatan 2002, 2003 dan
2004 yang selalu berbagi ilmu dan pengalaman kuliah.
12.Teman-teman kost ku yang selalu memberikan saran-saran yang berguna.
13.Dan seluruh pihak yang telah ambil bagian dalam proses penulisan tugas akhir ini
yang terlalu banyak jika disebutkan satu-persatu.
Dengan rendah hati penulis menyadari bahwa tugas akhir ini masih jauh dari
sempurna, oleh karena itu berbagai kritik dan saran untuk perbaikan tugas akhir ini
sangat diharapkan. Akhir kata, semoga tugas akhir ini dapat bermanfaat bagi semua
pihak. Terima kasih.
Yogyakarta, September 2007
Penulis
JUDUL……….i
HALAMAN PERSETUJUAN………..iii
HALAMAN PENGESAHAN……….…...iv
HALAMAN PERNYATAAN KEASLIAN KARYA………...v
HALAMAN PERSEMBAHAN………vi
HALAMAN MOTTO………...vii
INTISARI……….viii
ABSTRACT………ix
KATA PENGANTAR……….x
DAFTAR ISI……….xii
DAFTAR GAMBAR………....xiv
DAFTAR TABEL………...xvii
DAFTAR CONTOH………...xviii
BAB I. PENDAHULUAN 1.1. Judul …...………1
1.2. Latar Belakang Masalah ...1
1.3. Tujuan ……….………..2
1.4. Manfaat ...2
1.5. Batasan Masalah………2
1.6. Metodologi Penelitian………..………..3
1.7. Sistematika Penulisan………....3
BAB II. DASAR TEORI 2.1. Decimation Menggunakan Faktor integer…...………..5
2.2. Interpolation dengan Faktor integer...7
2.3. Pengubahan Laju Sampling dengan Faktor Non – Integer ...…...10
2.4. Pendekatan Multistage untuk Pengubahan Sampling Rate ...13
2.4.1. Menentukan Spesifikasi Filter ...15
2.4.2. Kebutuhan Filter untuk Masing – Masing Tingkat ...18
SIGNAL PROCESSING
3.1. Algoritma Perancangan Program...……….35
3.2. Masukkan yang Diinginkan oleh Pengguna ...……..36
3.3. Menampilkan Pilihan Decimation dan Interpolation ...38
3.3.1. Proses Decimation ...39
3.3.2. Proses Interpolation ...41
3.4. Menghitung dan Menampilkan nilai N, MPS, dan TSR ...44
3.5. Layout Program.……….45
BAB IV. HASIL DAN PEMBAHASAN 4.1. Halaman Utama...………...49
4.2. Kinerja Multirate Signal Processing ...54
4.2.1. Proses Decimation ………...54
4.2.2. Proses Interpolation ...60
BAB V. PENUTUP 5.1 Kesimpulan………...……..68
5.2 Saran ...68
DAFTAR PUSTAKA
LAMPIRAN
Gambar 2.1 Diagram blok decimation dengan faktor M ...………...5
Gambar 2.2 Ilustrasi decimation dengan faktor decimation M = 3 ...6
Gambar 2.3 Deskripsi spektral decimation sinyal dari 6 kHz menjadi 2 kHz ...7
Gambar 2.4 Diagram blok interpolation dengan faktor interpolation L ...8
Gambar 2.5 Ilustrasi interpolation dalam domain waktu L = 3 ...9
Gambar 2.6 Deskripsi spektral interpolation dari 2 KHz menjadi 6 KHz ...10
Gambar 2.7 Ilustrasi interpolation dengan faktor non integer (L = 3, M = 2) …..12
Gambar 2.8 Deskripsi spektral interpolation dengan faktor 3 / 2 dari 2 KHz menjadi 3 KHz ...13
Gambar 2.9 Proses multistage decimation ...14
Gambar 2.10 Algoritma perancangan multirate signal processing………...15
Gambar 2.11 Spesifikasi tanggapan frekuensi untuk filter lowpass dengan ripple yang seragam pada passband dan stopband ...17
Gambar 2.12 Decimation satu tingkat ...………...22
Gambar 2.13 Aplikasi tiap tingkat dari proses decimation …………...……...26
Gambar 2.14 Decimation dua tingkat ...28
Gambar 2.15 Diagram alir untuk proses decimation ………...…32
Gambar 2.16 Diagram alir yang efisien untuk proses decimation ...32
Gambar 2.17 Diagram alir proses interpolation ………...…………33
Gambar 3.1 Algoritma program multirate signal processing ...35
Gambar 3.2 Diagram alir proses masukan oleh pengguna ………....…37
Gambar 3.6 Diagram alir untuk proses interpolation 1 tingkat …...…42
Gambar 3.7 Diagram alir untuk interpolation 3 tingkat ………43
Gambar 3.8 Diagram alir proses perhitungan N, MPS dan TSR...44
Gambar 3.9 Diagram alir program multirate signal processing ...……...45
Gambar 3.10 Layout program simulasi perancangan multirate signal processing ..46
Gambar 4.1 Tampilan halaman pembuka program...……….….49
Gambar 4.2 Tampilan program utama...50
Gambar 4.3 Tampilan submenu Bantuan...………...51
Gambar 4.4 Pesan kesalahan passband ripple tanpa masukan...51
Gambar 4.5 (a) Tampilan pengambilan data berekstensi *.wav ...52
Gambar 4.5 (b) Tampilan penyimpanan data berekstensi *.wav...52
Gambar 4.6 Pesan kesalahan faktor decimation tidak sesui dengan syarat ...53
Gambar 4.7 Message box keluar program simulasi...53
Gambar 4.8 Kurva amplitudo sinyal masukan proses decimation ………...57
Gambar 4.9 Kurva amplitudo sinyal keluaran proses decimation...57
Gambar 4.10 Kurva amplitudo sinyal keluaran proses decimation satu tingkat ...58
Gambar 4.11 Kurva amplitudo sinyal keluaran proses decimation dua tingkat...58
Gambar 4.12 Kurva amplitudo sinyal keluaran proses decimation tiga tingkat …..58
Gambar 4.13 Kurva amplitudo sinyal masukan proses interpolation …...64
Gambar 4.14 Kurva amplitudo sinyal keluaran proses interpolation...64
Gambar 4.15 Kurva amplitudo keluaran proses interpolation satu tingkat...65
Tabel 2.1 Algoritma untuk mencari nilai optimum dari I dan Mi ….………...21
Tabel 2.2 Hasil perhitungan nilai N, M, MPS, dan TSR tiap - tiap tingkat .……….24
Tabel 2.3 Spesifikasi filter untuk decimation dua tingkat...27
Tabel 2.4 Perbandingan nilai – nilai kompleksitas...31
Tabel 4.1 Perancangan filter LPF untuk multirate signal processing...54
Tabel 4.2 Proses yang diinginkan dan sinyal masukan yang dipilih...55
Tabel 4.3 Hasil proses decimation satu tingkat...55
Tabel 4.4 Perancangan filter LPF untuk multirate signal processing...55
Tabel 4.5 Hasil proses decimation dua tingkat ...56
Tabel 4.6 Perancangan filter LPF untuk multirate signal processing...56
Tabel 4.7 Hasil proses decimation tiga tingkat...57
Tabel 4.8 Hasil keluaran nilai N, M, MPS, dan TSR proses decimation ...59
Tabel 4.9 Perancangan filter LPF untuk multirate signal processing ……….61
Tabel 4.10 Proses yang diinginkan dan sinyal masukan yang dipilih ...61
Tabel 4.11 Hasil proses interpolation satu tingkat ...62
Tabel 4.12 Perancangan filter LPF untuk multirate signal processing ……….62
Tabel 4.13 Hasil proses interpolation dua tingkat ...63
Tabel 4.14 Perancangan filter LPF untuk multirate signal processing ...63
Tabel 4.15 Hasil proses interpolation tiga tingkat ...64
Tabel 4.16 Hasil keluaran nilai N, M, MPS, dan TSR tiap - tiap tingkat ...67
Contoh 2.1 Proses decimation...…..……...………...…..21
Contoh 2.2 Proses decimation dari 96 kHz ke 1 kHz …...……….…………....23
Contoh 2.3 Proses decimation dua tingkat....…...…….…………...27
Program Simulasi Perancangan Multirate Signal Processing.
1.2
Latar Belakang Masalah
Dewasa ini peningkatan kebutuhan dalam sistem digital modern untuk
mengolah data lebih dari satu laju sampling telah membawa perkembangan pada
sub – area baru dalam DSP (digital signal processing) yang dikenal sebagai
multirate processing [1],[2].
Dua operasi penting dalam multirate processing adalah decimation dan
interpolation. Keduanya mampu mengubah kecepatan data secara efisien sesuai
dengan keinginan. Decimation mengurangi laju sampling dengan cara
memampatkan data dan hanya menyimpan data informasi yang diinginkan,
sedangkan interpolation meningkatkan laju sampling [1],[3]. Tujuan dari
pengubahan data dalam laju sampling yang baru adalah untuk membuatnya lebih
mudah dalam pengolahan atau untuk mencapai kesesuaian dengan sistem yang
lain.
Salah satu contoh aplikasi nyata dari multirate signal processing yaitu
dalam pemrosesan sinyal suara. Dalam memproses sinyal suara, teknik multirate
digunakan untuk mengurangi lebar penyimpanan data (storage space) atau
kecepatan transmisi dari data suara. Perkiraan parameter suara dihitung pada laju
sampling yang sangat rendah untuk penyimpanan atau transmisi. Ketika
diperlukan, suara asli dapat direkonstruksi dari low bit – rate yang telah ada
menjadi higher – rate menggunakan pendekatan multirate [1].
Untuk memberikan penjelasan dan pemahaman serta rujukan dalam
mempermudah pembelajaran mengenai multirate signal processing penulis
mengimplementasikan dalam simulasi komputer menggunakan MATLAB ®.
1.3
Tujuan
Tujuan yang akan dicapai dalam penelitian ini adalah membuat program
simulasi multirate signal processing dengan MATLAB ®.
1.4
Manfaat
Manfaat yang ingin dicapai adalah:
1. Sebagai dasar pengembangan untuk aplikasi yang lebih bervariasi
dan sebagai referensi yang dapat mendukung penelitian selanjutnya
yang berkaitan dengan multirate signal processing.
2. Mempermudah pemahaman mahasiswa dan membantu dosen /
pengajar dalam menjelaskan multirate signal processing.
1.5
Batasan Masalah
Adapun batasan masalah dalam penelitian ini antara lain:
1. Melakukan perhitungan MPS (multiplications per seconds) dan
2. Menganalisa pengaruh perubahan MPS dan TSR pada multirate
signal procesing.
3. Perancangan multirate signal procesing ini terbatas pada tiga
tingkat.
4. Perancangan multirate signal procesing mengunakan filter FIR.
5. Menggunakan program MATLAB® untuk melakukan simulasi
perancangan multirate signal procesing.
1.6
Metodologi Penelitian
Agar dapat melakukan penelitian dengan baik, maka penulis
membutuhkan masukan serta referensi yang didapatkan dengan metode :
1. Studi kepustakaan yang mencakup literatur-literatur dan gambar-gambar.
2. Mencari informasi dari berbagai media termasuk dari internet.
3. Menyusun referensi dan literatur yang telah ada.
4. Melakukan perancangan multirate signal procesing dengan menggunakan
perangkat lunak yang telah ditentukan.
5. Melakukan pengujian hasil perancangan multirate signal procesing.
1.7
Sistematika Penulisan
Sistematika Penulisan laporan ini adalah sebagai berikut :
Bab I Pendahuluan
Bab ini berisi judul, latar belakang, tujuan, manfaat, batasan
masalah, metodologi penelitian, dan sistematika penulisan.
Bab ini berisi dasar teori Multirate Signal Processing, Decimation,
Interpolation, Multirate Filter, Sampling Rate, Quantization,
Oversampling, Anti – Imaging Filter, Anti – Aliasing Filter.
Bab III Rancangan Penelitian
Bab ini berisi rancangan simulasi yang dibuat meliputi diagram
blok, bagan alir program (flow chart), dan penjelasan singkat
tentang cara kerjanya.
Bab IV Pengamatan dan Pembahasan
Bab ini berisi hasil pengamatan yang dilakukan dan pembahasan
dari hasil pengamatan tersebut.
Bab V Penutup
Bab ini berisi kesimpulan dari hasil pengamatan dan pembahasan
rangkaian serta saran-saran yang menyangkut ide-ide mengenai
langkah-langkah lanjut untuk perbaikan dan pengembangan
2.1.
Decimation Menggunakan Faktor Integer
Gambar 2.1 menunjukkan diagram blok proses decimation sinyal x(n) oleh faktor integerM.
Gambar 2.1. Diagram blok decimation dengan faktor M [1-3].
Decimation berisi anti – aliasing digital filter atau h(k) dan sample rate
compressor, yang dilambangkan dengan tanda panah ke bawah dan faktor
decimation M [1-4]. Rate compressor menurunkan laju sampling dari Fs menjadi
Fs / M. Untuk mencegah terjadinya aliasing pada lower rate, digital filter
digunakan untuk membatasi bandwith sinyal input kurang dari Fs / 2M. Jadi bandwith sinyal input x(n) perlu dibatasi terlebih dahulu. Pengurangan laju
sampling diperoleh dengan mengurangi M-1 sample untuk setiap M sample dari sinyal yang telah melalui proses filtering menjadi w(n) [1]. Notasi w(n)
merupakan data hasil keluaran yang telah melalui proses filtering untuk menghindari terjadinya aliasing. Hubungan input – output untuk proses
decimation adalah[1],[2]:
x(n)
y(m)= w(mM) =
∑
(2.1) ∞ −∞ = − k k mM x kh( ) ( )
dengan:
w(n) =
∑
(2.2)∞ −∞ =
−
kk
n
x
k
h
(
)
(
)
Gambar 2.2 menunjukkan proses decimation untuk M = 3. Dalam kasus ini, dua sample dihilangkan untuk setiap tiga sample dari sinyal masukan x(n). Sehingga decimation merupakan operasi pemampatan data.
Gambar 2.2. Ilustrasi decimation dengan faktor decimationM = 3 [1],[2].
Deskripsi spektral dari proses decimation ditunjukkan dalam Gambar 2.3 dengan inputx(n) diasumsikan sebagai sinyal wideband (sinyal dengan bandwidth
yang lebar).
Gambar 2.3(a) menunjukkan diagram blok proses decimation dengan
M = 3. Gambar 2.3(b) - 2.3(e) menunjukkan penafsiran domain frekuensi dari proses decimation. X(f), W(f), dan Y(f) merupakan tanggapan frekuensi dari sinyal
dari anti – imaging filter. Garis putus – putus dalam Gambar 2.3(b) menunjukkan gambar komponen yang akan menyebabkan aliasing, karena mempunyai sinyal
input x(n) yang melebihi Fs / 2M. Hal ini sesuai dengan persyaratan untuk mencegah terjadinya aliasing pada lower rate digital filter saat proses decimation
[1].
Gambar 2.3. Deskripsi spektral decimation sinyal dari 6 kHz menjadi 2 kHz [1].
2.2.
Interpolation dengan Faktor Integer
Interpolation merupakan persamaan digital dari proses pengubahan digital ke analog (DAC). Sinyal analog dikembalikan oleh digital sample interpolation
yang diterapkan pada proses pengubahan digital ke analog (DAC). Proses digital interpolation akan menghasilkan nilai yang mendekati nilai awal sebelum dilakukan prooses interpolation.
meningkatkan laju sampling sebesar L menjadi LFs. Gambar 2.4 menunjukkan proses interpolation.
Gambar 2.4. Diagram blok interpolation dengan faktor interpolationL [1],[4].
Interpolation dilambangkan dengan tanda panah ke atas dan faktor
interpolation L, yang menunjukkan besarnya laju sampling yang akan dinaikkan. Untuk setiap input sample x(n), expander menyertakan L-1 sample zero value
(nilai nol) ke dalam bentuk sinyal baru w(m) pada laju LFs. Sinyal ini kemudian mengalami proses filtering menggunakan Low Pass Filter (LPF) untuk menghilangkan image frekuensi yang tercipta oleh peningkatan laju sampling
untuk menghasilkan y(m). Proses LPF merupakan proses melewatkan sinyal frekuensi rendah untuk menghilangkan image frekuensi yang ada. Gambar 2.6(b) ditandai dengan garis putus – putus menunjukkan image frekuensi, yang akan menyebabkan aliasing sehingga harus dihilangkan.
Proses memasukkan L-1 zero menghabiskan energi pada tiap – tiap sample
sinyal dari seluruh L output sample, menyebabkan pelemahan pada tiap – tiap
sample oleh faktor L. Kerugian ini harus dihindari dengan mengalikan setiap
Proses interpolation ditandai dengan hubungan input – output berikut [1],[2]:
y(m) =
∑
(2.3)∞
−∞ =
− k
k m w k
h( ) ( )
dengan w(m) = ⎩
⎨ ⎧ 0
), / (m L
x m=0,±L,±2L,K
(2.4)
h(k) merupakan proses anti – imaging filter ditunjukkan pada Gambar 2.4.
Gambar 2.5 menjelaskan proses interpolation dalam domain waktu, untuk kasus sederhana L = 3. Setiap sample dari x(n) menghasilkan tiga output sample. Hal ini berdasarkan dua nilai sample zero value yang disisipkan oleh expander.
Penafsiran domain frekuensi dari proses ini ditunjukkan pada Gambar 2.6.
X(f), W(f), dan Y(f) merupakan tanggapan frekuensi dari sinyal x(n), w(m) dan
y(m).
H(f) merupakan tanggapan amplitudo dari anti – imaging filter. Garis putus – putus merupakan pengubahan image hasil anti – imaging filter pada tingkat ini, ditunjukkan pada Gambar 2.6(c) dan 2.6(d). Proses decimation dan
interpolation merupakan pasangan. Hal ini berarti kedua proses merupakan kebalikan antara satu dengan yang lain.
Gambar 2.6. Deskripsi spektral interpolation dari 2 KHz menjadi 6 KHz [1].
2.3. Pengubahan
Laju Sampling dengan Faktor Non – Integer
Dalam praktek, faktor noninteger diwakili oleh bilangan rasional, dengan rasio dua nilai integer, misalnya L dan M. Perubahan frekuensi sampling
dilakukan dengan interpolation data dengan faktor L, kemudian dilanjutkan
decimation data dengan faktor M seperti ditunjukkan pada Gambar 2.7.
Proses interpolation harus mendahului proses decimation. Jika tidak, maka proses decimation akan mengubah beberapa komponen frekuensi hasil pengubahan laju sampling yang diinginkan. Pada contoh pengubahan data dari CD ke DAT, pengubahan laju oleh faktor 48 / 44.1 dapat dicapai dengan
interpolation menggunakan faktor L = 160 dan kemudian decimation dengan faktor M = 147. Dengan demikian, laju data (data rate) CD ditingkatkan dengan faktor L =160 menjadi 7056 kHz (44.1 kHz x 160) dan kemudian diturunkan dengan faktor M = 147 menjadi 48 kHz (7056 kHz / 147) [1],[3].
Dua LPF yaitu h1(k) dan h2(k) dalam Gambar 2.7(a), dapat digabung
menjadi satu filter secara cascade dan mempunyai frekuensi sampling yang dapat memberikan pengubahan sample rate yang sama dalam Gambar 2.7(b).
Jika M > L, maka proses adalah decimation dengan faktor non – integer
dan jika M < L, maka proses adalah interpolation dengan faktor integer. Jika
M = 1, maka sistem menjadi interpolation dengan integer yang sederhana, dan jika L = 1, maka sistem menjadi decimation integer.
Gambar 2.7(c) – 2.7(f) mengilustrasikan interpolation dengan faktor 3 / 2.
Sample rate pertama ditambah dengan faktor 3, dengan menyisipkan 2 sample zero – value untuk tiap – tiap sample dari x(n), dan kemudian melalui proses
filtering kemudian dikurangi oleh faktor 2 dengan menahan hanya satu sample
untuk setiap 2 sample dari v(i). Notasi v(i) merupakan hasil dari data awal x(n)
yang telah mengalami proses interpolation dengan faktor L dan melalui proses
filtering [1].
Gambar 2.7. Ilustrasi interpolation dengan faktor non integer (L = 3, M = 2) [1].
Gambar 2.8 adalah ilustrasi domain frekuensi proses interpolation oleh faktor 3 / 2. Sinyal inputx(n) dalam domain frekuensi menjadi X(f). Mula – mula sinyal x(n) pada laju 2000 sample / detik, kemudian ditingkatkan dengan faktor L = 3 menjadi 6000 sample / detik. Sinyal input x(n) juga melalui proses filtering
menunjukkan image frekuensi yang akan dihilangkan. Apabila proses menghilangkan image frekuensi tidak dilakukan, maka akan menyebabkan
aliasing. Sinyal yang telah melalui proses filtering diturunkan dengan faktor M = 2 menjadi 3 kHz. Laju 3 kHz merupakan hasil akhir proses interpolation
dengan faktor 3 / 2.
Gambar 2.8. Deskripsi spektral interpolation dengan faktor 3 / 2 dari 2 KHz menjadi 3 KHz [1].
2.4.
Pendekatan Multistage untuk Pengubahan Sampling Rate
perlahan – lahan. Hal ini disebabkan oleh pemenuhan ketentuan dari anti – aliasing atau anti – imaging filter masing - masing tingkat[1].
Gambar 2.9 menunjukkan multistage (I) dari proses decimation. Faktor
decimation total dinyatakan sebagai hasil kali dari faktor decimation masing – masing tingkat yaitu [1],[4]:
M=M1 x M2 x ...MI (2.5)
dengan MI adalah integer yang merupakan faktor decimation untuk tingkat I. Tiap
– tiap tingkat merupakan decimation yang berdiri sendiri. Jika M > 1, maka perhitungan multistage menyebabkan pengurangan perhitungan dan ketentuan penyimpanan berdasarkan karakteristik filter yang digunakan pada decimation dan akibatnya filter menjadi kurang sensitif untuk Finite Word Length Effect (FWLE) [1].
Gambar 2.9. Proses multistage decimation [1-3].
Empat tahap perancangan multirate signal processing yaitu [1]:
(2) Menentukan jumlah tingkat optimum yang akan dipakai pada decimation
atau interpolation untuk menghasilkan implementasi yang efisien. (3) Menentukan faktor decimation atau interpolation untuk tiap tingkat. (4) Membentuk filter yang tepat dari tiap tingkat.
Gambar 2.10 menunjukkan algoritma mengenai tahap – tahap perancangan
multirate signal processing.
Menetapkan syarat anti –aliasing atau anti – imaging
Menentukan jumlah stage optimum yang akan dipakai dari
decimation atau interpolation
Menentukan factor decimation atau interpolation untuk tiap
stage
Membentuk filter yang tepat dari tiap stage
Gambar 2.10.Algoritma perancangan multirate signal processing.
2.4.1. Menentukan Spesifikasi Filter
Ketentuan – ketentuan digital filter untuk anti – aliasing atau anti – imaging dalam pengubahan laju sampling harus terpenuhi. Hasil akhir sistem
multirate sangat bergantung pada tipe dan kualitas dari filter yang digunakan. Salah satu di antara filter FIR atau IIR dapat digunakan untuk proses decimation
atau interpolation, tetapi sistem FIR lebih umum [3].
Dengan alasan ini, perancangan multirate signal processing akan menggunakan
filter FIR.
Ketentuan – ketentuan filter untuk merancang proses decimation dirancang untuk mencegah aliasing setelah pengurangan laju sampling. Ketentuan itu antara lain [1],[2]:
Passband 0 ≤f≤fp (2.6)
Stopband Fs/2M≤f≤Fs/2 (2.7)
Passband deviation δp
Stopband deviation δs
dengan fp adalah frekuensi tertinggi dari sinyal masukan dan Fs adalah frekuensi
sampling mula – mula. Nilai fp harus lebih kecil dari Fs/2M [1]. Notasi δp
merupakan passband deviation dan δs merupakan stopband deviation. Nilai δp
dan δs ditentukan oleh pengguna yang akan melakukan perancangan multirate signal processing.
Anti – imaging filter pada proses interpolation harus menghilangkan semua sinyal yang tidak memenuhi ketentuan anti – imaging filter, tetapi sinyal yang berisi informasi harus berada pada frekuensi tertinggi kurang dari atau sama dengan Fs/2 (…..≤ Fs/2). Hal ini penting agar frekuensi tertinggi mencapai Fs/2 dan menjadi frekuensi tertinggi dalam x(n), sesuai dengan teorema sampling.
Ketentuan – ketentuan filter yang diperlukan untuk merancang interpolation
adalah [1]:
Passband 0 ≤f ≤fp (2.8)
Stopband Fs/2 ≤f≤LFs/2 (2.9)
Passband deviation δp
Stopband deviation δs
dengan fp < Fs / 2.
Gambar 2.11 menunjukkan spesifikasi tanggapan frekuensi filter lowpass
dengan ripple yang seragam pada passband dan stopband. Spesifikasi ini digunakan untuk merancang filter dengan metode optimal.
Gambar 2.11 Spesifikasi tanggapan frekuensi untuk filterlowpass dengan ripple
yang seragam pada passband dan stopband [1].
Jarak diantara dan disebut transition width filter. Untuk mencari nilai δp
dan δs digunakan persamaan:
p
f fs
Passband deviation = 20 log (1+δp) (2.10)
2.4.2. Kebutuhan Filter untuk Masing – Masing Tingkat
Filter dengan metode optimal sering digunakan pada perubahan laju
sampling (sampling rate conversion). Gambar 2.9 menunjukkan proses multistage decimation. Ketentuan filter pada tiap – tiap tingkat untuk menjamin bahwa perancangan multistage sesuai adalah [1],[2]:
Passband 0 ≤f ≤fp (2.12)
Stopband (Fi-Fs/2M) ≤f≤Fi-I/ 2 (2.13)
i = 1 , 2, …, I. Passband ripple δp/I
Stopband ripple δs
Filter length N≈ ( , )− ( , )Δ +1
Δ ≈ fi s p f fi s p
D δ δ δ δ
(2.14)
dengan Fi, Ni dan fi merupakan keluaran frekuensi sampling, filter length, dan
normalized transition width untuk decimation tingkat ke-i. Parameter Δ
) , ( p s
D≈ δ δ dan )f(δp,δs mempunyai nilai [1]:
(
log) (
[
1log)
2(
log)
3]
4(
log)
5(
log)
6) ,
( p s 10 s a 10 p 2 a 10 p a a 10 p 2 a 10 p a
D≈ δ δ = δ δ + δ + + δ + δ +
(
p s)
(
p s)
f δ ,δ =11.01217+0.51244 log10δ −log10δ (2.15) a1 = 5.309 10-3 a4= - 2.66 10-3
Keluaran frekuensi sampling untuk tingkatke-i adalah [1]:
Fi = Fi-I / Mi ; i = 1,2,...,I (2.16)
dengan Mi merupakan faktor decimation tingkat ke-i. F0 dan F1 merupakan
frekuensi sampling awal dan frekuensi sampling akhir. Nilai F0 dan F1 diperoleh
dari Fo = Fs dan FI= Fs / M.
Untuk multistage decimation, lower passband deviation dibutuhkan pada tiap-tiap stage untuk menjamin bahwa keseluruhan passband deviation adalah δp.
Stopband deviation untuk tiap – tiap tingkat sama dengan keseluruhan stopband deviation. Untuk decimation satu tingkat, ketentuan filter sama seperti Persamaan 2.6.
2.4.3. Menentukan Jumlah Tingkat dan Faktor Decimation
Perancangan multistage menghasilkan efisiensi signifikan dalam perhitungan dan ketentuan penyimpanan dibandingkan dengan perancangan satu tingkat. Besarnya penyimpanan bergantung pada jumlah tingkat yang digunakan dan pemilihan faktor decimation untuk tiap – tiap tingkat. Masalah utama dalam perancangan multistage adalah menentukan jumlah tingkat optimum dan faktor
decimation untuk tiap – tiap tingkat. Jumlah tingkat optimum adalah satu dengan mengacu pada usaha perhitungan terakhir, seperti perhitungan pada jumlah
multiplication persecond (MPS) atau total storage requirement (TSR). Nilai MPS
MPS =
∑
(2.17) = I iNiFi
1TSR =
∑
(2.18)=
I
i
Ni
1dengan Ni adalah jumlah dari koefisien filter untuk tingkat ke-i.
Pemilihan jumlah tingkat dan faktor decimation bukan masalah yang sederhana. Dalam aplikasi, jumlah tingkat jarang lebih dari 3 atau 4. Untuk melakukan pemilihan jumlah tingkat dan faktor decimation yang paling efisien, dapat dilakukan dengan pemeriksaan atau penelitian. Algoritma untuk pendekatan ini ada dalam Tabel 2.1.
Untuk memperoleh nilai MPS dan TSR yang optimum, faktor decimation
harus memenuhi hubungan [1]:
M1 > M2 >….> Mi (2.19)
dengan Mi berkelanjutan. Tetapi ketika faktor decimation integer atau bulat, persamaan (2.19) tidak selalu dapat terpenuhi.
Untuk I = 2, artinya decimation dengan 2 tingkat,nilai optimum dari faktor
decimation untuk TSR disederhanakan menjadi [1]:
M1 opt =
(
)
1/22 2 2 f M f M Δ + Δ
− (2.20)
M2 opt =
opt
M M
Untuk I > 2, tidak ada perhitungan yang mudah dan sangat perlu menggunakan bantuan komputer untuk melakukan optimisasi berulang atau menggunakan algoritma yang diberikan dalam Tabel 2.1.
Tabel 2.1. Algoritma untuk mencari nilai optimum dari I dan Mi [1]. 1. Menentukan persyaratan parameter filter yaitu:
Fs, M, fp, fs, ds, dan dp.
2. Untuk tiap-tiap nilai I (I = 1, 2, 3, …, Imaks) menghasilkan nilai integer yang mungkin dari faktor decimation.
3. Untuk setiap faktor decimation memenuhi ketentuan filter,
MPS, dan TSR sesuai persamaan (2.10) dan (2.11).
4. Untuk tiap-tiap nilai I, memilih faktor decimation yang memberikan perancangan yang paling efisien yang sesuai dengan ketentuan penyimpanan.
5. Memilih nilai yang paling efisien dan tentukan jawaban.
Contoh 1
Suatu sinyal x(n) pada frekuensi sampling 2.048 kHz akan dilakukan proses
decimation oleh faktor 32. Menghasilkan sinyal pada frekuensi sampling 64 Hz.
Bandwidth sinyal akan melebar dari 0 sampai 30 Hz. Anti – aliasing digitalfilter
harus memenuhi spesifikasi :
Passband deviation 0.01 dB
Passband 0 – 30 Hz
Stopband 32 – 64 Hz
Komponen sinyal dalam jangkauan dari 30 sampai 32 Hz harus dicegah dari
aliasing. Gambar proses decimation satu tingkat yang sesuai.
Jawab
Diagram blok dari decimation satu tingkat dan spesifikasi anti – aliasing untuk LPF ditunjukkan dalam Gambar 2.12.
Gambar 2.12. Decimation satu tingkat [1].
Dari spesifikasi dan Gambar 2.12 dapat dihitung hal – hal berikut
∆f = (32 – 30) / 2048 = 9.766 x 10-4
δp= 0.00115, dari 20 log (1+δp) = 0.01 dB δs = 0.0001, diperoleh dari – 20 log (δs) = 80 dB
Dari nilai δp, δs dan ∆f yang telah diperoleh, nilai N = 3497. Jelas bahwa nilai N
besar. Sehingga pada aplikasi, rancanganLPFuntuk decimation satu tingkat tidak mungkin. Pada contoh terlihat jelas, bahwa perlu alternatif atau metode lain yang lebih efisien dari pengubahan laju sampling, ketika perubahan lajubesar.
Contoh 2
Laju sampling sinyal x(n) akan dikurangi dengan proses decimation dari 96 kHz ke 1 kHz. Frekuensi tertinggi yang diinginkan setelah proses
decimation adalah 450 Hz. Asumsikan menggunakan filter FIR metode optimal, dengan keseluruhan passband ripple δp = 0.01 dan passband deviation δs = 0.001. Rancang proses decimation yang efisien.
Pemecahan
Akan dicari rancangan paling efisien untuk masing-masing tingkat, I = 1, 2, 3, 4. Selanjutnya akan membandingkan tiap – tiap rancangan dan memilih yang terbaik.
1) Pertama sebuah rancangan satu tingkat (I = 1). Diagram blok dan spesifikasi filter untuk tingkat ini diberikan pada Gambar 2.13 (a). 2) Kemudian rancangan dua tingkat. Menggunakan faktor decimation
bulat yang optimal untuk I = 2 adalah M1 = 32 dan M2 = 3. Sistem dua
3) Untuk kasus tiga tingkat (I = 3), faktor decimation bulat yang optimal adalah M1 = 8, M2 = 6, dan M3 = 2. Sistem untuk hal ini ditunjukkan
pada Gambar 2.13 (c)
4) Untuk rancangan empat tingkat, faktor decimation bulat yang optimal adalah M1 = 4, M2 = 4, M3 = 3, dan M4 = 2. Sistem dan spesifikasi filter
untuk hal ini ditunjukkan pada Gambar 2.13 (d). Hasil perhitungan di atas dirangkum pada Tabel 2.2.
Tabel 2.2 Hasil perhitungan nilai N, M, MPS, dan TSR tiap - tiap tingkat [1].
I N1 N2 N3 N4 M1 M2 M3 M4 MPS TSR
1 4881 - - - 96 - - - 4.881.000 4881
2 131 167 - - 32 3 - - 560.000 298
3 25 34 117 - 8 6 2 - 485.000 176
4 11 13 17 120 4 4 3 2 496.000 161
tingkat. Reduksi dikarenakan transisi yang lebar dari filter-filter pada tingkat awal (meskipun memiliki laju yangmasih tinggi), mengacu pada nilai N yang kecil.
Ketika membandingkan efisiensi dari rancangan – rancangan multistage, reduksi pada perhitungan nilai MPS dan TSR meningkat dari satu tingkat ke dua tingkat. Reduksi pada ketentuan penyimpanan dalam bertransisi dari dua ke tiga tingkat dan dari tiga ke empat tingkat tampak signifikan. Reduksi pada perhitungan MPS antara dua dan tiga tingkat juga signifikan. Perhitungan MPS
juga meningkat dari tiga ke empat tingkat. Secara keseluruhan, jumlah I = 3, akan menjadi implementasi paling efisien. Jika jumlah I meningkat, maka tingkat kesulitan dalam implementasi akan bertambah. Dalam aplikasi, perhitungan ekonomis dibutuhkan untuk menentukan kompleksitas hardware dan software
sebelum pilihan akhir diambil.
Ketika nilai Mi (i=1, 2, …., I) variabel kontinyu, nilai Mi optimal memenuhi kondisi M1 > M2 > …>MI. Nilai-nilai Mi meminimalisasi kebutuhan
TSR dan MPS. Jika nilai-nilai Mi bukan bilangan bulat, maka kondisi
M1 > M2 > …>MI tidak selalu terpenuhi. Program rancangan ini menghitung
solusi untuk semua faktor bulat yang mungkin pada tiap – tiap tingkat. Solusi terbaik dapat dipilih melalui langkah pemilihan.
Solusi yang paling efisien berkaitan dengan MPS dan TSR menghasilkan sebuah nilai N yang sangat berlebihan pada salah satu tingkat. Faktor decimation
Contoh 3
Rancang suatu diagram blok proses decimation dua tingkat yang menurunkan laju sample sebuah sinyal audio dengan faktor 30 dan memenuhi spesifikasi yang diberikan pada Tabel 2.3.
Menentukan sebuah pasangan yang sesuai dari faktor – faktor decimation, dengan analisis yang detail berdasarkan kompleksitas perhitungan dan penyimpanan. Menyatakan frekuensi sampling pada input dan output
untuk masing – masing tingkat dari proses decimation, dan parameter-parameter serta ketentuan untuk masing – masing filter proses decimation.
Stopband rippleδs 0.01
Filter length, N = 1
6 . 14 13 ) log( 10 + Δ − − f s pδ δ
dengan Δf = normalized transition width
Passband rippleδp 0.05 frekuensi tertinggi yang diinginkan dari data 3.4 KHz
frekuensi sampling input, Fs 240 KHz
Tabel 2.3 Spesifikasi filter untuk decimation dua tingkat
frekuensi-frekuensi bandedge normalized transition width
passband dan stopband ripples filter length
Pemecahan
Decimation akan memiliki bentuk umum yang ditunjukkan pada
Gambar 2.14. Faktor – faktor decimation bulat dan pasangan – pasangan faktor decimation yang mungkin adalah (untuk efisiensi perhitungan, tingkat pertama selalu memiliki faktor terbesar):
15 x 2 10 x 3 6 x 5
Gambar 2.14Decimation dua tingkat.
Dalam menentukan pasangan-pasangan faktor decimation yang akan digunakan, dibutuhkan analisis kompleksitas perhitungan.
i. Untuk M1 = 15 dan M2 = 2. Laju sampling pertama-tama akan
diturunkan dengan faktor 15 ke 16 kHz dan kemudian laju
sampling diturunkan dengan faktor 2 ke 8 kHz. Parameter-parameter untuk filter-filter pada proses decimation dalam dua tingkat adalah:
= (12 – 3.4) / 240 = 0.0358
f
Δ
δp = 0.05 / 2 = 0.025
δs = 0.01
N = 45
Dua tingkat dengan bandedge frekuensi: 3.4 kHz dan 4 kHz (8 – 240 / 2 x 30)
= (4 – 3.4) / 16 = 0.0375
f
Δ
δp = 0.05 / 2 = 0.025
δs = 0.01
N = 43
Dua ukuran kompleksitas adalah MPS dan TSR. Implementasi yang efisien pada struktur decimation yang dipilih untuk setiap tingkat pada operasi filter, ditunjukkan pada laju sampling yang lebih rendah.
MPS = (45 x 16 + 43 x 8) x 103 = 1064 x 103
TSR = (45 + 43) = 88
ii. Untuk M1 = 10 dan M2 = 3. Laju sampling pada kasus ini
pertama-tama diturunkan dengan faktor 10 menjadi 24 kHz dan kemudian laju sampling diturunkan dengan faktor 3 menjadi 8 kHz. Parameter-parameter untuk filter proses decimation adalah:
Satu tingkat dengan bandedge frekuensi: 3.4 kHz dan 20 kHz (24 – 240 / 2 x 30)
= (20 – 3.4) / 240 = 0.0691
f
δp = 0.05 / 2 = 0.025
δs = 0.01
N = 23.81 = 24
Dua tingkat dengan bandedge frekuensi: 3.4 kHz dan 4 kHz (8 – 240 / 2 x 30)
= (4 – 3.4) / 24 = 0.025
f
Δ
δp = 0.05 / 2 = 0.025
δs = 0.01
N = 64
Dua nilai kompleksitas dalam kasus ini:
MPS = (24 x 24 + 64 x 8) x 103 = 1088 x 103
TSR = (24 + 64) = 88
iii. Pasangan faktor-faktor decimation terakhir yang mungkin adalah
M1 = 6 dan M2 = 5.
Satu tingkat dengan bandedge frekuensi: 3.4 kHz dan 36 kHz (40 – 240 / 2 x 30)
= (36 – 3.4) / 240 = 0.1358
f
Δ
δp = 0.05 / 2 = 0.025
δs = 0.01
N = 13
Dua tingkat dengan bandedge frekuensi: 3.4 kHz dan 4 kHz (8 – 240 / 2 x 30)
= (4 – 3.4) / 40 = 0.015
f
δp = 0.05 / 2 = 0.025
δs = 0.01
N = 106
Dua nilai kompleksitas dalam kasus ini:
MPS = (13 x 40 + 106 x 8) x 103 = 1368 x 103
TSR = (13 + 106) = 119
Ukuran-ukuran kompleksitas dirangkum pada Tabel 2.4. Dengan membandingkan kompleksitas MPS dan TSR, pasangan yang paling tepat dari faktor decimation adalah M1 = 15 dan M2 = 2.
Tabel 2.4 Perbandingan nilai – nilai kompleksitas.
Faktor decimation MPS TSR M1 = 15 ; M2 = 2 1064 x 10 3 88
M1 = 10 ; M2 = 3 1088 x 10 3 88
M1 = 6 ; M2 = 5 1368 x 10 3 119
2.5. Pengubahan Laju Sampling Menggunakan Decimation
Gambar 2.1 menunjukkan diagram blok sederhana mengenai proses
decimation. Keluaran filter adalah w(n) dan masukannya adalah x(n) dalam hubungan [1],[4]:
w(n) =
∑
(2.22)− =
−
1 0)
(
)
(
N kk
n
x
k
h
y(m) = w(mM) digabungkan dengan persamaan (2.22) menghasilkan persamaan keluaran decimation [1]:
y(m) =
∑
(2.23)−
=
−
10
)
(
)
(
N
k
k
Mm
x
k
h
Gambar 2.15 menunjukkan diagram alir untuk proses decimation.
Gambar 2.15. Diagram alir untuk proses decimation [1].
Gambar 2.16 menunjukkan diagram alir yang efisien untuk proses
decimation.
Input x(n) dimasukkan dalam delay line pada suatu waktu. Setiap M sample dari x(n) diberi delay line dan menghasilkan satu keluaran sample y(m). Penerapan ini menjaga sample pertama dari w(n) dan mengurangi sample M-1
berikutnya, menjaga sample berikutnya dan mengurangi sample M-1 berikutnya dan seterusnya. Sejak setiap M sample dijaga, sample M-1 berikutnya dari w(n)
dimampatkan. Hal ini tidak ditunjukkan dalam persamaan (2.22) karena ada
sample dari w(n) yang dihilangkan [1]. Operasi down – sampling dapat dilakukan sebelum perkalian input sample dengan koefisien, seperti ditunjukkan pada Gambar 2.16.
2.6. Pengubahan Laju Sampling Menggunakan Interpolation
Gambar 2.17 menunjukkan diagram alir untuk proses interpolation.
Secara efektif frekuensi input sampling meningkat dari Fs menjadi LFs
dengan proses interpolation. Akibat dari memasukkan L-1 zeros setelah masing – masing sample adalah energi dari masing – masing input sample menyebar melewati L output sample. Dengan demikian interpolation mempunyai penguatan 1 / L. Setelah proses interpolation, masing – masing output sample harus dikalikan dengan L untuk mengembalikan output sample ke tingkat yang sesuai [1].
Persamaan interpolation adalah [1],[4]:
y(m) =
∑
(2.24)− =
−
1 0)
(
)
(
N kk
m
w
k
h
w(m-k) =
(
)
⎩ ⎨ ⎧ − 0 ], / [ m k L x lainya , 2 , ,
0 L LK
k
m− =
(2.25)
Metode efisien lain dikenal sebagai polyphase filtering yang memanfaatkan kenyataan bahwa beberapa delay line samples adalah zero. Dalam kasus ini, rate expander dihilangkan semua untuk mengurangi kebutuhan dalam menyimpan
sample nilai zero. Delay line kemudian diperpendek menjadi N/L. Dalam pendekatan ini, tiap – tiap input sample dimasukkan dalam delay line. N/Ldelay line sample digunakan untuk menghitung L output sample. Tiap – tiap output sample dihitung dengan seperangkat koefisien filter yang berbeda, yaitu koefisien
3.1 Algoritma Program
Multirate Signal Processing
Algoritma program multirate signal processing ditunjukkan pada
Gambar 3.1.
Gambar 3.1 Algoritma program multirate signal processing.
Pengguna memberikan masukan sesuai dengan proses yang ingin dilakukan
dan kriteria yang tersedia. Proses selanjutnya adalah menghitung panjang filter
(filter length), MPS dan TSR sesuai dengan spesifikasi yang dimasukkan oleh
pengguna. Kemudian pengguna melakukan pemilihan akan melakukan multirate
signal processing dengan interpolation atau decimation berdasarkan masukan
yang telah diberikan. Tahap terakhir adalah menampilkan kurva tanggapan
amplitudo dari multirate signal processing hasil perancangan.
Tampilan sistem multirate sangat bergantung pada tipe dan kualitas dari
filter yang digunakan. Salah satu diantara filter FIR atau IIR dapat digunakan
untuk decimation atau interpolation, tetapi sistem FIR lebih umum [3].
Dalam multirate signal processing, perhitungan efisiensi dari filter FIR
dapat dibandingkan dalam beberapa kasus dengan filter IIR. Selanjutnya filter FIR
mempunyai banyak perlengkapan yang diharapkan seperti tanggapan fasa linear
dan sensitivitas yang rendah untuk Finite Word Length Effect (FWE), sehingga
mudah untuk diimplementasikan. Dengan alasan ini hanya filter FIR yang akan
dipakai dalam perancangan ini.
3.2 Masukan yang Diinginkan oleh Pengguna
Bagian ini akan menjelaskan masukan yang diberikan oleh pengguna pada
program simulasi multirate signal processing. Masukan yang diperlukan antara
lain Cut-off Frekuensi (fc1), Passband Ripple (δp), Stopband Ripple (δs),
Frekuensi Sampling Awal Sinyal (fs),Transition Width (Tw), Faktor Decimation
(M), Faktor Interpolation (L), Tingkat (I). Kemudian pengguna juga memberikan
masukan berupa data yang berektensi *.wav yang nantinya akan diolah secara
decimation atau interpolation.
Untuk menghindari terjadinya aliasing maka diperlukan persyaratan
untuk masukan pada proses ini sebagaimana telah dijelaskan pada bab II
mengenai spesifikasi filter. Untuk proses decimation, nilai fp < Fc1 / 2M. Fc1
adalah frekuensi sampling awal dan fp merupakan frekuensi tertinggi dari sinyal
Faktor decimation harus lebih besar dari 1, demikian juga faktor
interpolation. Hal ini dikarenakan perhitungan nilai N yang diperoleh akan sangat
besar dan sulit untuk diimplementasikan. Pemilihan jumlah tingkat dan faktor
decimation bukan masalah yang sederhana. Dalam praktek jumlah tingkat jarang
lebih dari 3 atau 4. Untuk memberikan masukan nilai M dapat dipilih nilai integer.
Hal ini dilakukan untuk mempermudah perhitungan nilai MPS dan TSR. Solusi
yang paling efisien yang dapat dipilih adalah dengan pemeriksaan atau penelitian.
Algoritma (prosedur yang diikuti dengan pemecahan masalah) untuk pemilihan
nilai M dan I secara efisien ada dalam Tabel 2.1.
Gambar 3.2 Diagram alir proses masukan oleh pengguna.
Setelah pengguna memasukkan kriteria – kriteria yang dibutuhkan,
program akan mengecek apakah nilai masukan telah diisi. Jika belum, maka
akan muncul. Kemudian program akan melakukan perancangan filter dengan
desain LPF. Diagram alir masukan proses ini terlihat pada Gambar 3.2
3.3 Menampilkan Pilihan Decimation dan Interpolation
Setelah semua masukan yang diinginkan untuk melakukan proses
multirate signal telah dilakukan, pengguna dapat melakukan pemilihan untuk
proses decimation atau interpolation. Setelah pemilihan, proses selanjutnya adalah
penentuan faktor decimation atau faktor interpolation sesuai pilihan.
Pada tahap ini saat akan dieksekusi program akan melakukan pengecekkan
apakah faktor decimation (M) dan interpolation (L) telah diisi. Jika tidak, maka
program akan menampilkan pesan kesalahan dan meminta pengguna untuk
melakukan pengisian nilai M atau L. Diagram alir untuk proses ini terlihat pada
Gambar 3.3.
3.3.1
Proses Decimation
Untuk proses decimation, input x(n) dimasukkan dalam delay line satu
sample pada suatu waktu. Untuk setiap M sample dari x(n) diberikan delay line
dan menghasilkan satu output sample y(m). Penerapan ini menjaga sample
pertama dari w(n) dimampatkan pada M-1 sample berikutnya. Menjaga sample
berikutnya dan memampatkan sampleM-1 berikutnya dan seterusnya. Notasi w(n)
merupakan hasil keluaran sementara dari masukan yang telah diberi delay line.
Hal ini dijelaskan dalam Gambar 2.14. Operasi down – sampling (penghilangan
sample) dapat dilakukan sebelum perkalian dari input sample oleh koefisien. Hal
ini dijelaskan pada Gambar 2.15 [1].
Jika operasi decimation dipilih, maka program akan menjalankan proses
decimation. Masukan x(n) yang telah dibaca program diproses dengan mengubah
delay line pada masukan itu. Kemudian program melakukan pengecekan apakah
semua M sample telah diganti dengan delay line yang baru. Jika belum, maka
semua masukan x(n) dibaca lagi dan diganti dengan delay line yang baru. Jika
sudah, maka selanjutnya menghitung nilai output sampley(m).Jika terdapat lebih
dari satu tingkat, maka pada proses pengecekan M sample dari setiap masukan
yang telah diganti dengan delay line yang baru disesuaikan dengan nilai Mi
sample dari masing – masing tingkat. Notasi Mi merupakan nilai faktor
decimation pada suatu tingkat tertentu. Operasi dari decimation satu tingkat
diringkas dalam diagram alir yang ditunjukkan pada Gambar 3.4.
Diagram alir untuk decimation tiga tingkat ditunjukkan pada Gambar 3.5.
penjelasannya. Untuk tiga tingkat, proses dari gambar 3.4 dilakukan 3 kali. Jadi
Gambar 3.5 merupakan perluasan secara langsung dari operasi decimation satu
tingkat.
Gambar 3.4. Diagram alir untuk proses decimation 1 tingkat [1].
3.3.2 Proses Interpolation
Untuk proses interpolation, setiap input sample x(n) yang dimasukkan dalam
interpolator menyebabkan laju (rate) meningkat. Proses ditandai dengan
memasukkan L-1sample nilai zero value setelah input sample, kemudian melalui
proses filtering menghasilkan output sample y(m). Tiap – tiap input sample dari
x(n) mempunyai L sample dari output sample y(m). Hal ini ditunjukkan pada
Gambar 2.16.
Jika operasi interpolation dipilih, maka program akan menjalankan proses
interpolation. Masukan x(n) yang telah dibaca oleh program kemudian diberikan
delay line dan dilakukan penghitungan hasil output sample y(m). Dari output
sample ini kemudian ditambahkan nilai zero pada masing – masing delay line dan
dihasilkan output sample y(m) yang baru hasil penambahan zero. Selanjutnya
dilakukan pengecekan, apakah nilai L-1zero telah dimasukkan. Jika sudah, maka
program kembali membaca data masukan awal untuk diproses. Jika belum, maka
penambahan nilai zero dilakukan terlebih dahulu. Dalam implementasi ini hanya
nilai non - zero sample yang diambil dan digunakan dalam perhitungan output
sample. Diagram alir proses interpolation satu tingkat terlihat dalam Gambar 3.6.
Diagram alir untuk interpolation yang mencapai tiga tingkat ditunjukkan
pada Gambar 3.7. Prosesnya dijelaskan sebagai berikut, L3 sample dihitung pada
tingkat 3 dari interpolator. Tiap – tiap sample L3 pada tingkat 3, L2 sample
dihitung pada tingkat 2. Untuk tiap – tiap L2 sample yang diperoleh di tingkat 2,
L1 output sample dihitung di tingkat 1. Pada putaran akhir, L output sample (L =
input sample dari x(n). Proses ini diulang sampai semua input sample telah
diproses [1].
3.4 Menghitung dan Menampilkan Nilai N, MPS dan TSR
Proses perhitungan nilai N menggunakan metode optimal. Persamaan
untuk menghitung nilai MPS dan TSR telah diperoleh, sehingga program hanya
memanggil fungsi dari persamaan itu. Program akan menjalankan proses
perhitungan sesuai dengan nilai – nilai masukan dan menampilkan hasilnya.
Diagram alir fungsi ini ditunjukkan pada Gambar 3.8
Gambar 3.8. Diagram alir proses perhitungan N, MPS dan TSR
3.5 Menampilkan Kurva Amplitudo Masukan dan Keluaran
Untuk menampilkan kurva amplitudo keluaran pengguna dapat menekan
terjadi saat pengguna menekan tombol push button Proses Multirate adalah
program akan membaca data masukan dari pengguna kemudian melakukan
pengecekan apakah semua masukan sudah diisi, apabila ada salah satu masukan
yang belum diisi maka pesan kesalahan akan muncul. Setelah itu program akan
membaca data perancangan yang diinginkan, kemudian melakukan pengecekan.
Apabila salah satu dari perancangan yang diinginkan belum diisi maka pesan
kesalahan akan muncul. Kemudian program akan memproses data masukan dan
menampilkan keluaran berupa Jumlah Filter Length, Jumlah MPS, Jumlah TSR,
dan Kurva Amplitudo Keluaran.
Diagram alir untuk proses diatas ditunjukkan pada Gambar 3.9.
3.6 Layout Program
Layout program merupakan rancangan secara visual untuk implementasi
program simulasi pada multirate signal procesing. Layout program ditunjukkan
pada Gambar 3.9. Layout pada Gambar 3.9 menggunakan beberapa komponen
visual yang disediakan oleh program aplikasi MATLAB® untuk menampilkan proses simulasi.
Edit text
Pop-up menu
Figure Axes
Menu bar Panel
1
3
2
1
3 3
Gambar 3.9. Layout program simulasi perancangan multirate signal processing. Static text
4
Layout program tersusun atas 3 bagian utama yaitu:
1. Bagian Masukan
Bagian masukan berisi tentang nilai – nilai yang diperlukan dalam
perancangan yang terdiri dari 6 buah static text, 5 buah edit text, 1
buah pop- up menu, dan 1 buah tombol push button. Static text
digunakan untuk menampilkan text dan dapat mengarahkan pengguna.
Pada program ini, static text menampilkan Cut-off Frekuensi,
Frekuensi Sampling, Passband Ripple, Stopband Ripple, Transition
Width, Stage, dan Nama File Input. Edit text merupakan sebuah area
yang memungkinkan pengguna untuk memberikan masukan atau
mengubah text dalam bentuk string. Pop-up menu digunakan untuk
membuka tampilan dari sebuah daftar pilihan. Dalam program ini,
pop-up menu terdiri atas pilihan Hz, kHz, MHz, dan GHz. Pada pop-up
menu juga terdapat pilihan 1, 2, 3 untuk kolom stage. Tombol push
button mengarahkan pengguna untuk mencari data yang berektensi
*.wav sebagai masukan pada program ini.
2. Bagian Proses
Bagian proses berisi tentang 3 buah static text, 2 buah edit text, dan 1
buah pop-up menu. Tiga buah static text menampilkan Proses yang
dijalankan, Faktor Decimation, dan Faktor Interpolation. Pop-up
menu berisi pilihan untuk melakukan proses decimation atau
interpolation. Pada bagian ini kolom faktor interpolation akan muncul
3. Hasil Keluaran
Bagian keluaran terdiri dari dua bagian utama yaitu Hasil Perhitungan
dan Kurva Tanggapan Amplitudo. Pada hasil perhitungan terdapat 3
buah static text yang menampilkan Jumlah Filter Length, Jumlah MPS,
dan Jumlah TSR. Tiga buah edit text dan sebuah list box berfungsi
untuk menampilkan Jumlah Filter Length hasil perhitungan. Terdapat
juga 2 buah edit text dan 2 buah static text yang berfungsi untuk
menunjukkan jumlah banyaknya data pada sinyal masukan dan
keluaran. Kurva amplitudo berisi 2 buah axes dan 6 buah push button.
Axes akan menampilkan grafik hasil perancangan multirate signal
processing. Empat buah push botton yang terdiri dari Legend, Grid, +,
-, Point, dan Geser digunakan untuk menjalankan perintah sesuai text
atau simbol yang ada pada masing – masing push button.
4. Lain –Lain
Bagian lain – lain berisi 4 buah push button yang terdiri dari Proses
Multirate, Keluar, suara masukan, dan suara keluaran. Empat buah
push button ini berfungsi untuk menjalankan program, keluar dari
program, mendengarkan suara masukan dan suara keluaran setelah
dilakukan proses multirate. Jika terjadi kesalahan masukan, maka
pesan kesalahan akan muncul yang sering disebut message box.
Message box ini akan muncul saat:
a. Masukan tidak bernilai numerik positif.
Bab ini akan menyajikan hasil pengujian dari program simulasi multirate
signal processing yang telah dibuat. Pengujian dilakukan dengan memberikan
sinyal masukan berekstensi *.wav. Bab ini juga akan membahas perubahan
jumlah MPS dan TSR pada tiap tingkat multirate signal processing.
4.1 Tampilan Program
Saat pengguna menjalankan program simulasi pertama kali, pengguna
akan melihat tampilan antar muka halaman pembuka program. Halaman pembuka
berisi judul dan pembuat program program simulasi. Tampilan halaman pembuka
program dapat dilihat pada Gambar 4.1.
Gambar 4.1 Tampilan halaman pembuka program.
Pada halaman pembuka terdapat dua tombol yang dapat digunakan oleh
pengguna, yaitu tombol Mulai dan tombol Keluar. Tombol Mulai digunakan
untuk masuk ke program utama, sedangkan tombol Keluar digunakan untuk
keluar dari program.
Tampilan halaman utama program ditunjukkan pada Gambar 4.2. Pada
halaman utama terdapat Menu dan Bantuan. Menu terdiri dari tiga submenu, yaitu
Reset, Simpan, dan Keluar. Untuk mengosongkan program menggunakan
submenu Reset. Untuk menyimpan file program berekstensi *.wav menggunakan
submenu Simpan. Sedangkan submenu Keluar berfungsi untuk keluar dari
program simulasi. Bantuan berisi keterangan singkat tentang multirate signal
processing dan cara penggunaan program simulasi. Tampilan submenu Bantuan
ditunjukkan pada Gambar 4.3.
(a) (b)
Gambar 4.3 Tampilan submenu Bantuan. (a) Cara Penggunaan Program.
(b). Pengertian Multirate Signal Processing
Program utama terdiri dari bagian masukan, bagian proses, dan bagian
keluaran. Bagian masukan merupakan tempat untuk memasukkan spesifikasi filter
yang diharapkan dan memilih data masukan yang berekstensi *.wav. Apabila nilai
pada bagian masukan ada yang belum diisi oleh pengguna, maka pesan kesalahan
akan muncul. Misalnya, jika Passband Ripple belum diisi, maka akan muncul
pesan kesalahan seperti ditunjukkan pada Gambar 4.4. Setelah semua masukan
diisi, program akan kembali dapat dijalankan. Hal ini akan berulang sampai semua
variabel masukan telah diisi, dan program akan dapat dijalankan jika semua
masukan sesuai dengan syarat yang ada.
Pengguna dapat memasukkan data berekstensi *.wav dengan menekan
tombol browse dan memilih masukan. Data masukan hanya diolah satu sisi saja
(mono), yaitu kolom pertama pada workspace. Tampilan pengambilan data
berekstensi *.wav dan tampilan untuk penyimpanan data hasil multirate signal
processing ditunjukkan pada Gambar 4.5.
(a) (b)
Gambar 4.5 (a) Tampilan pengambilan data berekstensi *.wav.
(b). Tampilan penyimpanan data berekstensi *.wav.
Bagian proses berisi tentang Proses yang dijalankan, Faktor Decimation,
dan Faktor Interpolation. Apabila nilai pada bagian proses ada yang belum diisi
oleh pengguna, maka pesan kesalahan akan muncul. Apabila masukan yang
diisikan ternyata masih tidak sesuai de