返回上级
共2条
跳至  页 
  • 阅读数:582发布于2020-08-14 18:08:24

    只看该作者
    MX6000 USB3.0传输掉线问题 复制本文链接

    问题描述:事业部的Deeyea项目,使用MX6000 USB3.0传输数据,在数据传输过程中,有些样机会出现USB3.0掉线,重新连接的问题。

    背景:

         MX6000bring up的时候,发现24Mhz Crystal ClockUSB做参考时钟的时候,只有USB2.0可以稳定运行。在USB3.0连接的时候,如果开启深度引擎,会导致USB3.0断线。改用外置的独立晶振作为USB reference clock,可以解决这个问题。结论是Crystal PAD输入的24Mhz clock在送给USBreference clock的时候,由于线路过长,受到IR Drop的影响,导致时钟质量不符合USB3.0 PHY的要求。在MX6000 ECO的时候,试图通过优化走线改善时钟质量,结果是只能改善但不能完全解决。所以后续项目都采用USB外置一个独立的有源晶振作为参考时钟的方案。

    问题分析:

         1. Deeyea项目使用的是外置的有源晶振作为USB3.0的参考时钟。确认参考时钟源已经切换到外置晶振。

         2. 排查信号质量,发现远端的信号质量不符合标准。把方向放在改善信号质量上面。

         3. 系统通过调节USB PHY参数的方法调节信号质量,没有明显效果。陷入僵局。

         4. 事业部的同事做了一些试验,发现有一种方法,把USB3的外置参考时钟同时连接到XTAL_IN作为系统输入时钟的时候,可以解决这个问题。

         5. 怀疑是无源晶振产生的系统时钟信号的质量问题,导致USB controller发出的信号不对。

         6. 由于项目比较紧,同时做两件事:一个是用试验发现的USB3参考时钟一分2的方法,在多个板子上做压力测试。另一个是试验如果XTAL_INUSB参考时钟分别用型号相同的两个外置晶振作为输入,是否会解决这个问题。

         7. XTAL_INUSB参考时钟分别用型号相同的两个外置晶振作为输入,试验失败,依然会有掉线的情况。由此可以确定并不是信号质量问题。怀疑是芯片内部干扰。

         8. 跟同事聊到这个时候,说板子上两路clock切换电路,输出clock会受到另一路没有选中的clock干扰。芯片内部也是一个clock二选一MUX,于是怀疑也有可能在Clock二选一MUX的位置,未选中时钟对输出时钟的质量产生了影响。

         9. 让深圳firmware的同事帮忙设置寄存器,关掉XTAL_INUSB参考时钟MUX的通路,可以解决这个问题。基本确定原因,就是XTAL_IN进来的clock,虽然没有被选中,但是在clock mux的地方,会干扰到外置晶振送进了的参考时钟的质量。

    总结:

         1. 高速接口对参考时钟的要求非常高,轻微的干扰就会造成信号质量问题。

         2. 芯片内部的参考时钟处理要特别注意,尤其是在芯片内部有长走线的时候,要做特殊处理(用POWERGROUND隔离,让clock走线通路和clock buffer不受到IR drop的干扰)。

         3. 送给高速接口的clock MUX,选中一路的同时,另一个clock要做门控。

    回复 (1)

    举报
  • 发布于2020-08-17 23:12:39

    只看该作者 显示全部

    不知道Deeyea在传输高分辨率高帧率(比如1080p@30fps)的RGBD视频流到主机的时候,软件层面(驱动)稳定性怎么样? 会不会内存溢出呢?

    回复 (0)

    举报
  • 发布于2020-09-03 12:37:07

    只看该作者 显示全部
    李万姬 发表于 2020-08-17 23:12:39

    不知道Deeyea在传输高分辨率高帧率(比如1080p@30fps)的RGBD视频流到主机的时候,软件层面(驱动)稳定性怎么样? 会不会内存溢出呢?

    目前版本的Deeyea,USB3.0模式下传输1920*1080@30FPS RGB图像是没有问题的。  

    回复 (0)

    举报
返回上级
共2条
跳至  页 
举报

请选择举报理由

  • 垃圾广告
  • 违规内容
  • 恶意灌水
  • 重复发帖
提示

奥比中光 · 3D视觉开发者社区...

站长统计