Mechanical Wooden Turing Machine

Alan Turing theorized a machine that could do infinite calculations from an infinite amount of data that computes based on a set of rules. It starts with an input, transforms the data and outputs an answer. Computation at its simplest. The Turing machine is considered a blueprint for modern computers and has also become a blueprint for builders to challenge themselves for decades.

Inspired by watching The Imitation Game, a historical drama loosely based on Alan Turing, [Richard J. Ridel] researched Alan Turing and decided to build a Turing machine of his own. During his research, he found most machines were created using electrical parts so he decided to challenge himself by building a purely mechanical Turing machine.

Unlike the machine Alan Turing hypothesized, [Richard J. Ridel] decided on building a machine that accommodated three data elements (0, 1, and “b” for blank) and three states. This was informed by research he did on the minimum amount of data elements and states a machine could have in order to perform any calculation along with his own experimentation and material constraints.

Read more about Richard’s trial and error build development, how his machine works, and possible improvements in the document he wrote linked to above. It’s a great document of process and begs you to learn from it and take on your own challenge of building a Turing machine.

For more inspiration on how to build a Turing machine check out how to build one using readily available electronic components.

Continue reading “Mechanical Wooden Turing Machine”

Abstracting Transistors Into High-level Design

Although it’s not the best way of understanding computers, most people tend to imagine electronic devices as black boxes filled with magic and blue smoke. Even microcontrollers, the most fundamental means of computation, are treated like little black plastic centipedes with metal legs. In a series of blog posts, [Andrew Gibiansky] is tearing down the walls of obfuscation and illuminating the world of transistors, gates, and FPGAs.

The first blog post goes over the idea of electronic circuits as a waterfall; a positive voltage is a reservoir on a mountain top and ground is sea level. This idea is extended to the lowly transistor acting as an electronic switch, able to turn a circuit on and off.

Continuing on to logic gates, [Andrew] covers the NOT, AND, and OR gates before moving on the flip-flops and SRAM. These can, of course, be modeled in Verilog and VHDL – programming languages that abstract the world of transistors and gates into a much more human-readable form.

[Andrew] is far from done with his series of blog posts, but judging from his work so far it seems to be a great resource for untangling the obtuse concepts of gates and memory into the coherent design of a computer.