Hi all,
I am trying to implement an LCD driver in FPGA which will drive a
320x240 color LCD (digital 18bit parallel input).Could you please read below and comment if my way if thinking is correct or not.
For two virtual screens to be stored in memory I need 2x320x240x18 bits = 150k x 18 bits of memory. And this seems impossible with Spartans' block ram. So I need an external memory.
At first I tought that I need a dual port SRAM since a host will write to the video memory and the driver will continuously read from that memory and feed the LCD. But these RAMs seem to be overpriced (Arrow says hundered something dollars for 4mbit memory)
Then I realised that at 60 Hz driving frequency I only need ~8 Mhz clock. Is it possible to use a faster main clock (like 50-60 Mhz maybe) and still feed the LCD at 8 Mhz and in the remaining time fulfill the memory read/write commands given by the host asynchronously?
If that is true I need a memory capable of achieving around 60Mhz.
I found the NoBL (or ZBT)SRAMs from Cypress and IDT which can go up to
166 Mhz and gives me full bw utilization. (no wait cycles b/w read and write). And the good thing is that they also come in x18 organisation which is just what I need! Digikey says ~$9 for 256kx18 100 MHz ZBT SRAM.Is that memory suitable for my needs or would you recommend any other memory?
Thanks in advance Antonis