Stop guessing what′s working and start seeing it for yourself.
Login o registrazione
Q&A
Question Center →

Input-Output-Ports erklärt von Semalt Expert

In Computern kann jedes Gerät (z. B. ein auf einer Erweiterungskarte installierter Controller oder eine Hauptplatine), außer RAM wird von der CPU als Peripheriegerät behandelt. Der Datenaustausch zwischen dem Zentralprozessor und Peripheriegeräten erfolgt über Eingabe-Ausgabe-Ports. IO-Port ist ein Puffergerät oder Register eines Controllers, digitalen Signalprozessors usw., die direkt mit dem Computer-IO-Bus verbunden sind. Über Eingabe-Ausgabe-Ports können Sie eine Vielzahl von internen und externen Geräten an Ihren Computer anschließen, um dessen Fähigkeiten zu erweitern.

Mit den IO-Ports können Sie eine Verbindung zwischen den Geräten und der Software im Computer herstellen. Sie sind den Zwei-Wege-Funkkanälen ähnlich, da der Informationsaustausch in jeder Richtung auf demselben Kanal stattfindet.

Port Adresse

Um den Austausch von Daten zwischen Computergeräten zu steuern, wird jedem IO-Port eine eigene eindeutige Nummer - Port-Adresse zugewiesen. Am PC wird der 16-Bit-Code zur Adressierung der IO-Ports verwendet. Daher gibt es 216 = 65 536 Ports, nummeriert von OOOOh bis FFFFh. Der Standard-IO-Bereich für IBM-kompatible Computer ist 0-3FFh..Dazu gehören Anschlüsse für Tastatur-Controller, Festplatten und Disketten, EGA / VGA-Videoadapter, Soundkarten, serielle und parallele Schnittstellen, Game-Ports und andere Peripheriegeräte. Ein Peripheriegerät kann mehrere IO-Ports verwenden. Beachten Sie, dass Sie tatsächlich Adressen bis zu FFFFh verwenden können. Zum Beispiel haben Ports des WT-Syntheseprozessors der Soundkarte den IO-Bereich 620h-E23h.

Ports werden vom Zentralprozessor beim Ausführen eines Programms adressiert. Um zu vermeiden, dass die spezifische Adresse jedes peripheren IO-Ports während der Programmierung angezeigt wird, sowie um die Adresse in Abhängigkeit von der speziellen Computerkonfiguration sofort zu ändern, wird die IO-Basisadresse verwendet. Die Basisadresse ist jedem Peripheriegerät zugeordnet und entspricht der niedrigsten Adresse in der Portgruppe. Die Adressierung der verbleibenden Ports eines Peripheriegeräts erfolgt durch Angabe des Offsets relativ zur Basisadresse.

Die E / A-Basisadresse des Peripheriegeräts kann eine beliebige Adresse aus dem E / A-Bereich sein. BIOS reserviert einen Teil der IO-Reihe für Standard-Hardware-Geräte, die von anderen Peripheriegeräten nicht verwendet werden können. Zum Beispiel ist für die LPT1-Schnittstelle der EA-Bereich 378h - 37Eh reserviert, in dem die IO-Basisadresse ausgewählt werden kann. Dann wird die Möglichkeit von Konflikten beseitigt, wenn Ports auf Hardware-Software-Ebene adressiert werden. Da drei Register zur Steuerung und Überwachung von LPT1 verwendet werden, gibt es in diesem IO-Bereich 5 mögliche Werte der Basisadresse - 378h-s-37Ch.

Programmierter IO

Für den Datenaustausch mit Ports wird der programmierte Eingang / Ausgang (PIO) verwendet. Es überträgt Wörter mit einer Bittiefe von 8, 16 oder 32 Bit mit String-Befehlen. Das Wort kann für einen oder mehrere Buszyklen mit einer Angabe der entsprechenden Adresse in jedem Speicherzugriffszyklus übertragen werden. Busaustauschzyklen werden während der Ausführung eines IO-Befehls initiiert. Die Anzahl der Zyklen hängt von der Ausrichtung der Adresse entlang der Wortgrenze und der Datenbittiefe des verwendeten Busses ab. Die PIO-Datenaustauschgeschwindigkeit übersteigt die Austauschgeschwindigkeit des Standard-DMA-Kanals (Direct Memory Access).

View more on these topics

Post a comment

Post Your Comment

Skype

semaltcompany

WhatsApp

16468937756

Telegram

Semaltsupport