Use a serial eeprom like the 24LC1025. It uses I²C to communicate so you would have to switch to a pic with hardware I²C like the 16F88. It is 128k bytes in size.
Pommie:
Thank you for your chip suggestion. I read the datasheet for 24LC1025. Although it requires a very complex addressing from PIC, it is rather straight forward protocol. I am thinking of having two systems in place. One that writes only to EEPROM data pattern and the other reads only into PIC and drives the latches. Challenging but very much doable.
The main thing I am struggling with is still memory space for the data. I need much much more than just this chip or combination of 4 of them to have a meaningful multi-functional system of color generating.
You guys help me out confirming my calculations and let me know if I am missing something.
Let's say we are driving 16 RGB LED's using 6, 8-bit latches.
We need 6x8 bits = 48 bits (6 data bytes) to put a single color set on 16 RGB
Let's assume we are working with 16 colors, 4-bit resolution.
To create one frame of image (color) across 16 RGB, we need 6 x 4 data bytes resolutions = 24.
To create 16 frames (moving 16 colors across the screen) we need 24 x 16 bytes = 384 of data bytes to just do one color pattern motion across 16 RGB.
It takes 3, 24LC1025 to just create this one task (function). If I was to create multi-function system I would need a lot more than just 128k of memory. I need a massive amount.
Suggestions?