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.

DLPC910: NS_FLIP doesn't function

Part Number: DLPC910
Other Parts Discussed in Thread: DLP9000X

Tool/software:

Hi,

I am operating DLP9000X and DLPC910 on custom board with Kintex UltraScale+.

However, the NS_FLIP function is not working, and instead of writing decrementally from the address specified by ROWAD initially, it writes incrementally.

If you have any potential causes, please let me know.

Also, is the NS_FLIP functioning correctly on the DLPC910 evaluation board?

The NS_FLIP signal is asserted even before the CTRL_RSTZ is released.

The DMD image when data is first written to 600 rows and then incremented (NS_FLIP = 0) to write up to 999 rows, followed by resetting Block 6-9.

   

The DMD image when data is first written to 999 rows and then intended to decrement (NS_FLIP = 1) down to 600 rows, followed by resetting Block 6-9.

The DMD image shows that only the 999 rows have been block-reset, appearing black, while the part that was written incrementally (instead of decrementally) is not block-reset, so it appears faint.

Thanks,

Tanaka

  • Hello Tanaka,

    Thank you for reaching out and using the E2E forums! An expert from our team will review the thread and get back to you shortly.

    Regards,

    Tristan Bottone

  • Hello Tanaka-san,

    I did the testing on the EVM with the Xilinx VC707 board and indeed N/S is working.

    Please try setting the N/S flip with no other operations after the write with a Row Address.  Then write the next N rows.

    As a test, try a global reset to see what is actually writing.  Let me know the result

    Fizix

  • Hello Fizix

    Thank you so much for responding even during Thanksgiving.

    In the end, I successfully used the NS_FLIP function to correctly display images on the DMD.

    When asserting NS_FLIP at the same timing as the ROWMD switch from '10' to '01', the image was not reflected. However, by asserting NS_FLIP a few milliseconds before specifying the address and writing with ROWMD set to '10', the address decrement functioned as intended (likely because the low duration of DVALID was too short). It should be noted that this timing a few milliseconds earlier was chosen because it was convenient to use in the existing logic due to other events, not because we systematically verified the timing conditions.

    From some trials, it seems that if row 0 is written to after asserting NS_FLIP, and the decrement causes writing to a negative address, the NS_FLIP function becomes ineffective. It may be that the reason NS_FLIP initially did not work on our board was due to such a write operation.

    Anyway, thanks to this, we were able to achieve proper operation. Thank you very much for your help.

    Regards,

    Tanaka