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 + DS90UB953-Q1 + sony imx390 方案,遇到問題請教!!

Other Parts Discussed in Thread: DS90UB960-Q1, TIDA-020002, DS90UB953-Q1, ALP

目前已可以透過I2C 訪問 Ti960/ Ti953/ 與 imx390(可量到 sensor 端I2C 正確訊號)

硬體
POC Filter;參照DS90UB960-Q1  Figure 40. Typical PoC Network for a "4G" FPD-Link III
REFCLK: 25Mhz ( 100ppm)
Mode : Strap Configuration Mode Select; No.4 of Table2. /CSI-2 Mode

設定
大致參照 Design Guide: TIDA-020002
FPD-Link III I2C Initialization

但 CSI0 輸出 MIPI訊號斷續...沒辦法輸出完整影像.

有發現設定上,可能是非連續性訊號
Register 0x33 with 0x01: without Enable CSI-2 continuous clock mode.

但又在文件上發現
DS90UB953-Q1 page 17, CSI-2 有分 Short 與 Long Packet(包含 VC / Data ID...) 如何確認 或 設定輸出Short Packet呢?
另 DS90UB953-Q1 修改 Reg 0x06/ 07 CSI0 輸出 MIPI,看起來也會影響,但又該如何正確調整呢??

  • 另外DS90UB960-Q1 設定 Pattern Generation

    # Set CSI Timing parameters for 400Mbps operation (both ports)
    board.Ind_Acc_Write(0x0, 0x40, [0x83, 0x8D, 0x87, 0x87, 0x83, 0x86, 0x84, 0x86, 0x84], 9)
    board.Ind_Acc_Write(0x0, 0x60, [0x83, 0x8D, 0x87, 0x87, 0x83, 0x86, 0x84, 0x86, 0x84], 9)

    上述設定,該如何在微處理機上,I2C 訊號實現呢??


    # 1920*1080 @ 30 fps
    # 4 x lane 400Mbps/lane
    # Data Type: YUV422 10-bit

    # Data
    #
    # ` pixles
    # Vactive:1080 lines
    # Vtotal:1125 lines
    # Vfront:10 lines
    # Vback:33 lines
    # Pixel size: 20 bits (Mipi CSI-2, Table 15 )
    # Block size: 5 bytes (Mipi CSI-2, Table 15 )
    # Frame rate: 30 fps
    # Number of bars: 8
    #
    # Reset
    board.WriteReg(0x01, 0x01)
    # Set CSI_TX_SPEED to select 400Mbps
    board.WriteReg(0x1F, 0x03)
    #
    # Set CSI Timing parameters for 400Mbps operation (both ports)
    board.Ind_Acc_Write(0x0, 0x40, [0x83, 0x8D, 0x87, 0x87, 0x83, 0x86, 0x84, 0x86, 0x84], 9)
    board.Ind_Acc_Write(0x0, 0x60, [0x83, 0x8D, 0x87, 0x87, 0x83, 0x86, 0x84, 0x86, 0x84], 9)
    #
    # CSI sel and CSI enable
    board.WriteReg(0x32, 0x01) # CSI0 sel and CSI0 enable
    time.sleep(0.5)
    board.WriteReg(0x33, 0x01) # CSI_LANE_COUNT: 4
    time.sleep(0.5)

    # enable pat gen
    board.WriteReg(0xB0, 0x00) # Indirect Pattern Gen Registers
    board.WriteReg(0xB1, 0x01) # PGEN_CTL
    board.WriteReg(0xB2, 0x01)

    board.WriteReg(0xB1, 0x02) # PGEN_CFG
    board.WriteReg(0xB2, 0x35) # NUM_CBARS, Block_size

    board.WriteReg(0xB1, 0x03) # PGEN_CSI_DI
    board.WriteReg(0xB2, 0x1F) # YUV422_10 Data Type

    board.WriteReg(0xB1, 0x04) # PGEN_LINE_SIZE1: 1920*20/8=4800
    board.WriteReg(0xB2, 0x12)

    board.WriteReg(0xB1, 0x05) # PGEN_LINE_SIZE0: 1920*20/8=4800
    board.WriteReg(0xB2, 0xC0)

    board.WriteReg(0xB1, 0x06) # PGEN_BAR_SIZE1: 1920*20/8/8)=600
    board.WriteReg(0xB2, 0x02)

    board.WriteReg(0xB1, 0x07) # PGEN_BAR_SIZE0: 1920*20/8/8)=600
    board.WriteReg(0xB2, 0x58)

    board.WriteReg(0xB1, 0x08) # PGEN_ACT_LPF1: 1080
    board.WriteReg(0xB2, 0x04)

    board.WriteReg(0xB1, 0x09) # PGEN_ACT_LPF0: 1080
    board.WriteReg(0xB2, 0x38)

    board.WriteReg(0xB1, 0x0a) # PGEN_TOT_LPF1: 1125
    board.WriteReg(0xB2, 0x04)

    board.WriteReg(0xB1, 0x0b) # PGEN_TOT_LPF0: 1125
    board.WriteReg(0xB2, 0x65)

    board.WriteReg(0xB1, 0x0c) # PGEN_LINE_PD1:1s/(30*1125*20ns)=1481
    board.WriteReg(0xB2, 0x05)

    board.WriteReg(0xB1, 0x0d) # PGEN_LINE_PD0:1s/(30*1125*20ns)=1481
    board.WriteReg(0xB2, 0xc9)

    board.WriteReg(0xB1, 0x0E) # PGEN_VBP: 33
    board.WriteReg(0xB2, 0x21)

    board.WriteReg(0xB1, 0x0F) # PGEN_VFP: 10
    board.WriteReg(0xB2, 0x0A)
  • 您好,
    感谢您使用E2EChina 论坛。
    您的问题我正在处理,我会尽快回复您。
  • 您好,

    首先,关于您的问题,请参考以下内容:

    1、DS90UB953-Q1 page 17, CSI-2 有分 Short 與 Long Packet(包含 VC / Data ID...) 如何確認 或 設定輸出Short Packet呢?

    [CH] long/short packet只是由MIPI协议定义的,所以不需要设置它。

    2、另 DS90UB953-Q1 修改 Reg 0x06/ 07 CSI0 輸出 MIPI,看起來也會影響,但又該如何正確調整呢?

    [CH]如果这看起来有影响,可能是问题的原因,对于正确的配置:

    首先你需要知道图像传感器需要什么样的PCLK(参考传感器datasheet)

    第二,您需要根据下面的公式将953的CLKOUT配置为上面的值。(更多详细信息,请参阅DS90UB953数据表的第7.4.1.5节)

  • 对于Pattern Generation,我们有一些ALP的脚本文件,通常可以在安装ALP工具后在下面的文件夹中找到。
    C:\Program Files (x86)\Texas Instruments\Analog LaunchPAD v1.57.0010\PreDefScripts
    顺便说一下,目前您可以在这里找到一个类似的954脚本作为参考,只是现在没有960版本。

    下面文件可能对您有帮助,它包括详细的设计流程和其他指导/设计技巧。
    www.ti.com/.../snla267a.pdf
  • 目前修改Ti960,Reg 0x58, 更改0x5c (原0x5e),發現可以連續取得影像(24.7fps),但依舊一段時間(3~5 sec)會斷訊,停止訊號傳輸!!

    這部分會是硬體線路上的問題,還是設定上須搭配調整呢?? 可以提供除錯建議嗎 ??

  • 流stream 开始2-3秒后就停止了?除非SoC被有意设置为只接收帧2-3秒然后停止,我认为stream 能够继续。
    你好像是在用成像仪采集数据,你试过运行patgen吗?如果是的话,结果是什么,stream 在2-3秒后停止了吗?
    此外,有关如何启用/禁用CSI transmitter的正确步骤,请参阅DS90UB960-Q1数据表中的第7.4.25.8节。
    如果使用953/960,则0x58=0x5E是正确的值。这会将BC频率设置为50Mbps,将其更改为0x5d只是更改后频道频率,这是不应该做的。
    后来您说的文件是指什么文件?可能已经过时了。