Skip to topic | Skip to bottom
Bennington College
r1.35 - 18 Jan 2006 - 18:55 - JoeHolt

Start of topic | Skip to actions
The numbers in brackets are difficulty ratings, roughly corresponding to how long in minutes it would take me to do the project. Multiply this by some x to estimate how long it will take you. Reasonable values of x are 0.5 to 5.

COMBINATORIAL LOGIC

CL10 Basic gate play
[10] Experiment with AND, OR and NOT gates.
Parts: 7408 AND, 7432 OR, 7404 NOT, switches, LEDs, resistors.

CL20 Combination lock
[10] Build a combinatorial logic circuit that recognizes a unique 4-bit binary pattern.
Parts: ANDs, ORs, NOTs, switches, LEDs, resistors.

CL30 DeMorgan's law
[10] Build circuits to show how you can substitute one kind of gate for another if you throw in the right amount of negation.
Parts: ANDs, ORs, NOTs, switches, LEDs, resistors.

CL40 XOR from discrete components
[15] Build an exclusive OR gate. From scratch.
Parts: ANDs, ORs, NOTs, switches, LEDs, resistors.

CL50 Everything's a NAND
[15] Show how the basic gates — AND, OR, NOT — can all be built from NAND gates. Spooky.
Parts: 7400 NANDs, switches, LEDs, resistors.

CL60 Demultiplexer
[30] Build a combinatorial logic circuit that converts a 4-bit binary input to 1 of 10 outputs.
Parts: ANDs, NOTs, switches, LEDs, resistors.

CL70 7-segment display driver
[60] Use gates to control the LEDs in a 7-segment display so that it displays the numbers 0-3 given a 2-bit binary input.
Parts: ANDs, NOTs, ORs, switches, 7-segment display, resistors.


OLD-SCHOOL COMBINATORIAL LOGIC

OD10 Gates with relays
[10] Build AND, OR and NOT gates out of relays.
Parts: relays, knife switches, light.

OD20 XOR with relays
[30] Build an XOR gate out of relays.
Parts: relays, knife switches, light.

OD30 Flip-flop with relays
[60] Build an S/R flip-flop out of relays.
Parts: relays, knife switches, light.

OD40 Gates with transistors
[30] Build AND, OR and NOT gates out of transistors.
Parts: transistors, switches, LEDs, resistors.


MEMORY

MM10 Basic flip flop
[10] Implement the simplest kind of digital logic memory: a Set/Reset flip-flop.
Parts: NAND gates, switches, LEDs, resistors.

MM20 D flip flop
[15] Extend the S/R flip-flop to the more-useful D flip-flop.
Parts: Lots more NAND gates, switches, LEDs, resistors.

MM30 Single byte
[15] Use eight D flip flops in a row to make a single byte (8-bits) of memory.
Parts: 7474 D flip flops, switches, LEDs, resistors.

MM40 Single byte on a chip
[10] Explore the 74374 single byte.
Parts: 74374, switches, buttons, LEDs, resistors.

MM50 Random Access Memory from discrete components
[60] Put together a demultiplexer, a bus, and a bunch of bytes to make addressable RAM.
Parts: 74154 demultiplexer, 74374 bytes, switches, buttons, LEDs, resistors.

MM60 2K RAM
[45] Explore the 2016 RAM chip. Set addresses, put values in, get values out.
Parts: RAM, switches, LEDs, resistors.


MATH

MA10 Half adder
[10] Build a half adder, the building block of all binary math.
Parts: XORs, ANDs, switches, LEDs, resistors.

MA20 Full adder
[30] Extend the half-adder into a full adder.
Parts: XORs, ANDs, switches, LEDs, resistors.

MA30 Binary adder from discrete components
[90] Make four full adders and gang them together to make a 4-bit adder.
Parts: lots of XORs and ANDs, switches, LEDs, resistors.

MA40 Binary adder chip
[15] Explore the 74283 adder chip. Consider making a binary counter next (COUNTERS).
Parts: 74283 adder, switches, LEDs, resistors.

MA50 Adder / subtractor
[30] Add XORs to the inputs of the 74283 to make it subtract. Welcome to 2's complement binary numbers! Graduate to building an arithmetic-logic unit (MICROPROCESSOR).
Parts: 74283 adder, XORs, switches, LEDs, resistors.


COUNTERS

CT10 Binary counter from discrete components
[30] Make a binary counter using an adder and flip-flops.
Parts: 74283 adder, 74374 byte, button, LEDs, resistors.

CT20 A random counter
[15] Arrange a series of D flip-flops as a counter, but with a feedback loop that generates pseudo-random numbers.
Parts: 7474 D flip-flops, NOTs, XORs, LEDs, resistors.

CT30 Counter chips
[15] Explore the 74192 and 74193 counter chips. Add an oscillator to make them count on their own.
Parts: 74192 and 74193 counters, 555 clock, LEDs, resistors.

CT40 Decimal counter with a numeric display
[30] Build a counter that displays its output on a single-digit numeric display.
Parts: 74192 counter, 555 clock, 7447 7-segment driver, 7-segment display, resistors.

CT50 Digital dice
[30] Build some logic to display the binary output of a counter as a six-sided die (using LEDs arranged as the dots).
Parts: 74193 counter, gates, 555 clock, button, LEDs, resistors.

CT60 Multi-digit decimal counter
[30] Extend the counter CT40 to display into the hundreds.
Parts: 74192 counters, 555 clock, 7447 7-segment drivers, displays, resistors.

CT70 Digital clock
[120] Combine a digital counter with some combinatorial logic to count 60s and 12s.
Parts: 74192 counters, 555 clock, gates, 7447 7-segment drivers, displays, resistors.


OF MICROPROCESSORS

MP10 Data bus
[60] Experiment with a data bus for interconnecting multiple components (single bytes in this example). This is the backbone of a microprocessor. Set switches for data and device select, write and read values.
Parts: 74374 bytes, switches, buttons, LEDs, resistors.

MP20 RAM sequencer
[120] Set up RAM to record and play back a sequence of values.
Parts: 2016 RAM, 74193 binary counter, 555 clock, switches, buttons, LEDs, resistors.

MP30 Instruction decoder
[120] Take a small number of 8-bit encoded instructions and build combinatorial logic to distinguish between them.
Parts: gates, switches, LEDs, resistors.

MP40 Program counter
[120] Build an 8-bit program counter, which can either be incremented or set to a new value.
Parts: 74193 counters, gates, LEDs, resistors.

MP50 ALU
[240] Build an Arithmetic Logic Unit. It takes two numbers and adds or subtracts them, interfacing with a common data bus.
Parts: 74283 adders, XORs, switches, LEDs, resistors.

MP60 Custom microprocessor
[1500] Pull together the ALU, RAM, program counter and instruction decoder to make a full-on microprocessor.
Parts: all of the above, and more.


MISC

MS10 5 volt power supply
[15] Use a voltage regulator to build a 5 volt power supply. Include a power on LED.
Parts: 7805 voltage regulator, diode, 9V battery, battery clip, LED, resistor.

MS20 Switches and LEDs
[30] Set up one or more DIP switches to act as logical inputs to some other circuit. Tie the inputs so that neither switch position is floating. Put LEDs on the outputs.
Parts: DIP switches, LEDs, resistors.

MS30 555 clock
[10] Make an oscillator that blinks an LED. Use this to drive the input of other circuits (like a counter).
Parts: 555 timer, capacitor, LED, resistors.

MS40 555 debounce
[10] Make a circuit that gets rid of the electrical bounce in a mechanical push button. Use this with button-operated counters.
Parts: 555 timer, capacitor, button, LED, resistors.