FPGA vs Mikrokontroler: Perbedaan Utama yang Dijelaskan

A field-programmable gate or grid array (FPGA) dan mikrokontroler mirip, tetapi tidak sama. Keduanya pada dasarnya "komputer kecil" atau sirkuit terpadu yang tertanam dalam perangkat dan produk lainnya. Perbedaan utama ada di judulnya. Pengguna dapat memprogram hardware FPGA setelah manufaktur, membuatnya "field-programmable," sementara mikrokontroler hanya dapat disesuaikan pada level yang lebih permukaan. Selain itu, FPGA dapat menangani input paralel sementara mikrokontroler membaca satu baris kode pada satu waktu.
Karena mereka memungkinkan tingkat personalisasi yang lebih besar, FPGA lebih mahal dan lebih sulit untuk diprogram. Sebaliknya, mikrokontroler hemat biaya tetapi jauh lebih sedikit dapat disesuaikan. Pelajari lebih lanjut tentang persamaan dan perbedaan antara mikrokontroler dan FPGA. Satu tidak tentu lebih baik dari yang lain — saat memutuskan mana yang akan digunakan, pertimbangkan beberapa faktor.
Apa Itu Mikrokontroler?
Mikrokontroler (MCU) pada dasarnya komputer kecil. Memiliki semua elemen yang sama dengan komputer lain, termasuk unit pemroses pusat (CPU), beberapa memori akses acak (RAM) dan perangkat input dan output. Tidak seperti komputer desktop, yang dapat menjalankan ribuan program berbeda, mikrokontroler adalah perangkat tujuan khusus yang menjalankan satu program.
Dibuat untuk melakukan satu hal berulang, secara otomatis atau atas permintaan pengguna. Ditanam dalam perangkat lain, baik produk konsumen, produsen, medis atau jenis lainnya. Berjalan pada energi rendah — konsumsi dayanya dapat diukur dalam miliamps. Sebagai hasilnya, mikrokontroler cenderung terjangkau. Perangkat di mana ditanamkan, namun, dapat bervariasi sangat dalam biaya.
Anda menemukan mikrokontroler di sekitar Anda dalam kehidupan sehari-hari. Berikut adalah beberapa perangkat konsumen di mana mikrokontroler ditanamkan:
- Keyboard
- Monitor
- Printer
- Copier
- Fax machine
- Telephone
- Television remote controls
- Microwaves
- Washers and dryers
- Lawn sprinklers
- Children’s toys
Selain barang konsumen, mikrokontroler juga ditanamkan dalam perangkat berikut:
- Traffic lights
- Car engine control systems
- Power tools
- Implantable medical devices
Ini hanya beberapa contoh — mikrokontroler ditanamkan dalam semua jenis perangkat yang kita gunakan dalam masyarakat modern. Setiap mikrokontroler memiliki tujuan spesifik dan berulang. Dapat bekerja secara otomatis menggunakan sistem kontrol umpan balik, seperti yang Anda temukan dengan lampu lalu lintas. Atau, dapat bekerja pada sinyal input pengguna, seperti membalik saklar atau menekan tombol. Konsep terakhir ini benar untuk microwave, mesin cuci dan remote kontrol televisi Anda.
Apa Itu Field Programmable Grid Array?
Field-programmable gate or grid array sedikit lebih rumit daripada mikrokontroler. Sebagian besar waktu, chip sudah diprogram sebelumnya. Sebagai pengguna, Anda dapat mengubah perangkat lunak, tetapi tidak hardware. Ini membawa kita ke elemen menentukan FPGA — Anda, sebagai pengguna, dapat mengonfigurasi hardware setelah pembelian.
Insinyur menemukan hal ini sangat berguna untuk prototyping sirkuit terpadu aplikasi spesifik mereka. Faktanya, Intel menggunakan bentuk FPGA untuk menyederhanakan proses prototyping mereka sendiri. FPGA juga berguna karena perangkat di mana FPGA ditanamkan dapat diubah tanpa memerlukan hardware baru sepenuhnya.

