RISC vs CISC CS 3339 Lecture 3.2 Apan Qasem Texas State University Spring 2015 Some slides adopted from Milo Martin at UPenn.

Slides:



Advertisements
Similar presentations
1 Lecture 3: Instruction Set Architecture ISA types, register usage, memory addressing, endian and alignment, quantitative evaluation.
Advertisements

RISC / CISC Architecture By: Ramtin Raji Kermani Ramtin Raji Kermani Rayan Arasteh Rayan Arasteh An Introduction to Professor: Mr. Khayami Mr. Khayami.
INTRODUCTION TO THE ARM PROCESSOR – Microprocessor Asst. Prof. Dr. Choopan Rattanapoka and Asst. Prof. Dr. Suphot Chunwiphat.
Tuan Tran. What is CISC? CISC stands for Complex Instruction Set Computer. CISC are chips that are easy to program and which make efficient use of memory.
ΜP rocessor Architectures To : Eng. Ahmad Hassan By: Group 18.
RISC ARCHITECTURE By Guan Hang Su. Over View -> RISC design philosophy -> Features of RISC -> Case Study -> The Success of RISC processors -> CRISC.
The Evolution of RISC A Three Party Rivalry By Jenny Mitchell CS147 Fall 2003 Dr. Lee.
Chapter 6 สถาปัตยกรรมไมโครโพรเซสเซอร์แบบต่างๆ Processor Architectures
CSE378 ISA evolution1 Evolution of ISA’s ISA’s have changed over computer “generations”. A traditional way to look at ISA complexity encompasses: –Number.
COMP3221: Microprocessors and Embedded Systems Lecture 2: Instruction Set Architecture (ISA) Lecturer: Hui Wu Session.
Chapter XI Reduced Instruction Set Computing (RISC) CS 147 Li-Chuan Fang.
RISC By Don Nichols. Contents Introduction History Problems with CISC RISC Philosophy Early RISC Modern RISC.
11/11/05ELEC CISC (Complex Instruction Set Computer) Veeraraghavan Ramamurthy ELEC 6200 Computer Architecture and Design Fall 2005.
CIS 314 : Computer Organization Lecture 1 – Introduction.
CS 61C L08 Introduction to MIPS Assembly Language: Arithmetic (1) Garcia, Spring 2004 © UCB Lecturer PSOE Dan Garcia inst.eecs.berkeley.edu/~cs61c.
Unit -II CPU Organization By- Mr. S. S. Hire. CPU organization.
Structure of Computer Systems Course 12 RISC architecture.
Computer Organization and Assembly language
The Pentium: A CISC Architecture Shalvin Maharaj CS Umesh Maharaj:
RISC CSS 548 Joshua Lo.
RISC and CISC by Eugene Clewlow. Overview History of CISC and RISC CISC and RISC  Philosophy  Attributes and disadvantages Summation.
Cisc Complex Instruction Set Computing By Christopher Wong 1.
RISC and CISC. Dec. 2008/Dec. and RISC versus CISC The world of microprocessors and CPUs can be divided into two parts:
RISC vs. CISC By Chiam D Cook Cs 147 spring 08. CISC Complex Instruction Set Computer –Large number of complex instructions –Low level –Facilitate the.
CSE378 Gen. Intro1 Machine Organization and Assembly Language Programming Machine Organization –Hardware-centric view (in this class) –Not at the transistor.
Part 1.  Intel x86/Pentium family  32-bit CISC processor  SUN SPARC and UltraSPARC  32- and 64-bit RISC processors  Java  C  C++  Java  Why Java?
Chun Chiu. Overview What is RISC? Characteristics of RISC What is CISC? Why using RISC? RISC Vs. CISC RISC Pipelines Advantage of RISC / disadvantage.
Linked Lists in MIPS Let’s see how singly linked lists are implemented in MIPS on MP2, we have a special type of doubly linked list Each node consists.
ACOE255 – Microprocessor Architecture
RISC, CISC & MIPS Bryan Duggan. What is this lecture about? Different architectures RISC CISC MIPS Registers Memory SPIM.
RISC By Ryan Aldana. Agenda Brief Overview of RISC and CISC Features of RISC Instruction Pipeline Register Windowing and renaming Data Conflicts Branch.
1 (Based on text: David A. Patterson & John L. Hennessy, Computer Organization and Design: The Hardware/Software Interface, 3 rd Ed., Morgan Kaufmann,
Computer Organization and Design Computer Abstractions and Technology
RISC Architecture RISC vs CISC Sherwin Chan.
Part 1.  Intel x86/Pentium family  32-bit CISC processor  SUN SPARC and UltraSPARC  32- and 64-bit RISC processors  Java  C  C++  Java  Why Java?
Chapter 2 Instructions: Language of the Computer Part I.
AEEC405 – Microprocessor Architecture. Some Information Instructor Details Main Book.
Ted Pedersen – CS 3011 – Chapter 10 1 A brief history of computer architectures CISC – complex instruction set computing –Intel x86, VAX –Evolved from.
RISC and CISC. 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.
Differences in ISA Instruction length
Oct. 25, 2000Systems Architecture I1 Systems Architecture I (CS ) Lecture 9: Alternative Instruction Sets * Jeremy R. Johnson Wed. Oct. 25, 2000.
MIPS Processor Chapter 12 S. Dandamudi To be used with S. Dandamudi, “Introduction to Assembly Language Programming,” Second Edition, Springer,
 Introduction to SUN SPARC  What is CISC?  History: CISC  Advantages of CISC  Disadvantages of CISC  RISC vs CISC  Features of SUN SPARC  Architecture.
Cs 147 Spring 2010 Meg Genoar. History Started to emerge in mid-1970s 1988 – RISC took over workstation market.
MICROOCESSORS AND MICROCONTROLLER:
EECS 322 March 18, 2000 RISC - Reduced Instruction Set Computer Reduced Instruction Set Computer  By reducing the number of instructions that a processor.
Week 5 RISC &. CISC.
ISA's, Compilers, and Assembly
CISC. What is it?  CISC - Complex Instruction Set Computer  CISC is a design philosophy that:  1) uses microcode instruction sets  2) uses larger.
CECS 347 Microprocessors and Controllers II Chapter 1 - An Overview of Computing Systems Instructor: Eric Hernandez.
CC410: System Programming Dr. Manal Helal – Fall 2014 – Lecture 3.
Multi-Core CPUs Matt Kuehn. Roadmap ► Intel vs AMD ► Early multi-core processors ► Threads vs Physical Cores ► Multithreading and Multi-core processing.
Addressing modes, memory architecture, interrupt and exception handling, and external I/O. An ISA includes a specification of the set of opcodes (machine.
Computer Architecture & Operations I
Computer Architecture & Operations I
Computer Organization
Visit for more Learning Resources
ISA's, Compilers, and Assembly
An example of multiplying two numbers A = A * B;
Chapter 1 Fundamentals of Computer Design
The Pentium: A CISC Architecture
Central Processing Unit
Evolution of ISA’s ISA’s have changed over computer “generations”.
Introduction to Microprocessor Programming
Arrays versus Pointers
Evolution of ISA’s ISA’s have changed over computer “generations”.
Evolution of ISA’s ISA’s have changed over computer “generations”.
Lecture 4: Instruction Set Design/Pipelining
Evolution of ISA’s ISA’s have changed over computer “generations”.
Presentation transcript:

RISC vs CISC CS 3339 Lecture 3.2 Apan Qasem Texas State University Spring 2015 Some slides adopted from Milo Martin at UPenn

Review : CPU Performance Main performance equation CPU Time = Instruction Count * CPI * Clock Cycle Time CPU Time = (instructions/program) * (cycles/instruction) * (seconds/cycle) Architects want to reduce CPU Time This can be done by Decreasing instruction count Decreasing CPI Decreasing Clock cycle time Combination of any of the above

Review : CPU Performance Main performance equation CPU Time = IC * CPI * CC CPU Time = (instructions/program) * (cycles/instruction) * (seconds/cycle) Say, you develop a new generation of processors that is twice as fast as the previous generation. How will this affect the performance equation? MetricIncreaseDecreaseWon’t affect/Don’t know IC CPI CC ✔ ✔ ✔

Review : CPU Performance Main performance equation CPU Time = IC * CPI * CC CPU Time = (instructions/program) * (cycles/instruction) * (seconds/cycle) Say, you add a new instruction to the ISA that allows you to do a load and store operation using the same instruction. Assuming all programs perform some number of loads and stores, how will this affect the performance equation? MetricIncreaseDecreaseWon’t affect/Don’t know IC CPI CC ✔ ✔ ✔

Review : CPU Performance Main performance equation CPU Time = IC * CPI * CC CPU Time = (instructions/program) * (cycles/instruction) * (seconds/cycle) Say, you remove indirect addressing mode from your ISA and so the only addressing mode supported is immediate addressing. How will this change, affect the performance equation? MetricIncreaseDecreaseWon’t affect/Don’t know IC CPI CC ✔ ✔ ✔

RISC vs. CISC Performance Argument Main performance equation CPU Time = Instruction Count * CPI * Clock Cycle Time CISC (Complex Instruction Set Computing) Reduce instruction count with “complex” instructions If each instruction does more then need fewer instructions Tends to increase CPI or clock cycle time RISC (Reduced Instruction Set Computing) Improve CPI with many single-cycle instructions Increases instruction count, but hopefully not as much Help from smart compiler (Perhaps) improve clock cycle time via aggressive implementation allowed by simpler instructions

History RISC: reduced-instruction set computing Coined by Patterson in early 80’s RISC machines existed before the 80s but they were not called RISC First designs Berkeley RISC-I (Patterson) Stanford MIPS (Hennessy) IBM 801 (Cocke) Examples: ARM, PowerPC, SPARC, Alpha, PA-RISC CISC: complex-instruction set computing Term didn‘t exist before RISC Examples: x86, VAX, Motorola Philosophical War

History Pre 1975 Bad compilers (so assembly written by hand) Complex, high-level ISAs (easier to write assembly) 1975-… Moore’s Law makes fast single-chip microprocessor possible… …but only for small, simple ISAs Performance advantage of this integration was compelling Compilers had to get involved in a big way RISC manifesto: create ISAs that… Simplify single-chip implementation Facilitate optimizing compilation

Key Differences Single-cycle execution Load/store architecture Few memory addressing modes Fixed-length instruction format Reliance on compiler optimizations Many registers (compilers are better at using them) Many multi-cycle operations Register-memory and memory- memory Many modes Many formats and lengths Hand assemble to get good performance Few registers RISCCISC

Current Winner (Revenue): CISC x86 (Intel) Intel sells the most non-embedded processors Has taken over the high-end market in recent years x86 was first 16-bit microprocessor by ~2 years IBM put it into its PCs because there was no competing choice Moore’s law has helped Intel in a big way Most engineering problems can be solved with more transistors

Current Winner (Volume): RISC ARM

ARM ISA ARM (Acorn RISC Machine ! Advanced RISC Machine) First ARM chip in mid-1980s (from Acorn Computer Ltd). 1.2 billion units sold in 2004 (>50% of all 32/64-bit CPUs) Low-power and embedded devices 32-bit RISC ISA 16 registers, PC is one of them Many addressing modes, e.g., auto increment Condition codes, each instruction can be conditional Multiple implementations X-scale (design was DEC’s, bought by Intel, sold to Marvell) Others: Freescale (was Motorola), Texas Instruments, STMicroelectronics, Samsung, Sharp, Philips, etc.

Intel’s Compatibility Trick: RISC Inside 1993: Intel wanted out-of-order execution in Pentium Pro Hard to do with a coarse grain ISA like x86 Solution? Translate x86 to RISC μops in hardware Processor maintains x86 ISA externally for compatibility But executes RISC μISA internally for implementability Idea co-opted by other x86 companies AMD and Transmeta Not part of the ISA specification, semi-public information