A.
Pengertian
FPGA merupakan
kepanjangan dari Field Programmable Gate Array yaitu programmable device
besar yang tersusun atas modul-modul logika independen yang. dapat di
konfigurasi oleh pemakai yang di hubungkan melalui kanal-kanal routing yang
dapat di program. Field Programmable Gate Array (FPGA) mempunyai kelebihan
sebagai berikut :
– Dikonfigurasi
oleh End User
– Tidak
memerlukan proses Fabrikasi
– Tersedia
solusi yang mendukung chip customized VLSI
• Mampu
menimplementasikan logic circuit, instant manufacturring,
very-low cost
prototype
• Pemrograman
yang singkat untuk fungsi dan kemampuan yang setara dengan ASIC FPGA ini sendiri
juga merupakan IC tipe HDL yang mana pemakai dapat mendesain hardware sesuai
yang diinginkan di dalam IC FPGA. Sedangkan perkembangan FPGA pada saat ini
berlangsung dengan cepat dan dewasa ini terdapat bermacam-macam keluarga FPGA
dengan kebutuhan perancangan dan perangkat perancangan ( design tools )
yang berbeda. Xilinx merupakan salah satu perusahaan yang memproduksi FPGA disamping
perusahaan lain yang juga memproduksi FPGA seperti ACTEL dan
PLESSEY
Semiconductor. Xilinx sendiri memproduksi beberapa jenis FPGA yaitu VIRTEX,
SPARTAN, XC3000, XC4000 dan XC5000.
B.
Arsitektur
FPGA
Secara umum
arsitektur bagian dalam dari IC FPGA terdiri atas tiga elemen utama yaitu Input/Output
Blok ( IOB ), Configurable Logic Block (CLB) dan Interkoneksi.
Configurable Logic Blocks :
– Look up table
based complex structure
– Implement the
sequential circuit
Programmable Interconnect :
– Berisi wire
segments dan programmable switches
– Menghubungkan
anata Configurable Logic Blocks yang berbeda
Input/output
block :
– Sebagai
interface antara external package pin dari device dan internal user logic
Fungsi logika
dan interkoneksi FPGA ditentukan oleh data yang tersimpan pada sel memori
statik internal. Ada beberapa cara untuk membuat data konfigurasi ke dalam sel memori
ini, baik yang dilakukan secara otomatis pada waktu catu daya diberikan maupun
dengan membaca konfigurasi data dari eksternal Serial atau byte
Paralel PROM (mode master) atau Data dapat dituliskan pada FPGA dari
eksternal device ( mode slave dan peripheral).
C.
Proses
Implementasi FPGA
FPGAs
diimplementasikan dengan efficient CAD systems Design Entry dapat
dilakukan dengan cara
Schematic
capture program, VHDL / Verilog
Logic
Optimization
-
Memodifikasi
Boolean Expression untuk mengooptimalkan penggunaan
-
Logic
berbasis area dan kecepatan atau kombinasi keduanya
Technology
Mapping
-
Transformasi
dari Boolean Expression atau VHDL kedalam bentuk circuit pada
FPGA
logic blocks
-
Area
optimization – meminimalkan penggunaan block
-
Delay
optimization – meminimalkan jumlag stage pada critical path
Placement
-
After
mapping the circuit into logic blocks placement algorithms are used to place
-
each
block in the FPGA’s array
-
Typically
these minimize the total length of interconnect required for placement
Routing
software
-
Mengatur
FPGA’s wire segments dan menentukan programmable switches untuk menghubungkan antar FPGA blocks
-
Memastikan
100% connections telah terbentuk
-
Meminimalkan
propagation delay pada time-critical connections
Programming
unit
-
Mengkonfigurasi
chip setelah placement & routing step tuntas
-
Keseluruhan
proses memakan waktu antara beberapa menit sampai beberapa jam
Programmable
Logic - Design Flow
Design Entry dengan cara
schematic, ABEL, VHDL, dan/atau Verilog.
Implementation yaitu Placement
& Routing dan bitstream generation. Juga, analyze
timing, view layout,
Download meng-upload
bitstream ke Hardware (FPGA chip)
Aplikasi FPGA
Prototyping
– Ideal untuk aplikasi pembuatan
prototype
On-site re-configuration of
hardware
– Untuk aplikasi hardware yang
bisa dikonfigurasi ulang secara cepat
FPGA-based computation engines
FPGA sebagai processor aplikasi
computasi
D.
Pemrograman
IC FPGA
DAFTAR PUSTAKA
1. Kevin Skahill, “VHDL for Programmable Logic”, Addison Wesley
2. M. Morris Mano & C. Kime, “Logic and Computer Design Fundamentals” Prentice Hall
3. Stefan Sjoholm & L. Lindh, “VHDL for Designers” Prentice Hall
Komentar
Posting Komentar