Categories
hardware internet tech

FPGA 6800 Uses Python Toolbox

Usually, while you bring to mind designing — or recreating — a CPU on an FPGA, you suppose you’ll have to make use of Verilog or VHDL. There are different choices, as neatly, however the ones are the largest two avid gamers in FPGA configuration. [Robert Baruch] has a multipart sequence the place he makes use of nMigen — a Python toolbox — to recreate a 6800 CPU just like the one utilized in many antique video video games and pinball machines.

Unlike some gear that attempt to convert tool written in some language to an FPGA configuration, nMigen makes use of Python as a scripting language to create code in FHDL. This is identical in thought to VHDL or Verilog, however provides up the event-driven paradigm, opting as an alternative to permit designers to explicitly name out synchronous and combinatorial good judgment.

Interestingly the instrument hinges on Yosys, so it could possibly goal a number of Lattice portions in addition to FPGAs from Intel/Altera and Xilinx.  It seems that the n in nMigen is for brand spanking new, and you could in finding one of the documentation for normal outdated Migen to be helpful.

As for the 6800, it’s one of the older CPUs utilized in interest computer systems. The 8 bit CPU had about 72 directions, relying on the way you counted them. This used to be prior to decreased instruction units had been the fad, so this can be a little further paintings to enforce a wealthy instruction set.

There are different Python choices, comparable to MyHDL and PyCPU, for instance. You may even take a look at the usage of .NET.