Closed mcuee closed 1 year ago
Cypress Cystream Utility Speed: as expected at 131100 kBps
SuperSpeed Interrupt IN Endpoint
SuperSpeed Interrupt OUT Endpoint
Device info from Cypress Control Center
<DEVICE>
FriendlyName="Cypress FX3 USB StreamerExample Device"
Manufacturer="Cypress"
Product="FX3 BULKSRCSNK"
SerialNumber=""
Configurations="1"
MaxPacketSize="512"
VendorID="04 B4"
ProductID="00 F1"
Class="00h"
SubClass="00h"
Protocol="00h"
BcdDevice="00 00"
BcdUSB="03 10"
<BOS>
NumberOfDeviceCapability="02h"
DescriptorType="15"
DescriptorLength="5"
TotalLength="22"
<USB20 Device Extension>
DescriptorLength="7"
DescriptorType="16"
DeviceCapabilityType="2"
bmAttribute="641Eh"
</USB20 Device Extension>
<SUPERSPEED USB>
DescriptorLength="10"
DescriptorType="16"
DeviceCapabilityType="3"
FunctionalitySupporte="3"
bmAttribute="00h"
U1Device Exit Latency="10"
U2Device Exit Latency="7FFh"
</SUPERSPEED USB>
</BOS>
<CONFIGURATION>
Configuration="0"
ConfigurationValue="1"
Attributes="80h"
Interfaces="1"
DescriptorType="2"
DescriptorLength="9"
TotalLength="53"
MaxPower="50"
<INTERFACE>
Interface="0"
InterfaceNumber="0"
AltSetting="0"
Class="FFh"
Subclass="00h"
Protocol="0"
Endpoints="0"
DescriptorType="4"
DescriptorLength="9"
</INTERFACE>
<INTERFACE>
Interface="0"
InterfaceNumber="0"
AltSetting="1"
Class="FFh"
Subclass="00h"
Protocol="0"
Endpoints="2"
DescriptorType="4"
DescriptorLength="9"
<ENDPOINT>
Type="INTERRUPT"
Direction="OUT"
Address="01h"
Attributes="03h"
MaxPktSize="16384"
DescriptorType="5"
DescriptorLength="7"
Interval="1"
<SUPER SPEED ENDPOINT COMPANION>
Type="SUPERSPEED_USB_ENDPOINT_COMPANION"
MaxBurst="15"
Attributes="00h"
BytesPerInterval="00h"
</ENDPOINT>
<ENDPOINT>
Type="INTERRUPT"
Direction="IN"
Address="81h"
Attributes="03h"
MaxPktSize="16384"
DescriptorType="5"
DescriptorLength="7"
Interval="1"
<SUPER SPEED ENDPOINT COMPANION>
Type="SUPERSPEED_USB_ENDPOINT_COMPANION"
MaxBurst="15"
Attributes="00h"
BytesPerInterval="00h"
</ENDPOINT>
</INTERFACE>
</CONFIGURATION>
</DEVICE>
FW codes including binary image: BMFW_IntrSourceSink.zip
Okay, this is invalid. I need to raise the buffersize to 16384 to get the rigth speed.
PS C:\libusbK-dev-kit_release> .\kBench.exe list mode=async buffercount=4 buffersize=16384 write
device-count=1
1. FX3 INTSRCSNK (USB\VID_04B4&PID_00F1\5&586B51A&0&13) [WinUSB]
Select device (1-1) :1
opened FX3 INTSRCSNK (USB\VID_04B4&PID_00F1\5&586B51A&0&13)..
Write Test Information
Driver : WinUSB
Vid / Pid : 04B4h / 00F1h
DevicePath : \\?\usb#vid_04b4&pid_00f1#5&586b51a&0&13#{0132a415-719a-56fd-c3c6-ccb967add796}
Device Speed : High
Interface # : 00h
Alt Interface # : 01h
Num Endpoints : 2
Priority : 0
Read Size : 16384
Write Size : 16384
Buffer Count : 4
Display Refresh : 1000 (ms)
Transfer Timeout: 5000 (ms)
Retry Count : 0
Verify Data : Off
Interrupt Write (Ep01h) Maximum Packet Size:1024
While the test is running:
Press 'Q' to quit
Press 'T' for test details
Press 'I' for status information
Press 'R' to reset averages
Press 'Q' to exit, any other key to begin..
Avg. Bytes/s: 128876705.42 Transfers: 7984 Bytes/s: 128876705.42
Avg. Bytes/s: 129369871.00 Transfers: 16037 Bytes/s: 129862551.18
Avg. Bytes/s: 130342260.64 Transfers: 24113 Bytes/s: 132317184.00
Avg. Bytes/s: 130282555.97 Transfers: 32181 Bytes/s: 130104440.94
Avg. Bytes/s: 130831010.93 Transfers: 40174 Bytes/s: 133086699.19
Avg. Bytes/s: 130535530.35 Transfers: 48178 Bytes/s: 129072377.95
Avg. Bytes/s: 130466474.09 Transfers: 56235 Bytes/s: 130055062.07
Avg. Bytes/s: 130679775.74 Transfers: 64303 Bytes/s: 132186112.00
Avg. Bytes/s: 130726674.02 Transfers: 72305 Bytes/s: 131104768.00
Avg. Bytes/s: 130754480.62 Transfers: 80301 Bytes/s: 131006464.00
Avg. Bytes/s: 130763929.85 Transfers: 88288 Bytes/s: 130859008.00
Avg. Bytes/s: 130794903.66 Transfers: 96292 Bytes/s: 131137536.00
Avg. Bytes/s: 130657326.20 Transfers: 104293 Bytes/s: 129024000.00
Avg. Bytes/s: 130676307.43 Transfers: 112284 Bytes/s: 130924544.00
Avg. Bytes/s: 130792739.62 Transfers: 120367 Bytes/s: 132431872.00
Avg. Bytes/s: 130749287.93 Transfers: 128435 Bytes/s: 130104440.94
Avg. Bytes/s: 130710975.51 Transfers: 136495 Bytes/s: 130103487.68
Avg. Bytes/s: 130807814.90 Transfers: 144580 Bytes/s: 132464640.00
Avg. Bytes/s: 130777302.17 Transfers: 152656 Bytes/s: 130233448.82
Avg. Bytes/s: 130771592.75 Transfers: 160631 Bytes/s: 130662400.00
Avg. Bytes/s: 130758115.42 Transfers: 168715 Bytes/s: 130490892.61
Avg. Bytes/s: 130730111.65 Transfers: 176658 Bytes/s: 130138112.00
Avg. Bytes/s: 130743470.35 Transfers: 184656 Bytes/s: 131039232.00
Avg. Bytes/s: 130728123.20 Transfers: 192741 Bytes/s: 130378582.68
Avg. Bytes/s: 130717920.23 Transfers: 200832 Bytes/s: 130475338.58
Avg. Bytes/s: 130705782.67 Transfers: 208791 Bytes/s: 130400256.00
Avg. Bytes/s: 130688117.70 Transfers: 216859 Bytes/s: 130232622.66
waiting for Ep01h thread..
stopped Ep01h thread. ExitCode=0
Write Test Information
Driver : WinUSB
Vid / Pid : 04B4h / 00F1h
DevicePath : \\?\usb#vid_04b4&pid_00f1#5&586b51a&0&13#{0132a415-719a-56fd-c3c6-ccb967add796}
Device Speed : High
Interface # : 00h
Alt Interface # : 01h
Num Endpoints : 2
Priority : 0
Read Size : 16384
Write Size : 16384
Buffer Count : 4
Display Refresh : 1000 (ms)
Transfer Timeout: 5000 (ms)
Retry Count : 0
Verify Data : Off
Interrupt Write (Ep01h) Maximum Packet Size:1024
Total Bytes : 3553034240
Total Transfers : 216860
Avg. Bytes/sec : 130688720.34
Elapsed Time : 27.19 seconds
Press any key to exit..
PS C:\libusbK-dev-kit_release> .\kBench.exe list mode=async buffercount=4 buffersize=16384 read
device-count=1
1. FX3 INTSRCSNK (USB\VID_04B4&PID_00F1\5&586B51A&0&13) [WinUSB]
Select device (1-1) :1
opened FX3 INTSRCSNK (USB\VID_04B4&PID_00F1\5&586B51A&0&13)..
Read Test Information
Driver : WinUSB
Vid / Pid : 04B4h / 00F1h
DevicePath : \\?\usb#vid_04b4&pid_00f1#5&586b51a&0&13#{0132a415-719a-56fd-c3c6-ccb967add796}
Device Speed : High
Interface # : 00h
Alt Interface # : 01h
Num Endpoints : 2
Priority : 0
Read Size : 16384
Write Size : 16384
Buffer Count : 4
Display Refresh : 1000 (ms)
Transfer Timeout: 5000 (ms)
Retry Count : 0
Verify Data : Off
Interrupt Read (Ep81h) Maximum Packet Size:1024
While the test is running:
Press 'Q' to quit
Press 'T' for test details
Press 'I' for status information
Press 'R' to reset averages
Press 'Q' to exit, any other key to begin..
Avg. Bytes/s: 130449408.00 Transfers: 7962 Bytes/s: 130449408.00
Avg. Bytes/s: 130703360.00 Transfers: 15955 Bytes/s: 130957312.00
Avg. Bytes/s: 130186525.20 Transfers: 23965 Bytes/s: 129169133.86
Avg. Bytes/s: 130423330.68 Transfers: 31969 Bytes/s: 131137536.00
Avg. Bytes/s: 130745365.23 Transfers: 40028 Bytes/s: 132038656.00
Avg. Bytes/s: 130439129.97 Transfers: 48023 Bytes/s: 128927244.09
Avg. Bytes/s: 130536118.32 Transfers: 56026 Bytes/s: 131121152.00
Avg. Bytes/s: 130492685.26 Transfers: 63972 Bytes/s: 130187264.00
Avg. Bytes/s: 130463508.35 Transfers: 72040 Bytes/s: 130232622.66
Avg. Bytes/s: 130461446.49 Transfers: 80129 Bytes/s: 130443086.61
Avg. Bytes/s: 130375406.39 Transfers: 88153 Bytes/s: 129522380.30
Avg. Bytes/s: 130348976.98 Transfers: 96091 Bytes/s: 130056192.00
Avg. Bytes/s: 130449362.90 Transfers: 104127 Bytes/s: 131661824.00
Avg. Bytes/s: 130187510.73 Transfers: 111864 Bytes/s: 126763008.00
Avg. Bytes/s: 130202543.00 Transfers: 119951 Bytes/s: 130410834.65
Avg. Bytes/s: 130206526.13 Transfers: 128029 Bytes/s: 130265700.79
Avg. Bytes/s: 130260939.33 Transfers: 136033 Bytes/s: 131137536.00
Avg. Bytes/s: 130241274.70 Transfers: 144081 Bytes/s: 129909785.22
Avg. Bytes/s: 130162966.62 Transfers: 152066 Bytes/s: 128765984.25
Avg. Bytes/s: 130215421.28 Transfers: 160075 Bytes/s: 131219456.00
Avg. Bytes/s: 130182987.76 Transfers: 168108 Bytes/s: 129540031.50
Avg. Bytes/s: 130201516.87 Transfers: 176198 Bytes/s: 130587743.84
Avg. Bytes/s: 130217871.22 Transfers: 184168 Bytes/s: 130580480.00
Avg. Bytes/s: 130181270.71 Transfers: 192189 Bytes/s: 129346519.69
waiting for Ep81h thread..
stopped Ep81h thread. ExitCode=0
Read Test Information
Driver : WinUSB
Vid / Pid : 04B4h / 00F1h
DevicePath : \\?\usb#vid_04b4&pid_00f1#5&586b51a&0&13#{0132a415-719a-56fd-c3c6-ccb967add796}
Device Speed : High
Interface # : 00h
Alt Interface # : 01h
Num Endpoints : 2
Priority : 0
Read Size : 16384
Write Size : 16384
Buffer Count : 4
Display Refresh : 1000 (ms)
Transfer Timeout: 5000 (ms)
Retry Count : 0
Verify Data : Off
Interrupt Read (Ep81h) Maximum Packet Size:1024
Total Bytes : 3148840960
Total Transfers : 192190
Avg. Bytes/sec : 130181948.07
Elapsed Time : 24.19 seconds
Press any key to exit..
Test board: official Cypress https://www.infineon.com/cms/en/product/evaluation-boards/cyusb3kit-003/
Device: Cypress FX3 FW: Interrupt Source Sink, modified from Bulk Source Sink example Interrupt IN/OUT SuperSpeed Endpoint: 16 burst x 1024 Bytes = 16384 Bytes wMaxPacketSize Expected Speed: 16384 Bytes / 125 us = 131,072 Bytes/ms = 131,072,000 Bytes/second
But kBench reaches much lower speed for both read and write.. And results are similar for different drivers: libusbK.sys, WinUSB and libusb0.sys.