Synchronisation von Multiprozessor Systemen

Gast #2943426
Guten Tag,

Ich möchte zwei (oder mehrere ) Microprozessoren software mäßig 
synchronisieren. Am besten ohne Interrupts zu verwenden.

Ich weiß, dass dies ein schwieriges Unterfangen werden kann.

Kennt jemand entsprechende Literatur zu diesem Thema.

Hab ein paar gefunden, aber die sind doch recht alt ( 1986 -1994 )


Danke für die Antworten


Euer Peter
#2943947
Was soll denn "software mäßig synchronisieren" genau heißen? Mutex, 
Spinlock, sind CPUs mit Write Reordering und Caches im Spiel?

Davon abgesehen bist du auch mit "alter" Literatur gut versorgt, 
wirklich grundlegend ändert sich da nicht so viel in der Zeit. Höchstens 
verlagern sich die Schwerpunkte bei der Optimierung.
Gast #2944564
Da müsste man schon die Aufgabe im Detail näher beleuchten. geht es um 
resource sharing oder nur um parallels Arbeiten mit Daten und 
Signalaustausch?

Ein Tipp von mir: Bevor Du zu akademische idealisierte und komplexe 
Lösungen favorisierst, bedenke, dass die ganze Sosse auch getestet und 
validiert werden muss und je komplexer der mögliche Handlungsablauf, 
desto schlimmer wird das.

Erfahrungsgemäss sind die akademisch perfekten Lösungen, die zum besten 
Datendurchsatz führen hernach ein Killer in der IB und der Zulassung.

Einfacher ist oft besser! Will heissen:

Strenge Aufteilung der Aufgaben der CPUs / DSPs, wenige Überschneidung, 
keine zu klein gehacketen Prozesse mit viel ausdrücklichem 
Synchronisationsaufwand. Das BEste ist da immer noch C mit seiner 
impliziten Synch druch den vorgegeben Ablauf.


Wenn Du dann ein System beisammen hast, klicke Dir mal die gesamtem 
Szenrien an möglichen Fehlern und Verschachtelungen zusammen und 
überlege Dir, wie man das Testen kann.
Gast #2944897
Entschuldigt meine ungenauen Angaben.

Ich habe zwei Boards mit jeweils einem MPC drauf. Die sind über sRio 
verbunden. Ich schreibe einen Treiber, der einer Applikation die 
validierung von Daten auf Gültigkeit erlauben soll. D.h er gibt den 
Daten einen Timestamp.

Es muss hierbei der Drift der beiden Boards ausgeglichen werden.

Es wär einfach mit dem NTP oder PTP, Ich möchte aber eine Lösung die 
möglichst ohne interrupts auskommt.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 13 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.