Anda di halaman 1dari 5

MODUL II

SIMULASI FILTER FIR REALTIME


Muhammad Rizky Fauzan (13117005)
Asisten : Maulida Khusnul Aqib (13116002)
Tanggal Percobaan : 23/09/2019
EL3104 Praktikum Pengolahan Sinyal Digital
Laboratorium Teknik Elektro
Institut Teknologi Sumatera

metode realisasi, sehingga setiap tugas spesifik dapat dikerjakan


Abstrak— Laporan ini berisi percobaan pemfilteran yang pada waktu spesifik dengan siklus clock sistem.
dilakukan dengan menggunakan 3 cara yang berbeda
menggunakan aplikasi Dev C++. Cara yang pertama yaitu Pada modul sebelumnya kita menggunakan filter FIR offline
membuat m-file untuk simulasi filter FIR realtime dengan (non realtime). Terdapat pebedaaan di antara algoritma sistem
metode biasa, kedua yaitu membuat m-file dengan menggunakan
buffer sirkular, dan ketiga membuat simulasi filter realtime FIR realtime dan algoritma sistem offline. Ide dasar dari algoritma
dengan bilangan fraksional. realtime adalah hanya input saat ini dan yang telah lewat yang
tersedia. Kita tidak memiliki akses kepada input yang akan
Kata Kunci— Dev C++, m-file, FIR realtime, buffer sirkular,
datang berikutnya. Pada modul sebelumnya fungsi filter yang
bilangan fraksional.
digunakan memiliki akses kepada keseluruhan sampel pada
sinyal input.
I. PENDAHULUAN
Algoritma filter realtime diperlukan untuk implementasi

P ADA praktikum kali kita akan melakukan percobaan


