Verbindungen zwischen CPU und Speicher

 

Die CPU und ihre Speicher müssen elektrisch leitend miteinander verbunden sein. Dies geschieht über drei zu unterscheidende Leitungssysteme, die man Busse nennt.

  • Adressbus
  • Datenbus
  • Steuerbus

 

Die Leitungen dieser Busse führen je nach vewendeter Logikfamilie digitale Spannungen, häufig sind dies die Spannungswerte 0V und 5V, wobei 0V für logisch 0 steht und 5V für logisch 1.
Da es sehr aufwendig ist, auf einem Bus von 16 Leitungen die Signalzustände in Nullen und Einsen anzugeben bedient man sich der Mathematik.
Eine Reihenfolge aus Nullen und Einsen kann man als Zahl auffassen. Zahlen wiederum kann man in andere Zahlensysteme übertragen, die mit weniger Ziffern die gleiche Zahl darstellen.

 

Beispiel:

Umwandlung eines Signalzustandes in eine binäre Zahl und eine hexadezimale Zahl. 

0V  0V  5V  5V  0V  0V  5V  0V  5V  0V  5V  0V  5V  5V  0V  0V = 0011 0010 1010 1100b = 32ACh

 

Der Adressbus

Jeder Computer besitzt Speicherzellen in mehr oder minder großer Zahl. Diese können von ihrer Aufnahmekapazität 8, 16, 32, 64 Bits groß sein. Unabhängig von dieser Aufnahmekapazität muß jede Speicherzelle eindeutig von der CPU angesprochen werden können.
Es darf also nur immer eine Speicherzelle eingeschaltet sein, egal wie viele Millionen Speicherzellen vorhanden sind.

 

Dies geschieht durch eine Anzahl von Leitungen, die an jeder Speicherzelle anliegen. In der Zusammenfassung nennt man diese Leitungen den Adressbus. Jede dieser Leitungen kann ein 0 oder ein 1 -Signal führen. So könnte eine einzelne Leitung 2 Speicher schalten. Zwei Leitungen hingegen 4 und drei Leitungen 8 usw.
Bei 16 Leitungen wie beim 80515 können demnach 216 = 65536 Speicherzellen einzeln ein- oder ausgeschaltet werden, was einem Adressraum von 64kBytes entspricht.

Eine Adresse ist also eine eindeutige Signalkombination aus 0- und 1-Signalen, die auf dem Adressbus übertragen wird und eine von vielen Speicherzellen einschaltet. Diese Signale kommen ausschließlich von der CPU, und gehen zum Speicher. Der Adreßbus ist unidirektional, er arbeitet nur in eine Richtung.

 

Der Steuerbus (Lesen / Schreiben - RW)

Als Bus bezeichnet man normalerweise die Zusammenfassung von Signalen, die logisch zusammengehören, wie z.B. beim Adreßbus.
Beim Steuerbus ist das anders. Hier hat jede Signalleitung für sich eine spezielle Bedeutung. Eine dieser Leitungen ist das Lese- Schreibsignal, kurz R/W –Signal (Read / Write)

Diese Leitung ist logisch auf 1, wenn die CPU eine Speicherzelle lesen will, und 0, wenn sie beschrieben werden soll.
Die CPU setzt dieses Signal immer zusammen mit der Ausgabe einer Adresse. Die Adresse schaltet die Speicherzelle ein und das R/W –Signal sagt der Speicherzelle ob sie gelesen oder beschrieben werden soll.

Die Reaktion der Speicherzelle auf dieses Signal ist, dass sie die Ausgänge bzw. die Eingänge ihrer Flip-Flop-Speicher an den Datenbus legt. Damit ist das dritte Leitungssystem angesprochen, das es zwischen einer CPU und den Speichern gibt.

 

Der Datenbus

Das dritte Leitungssystem in einem Computer ist der Datenbus. Er besitzt so viele logisch zusammengehörige Leitungen, wie die Speicherzellen Flip-Flops bzw. Bits besitzen. Ein 8Bit-Speicher benötigt einen Datenbus von 8 Leitungen, ein 16Bit-Speicher 16 Leitungen usw. Auf dem Datenbus werden die Inhalte von der CPU zu den Speichern und von den Speichern zur CPU transportiert. Dieser Bus arbeitet also in zwei Richtungen, ist demnach bidirektional. Dabei bestimmt grundsätzlich die CPU ob sie den Speicher lesen oder schreiben will. Das tut sie über das Lese- Schreibsignal.

Möchte die CPU lesen, dann legen die Speicher ihre Ausgänge an den Datenbus und will die CPU schreiben ihre Eingänge. Das geht natürlich nur bei RAM-Speichern. Sind wie bei ROM-Speichern keine Eingänge vorhanden, verpuffen die von der CPU gesendeten Daten auf den Datenleitungen, obwohl eine Speicherzelle über den Adressbus eingeschaltet wurde, und das Schreibsignal gesetzt ist.