This paper was published in an abridged form
in the
May 1996 issue of Learning and Leading with
Technology magazine
volume 23, number 8, pages 53-56,
under the title Check connections, Swap identical parts: Top-down hardware repair for novices.
Experts are able to think about a complex system like a microcomputer at many different levels (Miyake, 1986). In computers, many of these levels correspond to the physical components: we can understand a computer at the level of an individual chip, or at the level of a larger functional unit like a single printed-circuit board, or at a large component unit level like a disk drive, printer, keyboard, etc. Typically, explanations to novices of how computers work start with low level units like the CPU, RAM, ROM, I/O, etc., leaving the novice with a jumbled alphabet soup of acronyms. Then once these units are introduced, the explanations show how they are interconnected to form higher level units, until the whole computer system is constructed.
This "bottom up" approach to instruction is very common: in teaching writing, schools start by teaching the formation of individual letters, then small words, then short sentences, paragraphs, etc. Only relatively far along do students get introduced to a functional unit of communication like writing a story or a letter. However, this is not the only approach: tutorial and apprenticeship settings typically start with the novice in the context of a large meaningful task, and the novice then proceeds to learn the structure at smaller and smaller levels until he/she masters the low level components. This we can call a "top down" approach.
What does this means in the domain of understanding how computers work? We will find that not only does a "top down" instructional strategy to understanding computers work well for novices, but it has the added bonus of giving even novices a powerful conceptual strategy for the diagnosis and repair of problems with computers.
Even a novice with a understanding at this level can take certain repair actions, which will fix a surprisingly large percentage of problem situations. Figure 1 below shows the Level 0 understanding.
Figure 1: A Computer System
Note that though most of the structure of the computer system is within the black box (and thus not obvious at this level), this diagram makes very salient the connections between the computer system and the rest of the world. Although these connections are "obvious," they are often overlooked in the process of troubleshooting. ." . . one of the biggest complaints seasoned technicians have with those fresh out of school: The first thing they do is take the computer apart and scrutinize the schematics, when the very first thing they should do is check out the obvious, like, is it plugged in?" (Thomas, 1984).
There are two troubleshooting actions to try when trouble occurs, both of which we will use at each of the different levels of understanding a computer.
Television repair people find that there is a peak of calls for repair into the spring, closely associated with "spring cleaning." They are told on the phone "The TV doesn't work! Come fix it." Then they find that someone who was vacuuming behind the TV has accidentally knocked the power plug out of the outlet. The obvious is often not obvious.
When a computer system stops working, a Level 0 analysis points you toward checking the power connection. A surprisingly large number of problem cases can be fixed through this simple action, which even a complete novice can perform.
One last step in this repair process is to swap the parts back again. Sometimes the computer will work properly in the original outlet. How can that be? Well, the problem may really have been in the connection, but not caught in repair action 1. That is, the computer may have been plugged in, but not far enough or not securely enough. Just the process of unplugging and replugging a connection will often establish a better connection, since in that process, the metal parts rub against each other, scraping away any corrosion and making a better electrical connection.
If you have ruled out a bad electrical outlet or loose power plug as the problem, you can proceed to a Level 1 analysis.
Figure 2: Computer components within a computer system
The arrows in Figure 2 show the flow of information. This diagram represents a second, more detailed understanding of how a computer works. There is now an explanation at this level for how characters are sent to a remote computer through a modem when keys are pressed on the keyboard. The information from the key press goes from the keyboard to the computer, which sends out the information to the modem. Obviously there are much more detailed explanations possible at lower levels, but this is a perfectly adequate explanation for certain purposes. For example, this level of understanding allows you to troubleshoot problems that you have identified in the Level 0 repair previously as being in the computer system.
You often can focus your attention to some cables, ignoring others, based on symptoms of the problem. For example, if your computer works but just doesn't print anything, you can focus on the printer cable. If your disk drives spin when you turn on your computer, but nothing appears on the monitor, check the cable between the computer and the monitor. Sometimes following the flow of information through the system at this level of analysis helps locate the place where it doesn't flow.
If your monitor works on the other system, and the new monitor doesn't work on your computer system, then that's evidence that the problem is in the rest of the computer system, not the monitor. In either case you've localized the problem. Continue swapping parts until you can identify the trouble as being within one (or more) of the components.
The advantage of this "top down" approach to understanding and troubleshooting is not only that novices can use it almost immediately, but also that partial execution of the process is useful. As you proceed, you narrow down the problem, even if you haven't identified it. So a person, even a novice, can proceed as far as he/she is comfortable, and still get some satisfaction out of solving some problems and localizing others to subcomponents.
Figure 3: PC Boards within a Computer
The understanding at this level is in terms of the flow of information among these functional units, some of which are equivalent to boards or cards, and some of which are equivalent to subareas of a board or card. This is shown in Figure 4.
Figure 4: A Level 2 Structural Understanding
To conduct diagnosis and repair at this level, you will need to open the computer (which is not very easy with some microcomputers). But before you do that, here are some warnings.
First warning: Be sure to turn off the power before opening any component. Some components, such as the monitor, have dangerously high voltages inside them which persist even when unplugged and thus should not be opened by non-experts. Most microcomputers, however, don't contain voltages that are dangerous to you. However, removing and replacing parts inside a computer when the power is on is dangerous to the computer. If you follow the simple rule of always turning off the computer before opening it, you can proceed to diagnosis and repair at the level 2.
Second warning: Some computer components are sensitive to discharge of static electricity. This is the kind of electricity that shocks you when you walk across a rug on a dry day and then reach for a door knob. So, when you open the microcomputer, remember to first touch something inside that is made of metal before touching anything else. This will discharge any static charge, and allow you to proceed safely.
Over time, corrosion builds up on the metal fingers, and then they don't conduct electricity well. One way to solve this problem is to "re-seat" the boards. That is, you rock a board back and forth lengthwise to ease it out of its slot, then rock it back and forth to reinsert it back into the slot. Often doing this for the boards in your problem computer will solve the problem. (Note: this is in effect what you do when you have a problem with your television if you "fix" it by banging it on the side. Re-seating the components in your computers is a much more sophisticated way to proceed.)
However, if you still have the energy, you can sometimes proceed one more level of troubleshooting, to the level of the integrated circuits, nicknamed "chips." These are the little black rectangular pieces of plastic that you find in great numbers inside a computer, each with many little metal legs. Each chip has an associated function, and boards are constructed by interconnecting particular chips in particular ways. Figure 5 shows this level of organization for chips on a typical printed circuit board. A circuit diagram for this board would show the interconnections, and thus specify this level of understanding of the board.
Figure 5: Chips on a Printed Circuit Board
Again, corrosion builds up between the leg of a chip and the hole of the socket. To check this, try re-seating the chip. The easiest way to do this is to place the board on a flat surface, and push gently down on each chip. This will move the legs slightly, cause them to rub against the socket and cut through any corrosion. Replace the board and try the computer again.
Record keeping is critical here - mark each chip on the problem board with a penciled X, then erase it when you rule it out as a problem. If you have no idea where the problem might lie, you may want to use a "bisection" strategy. Swap half the chips on a board. Then, if the problem transfers (your board now works and the other now doesn't), then you can narrow down the problem to the half transferred. Erase Xs from the chips still on your original board. Now swap half of the half (the ones on the other board with Xs) back to the original board. If the problem doesn't transfer, then rule out those transferred. In this way, you can localize the problem in just a few of these bisections, since you rule out half the remaining suspected chips in each cycle.
At this point, if you have identified a chip as the problem, you can march into your local electronics store, holding the dead chip in your palm, an say "I want one of these." The clerk may look closely , and say , "You want a 74LS125?" And you can say, "Yes, please" with a straight face, pay your 60 cents, go home and insert your new 74LS125 (gently) and watch your computer now work.
What is a 74LS125? This points us to the next level of understanding, the individual integrated circuit.
Figure 6: Individual integrated circuit.
If you plan to build or modify a computer, you'll need to understand the system at this level and at even lower levels: the level of the logic gates that make up an integrated circuit, or the level of transistors and capacitors within each logic gate, or the quantum boundaries that make up each transistor, etc. However, for most other purposes, an understanding at higher levels is adequate to support skilled functioning. Certainly the more levels at which you understand how a computer works, the deeper your understanding. But with the "top down" approach to understanding and troubleshooting described here, you can stop at whatever level you find satisfies your needs. In addition, there is no such thing as a "complete understanding," since there are always yet lower levels of understanding. Thus, "understanding" is usually specified relative to a level that is sufficient for whatever goals the understander has (Miyake, 1986).
Miyake, N. (1986). Constructive interaction and the iterative process of understanding. Cognitive Science, 10(2), 151-177.
Thomas, L. (1984). Breaking in. Whole Earth Software Review, 3, 60-64.