Hi, wie wird das Zeitverhalten des Ausgangsdatenstroms (quasi Jitter auf USB) am Rechner vom Betriebssystem (Windows oder Android) beeinflusst? Gibt’s empfohlene Artikeln zu diesem Thema?
So ganz einfach wird diese Antwort nicht, da HW, CPU-Auslastung, RAM, Treiber usw. Faktoren sind dir nur bis zum nächsten Update vergleichbar wären.
wie sagt Shakespeare: DMA or not DMA FIFO or not FIFO Für den 16550 gabs wohl Untersuchungen hinsichtlich FIFO-Tiefe und Isochronität, aber der zählt inzwischen zur Computer-Mediävistik.
Jo T. schrieb: > wie wird das Zeitverhalten des Ausgangsdatenstroms (quasi Jitter auf > USB) am Rechner vom Betriebssystem (Windows oder Android) beeinflusst? Von Windows, Linux, Android: unvorhersehbar, weil das keine Echtzeitsysteme sind. Kann sein dass Impulsfolgen eine Zeitlang halbwegs gleichmässig auftreten und ab und zu mit grosser Verzögerung bis zu Sekunden. Georg
> unvorhersehbar, weil das keine Echtzeitsysteme sind +1
Datenmenge und Cacheverhalten sind weitere unbekannte Faktoren. Wenn der
Cache groß genug ist, wirst Du manche Tücke erst später merken. Frage
aller Fragen ist immer: WOZU brauchst Du das?
Jo T. schrieb: > Hi, > > wie wird das Zeitverhalten des Ausgangsdatenstroms (quasi Jitter auf > USB) am Rechner vom Betriebssystem (Windows oder Android) beeinflusst? > Gibt’s empfohlene Artikeln zu diesem Thema? Da der Datenstrom nicht vom BS generiert wird sondern von einer eigenständigen Hardware-SIE … gar nicht!
Norbert schrieb: >> wie wird das Zeitverhalten des Ausgangsdatenstroms (quasi Jitter auf >> USB) am Rechner vom Betriebssystem (Windows oder Android) beeinflusst? >> Gibt’s empfohlene Artikeln zu diesem Thema? > > Da der Datenstrom nicht vom BS generiert wird sondern von einer > eigenständigen Hardware-SIE … gar nicht! Wie kommst du darauf? Die Daten werden von einem Programm generiert, das unter dem Betriebssystem läuft und von diesem "geschedulet" wird. Das Betriebssystem leitet das dann an den USB-Stack weiter, an dessen Ende dann der Hardware-Treiber es an den USB-Controller schickt. Erst dann übernimmt die "eigenständige Hardware".
:
Bearbeitet durch User
Rolf M. schrieb: > Norbert schrieb: >> >> Da der Datenstrom nicht vom BS generiert wird sondern von einer >> eigenständigen Hardware-SIE … gar nicht! > > Wie kommst du darauf? Die Daten werden von einem Programm generiert, das > unter dem Betriebssystem läuft und von diesem "geschedulet" wird. Das > Betriebssystem leitet das dann an den USB-Stack weiter, an dessen Ende > dann der Hardware-Treiber es an den USB-Controller schickt. Erst dann > übernimmt die "eigenständige Hardware". Ja. Eben. Für isochrone USB-Transfers (für andere ergibt die Frage ohnehin keinen Sinn) wird sowohl auf Sende- als auch Empfangsseite gebuffert, was das Zeug hält. Muß ja, wie sonst will man aus dem USB-Datenstrom, der ja in festen Chunks (Buffergröße) bei fester Geschwindigkeit (Full- oder Highspeed) einen kontinuierlichen Datenstrom generieren?
Ich bin der Meinung, nur Echtzeit Betriebssysteme sind in der Lage, das richtige Zeitverhalten sicherzustellen um den Jitter zu minimieren
Wenn man von Jitter redet, dann redet man von den zeitlichen Abweichungen der Signalflanken und ganz sicher nicht von der Variabilität gesamter Datenblöcken. Die Signalflanken wiederum werden von der SIE generiert und sind vom BS völlig unabhängig. Oder reden wir nun mittlerweile auch schon von Jitter im Fahrplan wenn die Bahn früher oder später kommt?
Jo T. schrieb: > Ich bin der Meinung, nur Echtzeit Betriebssysteme sind in der Lage, das > richtige Zeitverhalten sicherzustellen um den Jitter zu minimieren Milliarden an Nicht-Echtzeit-Betriebsysteminstallationen, u.A. auch das vom TE angefragte "Windows oder Android" kriegen es hin, Audio über USB Jitterfrei(*) abzuspielen. *) Aber evtl. nicht "Stotterfrei".
Ich sags mal so, wenn ich mein USB BD Laufwerk an meinen Hub anschliesse, dann updatet meine Maus noch so 1mal pro Sekunde, der bus stirbt fast. Aber auch davor ist er schon an den grenzen. Dabei hängt da garnicht so viel drann. 1 Dock, daran 3 Hubs, an einem davon 1x Maus, 1x Tastatur, und 1x USB Soundkarte. Und manchmal sind noch Handy und Tablet eingesteckt. Das ist schon alles. Power ist auch an allen Hubs drann. Alles USB 3.2, und keine Billigteiler. USB ist doch einfach schrott. Mit anderen Verbindungstüpen (egal ob ethernet oder sonst was), hab ich solche Probleme nicht. Zeitverhalten, das sind mir sorgen. Man muss schon beten, dass der kram überhaupt läuft.
Norbert schrieb: > Wenn man von Jitter redet, dann redet man von den zeitlichen > Abweichungen der Signalflanken und ganz sicher nicht von der > Variabilität gesamter Datenblöcken. Sagt wer? https://en.wikipedia.org/wiki/Jitter#Packet_jitter_in_computer_networks > Oder reden wir nun mittlerweile auch schon von Jitter im Fahrplan wenn > die Bahn früher oder später kommt? Die Bahn ist kein Datensignal, aber von mir aus kannst du das so nennen.
🐧 DPA 🐧 schrieb: > 1 Dock, daran 3 Hubs, an einem davon 1x Maus, 1x > Tastatur, und 1x USB Soundkarte. Und manchmal sind noch Handy und Tablet > eingesteckt. Das ist schon alles. Abgesehen davon, daß das überraschend viele Hubs sind (wozu sind die beiden anderen am Dock angeschlossenen), ist das nichts, was irgendwas macht, was USB ins Stottern bringen sollte. Maus und Tastatur sind Lowspeed-Devices (1.5 MBit/sec), die Soundkarte kann durchaus auch nur ein Fullspeed-Device (12 MBit/sec) sein, nichts davon macht irgendwelche Probleme. Wenn das bei Dir nicht funktioniert, ist nicht USB an sich Schrott, sondern irgendwas an Deinem Aufbau im Eimer. Du schreibst, daß alle Hubs ihre eigenen Netzteile haben; vielleicht gibt es da ja lustige Masseschleifen mit Ausgleichströmen. Vielleicht ist ja auch nur Dein PC ranzig und dessen USB-Stack im Eimer, was auch an irgendeinem übereifrigen Schlangenöl liegen kann, das aus "Sicherheitsgründen" in jede USB-Transaktion reinrotzt.
DerEinzigeBernd schrieb: > Abgesehen davon, daß das überraschend viele Hubs sind (wozu sind die > beiden anderen am Dock angeschlossenen) Die sind alle unter dem Tisch montiert. Oben schaut nur 1 USB-C kabel raus. 2 Hubs sind am rand an beiden Tischseiten, so ist immer ein USB Anschluss in der nähe. Das ist eigentlich recht praktisch. DerEinzigeBernd schrieb: > Wenn das bei Dir nicht funktioniert, ist nicht USB an sich Schrott, > sondern irgendwas an Deinem Aufbau im Eimer. Du schreibst, daß alle Hubs > ihre eigenen Netzteile haben; vielleicht gibt es da ja lustige > Masseschleifen mit Ausgleichströmen. Vermutlich, aber die Hubs sind dafür vorgesehen, an ein Netzteil angeschlossen zu sein. Eigentlich kann man die dinger ja gar nicht anders als vorgesehen betreiben, und dann haben die auch zu funktionieren. Bei z.B. Ethernet hat man normalerweise eine saubere galvanische Trennung. Da kann einem sowas nicht passieren. Aber bei der verrückten art und weise, wie USB die signale überträgt, da ist das eine ganz andere Sache. Und genau deshalb bleibe ich dabei, USB ist schrott, und nicht der Aufbau. DerEinzigeBernd schrieb: > Vielleicht ist ja auch nur Dein PC ranzig und dessen USB-Stack im Eimer Das passiert bei all meinen Geräten. Auch beim Geschäftslaptop (auf welchem windows drauf ist).
Da USB bei einer sehr großen Anzahl von Leuten ohne Probleme funktioniert, und das auch bei komplexeren Anwendungsszenarien als dem von Dir beschriebenen, liegt das Problem nicht im USB, sondern in Deinem Aufbau. Wenn Du lösungsorientiert an die Sache herangehen wolltest, könntest Du die Anzahl der Stellschrauben reduzieren und sämtliche Hubs entfernen, Maus, Tastatur und Dein BD-Laufwerk direkt an das "Dock" anschließen. Ein weiterer Test wäre es, das "Dock" wegzulassen, und Maus, Tastatur und BD-Laufwerk direkt an den PC anzuschließen. Das würdest Du tun, wenn Du lösungsorientiert vorgehen würdest.
Rolf M. schrieb: > Sagt wer? > https://en.wikipedia.org/wiki/Jitter#Packet_jitter_in_computer_networks Na dann gehe ich doch darauf mal ein: >> A network with constant delay has no packet jitter. >> Packet jitter is expressed as an average of the deviation >> from the network mean delay. 1. USB ist kein ›network‹ Selbst wenn man sich einen USB-tree ansieht, gehen Verzögerungen (aka. packet jitter) nicht vom Host-BS aus. Das sendet einfach ein Packet und eventuelle Verzögerungen ergeben sich ausschließlich aufgrund der Hubs. Ergäben sich Verzögerungen aufgrund von DMA Auslastung, so würden die Puffer der USB-Hardware schlimmstenfalls vielleicht um einige Mikrosekunden verzögert gefüllt werden. 2. USB ist immer noch kein ›network‹ Es gibt gar kein ›average of mean delay‹ Man könnte von einigen Aktionen/Befehlen die maximal erlaubte Antwortzeit aufführen, hätte aber nichts mit jitter zu tun. Im einfachsten Fall sendet ein Host direkt ohne dazwischenliegende Hubs zu einem Device. Der Rhythmus ist nirgends spezifiziert, doch da kann sich das Device im Descriptor ›wünschen‹ wie oft es abgefragt werden möchte. Ich habe noch kein BS gesehen das sich genau daran hält (und auch das ist in den Spezifikationen nicht festgenagelt worden). Einzig bei isochronen Transfers sollten die zu übermittelnden Daten immer rechtzeitig bereit stehen. Wenn sie das tun, dann haben wir auch wieder keinen jitter aufgrund von NACKs.
🐧 DPA 🐧 schrieb: > Ich sags mal so, wenn ich mein USB BD Laufwerk an meinen Hub > anschliesse, dann updatet meine Maus noch so 1mal pro Sekunde, der bus > stirbt fast. Aber auch davor ist er schon an den grenzen. Dabei hängt da > garnicht so viel drann. 1 Dock, daran 3 Hubs, an einem davon 1x Maus, 1x > Tastatur, und 1x USB Soundkarte. Und manchmal sind noch Handy und Tablet > eingesteckt. Das ist schon alles. Power ist auch an allen Hubs drann. > Alles USB 3.2, und keine Billigteiler. USB ist doch einfach schrott. Mit > anderen Verbindungstüpen (egal ob ethernet oder sonst was), hab ich > solche Probleme nicht. Du hast noch nie eine saturierte Netzwerkleitung erlebt? Das kann ich gar nicht glauben! ;-)
Georg schrieb: > Von Windows, Linux, Android: unvorhersehbar, weil das keine > Echtzeitsysteme sind. Kann sein dass Impulsfolgen eine Zeitlang halbwegs > gleichmässig auftreten und ab und zu mit grosser Verzögerung bis zu Sekunden Das kann es auch bei RT Systemen. Kommt auf die Anforderungen an.
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.