Professional Documents
Culture Documents
BE 2/4 IV SEM
SECTION
Syllabus
Unit 1: Basic Structure of Computers
Basic Structure of Computers : Computer Types, Functional Units,
Basic Operational Concepts, Bus Structures, Software, Performance,
Multiprocessors and Multicomputer, Memory locations and Addresses,
Memory operations, Instructions and Instruction Sequencing,
Addressing Modes, Assembly language, Additional Instructions
Unit 2: Basic Processing Unit
Basic Processing Unit: Register Transfer Language and Micro operations:
Register Transfer Language, Register Transfer, Arithmetic Micro operations,
Logic Micro operations, Shift Micro operations, Arithmetic logic shift unit.
MICROPROGRAMMED CONTROL: Control memory, address sequencing,
micro program example, Design of control unit, hardwired control, micro
programmed control.
Unit 3 : Input Output Organization
Input Output Organization: Peripheral devices, Input-output Interface,
Asynchronous Data Transfer, Modes of Transfer, and Priority interrupt, Direct
Memory Access.
Unit 4 : Memory System
Memory System Some Basic Concepts, Semiconductor RAM Memories, Read -Only
memories, Cache Memories, Performance considerations, Virtual Memories,
Memory Management Requirements, Secondary Storage Magnetic Hard disks,
Optical Disks, Magnetic Tape Systems.
Unit 5 : PIPELINIING
Pipelining: Basic Concepts, Data Hazards, Instruction Hazards, Influence on
Instruction sets, Data path and control considerations, Super Scalar Operation
FUNDAMENTALS OF COMPUTER ORGANISATION
• WHAT IS COMPUTING?
• FOR WHAT PURPOSE ?
• What are the basic elements in any computing system?
• How they are interact with each other?
• DIFFRENCE BETWEEN ORGANAISATION & ARCHITECTURE
•Architecture describes what the computer
does.
•Organization describes how it does it.
ORGANISATION ARCHITECTURE
• Users ex car driver • Designer ex automobile engineer
• How to use • How to implement
• User must know the availability • Must design the needs
• Programmer or software • Designers
engineer • Hard ware point of view.
• Software point of view.
Computer Architecture Computer Organization
Memory
Output Control
I/O Processor
the part of a CPU's control unit that holds the instruction currently being
executed or decoded.
• In the instruction cycle, the instruction is loaded into the instruction register after
the processor fetches it from the memory location pointed to by the program
counter.
Memory Address Register (MAR) &
Memory Data Register (MDR)
• These registers are used to handle the data transfer between the
main memory and the processor.
• The MAR holds the address of the main memory to or from which the
data is to be transferred.
• The MDR sometimes also called MBR (Memory Buffer Register)
contains the data to be written into or read from the addressed word
of the main memory.
Computer Registers
This is a part of the central processing unit, reside inside the CPU.
The information from main memory is brought to CPU and keeps the
information in register
Due to space and cost constraints, there is the limited number
of registers in a CPU.
Types of registers
1) User-visible register
2) Control and status register
Control and status register
• The control register is used by the control units to control the
operations of the processor and
• The status register are used to check the status of the register.
Ex Program Counter (PC), Instruction register (IR),MAR,MBR
User-visible register
1. General purpose register
• It can be assigned to a variety of functions by the programmer.
• The general purpose register can contain the operand for any opcode.
Restrictions
• there may be dedicated register for floating point and stack
operations.
• In some cases, general purpose register can be used for addressing
functions (e.g register indirect, displacement).
Arithmetic and Logic Unit (ALU)
• Arithmetic and logic unit is the subunit of the central processing unit
It performs
1. arithmetic operations like addition, subtraction
2. logic operations like OR, AND, invert, exclusive – OR.
• The data stored in the memory unit is transferred to ALU.
• The ALU performs the operations and the result is stored in an
internal memory unit of the CPU.
• The result of a final operation is transferred from the memory unit to
an output unit.
Bus Structure
• A Group of wires which are provided to carry the signals for
communication between the components/modules is called BUS.
• A Bus that connects major computer components/modules is called
system bus.
• The system bus is divided into three functional groups:
1.Data Bus
2.Address Bus
3.Control Bus
DATA Bus
• Bidirectional
• Data can read or write by CPU from/to Memory or a Port.
• Consists of 8,16,32..parallel lines to transfer data.
Address Bus
• Unidirectional
• CPU sends the address of the Memory or I/O port that is to be
written or Read from.
• Consists of 16,32..parallel lines to transfer address.
Control Bus :
• Regulate the activity on the Bus.
• CPU sends the signals on the Control Bus to enable the locations
(memory, I/O ..)
Ex Memory Read
memory Write
I/O read, I/O write
Hold, Interupt
• Parallel and Serial Data Buses
• Parallel data buses carry data on many wires simultaneously.
• The most common parallel buses are the ATA, Advanced Technology
Attachment, PC card , SCSI -Small Computer System Interface
• A serial data bus has one wire or path, and carries all the bits, one
after the other.
• USB - the Universal Serial Bus; FireWire; Serial ATA; and Serial
Attached SCSI.
USB
Internal and External Data Buses
• The internal data bus, also known as a local bus, connects all
components that are on the motherboard, like the CPU and memory.
Local devices would include such items as the video card, sound card,
and modem.
A cache hit will occurs when a file is requested from a cache and cache is
Cache Miss :
A Cahe Miss is occurs when the cache does not contain the requested
content.
H I T RATIO
Cache Hit Ratio is measurement of how many content requests is able
to fill successfully, compared to how many request it receives.
Number of cache hits
Hit Ratio =
Number of references
Number of references = (number of hits + number of misses)
The CPU found data in Cache 95 times out of 100 references. Find out
the hit ratio and percentage of misses.
word length.
•
•
•
last word
b31 b30 b1 b0
•
•
•
Sign bit: b31= 0 for positive numbers
b31= 1 for negative numbers
SYSTEM
SOFTWARE
HW
SOFTWARE EVALUATION
Machine codes Ex 1001011,0011010,1110011,
Assembly language Ex add,sub,mov,jc,
High Level Language. Ex statements Ex x = a+ b;
What required?
A Translator.
which converts from one language to another language.
TRANSLATOR
C- COMPILER
NOTE :1. Not necessary to convert HLL to AL then to machine code. Directly code can be generated from HLL
to Machine code.
2. Translators are independent of users.
OPERATING SYSTEM
• Core of the system is same, but may use different software.
• System software ???
• Application Software ???
• SW
System Application
COMILER INTERPTER
Why software required?
• To run the Hardware parts of the computer
• To run the application software
• Acts as interface between Hardware and user applications.
• System software converts the human instructions into machine
understandable instructions.
• Types of software
1. Operating Systems
2. Language Processor
3. Device Drivers.
Operating system
• An operating system (OS) is system software that manages
computer Hardware, software resources and provides
common service for computer programs.
• An operating system (OS) is an interface between Hardware
and User.
• The operating system is a vital component of the system
software in a computer system.
TYPES OF OPERATING SYSTEMS
7. Mac OS (apple)
8.UNIX
9. LINUX
Compiler.
Ex c,c++, c#,java
• In a compiler the source code is translated to object code successfully
if it is free of errors.m
• The compiler specifies the errors at the end of compilation with line
machine code.
• Input and output devices allow the computer system to interact with
the outside world by moving data into and out of the system.
• An input device is used to bring data into the system.
• Some input devices are:
Keyboard
Mouse
Microphone
Bar code reader
Graphics tablet
• An output device is used to send data out of the system.
• Some output devices are:
Monitor
Printer
Speaker
• Input – Output Devices
Data can be transferred in both directions ie, to the computer as well
as from computer.
Ex speaker & Ear phones, Pen drive.
• Input/output devices are usually called I/O devices.
• They are directly connected to an electronic module inside the
systems unit called a device controller. (audio card, )
Ports
• A connection point that acts as interface between the computer and
external devices like mouse, printer, modem, etc. is called port. Ports
are of two types −
• Internal port − It connects the motherboard to internal devices like
hard disk drive, CD drive, internal modem, etc.
• External port − It connects the motherboard to external devices like
modem, mouse, printer, flash drives, etc.
• When an application is closed (stops running), do you think that it is
copied from main memory back to the hard disk?
a) No. The hard disk already has a copy, and that copy will be used the
next time the application is run.
Say that a computer has just added 13 to 27. Where did this activity
take place? In the processor
q)You have just purchased a copy of the computer game Tomb
Raider© (you were waiting for the price to fall below $20). You follow
the directions on the package and install the game on your
computer. Tomb Raider© consists of
A program (that controls the action of the game.)
Data (the images and other information.)
After you have installed the game, where does each of these things
exist in the computer system?
a) A program (that controls the action of the game.)
On the hard disk
Data (the images and other information.)
• On the hard disk
(When you play the game, its various parts are copied into and out of
main memory.)
Multiprocessing and Multiprogramming
• Multiprocessing is a system that has two or more than one
processors.
• CPUs are added for increasing computing speed of the system.
• Because of Multiprocessing, there are many processes that are
executed simultaneously.
• Multiprocessing are further classified into two categories:
1. Symmetric Multiprocessing,
2. Asymmetric Multiprocessing.
Multi Programming
Multi-programming is more than
one process running at a time
it increases CPU utilization by
organizing jobs (code and data)
so that the CPU always has one
to execute.
The motive is to keep multiple
jobs in main memory.
If one job gets occupied with
Input/output, CPU can be
assigned to other job.
Multiprocessor and Multicomputer
Multiprocessor:
• A Multiprocessor is a computer system with two or more central
processing units (CPUs) share full access to a common RAM.
• The main objective of using a multiprocessor is to boost the system’s
execution speed, with other objectives being fault tolerance and
application matching.
• two types of multiprocessors
1. shared memory multiprocessor and
2. distributed memory multiprocessor.
shared memory multiprocessor
Applications of Multiprocessor –
• As a uniprocessor, such as single instruction, single data stream (SISD).
• As a multiprocessor, such as single instruction, multiple data stream
(SIMD), which is usually used for vector processing.
• Multiple series of instructions in a single perspective, such as multiple
instruction, single data stream (MISD), which is used for describing hyper-
threading or pipelined processors.
• Inside a single system for executing multiple, individual series of
instructions in multiple perspectives, such as multiple instruction, multiple
data stream (MIMD).
Benefits of using a Multiprocessor –
• Enhanced performance.
• Multiple applications.
• Multi-tasking inside an application.
• High throughput and responsiveness.
• Hardware sharing among CPUs.
Multicomputer
• A multicomputer system is a computer system with multiple
processors that are connected together to solve a problem.
• Each processor has its own memory and it is accessible by that
particular processor and those processors can communicate with
each other via an interconnection network.
• As the multicomputer is capable of messages passing between the
processors, it is possible to divide the task between the processors to
complete the task.
• Hence, a multicomputer can be used for distributed computing.
• It is cost effective and easier to build a multicomputer than a
multiprocessor.
Multiprocessors and Multicomputers
• Multiprocessor computer
Execute a number of different application tasks in parallel
Execute subtasks of a single large task in parallel
All processors have access to all of the memory – shared-memory multiprocessor
Cost – processors, memory units, complex interconnection networks
• Multicomputers
Each computer only have access to its own memory
Exchange message via a communication network – message-passing multicomputers
multiprocessor multicomputer
CPU will be placing the address of instruction on the bus and memory will respond by putting the
contents of that particular address, which is an instruction. CPU will get that.(Fetch cycle).
After fetching the instruction CPU will decode it.
CPU will ask memory by putting location on the bus again, and memory respond by keeping data
on the bus and executed by processor.
Program : resides in memory unit
I op code address
Instruction Cycle 15 14 - 12 11 - 0
14 13 12
0 0 0 - 0 (D0)
0 0 1 - 1 (D1)
---------------
1 1 1 -- 7 (D7)
4 T2 : in IR (12-14) Decode
AR IR(0-11), I IR(15)
Step 5: T3 : Register reference or Decision
Memory or I/O reference (Direct or Indirect)
( This depends on the vale of D7 & I)
If D7 = 0, direct reference, execution will take place at T3 cycle.
= 1, Indirect, execution will take place at T4 cycle.
Step 6: T4 : Execution
Instruction Cycle.
Instruction Register
15 14 11 0
I- indicates the Memory reference. If I =0 then Direct reference I = 1 then Indirect reference.
Bits 12 – 14 will indicate the opcode and
0 – 11 will give the address of the memory location.
op code of IR 14 13 12
3.Input-Output instruction
Memory - reference instruction
2. 1 011 010101101010
3. 1 111 000011110101
4. 0 111 001100110011
SUMMARY
• IF bits 12-14 are 111, check the 15th bit position.
If 15th bit is 0 then it is a register reference.( 0 111 xxxxxxxxxxxx)
if 15th bit is 1 then it is a I/O reference. ( 1 111 xxxxxxxxxxxx)
AC AC +M[ x ]
General Register
• The corresponding instruction contains multiple address.
• The multiple address means it may contain the general purpose
registers or memory address or combination.
Ex 1. ADD R1,R2,R3 R1 R1 + R2 + R3
2. MOV R1,R2 R1 R2
STACK
• Operations will be performed on stack.
Ex push , pop
ADD – The top two positions of the stack will be added and result
will be stored on top of stack.
Instruction Formats
• Three-Address Instructions
• ADD R1, R2, R3 R1 ← R2 + R3
• Two-Address Instructions
• ADD R1, R2 R1 ← R1 + R2
• One-Address Instructions
• ADD M AC ← AC + M[AR]
• Zero-Address Instructions
• ADD TOS ← TOS + (TOS – 1)
• RISC Instructions
• Lots of registers. Memory is restricted to Load & Store
AC is accumulator
M[] is any memory location
M[T] is temporary location
Zero Address Instructions
Expression: X = (A+B)*(C+D)
Post fixed :X = AB+CD+*
TOP means top of stack
M[X] is any memory location
Evaluate the following instruction using Three, Two and One
addressing Formats.
Ex (A - B * C + D) * ( X / Y + A).
Three address instruction
Ex (A - B * C + D) * ( X / Y + A).
1. SUB R1, A, B R1 = A - B
2. ADD R2, C, D R2 = C * D
3. MUL R3, R1, R2 R3 = R2 * R1
4. DIV R1, X, Y R1 = X / Y
5. ADD R2, R1, A R2 = R1 + A
6. MUL T, R3, R2 M[T] = R3 * R2
Two Address
Ex (A - B * C + D) * ( X / Y + A).
1. MOV R1, A R1 = M[A]
2. SUB R1 , B R1 = R1 – M[B]
3. MOV R2 , C R2 = C
4. ADD R2 , D R2 = R2 +M[D]
5. MUL R1,R2 R1 = R1* R2
6. MOV R2, X R2 = M[X]
7. DIV R2, Y R2 = M[Y]
8. MOV R3 , A R3 = A
9. ADD R3, R2 R3 = R3 +R2
10. MUL R1, R3 R1 = R1* R3
11. MOV X, R1 M[X] = R1
One Address
Ex (A - B * C + D) * ( X / Y + A).
1. LOAD A AC = M[A]
2. SUB B AC = AC – M[A]
3. STORE P M[P] = AC
4. LOAD C AC = M[C ]
5. ADD D AC = AC + M[D]
6. MUL P AC = AC * M[P]
7. STORE P M[P] = AC
8. LOAD X AC = M[ X]
9. DIV Y AC = AC / M[Y]
10. ADD A AC = AC + M[A]
11. MUL P AC = AC * M[P]
12. STORE X M[X] = AC
RISC
• RISC is an abbreviation of Reduced Instruction Set
Computer.
• RISC processor has ‘instruction sets’ that are simple
and have simple ‘addressing modes’.
• A RISC style instruction engages “one word” in
memory.
• Execution of the RISC instructions are faster and
take one clock cycle per instruction.
RISC Instruction Sets
https://www.geeksforgeeks.org/different-instruction-
cycles/?ref=rp
Instruction Format & Types
Operator Data
Opcode Operand
Types
1. Zero or No operand
2. One operand
3. Two operand
Ex 1 The format of a double operand instruction of a CPU is
OP CODE SOURCE DATA DESTINATION DATA
4 –BITS 4-BITS 4-BITS
ARITHMETIC
1 10 20 2
LOGIC
2 15 60 9
DATA MOVING
3 24 50 12
BRANCH
4 6 50 3
5 CONTOL 5 60 3
Rest of them are double-operand type. Find the minimum size of CPU’s instruction word?
OP CODE SOURCE REGISTER DESTINATION REGISTER
3 BITS 3 BITS
OP CODE MODE REGISTER MODE REGISTER
500
1010
x= 100 y = 500; x + y = 600;
Addressing Modes
1. Register Addressing Mode
Register it self contains the data. Register is a part of CPU.
No bus activity. Saves time.
Register
Data 2500
Addressing Modes
2. Direct Addressing mode(Register direct addressing)
Register contains the address where data is stored.
Bus activity is needed. One machine cycle is required.
3. Indirect Addressing Mode:
Address will not available directly.
The register contains the address of location where the data
available. [ address [address[data]]]
more bus activity. More no of machine cycles.
to find out effective address more and more calculations required.
Addressing Modes
4. Index Mode: 1000
Index is some number X. Register
1000
X is added to some register content.
Effective address = Base register + X
Ex Base register value 1000, index 10 1010 DATA
This is the mode of addressing where the instruction contains the address of the location where
the target address is stored. So in this way it is Indirectly storing the address of the target location in
another memory location
Register Indirect.
Relative Address Mode :
In this mode, the Effective Address (EA) of the operand is calculated by adding the
content of the CPU register and the address part of the instruction word. The effective
address thus calculated is relative to the address of the next instruction
In this type we directly mention the address of the memory location in the instruction either enclosed by
1.Example :
LOAD R1, (1005) or LOAD R1, @1005
2.Register Indirect –
Example :
MOV R@, 1005 LOAD R1, (R2)
Example
50 Load A/c
100 105
51 Address
100 101 35 R1 = 98 and XR = 3.
52 Next inst 102 45 PC = 52
53 250 103 65
54 400 104 75
.
98 700
152 70
99 800
stack
stack
`
• Find out the effective address and content of the EA for the following addressing modes.
addressing mode effective address content of location.
1. Direct 100 105
2. Immediate ----- 100
3. Indirect 105 500
4. Relative 152 70
5. Indexed 103 65
6. Register direct ----- 98
7. Register indirect 98 700
8. Auto increment 100/101 105/35
9. Auto decrement. 100/99 105/800
200 Load AC mode R1 = 400, XR = 100.
201 500
202 Next Instruction SNO ADDRESSING MODE EFFECTIVE CONTENT
ADDRESS OF ACC.1
1 Immediate addressing 201 500
399 450 2 Direct addressing 500 600
400 700 3 Indirect addressing 600 900
4 Relative addressing 702 325
499 50 5 Register Direct addressing -- 400
500 600 6. Register Indirect 400 700
501 100 6 Indexed addressing 600 900
600 900 7 Auto increment 501 100*
8 Auto Decrement 499 50
702 325
800 300
900 250
Assembly Language
What is Assembly Language?
Return RET
Compare
CMP
(Subtract) 10110001
Test (AND) TST
00001000
Mask
00000000
Conditional Branch Instructions
Mnemonic Branch Condition Tested Condition
BZ Branch if zero Z=1
BNZ Branch if not zero Z=0
BC Branch if carry C=1
BNC Branch if no carry C=0
BP Branch if plus S=0
BM Branch if minus S=1
BV Branch if overflow V=1
BNV Branch if no overflow V=0
Interrupt
• Normal execution of programs may be preempted if some device requires
urgent servicing.
• The normal execution of the current program must be interrupted – the
device raises an interrupt signal.
• Interrupt-service routine
• Current system information backup and restore (PC, general-purpose
registers, control information, specific information)
Performance
Performance
• The most important measure of a computer is how quickly it can
execute programs.
• Three factors affect performance:
Hardware design
Instruction set
Compiler
Performance
• Processor time to execute a program depends on the hardware involved
in the execution of individual machine instructions.
Main Cache
memory memory Processor
Bus
N S
T
R
How to improve T?
How to improve T?
• By reducing the T value.(by reducing the N,S and by increasing the R)
• compiling into fewer machine instructions.(N)
• Instructions have smaller basic steps to perform (S).
• Using higher frequency clock(R).
• A 2.5 MHz clock processor may not perform better than 2.0MHz
clock.
Clock Rate
• Increase clock rate
Improve the integrated-circuit (IC) technology to make the circuits faster
Reduce the amount of processing done in one basic step (however, this may
increase the number of basic steps needed)
• Increases in R that are entirely caused by improvements in IC
technology affect all aspects of the processor’s operation equally
except the time to access the main memory.
Performance Measurement
• T is difficult to compute.
• Measure computer performance using benchmark programs.
• System Performance Evaluation Corporation (SPEC) selects and publishes
representative application programs for different application domains, together
with test results for many commercially available computers.
• Compile and run (no simulation)
• Reference computer
i 1
Pipeline and Superscalar Operation
• Pipelining divides an instruction into steps, and since each step is executed in a
different part of the processor, multiple instructions can be in different "phases"
each clock.
• Superscalar design involves the processor being able to issue multiple
instructions in a single clock, with redundant facilities to execute an instruction.
We're talking about within a single core, mind you -- multicore processing is
different.
• An instruction goes through 5 stages to be "performed". These are IF
(instruction fetch), ID (instruction decode), EX (execute), MEM
(update memory), WB (write back to cache).
• In a very simple processor design, every clock a different stage would
be completed so we'd have:
• IF
• ID
• EX
• MEM
• WB
• Which would do one instruction in five clocks. If we then add a
redundant execution unit and introduce superscalar design, we'd
have this, for two instructions A and B:
• IF(A) IF(B)
• ID(A) ID(B)
• EX(A) EX(B)
• MEM(A) MEM(B)
• WB(A) WB(B)
• Pipelining allows the parts to be executed simultaneously, so we would end
up with something like (for ten instructions A through J):
IF(A) IF(B)
ID(A) ID(B) IF(C) IF(D)
EX(A) EX(B) ID(C) ID(D) IF(E) IF(F)
MEM(A) MEM(B) EX(C) EX(D) ID(E) ID(F) IF(G) IF(H)
WB(A) WB(B) MEM(C) MEM(D) EX(E) EX(F) ID(G) ID(H) IF(I) IF(J)
WB(C) WB(D) MEM(E) MEM(F) EX(G) EX(H) ID(I) ID(J)
WB(E) WB(F) MEM(G) MEM(H) EX(I) EX(J)
WB(G) WB(H) MEM(I) MEM(J)
WB(I) WB(J)
:
An Analogy: Washing Clothes
• Imagine a dry cleaning store with the following facilities: a rack for hanging
dirty or clean clothes, a washer and a dryer (each of which can wash one
garment at a time), a folding table, and an ironing board.
• The attendant who does all of the actual washing and drying is rather dim-
witted so the store owner, who takes the dry cleaning orders, takes special
care to write out each instruction very carefully and explicitly.
• On a typical day these instructions may be something along the lines of:
1. take the shirt from the rack
2. wash the shirt
3. dry the shirt
4. iron the shirt
5. fold the shirt
6. put the shirt back on the rack
7. take the pants from the rack
8. wash the pants
9. dry the pants
10. fold the pants
11. put the pants back on the rack
12. take the coat from the rack
13. wash the coat
14. dry the coat
15. iron the coat
16. put the coat back on the rack
The attendant follows these instructions to the tee, being very careful not to ever do anything out of order.
As you can imagine, it takes a long time to get the day's laundry done because it takes a long time to fully
wash, dry, and fold each piece of laundry, and it must all be done one at a time.
However, one day the attendant quits and a new, smarter, attendant is hired who notices that most of the
equipment is laying idle at any given time during the day. While the pants were drying neither the ironing
board nor the washer were in use. So he decided to make better use of his time. Thus, instead of the
above series of steps, he would do this:
This is pipelining. Sequencing unrelated activities such that they use different components at the same
time. By keeping as much of the different components active at once you maximize efficiency and speed
up execution time, in this case reducing 16 "cycles" to 9, a speedup of over 40%.
Now, the little dry cleaning shop started to make more money because they could work so much faster, so the
owner bought an extra washer, dryer, ironing board, folding station, and even hired another attendant. Now
things are even faster, instead of the above, you have:
1.take the shirt from the rack, take the pants from the rack
2.wash the shirt, wash the pants, (take the coat from the rack)
5.fold the shirt, put the pants back on the rack, (iron the coat)
6.put the shirt back on the rack, (put the coat back on the rack)
This is superscalar design. Multiple sub-components capable of doing the same task simultaneously, but with
the processor deciding how to do it. In this case it resulted in a nearly 50% speed boost (in 18 "cycles" the new
architecture could run through 3 iterations of this "program" while the previous architecture could only run
through 2).
CISC and RISC
• Tradeoff between N and S
• A key consideration is the use of pipelining
S is close to 1 even though the number of basic steps per instruction may be
considerably larger
It is much easier to implement efficient pipelining in processor with simple
instruction sets
• Reduced Instruction Set Computers (RISC)
• Complex Instruction Set Computers (CISC)
CISC RISC
1. Complex instruction set computer. 1. Reduced Instruction set computer.
2. Large set of Instructions with variable 2. Small set of instructions with fixed
format.(16 – 64 bits) format.(32bit)
3. Data transfer is from memory to memory. 3. Data transfer from register to register.
4. Memory base instructions are used.
4. Register based instructions.
5. Program length is short.
5. Program length is large.
6. Executing time for an instruction is more.(in
one instruction multiple instructions) 6. Executing time for an instruction is
less.(instructions are simple and small.)
7. Instructions cannot be completed in one
machine cycle. 7. Most of the instructions are completed in one
machine cycle.(allows the processor to handle
many instructions at the same time.)
CISC RISC
8 Has a microprogramming control unit 8 . Hardwired control unit
9 Used for low end applications such as 9. High end applications like video processing,
image Processing, mobiles, Tabs
security systems, laptops, desktops.
10.FEWER ADDRESSING MODES
10 Many addressing modes.
11.Only Load and store instructions can access
11 Any instruction can access memory the memory.
12 Minimum amount of RAM. 12.More RAM required.
13 Ex. SYSTEM/360,PDP-11,VX,68000 13.Ex MIPS,PA-RISC,ALPHA,POWER PC etc.
etc.
Imagine that you have just turned on your computer
•Input devices? Yes--various sensors throughout the car
and have not yet started any application. Are any
deliver data to the computer.
programs running?
Yes--the operating system is running. Mostly it is managing •Output devices? Yes--various actuators have their
the user interface, waiting for some input to tell it what to actions controlled by data.
do. •Main storage? Yes--probably not very much.
2. What component of a computer system holds the •Secondary storage? No.
operating system when the computer is not running?
The hard disk. The hard disk is used for long-term storage of
all software, including the operating system.
3. Which of the following can be saved on a floppy disk?
A game program.
Accounting data (numbers.)
Audio data.
Graphics data.
Digital photographs.
Video data.
Everything on the list can be stored on a floppy disk
Most modern automobiles are controlled by a computer. Do
you think that the computer in your car has:
Input devices?
Output devices?
Main storage?