implementasi dsp - digilib.itb.ac.id file1. high speed arithmetic. dsp mempunyai dan multiplier...

24
28 BAB 3 IMPLEMENTASI DSP 3.1 Pengenalan DSK TMS320C6713 DSK TMS320C6713 merupakan salah satu starter kit untuk pemrosesan sinyal digital dari vendor Texas Instrument yang digunakan secara luas untuk beberapa aplikasi mulai dari pemrosesan komunikasi dan kontrol hingga pemrosesan gambar dan suara. Dalam implementasinya, DSP menggunakan komponen dasar seperti terlihat pada Gambar 3.1. Gambar 3.1 Komponen dasar Sistem DSP Sinyal analog yang akan diproses dalam sistem DSP dikonversikan ke dalam bentuk digital menggunakan analog-to-digital converter (ADC). Data digital ini akan diproses sesuai algoritma DSP yang dikehendaki. Hasil pemrosesan ini kemudian akan diubah kembali ke dalam bentuk analog menggunakan digital-to-analog converter (DAC). Keuntungan penggunaan DSP di antaranya adalah kemampuannya yang sangat besar dalam mengolah unit logika aritmetika dan pengoptimalan multipliers, dapat bekerja dengan baik pada pemrosesan secara kontinu atau disebut sebagai real-time processing, dapat mengimplementasikan algoritma linier dan nonlinier yang kompleks, dapat dimodifikasi secara mudah dengan mengubah software, mengurangi jumlah komponen sehingga mudah difabrikasi, dan memiliki reabilitas yang tinggi.

Upload: phungkhanh

Post on 13-Feb-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

28

BAB 3 IMPLEMENTASI DSP

3.1 Pengenalan DSK TMS320C6713

DSK TMS320C6713 merupakan salah satu starter kit untuk pemrosesan

sinyal digital dari vendor Texas Instrument yang digunakan secara luas untuk

beberapa aplikasi mulai dari pemrosesan komunikasi dan kontrol hingga

pemrosesan gambar dan suara. Dalam implementasinya, DSP menggunakan

komponen dasar seperti terlihat pada Gambar 3.1.

Gambar 3.1 Komponen dasar Sistem DSP

Sinyal analog yang akan diproses dalam sistem DSP dikonversikan ke

dalam bentuk digital menggunakan analog-to-digital converter (ADC). Data

digital ini akan diproses sesuai algoritma DSP yang dikehendaki. Hasil

pemrosesan ini kemudian akan diubah kembali ke dalam bentuk analog

menggunakan digital-to-analog converter (DAC).

Keuntungan penggunaan DSP di antaranya adalah kemampuannya yang

sangat besar dalam mengolah unit logika aritmetika dan pengoptimalan

multipliers, dapat bekerja dengan baik pada pemrosesan secara kontinu atau

disebut sebagai real-time processing, dapat mengimplementasikan algoritma linier

dan nonlinier yang kompleks, dapat dimodifikasi secara mudah dengan mengubah

software, mengurangi jumlah komponen sehingga mudah difabrikasi, dan

memiliki reabilitas yang tinggi.

Page 2: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

29

Beberapa fitur pada DSP membuatnya berbeda dengan microprocessor

lain. Perbedaan tersebut di antaranya :

1. High speed arithmetic. DSP mempunyai adder dan multiplier yang dapat

digunakan secara paralel dalam satu kali instruksi sehingga operasi

pertambahan dan perkalian dapat dilakukan dalam satu cycle. Kemampuan

pengolahan aritmetika ini sangat cepat dibandingkan dengan microprocessor

lainnya.

2. Dapat melakukan pemrosesan secara real-time. DSP mempunyai kemampuan

yang tinggi dalam menerima dan mentransmisikan data secara real-time tanpa

menginterupsi operasi matematis internal.

3. Mempunyai arsitektur multiple acces memory. Operasi pada DSP yang banyak

dilakukan adalah pertambahan dan perkalian. Untuk dapat mengoperasikan

kedua operasi ini secara simultan maka terdapat fitur multiple acces memory.

4. DSP memiliki keuntungan dalam hal penggunaan daya yang lebih kecil dan

relatif lebih murah.

Pada tugas akhir ini digunakan DSP Starter Kit tipe TMS320C6713. Paket

DSK terdiri atas:

1. Code Composer Studio (CCS) yang menyediakan tool pendukung untuk

software yang dibuat sesuai dengan algoritma pemrosesan sinyal digital yang

dikehendaki. CCS menyediakan integrated development environment (IDE)

