FPGA

Field-Programmable Gate Array (FPGA) merupakan sebuah IC digital yang sering digunakan untuk mengimplementasikan rangkaian digital. FPGA berbentuk komponen elektronika dan semikonduktor yang terdiri dari komponen gerbang terprogram (programmable logic) dan sambungan terprogram (interkoneksi). Komponen gerbang terprogram yang dimiliki meliputi jenis gerbang logika biasa (AND, OR, NOT) maupun jenis fungsi matematis dan kombinatorik yang lebih kompleks, seperti 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). FPGA sangat sesuai untuk pemrosesan komputasi dari algoritme integrasi numerik. Keuntungan implementasi FPGA digunakan untuk meningkatkan efisiensi rancangan dengan cara mengurangi pemakaian pemrograman perangkat lunak ("software"). FPGA mempunyai koreksi "error" yang kecil dan merupakan teknologi yang bebas ("technology"-"independent") untuk diimplementasikan dalam berbagai algoritme. Kinerja aplikasi FPGA lebih cepat dibandingkan dengan aplikasi mikrokontroler, karena FPGA hanya mensintesis perangkat keras ("hardware") saja, sementara mikrokontroler mengeksekusi instruksi perangkat lunak ("software") yang digunakan untuk mengendalikan perangkat keras ("hardware"), sehingga waktu tunda yang diimplementasikan hanya memakan waktu tunda perambatan (propagation delay) saja. Pemodelan FPGA membutuhkan informasi terkait dengan tingkat perbedaan abstraksi dan jenis model yang digunakan. Seorang perancang FPGA harus mampu mengambil beberapa tahapan pemodelan untuk memastikan hasil model rancangannya melalui model simulasi yang telah disediakan oleh vendor FPGA masing-masing.