Field Programmable Gate Array (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 laboratorium atau di “hardwire” oleh pabrik piranti. Sedangkan Gate Array artinya bahwa FPGA ini terdiri atas gerbang-gerbang digital dimana interkoneksi masing-masing gerbang tersebut dapat dikonfigurasikan antara satu sama lainnya.

Berikut adalah teknologi-teknologi yang mendukung terbentuknya FPGA:

  • PROM (Programmable Read Only Memory). PROM adalah salah satu jenis ROM, merupakan alat penyimpan berupa memori (memory device) yang hanya bisa dibaca isinya. PROM memang tergolong memori non-volatile, artinya program yang tersimpan di dalamnya tidak akan hilang walaupun komputer dimatikan (tidak mendapatkan daya listrik). Program yang tersimpan di dalamnya bersifat permanen.
  • EPROM (Erasable Programmable Read Only Memory). EPROM berbeda dengan PROM. EPROM adalah jenis chip memori yang dapat ditulisi program secara elektris. Program atau informasi yang tersimpan di dalam EPROM dapat dihapus bila terkena sinar ultraviolet dan dapat ditulisi kembali.
  • EEPROM (Electrically Erasable Programmable Read Only Memory). Seperti halnya PROM dan EPROM, EEPROM merupakan memori non-volatile. Informasi, data atau program yang tersimpan di dalamnya tidak akan hilang walaupun komputer dimatikan, dan tidak membutuhkan daya listrik untuk mempertahankan atau menjaga informasi atau program yang tersimpan di dalamnya. EEPROM adalah komponen yang banyak digunakan dalam komputer dan peralatan elektronik lain untuk menyimpan konfigurasi data pada peralatan elektronik tersebut. Kapasitas atau daya tampung simpan datanya sangat terbatas.
  • FLASH Flash memory yang dikenal pula dengan sebutan memori flash, adalah memori sejenis EEPROM yang memberikan banyak lokasi memori untuk dihapus atau ditulisi dalam suatu operasi pemrograman. Flash memory tetap dapat menyimpan data tanpa memerlukan penyediaan listrik. Penulisan ke dalam flash memori dapat dilakukan dengan menggunakan alat yang disebut EEPROM Writer atau software yang dapat menulisi Flash ROM. Sedangkan penghapusan datanya dapat dilakukan dengan menggunakan alat yang disebut EEPROM Writer, atau langsung secara elektrik dari papan sirkuit dengan menggunakan software Flash BIOS Programmer.
  • SRAM Memori statis acak-akses. (SRAM) adalah jenis memori semikonduktor di mana kata statis menunjukkan bahwa, tidak seperti RAM dinamis (DRAM), tidak perlu refresh secara periodik, seperti SRAM menggunakan sirkuit bistable menempel untuk menyimpan setiap bit.

 

Komponen FPGA:

  • IC (integrated cirkuit) adalah komponen dasar yang terdiri dari transistor, kapasitor, dioda dll,merupakan otak dalam peralatan elektronik.
  • Transistor adalah alat semikonduktor yang dipakai sebagai penguat, sebagai sirkuit pemutus dan penyambung (switching), stabilisasi tegangan, modulasi sinyal atau sebagai fungsi lainnya. Transistor dapat berfungsi semacam kran listrik, dimana berdasarkan arus inputnya (BJT) atau tegangan inputnya (FET), memungkinkan pengaliran listrik yang sangat akurat dari sirkuit sumber listriknya.
  • Random Akses Memori Dinamis (DRAM) merupakan jenis random akses memori yang menyimpan setiap bit data yang terpisah dalam kapasitor dalam satu sirkuit terpadu. Karena kapasitornya selalu bocor, informasi yang tersimpan akhirnya hilang kecuali kapasitor itu disegarkan secara berkala. Karena kebutuhan dalam penyegaran, hal ini yang membuatnya sangat dinamis dibandingkan dengan memori (SRAM) statik memori dan lain-lain.
  • SPLD adalah sebuah device yang dapat diprogram secara logika yang mempunyai komplekstivitas dibawah CPLD. SPLD dapat digunakan dalam papan untuk menggantikan seri 7400 komponen TTL (AND, OR, and NOT gerbang).
  • CPLD Sebuah CPLD terdiri dari sekelompok blok PLD dimana input dan outputnya dihubungkan oleh sebuah matriks interkoneksi global. Sehingga sebuah CPLD mempunyai dua level kemampuan diprogram: tiap blok PLD dapat diprogram, dan kemudian interkoneksi antar PLD dapat diprogram. CPLD adalah sebuah device yang dapat diprogram secara logika yang mempunyai komplekstivitas diantara PAL dan FPGA.
  • ASIC merupakan singkatan dari Application-Specific Integrated Circuit.ASIC merupakan IC yang hanya digunakan untuk keperluan tertentu. komplektivitas rangkaian dalam IC ini cukup tinggi, jadi tidak muat pada CPLD. ASIC dibagi mejadi 3 tipe : Full Costum IC, Semi Costum IC, Programmable IC.
  • Field-Programmable Gate Array (FPGA) adalah komponen  elektronika dan semikonduktor yang mempunyai komponen gerbang terprogram (programmable logic) dan sambungan terprogram. Komponen gerbang terprogram yang dimiliki meliputi jenis gerbang logika biasa (AND, OR, XOR, NOT) maupun jenis fungsi matematis dan kombinatorik yang lebih kompleks (decoder, adder, subtractor, multiplier, dll). Blok-blok komponen di dalam FPGA bisa juga mengandung elemen memori (register) mulai dari flip-flop sampai pada RAM (Random Access Memory).

Berikut adalah perusahaan yang memproduksi FPGA:

  •   Xilinx
  •   Altera
  •   Lattice
  •   Actel
  •   Quicklogic
  •   Plessy
  •   Cypress

Sifat (Kelebihan) dari FPGA :

  1. Program dapat disusun ulang berkali-kali
  2. Dapat di download ulang oleh program secara berkali-kali
  3. Bersifat Volatile
  4. Hampir semua rangkaian terimplementasi didalam Chip
  5. Harga lebih murah

FPGA sering dipakai dalam berbagai bidang yaitu:

  •   ASIC dan Custom Silikon
  •  DSP /Mikroprosesor.
  •   Embedid Mikrokontroller.
  •   Phisical Layer
  •   Recomfigurable Computing : Akselerasi Hardware, Simulasi Hardware

Berikut isi dari FPGA pada umumnya:

  1. CLB (Configuration Logic Block) : Untuk memproses segala bentuk rangkaian logika yang dibuat oleh user
  2. I/O Block : Interface antara Ekternal Pingdevice dan Internal User Logic
  3. Programmable Interconnect : Menghubungkan CLB satu antara CLB lainnya, fungsinya sebagai saklar

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.

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.

– 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.

 

 

 

Tentang dunungresmintoko

yang jelas gue orangnya baik hati,,
Pos ini dipublikasikan di Uncategorized. Tandai permalink.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s