FPGA Boards

The VHDL of the PDP11 core is not vendor specific.

I used to have both Xilinx and Altera boards on my workbench, and used both for development and verification in hardware. Both Xilinx and Altera have cheap development boards that they promote for educational use – if you are a student, you can get a discount on top of the already low price. Most of the boards I use or have used are below USD 150 even without the student discount, and perfect to run a PDP11 on.

The Altera FPGA boards I use are made by Terasic; very beautifully engineered boards that mostly contain everything necessary to run a simple PDP11 system on, even including SD card slots for the disk controllers. Most Terasic boards have expansion ports in the form of 40-pin headers – lots of pins to connect extra things to, but there are only a few accessory boards for sale, and those are not really appropriate for PDP11 systems.

My Xilinx boards are made by Digilent, and are maybe a bit more basic in their finishing. To make up for that, they have expansion ports for Digilent’s PMOD expansion modules; you can add the tiny PMODs as you require them, and in any combination you like. This makes the Digilent boards very flexible.

Which vendor you like best is very much dependent on your personal views. When choosing, it also makes sense to consider the design tools. Both Altera’s Quartus and Xilinx’ ISE have their quirks; these are really big chunks of very complex software that will take some time to learn to work with. Neither is flawless, and both have major flaws and bugs in them that can really be aggravating at times.

On the hardware side of things – adapter boards, shims to connect to Oscar Vermeulen’s PiDP-11 console – I have chosen to focus on two FPGA boards:

  • the DE0-Nano from Terasic;
  • the CYC-1000 from Trenz Electronic.

DE0-Nano (please note the exact name of the board; Terasic has a number of other and very different boards with similar names) used to be the smallest board, but with a relatively big Altera/Intel Cyclone-IV FPGA and lots of pins for connecting extras.

CYC-1000 is a lot cheaper still, and also a lot smaller with it’s feather form factor; but the Altera/Intel Cyclone-10 FPGA is a similar size and two generations newer than DE0-Nano. It has exactly enough pins available for a system with a PiDP-11 console, disk sd-card, and Ethernet PMOD. But compared to DE0-Nano it is far less expandable.