yang menyatukan compiler C, assembler, linker, debugger dan lainnya.

2. Board yang berisi digital signal processor floating point TMS320C6713 yang

memiliki frekuensi clock 225 MHz, memori internal 192 KB, dan frekuensi

sampling standar adalah 48 KHz.

3. Kabel USB yang menghubungkan board DSK dengan komputer.

4. Power supply untuk board DSK.

3.1.1 Arsitektur DSK TMS320C6713

DSK TMS320C6713 merupakan bagian dari keluarga platform DSP

TMS320C6000 floating point yang mempunyai arsitektur very-long-

Page 3: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

30

instruction-word (VLIW) VelociTI yang canggih dengan kinerja tinggi

sehingga menjadi pilihan yang baik untuk aplikasi multichannel dan

multifunction. DSK TMS320C6713 mempunyai frekuensi clock 225 MHz

sehingga mempunyai kemampuan untuk memproses 8x32 bit instruksi setiap

1 4.444225MHz

ns= dan dapat mengeksekusi 1350 juta operasi floating point

per detik (MFLOPS), 1800 juta instruksi per detik (MIPS), serta dapat

melakukan 450 juta operasi multiply-accumulate per detik (MACs). DSK

TMS320C6713 mempunyai beberapa peripheral pendukung di antaranya dua

buah Multichannel Audio Serial Ports (McASPs), dua buah Multichannel

Buffered Serial Ports (McBSPs), dua buah Inter-Integrated Circuit (I2C)

buses, sebuah dedicated modul General-Purpose Input/Output (GPIO), dua

buah general-purpose timers, sebuah host-port interface (HPI), dan aglueless

external memory interface (EMIF) yang mempunyai kemampuan sebagai

interface dengan SDRAM, SBSRAM, dan asynchronous peripheral.

Gambar 3.2 Diagram blok DSK TMS320C6713 [3]

Fitur utama yang terdapat dalam DSK TMS320C6713 adalah :

• DSP TMS320C6713 beroperasi pada 225 MHz

• AIC23 Stereo codec

Page 4: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

31

• 16 MB SDRAM

• 512 KB non − volatile memori flash

• 4 LED dan switch DIP

• Konfigurasi software board melalui register yang diimplementasikan

dalam CPLD

Gambar 3.3 Bentuk fisik DSK TMS320C6713 [3]

• Pilihan konfigurasi boot

• Konektor ekspansi standar untuk penggunaan daughtercard

• Emulasi JTAG melalui emulator JTAG on-board menggunakan interface

USB atau emulator eksternal

• Power supply (+5V)

3.1.2 Peta Memori DSK TMS320C6713

DSP keluarga C67xx memiliki ruang pengalamatan yang besar. Kode

program dan data dapat ditempatkan dimana pun dalam unified address space.

Alamat pada memori berukuran 32 bit. Peta memori menunjukkan ruang

pengalamatan pada DSK TMS320C6713. Secara umum, memori internal

menempati alamat paling awal dari ruang pengalamatan yang tersedia. EMIF

memiliki 4 daerah pengalamatan yang terpisah yang disebut chip enable

Page 5: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

32

spaces (CE0 – CE3). SDRAM menempati CE0 sedangkan flash dan CPLD

menempati CE1. CE2 dan CE3 secara umum dipesan untuk daughtercards.

Gambar 3.4 Peta memori DSK TMS320C6713 [3]

3.1.3 Fitur – fitur DSK TMS320C6713

DSK TMS320C6713 mempunyai fitur-fitur penting yang akan

dijelaskan dalam subbab-subbab berikut.

3.1.3.1 Memori Flash

Memori flash memiliki ukuran 512 KB, namun penggunaan dalam

konfigurasi standar adalah 256 KB. Flash merupakan tipe memori yang tidak

akan kehilangan isi memorinya jika catu daya dimatikan. DSK menggunakan

memori flash yang berfungsi untuk booting. Dalam flash ini berisi sebuah

program kecil yang disebut power on self test (POST). Program ini berjalan

saat DSK pertama kali dinyalakan. Program POST akan memeriksa fungsi-

fungsi dasar board seperti koneksi USB, audio codec, LED, switches, dan

sebagainya. Memori flash berada pada ruang alamat CE1 (alamat

0x90000000).

Page 6: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

33

3.1.3.2 SDRAM

Synchronous Dynamic RAM atau SDRAM dengan ukuran 16 MB

merupakan memori utama yang berfungsi sebagai tempat penyimpanan

instruksi maupun data. SDRAM berada di awal ruang pengalamatan CE0

