COA Lecture 9 Risc Cisc Piplining Concepts PDF
COA Lecture 9 Risc Cisc Piplining Concepts PDF
Instructions-0,1,2,3 address
Instruction Set Design
Very complex because it affects so many aspects of the computer system
RISC v CISC
RISC and CISC
Overview
History of CISC and RISC
CISC and RISC
Philosophy
Attributes and disadvantages
Summation
History of RISC/CISC
1950s IBM instituted a research program
1964 Release of System/360
Mid-1970s improved measurement tools demonstrated on CISC
algorithms
Execution sequencing
Semantic gap
Determines the control and
pipeline organization The difference between the
operations provided in HLLs
and those provided in computer
architecture
Operands used
The types of operands and the
Operations performed
frequency of their use determine Determine the functions to be
the memory organization for performed by the processor and its
storing them and the addressing interaction with memory
modes for accessing them
What is CISC?
CISC is an acronym for Complex Instruction Set Computer and are chips
that are easy to program and which make efficient use of memory. Since
the earliest machines were programmed in assembly language and memory
was slow and expensive, the CISC philosophy made sense, and was
commonly implemented in such large computers as the PDP-11 and the
DECsystem 10 and 20 machines.
Most common microprocessor designs such as the Intel 80x86 and
Motorola 68K series followed the CISC philosophy.
But recent changes in software and hardware technology have forced a re-
examination of CISC and many modern CISC processors are hybrids,
implementing many RISC principles.
CISC was developed to make compiler development simpler. It shifts most
of the burden of generating machine instructions to the processor. For
example, instead of having to make a compiler write long machine
instructions to calculate a square-root, a CISC processor would have a
built-in ability to do this.
CISC Attributes
The design constraints that led to the development of CISC (small amounts
of slow memory and fact that most early machines were programmed in
assembly language) give CISC instructions sets some common
characteristics:
A 2-operand format, where instructions have a source and a destination.
Register to register, register to memory, and memory to register commands.
Multiple addressing modes for memory, including specialized modes for
indexing through arrays
Variable length instructions where the length often varies according to the
addressing mode
Instructions which require multiple clock cycles to execute.
Simple addressing Simplifies the instruction set and the control unit
modes
Call/Return
(a) A B+C
8 16 16 16 8 4 4 4
Add B C A Add RA RB RC
Add A C B Add RB RA RC
Sub B D D Sub RD RD RB
Memory to memory Register to register
I = 168, D= 288, M = 456 I = 60, D = 0, M = 60
(b) A B + C; B A + C; D D B
Discard
(b) Expanded view
1 2 3 4 5 6 7 8 9 10 11 12 13 14
Instruction 1 FI DI CO FO EI WO
Instruction 2 FI DI CO FO EI WO
Instruction 3 FI DI CO FO EI WO
Instruction 4 FI DI CO FO EI WO
Instruction 5 FI DI CO FO EI WO
Instruction 6 FI DI CO FO EI WO
Instruction 7 FI DI CO FO EI WO
Instruction 8 FI DI CO FO EI WO
Instruction 9 FI DI CO FO EI WO
Pipeline delays
CISC versus RISC
CISC RISC
State of the art processor technology has changed significantly since RISC
chips were first introduced in the early '80s.
In fact, the two architectures almost seem to have adopted the strategies of
the other. Because processor speeds have increased, CISC chips are now
able to execute more than one instruction within a single clock.
This also allows CISC chips to make use of pipelining. With other
technological improvements, it is now possible to fit many more transistors
on a single chip.
This gives RISC processors enough space to incorporate more
complicated, CISC-like commands.
All of these factors have led some groups to argue that we are
now in a "post-RISC" era, in which the two styles have
become so similar that distinguishing between them is no
longer relevant.
Number Number of
of Max Load/store Max bits for Number of
instruc- instruc- Number of combined number of Unaligned Max integer bits for FP
tion tion size addressing Indirect with memory addressing Number of register register
Processor sizes in bytes modes addressing arithmetic operands allowed MMU uses specifier specifier
AMD29000 1 4 1 no no 1 no 1 8 3
MIPS R2000 1 4 1 no no 1 no 1 5 4
SPARC 1 4 2 no no 1 no 1 5 4
MC88000 1 4 3 no no 1 no 1 5 4
HP PA 1 4 10 no no 1 no 1 5 4
IBM RT/PC 2 4 1 no no 1 no 1 4 3
IBM RS/6000 1 4 4 no no 1 yes 1 5 5
Intel i860 1 4 4 no no 1 no 1 5 4
IBM 3090 4 8 2 no yes 2 yes 4 4 2
Intel 80486 12 12 15 no yes 2 yes 4 3 3
NSC 32016 21 21 23 yes yes 2 yes 4 3 3
MC68040 11 22 44 yes yes 2 yes 8 4 3
VAX 56 56 22 yes yes 6 yes 24 4 0
Clipper 4 8 9 no no 1 0 2 4 3
Intel 80960 2 8 9 no no 1 yes 5 3
a RISC that does not conform to this characteristic. (Table can be found on page 554 in the
b CISC that does not conform to this characteristic. textbook.)
Thank you for your listening