Raspberry Pi Linux erzielbare Latenz?

Gast #2930956
Lesenswert?

Nach nur 4 Monaten ist mein Raspberry Pi angekommen (wenigstens ist es 
die Rev. 2.0 mit 512MB und extra GPIOs). Ich wollte jetzt ein Projekt 
mit GPIO realisieren das eine Genauigkeit bzw. Latenz von ca. 5 us 
benötigt. Ist das zu realisieren? Sollte mit Linux sein da Netzwerk mit 
Samba vorhanden sein sollte.

Ich würde also einfach unter Raspbian einen Kernel mit PREEMPT_RT 
kompilieren.

Was kann man da erwarten z.B. bezüglich Interruptlatenz? Hat schon 
jemand Erfahrungen?
#2931009
Lesenswert?

Sabine Wolf schrieb:
> Kann man das Teil für Echtzeitzwecke eigentlich auch ganz "nackt"
> programmieren? Also ganz ohne Betriebsystem und so?
> Ich habe nach endlosen Warten meiner auch grad vorgestern bekommen, im
> Juli hatte ich den bestellt.

Sofern du die GPU nicht brauchst sicher. Ist ein ARM. Die GPU ist nicht 
dokumentiert und es existiert nur ein Binary als Treiber, der Rest ist 
Open Source, Doku ist aber nicht verfügbar (für den Normalbürger).



mfg Andreas
Gast #2931014
Lesenswert?

100us? Würg :P Naja, immerhin besser als das was Siemens hinkriegt:

http://www.spiegel.de/wirtschaft/unternehmen/spiegel-neue-ice-modelle-haben-probleme-mit-steuerungssoftware-a-869137.html

Alexander S. schrieb:
> Also mit dem PREEMPT_RT hast du warscheinlich ein Latency von circa
> 100us mit dem PI. Hier gibts Infos dazu
> https://www.osadl.org/Continuous-latency-monitorin...
> . Ansonsten nimm einfach einen DIP AVR (denn kanst sogar direkt über den
> Pi programmieren) und lass den die Ios machen und kommunizier mit SPI
> oder I2C mit dem PI.

Das wird nicht gehen. Das wäre ein relativ komplexes Programm, dass mit 
den GPIOs synchronisiert sein muss. Wer es genauer wissen will: es soll 
eine Emulation der Commodore 1541 Floppy laufen, die über GPIOs an einen 
IEC Bus angeschlossen werden können soll.

Auf Bare Metal wäre das natürlich kein Problem mit dem Timing, aber 
dafür reicht auch ein STM32F4:

http://t-winkler.net/dokuwiki/doku.php?id=1541-emul:start
Gast #2931317
Lesenswert?

Moin,

Heisenberg schrieb:
> Hier ist noch ein interessantes Dokument zu dem Thema:
>
> https://www.osadl.org/fileadmin/dam/rtlws/12/Brown.pdf
>
> Sieht aus als wäre Xenomai die beste Möglichkeit um Linux RT fähig zu
> kriegen.

Kann ich bestätigen. RT_PREEMPT ist zwar auch nicht schlecht geworden, 
aber für härtere Anforderungen ist Xenomai doch noch Nr. 1. Allerdings 
muss man die Gerätetreiber extra dafür anpassen und alle Bremser wie 
printf oder  Zugriffe im Nicht-RT-Bereich sehr gut kontrollieren.
Dann kriegt man Latenzen von wenigen us hin, allerdings nicht auf allen 
Systemen. Linux performt da etwas schlechter als uClinux. Bei 5us bin 
ich skeptisch, der Aufwand, das zu laufen zu kriegen könnte deutlich 
höher über der Programmierung eines FPGA liegen...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren