Cercare di capire un'immagine dei bus del computer


10

In questa immagine da http://en.kioskea.net/contents/pc/bus.php3 che spiega gli autobus in un computer

inserisci qui la descrizione dell'immagine

  1. Mi chiedo se la linea nera dalla CPU al South Bridge sia anche un bus? Non è nominato nella foto e come si chiama?
  2. Anche quelle brevi linee nere che derivano da LAN, SCSI, ISA, USB, IDE sono anche bus e come si chiamano?

    Si noti che quelle linee nere derivanti dalla cache di livello 2, AGP e RAM sono denominate rispettivamente bus procesor, bus AGP e bus di memoria nella figura.

  3. La linea nera dalla CPU al South Bridge si interseca con il bus PCI e il bus del processore?
  4. Com'è il flusso di dati?

    Ad esempio, la mia comprensione seguente è corretta?

    Dalla CPU alla cache di livello 2, il percorso è la linea nera derivante dalla CPU e dal bus del processore.

    Dalla CPU all'AGP o alla RAM, il percorso è la linea nera derivante da CPU, North Bridge e bus AGP o bus di memoria.

    Dalla CPU alla LAN o SCSI, il percorso è la linea nera derivante da CPU, bridge nord, bus PCI e la linea nera derivante da LAN o SCSI.

    Dalla CPU a qualsiasi ISA, USB e IDE, il percorso è la linea nera derivante da CPU, ponte nord, ponte sud e la linea nera proveniente da ISA, USB o IDE.

    Come sono i flussi di dati tra componenti senza CPU?

Grazie!

Risposte:


12

Un bus è solo un mezzo di comunicazione con le seguenti proprietà:

  • Più entità possono essere collegate ad esso
  • Se un'entità invia un messaggio o "fa qualcosa" al bus, ogni altra entità può vederlo
  • Accadranno cose brutte se due entità tentano di comunicare contemporaneamente
  • È necessario un protocollo o un insieme di regole in modo che tutti i componenti sul bus dispongano di un sistema in cui possano alternativamente utilizzarlo. Di solito questo protocollo è diverso in base allo scopo e alla velocità del bus
  • Viene utilizzata una sorta di schema di indirizzamento in cui i dispositivi possono dire chi sono e con chi vogliono parlare
  • Accadranno cose brutte se più entità hanno lo stesso indirizzo
  • Per lo meno le entità che vogliono "parlare" sul bus devono guardare per vedere se c'è attività in corso prima che provino a inviare dati attraverso di essa
  • Le entità che desiderano "ascoltare" sul bus in genere devono ascoltare il proprio indirizzo e acquisire solo i dati significativi per loro

Se hai qualche conoscenza del networking e la maggior parte di questo suona familiare è molto simile nel concetto.

Le linee blu chiaro rappresentano un autobus. Le linee blu scuro rappresentano ciò che è collegato al bus.

Per rispondere alle tue domande:

  1. Mi sembra che la CPU debba passare attraverso il bus del processore, Northbridge e il bus PCI per arrivare a Southbridge.
  2. Credo che rappresentino le connessioni agli autobus. A me sembra che le etichette stiano identificando le linee blu chiaro più spesse. Il diagramma potrebbe essere un po 'meglio IMHO. Si noti che AGP sta per "Accelerated Graphics Port " - tecnicamente non è un bus in quanto non entrano in gioco più componenti (uno dei motivi per cui è stato inventato AGP). Al software, tuttavia, appare come un altro bus PCI.
  3. Credo di si. I driver di dispositivo IIRC, per accedere ai componenti di southbridge, devono interagire programmaticamente con il bus PCI.
  4. Vedi il mio paragrafo iniziale. È possibile che un bus sia collegato a un altro bus e si prenda la responsabilità di inoltrare i dati attraverso di esso. Questi sono i dispositivi "bridge PCI-PCI" se li hai mai visti in Gestione dispositivi di Windows o lspci.


2

Ci sono solo 3 "bus" in qualsiasi computer: dati, indirizzo e controllo. Questo è tutto. È uno sguardo dall'alto verso il basso molto semplicistico. I bus di dati e indirizzi sono piuttosto ovvi e relativamente semplici. Tuttavia, il bus di controllo può diventare molto complicato poiché comporta praticamente tutto il resto, incluso (e probabilmente soprattutto) il timing.

