高云USB 2.0 Device Controller测试
[复制链接]
高云云源软件里有一个USB 2.0 Device Controller的IP,它可以让FPGA和USB2.0的PHY通信实现USB功能
官方提供了测试代码,不过代码是的PHY是使用USB 2.0 SoftPHY IP来实现的,因为USB 2.0 SoftPHY IP是用FPGA实现的USB2.0 PHY,需要额外搭电路或者画板子,比较麻烦。
最后使用手里的TangPrimer20K板子,因为板子上集成了一颗USB3317的PHY,就想着把源码里USB 2.0 Device Controller的UTMI接口换成ULPI接口,把USB 2.0 SoftPHY换成USB3317。结果还是花了很长时间才让电脑认出硬件来。
按照手册使用zadig安装好驱动程序后可以使用串口助手和FPGA通信了,源码实现的环回测试,通过串口助手给FPGA发送数据就回收到相同的数据。
因为不确定串口助手发送的数据能不能达到最大吞吐,所以把FPGA代码做了简单修改,让它不断的发送”www.eeworld.com.cn“,想着这样通过电脑接收数据就可以大致判断出最大吞吐了。
PHY_CLKOUT是USB3317有60MHz CLK_OUT时钟,每次发送一个字节就是480MBps。
不过实际接收只有1MByte左右,高速配置妥妥的全速效果。
担心串口助手有问题,我又自己写了一个测速软件,结果也基本1MByte左右。
收到的数据会有丢失。
怀疑是测速方法的问题,我找出STM32H747I的开发板,写了一个测试代码,USB HS使用串口助手接收大概2MByte左右,也没快多少。
现在问题不知道在哪了。
|