HN Books @HNBooksMonth

The best books of Hacker News.

Hacker News Comments on
Computer Engineering: A DEC View of Hardware Systems Design

C. Gordon Bell, J. Craig Mudge, John E. McNamara, Kenneth H. Olson · 2 HN comments
HN Books has aggregated all Hacker News stories and comments that mention "Computer Engineering: A DEC View of Hardware Systems Design" by C. Gordon Bell, J. Craig Mudge, John E. McNamara, Kenneth H. Olson.
View on Amazon [↗]
HN Books may receive an affiliate commission when you make purchases on sites after clicking through links on this page.
Amazon Summary
This book has been written for practicing computer designers, whether their domain is microcomputers, minicomputers, or large computers. The book uses the case study method to show how all the different factors (technology push, the marketplace, manufacturing, etc.) form the real-world constraints and opportunities which influence computer engineering. For examples, we have used 30 DEC computers, plus some PDP-11-based machines built at Carnegie-Mellon University.
HN Books Rankings

Hacker News Stories and Comments

All the comments and stories posted to Hacker News that reference this book.
If I remember correctly, this book not only goes into technical details (skim the TOC in the Internet Archive's copy), but included higher level stuff, particularly a superb and universally useful insight into what distinguished the successful '70s minicomputer vendors: they all did an adequate job of everything essential, from hardware to documentation. E.g. I don't think anyone every bought a DEC computer for the quality and/or price/performance of their disk drives (the RK-05 might be an exception), but their disk offerings were at least adequate (modulo a few goofs when they made their own, long after this book was published).

Computer Engineering: A DEC View of Hardware Systems Design by C. Gordon Bell, J. Craig Mudge, John E. McNamara, and Kenneth H. Olson

(If you're not familiar with the first and last authors, your study of DEC history should fill you in, as cafard notes elsewhere in this thread.)

http://www.amazon.com/Computer-Engineering-Hardware-Systems-...

https://archive.org/details/ComputerEngineeringADecViewOfHar...

hoggle
Great stuff, thanks a lot!
Dec 27, 2013 · ChuckMcM on The CDC 6600 Architecture
"all the necessary knowledge was explained from the ground up. All you needed to know was supplied, clearly laid out, not just hints for efficient programming. Basicly, you could rebuild your own computer by reading these books."

This is what I'm trying to recapture with my ARM project. Basically an ARM Cortex M4 is of the same order of complexity as large mini-computer "back in the day" where you could (and often did) learn all the basics of computers from architecture to compiler construction. I realized that I had a tremendous advantage learning about computers because you could put an entire PDP 11 architecture in your head while you were writing code, but you can't so easily do that we even an ATOM version of the Pentium. Combined with a straight forward I/O system that kept to a small number of principles, used repeatedly, and you did not have "needless"[1] complexity getting in the way of learning.

Another good reference for seeing how things were build is "Computer Engineering: A DEC View of Hardware Design" [2] which discusses all sorts of trade offs in computer that once you understand them, things like superscalar execution units make much more sense to you.

[1] It is all useful complexity but before you know what you don't know it is just a wall of confusing concepts and jargon.

[2]http://www.amazon.com/Computer-Engineering-Hardware-Systems-...

xradionut
I was going to do the same type of project, but use a MIPS chip, however determined that ARM chips are much more available. Could also use FPGA, but that's a little too much abstraction.
sitkack
You both should use an FPGA, then you have control over the full stack. It is a little bit more work to bootstrap an FPGA system but the effort is worth it.

There are many MIPS cores available http://opencores.org/project,plasma,overview in VHDL and http://opencores.org/project,mips32r1 Verilog .

ChuckMcM
There is a level of detail where things sort of fall down. And I have fallen into that sticky pit a few times so I am getting better at recognizing it.

On the one hand, it is useful to know everything about the CPU construction, on the other it is efficient to use something with other people helping out.

My current plan is a compromise position, early in the project there are basic concepts on computation, but once the basic concepts are presented they are "mapped" over into an ARM implementation. This takes the reader from "Ok, I get how computers do their thing..." to "Ok, I see how this type of computer does its thing." At the end of the day I felt that both were important concepts, the how, and the how to match with existing practice concepts.

That said, my board design that goes along with this has an FPGA which is there to implement a simple frame buffer. That was before I found the STM32F429 which has its own simple frame buffer, and so I'm digressing at the moment trying to figure out if I should go that route or not. One of the benefits of having the FPGA on board was that for some definition of "easy" you do some stuff in the FPGA, the scare quotes though are there because FPGAs bring their own pile of complexity to the problem and that defeats some of my goals of keeping it only as complex as it needs to be.

akavel
Do you mean by that, that you're attempting some kind of documentation/description project, by chance? If yes, would you be maybe willing to do the writing in some "open doors" model?
HN Books is an independent project and is not operated by Y Combinator or Amazon.com.
~ yaj@
;laksdfhjdhksalkfj more things
yahnd.com ~ Privacy Policy ~
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.