Tuesday, August 30, 2011

Lesson 3: Boolean Logic

Computer technology is dependent absolutely on Boolean Algebra.

Boolean algebra is named after George Boole, who developed his algebra of two values -- zero and one -- as a thought experiment in the mid 19th century. A little under 100 years later, MIT student Claude Shannon demonstrated the application of Boolean algebra to design electronic circuits that could resolve any logical and numeric relationship. Shannon's thesis underlies all modern circuit design and information theory.

Boolean Algebra has three operations: conjunction, disjunction, and negation. In computer logic design, we call conjunction AND, disjunction OR, and negation NOT. The result of these operations are defined in truth tables, as shown below.

    0 AND 0 = 0 | 0 OR 0 = 0
    1 AND 0 = 0 | 1 OR 0 = 1
    0 AND 1 = 0 | 0 OR 1 = 1
    1 AND 1 = 1 | 1 OR 1 = 1

    NOT 0 = 1
    NOT 1 = 0

Other logical operators are created from these basic Boolean operations. These are NOT AND (NAND), Exclusive OR (XOR), NOT Exclusive OR (XNOR) and so forth.

It turns out every logical operation can be construction from NAND gates. An entire computer processor, adders, memory circuits and so forth can be designed using nothing but NAND logic.

In computer circuits, these zeroes and ones are represented by voltage levels, which are controlled by the electronic switches we've already discussed in Tubes, Transistors and Integrated Circuits. Millions of these logic gates are combined to perform arithmetic operations, store values, and make decisions.


1. Describe or draw a basic TTL NAND logic circuit.

2. Modern computer memory is design using edged triggered flip flop circuits. Find a logic diagram for this type of memory circuit. (Hint: Google is your friend).

3. What does "flip flop" mean in the context of digital circuits?

4. Why is a clock signal important in dynamic random access memory (DRAM)?

Monday, August 29, 2011

The Intel Museum

This week's lessons on computer hardware development can be difficult to grasp without looking at some of this material with your eyeballs.

Intel has a free museum at their headquarters in Santa Clara, California. It's just a half hour from my office, so my son and I rode our bikes there for a field trip during our lessons on early computer technology and semiconductors.

At the Intel Museum, you can see Intel's semiconductor memory chips next to some core memory (an early type of computer memory that used wire windings around tiny iron donuts to store information). You can touch a big blob of purified silicon crystal and silicon wafers from which modern semiconductor integrated circuits are manufactured. Interactive exhibits describe the process of designing and manufacturing computer chips in details.

If you live in or near Silicon Valley, it's worth the trip. Parking is free -- just follow the signs for visitor / museum parking. Intel is served by VTA 60 (the bus that runs between the Winchester Transit Center in Campbell to Great America) and the free Mission Shuttle from Lawrence Caltrain. Intel HQ is also a very easy ride from the San Tomas Aquino bike trail, with bike racks available left of the museum entrance and on the ground level of the employee parking garage.

The guided tours are geared for grade school level children, so teens should do the self guided tour. Give yourselves about an hour. I had my son write a trip report. He's a visual learner, so the biggest benefit for him was seeing this old and new technology first hand.

Intel also has a nice resource covering much of this material in their online Journey Inside computer education curriculum. Use this to supplement your student's computer education with lessons computer history, the parts of a computer, circuits and switches, semiconductors, digital information, microprocessors, the Internet, and technology's impact on society.

In addition to Intel's museum in Santa Clara, we have a Computer History Museum and the Tech Museum of Innovation in Silicon Valley.

Finally, for those outside of Silicon Valley, see if there's a technology museum near you.

Lesson 2: Tubes and Transistors

A way to switch circuits on and off is necessary to create electronic digital computers. Some of the earliest electronic computers used mechanical relays controlled by paper tape with holes punched into it to add, substract, multiply, divide and calculate logarithmic and trigonometric functions.

Relays were replaced with vacuum tubes early on, then transistors. Small personal computers became possible with the invention of the integrated circuit, which can place many many transistors onto a single, small chip of silicon.

We will discuss how electronic switching is used in computing later, but first we'll cover the basics of the hardware technology that makes electronic binary logic possible.

Vacuum Tubes

Vacuum tubes are simple, electronic devices through which electrons -- and, hence, electricty -- flows through a vacuum. The most basic tube consists of a cathode and an anode inside of the vacuum tube.

Heating the cathode energizes the electrons in the metal filament there. The electrons leave the cathode and jump into the surrounding space. As negatively charged electrons leave, they are attracted to the positively charged anode.

(Diagram from Vacuum Tube Basics, where you can learn more about vacuum tube operation.)

It's possible to control the flow of electricity by adding a grid between the cathode and anode. When a negative charge is applied to this grid, electrons from the cathode are repelled and cannot travel to the anode and, so, no electrical current can flow across the tube. This control grid acts as an electronic on-off switch. This on-off switching function is a necessary component for digital computers.


The next step of electronics development involved materials called semiconductors. At the most basic level, semiconductors are materials with an electrical conductivity somewhere between conductors (such as metal wires) and insulators (such as rubber or glass). What makes semiconductors useful for electronics is the ability to control the electronic properties and conductivity through "doping," which is adding small amounts of other elements to the semiconductor.

Early crystal radio receivers used a Cat's whisker detector. These detectors used a thin wire touching a semiconductor crystal to pick up radio signals. These early semiconductors were unreliable, however, and were soon superseded with vacuum tube technology.

A Bell Labs researcher studying radar technology at the outbreak of World War II accidentally invented the first semiconductor diode in 1939 when he purified semiconductor crystals used for Cat's Whiskers. After nearly another decade of concerted effort, the first semiconductor transistor was demonstrated at Bell Labs in 1947.


Later research showed the transistor could be used like a switch like a vacuum tube. Transistors are much smaller than vacuum tubes, use significantly less power, are more reliable, and (eventually) less expensive to manufacture. It didn't take long for hobbyists and computer engineers to figure out they could create smaller computers with transistors instead of vacuum tubes.

Vacuum tubes use tremendous amounts of energy to keep the cathodes hot, and they were fragile, with thin filaments prone to burning out. Semiconductor materials enable much more reliable electronic devices that use much less power.

Transistors are used with other types of discrete electronic components such as resistors, capacitors, and diodes and connected with wiring and printed circuit board circuit traces to create electronic devices such as radios, calculators and computers. When you see the green (usually, but they can be brown, red, or yellow) circuit board with big gobs of solder inside of an an electronic house thermostat or a toy R/C car, most of the electronic parts stickup up from one side of that board are discrete components.

The next big step in electronics miniaturization was the development of the integrated circuit, which we'll cover in the next lesson.

Sunday, August 28, 2011

Lesson 1: Student Assignment

Some of the below questions are review of Lesson 1: "Early Computer History." Some will require further research to answer.

1. What did Joseph-Marie Jacquard invent?

2. Describe Charles Babbage's Analytical Machine?

3. Why is Ada Lovelace important? What computer language was named in her honor?

4. What is Herman Hollerith famous for?

5. List the characteristics of a Turing Machine.

6. How is the Harvard Architecture different from a von Neumann Architecture?

7. In George Stibitz's Model K computer, what does the "K" stand for?

8. A machine called "ABC" was developed at the University of Iowa. What does ABC stand for?

9. What does ENIAC stand for?

10. Who popularized the word "bug" in the context of computer programs? What kind of bug was noted in her journal?