Hardware Reference
In-Depth Information
reducing the instruction set, and having the remaining instructions be directly ex-
ecuted (i.e., hardware control of the data path), machines could be speeded up. In
a certain sense, computer design had come full circle, back to the way it was be-
fore Wilkes invented microprogramming in the first place.
But the wheel is still turning. Modern processors still rely on micropro-
gramming to translate complex instructions to internal microcode that can be ex-
ecuted directly on streamlined hardware.
The point of this discussion is to show that the boundary between hardware
and software is arbitrary and constantly changing. Today's software may be
tomorrow's hardware, and vice versa. Furthermore, the boundaries between the
various levels are also fluid. From the programmer's point of view, how an instruc-
tion is actually implemented is unimportant (except perhaps for its speed). A per-
son programming at the ISA level can use its multiply instruction as though it were
a hardware instruction without having to worry about it, or even be aware of
whether it really is a hardware instruction. One person's hardware is another per-
son's software. We will come back to all these topics later in this topic.
1.2 MILESTONES IN COMPUTER ARCHITECTURE
Hundreds of different kinds of computers have been designed and built during
the evolution of the modern digital computer. Most have been long forgotten, but a
few have had a significant impact on modern ideas. In this section we will give a
brief sketch of some of the key historical developments in order to get a better un-
derstanding of how we got where we are now. Needless to say, this section only
touches on the highlights and leaves many stones unturned. Figure 1-4 lists some
of the milestone machines to be discussed in this section. Slater (1987) is a good
place to look for additional historical material on the people who founded the com-
puter age. For short biographies and beautiful color photographs by Louis Fabian
Bachrach of some of the key people who founded the computer age, see Morgan's
coffee-table book (1997).
1.2.1 The Zeroth Generation—Mechanical Computers (1642-1945)
The first person to build a working calculating machine was the French scien-
tist Blaise Pascal (1623-1662), in whose honor the programming language Pascal
is named. This device, built in 1642, when Pascal was only 19, was designed to
help his father, a tax collector for the French government. It was entirely mechani-
cal, using gears, and powered by a hand-operated crank.
Pascal's machine could do only addition and subtraction operations, but thirty
years later the great German mathematician Baron Gottfried Wilhelm von Leibniz
(1646-1716) built another mechanical machine that could multiply and divide as
 
 
 
Search WWH ::




Custom Search