ClassSlideChapter1 (1)
ClassSlideChapter1 (1)
Course Topics
Module# Topics
Module-1 Basic structures of Computers: Computer Architecture vs. Computer Organization,
Functional units, Operational concepts, Registers, Bus Structure, Performance
Consideration, SPEC rating.
Module-2 Memory location and addresses, Big-endian and Little-endian representation, Instruction
format, Instruction set Architecture, RISC vs. CISC, Addressing modes, Instruction
Sequencing, Subroutines.
Module-3 Binary Arithmetic: Addition and subtraction of signed numbers, Design of fast adders,
Multiplication of positive numbers, Signed operand multiplication, Fast multiplication,
Integer division, Representation of floating point numbers.
Module-4 Memory System: Basic Concepts, Speed, Size and cost, Cache memory concepts, Cache
memory mapping techniques, Performance consideration; Virtual memory concepts,
Translation look-aside buffer, Replacement techniques, Secondary Storage.
Module-5 Basic Processing Units: Fundamental concepts, Execution cycle, Single-Bus and Multi-Bus
Organization, Execution of complete instruction, Hardwired control, Micro programmed
control, Accessing I/O devices.
Basic Structures of Computers
(Chapter 1)
Some Basic Concepts
• Computer Architecture (CA) is concerned with the structure and
behavior of the computer.
• It includes the information formats, the instruction set and
techniques for addressing memory.
• In general it covers 3 aspects of computer-design namely:
1) Computer Hardware
2) Instruction set Architecture
3) Computer Organisation
Some Basic Concepts
1. Computer Hardware
It consists of electronic circuits, displays, magnetic and optical
storage media and communication facilities.
2. Instruction Set Architecture
It is programmer visible machine interface such as instruction set,
registers, memory
organization and exception handling.
Two main approaches are
1) CISC (Complex Instruction Set Computer)
2) RISC (Reduced Instruction Set Computer)
Some Basic Concepts
3. Computer Organization
It includes the high level aspects of a design, such as
→ memory-system
→ bus-structure
→ design of the internal CPU.
It refers to the operational units and their interconnections that
realize the architectural specifications.
It describes the function of and design of the various units of digital
computer that store and process information
Architecture vs Organisation
Computer Architecture Computer Organization
Computer Architecture is concerned with the way hardware components are Computer Organization is concerned with the structure and behaviour of a computer
connected together to form a computer system. system as seen by the user.
It acts as the interface between hardware and software. It deals with the components of a connection in a system.
Computer Organization tells us how exactly all the units in the system are arranged
Computer Architecture helps us to understand the functionalities of a system.
and interconnected.
While designing a computer system architecture is considered first. An organization is done on the basis of architecture.
Computer Architecture deals with high-level design issues. Computer Organization deals with low-level design issues.
Architecture involves Logic (Instruction sets, Addressing modes, Data types, Cache Organization involves Physical Components (Circuit design, Adders, Signals,
optimization) Peripherals)
Basic Terminology
• Word : It is the fixed no. of bits that can be processed in a group at a
time.
• Word length : The no. of bits in each word is referred to as word
length (16 to 64).
• Timing signal : It determines when a given action is to take place.
Data transfer between processor and memory are controlled by the
control unit through timing signal.
• Physical memory : It is known as random-access memory (RAM) is a
form of very fast, but volatile data storage. RAM modules are typically
measured in nanoseconds (1000− 3), and physical disks are typically
measured in milliseconds (1000− 1).
• Logical memory : It is the address space, assigned to a logical
partition, that the operating system perceives as its main storage.
Stored Program concept
• All modern computers use the stored program concept which is
initially conceived by Von-Neuman.
• Various features of Von-Neuman architecture are :
1. 5 main different units (m/m, ALU, CU, IU, OU)
2. Program and data are stored in common memory.
3. Once the program is in memory, the computer can execute it
automatically without human interaction.
4. CU fetches and executes instructions in sequence.
5. An instruction can modify the contents of any location in
memory.
Functional Units
•
• The control-unit generates the timing-signals that determine when a given action is to take place.
• During the execution of an instruction, the contents of PC are updated to point to next instruction.
• The MDR contains the data to be written into or read out of the addressed location.
• At the start of execution, all program instructions are stored in the main-memory.
• As execution proceeds, instructions are fetched into the processor, and a copy is placed in the
cache.
• Later, if the same instruction is needed a second time, it is read directly from the cache.
R is measured in cycles per second and known as also called Hertz (Hz)
BASIC PERFORMANCE EQUATION
• Let T = Processor time required to executed a program.
• To achieve high performance, the computer designer must reduce the value of T, which
means reducing N and S, and increasing R.
The value of N is reduced if source program is compiled into fewer machine
instructions.
The value of S is reduced if instructions have a smaller number of basic steps to
perform.
The value of R can be increased by using a higher frequency clock.
• Care has to be taken while modifying values since changes in one parameter may affect
the other.
CLOCK RATE
RISC CISC
Simple instructions taking one cycle Complex instructions taking multiple cycle
Instructions are executed by hardwired control Instructions are executed by microprogrammed
unit control unit
• Since the MIPS estimation doesn’t take into consideration other components such as
the computer’s I/O it isn’t continuously a reasonable way to degree the execution of a
computer.
• Execution time.
If no. of instructions and Execution time is given.
Step 1: Perform the Divide operation between no. of instructions and
Execution time and store the value (Let X) in a variable.
Step 2: Perform the Divide operation between that variable (X) and 1 million
for finding millions of instructions per second.
Example:
if a computer completed 2 million instructions in 0.10 seconds
X = 2 million/0.10 = 20 million.
MIPS rate = X/1 million
MIPS rate =20 million/1 million =20.
General Formula:
𝐈𝐧𝐬𝐭𝐫𝐮𝐜𝐭𝐢𝐨𝐧 𝐂𝐨𝐮𝐧𝐭
MIPS=
𝐄𝐱𝐞𝐜𝐮𝐭𝐢𝐨𝐧 𝐭𝐢𝐦𝐞×𝟏𝟎𝟔
Disadvantages of MIPS:
• It may not reflect real execution
benchmark.
• SPEC selects & publishes the standard programs along with their test results for
computer.
• The test is repeated for all the programs in the SPEC suite.