Selasa, 11 Oktober 2011

FPGA (Field Programmable Gate Array)

FPGA adalah rangkaian yang memiliki gerbang-gerbang logika yang terkoneksi dengan satu dan yang lainnya.
• ASIC, custom silicon, contoh: trafo
• DSP (Digital Signal Processing), contoh: mikroprosesor
• Embeded micro controler, untuk special job
• Physical layer communication, membatasi antara layer fisikal dengan protokol
• Reconfigurable computing, untuk akselerasi hardware, hardware simulation

Sifat – sifat FPGA
• Program dapat disusun ulang berkali - kali
• FPGA dapat di download ulang tanpa batas
• Bersifat volatile atau menggunakan listrik
• Hampir semua rangkaian terimplementasi kedalam chip
• Murah dan lebih cepat dalam berdesain

Komponen FPGA



• CLB (Reconfigurable Logic Block), untuk memproses segala bentuk logika oleh user
• I/0 Block, interface antara external pin devais dan internal user logic
• Programmable Interconnect, untuk menghubungkan CLB 1 dengan yang lainnya, fungsi: sebagai saklar


Komponen di dalam FPGA (1 sel CLB) terdiri dari:


• LUT (Look Up Table), sejenis RAM berkapasitas kecil, yang berperan sebagai fungsi – fungsi logika. Ciri – cirinya mempunyai 4input dan 1 output.
• 1 buah D flip – flop, bistable multivibrator adalah suatu rangkaian sel biner yang mempunyai 2 buah ouotput saling berkebalikan keadaannya. Fungsinya sebagai rangkaian logika sekuensial yang terdapat peralatan memory dan clocking.
• Multiplexer 2 to 1, piranti digital yang bekerja sebagai saklar yang menghubungkan data dari n masukkan ke saluran.


Perusahaan yang memproduksi FPGA :
• Cypress
• Latice
• Actel
• Plessey
• Xilinx
• Altera
• Quicklogic

Produk perkembangan xilinx :
• Virtex
• Spartan
• XC 3000
• XC 4000
• XC 5000
• XC 7000

FPGA itu untuk Prototyping (permodelan), processor (Embeded Controler), mesin komputasi (bisa melakukan fungsi tertentu saja). Contohnya Trafo (sebagai silicon). Kekurangan FPGA yaitu belum bisa menggantikan processor saat ini, tetapi suatu saat akan ada. Ukuran FPGA akan besar apabila CLB bertambah, tetapi LUT tidak berpengaruh.

Teknologi FPGA dan membandingkan teknologinya,

1. PROM (Programmable Read Only Memory)
Merupakan salah satu jenis ROM. PROM merupakan memory yang hanya bisa dibaca isinya, tergolong non volatile. Program yang tersimpan didalamnya bersifat ditulis kembali.

2. EPROM (Erassable Programmable Read Only Memory)
Merupakan jenis chipset memory yang dapat ditulis secara elektris. Program yang ada didalamnya dapat dihapus dengan menggunakan sinar ultraviolet dan dapat ditulis kembali.

3. EEPROM (Electrically Erassable Programmable Read Only Memory)
Merupakan memory sama seperti PROM dan EPROM tapi penghapusan program yang ada di dalamnya dilakukan secara elektris dari papan circuit dengan menggunakan perangkat lunak EEPROM programmer.

4. Flash
Adalah sejenis memory EEPROM yang memberikan banyak memory untuk dihapus atau ditulis suatu operasi pemrograman.

5. SRAM (Static Random Access Memory)
Merupakan memory yang bersifat volatile dan dapat melakukan penyegaran otomatis. Memory ini hanya berlaku apabila satu arahan bertulis saja.

Perkembangan FPGA,

1. IC (Integrated Circuit)
Merupakan komponen dasar yang terdiri dari resistor, transistor, dll. IC merupakan komponen yang dipakai sebagai otak peralatan elektronika.

2. DRAM (Dynamic Random Access Memory)
,erupakan memory, sama seperti SRAM tetapi DRAM memerlukan referesh untuk mengekalkan nilainya.

3. SPLD (Simple Programmable Logic Device)
Merupakan bentuk dari PLD yang paling simple. Kebanyakan SPLD digunakan untuk mereconfigurable circuit dari keduanya.

4. CPLD (Complex Programmable Logic Device)
Merupakan bentuk PLD dengan kompleksitas antara PAL dan FPGA dan arsitektur fitur dari keduanya.

5. FPGA (Field Programmable Gate Array)
adalah chip logic digital yang dapat diprogram berulang – ulang. Block – block komponen didalam FPGA mengandung register mulai flipflop sampai RAM.

6. ASIC (Application Spesific Integrated Circuit)
Adalah IC yang dimodifikasi untuk tujuan tertentu. Contohnya Chip yang di desain untuk RAM PC.

7. Transistor merupakan alat semikonduktor yang dipakai sebagai penguat, swutching, dll.

Istilah – istilah pada FPGA:

• Clocking
adalah sebuah clock pada FPGA, biasanya dibuat serempak bahwa setiap detak yang dihasilkan pada sebuah FPGA terjadi serentak akan mempengaruhi kondisi yang ada.

• System Gates
adalah sebuah masukan yang digunakan untuk mepresentasikan antara satu dan lebih 20 gerbang logika sederhana, yang mempunyai 2 masukan.

• Prosesor Corses
adalah inti dari sebuah prosesor yang melakukan tugas.

• Fast Carry Chains
adalah tipe jalur interkoneksi yang berfungsi dalam pembuatan fungsi-fungsi logika agar dapat berjalan dengan efisien.

• General Purpose I/O
adalah pin generik yang dapat dikontrol melalui software.

• Fine Grained
adalah arsitektur FPGA pada suatu sistem yang memiliki komponen yang kecil.

• Medium Grained
adalah arsitektur FPGA pada suatu sistem yang memiliki komponen yang sedang.

• Coarse Grained
adalah arsitektur FPGA pada suatu sistem yang memiliki komponen yang besar.

• Prosesor Corses
adalah inti dari sebuah prosesor yang melakukan tugas.

• Antifuse
Merupakan lawan dari fase regular. Antifuse normalnya merupakan sebuah rangkaian terbuka sampai kita memaksakan suatu programing current melaluinya. Antifuse merupakan kebalikan dari sekring yaitu akan open circuit bila dilewati arus (saklar 5 mA).

• Fine Grained
adalah arsitektur FPGA pada suatu sistem yang memiliki komponen yang kecil.

• Medium Grained
adalah arsitektur FPGA pada suatu sistem yang memiliki komponen yang sedang.

• Coarse Grained
adalah arsitektur FPGA pada suatu sistem yang memiliki komponen yang besar.

• Prosesor Corses a
dalah inti dari sebuah prosesor yang melakukan tugas.

• MUX (Multiplexer)
Suatu komponen yang fungsinya sebagai penyeleksi data berdasarkan perintah untuk menampilkan data yang diinginkan. MUX memiliki benyak input data tetapi hanya memiliki sebuah output karena memiliki selector yang mengatur outputnya.

Alur Perancangan FPGA

FPGA diimplementasikan dengan sistem CAD (Computer Added Design). Berikut adalah 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.

Tidak ada komentar:

Posting Komentar