Skip to content
Darren Kulp edited this page Aug 4, 2020 · 5 revisions

FPGA Synthesis

One of tenyr's goals is to be synthesisable on a reasonably-sized FPGA. The concept has been proven with the Verilog implementation found in the hw/ directory, using the Xilinx XC6SLX16 FPGA found on the Digilent Nexys3 development board. The current implementation is an unpipelined, multi-cycle design at eight clocks per instruction, clocked at 80MHz (for a throughput of 10 MIPS). The design can be run up to about 83MHz (limited by the speed of the 32x32-bit multiplier) in my FPGA. Future revisions to tenyr will pursue more sophisticated microarchitectures to avoid limiting the clock speed by a single operation -- the current version of tenyr is intended to be as simple and regular as possible.

The basis of the Verilog implementation is found in hw/verilog/ ; there are directories with code specific to :

Clone this wiki locally