Forum: Mikrocontroller und Digitale Elektronik FT245-Geschwindigkeit


von Ralf (Gast)


Lesenswert?

Hallo,

kann mir jemand was zu der Übertragungsrate des FT 245 von FDTI
sagen?..

Im Datenblatt steht, dass mit dem Virtuellen Com Port Treiber 300 kbyte
 pro sekunde übertragen werden können.
Ist somit also gewährleistet, dass 300 bytes jede millisekunde an den
Rechner übertragen werden? Oder lässt sich darüber keine zuverlässige
Aussage bei usb machen?

Also mir geht es eigentlich darum, gezielt sagen zu können wieviel
bytes ich in jeder millisekunde maximal in den Puffer schieben darf
ohne das dieser überläuft.

von Alex (Gast)


Lesenswert?

Da gibt es glaube ich eine 65kByte Obergrenze (für die Puffergröße, bin
mir aber über die genaue Größe nicht sicher). Solange der Puffer nicht
voll ist, kannst du Daten ohne Verlust senden.

Bei der Übertragung wirst du also eine Art Handshake einführen müssen,
wo der PC nach jedem Datenblock das Leeren des Puffers an den
Mikrocontroller, DSP, ... bestätigt (senden eines einzelnen Zeichens).
Dann kann dieser erneut senden.

Die Datenrate wird dann im wesentlichen durch die
Reaktionsgeschwindigkeit des PCs limitiert.

von Uwe Bonnes (Gast)


Lesenswert?

Die ganze USB Geschichte geht blockweise. Pro Millisekunde kannst Du mit
etwa einen uebertragenen Block rechnen. Wenn Du also Byteweise
schreibts, wirst Du nur etwa ein kByte pro Sekunde uebertragen
koennen.Formuliere es also so um: Du darfst je Millisekunde einen Block
in den FT245 schieben, vorausgesetzt, er passt auch in die Puffer des
FT245.

von Martin (Gast)


Lesenswert?

Hallo
Wobei Handshake durch die RD und WR-Leitungen sowieso garantiert ist.

Um diese Millisekunde erreichen zu können, muss der Latency Timer
entsprechend eingestellt werden.

Ich habe aber vom Support erfahren, dass diese Millisekunde jedoch nur
im Idealfall erreicht wird. Ich habs leider nicht probiert, da ich noch
nie so hohe Übertragungsraten benötigte.

Gruß, Martin

von Ralf (Gast)


Lesenswert?

Hallo,

danke für eure Antworten! Mit dem Handshake nutzt mir nicht viel, weil
mein Protokoll was ich an den PC übertragen will in Echtzeit
läuft...zwar nur ganz Soft, aber bremsen kann ich das Datenaufkommen
trotzdem nicht. Um eine Aussage treffen zu können ob der FT245 geeignet
ist, muss ich also wissen wieviele bytes ich pro millisekunde
reinschieben kann ohne das der buffer irgendwann überläuft, weil er
nicht zügig genug geleert wird.
Mein grosses Problem ist also gar nicht mal ein hohes Datenaufkommen,
sondern dass ich eine Aussage über das garantierte Transfervolumen pro
Zeiteinheit über USB treffen muss.

Danke nochmal

von Michael W. (mictronics) Benutzerseite


Lesenswert?

>>Mit dem Handshake nutzt mir nicht viel, weil
>>mein Protokoll was ich an den PC übertragen will in Echtzeit
>>läuft...zwar nur ganz Soft, aber bremsen kann ich das Datenaufkommen
>>trotzdem nicht.

Dann solltest Du nicht den VCP Treiber verwenden, sondern den D2XX
Direct DLL Treiber. Der ist um einiges schneller.

von Steffen (Gast)


Lesenswert?

"Mein grosses Problem ist also gar nicht mal ein hohes Datenaufkommen,
sondern dass ich eine Aussage über das garantierte Transfervolumen pro
Zeiteinheit über USB treffen muss."

Dazu kann man keine allgemeingültige Aussage treffen, da zwar jede ms
ein Datenblock übertragen wird aber immer nur an ein Gerät. Sind
mehrere an einem Host angeschlossen, dann passt da schon nichts mehr.

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
Noch kein Account? Hier anmelden.