Sejarah FPGA
FPGA ini dikembangkan sejak tahun
1984 oleh perusahaan Xilinx yang berbasis di San Jose, CA. Perkembangan
selanjutnya, FPGA ini mulai diproduksi oleh beberapa perusahaan misalnya,
Altera, Lattice, dan Quicklogic. Diantara perusahaan-perusahaan tersebut, terdapat
2 perusahaan yang mendominasi produksi FPGA di seluruh dunia yaitu Xilinx dan
Altera.
Ada 5 perusahaan besar yang
memproduksi FPGA. Dua yang pertama merupakan pemain utama di pasar FPGA:
·
Xilinx yang punya nama besar dalam dunia FPGA,
masih memimpin dalam densitas dan teknologi.
·
Altera merupakan pemain kedua terkenal di dunia
FPGA, terkenal dengan namanya.
·
Lattice, Actel, Quicklogic adalah
perusahaan-perusahaan yang lebih kecil dan punya “pasar khusus”.
Pengertian
FPGA
Rangkaian digital (terdiri dari gerbang-gerbang logika) yang terinterkoneksi
sehingga dapat terhubung satu dengan lainnya. FPGA sejenis dengan prototype,
yaitu untuk membuat sebuah design permodelan. Intinya, PFGA ini merupakaan
sebuah chip yang bisa diisi program dan bisa dijalankan dengan software khusus.
Dilab kampus saya menggunakan FPGA merk Xilinx. Awal mula melihat bentuknya,
saya agam bingung. Semacem rangkaian dengan banyak komponen diatas papan PCB.
Berikut penampakan wujud PFGA Xilinx jenis Spartan 3E.
Xilinx Spartan 3E
Biasanya aplikasi PFGA dapat dikategorikan dalam 5
bagian, yaitu :
- ASIC (Application Specific Integrated Circuit) dan custom silicon, biasa digunakan di trafo.
- DSP (Digital Signal Processing), atau biasa disebut mikroprosessor.Embedded Microcontroller, untuk melakukan tugas khusus. Contohnya : sebagai saklar atau sebagai penghitung daya pada trafo.
- Physical Layer Communication, untuk interkoneksi layer fisik denga layer protokol.
- Reconfigurable Computing, terdiri atas 2 yaitu : akselerasi hardware dan hardware simulation.
Sifat
– Sifat FPGA
FPGA mempunyai beberapa sifat, yaitu antara lain :
- Program dapat disusun kembali berulang ulang. Jadi intinya, program yang telah kita buat dalam FPGA bisa kita ubah atau kita edit.
- FPGA bersifat dapat didownload berulang-ulang tanpa batas. Inilah kelebihan FPGA yang paling dikenal. Jadi kita bisa menimpa program lama dengan program baru yang sudah diedit.
- Bersifat volatile. FPGA ini bersifat volatile, maka dari itu untuk menyimpan datanya, FPGA harus terus diberi daya. Bila kehilangan daya pada saat ingin mendownload, maka datanya pun bisa hilang.
- Hampir semua rangkaian terimplementasi didalam chip. PFGA terdiri dari banyak CLB (Configuable Logic Block) yang bisa menyimpan rangkaian-rangkaian logika dalam setiap blocknya. Jadi dalam satu chip bisa tertanam banyak rangkaian digital.
- Lebih murah walaupun dalam produksi kecil dan lebih cepat dalam hal design rangkaian.
Isi
Dari FPGA
Dalam satu chip FPGA terdapat :
Isi dari FPGA:
a) CLB (Configurable Logic Blocks)
CLB
merupakan bagian dari FPGA yang akan memproses segala bentuk rangkaian logika yang
dibuat oleh user.
b) I/O Blocks
Sebagai interface antara external pin dari device dengan internal user logic.
c) Programmable Interconnect
Merupakan wire-wire yang menghubungkan antara satu CLB dengan CLB lain.
d) RAM (Random Access Memory)
Merupakan tempat penyimpanan pada FPGA.
Isi
CLB (Configurable Logic Block)
Diatas sudah dijelaskan tentang FPGA yang berisi banyak CLB. Selanjutnya saya
akan menjelaskan apa isi dari CLB tersebut.
Isi dari CLB
a) LUT
(Look Up Table)
Sejenis
RAM yang berkapasitas kecil. Dalam FPGA, LUT berperan penting dalam proses
implementasi fungsi-fungsi logika. LUT berciri khas mempunyai 4 buah inputan.
b) D-Flip
Flop
Merupakan jenis 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.
c) 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.
Isi
Dari LUT (Look Up Table)
LUT yang terdapat pada setiap CLB, terbagi lagi misinya menjadi 4 slices.
Masing-masing slice berisi Shift Register, RAM, dan informasi input.
LUT berisi 4 slices
Misalnya 16×8 bit. Angka 16 menjelaskan tentang
beasr RAMnya, dan 8 bit menjelaskan tentang shift registernya (banyaknya
pencacahan).
Alur
Perancangan FPGA
FPGA diimplementasikan dengan sistem CAD (Computer Added Design). Berikut
adalah jalur perancangan FPGA.
Jalur Perancangan FPGA
·
Design Entry
Bisa dalam bentuk text yaitu bahasa pemrograman VHDL (Very High Speed
Integrated Hardware Description Language), maupun dalam bentuk shematic capture
berupa gambar-gambar simbol gerbang logika yang disatukan sehingga menjadi
rangkaian yang utuh.
·
Logic Implementation (Gabungan dari
Merge & Transalate dan Optimize Equation)
untuk mengoperasikan bilangan boolean untuk mengoptimalkan penggunaan logic.
·
Mapping
Transformasi ekspresi boolean ke dalam bentuk circuit pada FPGA logic block.
·
Placement
Setelah mapping, dilakukan penempatan algoritma yang digunakan ke masing-masing
block.
·
Routing Software
Mengatur programmable interconnect / wire segment dan menentukan programmable
switch untuk menghubungkan antar block.
·
Programming Unit
Mengkonfigurasi setelah placement dan routing tuntas.
Kesimpulan:
Xilinx ISE sebagai perangkat
lunak pengembangan FPGA mempunyai kemampuan untuk melakukan
optimalisasi penggunaan kapasitas pada desain. Simulasi atas perancangan
dan implementasi sistem memberikan hasil yang mendekati perhitungan. Perbedaan
hasil perhitungan dan hasil perancangan disebabkan karena sistem yang
dirancang hanya menggunakan format bilangan bulat, sementara hasil
perhitungan menggunakan format bilangan real.
Sumber:
http://agfi.staff.ugm.ac.id/blog/index.php/2008/11/pengenalan-fpga/WIKIPEDIA
Tidak ada komentar:
Posting Komentar