Computer Systems I

Lab 2


For this week, you will create a circuit that performs a slightly more complex kind of arithmetic than last week's creation.


An incrementor

Specifically, you will design and implement a 4-bit binary incrementor. There are 16 possible integers that can be formed with 4 bits, from 0 to 15. Given that the incrementor should add 1 to each of these possible input values, we can make a table that shows each possible input value and its corresponding output value:

Input Output
0 1
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
9 10
10 11
11 12
12 13
13 14
14 15
15 0

Note that when the input is at its maximum possible value (15), the output "wraps around" to the minimum possible value (0).


A suggested approach

Here is a set of suggested steps that may help you both solve this problem and implement your solution as a circuit:

  1. Determine the output functions: The output of your circuit should be a 4-bit number. Therefore, you have four output bits, each of whose value is determined by some Boolean logic function composed of the four inputs. Write out a truth table for the four input bits and their corresponding output bits, and then use the table to write the four output functions in disjunctive normal form.

  2. Simplify the output functions: The output functions determined in the previous step are helpful, but likely more complex than necessary. Use Karnaugh maps and/or Boolean algebraic transformations to simplify those functions.

  3. Draw the circuit: Draw a circuit that computes the four simplified output functions that you developed in the previous step. You may have to draw the circuit a few times to come up with a clean layout that is easy to read.

  4. Build the circuit: Use the switches, LEDs, chips, and wires to implement the circuit you've drawn. Be sure to leave time for debugging!


A new type of gate

Depending on how you express you output functions, you may want to use the XOR function. If so, you need not construct your own XOR function as we did for Lab-1. Now, instead you can use the 74LS86 chip, each of which contains four XOR gates.


Finishing up

The usual rules for finishing your work apply:


Scott F. H. Kaplan
Last modified: Thu Sep 11 22:23:25 EDT 2008