Warum wird die digitale serielle Übertragung überall verwendet? dh SATA, PCIe, USB


47

Bei der Betrachtung von SATA, PCIe, USB und SD UHS-II fiel mir auf, dass sie alle gleich sind: digitaler serieller Bitstrom, der über differentielle Paare (normalerweise 8b / 10b-codiert) übertragen wird, mit einigen Unterschieden in den Verbindungs- / Protokollschichten.
Warum so? Warum wurde dies zum Standard?
Warum gibt es keine weit verbreiteten Systemkommunikationsprotokolle, die einige fortgeschrittene Modulationsmethoden für eine bessere Symbolrate einsetzen? Vermisse ich etwas? Dies ist keine Frage von "seriell vs parallel", sondern eine Frage von "digital signaling vs modulated analog"


7
Welche Alternativen gibt es?
PlasmaHH

27
Früher gab es Parallelen, aber man brauchte viel Kupfer und sehr breite Kabel.
Jeroen3

7
Und so funktioniert DDR natürlich auch heute noch.
MSalters

10
Bei Druckerkabeln übernahm die serielle Schnittstelle die parallele Schnittstelle, als die Elektronik so billig wurde, dass der Seriell-Parallel-Wandler billiger war als das Kabel.
Hot Licks

4
Warum schlagen Sie nicht "einige fortgeschrittene Modulationsmethoden" vor, damit wir verstehen, was Sie meinen und mit "seriellen Bitströmen" vergleichen können?
Ale..chenski

Antworten:


30

Warum gibt es keine weit verbreiteten Systemkommunikationsprotokolle, die einige fortgeschrittene Modulationsmethoden für eine bessere Symbolrate einsetzen?

Wenn die grundlegende Kupferverbindung zwischen zwei Punkten eine digitale Bitrate unterstützt, die über der von der "Anwendung" zu übertragenden Datenrate liegt, warum sollten Sie sich dann mit etwas anderem als der standardmäßigen differentiellen Hochgeschwindigkeitssignalisierung befassen?

Das Verwenden eines erweiterten Modulationsschemas wird normalerweise durchgeführt, wenn der "Kanal" eine Bandbreite hat, die viel begrenzter ist als Kupfer oder Glasfaser.


Vielen Dank! Obwohl es wirklich gute Antworten gab, ist dies die, nach der ich gesucht habe!
Artemonster

3
Eine einfache Frage erfordert eine einfache Antwort, aber Sie können nicht aufhören, mehr als die ursprüngliche Frage zu beantworten.
Andy aka

1
und das ist eine gute Sache :) Ich habe viel aus anderen Antworten gelernt, da sie sehr informativ waren.
Artemonster

68

Es gibt zwei Hauptgründe für den Aufstieg der Serienproduktion

1) Es ist möglich. Kostengünstige Transistoren sind seit einem Jahrzehnt in der Lage, GHz-Schaltvorgänge durchzuführen, und das lange genug, um verwendet werden und zum Standard werden zu können.

2) Es ist notwendig. Wenn Sie Daten mit sehr hoher Geschwindigkeit um mehr als ein paar Zoll verschieben möchten. Diese Entfernung schließt Verbindungen von Mobo zu PCI-Karten aus und definitiv Mobo zur Festplatte oder Mobo / Settopbox, um Verbindungen anzuzeigen.

Der Grund dafür ist schief. Wenn Sie mehrere parallele Signale über ein Kabel übertragen, müssen diese innerhalb eines Bruchteils derselben Taktperiode eintreffen. Dies hält die Taktrate niedrig, so dass die Kabelbreite zunehmen muss. Mit steigenden Datenraten wird dies immer unübersichtlicher. Die Aussicht auf eine Erhöhung der Rate in der Zukunft ist nicht existent, doppelt oder vierfach breite ATA jemand?

Der Weg, den Skew-Dämon zu töten, ist seriell zu gehen. Eine Zeile ist immer mit sich selbst synchronisiert, es gibt nichts, womit sie verzerrt werden könnte. Die Leitung führt Daten, die selbst getaktet sind. Das heißt, es wird ein Datencodierungsschema verwendet (häufig 8b / 10b, manchmal viel höher), das eine garantierte Mindestübergangsdichte liefert, die eine Taktextraktion ermöglicht.

