Apa itu FPGA?

click fraud protection

Field Programmable Gate Arrays terdengar rumit, namun membuka dunia baru bagi pengembang.

Jika Anda pernah membaca emulasi game retro, Anda mungkin pernah menemukan jenis semikonduktor yang disebut Field-Programmable Gate Array (FPGA). Ini adalah sirkuit terintegrasi khusus yang dapat mengkonfigurasi ulang dirinya sendiri setelah diproduksi berkat blok logika yang dapat dikonfigurasi (CLB). Dengan kata lain, pada dasarnya Anda dapat memprogram ulang chipset tersebut agar berfungsi seperti jenis sirkuit digital lainnya, yang memiliki banyak aplikasi dalam AI, desain chipset, dan bidang lainnya.

FPGA memiliki banyak kasus penggunaan, dan perangkat seperti Analogue Pocket memanfaatkannya untuk mendukung perangkat genggam yang berbeda. Namun, Microsoft juga menggunakan FPGA untuk mendukung Bing karena memungkinkan perusahaan memprogram ulang dengan cepat guna mendukung algoritme baru saat dikembangkan.

FPGA vs CPU tradisional: Apa bedanya?

Berbeda dengan chipset standar — the Snapdragon 8 Generasi 2

, misalnya — FPGA tidak dirancang untuk diprogram ulang di lapangan. Ini adalah System on Chip (SoC) yang terdiri dari beberapa bagian, termasuk GPU, NPU, dan CPU. Setelah dikirimkan, itulah yang akan diterima konsumen dan bisnis.

Namun, FPGA dimaksudkan agar dapat ditempa sehingga pengguna dapat mengubah bagian chip tanpa menimbulkan biaya atau risiko tambahan. Dalam industri yang bergerak cepat, seperti mobil self-driving, peraturan dan standar baru dapat diberlakukan kapan saja untuk segala aspek perangkat. Penggunaan FPGA memungkinkan pembaruan OTA untuk memprogram ulang chip guna mendukung standar baru.

Salah satu perbedaan besar antara FPGA dan CPU tradisional adalah bahwa mereka dirancang untuk memproses data secara paralel dengan mengorbankan kecepatan clock yang jauh lebih rendah. Misalnya, FPGA dengan 10 jalur pipa untuk pemrosesan data dapat menjalankan operasi perkalian pada dua angka untuk setiap jalur pipa, mengalikan 20 angka per siklus. CPU tradisional dapat mengalikan dua angka per siklus, per inti, dan secara berurutan.

Bagaimana cara kerja FPGA untuk emulasi?

FPGA sering digunakan untuk emulasi perangkat keras, dan bagian menarik dari proses desain chipset adalah penggunaan FPGA untuk meniru berbagai bagian SoC dalam pengujian. Perancang chipset dapat menggunakan beberapa FPGA untuk membuat prototipe Sirkuit Terpadu Khusus Aplikasi (ASIC). Bahasa Deskripsi Perangkat Keras (HDL) digunakan untuk membuat desain perangkat keras, dan bahasa ini memberitahu FPGA cara mengatur dirinya sendiri. Dalam kasus Kantong Analog, desain ini didistribusikan dalam bentuk "inti" yang biasanya ditulis dalam Verilog, dan pengguna dapat mengunduh inti untuk menyiapkan perangkat genggam untuk konsol tertentu.

Misalnya, Kantong Analog dapat membaca game Game Boy langsung di slot kartridnya dan memainkannya seolah-olah itu adalah konsol aslinya. Tidak hanya itu, adaptor kartrid juga menambahkan dukungan tambahan untuk perangkat lain, seperti Game Gear, Atari Lynx, dan banyak lagi. Hal ini hanya mungkin terjadi karena sifat FPGA yang dapat diprogram ulang dan menggunakan emulasi perangkat keras, bukan emulasi perangkat lunak, untuk memastikan bahwa game dapat dimainkan. MiSTer (yang menggunakan papan DE-10 Nano FPGA sebagai alasnya dan memerlukan modul tambahan di atasnya) serupa karena dapat digunakan untuk meniru konsol seperti SNES, Sega Genesis, dan bahkan GameCube. Emulasi perangkat keras umumnya lebih akurat daripada emulasi perangkat lunak dan juga menawarkan manfaat kinerja.

