[Coco] A Video Timing Question

Mark McDougall msmcdoug at iinet.net.au
Sun Sep 13 17:41:42 EDT 2015


On 14/09/2015 5:30 AM, tim franklinlabs.com wrote:

>     So, I'm wondering how others have addressed this?

How much video memory do you need? For a text-only display far and away 
the easiest solution is to use on-chip dual-port RAM.

Next easiest is interleaved, although it's a little more complicated 
when you want to support multiple clock speeds. But you also get 
deterministic CPU<->memory bandwidth & latencies.

Then you have caching/pre-emptive schemes which you touch on. I've had 
experience with a VGA controller reading from SDRAM that holds off the 
CPU and fills a cache (FIFO) at a pre-determined low water mark; 
typically you need several scan lines of data in the cache to prevent 
thrashing.

The Altera VIP core uses FIFO's throughout its architecture for access 
to single-port memories quite successfully, and triple frame buffers and 
scaling components can be quite bandwidth intensive. Don't be afraid to 
use deep FIFO's - deeper than you think you'll need.

Of course then you'll run into problems if you want to get fancy and 
have CPU code synchronised to blanking periods... but if it was easy 
then everyone would be doing it. ;)

Regards,

-- 
|    Mark McDougall    |  Error: witty remark not found!
| <http://pacedev.net> |


More information about the Coco mailing list