Budžet vam je $10 i želite da nabavite RISC-V SBC koji može da pokrene Linux u terminalu, ima Ethernet, Wi-Fi i Bluetooth, i želite da povežete dve MIPI kamere i treba vam GPIO sa PWM, I2S, UART, SPI i audio ulazima i izlazima. Da postoji SBC koji odgovara tom opisu: Milk-V Duo S sa Sophgo SG2000 RISC-V+ARM+8051 procesorom i 512 MB RAM-a.
Ne samo da postoji, već i lepo radi i ima podršku velikog broja članova zajednice otvorenog koda. Milk-V kompanija nam je poslala jedan primerak kako bi se upoznali sa njihovom vizijom ekonomičnog SBC-a mešane arhitekture.
Prvo što uvek pogledamo je SoC. Ovde je Sophgo SG2000. U Milk-V DUO 256M smo se susreli sa SG2002 modelom. Razlika između ova dva SoC-a je praktično u količini RAM-a, koga kod SG2000 ima 512 MB, dok SG2002 ima upola, 256 MB. Druga razlika je u ugrađenom tenzorskom procesoru, koji u SG2000 ima deklarisanih 0,5 TFLOPs (INT8), a u SG2002 je duplo „moćniji“ i postiže 1 TFLOPs (INT8).
Razlika u tenzorskim jezgrima daće nešto sporiji odziv kod machine learning modela i prepoznavanja lica na video strimu. Dvostruko više memorije omogućava Milk-V Duo S mnogo ugodniji rad u Linux terminal okruženju.
Hardver
Sa prednje strane ploče smešten je UF.L konektor za bežičnu antenu koju dobijate uz SBC, budući da na ploči nema hardverski izvedene PCB antene. USB-C ulaz je za napajanje, ali se preko njega može programirati Milk-V Duo S. Pravilo je da se u svakom OS-u inicijalno ovaj port definiše kao USB-NCM (USB network port) i da se preko unapred fiksne adrese 192.168.42.1 preko njega pristupi terminalu. Međutim, ako želimo da koristimo ugrađen USB-A port sa druge strane ploče, moraćemo da USB-C port „promenimo“ u strogo napojni port. Dva sledeća dugmeta su Reset i Boot, sa standardnim funkcijama.
Sa leve strane ploče postavljen je bojom kodirani GPIO port koji pored napojnih pinova (3.3 V i GND) ima i multipleksirane I2C, UART, PWM i SPI pinove u skladu sa definicijom datom na sajtu.
Sa desne strane je takođe GPIO port, ali mu heder nije kodovan bojom. On je takođe sa multipleksiranim pinovima na koje pored I2C, UART i PWM signala mogu da se dobiju i MIPI DSI i audio in/out signali. Vrlo interesantno i korisno ako želite da iskoristite Milk-V Duo S u nekom multimedijalnom projektu sa displejom i zvukom.
Najzad sa zadnje strane se nalaze 10/100 Mb Ethernet RJ45 konektor, ali i USB-A konektor za čiju upotrebu treba onemogućiti protok podataka kroz USB-C konektor. Zanimljivo je da su USB i Ethernet kontroleri u samom SG2000, što je svakako doprinelo kompaktnosti Milk-V Duo S ploče.
Jedini čip koji se na SBC-u vidi, osim samog SG2000 SoC-a je AIC8800D80, dobro poznat Dual Band Wi-Fi 6/Bluetooth 5.4 čip. On se može nabaviti često i kao zasebni modul sa pratećim kolima, ali su ovde svi dodatni elementi implementirani direktno na Milk-V Duo S ploču. Pogled „od gore“ otkriva nam i dva MIPI CSI porta, svaki pozicioniran paralelno sa jednim od GPIO hedera. Veći je namenjen za povezivanje GLAXYCORE CAM-GC2083 2 MP kamere koja može dati sliku rezolucije od 1920 x 1080. Manji MIPI konektor je za povezivanje OmniVision OV5647 od 5 MP sa maksimalnom veličinom slike 2592 x 1944. Kamere mogu da se koriste simultano, jer je prvopomenuta povezana na I2C3 interfejs, dok je druga povezana na I2C2.
Softver
Softver je još uvek bolna tačka RISC-V procesora, mada je primetan nagli porast softverske podrške od kada su se na tržištu pojavili veoma ekonomični procesora sa RISC-V arhitekturom, poput ovog SG200x serije u Milk-V Duo S SBC-u.
Pored zvaničnog OS-a koga sam Milk-V naziva Buildroot i koga možete i sami da kompajlirate na bilo kojoj Ubuntu 22 mašini, pa čak i na Ubuntu virtualnoj mašini na PC računaru. Ako se odlučite za zvaničan imidž, neće moći da koristite APT instaler i to naviklima da taj pristup može biti problem pri radu. Kompajliranje programa i razvoj u svakom slučaju, zbog snage samog SG2000 SoC-a treba raditi na Ubuntu PC-u, pa nedostatak C kompajlera neće biti problem. Ističemo prisustvo python interpretera kao i neophodnih alata za mrežu i generalno editovanje.
Mi smo isprobali i par OS imidža koje su uradili drugi ljudi. Neki korisnici ne vole gotove amaterske imidže, pre svega zbog bezbednosti. Naš stav je da ako koristite za edukativne ili mejkerske svrhe, neće biti mnogo štete i ako neka informacija iscuri, ali ako se krenuli u realizaciju nekog sopstvenog projekta koji ima i ekonomsku odrednicu, mislimo da je bolje da se držite Buildroot OS-a koji je dao Milk-V ili možda još bolje da sami napravite sopstveni OS prilagođen vašim realnim potrebama.
Nama se za ovu platformu, ali i inače za slabije RISC-V platforme, preporučujemo Fedora Linux. Veoma se ugodno radi, ima implementiran dnf menadžer softvera, a SG2000 je dovoljno snažan da u terminalu radi prijatno brzo.
Zaključak
Milk-V Duo S može ličiti na Milk-V 256M sa USB & Ethernet IO pločom. Cenovno bi bili praktično u istom rangu, ali ovde dobijate kompaktnije rešenje sa dvostruko više memorije i mogućnošću povezivanja dve kamere.
Za $10 ovo je sigurno Best buy RISC-V SBC koji može pokrenuti Linux terminal i imati bežične komunikacije. Za cenu razvojnog sistema nekog mikrokontrolera, dobijate SoC na 1 GHz sa tri jezgra: jednim za RTOS, drugo RISC-V/ARM za rad i treće 8051 za Low power rad. Mada verujemo da nećete koristiti Milk-V Duo S radno jezgro za ARM rad, ima po nama mnogo bolje ARM-podržanih rešenja.
Milk-V Duo S nam se ipak više dopada od Duo 256M modela, baš zbog svoje integralnosti na jednoj ploči i nama ipak iznenađujuće lake upotrebe i odlične dokumentacije za rad sa primerima na sajtu.
Ne vidimo da će malo verziraniji mejker imati problem da se poigra sa RISC-V arhitekturom i da će pored mnoštva primera koje je proizvođač dao rad na Milk-V Duo S svakome ko je ljubopitljiv biti veoma prijatno putovanje po nepoznatoj arhitekturi. Nama se dopao ovaj mališan, verujemo da nije ovo jedna od najpopularnijih RISC-V ploča na tržištu, već neko vreme.