Meskipun perangkat keras menua dan menjadi tidak dapat diandalkan seiring berjalannya waktu, FPGA dapat dengan mudah diprogram ulang untuk meniru pengalaman perangkat keras yang sama.

Tentu saja, hal ini tidak berarti bahwa inti merupakan interpretasi HDL satu-ke-satu yang sempurna dari sebuah chipset. Hampir sama, namun perbaikan dan penyempurnaan dilakukan pada inti seiring berjalannya waktu untuk memperbaiki masalah yang mungkin teridentifikasi dalam penggunaan normal. Inti-inti ini dibuat dengan merekayasa balik chipset yang masuk ke perangkat ini, dan memerlukan pemetaan setiap komponen pada motherboard. Dalam chipset berpemilik khusus, hal ini menjadi lebih sulit, dan sering kali pengembang perlu melihatnya sebuah chip yang "terbuka" dengan mikroskop untuk melihat apa yang sebenarnya terjadi di dalam chip dan mereplikasinya.

Itu sebabnya FPGA juga penting untuk pelestarian perangkat keras. Meskipun perangkat keras menua dan menjadi tidak dapat diandalkan seiring berjalannya waktu, FPGA dapat dengan mudah diprogram ulang untuk meniru pengalaman perangkat keras yang sama. Chip tersebut akan mengatur ulang logika fisiknya sendiri agar sesuai dengan inti apa pun yang diberikan. Ekosistem openFPGA dirancang untuk membantu pelestarian perangkat keras tersebut.

Selain itu, Anda mendapatkan manfaat tambahan dari memainkan game-game tersebut dengan perasaan yang sah tetapi pada perangkat keras yang lebih baik secara keseluruhan. Anda dapat membeli Kantong Analog seharga $220 dan memainkan game Game Boy seperti sebelumnya, tetapi dengan kualitas build yang lebih tinggi, layar yang lebih baik, dan bahkan dukungan dock.

Kelemahan FPGA

DE-10 Nano untuk pembuatan MiSTer FPGA

Namun, ada beberapa kelemahan. Sebagai permulaan, mereka memakan lebih banyak ruang dibandingkan CPU tradisional, dan juga jauh lebih mahal untuk diproduksi. Perangkat seperti Analogue Pocket dan MiSTer FPGA menghabiskan banyak uang, dengan yang terakhir membuat Anda mengeluarkan lebih dari $500 jika Anda membeli beberapa add-on juga. Kebanyakan orang hanya lebih suka meniru game di ponsel cerdas atau komputer mereka dan tidak peduli dengan akurasi piksel sempurna yang diberikan oleh emulasi tingkat perangkat keras.

Tentu saja, FPGA juga masih dalam masa pertumbuhan dalam kaitannya dengan konsumen, dan popularitasnya baru meningkat dalam beberapa tahun terakhir. Mereka sebenarnya sudah ada sejak lama dalam kasus penggunaan profesional oleh para ilmuwan, arsitek chipset, AI dan sejenisnya, tapi hanya dalam beberapa tahun terakhir perangkat konsumen telah muncul dan dapat digunakan dengan cara yang lebih santai atau antusias.

Bagi kebanyakan orang yang ingin mengikuti persaingan, kenyamanan perangkat khusus yang menjamin a pengalaman yang benar-benar orisinal memang menarik, namun itu bukanlah sesuatu yang dibutuhkan atau bahkan dipedulikan semua orang. Secara pribadi, jika saya ingin memainkan game seperti Super Mario Bros, saya dengan senang hati memainkannya di ponsel saat bepergian. Saya tidak memerlukan perangkat khusus untuk itu, tapi saya memahami daya tarik memilikinya.