Menurut contoh yang diberikan oleh "FPGAs for Dummies," peraturan mungkin berubah untuk menuntut kamera belakang kendaraan beroperasi lebih cepat. Jika kamera ini berjalan pada FPGA, produsen dapat membuat perubahan ini tanpa memasang hardware baru yang mahal. Mereka dapat dengan mudah memprogram ulang FPGA di setiap kamera belakang mobil. Mobil yang sudah ada di jalan dapat diubah alih-alih dibuat usang.
Bagaimana Cara Kerjanya?
FPGA memiliki "array" sirkuit hardware terpadu — array ini adalah kelompok blok logika yang dapat diprogram. Selama manufaktur, FPGA tidak dikonfigurasi untuk memiliki fungsi tertentu. Sebaliknya, pengguna dapat mengonfigurasinya dan kemudian mengonfigurasi ulang sesuai keinginan.
Pengguna melakukan ini menggunakan bahasa deskripsi hardware (HDL). FPGA memiliki blok logika, seperti AND dan XOR, yang dapat dipasangkan bersama oleh pengguna dengan interkoneksi. FPGA modern memiliki banyak gate logika dan blok RAM, jadi dapat menaklan komputasi kompleks. Beberapa FPGA juga memiliki konverter analog-to-digital atau digital-to-analog, mirip dengan field-programmable analog arrays (FPAAs).
Bagaimana Keduanya Mirip
Kedua FPGA dan mikrokontroler memiliki tujuan dasar yang sama — keduanya dibangun dengan cara yang memungkinkan produsen atau pengguna akhir untuk menentukan fungsinya. Keduanya melakukan aplikasi spesifik dan ditanam dalam perangkat lain, baik lampu lalu lintas atau mesin cuci. Keversatan ini adalah mengapa Anda dapat menemukannya di sekitar Anda. Segala yang kita lakukan lebih mudah berkat sirkuit terpadu kecil ini.
Bagi mata yang tidak terlatih, keduanya terlihat mirip. Keduanya datar, persegi, chip kecil yang dikelilingi pin yang dapat diprogram. Keduanya pada dasarnya komputer kecil, diprogram untuk tujuan yang berbeda. Untuk alasan ini, tidak FPGA maupun mikrokontroler dapat berfungsi sebagai komputer pribadi atau desktop. Sebaliknya, mereka mengikuti perintah untuk melakukan satu fungsi dengan tingkat kompleksitas yang bervariasi.
Komponen Dasar
Perangkat ini memiliki beberapa kesamaan dasar. Faktanya, terdiri dari komponen dasar yang sama. FPGA dan mikrokontroler keduanya adalah sirkuit terpadu yang bekerja menggunakan logika komputer dan biner.
Sirkuit terpadu adalah sekelompok sirkuit elektronik pada satu chip datar, yang terdiri dari material semiconductor — seringkali silicon. Dapat melakukan perhitungan dan menyimpan data. Sirkuit terpadu menggunakan teknologi digital atau analog — seperti disebutkan di atas, beberapa FPGA dapat mengonversi antara keduanya. Teknologi digital menggunakan sistem logika biner, sementara teknologi analog menentukan fungsi linier dari input untuk menghitung output.
Konsep dasar ini, input menentukan output, menggambarkan cara kerja semua komputer. Teknologi digital menggabungkan sistem logika dua nilai, atau biner — satu atau nol, hidup atau mati, ya atau tidak. Penting untuk memahami dasar logika komputer saat memprogram mikrokontroler atau FPGA.
Kustomisasi
Selain itu, keduanya FPGA dan mikrokontroler dapat diprogram setelah produksi hingga beberapa tingkat — berarti baik produsen maupun pengguna akhir dapat merancang fungsinya dan menyematkannya sesuai kebutuhan. Itulah mengapa perangkat ini memiliki begitu banyak aplikasi dalam berbagai industri.
Tingkat kustomisasi FPGA memisahkannya, yang menjadikan ini paling berguna untuk aplikasi yang rumit dan sangat teknis. Di sisi lain, mikrokontroler lebih baik untuk aplikasi yang lebih sederhana.
Bagaimana Keduanya Berbeda
Perbedaan utama antara FPGA dan mikrokontroler adalah tingkat kustomisasi dan kompleksitas. Mereka juga bervariasi dalam harga dan kemudahan penggunaan. Pada dasarnya, FPGA memungkinkan kustomisasi yang lebih besar dan proses yang lebih kompleks, serta perubahan lintas waktu pada hardware. Pengguna membutuhkan lebih banyak keterampilan dan pengetahuan untuk menggunakan FPGA.
Sementara FPGA memiliki keuntungan, mikrokontroler lebih murah dan lebih mudah digunakan. Sebagian besar hobi atau pemula akan mendapat manfaat dari membeli mikrokontroler, sementara perusahaan rekayasa dan produsen mungkin lebih memilih FPGA.
Mikrokontroler
Karakteristik menentukan mikrokontroler meliputi:
- Mudah digunakan: Siapa saja dengan pemahaman dasar coding dapat memprogram mikrokontroler. Anda dapat memprogram mikrokontroler menggunakan bahasa assembly seperti Javascript atau Python, yang dapat Anda pelajari sendiri melalui kursus online.
- Hemat biaya: Karena lebih mudah untuk diproduksi massal, biaya awal lebih rendah untuk mikrokontroler daripada FPGA.
- Tidak selalu ideal untuk aplikasi kompleks: Processor khusus mikrokontroler menangani semua input dan output. Sebagai hasilnya, bottleneck dapat terjadi karena proses harus menunggu proses lain selesai. Karena tidak memungkinkan fungsi paralel, mikrokontroler lebih baik untuk tujuan yang lebih sederhana.
- Ideal untuk aplikasi sederhana: Pikirkan tentang mesin cuci Anda. Setelah Anda memasukkan pakaian, Anda menyesuaikan dua atau tiga pengaturan, dan kemudian Anda menekan start. Sebaliknya, mouse komputer Anda hanya perlu tahu cara menafsirkan beberapa input — gulir ke atas, gulir ke bawah, klik kiri dan klik kanan. Untuk aplikasi sederhana dan tidak berubah seperti ini, mikrokontroler adalah ideal.

