NOTE: Sources include wikipedia, HowStuffWorks, etc, a bit of googling and whatever was taught in my class !!
What exactly is this microprocessor?? Well, its the "heart" of any computer. With the microprocessor, the functions or tasks of a computer can be done using a single IC (or a few ICs together) . It takes only BOOLEAN inputs and results are what we see today.
Much before the usage of microprocessors, early computers used ICs which had a few hundreds of transistors burnt on them. Most often, multiple ICs were required and together, all were burnt on a single platform.
Because of this arrangement, a large number of logic gates had to be used, which in turn lead to increased heat dissipation and lower speeds.
But the discovery of microprocessors has changed it all !
The first microprocessor was introduced in 1971, it was called Intel 4004. It was a very primitive version as compared to todays microprocessors. The 4004 could add and subtract 4 bits (and just 4 bits) at a time. Refer wikipedia for much deeper history and evolution of the microprocessors.
The first microprocessor to make it to a home computer is the Intel 8080 and then on, improvised versions kept evolving -
4004, 4040, 8080, 8085, 8086, 8088, 80186, 80126, 80386 SX 80386 DX, 80386 EX, 80486, Pentium Pro, Intel Pentium II, III, IV and so on.
Each version represents a family of microprocessors. Modern microprocessors can be traced back to their basic version - the 8085, 8086 microprocessors. The 8086 contains additional functions when compared to the 8085 and so we shall see more about the 8086 family.
## At this point, I have an unanswered question - Is there any basis for the naming of the microprocessors? Why do they start with an "80-" ? I could do with some opinion, readers :)
--> I think that the "40-" signified 4 bit operations, and the "80-", 8 bit operations, Im not sure. Please do correct me If I am wrong.
Generally, microprocessors can be differentiated using three features:
a) INSTRUCTION SET : The set of instructions that the microprocessor can execute.
b) BANDWIDTH : The number of bits processed in a single instruction.
c) CLOCK SPEED : Specified in MHz (megahertz), the clock speed determines how many instructions the microprocessor can execute per second.
On a rougher note, one can say that a 32-bit microprocessor with clock speed of 50 MHz is more powerful than a 16-bit microprocessor with a clock speed of, say, 25 MHz.
A GENERAL PURPOSE MICROPROCESSOR:
Schematic Diagram of a General purpose Microprocessor |
Referring to the figure above, we see that there are two "buses" . A BUS may be seen as a 'path' for establishing communication between the microprocessor and a peripheral. To set up a communication between, say, a device and the microprocessor, the microprocessor should first "address" that device and then communicate. The address bus does just that.
A group of lines are used to identify the devices, these lines constitute the address bus, and its UNIDIRECTIONAL.
A general microprocessor has another bus, namely, the DATA bus, which, as the name suggests, makes the exchange of data possible. This is BIDIRECTIONAL.
A general microprocessor has what forms a path for all communication - Datapath.
The datapath consists of the circuitry for transforming data and for storing
temporary data. The datapath contains an arithmetic-logic unit (ALU) capable of
transforming data through operations such as addition, subtraction, logical AND, logical OR, inverting, and shifting. The ALU also generates status signals, often stored in a status register indicating particular data conditions. Such conditions include indicating whether data is zero, or whether an addition of two data items generates a carry. The datapath also contains registers capable of storing temporary data. Temporary data may include data brought in from memory but not yet sent through the ALU, data coming from the ALU that will be needed for later ALU operations or will be sent back to memory, and data that must be moved from one memory location to another. The internal data bus is the bus over which data travels within the datapath, while the external data bus is the bus over which data is brought to and from the data memory.
When we say a processor is a 16-bit or 32-bit processor, we mean to convey that the width of the DATA bus is 16-bits or 32-bits respectively.
In addition to the data and address buses, we also have what are called control signals, which we shall discuss a little later.
For convenience I shift the further part to the next post.