SATA-harde-schijfverbindingen zijn sneller dan oudere PATA-harde-schijfverbindingen en hetzelfde kan gezegd worden voor externe bekabelingsnormen, maar dit is contra-intuïtief: waarom zou de parallelle transmissie niet sneller zijn?
De vraag- en antwoordsessie van vandaag komt tot ons dankzij SuperUser - een onderdeel van Stack Exchange, een community-gedreven groepering van Q & A-websites.
De vraag
SuperUser-lezer Modest is benieuwd naar de gegevensoverdrachtsnelheden van parallelle en seriële verbindingen:
Intuïtief zou je denken dat parallelle datatransmissie sneller zou moeten zijn dan seriële datatransmissie; parallel breng je veel bits tegelijkertijd over, terwijl je in serie één bit tegelijk doet.
Dus wat maakt SATA-interfaces sneller dan PATA, PCI-e-apparaten sneller dan PCI en seriële poorten sneller dan parallel?
Hoewel het gemakkelijk is om in de redenering te vallen dat SATA nieuwer is dan PATA, moet er een concreter mechanisme aan het werk zijn dan alleen leeftijd.
Het antwoord
SuperUser-bijdrager Mpy biedt enig inzicht in de aard van de transmissietypen:
Zo kun je het niet formuleren.
Seriële verzending is langzamer dan parallelle transmissie gezien de dezelfde signaalfrequentie . Met een parallelle verzending kunt u één woord per cyclus verzenden (bijv. 1 byte = 8 bits), maar met een seriële verzending slechts een fractie ervan (bijv. 1 bit).
De reden waarom moderne apparaten seriële transmissie gebruiken, is de volgende:
- U kunt de signaalfrequentie voor een parallelle transmissie niet onbeperkt verhogen, omdat alle signalen van de zender per definitie bij de ontvanger moeten aankomen op dezelfde tijd . Dit kan niet worden gegarandeerd voor hoge frequenties, aangezien u niet kunt garanderen dat de signaal transittijd is gelijk voor alle signaallijnen (denk aan verschillende paden op het moederbord). Hoe hoger de frequentie, hoe meer kleine verschillen er toe doen. Daarom moet de ontvanger wachten totdat alle signaallijnen zijn geregeld - uiteraard verlaagt wachten de overdrachtssnelheid.
- Een ander goed punt (van deze post ) is dat men moet overwegen overspraak met parallelle signaallijnen. Hoe hoger de frequentie, hoe meer overspraak er wordt en daarmee hoe groter de kans op een beschadigd woord en de noodzaak om het opnieuw uit te zenden. [1]
Dus zelfs als u minder gegevens per cyclus verzendt met een seriële verzending, kunt u naar veel hogere frequenties gaan, wat resulteert in een hogere netto overdrachtssnelheid.
[1] Dit verklaart ook waarom UDMA-kabels (Parallelle ATA met verhoogde overdrachtssnelheid) had twee keer zoveel draden als pinnen. Elke tweede draad was geaard om overspraak te verminderen.
Scott Chamberlain herhaalt het antwoord van Myp en gaat dieper in op de economie van design:
Het probleem is synchronisatie.
Wanneer u parallel verzendt, moet u alle lijnen op exact hetzelfde moment meten, naarmate u sneller gaat, wordt de grootte van het venster voor dat moment kleiner en kleiner, uiteindelijk kan het zo klein worden dat sommige draden mogelijk nog steeds stabiliseren terwijl anderen klaar zijn voordat je tijd op was.
Door serieel in te sturen hoeft u zich geen zorgen meer te maken dat alle lijnen zich stabiliseren, slechts één lijn. En het is kostenefficiënter om één lijn 10 keer sneller te laten stabiliseren dan om 10 lijnen met dezelfde snelheid toe te voegen.
Sommige dingen, zoals PCI Express, doen het beste van twee werelden, ze doen een parallelle set seriële verbindingen (de 16x-poort op je moederbord heeft 16 seriële verbindingen). Door dat te doen, hoeft niet elke regel perfect gesynchroniseerd te zijn met de andere regels, zolang de controller aan de andere kant de "pakketjes" met gegevens in de juiste volgorde kan herordenen.
De Hoe dingen werken pagina voor PCI-Express geeft een zeer goede uitleg over hoe PCI Express in serie sneller kan zijn dan PCI of PCI-X in parallel.
TL; DR-versie: Het is gemakkelijker om een enkele verbinding 16 keer sneller te laten gaan dan 8 verbindingen 2 keer sneller gaan als je eenmaal op zeer hoge frequenties bent.
Iets toe te voegen aan de uitleg? Geluid uit in de reacties. Wilt u meer antwoorden lezen van andere technisch onderlegde Stack Exchange-gebruikers? Bekijk hier de volledige discussiethread .