Apakah maksud “field programmable array”?
Istilah penuhnya ialah Field Programmable Gate Array atau FPGA, iaitu tatasusunan get logik boleh atur cara. FPGA melaksanakan logik digital yang boleh dikonfigurasi; NPU mempercepat operasi rangkaian neural yang disokong. Pilihan bergantung pada laluan isyarat sebenar. Pemprosesan isyarat FPGA boleh berguna bagi antara muka selari atau pemerolehan yang sensitif terhadap pemasaan, manakala NPU boleh memudahkan beban inferens yang serasi.
Daripada papan pembangunan FPGA kepada produk tersuai
Papan FPGA hanya membuktikan sebahagian daripada sistem. Reka bentuk tersuai juga memerlukan penjujukan bekalan kuasa, pengagihan jam, antara muka memori, reka bentuk terma dan kaedah ujian yang boleh diulang. Bandingkan usaha reka bentuk serta pengesahan FPGA dengan MPU atau seni bina SoC FPGA. Kos FPGA merangkumi kejuruteraan, alat pembangunan, kerumitan papan dan ujian pengeluaran selain cip itu sendiri.
Apakah AI MPU?
Platform MPU berkeupayaan AI menggabungkan mikropemproses aplikasi dengan perisian dan sumber pecutan yang diperlukan untuk beban kerja pembelajaran mesin. Mulakan dengan mengenal pasti tugas mana yang dimiliki oleh CPU dan yang mendapat manfaat daripada pemecut yang disokong.
MPU, atau mikropemproses aplikasi, biasanya merupakan pusat perisian bagi sistem Linux terbenam. "AI MPU" bukanlah kategori pemproses yang berasingan seperti platform MPU yang merangkumi, atau berfungsi rapat dengan, sumber pecutan seperti NPU, GPU, DSP atau FPGA. MPU menganjurkan Linux, rangkaian, storan, perkhidmatan keselamatan, logik aplikasi dan masa jalan yang menyelaraskan beban kerja AI.
Untuk pembelajaran mesin MPU, soalan praktikal bukan sahaja kelajuan CPU. Jalur lebar memori, sokongan pemecut, kamera dan I/O berkelajuan tinggi, kualiti BSP Linux, ketersediaan jangka panjang, reka bentuk terma dan kematangan rantai alat model selalunya lebih penting daripada nilai TOPS tajuk utama.
Apakah yang menjadikan MPU sebagai platform kecerdasan buatan yang baik?
MPU terbaik untuk kecerdasan buatan adalah khusus beban kerja. Gerbang penglihatan mungkin mengutamakan MIPI CSI, saluran paip video perkakasan dan NPU. Komputer misi lasak mungkin memerlukan PCIe, berbilang port Ethernet, teras pendamping yang menentukan dan ciri keselamatan yang lebih kukuh. Platform perindustrian mungkin menghargai hayat produk yang panjang, TSN, CAN-FD dan ekosistem Linux yang stabil.
Tanda aras model sebenar dan lengkapkan rantaian prapemprosesan. Platform dengan angka pemecut yang diiklankan lebih rendah boleh menang jika ia mengelakkan salinan memori, menyokong pengendali yang diperlukan dan memastikan laluan penderia-ke-hasil yang cekap.
NPU: inferens saraf yang cekap di tepi
NPU tepi mempercepatkan pengendali rangkaian saraf seperti konvolusi, operasi matriks dan fungsi pengaktifan biasa. Ia biasanya merupakan tempat yang paling cekap untuk model pengesanan, pengelasan, pembahagian dan pengekstrakan ciri yang disokong apabila kuasa dan inferens berterusan menjadi masalah.
Prestasi NPU bergantung pada kompilasi dan liputan pengendali. Lapisan yang tidak disokong mungkin jatuh kembali ke CPU atau pemecut lain. Keperluan kuantisasi, susun atur tensor, resolusi input dan pergerakan memori juga boleh mengubah prestasi dunia sebenar secara mendadak. Sentiasa tanda aras graf pengeluaran dan bukannya bergantung pada TOPS teori sahaja.
FPGA: saluran paip deterministik dan inferens AI di mana fleksibiliti penting
FPGA cemerlang dalam pergerakan data deterministik, antara muka tersuai dan saluran paip selari secara besar-besaran. Dalam sistem tepi ia boleh menyahsiri penderia, menjajarkan cap masa, menapis data, menjana kawasan yang diminati, melaksanakan prapemprosesan imej dan memberi pemecut dengan kependaman yang boleh diramal. Inferens AI FPGA juga mungkin apabila model memetakan dengan baik kepada DSP, memori dan timbunan pecutan vendor yang tersedia.
Pertukaran adalah usaha kejuruteraan. Reka bentuk RTL atau HLS, simulasi, penutupan masa, pengesahan dan strategi kemas kini mesti dirancang. FPGA harus dipilih kerana tingkah laku deterministik atau keselarian tersuai mencipta nilai sistem—bukan semata-mata kerana ia boleh menjalankan aritmetik.
NPU lwn FPGA untuk AI tepi
Keputusan NPU vs FPGA selalunya merupakan perduaan palsu. NPU biasanya merupakan pilihan yang lebih mudah untuk rangkaian saraf yang disokong dan prestasi per watt yang kukuh. FPGA lebih kukuh apabila sistem memerlukan antara muka penderia tersuai, prapemprosesan deterministik, format data luar biasa atau saluran paip yang dikawal ketat sebelum dan selepas inferens.
Seni bina biasa menggunakan kedua-duanya: FPGA untuk pengambilan sensor dan prapemprosesan, NPU untuk rangkaian saraf dan MPU untuk orkestrasi Linux. Ini mengurangkan jumlah kerja tidak teratur yang dipaksa ke mana-mana satu pemproses.
| sumber | Beban kerja yang paling sesuai | Kekangan utama |
|---|---|---|
| FPGA | Saluran paip deterministik, I/O tersuai, cap masa, prapemprosesan, pecutan khusus | Usaha RTL/HLS, pengesahan, sumber peranti |
| NPU | Inferens saraf yang disokong dengan prestasi yang baik setiap watt | Sokongan operator, pengkompil/masa jalan, kuantisasi dan pergerakan memori |
| MPU | Aplikasi Linux, rangkaian, storan, keselamatan siber, orkestrasi | Pelaksanaan kurang deterministik; overhed tujuan am |
| Teras MCU / RT | Gelung kawalan, penyeliaan keselamatan, penjujukan kuasa, I/O deterministik | Memori terhad dan pengiraan tahap tinggi |
Cara praktikal untuk membahagikan seni bina AI pinggir
- Mulakan dengan tarikh akhir: mengenal pasti isyarat yang mempunyai keperluan masa sukar dan kelewatan penderia-ke-tindakan maksimum.
- Kadar data peta: kira daya pemprosesan sensor, saiz tensor perantaraan dan trafik ingatan kes terburuk.
- Pastikan ingest deterministik dekat dengan antara muka: Enjin FPGA, DMA atau teras masa nyata selalunya sesuai.
- Letakkan model saraf yang disokong pada NPU: mengesahkan liputan operator dan prestasi tersusun sebenar.
- Gunakan MPU untuk sistem: rangkaian, storan, kemas kini, pengelogan, API dan dasar aplikasi dimiliki secara semula jadi dalam Linux.
- Rizab kawalan masa nyata: MCU atau teras penentu harus mengawasi penggerakan masa kritikal dan kesihatan platform jika diperlukan.
Jalur lebar ingatan selalunya menjadi hambatan tersembunyi
Banyak reka bentuk AI pinggir menumpukan pada puncak pengiraan dan mendapati kemudian bahawa salinan, penukaran warna, pemformatan semula tensor atau DDR kongsi mendominasi kependaman. Laluan sifar salinan atau salinan rendah, topologi DMA, tingkah laku cache dan akses memori pemecut harus dinilai awal. Pendikitan haba juga boleh menukar penanda aras yang kuat kepada prestasi mampan yang lemah.
Ini amat penting apabila berbilang kamera, radar, penderia peristiwa atau strim Ethernet berkelajuan tinggi berkongsi subsistem memori yang sama.
Contoh seni bina rujukan
Saluran paip penglihatan / penderia peristiwa
Penderia → Pengambilan dan cap masa FPGA → Inferens NPU → Perkhidmatan keputusan MPU → CAN-FD atau output Ethernet. Ini adalah corak yang kukuh untuk persepsi kependaman rendah dan bersambung terus dengan kami .
Komputer AI terbenam
I/O berkelajuan tinggi → Laluan DMA / pemecut → NPU atau kesimpulan GPU → Perkhidmatan aplikasi Linux → storan dan API rangkaian. kami modul pengiraan terbenam dan komputer tepi lasak kelas produk dibina di sekeliling jenis pembahagian ini.
Gerbang penentu industri
Antara muka CAN-FD / bersiri / Ethernet → cap masa FPGA atau MCU dan pengendalian protokol → perkhidmatan MPU → analitik NPU pilihan. Di sini I/O deterministik dan kebolehselenggaraan perisian jangka panjang boleh menjadi lebih penting daripada daya pemprosesan AI maksimum.
Bagaimana untuk memilih antara FPGA, NPU dan MPU
Pilih daripada beban kerja yang lengkap, bukan label pemproses. Jika masalah dominan adalah inferens saraf, mulakan dari keserasian NPU. Jika I/O tersuai dan prapemprosesan deterministik mendominasi, nilaikan sumber FPGA. Jika perkhidmatan Linux, rangkaian dan perisian aplikasi mendominasi, mulakan dengan keupayaan MPU. Kebanyakan platform pengkomputeran pinggir berprestasi tinggi akan menggabungkan sekurang-kurangnya dua daripada sumber ini.
Sebelum melakukan perkakasan, jalankan strim perwakilan melalui timbunan perisian yang dimaksudkan dan ukur kependaman hujung ke hujung, kuasa, lebar jalur memori dan terma. Bukti itu lebih berharga daripada kedudukan pemecut generik.
Contoh berfungsi: empat kamera dan belanjawan memori dikongsi
Pertimbangkan contoh perancangan dengan empat strim 1280 × 720 pada 30 bingkai sesaat, diwakili sebagai RGB dengan satu bait setiap saluran selepas penukaran imej. Muatan imej logik gabungan mereka ialah 4 × 1280 × 720 × 30 × 3 = 331,776,000 bait sesaat, kira-kira 332 MB/s dalam unit perpuluhan. Ini bukan kadar bit pautan kamera atau prestasi yang diukur bagi produk Alvexis.
Satu salinan bingkai penuh tambahan membaca dan menulis muatan itu, menambah kira-kira 664 MB/s trafik memori sebelum mempertimbangkan kelakuan cache atau operasi lain. Tensor model, penukaran warna, pengelogan dan perkhidmatan serentak menambah trafik mereka sendiri. Ini menerangkan sebab reka bentuk boleh dikekang oleh pergerakan data walaupun apabila penarafan pemecut tajuknya kelihatan mencukupi.
| Kerja ke tempat | Titik permulaan | Bukti sebelum melakukan |
|---|---|---|
| Penyerapan dan penyegerakan kamera | Antara muka SoC yang disokong, dengan FPGA atau peranti pendamping jika diperlukan | Tangkapan strim serentak, gelagat cap masa dan kehilangan di bawah beban |
| Inferens saraf | NPU apabila graf dan ketepatan yang dipilih disokong | Ketepatan penukaran dan pengukuran aplikasi pada peranti yang berterusan |
| Perkhidmatan dan rakaman Linux | Sumber MPU dan laluan storan belanjawan yang jelas | CPU, ingatan dan tingkah laku I/O semasa inferens aktif |
| Kawalan luaran yang kritikal masa | Pengawal masa nyata yang sesuai atau pelaksanaan deterministik yang disahkan | Bukti masa tindak balas di bawah beban kerja kes terburuk yang berkaitan |
Tujuan pembahagian adalah untuk menjadikan setiap pemasaan dan keperluan sumber jelas. Ia tidak membayangkan bahawa setiap reka bentuk memerlukan empat pemproses yang berbeza. Mulakan dengan seni bina paling ringkas yang memenuhi keperluan, kemudian tambahkan sumber di mana ukuran atau kekangan antara muka membenarkannya.
Pelan pengesahan untuk memilih campuran pemproses
- Pegunkan kontrak input: penderia, format data, model, resolusi dan keadaan operasi.
- Sahkan sokongan model dan kualiti output sebelum membandingkan daya pemprosesan pemecut.
- Ukur pemerolehan, prapemprosesan, inferens dan penghantaran secara berasingan, kemudian ukur laluan lengkap.
- Ulangi di bawah beban terma yang berterusan dengan rakaman, rangkaian dan semua penderia yang dimaksudkan aktif.
- Catatkan umur giliran, kehilangan input dan kependaman ekor, jadi kadar purata yang tinggi tidak menyembunyikan kelewatan yang terputus-putus.
Kekalkan semakan papan, imej perisian, versi rantai alat dan input ujian dengan hasilnya. Untuk pelaksanaan Rockchip, Panduan penggunaan model RK3588 membangunkan aliran kerja ini. Untuk data kamera peristiwa, gunakan panduan integrasi perisian untuk menentukan cap masa dan perwakilan sebelum memilih laluan inferens.
Selepas beban kerja dicirikan, bandingkan Pilihan integrasi SoM dan SBC. Keputusan itu menghubungkan seni bina pengiraan kepada penyambung, kuasa, kepungan dan kerja pengeluaran.
Daripada pemilihan pemproses kepada produk yang boleh dibina
Senarai pendek pemproses hanya berguna apabila ia sesuai dengan produk lengkap. Sebelum memesan papan tersuai, ubah beban kerja menjadi ringkasan kejuruteraan pendek:
- Input: kiraan sensor, antara muka, kadar sampel dan keperluan penyegerakan.
- beban kerja AI: model sebenar, ketepatan yang disokong dan kualiti keluaran yang boleh diterima.
- Kekangan fizikal: dimensi, sumber kuasa, persekitaran penyejukan dan operasi.
- Penghantaran: kuantiti prototaip, volum pengeluaran, pemilikan perisian dan ujian penerimaan.
Untuk stesen pemeriksaan, sambungkan saluran paip kamera ke pencetus talian, pengecam bahagian dan antara muka hasil. kami visi mesin industri dan penyelesaian kawalan kualiti menerangkan bagaimana keperluan tersebut menjadi projek rintis.
Soalan Lazim AI MPU, NPU dan tepi FPGA
Apakah MPU AI?
MPU AI menerangkan beban kerja kecerdasan buatan yang digunakan pada platform mikropemproses terbenam, biasanya dengan Linux dan selalunya dengan pecutan bersepadu atau pendamping seperti NPU, GPU atau FPGA. MPU biasanya menguruskan aplikasi, rangkaian, storan, keselamatan dan orkestrasi di sekitar saluran paip inferens.
Bolehkah MPU menjalankan pembelajaran mesin?
Ya. Beban kerja pembelajaran mesin MPU boleh dijalankan pada teras CPU atau menggunakan pemecut bersepadu. Untuk sistem pengeluaran, sokongan model, lebar jalur memori, prestasi terma berterusan dan kependaman hujung ke hujung lebih penting daripada angka TOPS yang diiklankan sahaja.
NPU vs FPGA: yang mana lebih baik untuk AI tepi?
NPU biasanya merupakan pilihan yang lebih mudah untuk inferens rangkaian saraf yang disokong dengan prestasi per watt yang kukuh. FPGA adalah lebih baik apabila antara muka penderia tersuai, prapemprosesan deterministik, format data luar biasa atau saluran paip khusus menjadi pusat kepada reka bentuk. Banyak sistem menggunakan kedua-duanya.
Bolehkah anda menjalankan beban kerja NPU pada FPGA?
FPGA boleh melaksanakan pemecut rangkaian saraf atau saluran paip inferens, tetapi ia tidak bersamaan secara automatik dengan NPU khusus. Perdagangan itu melibatkan sumber logik boleh atur cara, ingatan, kematangan rantai alat, sokongan model, usaha pengesahan dan kuasa.
Bilakah inferens FPGA AI masuk akal?
Inferens AI FPGA menarik apabila inferens mesti digandingkan rapat dengan prapemprosesan deterministik, antara muka tersuai atau pergerakan data khusus. Ia amat berguna apabila masa jalan NPU standard tidak sesuai dengan laluan penderia atau kekangan kependaman.
Rujukan teknikal
- Rockchip: Komponen perisian RKNN dan alatan penggunaan
- Rockchip: penukaran model dan contoh inferens
- Gallego et al.: Visi berasaskan peristiwa — Satu Tinjauan
Contoh lebar jalur ialah pengiraan eksplisit, bukan penanda aras produk. Sahkan seni bina yang dipilih pada beban kerja yang dimaksudkan.
Bahagikan beban kerja AI pinggir sebenar anda.
Hantar antara muka penderia, jenis model, kadar data, sampul kuasa dan kekangan penggunaan. Kita boleh memetakannya kepada seni bina MPU/NPU/FPGA dan kelas modul pengiraan yang sesuai.
