codebite _


Previous part. If you missed the introductory post, head here: Part 0.

Preface: I decided to ditch my plan for Part 3 as monolith part that covers all aspects of our ALU. It'd be too long, and I found myself cutting some interesting, yet non-essential parts out. That seems stupid to me, because with approach like that you may as well just search for ALU schematic online and be done with it.

Instead I will break topics up into more parts, and talk a bit more in depth about some parts of ALU.


Last time we left off with a Full Adder on our hands, as well as, with dreams of 8-bit glory. So it would be fitting to scale up our adder into this new and exciting territory.

First let's check out our Full Adder again:

Full Adder Symbol

As you can see, I added text near the pins for ease of distinguishing.

Now, as some of you might've guessed from my tip in the last part, in order to go 8-bit with our little adder all we really need to do is stack'em one on top of the other. To be more precise, You take two 8-bit ...

Continue reading...



Previous part. If you missed the introductory post, head here: Part 0.


Last time we made NAND gate, now it’s all fun and cool, but in order to proceed we need all the other Boolean operations. And as we found out last time, we can create them from our magical NAND gate.

But first things first. We don’t want to look at the transistor schematic of the NAND gate all the time. As we make more and more complicated circuits it’s just going to be a mess.

So let’s use so called Shaped icons for our logic gates (IEEE Std 91/91a-1991).

Meet NAND:

NAND Symbol

You can think of this as an interface of our NAND implementation, a black box. Imagine that the inputs and outputs are connected with our CMOS NAND implementation inside:

NAND implementation

Okay so now that we got that out of the way, let’s start with simple NOT gate. It has only one input and it simply outputs inverted version of it.

NOT truth table:

a out
0 1
1 0

Let’s also bring back the truth table of NAND gate again:

a b out
0 0 1
0 1 1
1 0 ...
Continue reading...


Page 1 of 6 | Top