Punch Card Processor

What is this?

This is a processor that uses a card (a piece of paper) as an instruction memory. This is not an emulator but really circuit! A HDL, NSL, is used for this circuit and DE10-Lite board is employed.

Screenshots

IMG_20190323_161827

Wiring Diagram

wiring_diagram

How to Build

Prerequisite

  • make
  • quartus
  • nsl2vl
  • (for simulation) iverilog
  • (for simulation) gtkwave

Generate .sof and .pof and Configure Your FPGA by .sof

  • cd src
  • Connect the FPGA to a host PC.
  • make
  • make download

Trouble Shooting

make download fails (1)
  • Execute jtagconfig and note a cable name.
  • Edit a variable CABLE in src/Makefile to the cable name.

make download fails (2)

  • killall jtagd
  • Try make download again

Configure the FPGA by .pof

  • Launch Quartus
  • "Tools" --> "Programmer" --> "Hardware Setup" --> Select FPGA --> "Add File" --> TBD

Conduct Simulation

TBD