Synchronisation von Multiprozessor Systemen

Gast #2943426
Lesenswert?

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
#2943432
Lesenswert?

Wenn dir die Grundlagen zu altbacken sind, wie wärs mit Modernem:
http://www.realworldtech.com/haswell-tm/
http://www.realworldtech.com/haswell-tm-alt/

Grundlagen ändern sich nicht so schnell wie die Fab-Technik. Was dazu 
vor Jahrzehnten geschrieben wurde ist deshalb nicht veraltet. Und dürfte 
als Basis zum Verständnis von TM und dessen Motivation nicht völlig 
unwichtig sein.
#2943947
Lesenswert?

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
Lesenswert?

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
Lesenswert?

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

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