Gast
#2550884
Hallo zusammen,
ich versuche, mit dem IBM PowerPC Multicore Instruction Set Simulator
(version 2.04) einen PowerPC 405 Multicore zu simulieren und Software
dafür zu entwickeln.
Dabei tritt ein Problem beim atomaren Zugriff auf eine Speicherstelle
auf. Ich verwende dazu die lwarx/stwcx Instruktionen:
loop: lwarx r4,0,r3
cmpi cr0,r4,0x0000
bne ..loop
addi r4,r4,0x0001
stwcx. r4,0,r3
bne loop
Beim steppen durch den Code (mit RiscWatch (Version 7.1.21) gelangen nun
beide Cores in den kritischen Abschnitt.
Weiß jemand, wie die lwarx/stwcx Instruktionen beim PPC405 implementiert
sind? Kann das überhaupt funktionieren? Hat schon mal jemand einen
Multicore PP405 in irgend einer Form ausprobiert?
Ich hatte erwartet, dass der IBM ISS das mit dem PPC405 hinbekommt, der
Simulator heißt schließlich Multicore, nicht Multiprozessor.
Ich bin für jeden Hinweis dankbar.
Viele Grüße