Le connessioni del disco rigido SATA sono più veloci delle vecchie connessioni del disco rigido PATA e lo stesso si può dire per gli standard di cablaggio esterno, ma questo è controintuitivo: perché la trasmissione parallela non dovrebbe essere più veloce?
La sessione di domande e risposte di oggi ci arriva per gentile concessione di SuperUser, una suddivisione di Stack Exchange, un raggruppamento guidato dalla comunità di siti web di domande e risposte.
La domanda
Il lettore SuperUser Modest è curioso delle velocità di trasferimento dati delle connessioni parallele e seriali:
Intuitivamente, si potrebbe pensare che la trasmissione dati parallela dovrebbe essere più veloce della trasmissione dati seriale; parallelamente trasferisci molti bit contemporaneamente, mentre in seriale stai facendo un bit alla volta.
Quindi cosa rende le interfacce SATA più veloci di PATA, i dispositivi PCI-e più veloci di PCI e le porte seriali più veloci di parallele?
Sebbene sia facile cadere nel ragionamento che SATA è più recente di PATA, deve esserci un meccanismo più concreto al lavoro rispetto alla semplice età.
La risposta
Il collaboratore di SuperUser Mpy offre alcune informazioni sulla natura dei tipi di trasmissione:
Non puoi formularlo in questo modo.
La trasmissione seriale è Più lentamente rispetto alla trasmissione parallela data la stessa frequenza del segnale . Con una trasmissione parallela è possibile trasferire una parola per ciclo (es. 1 byte = 8 bit) ma con una trasmissione seriale solo una frazione di essa (es. 1 bit).
Il motivo per cui i dispositivi moderni utilizzano la trasmissione seriale è il seguente:
- Non è possibile aumentare la frequenza del segnale per una trasmissione parallela senza limiti, perché, per impostazione predefinita, tutti i segnali dal trasmettitore devono arrivare al ricevitore a lo stesso tempo . Ciò non può essere garantito per le alte frequenze, poiché non è possibile garantire che il file tempo di transito del segnale è uguale per tutte le linee di segnale (pensa a percorsi diversi sulla scheda madre). Maggiore è la frequenza, più piccole differenze contano. Quindi il ricevitore deve attendere che tutte le linee di segnale siano sistemate - ovviamente, l'attesa abbassa la velocità di trasferimento.
- Un altro buon punto (da questo post ) è quello che bisogna considerare diafonia con linee di segnale parallele. Maggiore è la frequenza, più pronunciato diventa il crosstalk e con esso maggiore è la probabilità di una parola corrotta e la necessità di ritrasmetterla. [1]
Quindi, anche se trasferisci meno dati per ciclo con una trasmissione seriale, puoi andare a frequenze molto più alte che si traducono in una velocità di trasferimento netta più alta.
[1] Questo spiega anche perché Cavi UDMA (Parallel ATA con maggiore velocità di trasferimento) aveva il doppio dei fili dei pin. Ogni secondo filo è stato messo a terra per ridurre la diafonia.
Scott Chamberlain fa eco alla risposta di Myp e approfondisce l'economia del design:
Il problema è la sincronizzazione.
Quando invii in parallelo devi misurare tutte le linee nello stesso momento esatto, man mano che vai più veloce la dimensione della finestra per quel momento diventa sempre più piccola, alla fine può diventare così piccola che alcuni fili potrebbero ancora stabilizzarsi mentre altri finiscono prima che finisca il tempo.
Inviando in seriale non devi più preoccuparti che tutte le linee si stabilizzino, solo una linea. Ed è più conveniente fare in modo che una linea si stabilizzi 10 volte più velocemente che aggiungere 10 linee alla stessa velocità.
Alcune cose come PCI Express fanno il meglio di entrambi i mondi, eseguono un set parallelo di connessioni seriali (la porta 16x sulla scheda madre ha 16 connessioni seriali). In questo modo non è necessario che ciascuna linea sia perfettamente sincronizzata con le altre linee, purché il controller all'altra estremità possa riordinare i "pacchetti" di dati quando arrivano utilizzando l'ordine corretto.
Il Pagina Come funzionano le cose per PCI-Express fa un'ottima spiegazione in profondità su come PCI Express in seriale può essere più veloce di PCI o PCI-X in parallelo.
TL; Versione DR: È più facile rendere una singola connessione 16 volte più veloce di 8 connessioni 2 volte più veloci una volta raggiunte le frequenze molto alte.
Hai qualcosa da aggiungere alla spiegazione? Suona nei commenti. Vuoi leggere altre risposte da altri utenti esperti di tecnologia Stack Exchange? Dai un'occhiata al thread di discussione completo qui .