Bus (informatica): differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m Bot: template:apostrofo |
Correzioni e completamento sulle modalità di funzionamento dell'indirizzamento CPU e sui bus |
||
Riga 4:
== Caratteristiche ==
Diversamente dalle [[connessione (informatica)|connessioni]] punto-punto un solo bus può collegare tra loro più dispositivi. In pratica è il canale di trasferimento con cui colloquiano le componenti di un [[elaboratore elettronico]]. Le connessioni elettriche del bus possono essere realizzate direttamente su [[circuito stampato]] oppure tramite un apposito [[cavo elettrico|cavo]]. Ciò nonostante, i bus possono essere di due tipi: seriale oppure parallelo. Un bus è di tipo ''parallelo'' quando adotta una [[trasmissione parallela]]. Sono di questo tipo i bus [[Industry Standard Architecture|ISA]], [[Peripheral Component Interconnect|PCI]] e [[Accelerated Graphics Port|AGP]]. Un bus è invece ''seriale'' se adotta una [[trasmissione seriale]]. Esempi di bus seriali sono: [[Serial Peripheral Interface|SPI]], [[I²C]], [[Serial ATA|SATA]], [[PCI Express]], [[USB]], [[LonWorks]], [[KNX (standard)|Konnex]], [[PROFIBUS]], [[Controller Area Network|CAN]]
Principalmente esistono due tipologie di bus in un elaboratore elettronico: il bus interno o FSB (front side bus), e i bus esterni (bus di espansione, USB, etc.). Ci possono poi essere delle varianti ibride, come le porte eSATA con prese esterne.
Il progredire della tecnologia sembra preferire la trasmissione ''seriale'' a quella parallela, parzialmente caduta in disuso sui bus esterni, che talvolta soffre di maggiori ingombri e spesso anche di maggiori costi, mentre nei bus interni è ampiamente impegata, per esempio nel bus PCI Express 4.0, che utilizza uno schema ibrido con un parallelismo di 128 bit (128 linee solo per i dati principali). A livello di connessione e contando le linee di gestione e di alimentazione il totale aumenta, cosicché già una PCI Express da x16 ha 82 pin.
=== Principi di funzionamento ===
Riga 36 ⟶ 38:
== Bus di sistema ==
Il bus di sistema, presente in tutti i microcalcolatori, è composto da
Un bus che collega due componenti appartenenti alla stessa scheda integrata è detto ''bus interno'' (''internal bus'') (di solito proprietario), se collega due componenti generici è detto ''bus esterno'' (''external bus''). Se c'è un solo bus esterno è detto ''bus di sistema'' (''system bus'').
Riga 51 ⟶ 53:
=== Bus indirizzi ===
È il bus (unidirezionale) attraverso il quale la [[CPU]] decide in quale indirizzo andare a scrivere o a leggere informazioni; sia le celle di memoria ([[RAM]]) sia le periferiche di I/O (Input/Output) sono infatti divise in zone e porte, ognuna delle quali ha un dato indirizzo. La memoria viene usualmente suddivisa in segmenti, offset, pagine, e locazioni interne o inter-pagina. Dopo aver comunicato l'indirizzo tramite questo bus, la scrittura o lettura avviene normalmente tramite il bus dati.
Tali caratteristiche possono essere accompagnate dalla presenza di un supporto in parallelo per la paginazione della RAM, che tipicamente consta di una o più unità MMU per paging o per sistema ibrido a segmentazione e paging.
=== Bus controllo ===
Il bus controllo è un insieme di collegamenti il cui scopo è coordinare le attività del sistema; tramite esso, la [[CPU]] può decidere quale componente deve scrivere sul bus dati in un determinato momento, quale indirizzo leggere sul bus indirizzi, quali celle di memoria devono essere scritte e quali invece lette, etc.
Infatti la memoria e tutti gli altri componenti comunicano con la CPU attraverso un unico bus condiviso; questo significa che senza un controllo da parte della [[CPU]] si verrebbero a creare dei [[conflitto (informatica)|conflitti]] e delle [[collisione|collisioni]].
Per agevolare e rendere efficienti i vari processi sui bus, di norma, almeno su computer abbastanza recenti (in passato non era una regola fissa), vengono utilizzati meccanismi di controllo supplementari, quali interrupt hardware (IRQ, ma non NMI, che hanno diversa funzione) e software (int xx, syscall), e soprattutto firmware e device di controllo quali il DMA (Direct Memory Access), gli schemi PIO, la gestione dei PIC in cascata.
== Tipi di bus dati ==
|