Die Aussichten für eine Erhöhung der Datenrate oder der Entfernung in die Zukunft sind ausgezeichnet. Jede Generation bringt schnellere Transistoren und mehr Erfahrung in der Herstellung des Mediums. Wir haben gesehen, wie sich das mit SATA abgespielt hat, das bei 1,5 Gbit / s begann, dann 3 durchlief und jetzt 6 Gbit / s ist. Sogar billige Kabel können eine ausreichend konstante Impedanz und einen angemessenen Verlust liefern, und in das Schnittstellen-Silizium sind Entzerrer eingebaut, um frequenzabhängige Verluste zu bewältigen. Optische Fasern sind für sehr lange Auflagen verfügbar.

Für höhere Datenraten können mehrere serielle Verbindungen parallel betrieben werden. Dies ist nicht dasselbe wie das Parallelschalten von Leitern, die zeitlich auf weniger als einen Taktzyklus abgestimmt werden müssen. Diese seriellen Spuren müssen nur innerhalb eines Datenrahmens auf hoher Ebene abgeglichen werden, der µs oder sogar ms lang sein kann.

Natürlich betrifft der Vorteil der Datenbreite nicht nur die Kabel und Stecker. Seriell profitiert auch der Leiterplattenbereich zwischen Steckverbindern und Chip, der Chip-Pinbelegung und dem Chip-Siliziumbereich.

Ich habe einen persönlichen Standpunkt dazu. Als Designer von Software Defined Radio (SDR) ab den 90er Jahren habe ich Leute wie Analog Devices und Xilinx (und alle anderen ADC- und FPGA-Unternehmen) angeschimpft (sie haben uns von Zeit zu Zeit besucht und danach gefragt) Ich musste so viele parallele differentielle Verbindungen zwischen Multi-100-MHz-ADCs und FPGAs herstellen, als wir gerade begannen, SATA zu sehen, das ATA verdrängt. Endlich haben wir JESD204x, so dass wir jetzt Konverter und FPGAs mit nur wenigen seriellen Leitungen anschließen können.


7
PCI Express 3 und 4 verwenden die 128b / 130b-Codierung.
Peter Smith

11
Welche Nb/(N+2)bNomenklatur wird hier verwendet?
Detly

17
@detly die 8b / 10b , 64b / 66b sind beide Formen von Leitungscode - Codierung. Im seriellen Kommunikationskontext wird die Zeilencodierung benötigt, um sicherzustellen, dass Sie Clock-Recovery ausführen können.] ( En.wikipedia.org/wiki/Clock_recovery ).
Trevor Boyd Smith

4
@tolos - der Geschwindigkeitsfaktor für die meisten Aromen von gewöhnlichen PCB-Materialien beträgt ungefähr 50% (6 in / ns).
Peter Smith

4
@supercat Genau so werden mehrere Fahrspuren behandelt. Jede Fahrspur hat ihre eigene unabhängige Taktung. Die Daten werden gerahmt und auf alle Spuren verteilt. Wenn der Empfänger alle Rahmen hat, wirkt er auf die Daten ein. Dies ermöglicht eine Abweichung in Bezug auf die Länge des Datenrahmens, die wir oder sogar ms sein können, wie ich in meiner Antwort sagte. Dies ist die Bedeutung der Anzahl der Lanes in PCIe und der Art und Weise, wie 2xHDMI zu einem Hochleistungsdisplay verarbeitet werden.
Neil_UK

24

Wenn Sie ein Beispiel für etwas suchen, das häufig verwendet wird, aber anders ist, schauen Sie sich 1000BASE-T-Gigabit-Ethernet an. Das nutzt parallele Kabel und nicht-triviale Signalcodierung.

Die meisten Leute benutzen serielle Busse, weil sie einfach sind. Parallele Busse verwenden mehr Kabel und leiden unter Signalversatz bei hohen Datenraten über lange Kabel.


9
GbE wurde ins Leben gerufen, indem das Problem gelöst wurde, mehr Daten über die riesigen Mengen der vorhandenen Cat 5-Verkabelung zu übertragen. Es würde wahrscheinlich nicht so aussehen, als ob eine neue Schnittstelle entworfen worden wäre, ohne Rücksicht auf die Abwärtskompatibilität. Siehe auch, dass 10 GbE in kommerziellen / privaten Umgebungen keine ernsthaften Fortschritte macht, da neue Cat 6a-Kabel installiert werden müssen.
Barleyman

