Sorry this message sat in the queue for so long, by the way. (New members' messages get queued up until I approve them and unmoderate the poster. (This policy, although work for your moderator, has spared the list from numerous yahoogroups spammers who do not hesitate to join groups just to spam them.)) To Shibashish, I would hope the (terse) Circuit Cellar articles are mostly self-explanatory. The purpose of the VGA interface is to display bitmapped video using a couple of device pins and a handful of gates, via some austere-but-too-clever-by-half LFSR counters. It uses the XR16 processor's 16-entry PC-register-file to DMA a 16-bit word every 8 clocks or so and shifts out pixels on both clock edges, thereby displaying a bilevel bitmap, 576x455 bits (OK, strictly speaking, 560x455). This was the best I could do with 12 MHz fixed clocks and 32 KB on the original XS40 boards. By the way, for folks doing debugging and system-bring-up, a video display is a nice low pin count way to get information out of your SOC. Somewhere around here I have a cheap and cheerful on-chip-memory character oriented video display core using two 512 B BRAMs, one for a 32x16 frame buffer and one for a 96 entry ASCII char gen ROM. Here was my posting about it. http://groups.google.com/groups?selm=aljjq9%24u16%241%40slb7.atl.mindspring.net&oe=UTF-8 I'll try to find it and post it to fpgacpu.org, which has now gone a whole year w/o an update. Sorry, I've been so quiet, my energies have been fully focused working back in the software industry. Best wishes to all, Jan Gray, Gray Research LLC |