Looking for a Computer Architecture book...

Hyperlite

Diamond Member
May 25, 2004
5,664
2
76
I'm in my senior year of High School and will be attending NC State for Computer and Electrical engineering, and i want to get a jump on things as best as i can...i looked up all the books listed in the first and second pages of this (very helpfull) thread, but i was wondering if there was anything newer availible that i should look into. thanks in advance.
 

piasabird

Lifer
Feb 6, 2002
17,168
60
91
When it comes to Computer Architecture what is old is new again. You have to learn the old part before you can comprehend the new part.

You might ask what is it in computer architcture you need to learn. Computers are Circuits so one thing you will need to learn is what are computer circuits and how do you draw them and read them. This is really basic gates and switches. An example might be the logic to perform a simple add and subtract or how to build a circuit for memory.

Then they will get into the layers of hardware 7 I think. Maybe one more than that. What are the layers like Logical and abstraction hardware software etc.

Then there are actual components what is a gate and what is used to make one. How is a gate or transistor constucted. Name 3 types of Transistors.

You can imagine hardware questions and terms for hardware. Standards Committes, organizations, terminology.

Then there is an inebidible section on how does base 2 work and if a processor is 8 bit how many bits can be read at once?

Then there is a processor how does it really work? What are its parts, what is a cycle and a bus, and does a processor have a clock? If so what makes it tick? What are all those lines going to and from the processor?

PATA, SATA, SERIAL, PCI, PARALLEL, EIDA, ATAPI, FDD, ETC.

I would just go to Amazon and look for books. They will have the most common books used for teaching courses. This is a very laborious subject and only really interests people who do design work for processors and odds and ends like that. I have never had to read an electrical schematic to do my job, so basically what you are learning is the theory behind how computers are built.

You could learn more intersting books like

Where Wizards Stay Up Late by Katie Hafner and Mattew Lyon about the development of the Internet from the days of Eisenhower, or Accidental Empires by Robert X Cringely wich covers a kind of a history of the PC Industry From the Altair computer to the likes of computers up to about 1995.

Without know what is going to be taught it is hard to say what book is best. Sometimes the university has a online bookstores or multiple bookstores that can tell you what book will be used for the class. It would be nice if you could just go to school early and see what book will be used for the class and buy it and take it home and look at it.
 

spinaltap

Junior Member
Nov 5, 2005
18
0
0

dmens/bassyhead, did you guys by chance do cornell's ece undergrad program? I just used that same book last spring for my computer organization class.

Overall, I'd recommend the book as well. It explores computer architecture from a MIPS standpoint, mostly (as opposed to something like x86 which may be more relevant although it is probably harder to learn at first than something like MIPS), but it also has lots of useful information on general logic, cache/virtual memory etc.

Keep this in mind if you get the book, though: Try to look at the stuff about common practices when writing assembly and datapath implementation more wholistically, because they are missing information on some instructions and are flat out wrong about certain things.
 

dmens

Platinum Member
Mar 18, 2005
2,274
959
136
Lots of people use that book, but yeah, I went to cornell. 314 got me into the field... or was it hatred of java. I forget.
 

CTho9305

Elite Member
Jul 26, 2000
9,214
1
81
Originally posted by: spinaltap

dmens/bassyhead, did you guys by chance do cornell's ece undergrad program? I just used that same book last spring for my computer organization class.
It's used at Carnegie Mellon too.

Overall, I'd recommend the book as well. It explores computer architecture from a MIPS standpoint, mostly (as opposed to something like x86 which may be more relevant although it is probably harder to learn at first than something like MIPS), but it also has lots of useful information on general logic, cache/virtual memory etc.
I don't think there's any benefit to starting with x86 - the real "architecture" stuff is the same (pipelining, branches, virtual memory fundamentals).

Keep this in mind if you get the book, though: Try to look at the stuff about common practices when writing assembly and datapath implementation more wholistically, because they are missing information on some instructions and are flat out wrong about certain things.
Like what?
 

spinaltap

Junior Member
Nov 5, 2005
18
0
0
Well, for starters, the datapath example they give is missing whole types of instructions; I'm pretty sure its missing all the immediate instructions (I dont have the book in front of me for reference though, so it may be the register arithmetic instructions which are missing) and I seem to remember it was missing a lot of the branching stuff. Also, I'm pretty sure some of the PC stuff is described wrong as well.

However, If you look at the big picture when reading the book, you can get a lot out of it. There is also a CD included with some extra information and some useful algorithms that I found to be a big help with some of the projects we did.
 

dmens

Platinum Member
Mar 18, 2005
2,274
959
136
LOL, I remember that. The datapath example was meant to illustrate the basic idea, not guide you through the 314 final project.
 

Mayson

Junior Member
Dec 11, 2005
18
0
0
It's funny. I just graduated from the University of Illinois and I took two computer Architecture classes and they both used texts written by Hennesy and Patterson.
 
