CISC.pptx

UmaimaAsif3 74 views 21 slides Dec 07, 2022
Slide 1
Slide 1 of 21
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21

About This Presentation

What is CISC?
It is an architecture that you'll earn about in our presentation!


Slide Content

Complex Instruction Set Computer (CISC) Presented by: Maryam Abass and Umaima Asif

Overview Advantages Disadvantages FAQs Recent Developments Future Scope What is CISC and Why to learn? Architecture Typical x86 design Characteristics & Addressing Modes Example Programs The Performance Equation 01 02 03 06 09 05 04 11 08 07 10

What is CISC? Pronounced " sisk " and standing for Complex Instruction Set Computer, is a Microprocessor Architecture that aims at achieving complex operations with single instructions and favors the richness of the instruction set (typically as many as 200 unique instructions) over the speed with which individual instructions are executed.

Why should I know about CISC? Today’s computers still use processors which are based on CISC designs It has been a prominent architecture since 1978 Most Emerging Processor designs combine features of CISC and RISC to create better designs.

Architecture

Characteristics CISC are Mostly Von Neumann Architecture (There are few exceptions) Same bus for program memory, data memory, I/O, registers etc. Generally Micro-coded ,Variable length instructions Segmentation is possible with Segment Register s like DS, ES and an offset which Can be common to all segments. Many powerful instructions are supported, making the assembly language Programmer’s job much easier. Physical Memory Extension Possible

Addressing modes Register Addressing Mode Memory Addressing Modes Displacement Only Addressing Mode Register Indirect Addressing Modes Indexed Addressing Modes Based Indexed Addressing Modes

Example Program

Operands: M[2:3] = operand 1 (15) M[5:2] = operand 2(20) Task : Multiplication Result : M[2:3] <= result

CISC Approach Operations: Loads the two operands into separate registers Multiplies the operands in the execution unit Then stores the product in some temporary register Stores value back to memory location 2:3

CISC Approach MULT is known as a "complex instruction." Operates directly on the computer's memory banks Does not require the programmer to explicitly call any loading or storing functions. closely resembles a command in a higher level language. e.g. a ‘C’ statement "a = a * b."

CISC Philosophy Primary goal is to complete a task in as few lines of assembly as possible Emphasis on hardware Includes multi-clock complex instructions Memory-to-memory: "LOAD" and "STORE" incorporated in instructions Small code sizes High cycles per second Variable length Instructions

The Performance Equation RISC CISC Minimizes the number of instructions per program (2) Sacrificing the number of cycles per instruction. (1) Reduces the cycles per instruction (1) Sacrificing number of instructions per program (2) 1 2

What an ISA would look like.

Advantages Microprogramming is as easy as assembly language to implement and much less expensive than hardwiring a control unit. The ease of micro coding new instructions allowed designers to make CISC machines upwardly compatible: a new computer could run the same programs as earlier computers because the new computer would contain a superset of the instructions of the earlier computers. As each instruction became more capable, fewer instructions could be used to implement a given task. This made more efficient use of the relatively slow main memory, b ecause microprogram instruction sets can be written to match the constructs of high-level languages, the compiler does not have to be as complicated

Disadvantages As many instructions as possible could be stored in memory with the least possible wasted space, individual instructions could be of almost any length this means that different instructions will take different amounts of clock time to execute, slowing down the overall performance of the machine. Many specialized instructions aren't used frequently enough to justify their existence --- approximately 20% of the available instructions are used in a typical program. CISC instructions typically set the condition codes as a side effect of the instruction. Setting the condition codes take time, and programmers have to remember to examine the condition code bits before a subsequent instruction changes them

Recent Development The terms RISC and CISC have become less meaningful with the continued evolution of both CISC and RISC designs and implementations. Modern x86 processors also decode and split more complex instructions into a series of smaller internal "micro-operations" which can thereby be executed in a pipelined (parallel) fashion, thus achieving high performance on a much larger subset of instructions. Attempts have been made to combine features of both RISC and CISC to develop a new approach Intel has teamed up with Hewlett-Packard to design a new type of ISA. They are calling it IA-64 (Intel Architecture 64)

FAQs Which one is faster? CISC or RISC? So why would someone want to develop another ISA? x86 (and CISC) make poor use of the faster hardware we have now. Another problem with x86 is that people have been trying to make it faster for a long time, at least 20 years, and after a while you have found most of the ways to speed the computer up significantly Well, it is commonly accepted that RISC ISA's should make computers faster. The main reason why is because RISC computers figure out more words in a shorter amount of time due to pipelining.

FAQs So why isn't my computer a RISC? CISC ISA's were implemented in the first personal computers With more people buying computers, CISC isa's became more prominent Software (especially OS) was developed and "translated" so that personal computers speaking x86 would be able to interact with its users Because there was so much software written for computers "speaking" x86, people continued to buy those computers. If we tried to switch to another ISA, we would not have all of the software choices we have now.

Questions?

Thank you!