
8
C3
Processors comparison
1. Basic concepts of CPU operation
A CPU normally consists of the following parts:
Control Unit
This fetches instructions from main memory and determines their type.
Arithmetic Logic Unit
This performs all the necessary arithmetic functions, such as add and subtract;
logical functions, like AND and OR; and shifting operations.
Registers
The CPU's registers are used to store temporary results and control information.
Program Counter
The Program Counter contains the address of the next instruction to be executed.
Instruction Register
This holds the instruction currently being executed.
Cache
This is a small amount of high-speed memory, which is used to store data the CPU
is currently working on.
Translation Lookaside Buffer
This enables the CPU to obtain the physical address of a piece of data quickly. Each
entry in the TLB maps a logical page of memory onto a physical page of memory.
The TLB is associative: that is the CPU can compare the entry it is trying to match
with all the TLB entries at once. If a match is found the logical block number can
be replaced by the physical block number, giving the desired physical address.
In a von Neumann machine (one in which only one thing is done at a time; there is
one bus for both code and data; and the program is stored in memory) the CPU
continually executes a Fetch-Decode-Execute cycle. This can be broken down into
the following parts:
1. Fetch the next instruction from memory into the Instruction Register.
2. Increment the Program Counter to point to the following instruction.
3. Determine the type of the instruction.
4. If the instruction uses data from memory find the data (search Cache, TLB and
Secondary Memory) and load it into CPU's internal registers.
5. Execute the instruction.
6. Place results in appropriate registers.
Comentarios a estos manuales