Oct 19, 2005
56
0
0
Out of interest, I don't suppose there's anything along these lines that a 15yr old could read is there? I'm actually quite interested in CPU architecture and how they work y'see.
 

imported_plasmasnake

Junior Member
Aug 28, 2005
17
0
0
Originally posted by: AmberClad

I don't even have to click that link to know that it's the Hennessey/Patterson book, lol.

That link is Patterson and Hennessey.

This is Hennesssey and Patterson, a much, much bigger tome. Not recommended for beginners. ;-)

Edit: As a side note, I recommend Patt's book as a pretty good intro; it uses a made-up processor, but gets the basics down for you -- starting from the logic level and working up (covering transistors, gates, and other such delightful nonsense).

 

BlueFlamme

Senior member
Nov 3, 2005
565
0
0
Congrats on getting into NC State, my fathers Alma-matter and my school of preference (sadly out of state tuition and having a free ride to Old Dominion made it an easy call, but hey, it feels good to have no student loans!)

Based on my own undergrad as a Computer Engineer, none of these books will come into play until late Junior/Senior year.

I recommend focusing more on circuit theory and micro-electronics (assuming you feel confident in your ability to learn the math up to differential equations). I'll have to go home to remember which books I used, but you'll want to lookup which ones they will use for the actual classes(circuit theory will probably be sophomore year).


If you still insist on studying some of the deeper stuff, one of the good Hennessy/Patterson books I've used is Computer Architecture:A Quantitative Approach(However, I might not have used this until I was taking grad courses, since I took a bunch of those while a senior)

EDIT: Seems Plasmasnake beat me to the Quantitative Approach while I was searching for those Circuit Theory books.

