How would you make a 3-bit binary adder that adds two instead of 1

adderflipfloplogic-gates

I am trying to make an asynchronous adder that holds three bits and adds two to the number. Can someone help? A Google search shows nothing and I'm having a hard time visualizing how to make the circuit.

Edit: This circuit is part of a larger circuit I have to make for a problem. The circuit needs to add two to either an even three-bit number or an odd three-bit number. I have the rest of the problem done except for the adding two part.

(If anyone wonders, the problem says the circuit is supposed to act like a normal down-counter when an input w = 0, then switch to adding two if w = 1.)

Edit 2: I know this is a late edit (and might be illegal), but here is my attempt at the circuit using four flip-flops (I am required to use d flip-flops). IT IS VERY UGLY AND CONVOLUTED, I apologize. 🙁

The first four count down when w = 0 while the fourth d flip-flop stores the value of the least-bit (0 = even, 1 = odd). When w = 1, the clock to the fourth becomes zero and therefor stores the value of the least bit indefinitely. Ev/odd becomes Q_0, Y_0 then becomes Q_1 and Y_1 becomes Q_2, "adding" one to the two's place and, to my understanding, simulating the addition of two to the number.

Circuit attempt.

I feel this is the simplest way to do it, but I feel I am using more gates than are necessary or that I am miscalculating the clock timing.

Best Answer

Note that when adding 2 to a binary number, the low bit doesn't change. You therefore simplify the problem to pass the low bit, and a 2-bit adder you add one to for the upper bits. Yes, it really is that easy.

By the way, if you're only ever going to add 1 with a adder, then it's generally called a "counter" instead of a "adder".