This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] DS90UB960-Q1:图像重影问题

Guru**** 2560390 points
Other Parts Discussed in Thread: ALP

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1247073/ds90ub960-q1-image-ghosting-issue

器件型号:DS90UB960-Q1
主题中讨论的其他器件:ALP

大家好、

UB953通过 UB960连接4个 UB953、而/dev/video0只能获取该图。 重影画面看起来叠加了四个图像:  

 CSI_VC_MAP 寄存器(地址0x72)的读取值为 0xE4。

问题的原因可能是什么? 您能帮助检查一下吗? 谢谢。

此致、

切里

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Cherry:

    寄存器0x72是一个虚拟通道映射寄存器。 默认情况下该位为0xE4、因此传入 CSI-2数据包的 VC-ID 映射如下:VD-ID 为3 = 3、VC-ID 为2 = 2、VD-ID 为1 = 1、VD-ID 为0 = 0。  如果需要、您 可以根据 SOC 的配置重新映射它们。

    为了能够调试该问题、您能否发送960的寄存器转储?  

    您还可以发送任何 用于寄存器编程的脚本吗?

    此致、

    信迪

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Cindy、您好!

    感谢您的支持。

    以下 BUF 是寄存器地址和引导时系统写入90UB960的相应写入值:

    u8 buf[41][2]={{0x01、0x07}、{0x0c、0x0F}、{0x1f、0x02}\

    、{0x4c、0x01}、{0x6d、0x7c}、{0x58、0x5e}、{0x5c、0x30}、{0x5d、0x94}、{0x65、0x94}、{0x5e、0xda}、{0x66、0xda}\

    、{0x4c、0x12}、{0x6d、0x7c}、{0x58、0x5e}、{0x5c、0x32}、{0x5d、0x94}、{0x65、0x84}、{0x5e、0xda}、{0x66、0xca}\

    、{0x4c、0x24}、{0x6d、0x7c}、{0x58、0x5e}、{0x5c、0x34}、{0x5d、0x94}、{0x65、0x74}、{0x5e、0xda}、{0x66、0xba}\

    、{0x4c、0x38}、{0x6d、0x7c}、{0x58、0x5e}、{0x5c、0x36}、{0x5d、0x94}、{0x65、0x64}、{0x5e、0xda}、{0x66、0xaa}\

    、{0x1f、0x02}、{0x32、0x01}、{0x33、0x03}、{0x21、0x00}、{0x20、0x00}、{0x21、0x01}

    用于读取90UB960的寄存器值如下:

    谢谢。此致、

    切里

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Cherry:

    下面是我从端口3寄存器转储中观察到的情况:

    • 寄存器0x4D 位[4] LOCK_STS_CHG 已标记、这意味着自上次读取寄存器以来、端口3的锁定已丢失。   
      • 您能否确认对于每个端口、锁定是稳定的? 要做到这一点、您可以在寄存器0x4C 中选择端口并多次读取寄存器0x4D、并且每次读取之间存在延迟。 PASS 和 LOCK 应保持高电平、而 LOCK_STS_CHG 保持低电平。  
    • 寄存器0x4E 报告线数变化和缓冲区溢出错误。  
      • 缓冲器溢出错误意味着要转发的输入带宽之和超过了输出带宽(请参见960数据表中的第7.4.20节)。 这可能会导致视频数据丢失。 您能否提供以下成像仪参数、以便我帮助您检查您是否能够聚合4个视频输入?  
        • 水平有效像素
        • 垂直线总数
        • 帧速率
        • 每像素位数  
        • 时钟类型(连续或非连续)
        • CSI-2通道速度
        • CSI-2通道数
        • 转发模式 -看起来您正在尽最大努力循环、对吗?  
    • 对 CSI-2转发进行编程时、请确保在寄存器0x20中启用转发之前对寄存器0x21进行编程。

    此致、

    信迪

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Cindy、您好!

    • 水平有效像素数   :1600
    • 垂直线总数       :1315
    • 帧速率                       :30fps
    • 每像素位数           :YUV422 8bit UYVY
    • 时钟类型(连续或非连续)  :连续  
    • CSI-2通道速度              :800Mbps
    • CSI-2通道数:2通道     
    • 转发模式 -看起来您正在尽最大努力循环、对吗?

    --客户尝试了其他同步 CSI-2转发,没有波形可以从 MIPI 接口测量,只有尽力测量 MIPI 接口的数据波形,并获得一个正常的图像与单90UB953访问。  

    寄存器0x4D 位[4] LOCK_STS_CHG 已标记,这意味着自上次读取寄存器以来,端口3的锁定已丢失。

    可能由于第一次读取而标记了 LOCK_STS_CHG、并且在后续读取中找不到标记的 LOCK_STS_CHG。

    以下是从90UB953读取的所有寄存器值:

    谢谢。此致、

    切里

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Cherry:

    感谢您确认锁定状态。 只是为了确认、当他们多次读取0x4E 时、该值是否仍为0x55并显示缓冲区错误?  

    来自4个串行器的输入带宽似乎超过了发送器的输出带宽。 输入带宽总和约为4.04Gbps (H*V*FRAME*(位/像素)*DELAY*4摄像机)。

    能否尝试 增加960 CSI-2输出带宽? 由于输出带宽取决于多个因素、因此可以参阅960数据表中的第7.4.20节进行计算。  

    还有一个  介绍 CSI-2聚合的培训视频。  

    此致、

    信迪

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Cindy、您好!

    只是为了确认,当他们多次读取0x4E 时,该值是否仍然为0x55并显示缓冲区错误?  [/报价]

    将0x4C 寄存器分别设置为0x01、0x12、0x24、0x38、0x55仅出现在第一次读取0x4E 时、然后出现0x04。 然而、当0x4C 寄存器设置为0x38时、读取0x4E 偶尔会导致0x14。

    即0x55仅出现在第一次读取0x4E 时、之后不再出现。

    谢谢。此致、

    切里  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Cherry:

    如果0x4E 偶尔读取0x14、则表示 Buffer_error 位已被标记。 在给定传感器和变送器配置的情况下、我仍怀疑这是视频缓冲器错误。 客户是否可以尝试增加 CSI-2输出带宽、以便输出带宽大于进入960的所有四个传感器的输入带宽?

    此致、

    信迪

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Cindy、您好!

    客户将0x1F 寄存器设置为0x00、并且使用25MHz 晶体振荡器时、CSI_TX 速度应为1.6Gbps。  

    在该计算中、带宽应为4.36Gbps。

    将0x4C 寄存器分别设置为0x01、0x12、0x24和0x38。 仅当首次读取0x4E 时、该值才为0x45、后续的均为0x04。 未设置 Buffer_error。  

    捕获的图像仍然是来自四个摄像机的重叠图像的结果。  目前、转发模式已配置为手动轮询模式。

    转发模式是否应配置为同步转发模式?

    基本同步转发

    线路交错转发

    线路连接转发

    尝试将转发模式配置为三种可选同步模式中的任何一种时、CSI-TXD 引脚上没有数据。  我们是否应该继续在同步模式下寻找问题?

    此致、

    安妮

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Annie:

    如果所有后续读取0x45均为0x04、则表示操作正常。

    能否检查在960寄存器0x72中是否正确编程了 VCID? 应按 SoC 的预期进行编程。

    为了使用同步转发、到达输入端口的视频应在大约1个视频线周期内同步。 您是否使用任何帧同步来同步传入的视频数据? 所有成像仪还需要相同的视频参数来进行同步转发。   

    您是否按照数据表示例配置同步转发? 如果检查960寄存器0x35、应该看到 TX_PORT_PASS 和 TX_PORT_SYNC 被标记为正常运行。

    此致、

    信迪

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Cindy、您好!

    960寄存器0x72的值为0xE4。

    目前、使用的所有摄像机具有相同的参数。  当0x21寄存器配置为0x08 (行-交错转发)时、多次读取0x35寄存器将在0x01和0x00之间变化。

    未进行帧同步操作。

    此致、

    安妮

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Annie:

    寄存器0x72=0xE4是默认值、但您可以根据您的系统更改 VD-ID 映射。 SoC 将使用 VD-ID 映射来区分不同的数据流并聚合来自多个成像器的数据。 您能否确认这是您系统的正确 VC-ID 映射?  

    您是否在循环模式下在寄存器0x35中获得一致的 TX_PORT_PASS? 问题是否仅仅在于重叠的图像(因此没有闪烁的屏幕或丢失的视频帧)?

    是否可以在960上启用 patgen 来查看是否能成功地看到这些数据? 您可以使用 ALP 图形发生器选项卡生成合适的寄存器值、具体取决于您需要的视频参数。

    至于同步转发问题、如果没有帧同步、则可能无法满足所有输入在1个视频线路周期内同步的要求。 您能看到输入是否在一个视频线周期内进行了对齐吗? 否则、为了使用同步转发、可能需要进行帧同步。  

    此致、

    信迪