FPGA ialah cip bersepadu yang terutamanya terdiri daripada litar digital, iaitu sejenis peranti logik boleh atur cara (PLD); kemunculan litar tersuai bukan sahaja menyelesaikan kelemahan litar tersuai, tetapi juga mengatasi kelemahan bilangan pintu yang terhad dalam peranti boleh atur cara asal.
Persekitaran pengendalian tutorial ini: sistem Windows 7, komputer Dell G3.
FPGA (Field Programmable Gate Array) ialah asas peranti boleh atur cara seperti PAL (logik tatasusunan boleh atur cara) dan produk GAL (logik tatasusunan am) pembangunan selanjutnya. Ia muncul sebagai litar separa tersuai dalam bidang litar bersepadu khusus aplikasi (ASIC), yang bukan sahaja menyelesaikan kekurangan litar tersuai, tetapi juga mengatasi kekurangan bilangan pintu yang terhad dalam peranti boleh atur cara asal.
FPGA pada asasnya ialah cip, cip bersepadu yang terutamanya terdiri daripada litar digital.
FPGA telah dicipta oleh Ross Freeman, salah seorang pengasas Xilinx, pada tahun 1985. Ia adalah sejenis peranti logik boleh atur cara (PLD). Kali ini kira-kira 20 tahun kemudian daripada kemunculan Undang-undang Moore yang terkenal, tetapi sebaik sahaja FPGA dicipta, kelajuan pembangunan seterusnya lebih pantas daripada yang dibayangkan kebanyakan orang.
Rajah 1 menunjukkan gambar fizikal cip FPGA:
Rajah 1 Gambar fizikal cip FPGA
Sebelum penciptaan PLD, jurutera menggunakan cip logik diskret yang mengandungi beberapa get logik untuk membina sistem litar Sukar untuk melaksanakan fungsi logik yang kompleks.
Untuk menyelesaikan masalah ini, pada tahun 1970-an, Programmable Logic Array (PLA) keluar mengandungi bilangan get AND dan NOT yang tetap, yang masing-masing membentuk "DAN". "atau satah", iaitu, "DAN matriks sambungan" dan "ATAU matriks sambungan", serta matriks sambungan yang hanya boleh diprogramkan sekali sahaja (kerana pengaturcaraan di sini adalah berdasarkan proses fius), jadi sesetengahnya agak kompleks DAN , atau fungsi logik pelbagai ungkapan, struktur dalaman PLA ditunjukkan dalam Rajah 2:
Boleh Diprogram juga dikeluarkan pada masa yang sama dengan Memori Baca Sahaja (PROM) Boleh Aturcara PLA, struktur dalamannya ditunjukkan dalam Rajah 3. Seperti PLA, PROM mengandungi "matriks sambungan DAN" dan "matriks sambungan OR" secara dalaman, tetapi matriks sambungan get AND ditetapkan dalam perkakasan, dan hanya matriks sambungan get OR boleh diprogramkan.
Jika hanya matriks sambungan get AND boleh diprogramkan, dan matriks sambungan get OR ditetapkan oleh perkakasan , maka cip ini dipanggil Logik Array Boleh Aturcara (PAL) Mengikut mod kerja yang berbeza bagi litar keluaran, PAL boleh dibahagikan kepada keluaran tiga keadaan, keluaran daftar, dan keluaran pelengkap dan hanya boleh diprogramkan sekali sahaja. Rajah struktur PAL ditunjukkan dalam Rajah 4.
Atas dasar PAL, peranti logik tatasusunan umum (Generic Array Logic, GAL) telah dibangunkan dengan Berbanding dengan PAL, GAL mempunyai dua penambahbaikan:
Rajah struktur GAL ditunjukkan dalam Rajah 5:
PLD awal adalah terutamanya terdiri daripada Empat jenis cip di atas terdiri daripada PROM, PLA, PAL dan GAL. Ciri umum mereka ialah mereka boleh melaksanakan fungsi logik dengan ciri kelajuan yang baik, tetapi kerana strukturnya terlalu mudah, mereka hanya boleh melaksanakan litar digital yang lebih kecil.
Dengan perkembangan sains dan teknologi serta kemajuan masyarakat, orang ramai mempunyai keperluan yang lebih tinggi dan lebih tinggi untuk penyepaduan kerepek. Produk PLD awal tidak dapat memenuhi keperluan orang ramai, dan Peranti Logik Boleh Aturcara Kompleks (CPLD) dilahirkan. CPLD boleh dianggap sebagai kesinambungan struktur peranti PLA, dan peranti CPLD juga boleh dianggap sebagai koleksi beberapa PLA dan matriks sambungan boleh atur cara. Gambar rajah struktur dalaman CPLD ditunjukkan dalam Rajah 6.
FPGA keluar beberapa tahun lebih awal daripada CPLD dan dipanggil peranti logik boleh atur cara berketumpatan tinggi bersama-sama dengan CPLD, tetapi ia pada asasnya berbeza. Seni bina dalaman cip FPGA tidak mengikut struktur yang serupa dengan PLA Sebaliknya, ia menggunakan konsep Logic Cell Array (LCA), yang mengubah idea menggunakan sejumlah besar get AND dan NOT dalam peranti PLD. pada masa lalu, dan terutamanya menggunakan jadual carian dan daftar.
Selain itu, FPGA dan CPLD juga mempunyai perbezaan dalam jenis sumber, kelajuan, dsb., seperti yang ditunjukkan dalam jadual di bawah.
器件种类/特性 | FPGA | CPLD |
---|---|---|
内部结构 | 查找表(Look Up Table) | 乘积项(Product Term) |
程序存储 | 内部为 SRAM 结构,外挂 EEPROM 或 Flash 存储程序 | 内部为 EEPROM 或 Flash |
资源类型 | 触发器资源丰富 | 组合逻辑资源丰富 |
集成度 | 高 | 低 |
使用场合 | 完成比较复杂的算法 | 完成控制逻辑 |
速度 | 快 | 慢 |
其他资源 | RAM、PLL、DSP 等 | —— |
保密性 | 一般不能保密(可以使用加密核) | 可加密 |
Dari segi mekanisme pelaksanaan dalaman, jenis FPGA boleh dibahagikan kepada berdasarkan teknologi SRAM, berasaskan teknologi antifus, dan berasaskan teknologi EEPROM/Flash. Dari segi struktur litar, kebolehprograman FPGA merujuk kepada tiga aspek kebolehprograman: blok logik boleh atur cara, I/O boleh atur cara dan sumber pendawaian boleh atur cara. Blok logik boleh atur cara ialah teras kebolehprograman FPGA, dan tiga teknologi yang kami nyatakan di atas juga merupakan teknologi untuk blok logik boleh atur cara.
Rajah struktur FPGA ditunjukkan dalam Rajah 7.
Ramai pembaca tahu FPGA Ia berkuasa, tetapi apa yang sangat berkuasa tentangnya?
Ambil mikropengawal sebagai contoh Kita semua tahu bahawa mikropengawal berkuasa dan boleh melakukan hampir apa sahaja, manakala FPGA hanya lebih kuat daripadanya. Kerana selagi fungsi yang mikropengawal boleh melaksanakan, FPGA pasti boleh melaksanakannya Sudah tentu, ini memerlukan premis utama - apabila sumber FPGA adalah mencukupi. Walau bagaimanapun, fungsi yang boleh direalisasikan oleh FPGA mungkin tidak dapat direalisasikan dengan mudah oleh mikropengawal Ini adalah fakta yang tidak boleh dipertikaikan.
Setelah berkata demikian, pembaca tidak boleh tidak bertanya, memandangkan FPGA sangat berkuasa, mengapakah mikropengawal digunakan dengan lebih meluas? Ini kerana dalam perniagaan, harga selalunya merupakan salah satu faktor penting yang mempengaruhi produk.
Harga MCU jauh lebih rendah daripada FPGA, dan bergantung pada prestasi dan sumber, harga FPGA juga sangat berbeza Harga bagi satu cip FPGA berjulat dari puluhan yuan hingga ratusan ribu daripada yuan. Sebagai perbandingan, harga mikrokomputer cip tunggal adalah jauh lebih murah Jika kita boleh mencapai fungsi yang sama dengan komputer cip tunggal berharga rendah, kita tidak akan memilih FPGA yang agak mahal, melainkan komputer cip tunggal tidak dapat memenuhi fungsinya. keperluan. Oleh itu, apabila syarikat menjalankan pembangunan sendiri, untuk menjimatkan kos, ia mungkin memilih mikropengawal yang lebih murah berbanding FPGA yang agak mahal Kerana mikropemproses seperti mikropengawal dan ARM mendapat permintaan yang tinggi, harganya lebih menguntungkan.
Tetapi sama ada ia mikropengawal, ARM atau FPGA, ia hanyalah alat untuk membantu kita merealisasikan fungsi Cara memilih memerlukan analisis khusus berdasarkan masalah tertentu. Pendek kata, tidak ada alat universal, hanya alat yang memenuhi keperluan pengeluaran. Kita tidak seharusnya berat sebelah terhadap alat tertentu dan harus mempertimbangkannya secara menyeluruh. Begitu juga, semasa anda mempelajari lebih lanjut, anda akan mendapati bahawa semua alatan ini perlu dikuasai.
FPGA mempunyai senario aplikasi yang jauh lebih sedikit berbanding MCU dan ARM, dan terutamanya menyasarkan masalah yang tidak dapat diselesaikan oleh MCU dan ARM. Contohnya, jika fleksibel dan cekap, daya pemprosesan tinggi, kependaman kelompok rendah, pengkomputeran selari pantas, boleh dikonfigurasikan semula, boleh diprogramkan semula, prestasi tersuai dan penggunaan kuasa tersuai diperlukan, tugasan ini hanya boleh dilaksanakan oleh FPGA.
Berbanding dengan Application Specific Integrated Circuit (ASIC) yang direka untuk tujuan khas, FPGA mempunyai 3 kelebihan:
Oleh pengaturcaraan FPGA, FPGA boleh melaksanakan sebarang fungsi logik yang boleh dilakukan oleh ASIC. Kelebihan unik FPGA terletak pada fleksibilitinya, iaitu, fungsi cip boleh diubah pada bila-bila masa Ciri ini boleh mengurangkan kos dan risiko produk apabila teknologi ini belum matang hari untuk mempopularkan teknologi 5G.
FPGA boleh digunakan terus selepas pengaturcaraan Penyelesaian FPGA tidak perlu melalui tiga bulan hingga satu tahun kitaran keluar pita cip, yang menyediakan perusahaan dengan Berusaha untuk masa untuk memasarkan produk.
Perbezaan utama antara FPGA dan ASIC ialah penyelesaian ASIC mempunyai kos tetap manakala penyelesaian FPGA hampir tiada Bila penggunaan adalah kecil, gunakan Penyelesaian FPGA tidak perlu membayar berjuta-juta dolar dalam satu kali kos pita keluar, dan ia tidak perlu menanggung risiko kegagalan pita keluar Pada masa ini, kos FPGA penyelesaian adalah lebih rendah daripada ASIC Apabila penggunaan meningkat, kelebihan kos penyelesaian FPGA secara beransur-ansur meningkat Selepas jumlah penggunaan tertentu melebihi, penyelesaian ASIC mempunyai lebih banyak kelebihan dari segi kos disebabkan oleh skala ekonomi yang dihasilkan oleh. sejumlah besar tape-out, seperti yang ditunjukkan dalam rajah berikut:
Oleh itu, FPGA ialah biasanya digunakan dalam pemprosesan isyarat digital, pemprosesan video, pemprosesan imej, medan komunikasi 5G, bidang perubatan, kawalan industri, perkhidmatan awan, pengkomputeran dipercepatkan, kecerdasan buatan, pusat data , pemanduan autonomi, pengesahan cip dan bidang lain memainkan peranan yang tidak boleh ditukar ganti. Hanya dengan menguasai kaedah reka bentuk FPGA am anda boleh membuat pencapaian hebat dalam bidang di mana FPGA adalah peneraju.
FPGA adalah antara perisian dan perkakasan Jika anda menggunakannya untuk antara muka dan komunikasi, ia akan mengutamakan perkakasan untuk algoritma dan kawalan, ia cenderung kepada perisian. Dengan peningkatan kecerdasan buatan dan penglihatan mesin, FPGA lebih berat sebelah terhadap algoritma perisian heterogen dan berpotensi untuk bersaing dengan GPU.
Carta perbandingan prestasi antara FPGA dan GPU ditunjukkan dalam Rajah 9:
Arah perisian FPGA: Memfokuskan pada pembangunan perisian, membangunkan keupayaan aplikasi dipercepatkan FPGA dalam analisis data, kecerdasan buatan, penglihatan mesin dan bidang lain, terutamanya menggunakan teknologi OpenCL dan HLS untuk mencapai pembangunan perisian dan perkakasan secara kolaboratif.
Arah perkakasan FPGA: memfokuskan pada reka bentuk logik, memfokuskan pada reka bentuk aplikasi, reka bentuk litar bersepadu dan keupayaan pengesahan cip dalam bidang tertentu FPGA.
Bidang aplikasi awal FPGA adalah bidang komunikasi Walau bagaimanapun, dengan perkembangan industri maklumat dan teknologi mikroelektronik, teknologi FPGA telah menjadi salah satu teknologi yang paling popular dalam industri maklumat, dan skop aplikasinya telah. diperluaskan untuk merangkumi aeroangkasa, kereta, Bidang popular seperti penjagaan perubatan, penyiaran, ujian dan pengukuran, elektronik pengguna, dan kawalan industri Dengan perkembangan teknologi dan kemajuan teknologi, ia telah mula menembusi ke dalam kehidupan dari semua sudut.
Untuk lebih banyak pengetahuan berkaitan, sila lawati ruangan Soalan Lazim!
Atas ialah kandungan terperinci apa itu fpga. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!