menggunakan Dev-C++, Dev C++ akan digunakan secara
ekstensif pada praktikum ini. Modul ini memberikan
filter realtime dengan hardware DSP. Untuk keperluan ini
maka diperlukan simulasi algoritma filter realtime-like dan
dibandingkan hasilnya dengan algoritma filter offline.
tinjauan mengenai filter FIR realtime dapat diimplementasikan.
Pada modul ini, praktikan akan membuat dan melakukan Sistem DSP adalah sistem waktu diskrit yang mengambil
simulasi untuk implementasi filter realtime dengan sampel sinyal input dan menghasilkan sampel sinyal output
menggunakan Dev-C++. Pada modul ini juga dikenalkan isu dengan frekuensi sampling tertentu yang konstan. Artinya
numerik yang dihadapi ketika menggunakan prosesor DSP fixed
pada sistem DSP realtime, pada rentang waktu antar
point.
Filter FIR adalah salah satu tipe dari filter digital yang dipakai sampling, haruslah dapat
pada aplikasi Digital Signal Processing (DSP). FIR dilakukan proses perhitungan sampel output yang merupakan
kepanjangan dari Finite Impulse Response. Mengapa disebut hasil pengolahan sinyal digital (bisa berupa filter). Artinya
respons impulsnya terbatas (finite)? Karena tidak ada feedback
proses komputasi pengolahan sinyal digital untuk tiap sampel
didalam filter, jika anda memasukkan sebuah impulse (yaitu
haruslah dapat diselesaikan sebelum sampel berikutnya
sebuah sinyal ‘1’ diikuti dengan banyak sinyal ‘0’), sinyal nol
akan keluar setelah sinyal 1 melewati semua delay line dengan diambil.
koefisiennya. Keuntungan filter FIR antara lain adalah stabil Karakteristik simulasi realtime-like adalah sebagai berikut:
dan memiliki phasa yang linier. Sedangkan kerugiannya
adalah filter FIR terkadang membutuhkan lebih banyak
memory dan/atau perhitungan untuk mencapai karakteristik 1. Loop untuk kesesuaian dengan kelakuan
respon filter yang diberikan. Dan juga, respon tertentu tidak clock
mudah dilaksanakan untuk diimplementasikan dengan filter
FIR.
2. Akses hanya kepada input yang telah ada
II. LANDASAN TEORETIS pada array input
.2.1 Filter FIR realtime
Sistem realtime disebut juga dengan sistem waktu nyata. 3. Update output setiap siklus loop
Sistem realtime harus dapat memberikan respon yang tepat
dalam batasan waktu yang ditentukan. Realtime adalah
2.2 ISU NUMERIK B. Langkah Kerja
Kebanyakan prosesor DSP merupakan prosesor fixed point.
a. Percobaan membuat m-file untuk simulasi pem-filter-
Prosesor floating point jauh lebih rumit dari prosesor fixed point an real time FIR
sehingga membutuhkan harga yang lebih mahal. Untuk
membuat sistem yang cost effective maka prosesor DSP
direalisasikan dengan prosesor fixed point. Prosesor fixed point
secara natural set intruksi dasar matematiknya hanya mendukung
operasi bilangan bulat(integer).
Memahami isu numerik adalah sangat penting untuk Pada bagian ini anda diminta untuk membuat
memperoleh performansi terbaik dari sebuah prosesor fixed- simulasi pem-filter-an realtime FIR dengan Dev-C++.
point. Masalahnya adalah kebanyakan sinyal dan juga Fungsi internal filter menggunakan metoda non
koefisien bernilai bilangan real. Sehingga operasi pengolahan realtime, karena menghitung sinyal output dengan
sinyal merupakan operasi perkalian dan penjumlahan bilangan sinyal input yang lengkap. Buat perhitungan filter
real. Namun DSP yang kita gunakan merupakan prosesor fixed realtime FIR dengan menggunakan Dev-C++.
point.
Dari percobaan sebelumnya Anda telah memperoleh koefisien
filter untuk melakukan pem- filter-an. Kita akan
menggunakannya sebagai koefisien filter yang akan diterapkan di
BF561. Nantinya kita akan mencoba program filter dalam bahasa
pemograman C ataupun Assembly, jadi kita dapat menuliskan
koefisien tersebut di program kita, seperti berikut (contoh). b. Percobaan membuat m-file untuk simulasi pem-filter-
an realtime FIR dengan buffer sirkular.
int koef={a1,a2,a3,a4};
Pada bagian ini anda diminta untuk memodifikasi hasil dari
Perhatikan bahwa koefisien harus ditulis dalam format Q32 dan percobaan sebelumnya dengan menggunakan metode buffering
jangan lupa bahwa prosesor yang kita gunakan adalah prosesor sirkular. Dengan metoda ini maka setiap kali didapatkan sampel
fixed-point 32 bit sehingga setiap bilangan input, maka sampel-sampel terdahulu pada buffer tidak perlu
digeser. Metoda buffering sirkular ini sangat sering digunakan
-31
direpresentasikan dalam 32 bit dengan kisaran –2 sampai karena operasi write pada memori biasanya membutuhkan
31 waktu eksekusi yang cukup lama dibandingan dengan operasi
2 -1 atau –2147483648 –2147483647 untuk –1 sampai 1. matematik biasa.

Q31 adalah salah satu contoh format Q, yaitu penulisan bilangan


untuk bilangan fixed-point. Pada BF561 yang merupakan
prosesor fixed-point 32 bit, maka untuk N=32, digunakan
format Q31. Format Q31 ini merepresentasikan fraksional 31
bit.
Edit source code dari bagian
Pada format ini, MSB adalah sign bit yang diikuti oleh suatu
titik imajiner, dan kemudian 31 bit atau mantisa yang
sebelumnya dengan mengubah
dinormalisasi ke 1. Bilangan Q31 memiliki kisaran desimal bagian buffering dan
antara –1 sampai 0.9999 (0x8000h sampai 0x7FFFh). Bilangan perhitungan filter. Lakukan
fraksional h dapat direpresentasikan.
simulasi dan buatlah grafiknya.
Konversi bilangan real kebilangan fraksional dilakukan dengan
Koef=round(2^31*koef);
Untuk konversi bilangan fraksional ke bilangan real dilakukan
dengan
Koef=koef/2^31;
Bandingkan hasil
III. METODOLOGI simulasi ini dengan hasil
A. Alat dan Bahan
 1 unit komputer
sebelumnya.
 Software matlab
c. Percobaan membuat m-file untuk simulasi pem-filter-
an realtime FIR dengan bilangan fraksional.
Pada bagian ini anda diminta untuk memodifikasi hasil dari
percobaan sebelumnya dengan menggunakan bilangan fraksional
32 bit. Semua koefisien filter direpresentasikan dengan bilangan
fraksional. Buffer diisi dengan sampel input baru yang diisi dengan
sampel input yang telah dikonversikan dari bilangan real menjadi
bilangan fraksional. Modifikasi perkalian bilangan real menjadi
perkalian bilangan fraksional. Simpan sampel sinyal output yang
dihasilkan dengan terlebih dahulu mengkonversikan bilangan
fraksional menjadi bilangan real.

