2.5 ELEMENTS OF CPU AND THEIR ROLE

 The CPU is a complex IC chip having millions of transistors. As mentioned earlier, a CPU has three major identifiable parts: Control Unit (CU), Arithmetic & logic Unit (ALU) and a set of Registers. The CPU chip is interfaced with other components of the computer through a system bus (printed wires on the mother board) which has three sets of wires forming Control Bus, Data Bus and Address Bus. Figure 2.4 presents the components of a CPU :


CPU has a set of Registers which is used to store some data temporarily. Register lies above Cache and Main memory in memory hierarchy of the system. The registers in CPU perform two roles:
 User-visible registers: used to store temporary data items and other user accessible information useful for machine or assembly language programmers.
 Control & Status Registers: used by control unit to control and coordinate the operation of the processor.

The Control Unit of the processor is that unit which controls and coordinates the execution of instructions by the processor. It is responsible for defining and controlling the instruction cycle. In essence, it causes things to happen in the processor. It issues control signals external to the processor to cause data exchange with memory and I/O modules. It also issues control signals internal to the processor to move data between registers, to cause the ALU to perform a specified function, and to regulate other internal operations. It generates timing signals and initiates the Fetch cycle of instruction execution. When the instruction is fetched, it generates the sequence of micro-operations which need to be executed in order to execute the instruction. CU also generates timing signals for executing set of micro-operations. There are three different ways in which CU can generate these micro-operations: through a hardwired logic, by reading a programmable Array (PLA) table or by reading a Programmable Read Only Memory (PROM). 

In hardwired control, the mapping between machine instruction and consequent micro-operations to be generated is permanently wired within the processor. It is relatively faster way although it cannot be modified. In PLA control the sequence of micro-operations to be generated for executing an instruction is stored as a PLA table. In Micro program control, the logic of the control unit is specified by a microprogram. Microprogram specifies the micro-operations. The microprogram control has a control memory (a PROM chip) which stores the sequence of micro-operations. As a general rule processors having smaller instruction set (such as RISC processors) have hard wired control logic whereas microprogram control is used in processors having larger instruction set. Most of the modern CISC processors use microprogram control.

The Arithmetic and Logic Unit is that part of the CPU that actually performs arithmetic and logical operations on data. The CU, CPU registers and memory help in bringing the data into the ALU and then taking the results back. Figure 2.5 presents the ALU inputs and outputs.


Data are presented to ALU in registers and the results are also stored in registers. Accumulator is one such register which is very frequently used during the ALU operation. ALU has many other registers such as flags and status register, which indicate information about the operation and its result. ALU has logic implemented to perform operations like addition, multiplication, division, shifting, complement etc. The operations are performed on represented numbers, both integer and floating point numbers. 

Modern processors nowadays have two identifiable trends which improve their performance to a much higher level. These are use of on chip Cache memory and having more than one processor core on the same IC chip. Cache memory is a fast semiconductor memory which can be used to temporarily store instructions and data that are frequently referred by the processor. By having frequently referred instructions and data available in the processor, the wait cycles introduced due to memory references are minimized and hence the processor performance improves a lot. Another modern technique of having more than one processor core on the same IC chip tries to perform the execution of instructions in parallel and hence the performance of the processor improves a lot.

Comments

Popular posts from this blog

3.5 SOCIAL NETWORKING

3.6 BLOG

3.4 COLLABORATIONS