ARM singleboard Linux/Sata/Wifi

Fórumok

Sziasztok,

Keresek egy olyan arm alapú singleboard-ot, amin van sata, wifi, usb2 vagy 3 interface és elfut rajta a mainline kernel, ha lehet Debian-nal.
Egy adatrögzítőhöz kellene, nem lesz display hozzá, a user interface wifi-n keresztül egy android-os tablet lesz.

Hadd válaszoljak előre a kérdésekre:

- azért arm alapú, mivel az x86 PC alaplapok egyre használhatatlanabbak, pl. az interrupt nem igazi interrupt, hanem polling(!), ezért a latency 5-40mS
- azért szeretnék mainline kernelt, mert pl. Freescale saját kernelével nagyon szomorú tapasztalataim voltak. 3 verzóként léptették fél éves átfutással,
nagyon bug-os volt.
- azért kell sata és nem sdcard, mert nagy tömegű adatot kell rögziteni viszonylag nagy sebességgel, ezért SSD-t szeretnék tenni rá.

Hozzászólások

"nagy tömegű adatot kell rögziteni viszonylag nagy sebességgel, ezért SSD-t szeretnék tenni rá." - Szerintem I/O-ban el fog vérezni az ARM... :( De ne legyen igazam.

pl. az interrupt nem igazi interrupt, hanem polling(!)

Ez meglepett! Miért csinálják így? Az x86 CPU-k szoktak tudni IT-t, a körítésben sem érzem ezt bonyolultnak. A legegyszerűbb 8 bites mikrokontrollerek többsége is tud IT-t kezelni, egyedül az extrém kicsik nem.

Ha tudsz erről valamit, örömmel olvasnálak!

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

1997-ben csináltuk az eszköz első 1.0-ás verzióját még dos alatt 486-os alaplappal. Akkor az IT még rendben volt, kis, fix latency kb 1-5mS.
Egy mikrokontroller rs485-ön küldözgeti a csomagokat, ezt kell elkapkodnom és diszkre mentenem.

Aztán 2007-ben egy 10 éves vas kidőlt és vettünk a boltban egy akkor divatos pentium lapot. Ott tűnt fel a jelenség, hogy ugyanaz a szoftver midig lekésik, holott a vas sokkal jobb. Elkezdtünk szkópolni, csináltam egy próbát, az egyik csatornára a fizikai hw interrupt-ot, a másikra a szoftverem interrupt rutinjának az elején egy pin 010 átmenetét tettük. A latency 5-40 mS-ig változott!

Akkor kutatgattam kicsit és kiderült, hogy túl sok az interrupt, az alaplap gyártók nem akartak további kaszkádolható IT controllereket beépíteni, ezért egy huzalozott vagy-ra kötötték a kevésbé fontos it-ket (párhuzamos, soros, game stb), aztán az IT hatására elindul egy polling, ami lekérdezi, hogy ki kérte az interruptot. Ez úgy emlékszem, a PCI south bridge PCI-ISA implementáció "újítása" volt. Azt hittem, dobok egy hátraszaltót.

Tehát nem a cpu baja, hanem a az alaplap gyártók így akarnak spórolni, a processzor így is elég gyors, észre sem fogják venni. Amúgy, ha nem 5 mS-ként jönne 80 byte fel sem tűnt volna.

Ezért inkább arm.

Aha. Tehát valójában van IT, csak nem vektoros, így nem tudni, ki okozta azt, s a kiszolgáló rutinban kell kideríteni, ki kérte. Ha jól csinálják meg a hardware-t, ennek kinyomozása azért igen gyorsan megoldható. Ha meg konkurens több IT, akkor teljesen hardware-es esetben is ki kell várni, míg az egyik kiszolgálása befejeződik, hacsak nem engedünk IT-be IT-t csapni, bár ekkor vigyázni kell, ki, mit, hogyan ment.

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Dehogynem, csakhogy a ver 1.0 ugy keszult, hogy nincs ra szukseg (1997). Aztan 10 evvel kesobb csak pc-t akartunk cserelni alatta, sem hw sem sw lehetoseg nem volt a fifo-ra. Azota persze van fifo, de megiscsak hulyen hangzik, hogy egy real-time rendszer valaszideje pc alapon 40mS, megagiga orajel es memoria mellett.

Mikrokontrolleren van, hogy úgy oldom meg az efféle problémákat, hogy a periféria kéri az IT-t, a kiszolgáló rutinban a legszükségesebbeket elintézem, s egy flag-et beállítok, hogy akció van. Az alap szintről a fő végrehajtó ciklusból pollingolom a flag-emet, ha az be van billentve, akkor a hosszadalmasabb dolgot itt intézem, illetve visszatörlöm a flag-et. Ezzel áttoltam a döglött lovat a fő végrehajtó ciklusba, ebbe bátran csapkodhat a többi IT, s nem az időkritikus IT-rutinban molyolok hosszadalmasan.

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

de mi a baj az usb-s wifivel?
Teljesítmény kell? ASUS USB-N10 Wireless-N150 10MB/sec-kel másol a laptopomban.
Vagy stabilitás kell? Van egy arm-es embedded kütyüm, amiben egy usb-s Ralink chipes wifi stick van. Évek óta fut stabilan. 2.4-es kernellel :S
szerk: bocsánat, eredetileg volt csak 2.4-es rajta, most 2.6.32.3 van

Én fél éve ezt vettem meg:http://evercu.be/
Sheevaplug + sata multiport
Egy probléma van az egésszel, mégpedig a melegedés, de extra fan-al sikerült megoldani a normális működést. Jelenleg 2x640GB meghajtó megy lvm2 mirrorban + van mellette 160+320GB hdd az egyéb dolgoknak. 1GB hálózaton 50/60MB-t sikerült kihozni az egészből de akkor már az 1,2GHZ cpu 100%-on pörgött. Amúgy ha Sheevaplug vagy hasonlón gondolkozol akkor mielöbb szerezz be külön adaptert mert a gyáriak döglődnek rendesen.

http://www.wandboard.org/

QUAD: Freescale i.MX6 Quad Cortex-A9 Quad core, 2GB DDR3, GigE, SATA, builtin 802.11n Wifi.
129 USD

Vagy Freescale SABRE Lite amin nincs Wifi, csak PCIe.

Én is ezt akartam javasolni, ráadásul a CPU modul az EDM szabványt követi, tehát a base board helyett gyárthattok akár sajátot, ha szükséges.

Ugyanerre a Freescale SoC-ra épülnek a Technexion EDM moduljai is:
itt
Ezek előnye, hogy van rajtuk CAN PHY, tehát a SoC-nak ezt a képességét is ki lehet használni vele. Az árukat nem tudom, de valószínű 1 db-nál nem annyira baráti, mint a Wandboard.

Szeva Zamek!

Mi lett a vége, jutottál előrébb a Wandboard 3.11-el?
Érdekelne a fejlemény, amit köszönök előre is!
Páka/vfero

hello,

Tavirati stilusban:

harom nap alatt itt volt a board.
Alapbol nem adtak hozza sd kartyat.
Toltottem eloszor egy uborkat.
A dobozban semmi doksi. 10 perc utan talaltam meg, hogy nem az alaplapi sd kartyaba kell bedugni, hanem a hutoborda aljaban van egy kis alig latszo sd foglalat.
Uborka mukodik, de nekem nem grafikus felulet kell, hanem parancssor.
3.0.xx Freescale kernellel allando 2+ load-ot mutat, ennek megfeleloen lustacska. A magas load a kernelbol jon, freescale sajat :(.
Talaltam leirast, debian installra, mainline kernellel, felraktam, szuper.

Wifi klienskent mukodik, de ap-kent nem. A wandboard listan az egyik fejleszto azt mondja, hogy a broadcom nem adja ki hozza azt a firmware-t, ami tudna az ap modot. Talaltam mindenfele firmware-t, de fagy tole a board, ap-t egyik sem tud, szoval szivas.
Ebben 4329 chip van, ami nem eleg, hogy firmware-t ker, hanem meg egy text filet is ami a config-ja. Persze leiras semmi:(

Nekem szerencsere ugy is jo, ha kliens, de a gyartok hulyesegeivel mar nagyon tele a hocipom. Irtam a broadcom-nak, persze semmi valasz.
Gpio-bol sajnos csak 8 db van szabadon, de nekem csak egy kell.
Sata-t meg nem uzemeltem be, eloszor az elso fazist kell megcsinalni.

Amugy nagyon finom joszag, az arat megeri.

Ovakodj a freescale kernelektol :)!

root@arm:~# uname -a
Linux arm 3.12.0-rc6-armv7-x5 #1 SMP Mon Oct 21 22:25:29 CEST 2013 armv7l GNU/Linux

root@arm:~# cat /etc/apt/sources.list
deb http://ftp.de.debian.org/debian/ wheezy main contrib non-free

root@arm:~# w
21:05:22 up 4 min, 1 user, load average: 0.02, 0.06, 0.04
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/1 192.168.1.42 21:02 2.00s 0.06s 0.03s w

sata-t meg nem huztam fel, ki kell nyomoznom, hogy az ssd megy-e egy 5 v-os taprol, mivel a boardon nincs sata tap, csak adat csatlakozo a sata-hoz.
A sata adatrogzites majd a kovetkezo fazisban lesz, ha a megrendelo akarja.