Quello che vedo qui è una tabella dei sistemi di base. Alcune cose nel sistema sono responsabili di determinate risorse / processi. Come ci si potrebbe aspettare, la CPU è in cima all'heap e si occupa praticamente di tutto. Proprio sotto (nella gerarchia) c'è il ponte nord che controlla direttamente video e RAM. Il ponte nord controlla indirettamente il ponte sud tramite il "bus" PCI e anche i sistemi LAN e SCSI. Tuttavia, il ponte sud controlla direttamente i dispositivi ISA, USB e IDE. Quindi, se volessi recuperare i dati su un'unità IDE, la tua CPU passerebbe attraverso il ponte nord che poi lo richiede sul bus PCI dove a sua volta il ponte sud ottiene la risorsa IDE per fornirli (o più precisamente, il ponte sud dice il dispositivo IDE quando collocare le informazioni sull'indirizzo / bus dati - di cui la CPU ha veramente il controllo).

Probabilmente stai rendendo questo più difficile di quanto debba essere. La CPU è ancora il cuore di ogni computer. Pertanto, il diagramma è un esempio orribile di uno qualsiasi degli "autobus" reali utilizzati. In effetti, l'intero diagramma potrebbe essere considerato una descrizione del bus di controllo - e solo del bus di controllo. È una visuale eccellente su ciò che fanno determinati sottosistemi e persino su ciò che controlla direttamente determinate risorse, ma non vi è assolutamente alcuna indicazione di cosa sia effettivamente cablato o di come un intero computer funzioni davvero almeno in termini di struttura del bus.


1
  1. Il northbridge collega il southbridge alla CPU e quindi non esiste un bus diretto tra la CPU e l'SB.
  2. La maggior parte di questi "bus" hanno i loro nomi auto-descrittivi, come bus ISA, bus PCI, ecc. Altri sono meno evidenti come il bus LPC che collega la maggior parte dei dispositivi a bassa larghezza di banda all'SB e quindi alla CPU (ad es. il controller Super I / O, BIOS, ecc.).
  3. No, questo "bus" non esiste come descritto. Ma nello scenario di una comunicazione con i dispositivi nella metà inferiore del diagramma, i dati devono passare attraverso il "bus" dalla CPU al Northbridge (cito il bus perché l'NB può essere integrato nella CPU), e quindi ancora su quello che normalmente è un bus PCI per SB e viceversa per il round trip.
  4. Non esiste un modo semplice per rispondere a questa domanda poiché i processori oggi stanno diventando più complessi e adottando quindi approcci diversi all'accesso alla memoria, al bus e alla cache. La maggior parte dei processori moderni ha controller di memoria integrati, quindi non è necessario parlare con Northbridge per DMA. Ad esempio, i nuovi processori Intel con il bus QPI parlano con un chip simile a un tradizionale Northbridge, tranne per il fatto che manca un controller di memoria e parla con la CPU tramite il bus QPI che sostituisce il tradizionale bus frontale [FSB].

Penso che questa immagine da Wiki possa essere un dispositivo mneonmico più utile per imparare da: http://upload.wikimedia.org/wikipedia/commons/b/bd/Motherboard_diagram.svg (impossibile incorporare file SVG).


Grazie! (1) "La maggior parte dei processori moderni ha controller di memoria integrati, quindi non è necessario parlare con Northbridge per DMA". Con "DMA" intendi la memoria di accesso alla CPU? Penso che significhi un dispositivo che accede direttamente alla memoria senza CPU nel mezzo. vedi en.wikipedia.org/wiki/Direct_memory_access .
Tim

(2) "i dati devono passare attraverso il" bus "dalla CPU al northbridge (cito il bus perché l'NB può essere integrato nella CPU), e poi di nuovo su quello che normalmente è un bus PCI all'SB". Ma nell'immagine di Wikipedia, la connessione tra NB e SB si chiama bus interno. Mi chiedo se la comunicazione tra NB e SB non è tramite PCI tra?
Tim
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.