I need to drive a chain of serial led drivers (Micrel MIC5400) @ 5 mHz. The total number of leds in the chain is around 7500. When sending to the MIC5400 one sends 36 bits to each chip - 18 bits per pixel. The chip controls 16 leds so one must send 8 times to update all leds. And the clock must keep running all the time as it is used by the MIC5400.
The update time from my cpu isn't critical (could be a couple of seconds) but if my cpu sends the data that slow to the MIC5400 it will be visible when sending the 8 parts.
As my cpu can't handle 5 mHz I was thinking about making a small board with 2 shift registers. One shift register for my cpu to send the data for all leds as fast as my cpu can send it, saving it in one of two ram send buffers on the board. One shift register for the board to send the data from the active send buffer buffer to the leds @ 5 Mhz reading back the response from the MIC5400 saving it in one of two receive buffers where my cpu can read it back at it's own speed later.
The question is what type of hardware to use? FPGA, small cpu or something else.
Is this something that maps well on to a FPGA? The buffers need to be almost 128K. And I need to learn programming FPGA:s or hire someone to do it.
It should also be possible to solve with a fast microcontroller with
128k ram and 8 i/o lines - 2 times din, clk, load, dout.Does small fast microcontrollers with 128k ram exist?
Ronny