www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Entwicklung ISA-Bus-Karte


Autor: Stephan Müller (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,

ich hab mich bisher bisle in die thematik mit ISA Bus eingearbeitet..
aber ein wichtiges thema ist mir bisher zu kurz gekommen..
und zwar was es mit den Adressleitungen aufsich hat und wie man die
karte auf eine bestimmte IO Adresse einstellt ?

die adressleitungen sind doch da um von der CPU aus das device im IO
adressspeicher anzusprechen oder ?
also wenn die CPU den befehl "out ADDR, al" ausführt z.b.

aber warum dann bidirektional ?
kann ich mit hilfe dieser 20 leitungen auch auf das RAM zugreifen ?
aber das geht dann nur per DMA oder ?
warum sind es eigentlich genau 20 leitungen ?
und wie stell ich meine karte auf eine bestimmte IO adresse ein ?

vielleicht kann mich einer da bisle weiter aufklären
thx!

mfg

Autor: Benedikt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt IOWR, IORD (lesen und Schreiben an IO) und MEMWR, MEMRD (für
Speicher).
Nun nimmst du dir einen 8bit Vergleicher, hängst den an die Leitungen
A2-A9, den Ausgang davon  als CE und hast nun ein Gerät das Zugriff auf
einen Adressbereich von 4 Adressen aus einem Adressraum von 1024 hat
(bei den IO Adressen werden nur die 10 Leitungen verwendet.)

Autor: Gerhard Gunzelmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Stephan

Du brauchst ein Buch mit dem Thema "Grundlagen der
Mikroprozessortechnik". da findest Du dann den Aufbau des Computers,
der aus Mikroprozessor, Speicher und Peripheriebausteinen besteht. Alle
diese Komponenten sind über den Bus miteinander verbunden. Der Bus
wiederum besteht aus den Teilen "DAtenbus", "Adressbus" und
"Steuerbus". der Adressbus selektiert Bauteile und Teile innerhalb
eines bauteils und der datenbus transportiert daten vom Mikroprozessor
und zum Mikroprozessor. Also dein 20 Bit Adressbus selektiert z.B.
einen RAM-Baustein und innerhalb des RAM-bausteins die Adresse 0000,
dort liest oder schreibt dann der Prozessor irgendwelche Daten oder
Befehle. Ob geschrieben oder gelesen wird entscheiden Leitungen vom
Prozessor (Read, Write). Je nachdem, welchen Prozessor man hat, wird
ein Zugriff auf Peripheriebauteile in I/O-Mapping oder in
Memory-Mapping unterschieden. Die Intel-Prozessoren verwenden
I/O-Mapping. das heißt, daß Memory und I/O über separate Befehle und
über separate Leitungen selektiert werden (Memory request, I/O
request). Der Adressbus selektiert dann wieder ein I/O-Bauteil und eine
bestimmte Zelle innerhalb des I/O-Bausteins.
Bidirektional heißt, daß gelesen und geschrieben werden kann, dafür ist
dann wieder die Read/Write - Leitung zuständig.

Ich hoffe, ich habe Dir ein bisschen weitergeholfen.

Gruß
Gerhard

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn ich ins Museum einbreche, dann hole ich mir einen Munch, aber keine
uralt Hardware.

Aber damals hatten die Leute noch Zeit dicke Bücher darüber zu
schreiben, d.h. in der Bibliothek solltest Du fündig werden.

Eine komplette Busspezifikation kurz mal hier im Forum beschreiben zu
wollen, halte ich für witzlos.

Aber das ein 8086 nur 1MB adressieren konnte, daran kann ich mich noch
dunkel erinnern.


Peter

Autor: Gerhard Gunzelmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ganz so ist es nicht, die ISA-Spec ist - elektrisch - bei PC104 immer
noch gültig. Für einfache Steuerungsaufgaben ist so ein System ganz
brauchbar.

Gerhard

Autor: Stephan Müller (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi..

heisst das ich aktiviere einfach ein entsprechendes Bitmuster
auf den Adressleitungen von meiner Karte aus und habe somit meine
Basis IO adresse ?
z.b. 1101001011

thx!
mfg

Autor: Gerhard Gunzelmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vereinfacht: ja

out ADDR, al  bewirkt eine I/O-Adressierung, Adresse ist ADDR (kommt
also z.B. als 1101001011  auf den Adressbus und der Wert in al
erscheint auf dem Datenbus.


Gerhard

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.