(alamat 0x80000000). DSK menggunakan 128 megabit SDRAM dalam 32 bit

EMIF. Pengontrol SDRAM merupakan bagian dari EMIF dan harus

dikonfigurasi dalam software untuk operasi yang sesuai.

3.1.3.3 AIC23 Stereo Codec

AIC23 Stereo Codec berfungsi sebagai ADC bagi sinyal audio yang

masuk ke board maupun sebagai DAC bagi sinyal yang keluar dari board.

Frekuensi pencuplikan untuk AIC23 Stereo Codec ini adalah 8 KHz – 96 KHz

dengan sampel 16 hingga 32 bit. Bagian AIC23 Stereo codec terdiri atas

konektor microphone, line-in, line-out dan speaker. Proses yang dilakukan

codec ini adalah dengan mencuplik sinyal analog yang masuk misalnya

melalui microphone ataupun input line-in dan mengkonversi hasil pencuplikan

tersebut ke dalam data digital sehingga dapat diproses oleh DSP. Jika proses

dalam DSP sudah selesai maka data digital yang telah diproses akan

dikonversi lagi menjadi sinyal analog sehingga melalui headphone output

(speaker) atau line-out dapat diketahui sinyal output-nya.

Gambar 3.5 Interface codec pada DSK TMS320C6713

Page 7: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

34

Codec berkomunikasi melalui 2 kanal serial audio. Kanal pertama

digunakan untuk mengontrol konfigurasi register internal codec sedangkan

kanal lainnya digunakan untuk mengirim dan menerima sampel audio digital.

DSK TMS320C6713 ini juga mempunyai 2 buah Multichannel Buffered

Serial Ports (McBSP) yang digunakan untuk mengontrol kanal. McBSP0

digunakan sebagai kanal kontrol unidirectional yang diprogram untuk

mengirim 16 bit control word ke AIC23. Tujuh bit control word pertama

menspesifikasikan register yang akan dimodifikasi sementara 9 bit berikutnya

berisi nilai register. Kanal kontrol hanya digunakan ketika mengkonfigurasi

codec dan secara umum akan idle ketika data audio sedang ditransmisikan.

McBSP1 digunakan sebagai kanal data bidirectional. Semua data audio

mengalir ke kanal data. DSK umumnya menggunakan format data sampel

selebar 16-bit untuk kanal kiri dan kanan. Format data ini disebut format DSP

yang didesain secara spesifik untuk dapat beroperasi dengan port McBSP pada

DSP. Codec mempunyai clock sistem 12 MHz. Clock sistem 12 MHz ini

berhubungan dengan sample rate USB karena mayoritas USB menggunakan

clock 12 MHz dan dapat menggunakan clock yang sama baik untuk codec

maupun pengontrol USB. Kecepatan sampel internal yang membangkitkan

pembagian clock 12 MHz ini digunakan untuk membangkitkan frekuensi yang

umum seperti 48KHz, 44,1KHz, dan 8KHz.

3.1.3.4 Daughter Card Interface

DSK menyediakan tiga konektor ekspansi yang dapat digunakan untuk

menerima plug-in daughter card. Daughter card memungkinkan user

membangun platform DSK sendiri untuk memperluas dan menyediakan

kemampuan aplikasi I/O yang spesifik. Konektor ekspansi ini digunakan

untuk memori, peripheral, serta Host Port Interface (HPI). Konektor memori

menyediakan akses sinyal DSP EMIF asynchronous ke interface dengan

memori dan memory mapped devices. HPI merupakan interface berkecepatan

Page 8: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

35

tinggi yang dapat memungkinkan beberapa DSP untuk saling berkomunikasi

dan bekerja sama pada suatu proyek yang dibuat.

3.1.3.5 Complex Programmable Logic Device (CPLD)

DSK TMS320C6713 menggunakan CPLD Altera EPM3128TC100 –

10 untuk mengimplementasikan :

• 4 memory mapped control/status register yang memungkinkan software

mengontrol beberapa fitur board,

• mengontrol interface daughtercard dan sinyal,

• berbagai macam glue logic yang dapat mengikat beberapa komponen

board secara bersamaan.

3.1.3.6 Voltage power supply +5 volt

Input 5 volt ini dibagi dengan menggunakan voltage regulator menjadi

1,26 volt untuk internal DSP dan 3,3 volt untuk I/O buffer DSP dan chip lain

yang berada pada board.

3.1.3.7 LED dan Switches

DSK memiliki 4 LED dan sebuah 4 DIP switch sebagai sarana

