Forum: Mikrocontroller und Digitale Elektronik System on a Chip für diy bedarf


von Stefan S. (neocortex)


Lesenswert?

Ich möchte für ein Projekt einen "Einplatinencomputer" bauen.

Stellt euch das nicht all zu groß vor, ich brauche aber einen soc, der 
groß genug ist um ein normales linux laufen zu lassen. Aber ich kann 
leider nur manuell also mit Lupe und heißluft löten.
Auf das Board soll dann noch ein fpga, aber das ist dann eine andere 
Story.

Wäre schön, wenn es hauptsächlich um das soc gehen würde. 😉

Vielen Dank im Voraus

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Allwinner A13 ist in einem selber-loet-freundlichen Gehaeuse. Keine 
Ahnung, ob das Linux, was auf dem laeuft, "normal" genug fuer dich ist. 
Und ob du genuegend Doku dazu herkriegst.

Gruss
WK

von 100Ω W. (tr0ll) Benutzerseite


Lesenswert?

Warum nimmst du kein Rpi-Compute-Module?

von Stefan S. (neocortex)


Lesenswert?

Zumindest als prototyp könnte ich das machen.
Ich glaub das ist auch das einfachste.

Eigentlich war der Plan, dass es so klein leicht und energiesparend wie 
möglich wird.

von Wolfgan P. (Gast)


Lesenswert?

Trenz Elektronik?

von Dergute W. (derguteweka)


Lesenswert?

Stefan S. schrieb:
> Zumindest als prototyp könnte ich das machen.
> Ich glaub das ist auch das einfachste.
>
Das ist bestimmt das billigste und schnellste.
Am besten gleich irgendein Board mit FPGA mit eingebautem ARM-Gedoens. 
Dann muss man das FPGA nicht noch extra dranbasteln.

> Eigentlich war der Plan, dass es so klein leicht und energiesparend wie
> möglich wird.
so "irgendwas wie moeglich" ist immer ein Scheiss-Plan.

Gruss
WK

von Stefan S. (neocortex)


Lesenswert?

Es geht drum, dass wir das als Mainboard für eine Drohne benutzen 
wollen...

Und da ist jedes gramm wertvoll.

Garantiert wäre ein fpga mit einem CPU Kern und RAM drauf das beste. 
Aber auch da hab ich keinen richtigen Überblick was es gibt.

von Thomas (Gast)


Lesenswert?

Dann nimm einen NanoPi NEO Air-LTS
Der hat alles was du brauchst....
SPI I2C USB Seriell   Linux     + WLAN

8 Gramm    und alles ist fertig

https://www.friendlyarm.com/index.php?route=product/product&path=69&product_id=151

Gruß Thomas

von Gerd E. (robberknight)


Lesenswert?

Stefan S. schrieb:
> Aber ich kann
> leider nur manuell also mit Lupe und heißluft löten

Wenn Du bisher nicht anders Löten kannst, empfiehlt es sich das zu 
lernen. SoCs sind fast alle in BGA, DRAM genauso. Du schränkst Deine 
Möglichkeiten sonst extrem ein.

Hier ist ein sehr guter Artikel zu dem Thema mit Vergleich der 
verschiedenen SoCs, Anforderungen, Designprozess etc.:
https://jaycarlson.net/embedded-linux/

von M. Н. (Gast)


Lesenswert?

Wenn du einen SoC und ein FPGA brauchst, würde ich dir empfehlen einen 
Xilinx (Zynq) oder Altera SoC (Cyclone V Soc) zu nehmen. Diese vereinen 
ein ARM-SoC mit einem FPGA in einem Chip.

Aber da ist quasi nichts bastlerfreundlich. Alles im BGA. Für ein Linux, 
das auch Spaß machen soll, brauchst du auch einiges an RAM. Es ist zwar 
theoretisch möglich ein Linux auf ein paar MB abzuspecken, aber das ist 
einfach kein Linux mehr, imho. Mindestens 128 MB RAM sollten es schon 
sein. Die gibt es dann auch wiederum nur im BGA. Und das Routing ist 
nicht 100 % trivial.
Wenn man sichetwas an die Dev Boards hält, kann man auch mit recht 
überschaubarem Aufwand ein Beispiellinux für ein eigenes Board umbiegen.

Wenn du dir zutraust so ein Board zu designen und manuell zu bestücken 
(Haben wir an der Uni gemacht: Cyclone V SoC + DDR3 RAM) kann das schon 
gehen, macht aber auch eher wenig Freude. Lieber bestücken lassen. Um 
das System kennenzulernen ist sowieso ein Dev-Board ratsam, um mögliche 
HW-Defekte auszuschließen und mit der SW zu spielen. Ein embedded Linux 
auf custom hardware braucht sehr viele Nerven.

