Epic processors|Central Processing Unit|types of processors|registers|ALU|EPIC processor

Central Processing Unit

The CPU can be thought of as the brains of the Computer. It is responsible for fetching the correct instruction for execution, decoding that instruction, and then executing that instruction. The CPU sometimes works in conjunction with the ALU to complete the execution of the instruction (in arithmetic and logical operations).

CPU central processing unit.jpg
CPU

Functions of CPU(Central Processing Unit)

  • It is responsible for correct and execute the instruction ,that is given by the user.
  • The CPU controls the program memory address bus,, the data memory address bus, and accesses to the stack.
  • This unit is responsible for all events inside the computer.
  • It controls all internal and external devices, performs arithmetic and logic operations.
  • The set of instructions givern by use compile in tha machine language by the CPU.
  • If the same program can run on two different computer brands they are said to be compatible. Programs written for IBM compatible computers will not run on Apple computers because these two architectures are not compatible.
CPU processing diagram.jpg
CPU diagram

The operations a microprocessor performs are called the instruction set of this processor. The instruction set is―hard wired‖ in the CPU and determines the machine language for the CPU. The more complicated the instruction set is, the slower the CPU works. Processors differ from one another by the instruction set. 

Arithmetic and Logic Unit (ALU)

An arithmetic-logic unit (ALU) is the part of a computer processor (CPU) that carries out arithmetic and logic operations on the operands in computer instruction words. 

