Tvrtka Google predstavila je otvorenu platformu Coral NPU (Neuronalna procesorska jedinica), koja nudi otvoreni hardverski akcelerator modela strojnog učenja i programski alat za njegovo korištenje s tipičnim AI motorima. Coral se može koristiti kao osnova za izradu energetski učinkovitih sustava na čipu (SoC), pogodnih za primjenu u sustavima interneta stvari, edge računalstvu i na pločama za prikupljanje podataka sa senzora, kao i u potrošačkim uređajima s ultraniskom potrošnjom energije, poput slušalica, naočala za proširenu stvarnost i pametnih satova. Dostignuća projekta dostupna su pod licencom Apache 2.0.
Coral NPU fokusira se na izvođenje AI aplikacija koje neprekidno rade na prijenosnim uređajima s minimalnom potrošnjom energije. Osnovna implementacija Coral NPU osigurava performanse od 512 milijardi operacija u sekundi (GOPS) uz potrošnju od samo nekoliko milivata energije. NPU je dizajniran za fleksibilnu modifikaciju arhitekture prema potrebama proizvođača SoC. Prvi proizvođač koji će početi proizvodnju čipova na bazi Coral NPU bit će tvrtka Synaptics, koja je najavila liniju procesora za uređaje interneta stvari Astra SL2610, koja uključuje podsustav Torq NPU, implementiran na temelju arhitekture Coral NPU.
Među tipičnim primjenama Coral NPU spominje se korištenje AI za obradu slika i zvuka, interakciju s korisnicima i praćenje konteksta. Na primjer, na uređajima se mogu izvršavati velike jezične modele i aplikacije za prepoznavanje lica i objekata, vizualno pretraživanje, prepoznavanje govora, simultano prevođenje, transkripciju govora, isticanje ključnih riječi u govoru, upravljanje pokretima i glasovnim komandama, kao i definiranje aktivnosti korisnika (hodanje, trčanje, spavanje) i tipa okruženja (kod kuće, vani).
U NPU-u je uključena 32-bitna arhitektura skupa instrukcija RISC-V RV32IMF_Zve32x, AXI4 sabirnica, četverostupanjski pipeline za obradu instrukcija s urednim raspoređivanjem, neurednim završetkom izvršavanja instrukcija, četverožična skalarna i dvožična vektorska raspodjela. Procesor podržava SIMD operacije za simultanu obradu 128-bitnih vektora te je opremljen ITCM memorijom od 8 KB za instrukcije i DTCM memorijom od 32 KB za podatke.

NPU se sastoji od tri međusobno povezana procesorska komponenta:
- Jezgra za skalarne izračune – lagani programabilni front-end RISC-V, koji upravlja protokom podataka prema glavnim jezgrama i koristi model „izvršavanje do završetka” (run-to-completion) za osiguranje funkcionalnosti tradicionalnih CPU-a i iznimno niske potrošnje energije.
- Vektorski SIMD koprocesor, koji podržava vektorska proširenja skupa instrukcija RISC-V (RVV v1.0) i omogućava istovremeno izvođenje više operacija na velikim količinama podataka.
- Matrica koprocesor, koji učinkovito izvršava operacije kombiniranog umnožavanja-sabiranja (MAC) i dizajniran je za ubrzanje osnovnih operacija neuronskih mreža.

Za programere aplikacija pripremljen je set kompajlera AI-modela (IREE i TFLM), kompajler programa na jeziku C i simulator. Podržava se kompajlacija modela korištenih u AI-aplikacijama temeljeno na okvirima TensorFlow, JAX i PyTorch. Model se kompajlira u univerzalno intermedijarno predstavljanje, koje se zatim pomoću LLVM pretvara u niskorazinsku instrukcijsku skupinu RISC-V, podržanu u Coral NPU.

Izvor: opennet.ru
