Computer Architecture and Organization
Computer Architecture and Organization
In summary, computer architecture is like designing the blueprint for a house, outlining the overall structure and
design principles, while computer organization is like building the house according to that blueprint, focusing on
the physical components and their interconnections to realize the architectural specifications.
In architecture we deal with CPU design, what type of instruction CPU will support those instruction also you
need to give in the architecture of CPU, addressing mode, data format.
It deals with physical devices and their interconnections with perspective of improving the performance.
SYLLABUS
Memory interfacing
I/O interfacing
Machine instruction and addressing modes
Control unit design
Alu and data path
Number system and conversion
Data representation
Pipelining
Syllabus 2
Introduction of coa (component of computer, types of registers, instruction cycle, memory concept,
bytes and words addressable, system bus)
Instruction format and addressing mode (instruction concept, machine instruction, instruction format,
expand opcode technique, addressing modes concept, type of addressing modes)
Alu, Datapath and control unit (data path, micro instruction, micro program, control unit design)
Floating point representation (IEEE754, single and double presion)
Cache memory (memory concept, types of memory organization, cache memory, cache organization,
mapping technique, replacement algorithm, updating technique)
Pipelining (pipeline concept, pipeline types, performance evaluation, dependencies in pipeline)
Secondary memory and io interface (disk concept, disk structure, disk access time, io interface and its
type)
DATA
NUMEBER CHARACTERS
ASCII EBCDIC
FIXED POINT FLOATING POINT
SIGNED(ARITHEMATIC
UNSIGNED
NUMBER)
1'S COMPLEMENT
2'S COMPLEMENT
SIGN MAGNITUDE
Floating point representation and IEEE754 floating point representation asked in gate
Floating point representation why is it needed? Answer because it provides larger range of number with limited
numbers of bits.
This number is represented in format: of sign (+ve or -ve), exponent (it is stored in biased form) and mantissa
(signed normalized fraction number)
Now, you have to learn about biased and normalization (implicit and explicit) and then value formula, this is for
gate.
To overcome the disadvantages of floating-point representation we use, IEEE- 754 floating point representation
Denormalized number.
Components Of Computer:
Other Components:
System Bus:
On the basis of type of content the bus carries, bus are of three types:
Memory concept:
Memory address (the memory means ram and ram is divided into cells and cells are numbered and this
numbering is called the memory address).
Memory access (CPU sends memory address through address bus to say that on which address which memory
operation is to be performed, after this, memory do the instructed operation and then send it to the CPU)
Memory operation (read (data goes from memory to CPU) and write (data goes from CPU to memory))
- Read (CPU sends address to memory through address bus and then CPU sends read control signal to
memory through control bus and then memory performs read sends data or content to CPU through
data bus)
- Write (CPU sends address to memory through address bus and then CPU sends data to memory through
data bus and then CPU sends a write control signal to memory through signal bus and then memory will
perform write operation)
Thus, CPU is the supervisor or head of hardware components like (memory and I/O devices)
And running program and operating system is the supervisor or head of CPU.
Ant the supervisor or head or running program and operating system is the user, programmer.
CPU Registers:
On the basis of type of content that register store, it is of two types
Accumulator (AC) used to store result of ALU and sometimes one of the operands for ALU too.
Program counter (PC) used to store address of next instruction to be executed.
Instruction Register (IR) used to store current instruction
Stack Pointer (SP) used to store address of the top of the stack
Flag register/ Program status word (PSW) used to store status of ALU result
Address register (AR)/ Memory Address register (MAR) used to send address to memory, it is like the
bus stop of address, where address come from different parts of CPU in this register then send to
memory.
Data register (DR)/ Memory Data register (MDR)/ Memory Buffer register (MBR) used to send data to
memory (memory write) and to receive data from memory (memory read)
1. AC-BASED Architecture (when one input is come from AC and another input from anywhere)
2. Register Based Architecture (when both input comes from general purpose register)
3. Register-Memory Based Architecture (when one input comes from G.P.R and another input from G.P.R
or memory)
4. Complex System Architecture (when one input is comes from G.P.R or memory and another input also
from G.P.R or memory)
5. Stack Based Architecture (it is not useful now, when both input comes from operand stack)
Micro-operations – the operations executed on values stored in register. And symbolic notation to
describe the micro-operation is register transfer language (RTL)
RTL like arrow for content copying from one register to another register, comma for parallel micro-operation and
for memory transfer register name arrow memory address.
INSTRUCTION AND ADDRESSING MODE:
Instructions: a group of bits which instructs computer to perform some operation. And these instructions
are generated by language translator (that convert high level program into low level program)
How instruction generated: language translator (compiler) generates instruction based on CPU. Means only
those types of instruction it will generate, which are supported by CPU.
How instruction executed: 6 steps are required to execute an instruction and these 6 steps are collectively
called instruction cycle. And this cycle is divided in two cycles, in this first step that is instruction fetch comes in
fetch cycle and other five steps are in execution cycle. And all steps are not required for all type of instructions.
Effective address: address of operand in a computation-type instruction or the target address in a branch-type
instruction.
Digital computer is the type of computer that takes input in digital form and give output in digital form and
also that work on binary number.
Input means (inputting program and data that get converted into binary number)
Addressing Mode: It specifies how and from where the operands are obtained for an instruction.
Types of addressing mode:
Non – computable mode (not any computation required) (computation means addition, subtraction, etc.)
7. Autoincrement – autodecrement mode: variant of register indirect mode in which the content of
register is automatically incremented or decremented to access the sequential data
8. Indexed/ index Register Mode: base address taken from address field of instruction and index value
from index register.
9. Pc – relative mode: pc value added in address field value (offset) of instruction to get effective address.
(branch instruction)
10. Base register mode: base register value added in address field value(offset) of instruction to get effective
address. (intra segment branching)
CPU DESIGN:
CPU: it is the brain of a computer, containing all the circuitry needed to process input, store data, and output
results
MIPS formula
ALU
Datapath – collection of functional units such as arithmetic logic units or multiplexers. It performs data
processing operations.
Control unit – it generates control signals and sends to various components of computer. All components
operate according to these control signals.
Hardwired control unit: control logic is implemented with gates, flip-flops, decoders and other digital circuits.
Disadvantages: reaaranging the wires among various components is difficult. Updation in control logic is difficult.
Microprogrammed control unit: control logic is implemented with micro-programs. All possible control words
are stored in a memory and based on requriements specific control word is fetched and sent to devices.
Cisc (complex instruction set computer): more number of instruction, variable length instruction, complex
instruction, more and complex addressing modes, difficult to implement using hardwired control unit so used
microprogrammed control unit, multiples cycles per instruction, register-to-memory and memory-to- register
arithmetic operation is possible, less number of register
No, CPU is not directly connected to io devices, there is a io interface between CPU and io devices that connect
them.
Io interface function is converting the signal of CPU to the signals that io devices can understand and vice versa.
Io interface provide synchronization between CPU and io devices for avoiding data loss as their speed is
mismatch
Io interface monitor the operation should be controlled so, that operation don’t disturb
Dma controller has facility of dma and interface and io processor has facility of dma, interface and io instruction
execution (graphic card)
Io vs memory bus
There are 3 ways to connect memory and io with CPU through buses
Magnetic disk
Pipelining