Versuchen, ein Bild von Computerbussen zu verstehen

2699
Tim

In diesem Bild von http://de.kioskea.net/contents/pc/bus.php3 werden die Busse in einem Computer erläutert

Versuchen, ein Bild von Computerbussen zu verstehen

  1. Ich frage mich, ob die schwarze Linie von der CPU zur South Bridge auch ein Bus ist. Es ist nicht im Bild genannt, und wie heißt es?
  2. Sind diese kurzen schwarzen Leitungen von LAN-, SCSI-, ISA-, USB-, IDE-Bussen und wie heißen sie?

    Beachten Sie, dass diese schwarzen Linien, die aus dem Cache der Ebene 2, AGP und RAM stammen, im Bild als Prozessorbus, AGP-Bus und Speicherbus bezeichnet werden.

  3. Überschneidet sich die schwarze Linie von der CPU zur South Bridge mit dem PCI-Bus und dem Prozessorbus?
  4. Wie ist der Datenfluss?

    Ist zum Beispiel mein Verständnis richtig?

    Von der CPU zum Cache der Stufe 2 ist die Route die schwarze Linie, die von der CPU und dem Prozessorbus ausgeht.

    Von der CPU zu AGP oder RAM ist die Route die schwarze Linie, die von CPU, North Bridge und AGP-Bus oder Speicherbus ausgeht.

    Von CPU zu LAN oder SCSI ist die Route die schwarze Linie, die von CPU, North Bridge, PCI-Bus und die schwarze Linie von LAN oder SCSI stammt.

    Von CPU zu ISA, USB und IDE ist die Route die schwarze Linie, die von CPU, North Bridge, South Bridge und die schwarze Linie von ISA, USB oder IDE ausgeht.

    Wie ist der Datenfluss zwischen Nicht-CPU-Komponenten?

Vielen Dank!

10

4 Antworten auf die Frage

16
RedGrittyBrick

Hier ist ein Bild von Ars Technica, das möglicherweise klarer ist

12
LawrenceC

Ein Bus ist nur ein Kommunikationsmittel mit folgenden Eigenschaften:

  • Es können mehrere Entitäten damit verbunden werden
  • Wenn eine Entität eine Nachricht an den Bus sendet oder "etwas tut", kann sie jede andere Entität sehen
  • Schlechte Dinge werden passieren, wenn zwei Entitäten versuchen, zur gleichen Zeit zu kommunizieren
  • Ein Protokoll oder ein Satz von Regeln ist erforderlich, damit alle Komponenten am Bus über ein System verfügen, in dem sie sich abwechselnd verwenden können. Normalerweise unterscheidet sich dieses Protokoll je nach Zweck und Geschwindigkeit des Busses
  • Es wird ein Adressierungsschema verwendet, bei dem Geräte sagen können, wer sie sind und mit wem sie sprechen möchten
  • Schlechte Dinge können passieren, wenn mehrere Entitäten dieselbe Adresse haben
  • Zumindest müssen Entites, die auf dem Bus "sprechen" möchten, nach Aktivitäten suchen, bevor sie versuchen, Daten durch den Bus zu senden
  • Entitäten, die den Bus "hören" möchten, müssen im Allgemeinen auf ihre eigene Adresse achten und nur die für sie sinnvollen Daten erfassen

Wenn Sie über Netzwerkkenntnisse verfügen und die meisten davon vertraut klingen, ist das Konzept ziemlich ähnlich.

Die hellblauen Linien repräsentieren einen Bus. Die dunkelblauen Linien zeigen an, was mit dem Bus verbunden ist.

Um Ihre Fragen zu beantworten:

  1. Sieht aus, als müsste die CPU den Prozessorbus, die Northbridge und den PCI-Bus durchlaufen, um zur Southbridge zu gelangen.
  2. Ich glaube, dass sie Verbindungen zu den Bussen darstellen. Für mich sieht es so aus, als würden die Etiketten die dickeren hellblauen Linien identifizieren. Das Diagramm könnte meiner Meinung nach etwas besser sein. Beachten Sie, dass AGP für "Accelerated Graphics Port " steht. Technisch gesehen handelt es sich nicht um einen Bus, da hier nicht mehrere Komponenten zum Einsatz kommen (einer der Gründe, warum AGP erfunden wurde). Für Software erscheint es jedoch als ein anderer PCI-Bus.
  3. Ich glaube schon. Um auf Southbridge-Komponenten zuzugreifen, müssen IIRC-Gerätetreiber programmgesteuert mit dem PCI-Bus interagieren.
  4. Siehe meinen ersten Absatz. Es ist möglich, dass ein Bus mit einem anderen Bus verbunden ist und die Verantwortung für die Weiterleitung von Daten übernimmt. Dies sind, was "PCI-PCI-Bridge" -Geräte sind, wenn Sie sie jemals im Windows-Geräte-Manager oder in Windows gesehen haben lspci.
2
Anono

