Forum: Mikrocontroller und Digitale Elektronik von Neumann (Steuer)bus


von Andi (Gast)


Lesenswert?

Hi,
Habe ein paar Fragen bezüglich dem Steuerbus einer Neumann Architektur.
Manchen Quellen zufolge ist der Adressbus eigentlich nie Bidirektional, 
anders als der Datenbus der immer Bidirektional dargestellt wird (bis 
auf manche Register wie dem Statusregister der ALU wo schreiben jetzt 
nicht wirklich sinnvoll ist, lesen jedoch schon).

Also stimmt das, dass der Adressbus nur vom Steuerwerk beschrieben 
werden kann?

und meine eigentliche Frage, gilt dies auch für den Adressbus?

Wie wird dann ein Interrupt generiert, gibt es da zb eine eigene Leitung 
die ins Steuerwerk führt und die Interruptquellen quasi ver-Odert sind? 
Könnte mir dann vorstellen dass das Steuerwerk dann erst ermittelt 
welcher Interrupt das im speziellen war und gegebenenfalls die 
CPU-Register speichert, den PC auf 0xABCD (Interrupt ABCD) lädt und 
einfach weiter abarbeitet.

Falls mehrere "Dinge" auf den Steuerbus zugreifen können, welcher nutzen 
bringt das? Gibts da irgend ein Busprotokoll a la SPI oder I2C?

von (prx) A. K. (prx)


Lesenswert?

Andi schrieb:
> Manchen Quellen zufolge ist der Adressbus eigentlich nie Bidirektional,
> anders als der Datenbus der immer Bidirektional dargestellt wird

Vorausgesetzt man bleibt im theoretischen Modell und vermeidet 
sorgfältig jeden Kontakt mit der Realität. Denn in Verbindung mit DMA 
wird es komplizierter.

> Also stimmt das, dass der Adressbus nur vom Steuerwerk beschrieben
> werden kann?

Was haben Adressen mit Steuersignalen zu tun.

> Also stimmt das, dass der Adressbus nur vom Steuerwerk beschrieben
> werden kann?
> und meine eigentliche Frage, gilt dies auch für den Adressbus?

<core dump>

> Wie wird dann ein Interrupt generiert, gibt es da zb eine eigene Leitung
> die ins Steuerwerk führt und die Interruptquellen quasi ver-Odert sind?

Ja.

> Könnte mir dann vorstellen dass das Steuerwerk dann erst ermittelt
> welcher Interrupt das im speziellen war und gegebenenfalls die
> CPU-Register speichert, den PC auf 0xABCD (Interrupt ABCD) lädt und
> einfach weiter abarbeitet.

Bei mehreren Quellen kann das z.B. zu verschiedenen Adressen führen.

> Falls mehrere "Dinge" auf den Steuerbus zugreifen können, welcher nutzen
> bringt das? Gibts da irgend ein Busprotokoll a la SPI oder I2C?

???

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Andi schrieb:
> Also stimmt das, dass der Adressbus nur vom Steuerwerk beschrieben
> werden kann?
Ja. Dein Steuerwerk ist der 'Chef im Ring' und bestimmt (bis auf etwaige 
DMA oder Grafik Kontroller), welche Adresse dran ist.
>
> und meine eigentliche Frage, gilt dies auch für den Adressbus?
Jo, was für den Addressbus gilt, gilt auch für den Adressbus.

Andi schrieb:
> Wie wird dann ein Interrupt generiert, gibt es da zb eine eigene Leitung
> die ins Steuerwerk führt

Ja. Ein externer Interrupt ist so eine Leitung.

Andi schrieb:
> Könnte mir dann vorstellen dass das Steuerwerk dann erst ermittelt
> welcher Interrupt das im speziellen war

Da gibt es verschiedene Strategien. Moderne MC wie AVR oder STM32 z.B. 
springen bei einem Interrupt an eine festgelegte Adresse und führen 
dieses Programm aus oder benutzen die Adresse an einem festgelegten Ort 
als Vektor. Es gibt auch die von dir beschriebene Strategie, mir fällt 
aber gerade keine Architektur bis auf Z80 ein, wo das so ist.

: Bearbeitet durch User
von Andi (Gast)


Lesenswert?

Andi schrieb:

>
> und meine eigentliche Frage, gilt dies auch für den Adressbus?
>

Ich Lappen, ob das auch für den Steuerbus so gilt

von (prx) A. K. (prx)


Lesenswert?

ja

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

A. K. schrieb:
>> Also stimmt das, dass der Adressbus nur vom Steuerwerk beschrieben
>> werden kann?
>> und meine eigentliche Frage, gilt dies auch für den Adressbus?
>
> <core dump>

Bwuhahaha, der ist super, A.K.!

von Andi (Gast)


Lesenswert?

Danke für das Stichwort DMA, Arbitrierung ist mein "Busprotokoll"

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.