sederhana untuk menyediakan umpan balik interaktif ke user. Keduanya

diakses melalui reading dan writing ke register-register CPLD.

3.2 Code Composer Studio

Code Composer Studio (CCS) menyediakan integrated development

environment (IDE) untuk menggabungkan beberapa tool software. CCS berisi tool

untuk code generation seperti compiler C, assembler, dan linker. CCS memiliki

kemampuan secara grafis dan mendukung real-time debugging. CCS

menyediakan tool software yang mudah digunakan untuk build dan debug

program. Compiler C meng-compile program yang ditulis dalam bahasa C untuk

menghasilkan file assembly berekstensi *.asm. Assembler kemudian akan meng-

assemble file *.asm untuk menghasilkan file machine language object dengan

Page 9: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

36

ekstensi *.obj. Linker akan mengkombinasikan file-file object dan object libraries

sebagai input untuk menghasilkan file executable berekstensi *.out. File

executable ini dapat di-load dan di-run secara langsung ke prosessor

TMS320C6713. Tipe-tipe file yang akan dijumpai ketika menggunakan CCS

secara lengkap adalah sebagai berikut:

1. file *.pjt : nama file project, menyimpan keseluruhan file yang diperlukan

untuk menjalankan algoritma program DSP.

2. file *.c : program utama dengan bahasa pemrograman C.

3. file *.asm : assembly source program yang dapat dibuat oleh user ataupun

oleh C compiler.

4. file *.sa : linear assembly source program

5. file *.h : header support file

6. file *.lib : library file seperti run-time support library rts6701.lib

7. file *.cmd : linker command file yang berisi alokasi alamat memori yang

digunakan.

8. file *.obj : object file yang dibuat melalui assembler

9. file *.out : executable file yang dibuat oleh linker untuk di-load dan di-run ke

prosesor.

Analisis secara real-time dapat dilakukan dengan menggunakan real-time

data exchange (RTDX) yang tergabung dengan DSP/BIOS. RTDX

memungkinkan pertukaran data antara host dengan target DSP dan menganalisis

secara real-time tanpa menghentikan proses yang dilakukan DSP. Statistik kunci

dan kinerjanya dapat dimonitor secara real-time.

3.3 Mekanisme Transfer Data

3.3.1 DSP berbasis sampel dan DSP berbasis frame

Pemrosesan sinyal secara real-time secara umum dapat dibagi menjadi

dua jenis, yaitu pemrosesan berbasis sampel dan pemrosesan berbasis frame.

Pada pemrosesan berbasis sampel, setiap satu input sampel diolah kemudian

dikeluarkan (output) satu sampel pula. Untuk input dan output berupa sinyal

Page 10: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

37

analog, setiap diperoleh satu hasil pencuplikan, hasil tersebut langsung

diproses kemudian hasil proses tersebut dialirkan ke output. Kelemahan sistem

ini adalah lama waktu pemrosesan menjadi relatif singkat karena proses di

DSP harus selesai sebelum diperoleh hasil sampel yang berikutnya.

Sinyal Analog Input satu sampel

Output satu sampel

Satu sampel diproses

DSP

Sinyal Analog yang telah

direkonstruksi Gambar 3.6 Pemrosesan DSP berbasis sampel

Pada pemrosesan berbasis frame (sekumpulan sampel yang berturutan,

terkadang disebut “block” atau “packet”), sampel dikumpulkan terlebih dahulu

sampai sebanyak N, jika telah terkumpul sampel sebanyak N maka proses

terhadap frame baru dimulai. Sementara frame diproses, sampel-sampel

berikutnya dikumpulkan lagi dalam frame berikutnya. Keuntungan sistem ini

adalah lama waktu pemrosesan yang diperbolehkan relatif lebih panjang

dibandingkan dengan DSP berbasis sampel. Semakin besar ukuran frame

maka semakin panjang juga waktu pemrosesan yang diperbolehkan.

Sinyal Analog Input satu sampel

Input satu sampel

Sinyal Analog yang telah

direkonstruksi

Telah terkumpul N

sampel?

Mulai menyusun frame berikutnya

YaTidak

Output satu sampel

Gambar 3.7 Pemrosesan DSP berbasis frame

3.3.2 Triple Buffering

Untuk pemrosesan real-time berbasis frame, diperlukan setidaknya tiga

buffer memori setiap saat. Satu buffer untuk mengisi frame dengan sampel-

sampel baru, satu untuk memproses frame oleh DSP, dan satu untuk mengirim

frame yang telah diproses ke output. Misalkan nama ketiga buffer tersebut

