ARM9 Pipeline und Interrupts

Gast #1422087
Lesenswert?

Hallo,

ich bin gerade dabei mich in die ARM-Architektur einzuarbeiten und habe 
einige Fragen zu den Interrupts:
Wie werden Interrupts in die Pipeline hinzugefügt? Werden diese an 
letzter Stelle hinzugefügt, oder wird ein Interrupt sofort ausgeführt?
Die Frage stellt sich mir, da ich einige Stellen im Code habe, die auf 
gemeinsame Variablen zugreifen und ich hier die Interrupts kurzzeitig 
deaktivieren will. Auf was muss ich hier achten?
Und kennt jemand eine C bzw. Header-Datei um auf den CP-15 
zuzugreifen(Enable/Disable ICache,DCache & MMU, Invalidate Cache, TLB, 
Instruction Memory Barrier, ...)

Danke
Persönliche Seite #1422131
Lesenswert?

Mars schrieb:
> Wie werden Interrupts in die Pipeline hinzugefügt? Werden diese an
> letzter Stelle hinzugefügt, oder wird ein Interrupt sofort ausgeführt?

Ein Interrupt wird immer dann ausgeführt, wenn ein Befehl die
Execution Stage der Pipeline verlässt.

> Die Frage stellt sich mir, da ich einige Stellen im Code habe, die auf
> gemeinsame Variablen zugreifen und ich hier die Interrupts kurzzeitig
> deaktivieren will. Auf was muss ich hier achten?

Auf nichts. Beim ARM7 gibt es da Besonderheiten, vom ARM9 ist mir
nichts dergleichen bekannt.

> Und kennt jemand eine C bzw. Header-Datei um auf den CP-15
> zuzugreifen(Enable/Disable ICache,DCache & MMU, Invalidate Cache,
> TLB, Instruction Memory Barrier, ...)

Leider nicht.

Gruß
Marcus
http://www.doulos.com/arm

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