Figure 4.3 CPU
Although it is not necessary to know exactly what goes on inside the processor, learning a few terms that you will encounter as a computer professional will be helpful to you in the discussion that follows.
Transistors, the main components of microprocessors, are small, electronic switches. The on/off positions of the transistors form the binary codes discussed earlier in this lesson. Although transistors might seem simple, their development required many years of painstaking research. Before transistors were available, computers relied on slow, inefficient vacuum tubes and mechanical switches to process information. The first large-scale computers took up a huge amount of space, and technicians actually went inside them to "program" by turning on and off specific tubes!
Many materials, including most metals, allow electrical current to flow through them-these are known as electrical conductors. Materials that don't pass electrical current are called insulators. Pure silicon (which is used to make most transistors) is a semiconductor; its degree of conductivity can be adjusted, or modulated, by adding impurities during production.
Transistor switches have three terminals: the source, the gate, and the drain. When positive voltage is applied to the gate, electrons are attracted, forming an electron channel between the source and the drain. Positive voltage applied to the drain pulls electrons from the source to the drain, turning the transistor on. Removing the voltage turns it off by breaking the pathway.
In the late 1950s, a major development in transistor technology took place. A team of engineers put two transistors on a silicon wafer, creating the world's first integrated circuit and paving the way for the development of compact computers.
An integrated circuit (IC) is an electronic device consisting of a number of miniature transistors and other circuit elements (resistors and capacitors, for instance). An IC functions just as a large collection of these parts would, but it is a fraction of the size and uses a fraction of the power. ICs make today's microelectronics possible. The original transistors were small plastic boxes about the size of a peanut (outside its shell), and could handle only one function. The word "integrated" denotes that IC devices combine many circuits-and some of their functions-into one package. A prime example of this technology is the microprocessor.
On November 15, 1971, Intel shipped the commercial microprocessor, Model 4004. It ran a product called the Busicom calculator. The 108-KHz 4004 had 2300 transistors and a 4-bit data bus and could address 640 bytes of RAM. Computer engineers quickly took advantage of the potential this new type of chip offered, leading the way to the first personal computers.
A year later, the Intel 8008 appeared. Radio Electronics Magazine reported that hobbyist Don Lancaster used an 8008 to build what is considered the first personal computer. The article called it a "TV typewriter."
The Intel 8080 appeared in 1974. It sold then for $400, and now sells for about one dollar. It powered traffic lights, but of more interest to our discussion is the fact that it formed the core of the Altair computer of 1975. It was sold in kit form for $395 and was named for a world in the Star Trek TV series. Figure 4.4 shows a picture of the 8080 die. By today's standards, it was very weak: 6000 transistors, an 8-bit bus, and a 2-MHz clock speed. It could address 64 K of RAM, and users programmed the Altair by throwing manual switches located on the case.
Figure 4.4 The Intel 8080 Microprocessor
Before going further into microprocessor-development history, it is important to discuss in general terms how they operate. Microprocessors are usually divided into three subsystems: the control unit (CU), the arithmetic logic unit (ALU), and the input/output unit. The term CPU is used to denote a combined CU and ALU, contained in a single package.
The advent of the control unit marked a radical improvement in processor design, allowing CPU operations to be based in part on code provided by an external program like a BIOS (basic input/output system). This extended the ability of a PC to use new hardware components that were not part of the original design.
The ALU is just what its name implies-the part of the IC that handles the basic, math functions of computation. The I/O unit fetches data from the outside and passes data back to the external bus.
Registers are temporary memory storage areas used during data manipulation. Physically, registers are rows of microscopic switches, which are set on or off. Each row forms a binary number: off = 0, on = 1. Hence (reading from right to left) off.off.on equals the number 1. Off.on.on equals the number three (0+2+1). The CPU uses registers like scratch pads, to hold data while it works on a task. Changes in data during an operation are also stored in a register, then sent out to other components as the job is finished. The number and width of a register varies from one type of machine to another. The wider the register, the more bits the machine can handle at one time-just as with the width of the external bus. As register width moved from 4 to 8 to 16 to 32 to 64 bits, PCs increased in performance.
Computers use various binary-based codes to represent information. In Tutorial 2, "Understanding Electronic Communication," we saw how ASCII code is a binary representation of characters on a keyboard. These codes are sent on the external data bus by a system component to be read by other devices. Press a key on a PC keyboard and an ASCII code is generated and sent over the data bus. Transferring information to and from the CPU (and other hardware) is only the first step in manipulating data.
Other codes tell the PC how to display data on the monitor, talk to devices such as printers, and take in data streams from scanners. Each of those operations requires system resources and the manipulation of binary numbers.
In addition to the code that requires data, special machine code is required in order for the CPU to turn the string of numbers into something useful to an application. As with the data code, this machine code is sent in the form of binary numbers on the data bus. The CPUs in turn are different enough that a code system must be written specifically for each of them.
Timing is essential in PC operations. Without some means of synchronization, chaos would ensue. Timing allows the electronic devices in the computer to coordinate and execute all internal commands in the proper order.
Timing is achieved by placing a special conductor in the CPU and pulsing it with voltage. Each pulse of voltage received by this conductor is called a "clock cycle." All the switching activity in the computer occurs while the clock is sending a pulse. This process somewhat resembles several musicians using a metronome to synchronize their playing, with all the violinists moving their bows at the same time. Thanks to this synchronization, you get musical phrasing instead of a jumble of notes.
Virtually every computer command needs at least two clock cycles. Some commands might require hundreds of clock cycles to process. Figure 4.5 shows an external data bus with a CPU and two devices. Notice that the crystal or clock is attached to the CPU to generate the timing.
Figure 4.5 CPU with clock
It is common for computers to be marketed to consumers based on features that show off their best points. One principal selling point is the system clock rate-measured in megahertz (MHz) or millions of cycles per second. The clock rate suggests how many commands can be completed in two cycles (the minimum time required to execute a command). The process of adding two numbers together would take about four commands (eight clock cycles). A computer running at 450 MHz can do about 44 million simple calculations per second.
Clock speed is determined by the CPU manufacturer and represents the fastest speed at which the CPU can be reliably operated. The Intel 8088 processor, as used in the original IBM PC, had a clock speed of 4.77 MHz. Today's processors have clock speeds that run up to and, in some, exceed 750 MHz.
Remember that this speed is the CPU's maximum speed. If you place too many clock cycles on a CPU, it can fail or overheat and stop working.
The system crystal determines the speed at which a CPU operates. The system crystal is usually a quartz oscillator, very similar to the one in a wristwatch. You can find the system crystal soldered to the motherboard. Look for a silver part, usually with a label that indicates the crystal speed.
A computer has two clocks: one to set the speed and timing and a second clock to keep time for date/time calculations. They are two entirely different devices.