Bus (informatica): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
mNessun oggetto della modifica
Nessun oggetto della modifica
Etichette: Modifica visuale Modifica da mobile Modifica da web per mobile Link a pagina di disambiguazione
 
(31 versioni intermedie di 21 utenti non mostrate)
Riga 1:
{{U|verso=da|Ordine dei bit|informatica|settembre 2023}}
{{F|protocolli di rete|luglio 2009}}
[[File:ST-506 MFM Twin Cables.xcf|thumb|upright=1.4|Esempio di bus o [[trasmissione parallela|collegamento parallelo]] (nastri blu) tra dueun hard disk [[Seagate ST-506]] e il suo controller su [[scheda elettronica|schedescheda]] elettroniche[[Industry Standard Architecture|ISA]]]]
 
Il '''bus''' (da una contrazione del [[Lingua latina|latino]] ''omnibus''<ref>{{Cita web|url=https://www.lexico.com/definition/bus|titolo=BUS {{!}} Definition of BUS by Oxford Dictionary on Lexico.com also meaning of BUS|sito=Lexico Dictionaries {{!}} English|lingua=en|accesso=2021-09-20|dataarchivio=19 maggio 2021|urlarchivio=https://web.archive.org/web/20210519035539/https://www.lexico.com/definition/bus|urlmorto=sì}}</ref>), in [[elettronica]] e [[informatica]], è un [[canale (telecomunicazioni)|canale di comunicazione]] che permette a [[periferiche]] e componenti di un [[computer|sistema elettronico - come ad esempio un [[computer]] - di [[interfaccia (informatica)|interfacciarsi]] tra loro scambiandosi [[informazione|informazioni]] o [[Dato|dati]] di sistemavario tipo attraverso la [[trasmissione (telecomunicazioni)|trasmissione]] e la ricezione di [[segnale (fisica)Segnale|segnali]].
 
== 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]], [[Local Interconnect Network|LIN]].
 
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 impegataimpiegata, 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 ===
In ogni transazione sul bus:
 
* un dispositivo prende il controllo del bus;
* invia una richiesta (I/O) a un secondo dispositivo;
* svolta la richiesta, il bus viene liberato per un'altra comunicazione.
 
Il ruolo di un dispositivo può cambiare nel tempo; un dispositivo può comportarsi da master o da slave in contesti differenti. Lo standard che definisce il bus deve fornire le regole per gestire tali condizioni o vietarle. Esistono due diversi meccanismi di temporizzazione dei segnali:
 
Esistono due diversi meccanismi di temporizzazione dei segnali:
* Protocollo sincrono: è previsto un segnale di sincronizzazione (clock) che permette di gestire la temporizzazione delle comunicazioni.
* Protocollo asincrono: tutta la temporizzazione della comunicazione è gestita dal protocollo stesso attraverso lo scambio dei messaggi.
 
La scelta dipende da:
 
* Interfaccia del dispositivo;
* adattare interfacce con differenti velocità;
Riga 60 ⟶ 61:
=== 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.
 
== TipiBus di bus dati ==
ilIl bus dati viene utilizzato per lo scambio di informazioni tra i vari dispositivi. È bidirezionale in quanto l'invio dei dati non è di sola appartenenza alla CPU e si divide:
 
===''' [[Industry Standard Architecture|ISA]] (Industry Standard Architecture Bus) ==='''
Evoluzione dei bus PC bus e PC/AT bus utilizzati nei primi PC (8086, 80286). Sviluppato da un consorzio in contrapposizione all'IBM Microchannel. Contiene 64 + 36 linee:
 
Evoluzione dei bus PC bus e PC/AT bus utilizzati nei primi PC (8086, 80286). Sviluppato da un consorzio in contrapposizione all'IBM Microchannel. Contiene 64 + 36 linee:
 
Contiene 64 + 36 linee:
* 20 + 4 linee indirizzi
* 8 + 8 linee dati
Riga 75 ⟶ 78:
Sincrono con clock a 8,33&nbsp;MHz. Estensione a 32 bit: EISA
 
===''' [[Zorro (informatica)|Zorro]] ==='''
 
Bus di espansione sviluppato per i computer [[Amiga]] prodotti dalla [[Commodore]]. Esistono tre versioni di questo bus, le prime due erano a 16 bit, la terza era a 32 bit. Questo bus è stato fornito nativamente della capacità [[Plug and Play]] fin dalla prima versione risalente al [[1985]]. È un bus parallelo che lavora in modo sincrono ma nella terza revisione poteva lavorare anche in modo asincrono rendendo le comunicazioni più efficienti ma nel contempo rendendo le schede di espansione più costose e difficili da progettare.
 
===''' [[Peripheral Component Interconnect|PCI]] (Peripheral Component Interconnect Bus) ==='''
 
Bus di sistema PC, (ma anche Apple, Sun), sviluppato dalla Intel nel 1992 (in sostituzione del bus ISA). Esiste in diverse versioni: PCI, PCI 2.0, PCI 2.1, PCI 2.2, PCI-X, PCI-X DDR. 32 – 64, PCI-E linee dati-indirizzi (sovrapposte) (multiplexed) Clock a 33 – 66 – 133 – 266&nbsp;MHz. Alimentazione 5 – 3,3 [[Volt]]. Il trasferimento che avviene attraverso un bus PCI è un "burst", composto da una fase di indirizzamento e da una o più fasi di dato, con bassa latenza ed elevato throughput(velocità effettiva).
 
===''' [[USB]] (Universal Serial Bus) ==='''
 
Bus per il collegamento di periferiche (lente), sviluppato nel 1995 da un consorzio: (Compaq, HP, Intel, Lucent, Microsoft, Nec, Philips). Caratteristiche: flessibilità, semplicità; un unico bus per molte periferiche; non sono necessari dispositivi di controllo e porte dedicate; facilmente espandibile; economico e con possibilità di connessione a caldo; supporto dispositivi tempo reale (audio - telefono).
 
Riga 92 ⟶ 98:
* USB 3.0: 4,8&nbsp;Gbit/s.
 
===''' [[Small Computer System Interface|SCSI]] (Small Computer System Interface) ==='''
 
Collegamento per dispositivi interni o esterni al computer: dischi rigidi (dischi SCSI), ma anche CD - DVD – unità nastro - stampanti - scanner.
 
Riga 102 ⟶ 109:
Collega sino a 7- 15 controllori (unità) e massimo 2048 periferiche per controllore. Collegamento a cascata, con terminatore. Semplice ed economico. Parte della logica delegata ai controllori. 50 fili - 25 di massa per eliminare disturbi (8 dati — 1 parità — 9 controllo — 7 alimentazione e usi futuri). Asincrono: con protocollo di hand-shake. Arbitraggio decentralizzato: utilizzo linee dati, priorità prestabilita.<br />Il bus SCSI è un bus parallelo, mentre una sua estensione, il [[Serial Attached SCSI]] (SAS), è di tipo seriale.
 
===''' [[FireWire]] (IEEE 1394) ==='''
 
Ha molte similitudini con l'USB: bus seriale con alimentazione (60 W), sviluppato da un consorzio di aziende (1984 - Apple, 1995 Standard, ma con Royalties); possibilità di connessione a caldo, meccanismi di identificazione, struttura ad albero.
 
Riga 118 ⟶ 126:
È importante sapere che entrambi i cavi non possono avere lunghezza superiore a 4,5&nbsp;m
 
===''' [[Low Pin Count]] ==='''
 
È un bus interno ideato da [[Intel]] per evitare di usare l'obsoleto [[Industry Standard Architecture|ISA]] per collegare il chip [[Southbridge (elettronica)|southbridge]] al [[Super I/O]] nelle [[scheda madre|schede madri]] e ridurre così sia il numero di piedini impiegati (da cui il nome) che il numero di piste di rame nel circuito stampato.
 
===''' [[PCI-X]] ==='''
 
=== [[PCI-X]] ===
Il PCI-X è un'evoluzione del PCI. È stata sviluppata dallo stesso consorzio che sviluppò il PCI e fornisce una larghezza di banda fino a 4 [[Byte|GByte]]. Pur avendo prestazioni molto più elevate del PCI è retrocompatibile con le periferiche PCI e quindi permette il riutilizzo delle schede PCI.
 
===''' [[PCI Express]] ==='''
 
Il PCI Express è il successore (seriale) del bus di espansione PCI (parallelo) e ha sostituito il bus AGP precedentemente in uso per le schede grafiche.
Riga 143 ⟶ 153:
* [[Architettura master-slave]]
* [[Bus mastering]]
* [[ChipsetBus sniffing]]
* [[Computer]]
* [[IEEE 488]]
* [[Microprocessore]]
Riga 149 ⟶ 160:
 
== Altri progetti ==
{{interprogetto|preposizione=sui|wikt=bus}}
 
== Collegamenti esterni ==
* {{Collegamenti esterni}}
* {{FOLDOC}}
 
{{Bus computer|bus = }}
{{Controllo di autorità}}
 
{{portale|informatica}}