Frage

Vielleicht sollte die Frage sein, sind externe Interrupts überhaupt auf dem PowerPC vektorisiert? Ich habe mich unter http://www.ibm. com / developer / eserver / library / es-archguide-v2.html , 'Buch 3', versucht, herauszufinden, wie der Prozessor die entsprechende Interrupt-Service-Routine in Reaktion auf einen externen Interrupt lokalisiert. Es scheint darauf hinzudeuten, dass, wenn die PPC eine externe Unterbrechung erkennt, ist es die Ausführung 0x0000_0500 nur Sprünge.

ich unter einem Missverständnis sein arbeitend kann, wie die PPC funktioniert. Mit x86, reagiert die Prozessor-Anforderungen zu unterbrechen, mit einem Interrupt-Acknowledge-Zyklus, und erhält ein ‚Vektor‘ direkt aus dem Gerät. Der Vektor (wirklich ein Index), dann erlaubt die CPU eine geeignete Handler-Routine aus seiner Unterbrechungsvektortabelle zu holen. Am wichtigsten ist, diese anerkennen / Vektorholstufe ist ein Hardware-Bus-Protokoll Sache, hat niemand einen Code zu schreiben, um sie geschehen. Der einzige Code, der (lesen, Software) ist die ISR selbst muss geschrieben werden.

Ist die PPC tun etwas ähnliches? Gäbe es eine Tabelle von Vektoren bei 0x500 sein? Oder tut es etwas radikal anderes, und Offload die Funktionalität des Vektors an einen externen Interrupt-Controller des Geräts zu bekommen? Ich nehme an, es könnte nur bei 0x500, um Code zu springen, wo eigentliche Software würde dann das (hypothetische?) Abfragen Interrupt-Controller, den Vektor .. zu bekommen und es dann in einer Sprung-Tabelle verwenden, / was-hat -Sie, aber ich kann nicht finden Dokumentation zu überprüfen dies der Fall ist, eine oder andere Weise.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top