2017-01-24 1 views
0

Okay, ich verstehe, wie die Übertragung in "Isolated I/O" differenziert wird, indem verschiedene Steuerleitungen für I/O und Speicherübertragung verwendet werden. Aber wie unterscheiden wir die Übertragung in Memory mapped I/O teilen sie die gleichen Steuerleitungen. und auch sagen, welche Art von Bus-Architektur moderne Systeme verwenden (wie der heutige Core i3 oder wie diese Prozessoren) ???Wie unterscheidet Speicher-E/A zwischen Speicher und E/A-Transfer?

Dank

Antwort

1

Sie verschiedene Zahlen auf Ihrem Festnetztelefon anrufen können, aber die „Steuerleitungen“ sind die gleichen für jede Zahl.

Sie können Pakete über die Netzwerkkarte an verschiedene Computer senden, die "Steuerleitungen" sind jedoch für jedes Paket gleich.

Sie können von zu Hause aus zu verschiedenen Zielen fahren, die "Steuerleitungen" sind jedoch für jedes Ziel gleich.

In einem Wort: Routing.

Für MMIO ist das gleiche, die Adresse bestimmt, welche Route der Schreibvorgang dauern wird.
Ich habe die typischen Verbindungen aufgelistet, die von einer modernen x86-CPU in this other answer of mine verwendet werden.

+0

okay, passiert es so in 8086 Mikroprozessor: wenn die letzten 4 Bits eines 16-Bit-Befehls (der im Adreßbus ist) gleich der Binärfolge "1 1 1 1" ist, dann ist es ein I/O-Befehl (was bedeutet, dass die Daten im Datenbus für E/A sind) und wenn es gleich der binären Sequenz 0 1 0 1 (1 oder 0 und irgendein 3 Bit kleiner als 1 1 1) ist, dann ist es ein Speicherbefehl (was Daten in Datenbus bedeutet ist für die Erinnerung) ??? –

+0

@Ahti MMIO und isolierte IO sind verschiedene Dinge. Ansonsten kann ich deine Folgefrage nicht wirklich verstehen. Wenn Sie Google für "Intel Manual 2" aufrufen, finden Sie die Referenz für alle Anweisungen, einschließlich des Maschinencodes. Ich habe mir nicht die Mühe gemacht zu sehen, ob der ursprüngliche 8086-Befehl ein einfaches Dekodierungsschema für IO/mem-Befehle hatte. Der Opcode-Raum ist oktal sinnvoll, Sie können diesen Ansatz ausprobieren. –

Verwandte Themen