desain metode pengaturan data baris citra...
TRANSCRIPT
DESAIN METODE PENGATURAN DATA BARIS CITRA BLOK 8 PIXEL
UNTUK IMPLEMENTASI PADA IC FPGA SEBAGAI PENDUKUNG
PERCEPATAN OPERASI PERKALIAN QDCT DALAM PROSES KOMPRESI
CITRA JPEG
Drs. Lingga Hermanto, MMSi1
Anggi Nur Octavia2
1. Dosen Universitas Gunadarma
2. Mahasiswa Universitas Gunadarma Fakultas Ilmu Komputer dan Teknologi Informasi
Universitas Gunadarma
ABSTRAKSI
Dalam mendesain rangkaian pembagian data 8 blok pixel ini yang nantinya akan diproses dalam suatu kompresi
citra lalu di implementasikan ke dalam ic FPGA merupakan salah satu bagian dari rangkaian keseluruhan kompresi
citra dimana bagian ini merupakan proses input atau proses pembagian data 8 blok pixel. Rangkaian ini telah di
desain sesuai dengan fungsi dan tujuannya dengan baik untuk melakukan proses input dan pembagian data 8 blok pixel. Rangkaian desain ini dibagi menjadi tiga unit yaitu unit shift register yang memiliki fungsi sebagai input data
dan untuk memvalidasi (dengan bantuan clock) dan menyimpan setiap pixel yang masuk. Lalu ada rangkaian unit
counter yang berfungsi sebagai penghitung hingga pixel ke-8 dan menginformasikan 8 D flip-flop untuk mengambil
data 8 pixel. Sedangkan rangkaian unit D flip flop melakukan pengambilan data yang telah dip roses oleh shift register dengan bantuan counter dan menampilkan hasil proses tersebut secara serentak. Tujuan dari keseluruhan
desain rangkaian ini adalah membagi 8 blok data secara bertahap pada rangkaian yang telah di desain dan
menghasilkan data yang diinginkan user untuk nantinya akan di masukkan ke dalam proses kompresi citra.
Kata Kunci : Shift Register, Counter, D flip flop, Clock.
PENDAHULUAN
Perkembangan algoritma kompresi data
seperti JPEG telah berkembang pesat. Terlebih di dalam pengolahan citra yang merupakan suatu
signal dua-dimensi yang dapat diobservasi oleh sistem visual manusia. Suatu citra diperoleh dari
penangkapan kekuatan sinar yang dipantulkan
oleh objek. Dalam hal ini bagaimana caranya suatu data yang telah dikompresi hasilnya
menjadi berukuran kecil tetapi kualitas yang
dihasilkan tidak terlalu jauh berkurang. FPGA (Field Programmable Gate
Array) merupakan suatu IC digital yang sering digunakan untuk mengimplementasikan
rangkaian digital, dalam hal ini digunakan untuk
mengimplementasikan perangkat lunak yang telah dirancang sebelumnya untuk menghasilkan
algoritma kompresi JPEG[1]. FPGA dipilih
karena lebih mudah digunakan dan lebih cepat
dalam segi pengoperasiannya dibandingkan
perangkat keras lainnya.
Skripsi ini merupakan salah satu usaha mengimplementasikan rangkaian-rangkaian
digital ke dalam FPGA nantinya yang akan merancang algoritma kompresi JPEG dengan
menggunakan bahasa VHDL yang telah ada di
dalam FPGA, oleh karena itu penulis melakukan percobaan dalam ”Desain Metode Pengaturan
Data Baris Citra Blok 8 Pixel Untuk
Implementasi Pada IC FPGA sebagai Pendukung Percepatan Operasi Perkalian
QDCT Dalam Proses Kompresi Citra Jpeg” yang nantinya akan digunakan untuk
mengembangkan atau menciptakan IC
(perangkat keras) kompresi citra/video.
RUMUSAN MASALAH
Rumusan masalah yang diambil penulis ialah mengembangkan dari latar belakang masalah
yang telah diuraikan di atas, dan dapat diperoleh perumusan masalah sebagai berikut;
a. Bagaimana mendesain rangkaian Shift
register, Counter dan D flip flop yang merupakan proses pengaturan data input
8 blok pixel 8 bit.
b. Mengimplementasikan proses pengaturan data input 8 blok pixel 8 bit
dalam kompresi citra secara real-time. c. Rancang bangun perkalian dengan
FPGA ini dibatasi oleh beberapa
parameter yang dimiliki FPGA
Spartan3E, diantaranya: Four Input
LUTs, Occupied Slices, Bonded IOBs,
Total Equivalent Gate Count, Average
Connenction delay(ns) dan Maximum
Pin delay(ns) [2]
TINJAUAN PUSTAKA
Untuk memahami desain yang penulis
buat, sekaligus untuk lebih mendalami apa yang
akan dibahas lebih lanjut, penulis akan menjelaskan dasar-dasar pengertian yang
menjadi acuan penulis dalam Desain Metode
Pengaturan Data Baris Citra Blok 8 Pixel
Untuk Implementasi Pada IC FPGA sebagai
Pendukung Percepatan Operasi Perkalian QDCT Dalam Proses Kompresi Citra Jpeg .
FPGA
Field Programmable Gate Array (FPGA) merupakan sebuah IC digital yang sering digunakan untuk
mengimplementasikan rangkaian digital. Bila
dilihat dari segi namanya, Field Programmable dapat diartikan bahwa FPGA ini
bersifat dapat dirancang sesuai dengan keinginan dan kebutuhan user/pemakai tanpa melalui tahap
“burn” di laboratoruim atau di “hardwire” oleh
pabrik piranti. Bayangkan, bila kita hendak memprogram chip yang isinya dapat kita
tentukan sendiri dan tidak perlu susah payah
memesan dari pabrik. Cukup mudah dan mengasyikan bukan??? Sedangkan Gate
Array artinya bahwa FPGA ini terdiri atas
gerbang-gerbang digital dimana interkoneksi
masing-masing gerbang tersebut dapat dikonfigurasikan antara satu sama lainnya. [3]
Berikut isi dari FPGA pada umumnya: 1. Configure Logic Blocks (CLB). Bisa
dikatakan, bagian inilah yang akan
memproses segala bentuk rangkaian logika yang dibuat oleh user/pemakai.
2. I/O Blocks. Sebagai interface antara
external pin dari device dan internal user logic
3. Programmable Interconnect. Bagian ini berisi wire segments dan programmable
switches, selain itu bagian ini juga akan
menghubungkan antara CLB satu dengan CLB lainnya.
Sebagian besar FPGA memiliki
arsitektur seperti di atas. Entah itu FPGA produksi Xilinx ataupun dari Altera. Bila
berbeda pun tak akan sampai menimbulkan perbedaan yang terlalu signifikan.
Sebuah FPGA tersusun dari sebuah
bagian yang bernama “logic-cell” (Logic Blocks), yang kemudian pada perkembangannya
saling terhubung satu sama lain. Kumpulan-
kumpulan dari logic cell ini berjumlah ratusan bahkan ribuan dan membentuk sauatu fungsi
yang kompleks. Sebuah logic cell pada dasarnya terdiri atas sebuah lookup table(LUT), D flip-
flop, dan sebuah multiplekser 2 ke 1.[4]
Gambar 1 Isi Logic Cell
1. Look Up Table (LUT) merupakan sejenis
RAM (Random Acces Memory) yang berkapasitas kecil. Di dalam FPGA, LUT
ini memegang peranan penting dalam
proses implementasi fungsi-fungsi logika. Selain itu, LUT ini berciri khas memiliki
input sejumlah 4 buah.
2. D Flip Flop. Seperti yang diketahui, flip-flop (Bistable Multivibrator) dalah suatu
rangkaian sel biner yang memiliki dua buah
output yang saling berkebalikan
keadaannya (0 atau 1). Di dalam FPGA, terdapat sebuah jenis flip-flop yaitu D flip-
flop atau Data flip flop. Rangkaian D flip-flop ini berfungsi sebagai rangkaian logika
sekuensial dimana di dalamnya terdapat
peralatan memori dan pewaktu. 3. Multiplekser 2 ke 1. Sebuah multipleser
adalah piranti digital yang bekerja sebagai
switch (saklar) yang menghubungkan data dari n masukkan ke sebuah keluaran.
Multiplekser berfungsi untuk memilih beberapa input untuk hanya menjadi 1
output saja. Di dalam FPGA, terdapat
rangkaian multiplekser 2 ke 1 yang artinya, multiplekser tersebut memiliki 2 buah input
dan 1 buah output.
Setiap logic cell tersebut dapat dihubungkan dengan logic cell lainnya melalui
jalur/koneksi yang ada. Setiap cell hanya mampu bekerja secara sederhana dan ringkas, Namun
bila antara satu cell saling terhubung satu sama
lain sebuah fungsi-fungsi logika yang kompleks pun dapat terbentuk[5].
D-Flip-Flop FD adalah D flip-flop dengan input data (D)
dan data output (Q). Data pada D input dimuat ke flip-flop selama transisi clock dari Rendah (0)
ke Tinggi (1).[6]
Gambar 2 Diagram blok D-Flip-Flop
Gambar 3 Rangkaian D-Flip-Flop
Tabel 1 Tabel Kebenaran D-Flip-Flop
Register Geser Register geser disusun dengan merangkai
flip-flop satu sama lain, sebuah register geser
dapat memindahkan bit-bit yang tersimpan ke kiri atau ke kanan. Pergeseran bit ini penting
dalam operasi aritmatika dan operasi logika
yang dipakai computer, register geser juda sering digunakan untuk meyimpan data
sesaat.[7]
Gambar 4 Rangkaian Register Geser
Counter Counter merupakan suatu rangkaian
logika yang berfungsi untuk mencacah jumlah
pulsa pada bagian input dan keluaran berupa
digit biner. Counter terdiri dari flip-flop yang diserikan dimana keadaan arus keluarannya
ditahan sampai ada clock. Counter yang digunakan adalah
pencacah yang dibangun dengan flip-flop JK.
Suatu piranti pencacah terdiri dari beberapaflip-flop JK dalam keadaan Toggle, yaitu masukan J
dan K diberi sinyal 1. Karena masukan J dan K
terpasang pada tingkat tegangan tinggi (J=1 dan K=1), maka setiap flip-flop JK akan mengalami
toggle, ketika masukan pencacah menerima pulsa pendetak. Keluaran setiap Q dari flip-flop
yang pertama (FF) akan diumpankan ke
masukan yang selanjutnya, dan demikian seterusnya.
Setiap pendetak datang, jika keluaran Q dari semua flip-flop (FF) kalau diamati dengan
cermat akan kita lihat adanya suatu aturan
tertentu, yaitu aturan sistem bilangan biner. Jadi secara tidak langsung piranti digital ini telah
melaksanankan suatu proses perhitungan biner
yang disebut dengan pencacah bilangan biner.[8]
Gambar 5 Rangkaian counter
Tabel 2 Tabel kebenaran Counter (pencacah)
Pencacah Q2 Q1 Q0
0 0 0 0
1 0 0 1
2 0 1 0
3 0 1 1
4 1 0 0
5 1 0 1
6 1 1 0
7 1 1 1
Perangkat Lunak Yang Berhubungan
Dengan Perancangan FPGA Penggunaan perangkat lunak dalam
suatu perancangan sistem elektronis bertujuan untuk memperoleh efisiensi dalam hal sintesis
dan optimalisasi rancangan. Karakter suatu
rancangan dapat diketahui sebelum diimplementasikan dalam bentuk perangkat
keras sehingga memudahkan untuk melakukan
perbaikan terhadap rancangan tersebut. Berdasarkan pedoman yang didokumentasikan
oleh Xilinx, rancangan suatu sistem digital yang akan diimplementasikan dalam bentuk perangkat
keras menggunakan FPGA dibuat melalui
beberapa tahap sebagai berikut. 1. Pembuatan desain (Design Entry), yaitu
proses pembuatan rangkaian yang akan
diimplementasikan menggunakan FPGA. 2. Verifikasi desain (Design Verification),
yaitu memerikasa desain yang telah dibuat dengan cara simulasi.
3. Pemetaan, penempatan dan routing desain
(Mapping, placing and routing), yaitu pemetaan gerbang, penempatan pin dan
routing pembuatan jalur jalur koneksi desain ke dalam FPGA.
4. Implementasi desain (Design
Imlementation), yaitu mengimplementasikan rancangan dalam
bentuk perangakat keras.
Langkah-langkah tersebut dapat dilakukan
dengan bantuan perangkat lunak komputer yaitu Xilinx ISE 9.21. Pembuatan desain (rangkaian)
bisa dilakukan secara skematis atau
menggunakan VHDL (Very High Speed IC Description Language). Pada desain
menggunakan skematis, pengguna software
menggambar rangkaian menggunakan simbol-simbol rangkaian digital pada lembar gambar
Xilinx ISE. Penggunaan skematis ini efisien untuk rangkaian-rangkaian yang sederhana atau
dengan kompleksitas rendah. VHDL merupakan
tool desain rangkaian digital yang menggunakan sintaks bahasa pemrograman. Bahasa
pemrograman tersenut digunakan untuk
mendefinisikan kerja rangkaian. VHDL sesuai untuk rangkaian dengan kompleksitas tinggi,
seperti yang dirancang pada tesis ini. Untuk mendeasain rangkaian yang kompleks, VHDL
cukup efektif, karena pengguna cukup
mendefiniskan kerja rangkaian saja dan tidak perlu menggambar realisasi rangkaiannya.
Rancangan Schematic Suatu rancangan rangkaian dapat
diwujudkan ke dalam FPGA dengan cara menggambar skema rangkaian tersebut.
Penggambaran skema rangkaian gambar tersebut
dapat dilakukan pada perangkat lunak (software) yang biasanya disertakan dalam setiap
pembelian FPGA. Misalnya software Quartus
dan Max+Plus untuk FPGA milik Altera. Sedangkan FPGA buatan Xilinx dengan
perangkat lunaknya yakni ISE WebPack. Selanjutnya, skema rangkaian digambar dengan
cara membuat tiap komponen serta jalur-jalur
yang menghubungkan komponen-komponen tersebut menjadi satu kesatuan. Hingga akhirnya
tercipta gambar skema rangkaian yang utuh. Metode ini terbilang mudah dan efektif terutama
bila dipakai untuk skema rangkaian yang
sederhana serta tidak memiliki jalur-jalur yang
rumit.[6]
Gambar 6 Rangkaian yang dibuat dengan
Metode Schematic
Skema desain schematic merupakan
seperangkat sistem yang memungkinkan Anda
untuk menangkap struktur desain baik sebagai deskripsi datar atau hirarkis seperangkat
komponen, dan konektivitas antara komponen-komponen ini. Kemudian Anda dapat
menggunakan deskripsi ini untuk mendorong
pelaksanaan dan verifikasi alat. Anda membuat desain skematis menggunakan Schematic Editor.
Schematics dapat single-level (flat) atau multi-
tingkat (hirarkis). Schematics dapat ditarik pada beberapa "lembar" dan ukuran apapun.
PEMBAHASAN
Metode Penelitian
Bahan Penelitian Bahan penelitian terdiri atas :
a. FPGA Spartan-3E starter board
Keping XC3S500E mempunyai 500.000 gerbang dengan jumlah CLB sebesar 1164,
IOB sebesar 232 pengali sebanyak 20 unit, dan interkoneksi yang dapat diprogram.
Alat Penelitian a. Satu set komputer Pentium® Dual-Core
CPU E5200 @2.50GHz(2 CPUs),
~2.5GHz. b. Satu perangkat lunak Sistem Operasi
Windows XP. c. Satu perangkat lunak Xilinx ISE 9.2i.
Pelaksanaan penelitian dimulai dengan merancang gambaran skematik yang terbagi atas
beberapa bagian rangkaian. Beberapa bagian
rangkaian yang dirancang akan dihubungkan
dengan metode skematik pada perangkat lunak Xilinx ISE 9.2i.
Langkah-langkah Penelitian
a. Buka Xilink ISE 9.2i
b. Klik File -> New Project c. Ketik nama project dengan nama
AddFour lalu klik next d. Atur Device Properties
e. Klik new source -> ketik nama file namenya DesainFul pilih Schematic ->
klik next -> klik Finish -> pilih yes f. Klik next -> pilih next lagi -> lalu
Finish g. Gambar desain schematic DesainFul ->
lalu save h. Pada bagian tab Processes pada
Synthesize-XST klik kanan pilih Run i. Klik kanan pada Implement Design
lalu pilih Run j. Jika proses diatas telah selesai dan tidak
terdapat “Error” maka proses selanjutnya adalah proses pengaturan
clock sebelum simulasi dilakukan k. Proses Simulasi
1. Pada tab Source, pilih Behavioral
Simulation.
2. Kemudian pilih Create new Source
3. Kemudian ketik nama source, pilih
Test Bench WaveForm klik Next,
Next lagi, lalu Finish.
4. Lalu ikuti perintah seperti dibawah,
lalu klik Finish:
5. Pada langkah terakhir ini merupakan
simulasi rangkaian dengan
memasukan nilai inputan dan nilai
Load, lalu Save :
6. Setelah memasukan nilai inputan,
maka source yang kita bikin akan
muncul, lalu klik kanan pada
Simulate Behavioral Model pilih
Run, setelah itu akan tampil hasil
simulasi.
Modul perancangan Pembagian data 8 Blok
Pixel
Gambar 7 Struktur Rangkaian Pembagian Data
8 bit
Skematik rangkaian pembagian data 8 bit
Gambar 8 Skematik rangkaian pembagian data
8 bit
Tabel 3 Jenis dan Fungsi port Diagram blok
pembagian data 8 bit
Dalam masing-masing perancangan pembagian data ini terdiri dari beberapa unit
yaitu Shift Register 8 bit, Counter, D Filp-Flop 8 bit, tiap-tiap blok rangkaian mempuyai fungsi
masing-masing.
Unit Register Geser berfungsi untuk menggeser data partial produk dan menyimpannya, data
yang digeser lebih banyak dari 1 bit berupa data
0 atau 1. Unit shift register berfungsi sebagai
memvalidasi (dengan bantuan clock) dan
menyimpan setiap pixel yang masuk. Unit Shift Register merupakan terdiri dari beberapa flip-
flop. Register geser dapat digunakan sebagai memori sementara, dan data yang tersimpan
didalamnya dapat digeser ke kiri atau ke kanan
Gambar 9 Skematik rangkaian Shift Register 8
bit
Tabel 4 Jenis dan Fungsi port dari rangkaian
Shift register 8 Bit
Unit Counter berfungsi untuk menghitung
hingga pixel ke-8 dan menginformasikan 8 D flip-flop untuk mengambil data 8 pixel. Gambar
unit rangkaian Counter diperlihatkan Gambar
3.6.
Gambar 10 Unit Counter
Gambar 11 Rangkaian skematik counter
Table 5 Jenis dan Fungsi port dari rangkaian
Counter
Unit D flip flop 8 bit berfungsi sebagai
penerima data 8 pixel yang sebelumnya diproses pada bagian shift register, unit D flip flop
diperlihatkan pada Gambar 3.8, Gambar 3.9.
Gambar 12 Unit D flip flop
Gambar 13 Skematik rangkaian D fli flop
Table 6 Jenis dan Fungsi port dari rangkaian D
flip flop
Dalam masing-masing perancangan pembagian data ini terdiri dari beberapa unit
yaitu rangkaian Counter, rangkaian D flip-flop, Register Geser yang masing-masing rangkaian
mempunyai fungsi masing-masing.
Hasil Penelitian dan Pembahasan
Simulasi Rancangan Pengujian hasil dari perancangan desain
pengaturan data input 8 pixel 8 bit salah
satunya dilakukan dengan simulasi menggunakan perangkat lunak Xilinx ISE
simulator. Simulasi secara perangkat lunak
dilakukan pada satu rangkaian pengaturan data input 8 pixel secara utuh dan pada tiap-tiap unit
pada rangkaian pengaturan data input 8 pixel.
Pengaturan clock untuk simulasi Untuk melakukan simulasi tentunya
akan dibutuhkan suatu sinyal clock, besarnya
sinyal clock yang digunakan akan
mempengaruhi waktu kecepatan suatu proses dalam melakukan eksekusi. Berikut merupakan
perhitungan clock yang digunakan pada simulasi
rancangan pembagian baris citra ini:
Keterangan:
25 = Kecepatan 25 gambar dalam sekali eksekusi
106
= 10 Megapixel / citra
Simulasi Rancangan Pengaturan Data Input 8 Blok data pixel
Perancangan pengaturan data input baris
citra ini terdiri dari beberapa unit yaitu Shift register 8 bit, Counter, dan D flip-flop 8 bit.
1/25 : 106 = 4 x 10-9 s = 4 ns
Unit Shift register Unit Shift register berfungsi untuk
menggeser data yang telah disimpannya, dimana
pada keluaran flip-flop yang pertama keluaran Q-nya memberikan umpan kepada setiap
masukan dari flip-flop yang kedua. Kemudian
keluaran Q dari flip-flop yang kedua memberi umpan kepada masukan flip-flop ketiga, dan
seterusnya. Dalam register ini clock akan
diumpankan dan data masuk secara paralel dengan serentak dan keluar secara serentak pula.
Karena menggunakan Data flip-flop (FD) pemicuan tepi data yang keluar secara serentak
dengan harus mengacu pada tepi naik sinyal
clock positif (rising edge) dikuti pergeseran data keluaran pada setiap clock positif (rising edge)
berdetak. Hasil simulasi unit ini sebagai berikut:
Gambar 14 Simulasi Shift register 8 bit p7_0
s/d p4_1
Gambar 15 Simulasi Shift register 8 bit p4_2
s/d p0_7 Dari hasil simulasi tersebut terlihat
bahwa proses pergeseran data pada rangkaian shift register telah berfungsi dengan benar sesuai
dengan tabel kebenaran shift register. Berikut
tabel tahapan proses simulasi: Tabel 7 Tahapan proses simulasi Shift register 8
bit p7_0 s/d p5_7
Tabel 8 Tahapan proses simulasi Shift register 8
bit p4_0 s/d p3_7
Tabel 9 Tahapan proses simulasi Shift register 8
bit p2_0 s/d p0_7
Unit Counter
Unit counter berfungsi sebagai rangkaian untuk mencacah bilangan biner atau
menghitung hingga pixel ke-8 dan
menginformasikan 8 D flip-flop untuk mengambil data 8 pixel. Hasil simulasi unit ini
sebagai berikut:
Gambar 16 Simulasi rangkaian counter
Tabel 10 Tahapan proses simulasi counter
Unit D flip flop 8 bit Unit D flip-flop 8 bit berfungsi sebagai
penerima data 8 pixel yang sebelumnya diproses
pada bagian shift register dan untuk menampilkan hasil dari pembagian data baris
citra secara serentak. Hasil simulasi unit ini
sebagai berikut:
Gambar 17 Simulasi rangkaian D flip-flop 8 bit
Tabel 11 Tahapan proses simulasi rangkaian D
flip-flop 8 bit
Unit rangkaian Pengaturan data input 8
Blok pixel keseluruhan 8 bit Rangkaian pengaturan data input 8 blok pixel 8
bit ini merupakan rangkaian keseluruhan dari
proses pembagian data pixel, gambar di bawah ini merupakan hasil dari simulasi rangkaian
keseluruhan pengaturan data input 8 blok pixel 8 bit.
Gambar 18 Hasil simulasi rangkaian
keseluruhan pengaturan data input 8 blok pixel 8 bit dari x7_0 s/d x5_5
Gambar 19 Hasil simulasi rangkaian
keseluruhan pengaturan data input 8 blok pixel 8 bit dari x5_2 s/d x2_4
Gambar 20 Hasil simulasi rangkaian
keseluruhan pengaturan data input 8 blok pixel 8
bit dari x2_3 s/d x0_0
Gambar 21 Hasil simulasi rangkaian
keseluruhan pengaturan data input 8 blok pixel 8
bit pada q0_0 s/d q2 _6
Gambar 22 Hasil simulasi rangkaian
keseluruhan pengaturan data input 8 blok pixel 8
bit dari q2_7 s/d q5_5
Gambar 23 Hasil simulasi rangkaian
keseluruhan pengaturan data input 8 blok pixel 8 bit dari q5_6 s/d q7_7
Disain Placed and Route Disain placed and route ini digunakan
untuk mengetahui letak – letak CLB ( Configure
Logic Blocks ) dan untuk mengetahui apakah CLB-CLB tersebut saling terhubung atau tidak,
bisa dikatakan bagian inilah yang akan memproses rangkaian – rangkaian yang telah
dibentuk.
Pada bagian placed, bagian ini menampilkan bagaimana rangkaian – rangkaian
ini terbentuk di dalam IC FPGA, kemudian pada
bagian route bagian ini menampilkan CLB – CLB yang digunakan oleh rangkaian –
rangkaian tersebut, namun pada bagian ini penulis hanya memberikan gambaran kecil pada
CLB yang digunakan, untuk lebih jelas berikut
adalah gambar dari disain placed and route setiap rangkaian.
Gambar 24 Disain Placed pengaturan data input
8 blok pixel 4 Bit
Gambar 25 Disain Placed pengaturan data input
8 blok pixel 4 Bit
Gambar 26 Disain Route pengaturan data input
8 blok pixel 4 Bit
Gambar 27 Disain Placed pengaturan data input
8 blok pixel 8 bit
Gambar 28 Disain Placed pengaturan data input
8 blok pixel 8 bit
Gambar 29 Disain Route pengaturan data input
8 blok pixel 8 bit
Desain dan Implementasi pada FPGA
Desain dari rangkaian Shift register,
Counter, dan D flip-flop 4x4 dan 8x8 telah diselesaikan dengan menggunakan VHDL dan
implementasi dalam Xilinx Spartan-3E
(package :FG320, speed :-4), dalam proses pembuatan desain ini menggunakan Design
tool Xilinx ISE 9.2i . Berikut Tabel
Pemanfaatan sumber daya untuk Spartan-3E pada desain dan implementasi pengaturan data
input 8 blok pixel ini:
PENUTUP
Kesimpulan
Dalam mendesain rangkaian pengaturan
data input 8 blok pixel 8 bit ini yang nantinya akan diproses dalam suatu kompresi citra lalu di
implementasikan ke dalam ic FPGA merupakan salah satu bagian dari rangkaian keseluruhan
kompresi citra dimana bagian ini merupakan
proses input atau proses pembagian data 8 blok pixel. Rangkaian ini telah di desain sesuai
dengan fungsi dan tujuannya dengan baik untuk
melakukan proses input dan pembagian data 8 blok pixel.
Rangkaian desain ini dibagi menjadi tiga unit yaitu unit shift register yang memiliki
fungsi sebagai input data dan untuk memvalidasi
(dengan bantuan clock) dan menyimpan setiap pixel yang masuk. Lalu ada rangkaian unit
counter yang berfungsi sebagai penghitung
hingga pixel ke-8 dan menginformasikan 8 D flip-flop untuk mengambil data 8 pixel.
Sedangkan rangkaian unit D flip flop melakukan pengambilan data yang telah dip roses oleh shift
register dengan bantuan counter dan
menampilkan hasil proses tersebut secara serentak.
Desain dan perancangan proses
pengaturan data input 8 pixel 8 bit lebih efektif dibandingkan proses pengaturan data input 8
pixel baik untuk 4 bit dan 6 bit dilihat dari sumber daya yang digunakan dengan parameter
Four Input LUTs, Occupied Slices, CLB,
Bonded IOBs, Total Equivalent Gate Count, Average Connenction delay(ns) dan Maximum
Pin delay(ns).
Tujuan dari keseluruhan desain
rangkaian ini adalah membagi 8 blok data secara bertahap pada rangkaian yang telah di desain
dan menghasilkan data yang diinginkan user untuk nantinya akan di masukkan ke dalam
proses kompresi citra.
Saran Dari hasil perancangan dan desain
rangkaian pengaturan data input 8 blok pixel 8 bit ini, diberikan beberapa saran kepada
pembaca yaitu: 1. Desain rangkaian ini nantinya akan
digabungkan dengan blok-blok desain
selanjutnya yang akan secara utuh melakukan suatu proses kompresi citra.
2. Desain rangkaian ini bisa di
implementasikan ke dalam ic FPGA yang sesuai dengan tipenya seperti video
dan gambar. 3. Desain rangkaian ini bisa di
kembangkan lagi dengan rangkaian-
rangkaian yang lebih spesifik jika inginmenambahkan suatu kondisi lagi.
Tabel 17 Pemanfaatan sumber daya untuk pengaturan data input 8 blok pixel untuk Spartan-3E
Lebar Bit Rangkaian Four Input
LUTs
{9312}
Occupied
Slices
{4656}
Bonded
IOBs {232}
Total
Equivalent
Gate Count
Average
Connection
delay (ns)
Maximum Pin delay
(ns)
D flip flop 0 0 17 67 0.161 816
Counter 4 3 4 51 1.122 192
Rangkaian 4 bit 4 27 75 5.66 1.176 4.656
Rangkaian 8 bit 4 59 139 1.078 1.095 6.672
DAFTAR PUSTAKA
[1] http://www.springer.com/computer/image+processing/journal/11554 Journal of Real-
Time Image Processing.
[2] http://te.ugm.ac.id/~enas/tesis260199.pdf
[3] http://repository.usu.ac.id/bitstream/123456789/16876/.../Chapter%20II.pdf [4] Asisten FPGA, “Modul Panduan FPGA”, Laboratorium Lanjut Universitas Gunadarma, Depok,
2010 [5] http://www.scribd.com/doc/38151138/Field-Programmable-Gate-Array
[6] http://materikuliah.info/artikel/mipa/teori-dasar-rangkaian-flip-flop-ff.aspx / 15 April 2010
[7] Widjanarka N,IR.Wijaya.2006.Teknik Digital.Jakarta,Erlangga. [8] Eko Budi Purwanto,2011. Teori dan Aplikasi Sistem Digital, Graha Ilmu.