In jedem Computer gibt es nur 3 "Busse": Daten, Adresse und Steuerung. Das ist es. Das ist ein sehr vereinfachter Blick von oben. Daten- und Adressbusse sind ziemlich offensichtlich und relativ einfach. Der Steuerbus kann jedoch sehr kompliziert werden, da er so ziemlich alles andere beinhaltet, einschließlich (und möglicherweise besonders) des Timings.

Was ich hier sehe, ist eine grundlegende Systemkarte. Bestimmte Dinge im System sind für bestimmte Ressourcen / Prozesse verantwortlich. Wie zu erwarten, ist die CPU ganz oben auf dem Haufen und übernimmt so ziemlich alles. Direkt unter (in der Hierarchie) befindet sich die North Bridge, die Video und RAM direkt steuert. Die Nordbrücke steuert die Südbrücke indirekt über den PCI-Bus sowie über LAN- und SCSI-Systeme. Die South Bridge steuert jedoch direkt ISA-, USB- und IDE-Geräte. Wenn Sie also Daten von einem IDE-Laufwerk abrufen möchten, würde Ihre CPU durch die North Bridge gehen, die diese dann über den PCI-Bus anfordert, wo die South Bridge wiederum die IDE-Ressource zur Verfügung stellt (oder genauer gesagt die South Bridge) das IDE-Gerät, wann die Informationen auf dem Adress- / Datenbus abgelegt werden sollen (über die die CPU wirklich verfügt).

Sie machen das wahrscheinlich schwieriger, als es sein muss. Die CPU ist immer noch das Herz eines jeden Computers. Daher ist Ihr Diagramm ein schreckliches Beispiel für einen der tatsächlich verwendeten "Busse". Tatsächlich kann das gesamte Diagramm als eine Beschreibung des Steuerbusses betrachtet werden - und nur des Steuerbusses. Es ist ein hervorragendes visuelles Verhalten bestimmter Subsysteme und sogar darüber, was bestimmte Ressourcen direkt steuert. Es gibt jedoch keinerlei Hinweis darauf, was tatsächlich verdrahtet ist oder wie ein ganzer Computer in Bezug auf die Busstruktur wirklich funktioniert.

1
Garrett
  1. Die Northbridge verbindet die Southbridge mit der CPU, sodass zwischen der CPU und dem SB kein direkter Bus vorhanden ist.
  2. Die meisten dieser "Busse" haben ihre eigenen, sich selbst beschreibenden Namen, wie ISA-Bus, PCI-Bus usw. Andere sind weniger offensichtlich, wie der LPC-Bus, der die meisten Geräte mit niedriger Bandbreite mit dem SB und somit der CPU verbindet (z Super I / O-Controller, BIOS usw.).
  3. Nein, dieser "Bus" existiert nicht wie beschrieben. In dem Szenario einer Kommunikation mit den Geräten in der unteren Hälfte des Diagramms müssen Daten jedoch den "Bus" von der CPU zur Northbridge durchlaufen (ich zitiere Bus, weil die NB möglicherweise in der CPU integriert ist) und dann nochmal über, was typischerweise ein PCI-Bus zum SB ist, und umgekehrt für die Rundfahrt.
  4. Es gibt keinen einfachen Weg, diese Frage zu beantworten, da Prozessoren heutzutage komplexer werden und unterschiedliche Ansätze für den Speicher-, Bus- und Cache-Zugriff verwenden. Die meisten modernen Prozessoren verfügen über integrierte Speichercontroller, sodass für DMA keine Verbindung mit der Northbridge erforderlich ist. Beispielsweise kommunizieren Intels neue Prozessoren mit dem QPI-Bus mit einem Chip, der einer herkömmlichen Northbridge ähnelt, mit dem Unterschied, dass ein Speichercontroller fehlt und die CPU über den QPI-Bus kommuniziert, der den herkömmlichen Frontside-Bus [FSB] ersetzt.

Ich denke, dieses Bild aus Wiki könnte ein nützlicheres mneonmisches Gerät sein, von dem Sie lernen können: http://upload.wikimedia.org/wikipedia/commons/b/bd/Motherboard_diagram.svg (SVG-Dateien können nicht eingebettet werden).

Vielen Dank! (1) "Die meisten modernen Prozessoren verfügen über integrierte Speichercontroller, sodass für DMA keine Verbindung mit der Northbridge erforderlich ist". Mit "DMA" meinen Sie CPU-Zugriffsspeicher? Ich denke, es bedeutet, dass ein Gerät direkt auf den Speicher zugreift, ohne dass eine CPU dazwischen ist. siehe http://en.wikipedia.org/wiki/Direct_memory_access. Tim vor 11 Jahren 0
(2) "Daten müssen durch den" Bus "von der CPU zur Northbridge gehen (ich zitiere Bus, weil der NB in ​​der CPU integriert sein kann) und dann wieder über einen PCI-Bus, der typischerweise zu dem SB gehört. Im Wikipedia-Bild wird die Verbindung zwischen NB und SB als interner Bus bezeichnet. Ich frage mich, ob die Kommunikation zwischen NB und SB nicht über PCI erfolgt. Tim vor 11 Jahren 0