Gambar 1. Grafik percobaan 1


Edit source code dari bagian sebelumnya
Dari grafik tersebut dapat dilihat bahwa source code yang
dengan mengubah fungsi filter, juga telah dibuat adalah benar.
koefisien dan buffer menjadi tipe integer.
Tambahkan bagian konversi output 4.2 Percobaan membuat m-file untuk simulasi pem-filer-an
menjadi float sebelum ditulis ke file. realtime FIR dengan buffer sirkular.
(Gunakan casting).
Pada praktikum ini dilakukan modifikasi hasil percobaan
pertama dengan menggunakan metode buffering sirkular.
Dengan metoda ini setiap kali didapatkan sampel input, maka
sampe-sampel terdahulu pada buffer yang tidak perlu digeser.

Source code pada percobaan ini sama dengan source code


pada percobaan pertama, beda nya pada percobaan ke dua ada
Bandingkan hasil simulasi ini dengan hasil penambahan variable k yang di assign dengan nilai 0 serta
sebelumnya. adanya perhitungan filter dengan metode sirkular buffer.
Berikut adalah source code nya :

IV. HASIL DAN ANALISIS


4.1 Percobaan membuat m-file untuk simulasi pem-filter-an
realtime FIR

Pada percobaan kali ini kita terlebih dulu membuat m-file


dengan menggunakan source code yang telah ada pada modul.
Source code tersebut di copy pada Dev C++. Hasil yang
didapat adalah berisi text nilai koefisien filer dari sinyal total
pada modul 1.
Lalu koefisien tersebut dibuatkan plot kedalam Microsoft
excel dengan grafik dan didapatkan data berikut :

Lalu setelah itu di dapatkan grafik berikut :


Gambar 2. Grafik percobaan 2

Pada percobaan ini didapat koefisien dari source code Gambar 4. Grafik percobaan 3.2
yang telah dibuat di Dev C++. Lalu koefisien tersebut
dimasukkan kedalam Ms. Excel dan didapatkan plot grafik Setelah didapatkan koefisien dan dimasukkan ke dalam Ms.
sinyal seperti pada gambar. Circular buffer dipakai karena Excel dan didapatkan grafik tersebut, membuktikan bahwa
Time shifting yang ada pada konvolusi linear membuat source code tersebut benar. Yang berbeda dari percobaan
program kompleksitas program menjadi besar. sebelumnya adalah banyaknya koefisien dan nilainya. Sinyal
yang didapat pada percobaan ini lebih terlihat titik-titiknya
4.3 Percobaan membuat m-file untuk simulasi pem-filter-an dari pada percobaan sebelumnya karena dengan menggunakan
realtime FIR dengan bilangan fraksional. metode pem-filter-an ini. Metode dengan bilangan fraksional
digunakan karena lebih cepat dibandingkan dua metode
Pada percobaan ini kita memodifikasi dari source code lainnya dimana input yang awalnya berupa bilangan fraksional
sebelumnya atau bilangan float diubah menjadi bilangan integer.
perhitungan filter akan memproses serangkaian bilangan
integer. Nantinya prosesor akan memproses lebih cepat.

V. KESIMPULAN
 Kita dapat membuat simulasi filter FIR realtime
dengan menggunakan source code di Dev C++ lalu di
plot pada Ms. Excel.
 Kita dapat melihat bahwa dengan filter realtime ini
akan terlihat bahwa pemfilteran terdapat pada time
shifting.
 Kecepatan kerja pada metode buffer sirkular dapat
lebih mempercepat FIR realtime
 Metode buffer sirkular dapat menghemat memori
 Metode bilangan fraksional lebih cepat dari dua
metode tersebut tetapi memiliki kelemahan dalam hal
konversinya.

Dan didapatkan grafik berikut REFERENSI


Basic format for books:

[1] Hutabarat, Mervin. 2018.Elektronika. Lampung:


https://drive.google.com/drive/folders/1Hd_5aHjIjPhSCJC6KLXP
GsDSvWYhJG3e

Gambar 3. Grafik percobaan 3.1


LAMPIRAN

Anda mungkin juga menyukai