Ich habe auf Cypress ein Video gesehen, in dem die Übertragungsbandbreite gemessen wird. Die gemessene Bandbreite beträgt dort 381MByte pro Sekunde. Es gibt ja inzwischen den CYUSB3014-BZXC der besitz ein 32Bit Interface und mehr RAM. Ich weis nicht ob der Speedtest mit dem alten FX3 (16Bit Interface und weniger RAM) oder mit dem neuen FX3 durchgeführt wurde. Vielleicht hat auch eine Treiberoptimierung mehr Performance aus dem IC geholt.
Den FX3 mit 32 Bit GPIF II gabs doch als erstes (3014). Die anderen kamen erst später. Ich hab hier das DVK schon seit langem und damit erreicht man schon solche Werte. Mit 16 Bit geht das nicht, das GPIF II kann maximal mit 100MHz betrieben werden. Ich hab an einem NEC Controller als Maximum so knapp über 320MB/s erreicht.
Richtig. Der allererste Fx3 hatte auch schon 32 Bit Interface. Und damit konnte man diese Bandbreite auch erreichen. Sogar mit den noch etwas fehlerbehafteten Engineering-Samples.
Klaus schrieb: > Sogar mit den noch etwas > fehlerbehafteten Engineering-Samples. Jo, so einen hatte ich auf dem DVK. Damit ging kein SPI Boot. Mittlerweile habe ich den gegen einen finalen ausgetauscht.
Reichlich 320MB/s hab ich ohne großartige Optimierungen erreicht, ein BULK IN EP, 16 Packetes per Burst, 1024 Byte pro Paket, 100MHz PCLK, PCIe 2.0 Host Controller. Kann schon sein, dass man durch weitere Optimierungen noch etwas mehr schafft.
Hallo Chrsitian. Die mehr als 300 MByte/s versuche ich schon seit Tagen (und Nächten) mit dem FX3 DVK in Richtung PC zu erreichen (Stream IN), leider vergebens. Ich nehme als Basis die AN65974 von Cypress und die zugehörige SyncSlaveFifo Firmware, darin sind 16 Packete per Burst gesetzt, ich habe DMA auf AUTO gestellt. Am FX3 GPIF habe ich ein FPGA Board mit 100 MHz und 32 bit. Das FPGA liefert bei jedem FlagA genau 4096 Takte Daten a 32 bit (16384 bytes), das Partial Flag habe ich im ersten Schritt nicht implementiert. Die ersten 8 buffer (8x16384) laufen mit voller Geschwindigkeit in das FIFO, danach wechselt das FlagA etwa im Verhältnis 50:50 seinen Pegel, demnach halbe Zeit Pause, halbe Zeit Datentransfer in das FIFO. An der Streamer Applikatioin erhalte ich dann auch ca. 160 MByte/s. Ich verwende identische Einstellungen am Streamer für Bulk IN wie der AN65974 beschrieben. Da werden sogar 356 MByte/s gezeigt. Auf der Host Seite sitzt ein aktueller NEC USB3.0 Controller im PCI 2.0 Express Slot unter WinXP SP3. Der Cypress Streamer verwendet den CyUSB3 Treiber. Nachdem der erste der 8 buffer übertragen wurden sollte ich doch sofort wieder Daten in das FIFO schreiben können, somit nahtlos und ohne große Pausen übertragen oder muss ich einen weiteren Kanal für die Übertragung P2U implementieren ?
Hm, die 160MB/s hören sich verdammt nach der PCIe 1.1 Grenze an. Genau den gleichen Wert bekomme ich an meinem Office Rechner mit NEC Controller im 1.1 Slot. Schau da nochmal genau nach, ob PCIe 2.0 unter XP und mit dem Mainboard/Controller überhaupt geht. Die 340MB/s erreiche ich nur an einem Athlon Quadcore Board mit NEC Controller auf dem Mainboard oder an aktuellen Laptops mit i7 und aktuellem Chipsatz mit nativem USB 3.0 (Z77 ?). Am FX3 kannst du nichts mehr optimieren, wenn du das so eingestellt hast, mehr hab ich da auch nicht.
Danke. Das werde ich gleich Morgen noch mal prûfen. Allerdings habe ich die 160 Mbyte/s auch an meinem Win7 64 Notebook mit PCIe 2.0 und NEC Controller. Chipsatz unf weitere Info sende ich nach.
Ja, PCIe war der Flaschenhals. Ich hatte den Transcend PDU3 USB3.0 Adapter im PCIe 2.0 x 1 Slot stecken, weil die Karte auch nur einen x 1 Anschluß hat, aber der scheint auf meinem Mainboard nicht optimal angeschlossen zu sein. Das Mainboad ist ein Asus P5Q Pro mit Chipsatz Intel P45 (Northbridge) und Intel ICH10 (Southbridge) mit einem Intel Quad Core. Jetzt steckt der Adapter im PCIe 2.0 x 16 und der ist im Gegensatz zum PCIe 2.0 x1 auf meinem Mainboard an der Northbridge angeschlossen. Ich gehe nun davon aus, das der vorherige Steckplatz (x 1) die 500 MByte/sec in seiner Lane nicht erreicht (über Southbridge und Northbridge geführt). Nun bekomme ich zumindest mal 290 Mbyte/sec, aber mein PCLK am FX3 GPIF ist auch vorerst nur ca. 70 MHz. Den werde ich nun weiter erhöhen unter Beachtung der Setup/Hold Zeiten am GPIF. Scheinbar wird das Problem an meinem ziemlich aktuellen Win 7 64 Notebook ähnlich sein. Besser wäre natürlich ein Onboard USB3.0 (Intel Chipsatz Z77). Danke Euch für den wertvollen Hinweis.
Na dann gehts ja. Das ist echt eine böse Falle mit dem PCIe Steckplatz. Aber 70MHz und 290MB ist dann aber auch etwas nach oben gerundet, da sind ja nur 280MB/s möglich.
Ja ich habe gerundet. Es sind mehr als 70 MHz, das passt. Ich hatte auch schon kurz die 100MHz am Laufen, kam nur auf etwa 312MByte/s. Also auch hier wird höchstwahrscheinlich PC-seitig der Durchsatz nicht ganz erreicht. Das ist nun aber i.O., für mehr muss ich wohl ein aktuelles System mit optimaler Anbindung des USB3.0 Host-Controllers haben. Aber Danke noch mal und frohe Weihnachten.
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.