adalah buffer A, buffer B, dan buffer C. Metode “kasar” untuk pemrosesan

Page 11: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

38

real-time adalah mengisi buffer A dengan input sampel sebagai penympanan

keluaran ADC, kemudian mengkopi isi buffer A ke buffer B untuk

pemrosesan dan mengosongkan buffer A agar siap menerima sampel-sampel

berikutnya. Setelah pemrosesan selesai, isi buffer B dikopi ke buffer C, isi

buffer C kemudian dikirimkan ke DAC dan seterusnya. Metode seperti ini

tidaklah efisien.

Metode yang efisien untuk mengimplementasikan pemrosesan berbasis

frame adalah dengan menggunakan “triple buffering”. Dengan teknik ini tidak

diperlukan untuk menyalin isi buffer. Caranya adalah dengan mendefinisikan

tiga buah pointer yang akan digunakan sebagai alamat dari lokasi memori

buffer untuk input, pemrosesan, dan output. Saat buffer input telah terisi

penuh, hanya diperlukan untuk mengganti pointer alih-alih menyalin semua isi

buffer ke buffer lain.

Tabel 3.1 Mekanisme Triple Buffering

Pointer T0 T1 T2 T3 T4 dan seterusnya...

pInput buffer A buffer C buffer B buffer A buffer C dan seterusnya..

pProses buffer B buffer A buffer C buffer B buffer A dan seterusnya..

pOutput buffer C buffer B buffer A buffer C buffer B dan seterusnya..

Keadaan awal buffer adalah setiap buffer berisi nol. Buffer A

merupakan buffer yang pertama kali berisi input. Setelah buffer A penuh,

pointer buffer A akan menjadi pointer proses dan buffer C menjadi buffer

untuk input (saat T1). Saat T2, pemrosesan pada buffer A telah selesai

sehingga pointer buffer A akan menjadi pointer output. Buffer C yang telah

terisi penuh akan menjadi buffer untuk proses sedangkan buffer B menjadi

buffer untuk input. Saat T3, pointer buffer A kembali sebagai input (seperti

kondisi awal T0). Proses ini akan berulang terus menerus.

Page 12: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

39

3.3.3 Direct Memory Access (DMA)

DMA adalah suatu mekanisme yang transfer data dari satu lokasi

memori ke lokasi lainnya dilakukan tanpa adanya intervensi atau kerja dari

CPU. DMA memiliki unit controller yang dapat melakukan operasi transfer

memori yang terpisah dari CPU. Setelah DMA dikonfigurasi, DMA dapat

bekerja sendiri tanpa “campur tangan” CPU. Transfer data dari memori ke

codec (atau sebaliknya) dapat dilakukan oleh DMA sehingga jumlah interrupt

CPU akan berkurang drastis. Berkurangnya jumlah interrupt ini berarti

kecepatan pemrosesan dapat ditingkatkan karena CPU hanya bertugas dalam

proses pengolahan data, tanpa harus mengurus proses transfer memori.

3.4 Desain Sistem OFDM

Pada tugas akhir ini, digunakan dua desain sistem OFDM. Perbedaan antara

dua desain sistem OFDM ini terletak pada metoda sinkronisasi yang digunakan.

Dapat dilihat bahwa perbedaan antara kedua struktur sistem OFDM di atas,

terletak pada blok upsampling, pulse shaping filter, dan downsampling. Ketiga

blok ini terdapat pada sistem OFDM yang menggunakan metode sinkronisasi

Gambar 3.8 Struktur Sistem OFDM dengan metoda sinkronisasi menggunakan cyclic prefix (CP)

Input

Convolution

Interleaver

mapping

IFFT

Tambah

D/A

A/D

Sinkronisasi

ambil

FFT

Estimasi

demapping

deInterleaver

Vitebri

Output

Input

Convolution

Interleaver

mapping

IFFT

Tambah

Upsampling

D/A

Pulse Shaping

Downsampling

ambil

FFT

Estimasi

demapping

deInterleaver

Vitebri

Output

A/D

Gambar 3.9 Struktur Sistem OFDM dengan metoda sinkronisasi menggunakan pilot symbol

kan

kan

Pulse Shaping

Page 13: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

40

dengan menggunakan pilot symbol. Sedangkan pada sistem OFDM dengan

metode sinkronisasi menggunakan CP tidak terdapat ketiga blok tersebut.

3.4.1 Transmitter

• Convolution Encoder, merupakan suatu teknik forward error

correction yang bertujuan untuk meningkatkan kinerja sistem dengan