Je nach Kabellänge und / oder -qualität funktionieren 10 GbE möglicherweise immer noch mit Cat5e oder Cat5.
user3549596

12

So ergänzen Sie die anderen guten Antworten:

Die in anderen Antworten genannten Probleme (vor allem der Versatz zwischen parallelen Signalen und die Kosten für zusätzliche Drähte im Kabel) nehmen mit zunehmender Entfernung der Signale zu. Daher gibt es eine Entfernung, bei der seriell der parallel überlegen ist, und diese Entfernung hat sich verringert, wenn die Datenraten angestiegen sind.

Die parallele Datenübertragung findet immer noch statt: innerhalb von Chips und auch bei den meisten Signalen innerhalb von Leiterplatten. Die Entfernungen, die von externen Peripheriegeräten - und sogar von internen Laufwerken - benötigt werden, sind jetzt zu weit und zu schnell, als dass parallele Schnittstellen sinnvoll wären. Somit sind die Signale, denen ein Endbenutzer nun ausgesetzt sein wird, größtenteils seriell.


4
Das wahrscheinlich beste Beispiel für parallele Hochgeschwindigkeitssignale ist der RAM-Speicher, insbesondere in PCs.
Jan Dorniak

Hervorragende Antwort, verweist direkt auf das Hauptproblem der Zeitsynchronisierung über räumliche Domänen hinweg. Eine Sache zu beachten, können Sie immer noch mehr als zwei Symbole auf einer seriellen Verbindung, also einen gewissen Nutzen von parallelen Kommunikation immer durch Modulation mit mehr Bits pro Baud zu kodieren
crasic

@ JanDorniak, es ist erwähnenswert, dass der DDR * -Speicher Daten-Strobe-Bits enthält, die für die Synchronisation verwendet werden. Dies ermöglicht es, einen breiten Bus in mehrere kleinere Busse aufzuteilen. Es ist einfacher, mehrere parallele 8-Bit-Busse zu routen, als einen einzelnen 32-Bit-Bus zu routen.
Caleb Reister

@CalebReister wusste das nicht. Trotzdem ist es parallel. Ich persönlich hatte eine Situation, in der ein moderner PC funktionieren würde oder nicht, je nachdem, in welchen Steckplatz der DDR4 eingesteckt war. Es endete damit, dass UEFI eine geringere Latenz erzwang, als es der Speicher konnte.
Jan Dorniak

11

Für fortgeschrittene Modulationstechniken müssten Sie analoge Signale senden und empfangen. ADCs und DACs mit Hunderten von MHz sind in der Regel teuer und verbrauchen viel Strom. Die zum Decodieren erforderliche Signalverarbeitung ist auch in Bezug auf Silizium und Leistung kostspielig.

Es ist einfach billiger, ein besseres Kommunikationsmedium zu entwickeln, das Binärsignale unterstützt.


1
guter Punkt. спасибо за ответ :)
artemonster

8

Warum wurde der serielle Bitstrom so häufig?

Die Verwendung serieller Verbindungen hat den Vorteil, dass die physische Größe der Verbindung verringert wird. Moderne integrierte Schaltkreisarchitekturen weisen so viele Anschlüsse auf, dass dies ein starkes Bedürfnis nach Minimierung der physischen Verbindungsanforderungen an ihren Entwurf hervorrief. Dies führte zur Entwicklung von Schaltungen, die an den Schnittstellen dieser Schaltungen unter Verwendung serieller Protokolle mit extremer Geschwindigkeit arbeiten. Aus dem gleichen Grund ist es natürlich, die physischen Verbindungsanforderungen an anderer Stelle in jeder anderen Datenverbindung zu minimieren.

Die ursprüngliche Nachfrage nach dieser Art von Technologie könnte auch auf Glasfaser-Datenübertragungsdesigns zurückzuführen sein.

Als die Technologie zur Unterstützung von Hochgeschwindigkeitsverbindungen sehr verbreitet war, war es nur natürlich, sie an vielen anderen Orten anzuwenden, da die physische Größe von seriellen Verbindungen so viel kleiner ist als Parallelverbindungen.

