• Resolved

Compiler/DLPC900: How to cycle through more than 400 images in pre-stored pattern mode?

Prodigy 65 points

Replies: 10

Views: 76

Part Number: DLPC900

Tool/software: TI C/C++ Compiler

I am trying to cycle through more than 400 images in the pre-stored pattern mode. I have read previous threads like this one :https://e2e.ti.com/support/dlp/f/94/t/772875

I don't have problem in RLE compression and loading images into the flash memory. But since the LUT limits the maximum entry to be 512, how can I index images beyond that? 

Thanks a lot!

Xianxin

  • Updating my understanding:

    In the LUT definition, there are settings of pattern index, image pattern index and bit position. Am I right that we can cycle through lots of patterns by choosing non-overlapping image indices? If so, we can display at most 24x256 different patterns with 16 sequences - as long as they can be nicely compressed, correct?

  • In reply to Xianxin:

    Hi Xianxin Guo,

    Image Compression is used for saving flash memory space.

    Images are Uncompressed while loading from External flash memory to internal memory.
    At any point in time, Internal memory is designed to hold up to 400 1-bit binary or 50 8-bit binary images.

    You can have LUT definitions to pick maximum 400 1-bit binary or 50 8-bit binary images from External flash memory.
    You can create and store many Batch files in the External memory, Execute it from GUI to pick which ever images you need from flash.

    But at any time, Internal memory Can hold maximum of 400 1-bit binary or 50 8-bit binary images.

    Thanks,
    Shivakumar

  • In reply to SHIVAKUMAR R:

    Hi Shivakumar,

    I understand that compressed images are only stored in flash memory, and they are always uncompressed in internal memory. My question is, how do I select different sets of 400 images from the flash memory? If it's done by the image pattern index of the LUT, then the max image index is 255. Since each of them is a 24-bit image, does this mean that I can index at most 256x24 1-bit images from the flash memory? 

  • In reply to Xianxin:

    Hi Xianxin Guo,

    Let me check and update.

  • In reply to Xianxin:

    Hello Xianxin,

    I am Shiva's colleague.  I thought I would contribute to this thread.

    I think there is a little bit of disconnect on this question.  The flash is limited to storing 400 1-bit (or 50 8-bit)  images with the current hardware / software.  You can make multiple batch files that can call different combinations of the 400 (50) stored patterns, but you cannot at this time store more than that into flash.

    I think that the entry in the Programmers Guide DLPU018 rev E on page 58 for Bytes 11:10 may have an error.  There are 11 bits devoted to the "image pattern index" entry. The range should be larger than 256.  If you try to set something larger, does the GUI throw an error or does the EVM lock up?

    Fizix

  • In reply to Fizix:

    Hi Fizix,

    Thanks for your reply!

    1) Regarding the number of images that can be stored in flash memory, it should depend on the compression ratio. Why is it limited to 400? I am trying to load compressed images to the flash with my code rather than the GUI.

    2) About the image pattern index, I'm not sure whether the range can be larger than 256 since i haven't tried it yet. 

  • In reply to Xianxin:

    Hello Xianxin,

    Shiva and I looked at this together and confirmed that the Programmer's Guide is in error.  If you load patterns from a batch file, even if you repeat a file name it will try to load it into a separate memory slot and will return the error that you cannot exceed 400 bits.

    We have slated that part to be updated in the next update.  We will remove the section that says you can do it through the load512.txt.

    The correct way to do this is to use the LUT re-order.  Found in the very next section.  FIrst load up to 400 bits worth of patterns [400 1-bit or 50 8-bit patterns or a combination].

    Then use the "LUT Editor" ("Edit LUT" button).  There you can display any order of the up to 400 bits of pattern.  The LUT table is limited at this time to 512 entries.  You can also store the LUT edit commands in a batch file to execute.

    Very sorry for the confusion

    Fizix

  • In reply to Fizix:

    Hi Fizix,

    Sorry that I am still confused. Do you mean that we can't load more than 400 different 1-bit images, even if we manage to compress them into the flash and use multiple pattern sequences?

  • In reply to Xianxin:

    Hello Xianxin,

    With the current Firmware/Software you cannot.  Work is being done to expand the capability.  

    Sorry for the inconvenience.

    The reason for the limit is that the patterns are loaded into the controller DDR uncompressed.  That fills over 3/4 of the memory and some of the memory above that is used by the OS.

    In order to load groups of stored images will take Firmware work to make it so that it can read in other patterns from flash.

    Fizix

  • In reply to Fizix:

    Hi Fizix,

    Understood. Thanks for the clarification.