FPGA
Beberapa karakteristik menentukan FPGA meliputi:
- Memerlukan lebih banyak keterampilan untuk digunakan: Anda membutuhkan lebih dari pemahaman dasar bahasa coding untuk memprogram FPGA. Selain pengetahuan bahasa coding, Anda juga perlu dapat melacak jumlah besar variabel. Anda juga perlu memahami bahasa deskripsi hardware. Mendesain dan meredesain hardware bukan tugas untuk pemula.
- Mengizinkan lebih banyak paralelisme: FPGA memiliki ribuan blok logika, semuanya dapat Anda program. Anda dapat membuat proses independen satu sama lain, mengurangi instance bottlenecking seperti pada mikrokontroler.
- Mengizinkan tingkat kustomisasi yang lebih tinggi: Sederhananya, jika Anda tahu apa yang Anda lakukan, Anda dapat melakukan banyak hal dengan FPGA daripada mikrokontroler. Jika Anda ingin memprogram sesuatu yang rumit, Anda akan membutuhkan lebih banyak kustomisasi daripada yang disediakan mikrokontroler.
- Cenderung lebih mahal: Salah satu kekurangan FPGA adalah mereka cenderung lebih mahal daripada mikrokontroler. Meskipun biaya awal lebih tinggi, dapat menghemat uang untuk industri yang mungkin perlu membuat perubahan lintas waktu — pikirkan contoh kamera belakang.
- Ideal untuk aplikasi yang lebih kompleks: Karena FPGA memungkinkan proses paralel, Anda dapat menerapkan lebih banyak input dengan FPGA daripada dengan mikrokontroler, tanpa menjumpai masalah bottlenecking. Ini menjadikan ideal untuk operasi yang lebih kompleks.
- Mengizinkan perubahan nanti: Salah satu manfaat terbesar FPGA adalah hardware itu sendiri dapat diubah setelah pemrograman awal. Untuk alasan ini, Anda dapat mengubah fungsi perangkat tanpa mengganti hardware sepenuhnya. Ini lebih hemat biaya dalam jangka panjang, terutama untuk industri produksi massal.
Apakah Saya Harus Menggunakan Mikrokontroler atau FPGA dalam Papan Sirkuit Cetak (PCB) Saya?
Papan sirkuit cetak membawa gambar skematis ke kehidupan. Semakin banyak lapisan konduktif yang dimiliki papan, semakin banyak koneksi yang dapat Anda buat. Papan empat lapisan akan memiliki empat lapisan konduktif, dengan lapisan isolasi di antara. Merakit PCB membutuhkan sejumlah besar pengetahuan teknis, jadi baca istilahnya jika Anda merakit satu untuk pertama kalinya. Anda dapat memilih untuk mengandalkan layanan produksi PCB profesional atau suplai PCB.
Apakah Anda menggunakan mikrokontroler atau FPGA dalam PCB Anda harus tergantung pada beberapa faktor, termasuk:
- Tingkat kompleksitas yang diperlukan.
- Tingkat keahlian Anda.
- Anggaran Anda, terutama jika Anda perlu membeli dalam jumlah besar.
- Perubahan lintas waktu yang mungkin perlu Anda buat.
Tingkat Kompleksitas yang Diperlukan
FPGA dapat mengeksekusi beberapa baris kode sekaligus, memungkinkan proses paralel independen. Untuk aplikasi yang sangat canggih, kemampuan ini adalah keharusan. FPGA dapat menangani input yang lebih rumit dan dapat melakukan operasi simultan. Kekurangannya adalah FPGA memerlukan timing dan akurasi yang sempurna untuk berfungsi dengan baik. Kesalahan kecil dapat merusak seluruh sistem.

