Perancangan Tapis Pewujudan Tapis

III. PERANCANGAN DAN

PEWUJUDAN TAPIS PEMILIH FREKUENSI

3.1 Perancangan Tapis

Tujuan akhir dari tahap perancangan adalah untuk memperoleh koefisien tapis hn yang sesuai spesifikasi. Diagram alir tahap perancangan tapis ditunjukkan pada Gambar 4. Gambar 4. Diagram Alir Perancangan Tapis FIR

3.1.1 Penentuan Spesifikasi Tapis

Dalam tugas akhir ini dirancang tapis FIR pemilih frekuensi jenis LPF, HPF, dan BPF dengan variasi parameter frekuensi sumbat 1 kHz, 4 kHz, dan 18 kHz, serta lebar pita sebesar 1 kHz untuk BPF dan panjang tapis 20, 40, dan 80. Frekuensi cuplik yang digunakan bervariasi sesuai dengan frekuensi sumbat tapis 8kHz untuk Fc = 1kHz, 16 kHz untuk Fc = 4 kHz, dan 44,1 kHz untuk Fc = 18 kHz untuk memenuhi Hukum Nyquist Fs ≥ 2Fmax. Metode perhitungan koefisien tapis yang digunakan adalah metode penjendelaan tipe jendela Hamming. Bangun tapis yang digunakan adalah bentuk langsung Direct Form. 3.1.2 Perhitungan Koefisien Tapis Perhitungan koefisien tapis dilakukan dengan bantuan FDATool. Semua spesifikasi tapis yang telah ditentukan frekuensi sumbat, frekuensi cuplik, panjang tapis, metode perhitungan koefisien tapis, jenis tapis dimasukkan ke dalam FDATool.

3.2 Pewujudan Tapis

Pewujudan tapis dalam tugas akhir ini menggunakan perangkat keras DSK TMS320C6713 dengan bantuan program CCS v.3.1 Code Composer Studio v3.1. CCS membantu proses penyusunan dan pengunduhan algoritma konvolusi dan koefisien tapis hasil perhitungan FDATool serta algoritma pengaturan perangkat-perangkat DSK TMS320C6713 Codec, Memori, Serial Port, dll. ke DSK TMS320C6713. Algoritma tapis FIR konvolusi linier ranah waktu dan algoritma pengaturan perangkat DSK TMS320C6713 diwujudkan dalam bentuk senarai programfile sumber pada CCS. Secara keseluruhan, algoritma program tapis FIR beserta file senarai program dan fungsi - fungsi yang bersangkutan ditunjukkan pada Gambar 5. Gambar 5. Diagram Alir Algoritma Pewujudan Tapis FIR

3.2.1 Inisialisasi Koefisien Tapis

Koefisien tapis hasil perhitungan FDATool harus disusun ke dalam bentuk yang sesuai dengan senarai program yang dirancang pada CCS. Dalam tugas akhir ini, koefisien tapis dinyatakan dalam bilangan ambang floating 32 bit dan disusun sebagai file header berekstensi .h yang nantinya akan dimasukkandisertakan ke dalam senarai program utama fir.c.

3.2.2 Inisialisasi Codec AIC23

Dalam tugas akhir ini digunakan senarai program pendukung c6713sdkinit.c dan c6713sdkinit.h untuk menginisialisasi AIC23. Sebagian besar parameter pengaturan AIC23 dalam tugas akhir ini merupakan parameter pengaturan default. Akan tetapi, terdapat sedikit perubahan, yaitu pada pengaturan volume masukan line in kanal kiri register 0 sebesar +6 dB. Perolehan masukan line in kanal kiri dinaikkan sebesar +6 dB 2 kali supaya sinyal masukan tidak mengalami pelemahan akibat adanya rangkaian pembagi tegangan dengan perolehan sebesar 0,5 antara soket line in dan codec. Khusus untuk pengaturan lajufrekuensi pencuplikan, karena sering dilakukan pergantian, untuk mempermudah penggantian digunakan metode pengaturan laju pencuplikan secara langsung tanpa harus mengubah nilai parameter pada c6713dskinit.h .

3.2.3 Inisialisasi Perangkat DSK TMS320C6713

Selain chip DSP TMS320C6713, di dalam DSK TMS320C6713 juga terdapat berbagai macam perangkat periperal pendukung. Perangkat ini dapat diatur dengan pemrograman lewat CCS. Dalam tugas akhir ini digunakan senarai program pendukung c6713dskinit.c dengan file header c6713dskinit.h untuk mengatur AIC23 dan perangkat-perangkat DSK TMS320C6713. Di dalam c6713dskinit.c berisi berbagai macam fungsi untuk menginisialisasi DSK dan sistem kerja interupsi, serta fungsi untuk masukan dan keluaran. Fungsi-fungsi ini dibentuk dengan memanggil fungsi-fungsi pada tingkat yang lebih rendah yang disediakan oleh CCS dalam BSL Board Support Library dan CSL Chip Support Library. 3.2.4 Inisialisasi Vektor Interupsi Dalam tugas akhir ini digunakan file vectors_intr.asm untuk membangun tabel layanan interupsi Interrupt Service Table, yang mana menggunakan interupsi INT11 sebagai ISR Interrupt Service Routine. Untuk dapat menggunakan interupsi CPU INT11, perintah lompat jump ke rutin layanan interupsi c_int11 harus diletakkan pada titik yang sesuai dalam tabel layanan interupsi.

3.2.5 Linker Command File

File perintah command file berfungsi untuk mengatur pengalokasian blok-blok kode dan data ke dalam media penyimpanan yang tersedia, yang selanjutnya dimasukkan ke dalam bagian-bagian tertentu. Dalam tugas akhir ini digunakan c6713dsk.cmd sebagai linker command file. Di dalamnya didefinisikan tiga sumber memori, yaitu : IVECS dan IRAM memori internal, SDRAM memori eksternal, dan FLASH memori flash. Selanjutnya didefinisikan pemetaan blok-blok kode dan data ke dalam bagian-bagian dalam memori tersebut, yaitu bagian .vectors yang dihasilkan oleh vectors_intr.asm dipetakan ke IVECS, bagian .text, .bss, .cinit, .stack, .sysmem, .const, .switch, .far, .cio, .csldata dipetakan ke IRAM , dan bagian .EXT_RAM untuk akses ke memori eksternal dipetakan ke SDRAM memori eksternal. 3.2.6 Program Utama Tapis FIR Senarai program fir.c disusun sebagai senarai program utama. Di dalamnya terdapat algoritma konvolusi ranah waktu untuk menghitung keluaran tapis FIR dan akses pemasukan data codec yang disusun sebagai rutin layanan interupsi Interrupt Service Routine. Di dalamnya juga disertakan include file header DSK6713_AIC23.h sebagai file pendukung untuk akses codec dan file koefsien tapis yang sudah disusun ke dalam format yang sesuai berekstensi .cof.

IV. PENGUJIAN DAN ANALISIS