Singkatan dari "Field-Programmable Gate Array." FPGA adalah integrated circuit yang dapat disesuaikan untuk aplikasi tertentu. Tidak seperti CPU tradisional, FGPA adalah "field-programmable", yang berarti mereka dapat dikonfigurasi oleh pengguna setelah manufaktur.
FPGA berisi blok logika yang dapat diprogram yang dapat ditransfer dalam konfigurasi yang berbeda. Blok-blok ini membuat array fisik logic gate yang dapat digunakan untuk melakukan operasi yang berbeda. Karena gate (gerbang) dapat disesuaikan, FPGA dapat dioptimalkan untuk tugas komputasi apa pun. Ini memberi FPGA potensi untuk melakukan operasi beberapa kali lebih cepat daripada prosesor terprogram.
FPGA biasanya disesuaikan menggunakan hardware description language, atau HDL. Seorang programmer dapat menggunakan perintah HDL untuk mengkonfigurasi interkoneksi gerbang (bagaimana gerbang terhubung satu sama lain) serta gerbang itu sendiri. Misalnya, sebuah gerbang dapat diberi operator boolean, seperti AND, OR, atau XOR. Dengan menghubungkan beberapa gerbang bersama-sama, dimungkinkan untuk melakukan operasi logika tingkat lanjut.
Karena FPGA dirancang untuk diprogram untuk aplikasi tertentu, FPGA tidak cocok untuk komputer pribadi. Namun, mereka memiliki berbagai aplikasi lapangan. Contohnya termasuk telekomunikasi, data center, komputasi ilmiah, dan pemrosesan audio/video. Selain digunakan di server dan komputer kelas atas, juga dapat diimplementasikan di perangkat elektronik, seperti TV, radio, dan peralatan medis.