From Land Boards Wiki
Jump to navigation Jump to search


EP2C5-DB-TH FPGA card[edit]


I love Grant Searle's Multicomp project. It lets you easily create 6502, Z80, 6809 Retrocomputers of the late 1970s era. This card provides all of the connections needed.

Grant's original design used an EP2 and that's exactly what this cards USES. Note that's not compatible with the latest version of Altera/Intel Quartus but you can download older Quartus II versions like 13.1 SP1. Just make sure it supports the Cyclone II family of FPGAs.

Other (Newer, Bigger) Versions of this card[edit]

We also have two EP4 versions of this card for sale on Tindie (bare boards, you populate).


EP2 Resources[edit]

  • EP2C5 has 26 of 512x9 SRAM blocks

EP2XX Resources.PNG

Stackup with FTDI Card[edit]

  • Top to bottom of stackup
  1. EP2C5-DB (this card)
  2. Cyclone II EP2C5 Mini Dev Board
  3. FTDI-49MM
  4. CARRIER 95mm TO 49MM



VGA - Ideal Drive 2:2:2 Case[edit]

  • FPGA has a 3.3V driver which can drive 8 mA
  • Ideal case drive current
    • 0.7V into 75 Ohms = 9.33 mA
  • R-2R values
  • Voltage steps are:

VGA Sim 2R Voltage.PNG

  • Current steps are:

VGA Sim 2R Current.PNG


LEDs on EP2C5 Board[edit]

  • D2 is on PIN_3
  • D4 is on PIN_7
  • D5 is on PIN_9

LEDs on EP2C5 PCB.jpg

LEDs Schematic.PNG

LED on EP2C5-DB Cards[edit]

  • LED is on FPGA pin 53


J1 - VGA[edit]

J4 - SD Card[edit]

J5 - Serial Ports 1/2[edit]

  • Set jumper on FTDI module to 3.3V
  • Connects to FTDI Module
  1. RTS
  2. RXD
  3. TXD
  4. GND


FTDI Module[edit]

  • Set jumper on FTDI module to 3.3V

FTDI rot.jpg

FTDI Wiring[edit]

  • Set jumper on FTDI module to 3.3V
  • J5-1 (marked RTS on PCB) to FTDI CTS pin
  • J5-3 (marked RX on PCB) to FTDI TX pin
  • J5-5 (marked TX on PCB) to FTDI RX pin
  • J5-7 (marked GND on PCB) to FTDI GND pin


J6 - 8-bit I/O connector[edit]

  • FPGA Pins
  1. 3.3V
  2. 3.3V
  3. 25
  4. 31
  5. 41
  6. 40
  7. 43
  8. 42
  9. 45
  10. 44
  11. GND
  12. GND

J8 - 8-bit I/O connector[edit]

  • FPGA Pins
  1. 3.3V
  2. 3.3V
  3. 48
  4. 47
  5. 52
  6. 51
  7. 58
  8. 55
  9. 76
  10. 69
  11. GND
  12. GND


SMT Version[edit]

Through Hole Version[edit]

Retro-Computer Builds[edit]

Github repository for Multicomp builds

Multicomp Extensions[edit]

Programming the Flash EPROM Memory[edit]

EP2CE P428-720PX.jpg

Permanent (.pof file)[edit]

  • AS - Upload ,pof file to EPROM over AS
    • Flash EPROM = EPCS4
    • Remains after power cycling


Temporary (.sof file)[edit]

  • JTAG - Upload temporary .sof program over JTAG
    • Does not remain after power cycling


Pin List (Multicomp)[edit]

# Clocks and reset
set_location_assignment PIN_17 -to clk
set_location_assignment PIN_144 -to n_reset
set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to n_reset
# PS/2
set_location_assignment PIN_87 -to ps2Data
set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to ps2Data
set_location_assignment PIN_86 -to ps2Clk
set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to ps2Clk
# ACIA (Serial)
set_location_assignment PIN_60 -to serSelect
set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to serSelect
# Serial
set_location_assignment PIN_104 -to o_rts1
set_location_assignment PIN_101 -to i_rxd1
set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_rxd1
set_location_assignment PIN_103 -to o_txd1
# External SRAM
set_location_assignment PIN_4 -to n_sRamWE
set_location_assignment PIN_126 -to n_sRamCS
set_location_assignment PIN_134 -to n_sRamOE
set_location_assignment PIN_32 -to sramAddress[16]
set_location_assignment PIN_8 -to sramAddress[15]
set_location_assignment PIN_30 -to sramAddress[14]
set_location_assignment PIN_24 -to sramAddress[13]
set_location_assignment PIN_28 -to sramAddress[12]
set_location_assignment PIN_136 -to sramAddress[11]
set_location_assignment PIN_132 -to sramAddress[10]
set_location_assignment PIN_139 -to sramAddress[9]
set_location_assignment PIN_142 -to sramAddress[8]
set_location_assignment PIN_143 -to sramAddress[7]
set_location_assignment PIN_141 -to sramAddress[6]
set_location_assignment PIN_137 -to sramAddress[5]
set_location_assignment PIN_135 -to sramAddress[4]
set_location_assignment PIN_133 -to sramAddress[3]
set_location_assignment PIN_129 -to sramAddress[2]
set_location_assignment PIN_125 -to sramAddress[1]
set_location_assignment PIN_121 -to sramAddress[0]
set_location_assignment PIN_122 -to sramData[7]
set_location_assignment PIN_120 -to sramData[6]
set_location_assignment PIN_118 -to sramData[5]
set_location_assignment PIN_114 -to sramData[4]
set_location_assignment PIN_112 -to sramData[3]
set_location_assignment PIN_113 -to sramData[2]
set_location_assignment PIN_115 -to sramData[1]
set_location_assignment PIN_119 -to sramData[0]
# Composite Video
set_location_assignment PIN_75 -to video
set_location_assignment PIN_74 -to videoSync
set_location_assignment PIN_64 -to videoB0
set_location_assignment PIN_63 -to videoB1
set_location_assignment PIN_67 -to videoG0
set_location_assignment PIN_65 -to videoG1
set_location_assignment PIN_70 -to videoR0
set_location_assignment PIN_69 -to videoR1
set_location_assignment PIN_71 -to hSync
set_location_assignment PIN_72 -to vSync
# SD Card
set_location_assignment PIN_92 -to sdMISO
set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to sdMISO
set_location_assignment PIN_94 -to sdSCLK
set_location_assignment PIN_93 -to sdMOSI
set_location_assignment PIN_97 -to sdCS
set_location_assignment PIN_3 -to driveLED
# J6 IO
set_location_assignment PIN_25 -to J6IO8[0]
set_location_assignment PIN_31 -to J6IO8[1]
set_location_assignment PIN_41 -to J6IO8[2]
set_location_assignment PIN_40 -to J6IO8[3]
set_location_assignment PIN_43 -to J6IO8[4]
set_location_assignment PIN_42 -to J6IO8[5]
set_location_assignment PIN_45 -to J6IO8[6]
set_location_assignment PIN_44 -to J6IO8[7]
# J8 I/O
set_location_assignment PIN_48 -to J8IO8[0]
set_location_assignment PIN_47 -to J8IO8[1]
set_location_assignment PIN_52 -to J8IO8[2]
set_location_assignment PIN_51 -to J8IO8[3]
set_location_assignment PIN_58 -to J8IO8[4]
set_location_assignment PIN_55 -to J8IO8[5]
set_location_assignment PIN_76 -to J8IO8[6]
# set_location_assignment PIN_60 -to J8IO8[7]

EP2C5-DB Assembly Sheet[edit]