Achievable USB CDC throughput on LPC55S69

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Achievable USB CDC throughput on LPC55S69

298 次查看
scottm
Senior Contributor II

I've got a board based on the LPC55S69 that currently has an Ethernet interface that carries around 800 kbps of data (in either direction, but the bidirectional total should remain about the same.) A customer wants to see if we can eliminate the Ethernet interface and run the network traffic over the USB connection instead.

I've set up PPP over USB CDC using the MCUX SDK's VCOM driver on the USB0 full-speed interface. it mostly works but it's seeing some packet loss under load. My question is what kind of throughput should be achievable with CDC using the LPC55S69 and the MCUX driver?

In particular I'd like to know if the CDC driver has been optimized for performance or if it's designed for minimal complexity. I'm trying to avoid switching to the high-speed USB interface because it's going to introduce more clocking complexity. If the CDC driver can achieve something reasonably close to the theoretical limit then I should be fine with FS.

Thanks,

Scott

标签 (2)
0 项奖励
回复
3 回复数

261 次查看
Alice_Yang
NXP TechSupport
NXP TechSupport

Hi @scottm 

Theoretically, USB Full Speed should meet the requirements of the customer's application.


The current CDC driver and demo are not performance-optimized.


In case of packet loss under high load conditions, consider increasing the buffer size as a potential workaround.

 

BR

Alice

0 项奖励
回复

217 次查看
scottm
Senior Contributor II

Hi Alice,

Sorry for the slow reply, apparently email notifications are getting flagged as spam.

My concern was that at first glance it looked like the CDC driver was only taking one 64-byte packet per transfer but now that I've looked closer I think it's OK and the inefficiency is only going to be in the slack between transfers. For high-speed USB that's a bigger concern since there are only 3 512-byte USB packets for every Ethernet MTU but for FS I don't think it matters as much.

I rewrote the VCOM demo years ago and I don't remember what the original even looked like at this point. My version does have room for improvement to keep from blocking the lwIP task, though. I'm sending bursts of 6 RTP packets so if I can buffer all 6 it should help keep things moving smoothly.

I opened a ticket about the CDC ECM driver that appeared in the SDK and I'm still hoping for some documentation on that - ECM would be a cleaner solution than PPP in the long run.

Thanks,

Scott

 

0 项奖励
回复

188 次查看
Alice_Yang
NXP TechSupport
NXP TechSupport

Hello @scottm 

Thanks for sharing.

I’ve submitted a request to the SDK team regarding the CDC EDM document issue. I’ll provide you with any updates once I’m back from vacation.

I’ll be on public holiday from September 30 to October 8. During this period, if you encounter any issues, please feel free to create a new ticket—my colleagues will help you. I’ll also continue supporting you once I’m back. I apologize for any inconvenience this may cause and appreciate your understanding.

 

BR

Alice

0 项奖励
回复