Where do I go to learn how a processor works?

Soldato
Joined
22 Dec 2008
Posts
10,369
Location
England
One of my textbooks (Horowitz and Hill, the art of electronics) discusses some of the earliest ones in some detail. However it was written at a time where the 80486 was wildly exciting, and is consequently a little outdated. Wikipedia is neither a reliable source nor especially detailed, and Intel's published specifications are quite unreadable and really not intended as a learning resource.

Further, this is a difficult thing to Google. So I hope that someone here has come across what I'm looking for. I assume a textbook is unlikely, but would have thought research papers on the topic exist. Motivation is that I'm a science/engineering undergraduate more than someone who wants to overclock slightly higher.

So, any advice?
 
Processors still work in the same way. They have data and address buses, internal registers, execution units etc.

If you want to understand how a processor works your best off studying something simple (8086 or earlier).
 
What appears to be the complete works of Charles Babbage will certainly keep me occupied for a while. I had no idea he was involved with computers, could've sworn his lecture hall is used for biology.

The architecture remains similar then? Is it reasonable to take the approach of learn about the first x86 processors, and then look at the more modern efforts from Intel as essentially the same with additional features? I assumed the more recent efforts were completely alien to the earlier systems.

Thanks for all the responses :)
 
The fundamentals of how a processor works haven’t changed.

Pick the simplest (earliest) processor you get find sufficient information on and study that.
 
The architecture remains similar then? Is it reasonable to take the approach of learn about the first x86 processors, and then look at the more modern efforts from Intel as essentially the same with additional features? I assumed the more recent efforts were completely alien to the earlier systems.

Thanks for all the responses :)

Learning about early processors in detail will be very useful as it will give an insight into the basic principles and issues (e.g. how a pipeline works, early cache systems etc) and introduce you to the vocab.

Another source of info is some of the hardware sites on the web ... places like TomsHardware used to do pretty in depth analyses of new x86 architectures when they came out which will give at least an overview of the newer features.

Basic principles in the x86 style processors I think remain similar though for performance there's much more "superscalar" (starting more than one instruction execution at the same time) and "out of order" (instead of waiting when an instruction needs data that's not yet available select a "future" instruction whose data is already available) execution.

At the same time there are other styles of architecture (data flow etc) which you may come across.
 
http://www.science.smith.edu/~jcardell/Courses/CSC103/CPUsim/cpusim.html
Slides for that example are Here. Might have to dig up some more instructions from somewhere but they're pretty standard I think. Grab a textbook from the library and play with that for a bit if you want to get your head round the fetch-execute cycle. If you're talking about circuits, transistors and architecture, that's a bit over my head; i'm only a CompSci UG ;)
 
Last edited:
Back
Top Bottom