mash@mips.COM (John Mashey) (09/25/89)
Occasionally, people send e-mail asking for references on good books in computer architecture and design. (That might make a good discussion topic: what are your choices for the top 5-10 such books? and why?) Following is NOT my list for that topic, but for a list of books to read BEFORE thinking about computer architecture and design. None of them look like they have anything to do with such design, but I think they have useful lessons in: critical thinking: GAR81a, PAUL88a, RAN86a good design and bad design, other areas of engineering: BLA74a, NOR88a, PAP73a, PAP74a, PET82a clear expression of ideas, in English or graphics: STR79a, TUF83a All are well-written, often amusing, and are generally written not for an expert in the field, but for the intelligent layper- son. (What's missing is an equally good book on basic logic; maybe someone can suggest one; also, "Lies, Damn Lies, and Stat- istics should be hera, but I can't find mine). [BLA74a] Peter Blake, Form Follows Fiasco, Why Modern Architecture Hasn't Worked. Little, Brown, and Company, Boston/Toronto, 1974. Architectural fantasies that haven't produced liveable and useable designs, and why. [GAR81a] Martin Gardner, Science, Good, Bad, and Bogus, Prometheus Books, Buffalo, NY, 1981. Pseudoscience; ESP; famous fakes and unmasking thereof; margi- nal cases; many lessons in critical thinking and the differ- ences between good science, bad science (i.e., honest, but poorly-controlled experiments), and outright fakery. Goes with [RAN86a]; if you like either of these, consider subscrib- ing ($22.50/year) to: The Skeptical Inquirer Box 229 Buffalo, NY 14215-0229 This is put out by the Committee for the Scientific Investiga- tion of Claims of the Paranormal (CSICOP), whose Fellows in- clude such folks as: Isaac Asimov, Murray Gell-Mann, Douglas Hofstadter, Carl Sagan, B. F. Skinner, and many other sharp folks. [NOR88a] Donald A. Norman, The Pyschology of Everyday Things, Basic Books, New York, 1988. A readable introduction to human-usability design, with many examples (good and bad) from everyday life, including many computer-related ones. [PAP73a] Victor Papanek, Design for the Real World, Bantam Books, Toronto, 1973. Appropriate design. [PAP77a] V. Papanek and J. Hennessey, How Things Don't Work, Pantheon Books, New York, 1977. Good thoughts for designers of anything. See Chapter 7 espe- cially. [PAUL88a] John Allen Paulos, INNUMERACY, Mathematical Illiteracy and its Consequences, Hill and Wang, New York, 1988. An excellent book about critical thinking about numbers for the the non-mathematician. [PET82a] Henry Petroski, To Engineer Is Human, The role of failure in successful design. St. Martin's Press, New York, 1982. Most examples come from civil engineering, i.e., bridges, buildings, but other areas of engineering are included. Of course, failures in this area are amongst the most spectacular in all of engineering. [RAN86a] James Randi, Flim-Flam - Pyschics, ESP, Unicorms, and Other Delusions, Prometheus Books, Buffalo, NY, 1986. "The Amazing Randi" looks at the history of some of the sil- lier cases; amusing tales of the many contenders for Randi's $10K reward for provable psychic events (yet to be won); why scientists should always include a magician in the group when studying such things. (Scientists are often good at experi- mental design when studying the universe, but they aren't use to the universe trying to hoax them; magicians seem better at experimental design for detecting hoaxes.) [STR79a] W. Strunk, Jr., E. B. White, The Elements of Style, 3rd Edi- tion, MacMillan, New York, 1979. Anyone who writes in the English language should have this. [TUF83a] Edward R. Tufte, The Visual Display of Quantitative Informa- tion, Graphics Press, Cheshire, CT, 1983. A wonderful book on how to tell the truth well, with graphs, and how to recognize graphical gimmickry, as well. Chapter 2, ``Graphical Integrity'' is especially useful. Also, how not to get carried away with the ``chartjunk'' made possible by current desktop publishing systems.... -- -john mashey DISCLAIMER: <generic disclaimer, I speak for me only, etc> UUCP: {ames,decwrl,prls,pyramid}!mips!mash OR mash@mips.com DDD: 408-991-0253 or 408-720-1700, x253 USPS: MIPS Computer Systems, 930 E. Arques, Sunnyvale, CA 94086
rod@venera.isi.edu (Rodney Doyle Van Meter III) (09/26/89)
I'll stick my neck out and toss up a nice fat one for people to shoot down. Keep in mind that I'e only just begun graduate work in computer engineering, and that before that my experience was very much colored by working with VAXen (and VMS, no less). _Computer Engineering_, Gordon Bell and friends, 1978? Keeping in mind that it's over ten years old and is a broad case study on the DEC way of doing things, this is an interesting book. Pre-RISC, it takes the viewpoint that the VAX is sort of the high point of comp[uter architecture up to that point in time. NOT a book on how to design a computer today. Good historical book going all the way back to the beginning of DEC. _Computer Architecture and Parallel Processing_, Kai Hwang and Faye' A. Briggs, McGraw-Hill, 1984 A good book on the theory of high-level design. Hwang is at USC and is interested in supercomputing, and the book reflects that, though cost issues occassionally come in. They do take a sort of narrow view of SIMD machines, seeing them mainly as vector processors. It seems to be strong on pipelining, which is an important topic in microprocessors these days. It does occassionally reach down to the gate level for such matters as HW implementation of cache replacement policies. It doesn't cover such issues as instruction set design, which I'm interested in, but other than that most of its flaws are that it's already five years old. Work on a second edition has reportedly begun, but it's likely to be a while before it's out. Other than that, I read the SIGARCH notes, and every detailed processor reference I can get my hands on. Here's a question for you: Should the instruction set be the same on different types of multiprocessors as it is on a uniprocessor? Why or why not? Some of the hypercube-esque machines have been built around things like the 68020. It's fast, it's easy, somebody else is out there making the processor faster without you having to do a thing, but is it really, fundamentally, the right idea? --Rod
haynes@ucscc.UCSC.EDU (Jim Haynes) (09/26/89)
Well, if we're going to talk about oldies, how about "Planning a Computer System, Project Stretch" ed. by Buchholz. Even though the machine is ancient it's always a pleasure to read something by the designers on why they designed it the way that they did - a kind of literature that is too rare, in my opinion. haynes@ucscc.ucsc.edu haynes@ucscc.bitnet ..ucbvax!ucscc!haynes "Any clod can have the facts, but having opinions is an Art." Charles McCabe, San Francisco Chronicle
les@unicads.UUCP (Les Milash) (09/26/89)
In article <9858@venera.isi.edu> rod@venera.isi.edu.UUCP (Rodney Doyle Van Meter III) writes: >and every detailed processor reference I can get my hands on. yeah! and then try to write a digital synth on 'em. my personal list would always include: Communicating Sequential Processes, C.A.R.Hoare, Prentice Hall International, ??? Intro to VLSI Systems, Conway and Mead, ???, old The Connection Machine, D Hillis, MITPress (or maybe ACM), ??? the most influential books&people have affected me not by communicating _information_ so much as _perspective_. perspective isn't explicitly discussed usually, but you soak it up indirectly. i'm not sure these are "to read *before* thinking [...]", they spoke to me after years of groping in the dark. + + + + + + + + + + | "We close our eyes / and the | | processor-we-were-gearing-up-to-use has come and gone..." | + + + + + + + + + +
mmm@cup.portal.com (Mark Robert Thorson) (09/28/89)
One of my personal favorites is ELECTRONIC BRAINS by Edmund C. Berkeley. Written in the late 1940's, it covers the problems in data storage and computation which were faced at that time, and the mechanisms which had been developed to solve those problems. When I say "mechanisms", I mean both electronic and mechanical, as well as things in between. Fascinating stuff! BTW, Edmund C. Berkeley was one of the founders of the ACM, and I believe he was a co-author or the editor of the Lisp 1.0 manual. Does anyone know if he's still alive?
mmm@cup.portal.com (Mark Robert Thorson) (09/29/89)
Oops, the title of that old computer book is GIANT BRAINS, not what I said in my earlier posting.
haynes@ucscc.UCSC.EDU (Jim Haynes) (09/29/89)
In article <22580@cup.portal.com> mmm@cup.portal.com (Mark Robert Thorson) writes: >One of my personal favorites is ELECTRONIC BRAINS by Edmund C. Berkeley. Ah, my first computer book too! Believe the title is GIANT BRAINS. And Berkeley wrote a series of articles in the early 1950s Radio-Electronics magazine, giving circuits for gates and boolean algebra and a description of SEAC. >BTW, Edmund C. Berkeley was one of the founders of the ACM, and I believe >he was a co-author or the editor of the Lisp 1.0 manual. Does anyone >know if he's still alive? Believe I read he died this year. haynes@ucscc.ucsc.edu haynes@ucscc.bitnet ..ucbvax!ucscc!haynes "Any clod can have the facts, but having opinions is an Art." Charles McCabe, San Francisco Chronicle