Sebaliknya, mikrokontroler hanya membaca satu baris kode pada satu waktu, memproses perintah secara berurutan. Meskipun ini dapat menyebabkan masalah bottlenecking, memiliki keuntungan. Karena lebih sederhana, mikrokontroler lebih mudah diprogram dan diprogram ulang menggunakan metode coba dan kesalahan. Untuk aplikasi sederhana, FPGA mungkin lebih rumit dari yang diperlukan, dan dapat membuat pemrograman lebih sulit dari yang diperlukan.
Jika kesalahan dibuat dalam pemrograman FPGA, perbaikan jauh lebih kompleks. Ini membawa kita ke poin berikutnya, yaitu pilihan Anda antara FPGA dan mikrokontroler harus bergantung pada tingkat keahlian Anda.
Tingkat Keahlian Anda
Dalam hal sederhana, FPGA bukan pilihan yang tepat untuk pemula. Bahasa deskripsi hardware memerlukan lebih banyak waktu dan pengalaman untuk dipelajari daripada bahasa assembly. Tingkat kustomisasi yang lebih tinggi berarti lebih banyak keterampilan yang diperlukan. Jika Anda memiliki banyak pengalaman dengan rekayasa komputer, FPGA akan memberi Anda tingkat kustomisasi yang menarik.
Anggaran Anda
Ingatlah bahwa FPGA cenderung lebih mahal dalam biaya awal daripada mikrokontroler. Jika Anda ingin memprogram sesuatu yang sederhana, seperti lampu auto-dimming atau sensor suhu, mikrokontroler yang relatif hemat biaya mungkin adalah opsi yang lebih baik.
Meskipun biaya awal lebih tinggi, FPGA dapat mengurangi biaya nanti — terutama dalam objek yang diproduksi massal yang mungkin perlu diubah setelah perakitan asli.
Kebutuhan Anda untuk Perubahan Lintas Waktu
Untuk sejumlah alasan, Anda mungkin menemukan bahwa perlu mengubah hardware aplikasi Anda. Dalam hal itu, Anda akan senang memiliki FPGA. Ini adalah sebab mengapa begitu banyak industri menyukai FPGA. Ketika hukum, standar, peraturan atau kebutuhan berubah, jauh lebih murah dan tidak memakan waktu untuk mengubah FPGA yang ada daripada menerapkan sistem hardware baru sepenuhnya.
Pelajari Lebih Banyak dengan Menghubungi Millennium Circuits
Kedua FPGA dan mikrokontroler berharga untuk berbagai tujuan. Keversatan mereka memungkinkan ribuan aplikasi, beberapa yang kita gunakan setiap hari. Memahami persamaan dan perbedaan antara mereka akan membantu Anda menentukan opsi terbaik untuk tujuan Anda.
Sementara terdiri dari komponen dasar yang sama, berbeda dalam tingkat kustomisasi, kompleksitas, harga dan tingkat keahlian yang diperlukan. Memilih satu daripada yang lain harus bergantung pada beberapa faktor. Setiap solusi memiliki manfaat unik dan kekurangan potensial.
Apakah Anda merancang proyek do-it-yourself, membuat prototipe untuk produk baru atau mencoba menyederhanakan proses teknis, salah satu sirkuit terpadu ini pasti berguna. Jika Anda memiliki pertanyaan tentang teknologi FPGA atau mikrokontroler yang digunakan pada PCB polos, hubungi para ahli di Millennium Circuits Limited untuk informasi lebih lanjut.