menambahkan bit-bit yang redundan pada data informasi sumber.

• Interleaver, merupakan teknik untuk mengatasi masalah burst error

yang disebabkan oleh interfensi dari luar, seperti petir, gangguan listrik

yang disebabkan manusia, dan kanal fading.

• Mapping. Setelah interleaving, deretan bit kemudian di-mapping

dengan skema mapping tertentu. Skema mapping dapat berupa BPSK,

QPSK, QAM-16, atau QAM-64.

• IFFT. Data diubah ke dalam domain waktu menggunakan IFFT.

Complex conjugate mirror ditambahkan sebelum IFFT agar

mendapatkan output simbol yang real.

• Tambah CP. Untuk mempertahankan ortogonalitas selama proses

pengiriman data, maka ditambahkan CP. CP ini adalah deretan terakhir

dari simbol output IFFT yang disalin dan ditempatkan di depan simbol

output IFFT. Sehingga terbentuk frame OFDM.

• Digital-to-Analog Converter, D/A. Sinyal diubah menjadi analog agar

dapat dikirim melalui kanal.

3.4.2 Receiver

• Analog-to-Digital Converter, A/D. Sinyal yang diterima diubah

kembali menjadi sinyal digital.

• Sinkronisasi. Karena ada perbedaan clock antara transmitter dan

receiver, sehingga transmitter dan receiver tidak sinkron, maka

diperlukan algoritma sinkronisasi untuk menemukan sampel awal dari

frame OFDM.

Page 14: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

41

• Ambil CP. Blok ini menghilangkan CP yang ditambahkan pada

transmitter.

• FFT. Data diubah kembali pada domain frekuensi menggunakan FFT.

Kemudian complex conjugate mirror yang ditambahkan di transmitter,

dihilangkan.

• Estimasi Kanal. Distorsi yang ada pada kanal harus dikompensasi.

• Demapping. Proses ini berkebalikan dengan proses mapping pada

transmitter

• Deinterleaver. Proses ini berkebalikan dengan proses interleaver pada

transmitter.

• Vitebri Decoder. Proses ini mendekodekan bit-bit yang ditambahkan

saat proses Convolutional Coding pada transmitter.

3.5 Arsitektur Sistem OFDM pada Layer Pemrosesan Sinyal

Bagian ini akan membahas lebih dalam mengenai pemrosesan sinyal yang

diolah dengan sistem OFDM ini.

3.5.1 Mapping

Pada blok mapping ini, terdapat dua proses, yaitu constellation mapper

dan channel mapper.

3.5.1.1 Constellation Mapper

Deretan bit yang akan dikirim, disimpan dalam packet, kemudian akan

di-mapping ke titik-titik konstelasi. Mapper yang dapat digunakan antara lain

adalah Binary Phase Shift Keying (BPSK), Quadrature Phase Shift Keying

(QPSK), dan Quadrature Amplitude Modulation (QAM). Pada Tugas Akhir

ini constellation mapper yang digunakan adalah QPSK.

Sinyal QPSK secara matematis dapat dinyatakan dengan

1 1( ) ( ) co s(2 ) ( )sin (2 )2 2I c Q cs t d t f t d t f tπ π= + (3.1)

Page 15: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

42

dI(t) dan dQ

16 2 /

bitbit konstelasi

(t) merepresentasikan data inphase dan quadrature. Pada

Tugas Akhir ini sinyal tidak akan dimodulasi tetapi hanya dipetakan ke titik-

titik konstelasi QPSK. Titik-titik konstelasi QPSK dapat dilihat pada Gambar

3.10.

QPSK mapper akan memetakan data ke dalam 4 titik konstelasi.

Masing-masing titik konstelasi tersebut diwakili oleh 2 bit. Data yang akan

dipetakan memiliki format short (16 bit) sehingga satu buah data akan

diwakili oleh = 8 titik konstelasi. Diagram alir proses QPSK

mapper dapat dilihat pada Gambar 3.11.

Gambar 3.10 Konstelasi QPSK Mapper

Mulai

packet

Data dibagimenjadi 8 bagian

Petakanmasing-masing

bagianke titik konstelasi

qpskre qpskim

Selesai

Gambar 3.11 Proses QPSK Mapper

Page 16: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

43

3.5.1.2 Channel Mapper

Channel mapper berfungsi untuk memetakan masing-masing titik

konstelasi ke dalam subcarrier-subcarrier. Pada pemodelan sistem ini, jumlah

subcarrier minimal yang diperlukan adalah BUFFER_LENGTH × 8 titik

