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.

DLPC350: what is the functionality of buffer swap setting in the Pattern Display LUT data command (I2C: 0x78)

Part Number: DLPC350

Dear TI engineers,

I would like to understand how the buffer swap setting works in the Pattern Display LUT data command (I2C: 0x78) and what should I set for the buffer swap setting in my application.

I am using pattern sequence mode with pattern source from video port. Each 24bit transfer frame with project 2 7bit projection data (R1 to R7 & G1 to G7).

Below is the Pattern Display LUT data command (I2C: 0x78) that I set for my application:

0x77 02 (open Mailbox For Pattern Definition)

0x76 00 (set Pattern Display LUT Offset Pointer = 0)

0x78 05 77 04 (set Pattern Display LUT Data Pattern Definition)
// 05 = 7bit R1-R7, external positive trigger
// 77 = white color, 7 bit
// 04 = perform buffer swap (buffer swap setting need to set 1 or not?)

0x78 03 77 04 (set Pattern Display LUT Data Pattern Definition)
// 03 = 7bit G1-G7, no input trigger (continue from previous)
// 77 = white color, 7 bit
// 04 = perform buffer swap (buffer swap setting need to set 1 or not?)

0x77 00 (close Mail box)

Thank you.

  • Weng Yeong Pang,

    Can you explain what you mean by "project 2 7bit projection data (R1 to R7 & G1 to G7)"?

    Also, which platform are you on? Are you using a LightCrafter 4500 EVM?

    Regards,

    Philippe Dollo

  • Dear Philippe Dollo,

    I am using LightCrafter 4500 EVM and I am using the pattern sequence mode with input source from the video port.

    Every 24bit input data from the video port, I will only use the R1R2R3R4R5R6R7 and G1G2G3G4G5G6G7 to send to the DMD for projection.

    I would like to understand about the functionality of the buffer swap setting in the Pattern Display LUT data command (I2C: 0x78). Because I do not find explanation on how to use the buffer swap setting.

    Best regrads,

    Weng Yeong

  • Hello Weng Yeong,

    Thank you for your patience as our team is working on finding your answer.

    Regards,

    Austin

  • Dear Austin,

    Any update? Thank you.

    Best regards,

    Weng Yeong

  • Weng Yeong,

    The frame buffer on the DLPC350 is a 24-bit buffer that stands between the input video interface (FPD-link or 24-bit RGB) and the DMD interface. It holds a full frame of video data (which prevents video tearing) while also introducing a 1-frame latency to the image data. There are diagrams in Figure 2-7 and Figure 2-8 of the DLPC350 Programmer's Guide which explain this:

    https://www.ti.com/lit/ug/dlpu010g/dlpu010g.pd

    By enabling this bit, you are telling the system that you want to employ this buffer swapping mechanism as you are writing new Pattern LUT entries, which causes your pattern output data to be buffered accordingly.

    I hope this helps.

    Regards,

    Philippe Dollo

  • Dear Philippe Dollo,

    Please correct me if my understand is wrong.

    In the documentation says that there are two 24-bit buffers; while the DLPC350 sends one of the buffers to the DMD array, the second buffer is filled from the video interface.

    The LUT with the VSYNC signal need to set the buffer swap bit enabled. 2 buffers are swapped. 1 buffer is send to DMD array and another buffer is filled from the video interface. Then when second input 24bit data comes from the video interface, it does the same action. The LUT with the VSYNC signal need to set the buffer swap bit enabled. 2 buffers are swapped. The preloaded first input 24bit data buffer is send to DMD array and another buffer is filled with second input data.

    If the LUT with the VSYNC signal is not set the buffer swap bit enabled, the 2 buffers will not swap. Thus, same buffer will always send to the DMD array.

    Is my understanding correct? Thank you.

  • Weng Yeong,

    I believe your understanding is correct. Thank you for your thorough reply. 

    Best Regards,

    Philippe Dollo