Inspiration

One day I was sitting, minding my own business, when I realized that I knew how to make a computer. In the past I had seen them created in Minecraft, but i had no guess as to how they functioned. Now I do have a guess. It was my objective to see if that guess was right or not.

What it does

The computer, receives data in binary and stores it in a unit of memory. That unit of memory can be identified, and its contents can be called back.

How we built it

Rather than use physical electric circuits to emulate logic, the videogame Minecraft is used as software to create signal logic. Minecraft has three innate features that allow logic to be performed. 1) A signal that can be identified as either HIGH or LOW, 2) the ability to generate an OR relation between signals, 3) the ability to invert a signal. With these basic tools, all of digital logic can be simulated.

Memory is separated into two sections: large-memory and register memory. The computer uses a 4bit bus to transmit data from address to address and uses a 9bit instruction code to change the state of the machine. The 9 bit instruction code carries information detailing 1)The operation to be performed, 2) What register to operate on, and 3) What large-memory address to operate on.

Challenges we ran into

Implementation of basic digital devices like the D-Flip Flop and the Binary-Decimal Converter proved themselves unintuitive. Also, the immense distance required of data to travel from address to register resulted in very significant timing delays, which (if a computer clock were installed) would be cause for a large clock period to compensate.

Accomplishments that we're proud of

Transmission of data into memory units for later retrieval.

What we learned

Projects like this take a lot of planning. The more you compartmentalize, the easier (or at least more intuitive) design problems are to solve

What's next for Minecraft Computer

A Program Counter and the automation of the execution of instructions. The addition of more instructions, including: GOTO, binary addition, and pointer operations.

Built With

  • minecraft
Share this project:

Updates