My first FPGA-Elf (2009) used an FPGA board that is long-since obsolete,
and while I updated it last year, it used an FPGA board that was not
commercially available, and would have been frighteningly expensive if it
was. For the most recent RetroChallenge, I updated the FPGA-Elf to work on
a readily-available, inexpensive FPGA module, the Digilent CMOD-A7-35T,
which is available for $89. (It can also be made to work on the $75
CMOD-A7-15T, but I recommend the -35T as it can provide more RAM.) As part
of the RetroChallenge, I added emulation of the CDP1861 PIXIE graphics.
Various photos can be seen at:
https://www.flickr.com/photos/22368471 at N04/albums/72157687136287141
The project progress is described, in reverse chronological order, on my
blog:
http://whats.all.this.brouhaha.com/category/computing/retrocomputing/retroc…
I designed a base PCB into which the which the CMOD-A7 module plugs. The
base board provides for use of hexadecimal displays (either HP or TI) for
data and (optional) address, a connector for the switches, a serial port, a
composite video ports, and an optional MicroSD breakout board. A 5V 2A
regulated wall-wart provides power.
There are a few issues with the board design requiring a few traces cut and
jumpers and resistors added, and I haven't yet written any software to deal
with the MicroSD card. I plan to have a new revision of the main board
made to correct the known issues. The switch PCB and bezel PCB don't need
another revision.
I still need to write some documentation, but I've put the rev 0 main board
Eagle files, Gerber files, and PDF files of the schematic and layout at:
http://www.frobco.com/e1000/
I'm willing to make bare boards available for those who want to build their
own.
This version runs at 256x the speed of a normal Elf w/ PIXIE. It's clocked
at 56.34 MHz, but it executes all instructions in one-eighth the clock
cycles required by an 1802. My 1861 implementation uses a dual-port RAM to
allow the CPU to run fast while still producing normal NTSC-rate video. I
plan to make the processor speed configurable to 1x or 256x, with perhaps a
few intermediate choices.