views:

655

answers:

4

Hi,

I'm looking for a laymen's introduction to computer hardware and organization. Here are some of the topics I would like to cover.

  1. Brief intro to electronics.

  2. Gates and state machines, intro to register transfer and timing.

  3. Basic CPU design. Control.

  4. Microprogrammed CPU design.

  5. Cache systems.

  6. Memory hierarchy:registers, cache, RAM

  7. Virtual memory organization.

  8. Disk storage systems.

  9. Internal busses-front side, memory, PCI

  10. Internal busses for storage-IDE, SATA, SCSI

  11. External busses-USB and firewire

  12. Display systems and GPUs

I would prefer free resources online, but if nothing is available a book is fine as well. I have no background with hardware so an introductory text would be wonderful. Also I'm sorry if this isn't directly programming but I don't know where else to ask.

+2  A: 

I would recommend the book "Code" by Charles Petzold. It covers a lot of how the low level of a computer works from a layman's perspective. Not everything on your list is included, but it will give you a good start.

Steve Rowe
+3  A: 

As mentioned already Code: The Hidden Language of Computer Hardware and Software is a great book that covers the fundamentals.

Here are a couple of other books:

Computer Architecture: A Quantitative Approach

The Essentials of Computer Organization and Architecture

Upgrading and Repairing PCs

Here's a good site:

PC Architecture

Phaedrus
"Computer Architecture: A Quantitative Approach" is an excellent textbook. It taught me the bulk of what I know about how CPUs work.
Crashworks
A: 

Tanenbaum's "Structured Computer Organization" was my intro into the 'levels' of computers. It's quite logical, approaching each level built on the previous.

I've often thought of doing a similar one, stretching from quantum physics through classical physics, electronics, integrated circuits, microcode, machine code, compilers, interpreters, VMs and so on, but I fear that would be about as possible as Knuth's 12-volume series. I hope he has a child to carry on the work :-).

paxdiablo
A: 

[link text][1] by Horowitz and Hill is a great one for hobbyist on electronics.

For computer architecture [link text][2]

For RTL design [link text][3]

[1]: http://www.amazon.com/exec/obidos/tg/detail/-/0521370957/ref=ase_penguintelecomin/102-8353601-4848123?v=glance&s=books"The Art of Electronics" [2]: http://www.amazon.com/exec/obidos/tg/detail/-/1558604286/ref=ase_penguintelecomin/102-8353601-4848123?v=glance&s=books/"Computer Organization and Design: The Hardware/Software Interface" by Hennesy and Patterson. [3]: http://www.amazon.com/exec/obidos/tg/detail/-/0201895730/ref=ase_penguintelecomin/102-8353601-4848123?v=glance&s=books/"VHDL for Programmable Logic"

Brian Carlton