In some processors, the ALU is divided into two units, an arithmetic unit (AU) and a logic unit (LU). Some processors contain more than one AU for example, one for fixed-point operations and another for floating-point operations. (In personal computers floating point operations are sometimes done by a floating point unit on a separate chip called a numeric coprocessor.

Working Process of ALU

Typically, the ALU has direct input and output access to the processor controller, main memory (random access memory or RAM in a personal computer),Inputs and outputs flow along an electronic path that is called a bus. The input consists of an instruction word (sometimes called a machine  instruction word) that contains an operation code (sometimes called an ―op code), one or more operands, and sometimes a format code. 

The operation code tells the ALU what operation to perform and the operands are used in the operation. (For example, two operands might be added together or compared logically.) The format may be combined with the "op code" and tells, 

for example, whether this is a fixed-point or a floating-point instruction. The output consists of a result that is placed in a storage register and settings that indicate whether the operation was performed successfully. (If it is not, some sort of status will be stored in a permanent place that is sometimes called the machine status word.)

ALU diagram.jpg
ALU diagram

Function of ALU

  • In the arithmetic unit, multiplication and division are done by a series of adding or subtracting and shifting operations.
  • In the logic unit, one of 16 possible logic operations can be performed such as comparing two operands and identifying where bits do not match.
  • The ALU is  perform arithmetic operations (e.g. addition, subtraction, multiplication, division) over data received from memory and capable to compare numbers

In general, the ALU includes storage places for input operands, operands that are being added, the accumulated result (stored in an accumulator), and shifted results. The flow of bits and the operations performed on them in the subunits of the ALU is controlled by gated circuits. The gates in these circuits are controlled by a sequence logic unit that uses a particular algorithm or sequence for each operation code.

The design of the ALU is obviously a critical part of the processor and new approaches to speeding up instruction handling are continually being developed.

The first single chip CPU was the Intel 4004 invented in Nov 1971, a 4-bit processor meant for a calculator. It processed data in 4 bits, but its instructions were 8 bits long. Program and data were separate. 

Control Unit

It is a typical component of the CPU that implements the microprocessor instruction set. It extracts instructions from memory and decodes and executes them, and sends the necessary signals to the ALU to perform the operation needed. Control Units are either hardwired (instruction register is hardwired to rest of the microprocessor) or micro-programmed.

The control unit directs and controls the activities of the internal and external devices. It interprets the instructions fetched into the computer, determines what data, if any, are needed, where it is stored, where to store the results of the operation, and sends the control signals to the devices involved in the execution of the instructions.

Registers

Registers are general purpose and some are reserved for certain functions. It is a high-speed memory which holds only data for immediate processing and results of this processing. If these results are not needed for the next instruction, they are sent back to the main memory and registers are occupied by the new data used in the next instruction.

  • Registers are a group of cells used for memory addressing, data manipulation and processing.
  • Registers is special, high-speed storage area within the CPU.
  • The register can contain the address of a memory location where data is stored rather than the actual data itself
  • The number of registers that a CPU has and the size of each (number of bits) help determine the power and speed of a CPU. 
  • If we perform mathematical operation,data of user stored in the registers.
  • While performing these operations the ALU takes data from the temporary storage area inside the CPU named registers.

For example - A 32-bit CPU is one in which each register is 32 bits wide. Therefore, each CPU instruction can manipulate 32 bits of data. Usually, the movement of data in and out of registers is completely transparent to users, and even to programmers. Only assembly language programs can manipulate registers. In high-level languages, the compiler is responsible for translating high-level operations into low-level operations that access registers.

Instruction Set

An instruction set is a collection of machine code instructions which enable a processor to carry out all its tasks. 
 
Most personal computers use a CISC (Complex Instruction Set Computer) architecture, in which the CPU supports as many as two hundred instructions. An alternative architecture, used by many workstations and also by some personal computers, is RISC (Reduced Instruction Set Computer), which supports fewer instructions. Reduced Instruction Set Computer (RISC) is a type of instruction set for a microprocessor that recognizes a relatively limited number of instructions.One advantage of RISC is that it can execute their instructions very fast because the instructions are so simple.another advantage advantage is that RISC chips require fewer transistors, which makes them cheaper to design.

Processor Speed

The CU and ALU perform operations at incredible speed. These operations are usually synchronized by a built-in electronic clock (known as system clock) that emits millions of regularly spaced electric pulses per second (known as clock cycles).Instructions are fetched, decoded, and executed at proper intervals with intervals timed by a specific number of clock cycles. One cycle is the time it takes to perform one operation such as moving a byte of data from one memory location to another. Normally, several clock cycles are required to fetch, decode, and execute a single program instruction. Shorter the clock cycle,faster the processor. 

Hence, the speed at which an instruction is executed is related directly to a computer's built-in clock speed, which is the number of pulses produced per second. This clock speed is measured in megahertz (MHz) or gigahertz (GHz), where mega means 106, giga means 109, and hertz means cycles per second. Over the years, clock speeds of processors have increased steadily. Most of today‘s popular personal computers have clock speeds in the 500 MHz (0.5 GHz) to 4000 MHz (4.0 GHz) range.

Types of Processors

CISC Processors

One of the earlier goals of CPU designers was to provide more and more instructions in the instruction set of a CPU to ensure that the CPU supports more functions directly. This makes it easier to translate high-level language programs to machine language and ensures that the machine language programs run more effectively.

CISC processors possess so many processing features, they make the job of machine language programmers easier. However, they are complex and expensive to produce. Most personal computers of today use CISC processors.

RISC Processors

These design ideas resulted in producing faster and less expensive processors. CPUs with a small instruction set, fixed-length instructions, and reduced references to memory to retrieve operands are said to employ RISC (Reduced Instruction Set Computer) architecture. Since RISC processors have a small instruction set, they place extra demand on programmers who must consider how to implement complex computations by combining simple Instructions. However, RISC processors are faster for most applications, less complex, and less expensive to produce CISC processors because of simpler design.

EPIC Processors

The Explicitly Parallel Instruction Computing (EPIC) technology breaks through the sequential nature of conventional processor architectures by allowing the software to communicate explicitly to the processor when operations can be done in parallel. For this, it uses tighter coupling between the compiler and the processor. It enables the compiler to extract maximum parallelism in the original code and explicitly describe it to the processor. Processors based on EPIC architecture are simpler and more powerful than traditional CISC or RISC processors. These processors are mainly targeted to next-generation, 64-bit, high-end server and workstation market (not for personal computer market).

The microprocessors have begun in 1971 when Intel Company has let out the first microprocessor i4004.

Arithmetic and logic unit: The two basic components of a CPU are the control unit the arithmetic logic unit.

Control Unit: A control unit in general is a central (or sometimes distributed but clearly distinguishable) part of the machinery that controls its operation, provided that a piece of machinery is complex and organized enough to contain any such unit.

CPU: It is the brain of a computer system. All major calculations and comparisons performed by a computer are carried out inside its CPU. CPU is also responsible for activating and controlling the operations of other unit of the computer system. Hence, no other single component of a computer determines its overall performance as much as its CPU.

Registers: It is Special, high-speed storage area within the CPU.

System clock and clock cycles: The CU and ALU perform operations at incredible speed. These operations are usually synchronized by a built-in electronic clock (known as system clock) that emits millions of regularly spaced electric pulses per second (known as clock cycles).