konstelasi. Subcarrier yang akan digunakan akan diberi nilai 1 sedangkan

subcarrier yang tidak digunakan diberi nilai 0. Sebelum titik-titik konstelasi

dipetakan, dilakukan proses pemeriksaan apakah subcarrier ke-1 dapat

digunakan jika ya (bernilai 1) maka titik konstelasi pertama akan dipetakan ke

subcarrier tersebut, jika tidak (bernilai 0) periksa subcarrier berikutnya.

Proses tersebut diulang terus sampai semua titik konstelasi telah dipetakan ke

subcarrier-nya masing-masing. Diagram alir proses Channel Mapper dapat

dilihat pada Gambar 3.12.

3.5.2 IFFT

IFFT memiliki fungsi untuk mengubah data paralel menjadi serial dan

menghasilkan membuat susunan subcarrier saling overlap tetapi tanpa

menimbulkan interferensi karena ortogonalitas subcarrier. Sebelum

melakukan proses IFFT bagian real dan imajiner ditempatkan dalam satu

array, B2. Kemudian hasilnya ditampung dalam array hasil_IFFT. Diagram

alir proses IFFT dapat dilihat pada Gambar 3.13.

Page 17: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

44

Mulai

qpskimqpskre

Periksasubcarrier

ke-N

Apakah subcarrierbernilai 1?

Tidak

Petakanke

subcarrier

Ya

Ya

Tidak

chmapre chmapim

Apakah semuaTelah dipetakan?

Selesai

Gambar 3.12 Proses Channel Mapper

Page 18: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

45

Mulai

chmapre chmapim

Susun chmapredengan chmapim

dalam 1 array

B2

IFFT

hasil_ifft

Selesai

Gambar 3.13 Proses IFFT

3.5.3 FFT

FFT berfungsi untuk mengubah data serial menjadi paralel dan

mengembalikan data sehingga didapat kembali data yang sama dengan data

sebelum proses IFFT. Input bagi blok FFT adalah hasil_IFFT yang

merupakan hasil dari proses IFFT. Data yang telah di-FFT kemudian

dipisahkan kembali bagian real dan imajinernya. Bagian real ditampung

dalam array E dan bagian imajiner ditampung dalam array F. Diagram alir

proses FFT dapat dilihat pada Gambar 3.14.

Page 19: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

46

Mulai

hasil_ifft

fft

hasil_fft

Pisahkan real dan imajiner

E(bagian real)

F(bagian imajiner)

Selesai

Gambar 3.14 Proses FFT

3.5.4 Demapping

Pada blok mapping ini, terdapat dua proses, yaitu constellation mapper

dan channel mapper.

3.5.4.1 Channel Demapper

Proses ini dilakukan dengan hanya mengambil data dari subcarrier-

subcarrier yang bernilai 1 sedangkan subcarrier-subcarrier yang bernilai nol

diabaikan. Hal ini dilakukan karena pada proses channel mapper, titik-titik

konstelasi hanya diisikan pada subcarrier-subcarrier yang bernilai 1,

subcarrier-subcarrier yang bernilai nol tidak mengandung informasi apapun.

Diagram alir proses Channel Demapper dapat dilihat pada Gambar 3.15.

Page 20: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

47

Mulai

E(bagian real)

F(bagian imajiner)

Periksasubcarrier

ke-N

Apakah subcarrierbernilai 1?

Tidak

Ambil datadari subcarrier

Ya

demodre demodim

Apakah semua subcarrier telah

diperisa?

Ya

Tidak

Selesai

Gambar 3.15 Proses Channel Demapper

Page 21: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

48

3.5.4.2 Constellation Demapper

Proses dimulai dengan mengambil 8 titik konstelasi (pada proses

QPSK mapper satu buah data short 16 bit dipetakan ke dalam 8 titik

konstelasi) untuk kemudian di-demapping. Hasil demapping terhadap satu

titik konstelasi berjumlah 2 bit sehingga dengan 8 titik konstelasi didapat 16

bit yang kemudian disusun untuk mendapatkan kembali data short 16 bit.

Diagram alir proses QPSK Demapper dapat dilihat pada Gambar 3.16.

Mulai

demodre demodim

Temukan 8 titikkonstelasi

Ubah titik konstelasi ke biner

dan susun

Ubah ke short

packet_receive

Selesai

Gambar 3.16 Proses QPSK Demapper

Page 22: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

49

3.5.5 Sinkronisasi

3.5.5.1 Sistem OFDM dengan metoda sinkronisasi menggunakan cyclic