Is it a combined Computer & Electrical Engineering degree at NCSU? We had seperate degrees and I missed gettting a dual degree in electrical by 12 credit hours (didn't find out until my final year and I opted to get a jump start on my masters so I was done in 1 year, still got a minor in electrical engineering)
 

BlueFlamme

Senior member
Nov 3, 2005
565
0
0
Oh yeah, best way to save money on textbooks is to sit outside the classroom after Exams and ask if any are selling their books. My normal policy was to find what a bookstore used price was, and what the bookstore would pay the student to buy it back and split the difference. Hence if bookstore charded $80 for a used copy, and paid $40 to buy it from the student, we would settle for $60.

Sometimes the professor would go up to the next version, but there are only minor changes, mostly to the homework assignments, which you can easily copy from a friend. Only once was there a new chapter, which was only 20 pages and cheaply copied for a buck instead of the book costing another $120.

And do not sell your advanced technical books (unless they were utter crap that your professor insisted you use). Selling low level programing and theater books is fine, but you will quickly forget how something works and having the same book you used in the course will help you find what you're looking for, especially if you will ever go on for a graduate degree.
 

BlueFlamme

Senior member
Nov 3, 2005
565
0
0
Originally posted by: TheGingerbreadGenius
Out of interest, I don't suppose there's anything along these lines that a 15yr old could read is there? I'm actually quite interested in CPU architecture and how they work y'see.

A good place for you would be microcontrollers. It won't get into the details of how the components work, or how to make a consumer CPU, but it will teach you some basics on how the parts work together (data busses, registers, clock timing) and ya can even learn some machine language. A motorola HC chip is often used as the example architecture.

Our book wasn't very good (one of them I still have sealed in its wrapping), so maybe someone from cornell or carnegie mellon will have a good suggestion for the topic.
 
Oct 19, 2005
56
0
0
A book on microcontrollers then? Do I need any specific Maths for this? I guess there's a fair chance that if I need it I can pick it up from my dad or my brother (both took Further Maths at A level- Maths qualification you get at around 18 in England) and my bro's now doing Physics at Uni, so he should know most of the needed Maths, right?

Worst comes to worst I think my dad's job is fairly entwined with circuits etc (I didn't ask him about what sort of books would be good because while he may know his stuff he isn't a brilliant teacher) so I'll quiz him.

Are microcontrollers inextricably linked with computers, or is there some chance I could pick up a book with them in the name which tells me nothing useful at all?
 

BlueFlamme

Senior member
Nov 3, 2005
565
0
0
Originally posted by: TheGingerbreadGenius
A book on microcontrollers then? Do I need any specific Maths for this? I guess there's a fair chance that if I need it I can pick it up from my dad or my brother (both took Further Maths at A level- Maths qualification you get at around 18 in England) and my bro's now doing Physics at Uni, so he should know most of the needed Maths, right?

Worst comes to worst I think my dad's job is fairly entwined with circuits etc (I didn't ask him about what sort of books would be good because while he may know his stuff he isn't a brilliant teacher) so I'll quiz him.

Are microcontrollers inextricably linked with computers, or is there some chance I could pick up a book with them in the name which tells me nothing useful at all?

A processor is a microcontroller. However, the motorola 68HC11 might be drawn on a large sheet of paper, whereas the first Intel Pentium chip drawn at the same scale would fill a large gymnasium (which from what I've heard, is how the first processors were designed before CAD was around).

It is hard for me to remember all the required skills to learn any skill set. What I am alluding to would have you looking at a simple architecture with something like two registers, an ALU (does simple math), and some memory. Then you can use machine language to get some data from memory, tell the ALU to do some math on it, and return it to somewhere else in the memory. Unfortunately all of that would probably be covered in only the first chapter of any of the books you would pick up, the rest would most likely will leave you staring blank eyed.

EDIT: Duh, I forgot one of my favorite websites!

Read these in order:

How Bits and Bytes Work
How Boolean Logic Works
How Electronic Gates Work
How Microcontrollers Work
How Microprocessors Work




 
Oct 19, 2005
56
0
0
Thanks a lot. I think I'm pretty interested in this sort of thing but there's absolutely nothing in school through which I can learn about it unfortunately, so I gotta do my own research.
 

BlueFlamme

Senior member
Nov 3, 2005
565
0
0
I don't know how things are done in England, but here in the US we learned some of the electronics in high school in Physics, where we used a breadboard with resistors and LEDs. At the college level we learned the higher theory (and all that math) but never got hands on.
 
Oct 19, 2005
56
0
0
As far as we've got with electronics at my level is Ohm's Law and making very, very basic circuits (ie, battery-light bulb-switch) which is pretty sucky. I just asked my brother and at A level Physics (16-18 schooling) he learnt more about Ohm's law, about capacitors, some stuff with diods and LEDs, internal resistance etc.
 

BlueFlamme

Senior member
Nov 3, 2005
565
0
0
That is where the level of abstraction comes in. If you can grasp Boolean logic you can use a gate, even if you don't know how to make it. Going on the same principle your ALU (Algorithm Logic Unit) can add, subtract, multiply, etc. without knowing how the gates make it. Thus at the microprocessor level, you can perform some basic functions (assuming you know How C Programming Works, the language isn't what matters, it is programming methods).

Armed with this you could make a simple program such as:

LDAA #$17 (Load Accumulator A with the value 80)
DECA (decrement A register, uses ALU)
STAA $1004 (Store Accumulator A in memory location $1004)

The result of these lines of code would give you the value 79 in memory $1004. Pretty basic but its a start.
 
Oct 19, 2005
56
0
0
Aye. I intend to start learning C as soon as possible (ie when I can find the book my brother had which teaches it- We've just moved house). I figured that it'd be essential if not for actual use but for the knowledge.

Come up with any books I might be able to use then?


Thanks for all the info/ advice.
 
sale-70-410-exam    | Exam-200-125-pdf    | we-sale-70-410-exam    | hot-sale-70-410-exam    | Latest-exam-700-603-Dumps    | Dumps-98-363-exams-date    | Certs-200-125-date    | Dumps-300-075-exams-date    | hot-sale-book-C8010-726-book    | Hot-Sale-200-310-Exam    | Exam-Description-200-310-dumps?    | hot-sale-book-200-125-book    | Latest-Updated-300-209-Exam    | Dumps-210-260-exams-date    | Download-200-125-Exam-PDF    | Exam-Description-300-101-dumps    | Certs-300-101-date    | Hot-Sale-300-075-Exam    | Latest-exam-200-125-Dumps    | Exam-Description-200-125-dumps    | Latest-Updated-300-075-Exam    | hot-sale-book-210-260-book    | Dumps-200-901-exams-date    | Certs-200-901-date    | Latest-exam-1Z0-062-Dumps    | Hot-Sale-1Z0-062-Exam    | Certs-CSSLP-date    | 100%-Pass-70-383-Exams    | Latest-JN0-360-real-exam-questions    | 100%-Pass-4A0-100-Real-Exam-Questions    | Dumps-300-135-exams-date    | Passed-200-105-Tech-Exams    | Latest-Updated-200-310-Exam    | Download-300-070-Exam-PDF    | Hot-Sale-JN0-360-Exam    | 100%-Pass-JN0-360-Exams    | 100%-Pass-JN0-360-Real-Exam-Questions    | Dumps-JN0-360-exams-date    | Exam-Description-1Z0-876-dumps    | Latest-exam-1Z0-876-Dumps    | Dumps-HPE0-Y53-exams-date    | 2017-Latest-HPE0-Y53-Exam    | 100%-Pass-HPE0-Y53-Real-Exam-Questions    | Pass-4A0-100-Exam    | Latest-4A0-100-Questions    | Dumps-98-365-exams-date    | 2017-Latest-98-365-Exam    | 100%-Pass-VCS-254-Exams    | 2017-Latest-VCS-273-Exam    | Dumps-200-355-exams-date    | 2017-Latest-300-320-Exam    | Pass-300-101-Exam    | 100%-Pass-300-115-Exams    |
http://www.portvapes.co.uk/    | http://www.portvapes.co.uk/    |