Un bus indirizzi è un bus del computer utilizzato per indirizzare la memoria principale del sistema. In molti controller integrati e in alcuni computer meno recenti, il bus degli indirizzi del processore è collegato direttamente ai chip di memoria. La maggior parte delle schede madri desktop e server include il bus degli indirizzi nel bus di memoria tra il chip del controller di memoria e la memoria di sistema. Il bus degli indirizzi viene utilizzato da un processore per indicare la posizione di memoria da cui sta per leggere o scrivere dati. Alcuni processori possono anche usarlo per indicare una porta di input/output che sta per essere letta o scritta.
Alcuni computer hanno connessioni dirette dal bus degli indirizzi del processore e altri dispositivi di sistema alla memoria principale. Molti controller periferici possono condividere la memoria di sistema con il processore utilizzando una tecnica chiamata Direct Memory Access (DMA). Una rete, un disco rigido o un controller grafico può essere un dispositivo abilitato per DMA. Ciò consente al controller di trasferire i dati da e verso il sistema più velocemente rispetto all’invio tramite il processore un pezzo alla volta.
Indipendentemente dal fatto che l’indirizzo fisico provenga dal processore o da un dispositivo DMA, è agganciato al bus degli indirizzi. Questa azione avvisa la memoria che sta per essere effettuata una richiesta di lettura o scrittura per quell’indirizzo di memoria. Se è in corso un’operazione di scrittura, i dati da scrivere vengono agganciati al bus dati e viene attivato un segnale di scrittura in memoria. È possibile eseguire un’operazione di lettura attivando il segnale di lettura della memoria e leggendo il bus dati.
La maggior parte dei server e desktop compatibili con personal computer (PC) utilizza un chip controller di memoria separato dal processore principale. Questo controller comunica con la memoria di sistema principale tramite il bus di memoria. Questo bus include il bus indirizzi, bus dati e molti segnali di controllo. Il controller di memoria si trova nel dispositivo Northbridge e si interfaccia con il processore principale utilizzando il bus front-side (FSB).
Il controller di memoria Northbridge e l’FSB possono creare un collo di bottiglia in alcuni sistemi, rallentando l’accesso alla memoria del processore. Per questo motivo, la memoria cache ad alta velocità di un sistema utilizza un bus cache completamente separato e più ampio. La cache è collegata direttamente al processore tramite questo bus, bypassando completamente l’FSB e il Northbridge. Il bus cache, noto anche come bus back-side (BSB), funziona esclusivamente come bus indirizzi, bus dati e bus di controllo per la memoria cache.
Alcuni processori compatibili con PC includono un controller di memoria nel processore principale stesso. Questo controller accede direttamente alla memoria di sistema principale, senza utilizzare l’FSB o il dispositivo Northbridge. Rimossi questi colli di bottiglia, il processore impiega meno tempo ad attendere gli accessi alla memoria del sistema principale. Anche la memoria cache è spesso inclusa in questi processori e qualsiasi cache esterna è accessibile tramite il bus cache.