Warum gibt es keine weit verbreiteten Systemkommunikationsprotokolle, die einige fortgeschrittene Modulationsmethoden für eine bessere Symbolrate einsetzen?

Auf der Codierungsebene können Codierungsschemata für die digitale Kommunikation so einfach wie NRZ (Non-Return to Zero) , ein etwas komplizierterer Leitungscode (z. B. 8B / 10B) oder viel komplizierter wie QAM (Quadrature Amplitude Modulation) sein .

Komplexität erhöht die Kosten, aber die Auswahl hängt auch von Faktoren ab, die letztendlich von der Informationstheorie und den Kapazitätsgrenzen einer Verbindung abhängen. Das Shannon'sche Gesetz aus dem Shannon-Hartley-Theorem beschreibt die maximale Kapazität eines Kanals (man stelle sich das als "die Verbindung" oder "Verbindung" vor):

Maximale Kapazität in Bits / Sekunde = Bandbreite * Log2 (1 + Signal / Rauschen)

Für Funkverbindungen (etwa LTE oder WiFi) wird die Bandbreite häufig durch gesetzliche Bestimmungen begrenzt. In diesen Fällen können QAM und ähnlich komplexe Protokolle verwendet werden, um die höchstmögliche Datenrate zu erzielen. In diesen Fällen ist das Signal-Rausch-Verhältnis häufig ziemlich niedrig (10 bis 100 oder in Dezibel 10 bis 20 dB). Es kann nur so hoch werden, bevor eine Obergrenze unter der gegebenen Bandbreite und dem gegebenen Signal-Rausch-Verhältnis erreicht ist.

Für eine Drahtverbindung wird die Bandbreite durch nichts anderes als die Praktikabilität der Implementierung reguliert. Drahtverbindungen können ein sehr hohes Signal-Rausch-Verhältnis von mehr als 1000 (30 dB) aufweisen. Wie in anderen Antworten erwähnt, ist die Bandbreite durch den Aufbau der Transistoren, die die Leitung ansteuern und das Signal empfangen, und durch den Aufbau der Leitung selbst (einer Übertragungsleitung) begrenzt.

Wenn Bandbreite zu einem begrenzenden Faktor wird, das Signal-Rausch-Verhältnis jedoch nicht, sucht der Entwickler nach anderen Möglichkeiten, um die Datenrate zu erhöhen. Es wird eine wirtschaftliche Entscheidung, ob Sie sich für ein komplexeres Codierungsschema oder für mehr Kabel entscheiden:

Sie werden in der Tat serielle / parallele Protokolle sehen, die verwendet werden, wenn ein einzelner Draht noch zu langsam ist. PCI-Express überwindet auf diese Weise die Bandbreitenbeschränkungen der Hardware, indem mehrere Lanes verwendet werden.

Bei Glasfaserübertragungen müssen sie keine weiteren Fasern hinzufügen (obwohl sie möglicherweise andere verwenden, wenn sie bereits vorhanden sind und nicht verwendet werden). Sie können das Wellenmultiplexen verwenden . Im Allgemeinen wird dies durchgeführt, um mehrere unabhängige parallele Kanäle bereitzustellen, und das in anderen Antworten erwähnte Versatzproblem betrifft unabhängige Kanäle nicht.


1
Gute Antwort. Es macht mich neugierig, ob jemand so etwas wie 256-QAM mit USB3-Geschwindigkeit für wirklich erstaunliche Übertragungsraten implementieren könnte (oder bereits hat?) ...
mbrig

FWIW, die Faserwelt beginnt, komplexere Modulationsschemata zu entwickeln und einzusetzen. PAM-4 wird für 100- und 400-G-Ethernet angeboten, und Telekommunikationssysteme beginnen (glaube ich, aber das ist nicht mein Fachgebiet), kohärentes QAM zu verwenden.
Das Photon

Aber wirklich, wenn das SNR einer Drahtleitung so gut ist, warum nicht jedes mögliche Stück Bandbreite herausdrücken? Warum in GHZ-Frequenzen pushen (mit allen relevanten Problemen), wo Sie viel langsamer fahren und etwas Modulation / Codierung anwenden könnten. Wäre es nicht bequemer?
Artemonster

Du kannst das. Es wird eine wirtschaftliche Entscheidung.
Jim

