Guten Morgen, ich bin dabei einen Vortrag demnächst über FireWire zu halten, und da sind ein paar Hürden die ich nicht überwinden kann. Um anzufangen geht es um die Version 1394b des FireWire-Busses, wo als Signalcodierung 8b10b benutzt wird. Bei diesem Standard sind sehr hohe Datenraten möglich, aber eben mittels dieser 8b10b-Codierung!(habe das auf einer Seite gelesen) Frage: WIE ermöglicht diese Codierung solche 'hohe' Datenraten? Ich habe auch sehr viel über dieses Codierverfahren recherchiert , aber verstanden habe ich es bis jetzt immer noch nicht. ZB ist von 'running disparity' dauernd die Rede, aber warum das notwendig ist wird mir nicht klar. Oder warum dieser 'Gleichspannungsausgleich' so wichtig ist und wie man den Takt rückgewinnen kann? Die Erklärungen auf Google sind, für mich zumindest, relativ unverständlich und ziemlich kompliziert erklärt(man findet nicht viele konkrete Beispiele mit Erklärungen dazu). Hat jemand von euch eine Ahnung von diesem Codierverfahren im Zusammenhang mit FireWire? Wenn meine Frage hier beantwortet wurde, dann hätte ich noch ein paar andere Fragen zum Thema 'FireWire' :) Bin für jeden Lösungsvorschlag dankbar! :) Und noch was: ich habe wirklich echt viel recherchiert und einfach keine verständliche Erklärung zu diesem Codierverfahren gefunden. Wenn jemand jetzt doch noch eine Seite finden sollte wo es echt gut erklärt ist, dann entschuldige ich mich schon im vorraus dass ich diese Seite übersehen habe. Liebe Grüsse, Tommy
8b10b ist doch auf Wikipedia ganz gut erklärt. Das sollte für Normalmenschen völlig ausreichen. Wenn du es noch genauer willst, kommt man leider nicht um heftige Mathematik drumherum.
Es ist aber genau das was ich gesagt habe, dass wikipedia es nicht gut genug für mich erklärt. Diese deutsche Version zeigt nicht einmal die Code-Tabellen, und in der engl. Version fehlen Details wie zB welchen Wert hat die Running Disparity am Anfang?
Wiki ist nicht dein Banknachbar. Du mußt dann schonmal Google weiterbenutzen. Hatte ich zufällig vor ein paar Wochen gemacht und mir waren es mehr als genug Infos. Allerdings hatte ich auch genug Vorkenntnisse, die mir halfen die Infos richtig einzuordnen. Hier mal ein Stichwort: Ethernet "wander"
Hab Google GANZ durchgewühlt aber vergebens! Und ich habe nicht viel Vorkenntnisse, ausser dass ich in der Zwischenzeit beim durchwühlen gelesen habe dass Ethernet usw solche Codierungsverfahren benutzen, aber das ist keine Antwort auf meine Frage.
schon bei der "Quelle" direkt gefragt wird ja wohl irgendwer spezifiziert haben... oder im "linux -firewire -kernel developer board.." ;-) (oder im sourcecode) ps. warum ist das eigetlich "wichtig" für dich.. wichtig ist doch nur, dass einsen und nullen a) Geleichverteilt sind, und b) möglich oft zwischen eins und Null gewechselt wird.. grund ist ja auch klar: damit man den tackt nicht verliert.. wie das jetzt bis ins letzte detail sichergestellt wird, ist doch "nebensächlich"??
Ich trage ein Vortrag vor über FireWire und bei 1394b wird 8B10B verwendet um auf diese hohen Taktraten zu kommen. Der Professor stellt dann typische fragen wie: "Wie ist es möglich mittels dieses Codierungsverfahren eine hohe Taktrate zu erhalten?" Oder "Wie funktioniert 8B10B?" und einsen und nullen sind nicht gleichverteilt, hab sowas gelesen dass dann zB entweder 5 nullen und 5 einsen, oder 6 nullen und 4 einsen oder 4 nullen und 6 einsen gesendet werden. Und wenn dadurch ja der Takt wiedergeswonnen wird, wie gewinnt man dann die versendeten Daten wieder zurück?
> oder 6 nullen und 4 einsen oder >4 nullen und 6 einsen gesendet werden. ich hätte aus den wiki Einträgen heraus gelesen dass eben "running disparity" genau das macht die mit 6 nullen und die mit 4 nullen abzuwechseln, dass es in summe gleich verteilt ist.. kann aber auch nicht stimmen.. > wie gewinnt man dann >die versendeten Daten wieder zurück? vermutlich so wie "überall" Prüfsumme + nochmal "anfordern" hat aber jetzt nicht direkt mit 8b10b zu tun, da muss wohl wo anders suchen.. aber wie du siehst, ich kann dir da auch nicht weiter helfen, deshalb ja der Vorschlag direkt in der Spezifikation (wo auch immer man die bekommt, vielleicht muss man auch aktiv nachfragen, google hat halt auch nicht alles..) nach zuschauen
genau das habe ich ja auch dort gelesen, aber ich bin mit diesem 'running disparity' genau so unsicher wie du... > vermutlich so wie "überall" Prüfsumme + nochmal "anfordern" habe nicht wirklich erfahrung mit codierverfahren, kann sowas dann also nicht wissen. > > aber wie du siehst, ich kann dir da auch nicht weiter helfen, deshalb ja > der Vorschlag direkt in der Spezifikation (wo auch immer man die > bekommt, vielleicht muss man auch aktiv nachfragen, google hat halt auch > nicht alles..) nach zuschauen hm, hatte gedacht dass evtl jemand hier ein skript oder einen powerpoint von einem Professor über 8B10B hätte, und mir so weiterhelfen könnte...
> Hab Google GANZ durchgewühlt aber vergebens! Böldsinn!!! Und Google ist auch nicht das Internet oder gar ne Bibliothek. > Und ich habe nicht viel Vorkenntnisse,... Ja, das stimmt als 1. Schritt zur Selbsterkenntis ;-) Vermutlich ist 1992 dein Baujahr? Hm. Ich habe 1. keine Lust endlos zu schreiben, 2. kann ich dir auch vieles nicht erklären bzw. mathematisch herleiten (Ich stelle meine Arbeit immer an einem bestimmten Punkt zu einem Thema ein. Nämlich dann wenn es für mein Ziel ausreichend ist), 3. kenne ich kein Skript und wenn es das gäbe, bräuchte man deine Arbeit ja nicht mehr. Du mußt einfach lernen richtig zu suchen. Hier lese mal die nächsten Tage bis du keine Lust mehr hast: http://www.google.de/search?hl=de&source=hp&q=ieee+8b10b&gbv=1 8B10B ermöglicht keine hohen Datenraten bzw. der Satz ist so einfach sinnverkehrend. Vermutlich sollst du es mit dem alten 10MBit-Ethernet vergleichen, dann macht es eher Sinn: Dort wurde pro Datenbit sehr viel Taktanteil übertragen, nämlich genau die Hälfte der übertragenen Energie pro Bit für die Taktung verbraten. Bei 8B10B ist deutlich (Ich vermeide hier extra das Wort viel oder 'hohe')weniger Takt enthalten. Das siehst du am Verhältnis 10 zu 8. Wie das Verhältnis bei Uralt-Ethernet ist, darfst du dir als Hausaufgabe selbst überlegen. Gutes Stichwort ist auch Symbol bzw. Baud vs. Bit. Und dann schau dir die entstehenden Spektren und Lock-Zeiten für die Taktregenerierung mal an. Zu meiner Zeit gabs eben noch kein Internet. Daher ist meine Generation aus deiner Sicht unglaublich störrich und anspruchsvoll.
(bissl viel heiße luft...) >Bei 8B10B ist deutlich weniger Takt enthalten. Das siehst du am Verhältnis >10 zu 8. und wieviel "takt" ist dann in 64b66b (also 64 zu 66) enthalten ;-) vielleicht kannst das etwas technischer ausdrücken, damit man versteht was du meinst.. >8B10B ermöglicht keine hohen Datenraten hast du z.b. die überschriften deiner google-hits gelesen der 2. ist "A new 8B10B block code for high speed data transmission"
An dieser Stelle verschwimmen die Unterschiede zwischen den klassischen Betrachtungsweisen von Codierung und Modulation. 10MBit Ethernet kann man als Leitungscode 2B1B betrachten. Andere Name für gleiche Sache ist Biphase. 1 Bit wird in zwei Bits 'Blöcke' aufgeteilt, wobei beide Blöcke genau gegensätzlich sind und die Grenze zwischen beiden Blöcken nun fallend oder steigend sein kann und mit dieser Eigenschaft das wahre übertragene Bit codiert ist. http://de.wikipedia.org/wiki/Manchester-Code (Wobei es bei Biphase diverse Varianten und Namen gibt, absolut, differentiell usw. Auswirkung auf das notwendige SN-Verhältnis ist nicht oder kaum gegeben. FM ist mehr oder weniger auch das gleiche. Der Unterschied ist nicht mehr als ca. 2dB, was recht wenig ist wenn man es mit anderen Codierungen vergleicht) Aus informationstheoretischer Sicht zählt nur die notwendige Energie pro Einzelbit aus dem Basisband bei einem bestimmten gewünschten Signal-Rauschabstand. Durch die Umcodierung verschiebt und komprimiert man das sich ergebende Spektrum hin zu einem optimalen zu übertragenen Frequenzbereich. Bisserl hochnäsig für so wenig Wissen seit ihr schon. ciao!
Korrektur: Obiger Nomenklatur entsprechend hätte ich 1B2B schreiben müssen.
>Ich habe 1. keine Lust endlos zu >schreiben, für endlos text, der nichts mit dem thema zu tun hat.. hast du scheinbar schon lust..
Scheint so: "Durch die Umcodierung verschiebt und komprimiert man das sich ergebende Spektrum hin zu einem optimalen zu übertragenen Frequenzbereich."
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.