Wenn du wiklich was selbst basteln willst, wäre es bspw. auch möglich 
dir ein SoM (System on Module) mit einem ARM + RAM + SDKarte / Flash zu 
kaufen und dieses Modul auf eine eigene Platine zu stecken auf der dann 
ein kleinerer FPGA sitzt.

Sowas wäre so ein System on Module: 
https://www.variscite.de/product/system-on-module-som/cortex-a9/var-som-solo-cpu-nxp-imx6

Soll es doch ein SoC FPGA (Zynq oder ä.) sein bieten auch verschiedene 
Hersteller Module an: Bsp: 
https://shop.trenz-electronic.de/en/TE0715-04-15-1I-SoC-Module-with-Xilinx-Zynq-XC7Z015-1CLG485I-1-GByte-DDR3L-4-x-5-cm

Alternativ: Ein Raspberry Pi Zero + FPGA?

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Stefan S. schrieb:
> Eigentlich war der Plan, dass es so klein leicht und energiesparend wie
> möglich wird.

Stefan S. schrieb:
> Es geht drum, dass wir das als Mainboard für eine Drohne benutzen
> wollen...

Und warum muss das ganze für den Einsatz in einer Drohne möglichst 
energiesparend sein? Es gibt doch wohl kaum eine andere Anwendung, bei 
der man so viel Energie und frische Luft zur Kühlung im Überfluss hätte.

"Möglichst energiesparend" bedeutet heutzutage, die Leistungsaufnahme 
von Mikrowatt oder Milliwatt auf Nanowatt oder darunter zu drücken. Das 
bedeutet im konkreten Fall, unnötige Einschränkungen bei der Auswahl 
eines SoC oder FPGA zu machen.

Ich schlage auch vor, ein fertiges Zynq-Aufsteckmodul von Trenz o.ä. zu 
verwenden. Die hierfür nötigen Fine-Pitch-Buchsenleisten im 0,5mm-Raster 
kann man noch ganz gut per Hand unter dem Mikroskop löten.

von Stefan F. (Gast)


Lesenswert?

100Ω W. schrieb:
> Warum nimmst du kein Rpi-Compute-Module?

Thomas schrieb:
> Dann nimm einen NanoPi NEO Air-LTS

Stefan S. schrieb:
> Eigentlich war der Plan, dass es so klein leicht und energiesparend wie
> möglich wird.

Hast du denn einen Plan, wie du es noch kleiner und energiesparender 
hinbekommen willst? Du wirst dich bei einem Eigenbau wohl auch an der 
Entwicklung des Linux Kernels beteiligen müssen, denn der schreibt sich 
nicht von selbst.

Warum willst du denn Linux verwenden? Ist dir bewusst, dass Linux nur 
sehr bedingt Echtzeittauglich ist? Die Steuerung der Antriebe dürfte 
damit extrem schwierig werden.

von M. Н. (Gast)


Lesenswert?

Stefan ⛄ F. schrieb:
> Du wirst dich bei einem Eigenbau wohl auch an der
> Entwicklung des Linux Kernels beteiligen müssen, denn der schreibt sich
> nicht von selbst.

Naja. Wenn der Chip grundsätzlich unterstützt wird ist das lediglich ein 
grafisches kongfigurieren + devicetree zusammenkopieren. In der Regel 
wird bei Uboot mehr Aufwand fällig.

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Stefan ⛄ F. schrieb:
> Warum willst du denn Linux verwenden? Ist dir bewusst, dass Linux nur
> sehr bedingt Echtzeittauglich ist? Die Steuerung der Antriebe dürfte
> damit extrem schwierig werden.

Naja, auf vielen Mehrkern-ARMen kann man ja mittels OpenAMP usw. einen 
Prozessorkern vom Linux-System abkoppeln und darauf eine separate 
Software laufen lassen. Allerdings ist das ganze nicht unbedingt eine 
Programmierübung für Anfänger.

von S. R. (svenska)


Lesenswert?

Stefan ⛄ F. schrieb:
> Warum willst du denn Linux verwenden? Ist dir bewusst, dass Linux nur
> sehr bedingt Echtzeittauglich ist? Die Steuerung der Antriebe dürfte
> damit extrem schwierig werden.

Der FPGA neben dem SoC ist definitiv echtzeitfähig.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.