Munch Man munches data as fast as he can
Inspired by the classic 80's game of the same name for the TI-99/4a.
Munch Man is a ClusterFigher. The plan is to start simple and level up over time.
Level_1_Spinny : Python scripts for generating a
manifest of the Project Guttenberg dataset, selecting a
random string from the dataset and returns the md5 hash,
and finding a string from the dataset the matches a given md5
hash.
Level_2_Ducky : Development of a verilog md5 hash
core. Initially attempt to target the Lattice ICE40HX8K
breakout board but the core was too big. Switched to the Digilent
ArtyS7 fpga board. Used USB to communicate between the
raspberry pi and ArtyS7 board. But USB 2.0 was too slow
for real acceleration.
Level_3_MiniWheat : Developed an 8-bit parallel
interface between the raspberry pi and the ArtyS7 board.
This configuration was able to stream text from the RPI to
the ArtyS7 and perform 5.4M hashes per second. This was
good enough to win 2 out of 3 rounds at the ClusterFight
held on 01/26/2019.
Level_4_Blinky : Updated the md5 hash algorithm to
support hashing strings of length 2 to 55 characters.
Developed a 16-bit parallel interface with dedicated
done and match signals. Capable of almost 60M hashes
per second. Over 10x improvement of level3.