Chapter 1lecture 1.3 (Computer Hardware Components) Notes+Homework+References+videoLink
Chapter 1lecture 1.3 (Computer Hardware Components) Notes+Homework+References+videoLink
3
COMPUTER HARDWARE COMPONENTS
Following are the computer hardware components:
ALU
REGISTERS
MEMORY
SIGNALS
Fig.1.3.1 Basic ALU Design
An ALU has a variety of input and output nets, which are the shared electrical connections used
to convey digital signals between the ALU and external circuitry. When an ALU is operating,
external circuits apply signals to the ALU inputs and, in response, the ALU produces and
conveys signals to external circuitry via its outputs.
DATA
A basic ALU has three parallel data buses consisting of two input operands (A and B) and a
result output (Y). Each data bus is a group of signals that conveys one binary integer number.
Typically, the A, B and Y bus widths (the number of signals comprising each bus) are identical
and match the native word size of the encapsulating CPU (or other processor).
OPCODE
The opcode input is a parallel bus that conveys to the ALU an operation selection code, which is
an enumerated value that specifies the desired arithmetic or logic operation to be performed by
the ALU. The opcode size (its bus width) is related to the number of different operations the
ALU can perform; for example, a four-bit opcode can specify up to sixteen different ALU
operations. Generally, an ALU opcode is not the same as a machine languageopcode, though in
some cases it may be directly encoded as a bit field within a machine language opcode.
STATUS
The status outputs are various individual signals that convey supplemental information about the
result of an ALU operation. These outputs are usually stored in registers so they can be used in
future ALU operations or for controlling conditional branching. The collection of bit registers
that store the status outputs are often treated as a single, multi-bit register, which is referred to as
the "status register" or "condition code register". General-purpose ALUs commonly have status
signals such as:
FUNCTIONS:
Arithmetic operations
Add: A and B are summed and the sum appears at Y and carry-out.
Add with carry: A, B and carry-in are summed and the sum appears at Y and carry-out.
Subtract: B is subtracted from A (or vice-versa) and the difference appears at Y and
carry-out. For this function, carry-out is effectively a "borrow" indicator. This operation may
also be used to compare the magnitudes of A and B; in such cases the Y output may be
ignored by the processor, which is only interested in the status bits (particularly zero and
negative) that result from the operation.
Subtract with borrow: B is subtracted from A (or vice-versa) with borrow (carry-in)
and the difference appears at Y and carry-out (borrow out).
Two's complement (negate): A (or B) is subtracted from zero and the difference appears
at Y.
Increment: A (or B) is increased by one and the resulting value appears at Y.
Decrement: A (or B) is decreased by one and the resulting value appears at Y.
Pass through: all bits of A (or B) appear unmodified at Y. This operation is typically
used to determine the parity of the operand or whether it is zero or negative.
Arithmetic
Logical
Rotate
Rotate through
carry
• http://www.ddegjust.ac.in/studymaterial/msc-cs/ms-07.pdf
• http://www.svecw.edu.in/Docs%5CITIIBTechIISemLecCOA.pdf
• https://www.geeksforgeeks.org/memory-organisation-in-computer-architecture/
• https://study.com/academy/lesson/arithmetic-logic-unit-alu-definition-design-function.html
• https://www.tutorialspoint.com/computer_logical_organization/cpu_architecture.htm
VIDEO REFERENCES
https://www.youtube.com/watch?v=Z5JC9Ve1sfI
https://www.youtube.com/watch?v=fpnE6UAfbtU
https://www.youtube.com/watch?v=WLKGmfiorcQ