Are you logical? (Digital logic puzzlers)

Posted by Matthew Wed, 17 May 2006 19:16:03 GMT

Clive Maxfield recently posed the Black Box Brain Boggler in the Logically Speaking column of May’s EE Times. The original article was incorrect and posed an overly simple problem. In fact, the real problem is much more difficult, but possible none the less.

At first, this appears to be deceptively simple. We start with a black box with three inputs–A, B and C–and three outputs (see below). The outputs, which we may name !A, !B and !C, are the logical inversions of the inputs.

Blackbox Diagram

The challenge is implementing this black box with only two inverters, a bucket of basic gates, and without a hard coded binary 0 or 1. The bucket of gates presents two levels of difficulty. The former being far easier than the latter. In fact, the first bucket should be easy for any digital design student to solve.

  1. The bucket of basic gates contains AND, OR, and XOR gates. Remember, you cannot connect any of the inputs directly to a binary 0 or 1.

  2. The bucket contains only AND and OR gates. The solutions are extremely complex, but do exist!

He recently posted the clarifications and some purposed solutions on DesignLine. If you are curious, here are the spoilers for challenge one and two. If you enjoy proofs, there are some more logic puzzlers for your unsatisfied brain.

Posted in  | Tags  | 2 comments

Mechanical logic gates

Posted by Matthew Sat, 14 Jan 2006 02:17:00 GMT

A few people have designed boolean logic devices using LEGO pneumatics… I had suspected that there would be a large number of logic devices using mechanic principals, but a search for mechanical logic devices didn’t get many hits.

He decided to take matters into his own hands and design mechanical LEGO logic gates. A clockwise rotation represents a binary “one” while a counter-clockwise rotation represents a binary “zero.” The AND gate seems to require less pieces than a NAND gate, contrary to transistor design.

LEGO Mechanical Logical AND Gate

Unfortunately, he failed to implement an XOR gate. I wonder if it would require a more complex mechanical design (contrary to its simple transistor layout.) Kudos to the first person who implements a 16-bit binary adder with a Manchester carry chain using LEGO! VLSI is not my strong point.

Posted in  | Tags ,  | 1 comment