COA Assignment Part-2
COA Assignment Part-2
COA Assignment Part-2
Evaluator’s Comment:
-------------------------------------------
• Introduction
• Main execution core
• ALUs Adder, Subtractor, Multipliers, Dividers
• Main Memory Units
• Decoder
• Multiplexer
• Buses
• Registers, etc.
1. Conclusion
2. Reference
Introduction of CPU:
The central processing unit (CPU) is an electronic circuit within a computer that carries out
the instructions of a computer program by performing the basic logic, arithmetic, controlling, and input
and output operations specified by the instructions. Traditionally, the term "CPU" refers to a processor,
more specifically to its processing unit and control unit (CU), distinguishing these core elements of a
computer from external components such as main memory and circuitry.
The processor plays a significant role in the following important aspects of your computer system;
Performance:
The processor is probably the most important single determinant of system performance in the
Pc. The other devices only allow the processor to reach its full potential. While other components also
play key role in determining performance, the processor's capabilities dictate the maximum performance
of a system.
1. Software Support:
Newer, faster processors enable the use of the latest software. In addition, new processors such
as the Pentium with MMX Technology, enable the use of specialized software not usable on earlier
machines.
2. Reliability and Stability:
The quality of the processor is one factor that determines how reliably your system will run.
While most processors are very dependable, some are not. This also depends to some extent on the age
of the processor and how much energy it consumes.
3. Energy Consumption and Cooling:
Originally processors consumed relatively little power compared to other system devices. Newer
processors can consume a great deal of power. Power consumption has an impact on everything from
cooling method selection to overall system reliability.
4. Motherboard Support:
The processor that decides to use in your system will be a major determining factor in what sort
of chipset we must use, and hence what motherboard you buy. The motherboard in turn dictates many
facets of. The system's capabilities and performance.
COMPONENTS OF CPU
For example, a quad-core processor is a chip with four independent units called
cores that read and execute central processing unit instructions such as add, move data, and branch.
Within the chip, each core operates in conjunction with other circuits such as cache, memory
management, and input/output ports.
2. Integer ALUs:
The Integer Unit (sometimes called the "Arithmetic and Logic Unit" (ALU)) is the central
part of the processor: it is basically a combinational logic element can do both arithmetic and
logical operations on integer numbers: for example, two words can be added, subtracted, AND
together. The operation to be executed is controlled by the values on the control inputs to the
Integer Unit supplied by the Dispatch Unit.
The output of the Integer Unit is either written back to memory, or else it is written back
to the register where the data came from. The Integer Unit deals with either bytes or words (a
word is usually 2 or 4 bytes): in general it takes two eight bit numbers, and gives one eight bit
answer, or two words and gives another word as an answer.
4. Integers Multipliers/Dividers:
Many digital systems including computers, require implementation of integer and/or
floating point multiplication and division. Further, many of these applications require that
multiplication and division for operands of significant size be executed at very high speeds.
Historically, the recursive algorithms for these two operations if implemented in a straightforward
manner as sequential circuits with maximum hardware reuse have very limited performance. Our
goals here are to present these recursive algorithms for integer multiplication and division,
introduce two fundamental techniques to improved performance, and to provide an
implementation of each algorithm that executes at high speed.
7. Buses:
When referring to a computer, the bus also known as the address bus, data bus, or
local bus, is a data connection between two or more devices connected to the computer. For
example, a bus enables a computer processor to communicate with the memory or a video card to
with the memory.
8. Registers:
Registers are a type of computer memory used to quickly accept, store, and transfer data
and instructions that are being used immediately by the CPU. ... A processor register may hold
an instruction, a storage address, or any data (such as bit sequence or individual characters).
Instruction Register:
- The instruction register (IR) or current instruction register (CIR) is the part of a CPU's control
unit that holds the instruction currently being executed or decoded.
Memory Registers:
- The Memory Address Register (MAR) holds the address of a memory block in which read or
write. The Memory Data Register (MDR) holds data waiting to be written in or data read from
the location pointed by the MAR.
9. Accumulator:
In a computer's central processing unit (CPU), the accumulator is a register in which
intermediate arithmetic and logic results are stored.
10. Program Counter:
A program counter is a register in a computer processor that contains the address (location)
of the instruction being executed at the current time.
Input
R1
R2
R3 PROGRAM
R4 COUNTER
R5
R6
MUX MUX
DECODER
RAM
IR
DECODER
ACCUMULATOR
OUTPUT
Well, the idea of creating a CPU starts with by placing the 2 important parts of computer, The
Arithmetic Logic Unit and the Control Unit.
A control unit (CU) handles all processor control signals. It directs all input and output flow,
fetches the code for instructions and controlling how data moves around the system. And, the arithmetic
logic unit is that part of the CPU that handles all the calculations the CPU may need, e.g. Addition,
Subtraction, Comparisons. It performs Logical Operations, Bit Shifting Operations, and Arithmetic
Operation.
2. Program Counter (PC): Keeps track of the memory location of the next instructions to be dealt
with. The PC then passes this next address to Memory Address Register (MAR).
3. Memory Address Register (MAR): It stores the memory locations of instructions that need to
be fetched from memory or stored into memory. Memory Data Register (MDR): It stores
instructions fetched from memory or any data that is to be transferred to, and stored in,
memory.
1. Current Instruction Register (CIR): It stores the most recently fetched instructions while it is
waiting to be coded and executed.
2. Instruction Buffer Register (IBR): The instruction that is not to be executed immediately is placed
in the instruction buffer register IBR.
Now the required buses are connected in between the data registers, address registers and control
unit as:
1. Data Bus: It carries data among the memory unit, the I/O devices, and the processor.
2. Address Bus: It carries the address of data (not the actual data) between memory and processor.
3. Control Bus: It carries control commands from the CPU (and status signals from other devices) in
order to control and coordinate all the activities within the computer.
And finally there are the input and output devices which takes in and out the calculations and data
of the CPU.
References:
a. https://study.com/academy/lesson/arithmetic-logic-unit-alu-definition-design-function.html
b. https://www-users.cs.york.ac.uk/~mjf/simple_cpu_v2/index.html
c. Computer Architecture and Organization (Third Edition) by M .Moris Mano
d. http://vlabs.iitkgp.ernet.in/coa/exp8/index.html