prefix

Algoritma sinkronisasi terdiri atas dua bagian, yaitu sinkronisasi pada

start-up dan sinkronisasi berkelanjutan selama transmisi, lihat Gambar 3.17.

Gambar 3.17 Diagram alir receiver pada mode start-up

Sinkronisasi pada start-up menggunakan algoritma pendeteksian

energi sederhana, yang menghitung jumlah kuadrat dari L sampel yang

berdekatan di dalam buffer. Energi yang terhitung kemudian dibandingkan ke

threshold. Jika energi lebih besar daripada threshold, awal frame ditemukan

dan tidak ada energi yang harus dihitung. Tetapi jika energi lebih kecil

daripada threshold, frame tidak ditemukan dan jumlah kuadrat dari sampel L

berikutnya dihitung sampai energi berada di atas threshold, lihat Gambar 3.18.

Gambar 3.18 Pendeteksian energi di receiver

Threshold harus diset sangat hati-hati, cukup rendah agar sistem tidak

melewatkan permulaan dari frame tapi juga cukup tinggi agar tidak dipicu

oleh noise.

Menden

garkan

Energi

terdetek

si?

Sinkron

isasi

Mode

berkela

njutan

Page 23: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

50

Sekali lokasi frame pertama ditemukan dengan menggunakan

pendeteksian energi, detector ML, seperti dijelaskan di bagian 2.3.1,

digunakan untuk menemukan lokasi lain yang lebih pasti.

Algoritma sinkronisasi berkelanjutan kemudian menghitung permulaan

dari frame berikutnya berdasarkan pengetahuan dari lokasi dari frame saat itu,

panjang frame, dan jumlah guard bits yang disisipkan. Berdasarkan informasi

ini, sebuah observasi interval lebih panjang daripada frame dibuat dan sampel-

sampel di interval ini diletakkan di buffer sinkronisasi. Kemudian detektor ML

digunakan untuk menemukan lokasi frame yang tepat di dalam buffer.

Penggunaan detektor ML akan berkelanjutan menempatkan frame di

tengah-tengah buffer, yang sebaliknya akan menyelip selama ada perbedaan

dalam frekuensi sampel di antara transmitter dan receiver. Penempatan frame

ditunjukkan di Gambar 3.19.

Gambar 3.19 Sebuah frame OFDM diletakkan di tengah-tengah buffer DSP [5]

Jika detector ML memberi sebuah lokasi frame yang membedakan

lebih dari satu sampel dari lokasi dihitung, beberapa gejala tertentu diambil.

Frame pada saat itu akan diekstrak pada lokasi yang diberikan oleh detektor

ML, tapi ketika frame berikutnya dibaca ke dalam buffer, lokasinya hanya

akan diatur oleh satu sampel meskipun detector ML memberi nilai yang

besar. Karena perbedaan di frekuensi clock antara transmitter dan receiver

cukup kecil, nilai sinkronisasi satu tahap pada suatu waktu akan cukup untuk

menjaga sistem tersinkron. Dengan metode ini, masalah yang berhubungan

Page 24: IMPLEMENTASI DSP - digilib.itb.ac.id file1. High speed arithmetic. DSP mempunyai dan multiplier adder yang dapat digunakan secara paralel dalam satu kali instruksi sehingga operasi

51

dengan loss dari sinkronisasi selama error yang dibuat oleh detektor ML dapat

dihindari.

3.5.5.2 Sistem OFDM dengan metoda sinkronisasi menggunakan pilot

symbol

Pada sistem OFDM ini, algoritma yang digunakan untuk menentukan

permulaan index frame adalah menghitung cross correlation dari gelombang

sinusoidal yang diterima gelombang sinusoidal yang diketahui. Receiver

menghitung korelasi dengan sinyal yang diterima, pergeseran waktu, dan

menjaga nilai maksimum dan index korespondensi. Jika nilai maksimum lebih

tinggi daripada threshold yang ditetapkan sebelumnya, maka gelombang

sinusoidal ditemukan. Jika tidak ada gelombang sinusoidal ditemukan, frame

dianggap sebagai data kosong dan estimasi error dilakukan. Dari sampel

sesaat setelah gelombang sinusoidal, training sequence pertama dilakukan.

Gambar 3.20 Metoda sinkronisasi ini menggunakan korelasi antara training sequence

dengan sinyal output dari filter Dengan menggunakan persamaan (2.37), maka korelasi yang

menunjukkan nilai maksimum mengindikasikan awal dari training frame.

Gambar 3.21 Contoh Hasil Korelasi