1
QAM erfordert einen Netzbetreiber, daher ist es nicht sinnvoll, für digitales "Basisband" etwas anderes als PAM zu tun. Es wird im optischen Bereich verwendet, wobei Licht selbst als Träger verwendet wird. Über Kupfer würde man im Grunde nur einen Funk-Transceiver bauen. Dies würde eine viel schnellere analoge Schaltung und die damit verbundene Komplexität und den erhöhten Stromverbrauch erfordern. Serialisierer und Deserialisierer sind im Vergleich relativ einfach. IMHO, es ist wahrscheinlicher, dass integrierte photonische Siliziummodulatoren und -detektoren vorhanden sind, als dass wir über Kupfer zu QAM wechseln.
alex.forencich

1

Nehmen Sie vier Lastwagen mit Nutzlast. Vierspurige Autobahn pro Seite. Damit die Lastwagen die Nutzlast erfolgreich parallel transportieren können, müssen sie perfekt nebeneinander liegen. Einer darf nicht mehr als einen Zentimeter vor oder hinter den anderen sein. Hügel, Kurven, spielt keine Rolle. Variieren Sie zu viel und es ist ein Totalausfall.

Aber lassen Sie sie eine Spur nehmen, und der Abstand zwischen ihnen kann variieren. Zwar dauert es linear mehr als das Vierfache des Abstandes zwischen der Vorderseite des ersten und der Rückseite des letzten Lastwagens, um die Nutzlasten zu bewegen, sie müssen jedoch nicht perfekt voneinander beabstandet sein. Nur innerhalb der Länge eines Lastwagens müssen die Kabine und die Nutzlast sowie die Nutzlastlänge richtig positioniert und beabstandet sein.

Sie gehen sogar so weit, parallel, pcie, Netzwerk usw. zu sein, aber während dies technisch gesehen mehrere separate Datenpfade sind, sind sie nicht parallel, da sie die vier Lastwagen analog verlassen und gleichzeitig ankommen müssen können auf vier Fahrspuren ungefähr parallel fahren, können aber variieren, die Lastwagen sind durch die Spur gekennzeichnet, auf der sie angekommen sind, so dass die Nutzlasten am anderen Ende wieder zu dem ursprünglichen Datensatz zusammengefasst werden können. Und / oder jede Spur kann ein Datensatz sein, und wenn Sie mehrere Spuren haben, können Sie mehrere Datensätze gleichzeitig verschieben.


Die Fahrspuren müssen nicht perfekt "ausgerichtet" sein. Moderne mehrspurige Schnittstellen verwenden ausgefeiltere Methoden der Symbolausrichtung als das perfekte Nebeneinander.
Ale..chenski

1
Richtig, das habe ich gesagt.
old_timer

1

Als Ergänzung zu Dmitry Grigoryevs Kommentar.

Die analoge Übertragung ist immer fehleranfälliger als die digitale Übertragung. Eine digitale serielle Übertragung hat zum Beispiel getaktete Flanken, bei denen ein analoges Signal irgendwie zwischen 0V und VDD schwebt. Interferenzen sind also viel schwerer zu erkennen. Man könnte das berücksichtigen und differentielle Signalisierung verwenden, wie es in Audio gemacht wird.

Aber dann stößt man auf diesen Geschwindigkeits- / Genauigkeits-Kompromiss zwischen DACs / ADCs. Wenn Sie digitale Systeme miteinander kommunizieren müssen, ist es sinnvoller, eine digitale Übertragung zu verwenden, da Sie keine zeitaufwändige DA-AD-Übersetzung benötigen.

Wenn jedoch ein analoger Computer mit analogen Steuerspannungen betrieben wird, gibt es noch einige, die im Grunde genommen wie analoge modulare Synthesizer aussehen, die Dinge sind anders, und in der Regel können Sie analoge Computer nur für bestimmte Aufgaben bauen. Lustiger Vortrag in deutscher Sprache über analoges Rechnen.

Was analoge modulare Synthesizer anbelangt, so handelt es sich auch um eine Art analoger Computer, die speziell für die Berechnung von Signaländerungen entwickelt wurden.

Es gibt also eine analoge Übertragung in der Datenverarbeitung, die jedoch auf sehr spezielle Bereiche beschränkt ist.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.