Here are my test notes from earlier for STC USB-2UART
Notice the average sustained speed is quite low, as poor as 1/7th of the baud rate asked for.
Baud 0x00 Sustained average BandwidthResults
10Mbd0.9us 736.975k*2 = 1.473950MBd= 14.739%no failures on 100k blocks(40MHz sysclk /4 ?)
9Mbd 1.0us 658.905k*2 = 1.317810Mbd= 14.642%no failures on 100k blocks(36MHz sysclk /4 ?)
8MBd 1.1/1.2us581.299k*2 = 1.162598Mbd= 14.532%no failures on 100k blocks(32MHz sysclk /4 ?)
7.5Mbd 1.2us 542.266k*2 = 1.084532Mbd= 14.460%no failures on 100k blocks(30MHz sysclk /4 ?)
6MBd 1.5us 425.092k*2 = 850184 = 14.169%no failures on 100k blocks(24MHz sysclk /4 ?)
5MBd 1.8us 605.371k*2 = 1.210742Mbd= 24.214%no failures on 100k blocks(40MHz sysclk /8 bumps % BW ?)
3MBd 3.0us 493.187k*2 = 986374 = 32.879%no failures on 100k blocks(36MHz sysclk /12?)
2.5Mbd 3.6us 515.070k*2 = 1.030140Mbd= 41.205%no failures on 100k blocks(40MHz sysclk /16?)
2Mbd 4.5us 453.835k*2 = 907670 = 45.383%no failures on 100k blocks(40MHz sysclk /20?)
500k 169.974k*2 = 339948 = 67.989%no failures on 100k blocks(40MHz sysclk /80?)
22.1184M/4= 5529600 = 1.627us measure 1.6/1.7us388.223k*2 = 776446 = 14.041%OK
22.1184M/8= 2764800 => reports invalid baudrate
22.1184M/12 = 1843200 = 4.882us measure 4.8/4.9us410.528k*2 = 821056 = 44.545%OK
22.1184M/16 = 1382400 = 6.510us measure 6.5us 392.003k*2 = 784006 = 56.713%OK
22.1184M/20 = 1105920 => reports invalid baudrate
22.1184M/24 = 921600= 9.765us measure 9.6/9.7 235.302k*2 = 470604 = 51.063%OK
22.1184M/28 valid
22.1184M/32 valid
22.1184M/36 = 614400= 14.648us measure 14.6us 181.057k*2 = 362114 = 58.937%OK
22.1184M/48 = 460800 156.778k*2 = 313556 = 68.046%OK
22.1184M/96 = 230400 96.866k*2 = 193732 = 84.085%OK
22.1184M/144 = 153600 69.083k*2 = 138166 = 89.951%OK
22.1184M/156 = 141785 67.703k*2 = 135406 = 95.500%OK
22.1184M/160 = 138240 65.10usmeasure 65us 66.520k*2 = 133040 = 96.238%OK
22.1184M/164 = 134868 66.73usmeasure 66.7us 65.115k*2 = 130230 = 96.560%OK, rare failures.
22.1184M/168 = 131657drops chars !!
22.1184M/192 = 115200drops chars !!
all the way down to the
22.1184M/4/120m below which it starts working ok again.
If I compare with a WCH CH9102, itis much better - it managed close to 1 MByte/second USB BUS traffic,
WCH CH9102 checks - Simple Loopback Echo Block sends
1Mbd sustains 499,573*2100% with 10 x 100k blocks.< 0.1% BW loss
2Mbd sustains 999,062*2100% with 10 x 100k blocks.
4Mbd sustains 1.8941M*2100% with 10 x 100k blocks.-5.15% bandwidth
6Mbd sustains 2.7736M*2100% with 10 x 100k blocks.-7.546% bandwidth
Note that loopback is traffic two ways over USB so 1.109440 MBytes / second is being moved.
Quite good for 12MHz FS-USB.
He adds:
Tested FT232H => PL2303GC, (768 RX HW buffer) No handshakePL2303GC baud seems to be 48M/N so 12M, 9.6M, 8M etc
12Mbd seems ok at 768, even 10241280 is marginal, 10x1280 is 12760, or dropped 40 bytes
1280 is better at 8MBd
For large packets, one way, 6MBd looks ok and 8Mbd.N.1starts to drop characters, and 8M.n.2 gains a bit more time, so looks better
Tested 12MByte large block FT232H => PL2303GC at 8M.n.2 no dropped bytes
..
jmg 发表于 2024-10-7 10:36
Here are my test notes from earlier for STC USB-2UART
Notice the average sustained speed is quite lo ...
Very Detailed
THank you
页:
1
[2]