Verlangsamt sich USB, wenn zu viel Rauschen auftritt, oder fällt es einfach aus? Der von mir verwendete USB-Host-Treiber ist unter Linux ehci-hcd.
Verlangsamt sich USB, wenn zu viel Rauschen auftritt, oder fällt es einfach aus? Der von mir verwendete USB-Host-Treiber ist unter Linux ehci-hcd.
Einzelne Pakete enthalten eine Prüfsumme, sodass sie fehlschlagen. Auf Betriebssystemebene werden fehlgeschlagene Pakete wahrscheinlich einige Male für Massen- und Interrupt-Übertragungen wiederholt. Wenn ein isochrones Paket ausfällt, sind diese Daten nicht mehr vorhanden. Wenn der Host es erneut versucht, wird der Bus auf höherer Ebene langsamer.
Die USB-Spezifikation sagt nichts über die übergeordnete Richtlinie für den Umgang mit fehlgeschlagenen Paketen aus, nur dass die Empfänger Pakete vollständig ignorieren müssen mit schlechten Prüfsummen. Es liegt daher an der Host-Implementierung, was bei häufigen Paketfehlern zu tun ist. Einige Hosts entladen beispielsweise ein Gerät nach zu vielen Fehlern und lassen es nach einer Weile erneut auflisten. Andere geben ihm möglicherweise eine niedrigere Priorität, wenn andere Geräte um die Bandbreite konkurrieren. Andere geben möglicherweise einfach für diesen Frame auf und versuchen es im nächsten Frame erneut. Dies ist eher eine Frage für die Host-USB-Treiberrichtlinie als für USB.