Computer Architecture II CSC/CPE 315 Where software and hardware finally meet Prof. Franklin Chapter 1 – Fabrication.

Slides:



Advertisements
Similar presentations
Goal: Write Programs in Assembly
Advertisements

DAP teaching computer architecture at Berkeley since 1977
Instructor: Tor Aamodt
Systems Architecture Lecture 5: MIPS Instruction Set
Chapter 2.
TU/e Processor Design 5Z0321 Processor Design 5Z032 Computer Systems Overview Chapter 1 Henk Corporaal Eindhoven University of Technology 2011.
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.
Lecture 2: Modern Trends 1. 2 Microprocessor Performance Only 7% improvement in memory performance every year! 50% improvement in microprocessor performance.
Chapter1 Fundamental of Computer Design Dr. Bernard Chen Ph.D. University of Central Arkansas.
CpE442 Intro. To Computer Architecture CpE 442 Introduction To Computer Architecture Lecture 1 Instructor: H. H. Ammar These slides are based on the lecture.
Fall 2001CS 4471 CS 447: Fall 2001 Chapter 1: Computer Abstraction and Technology (Introduction to the course)
Chapter 1. Introduction This course is all about how computers work But what do we mean by a computer? –Different types: desktop, servers, embedded devices.
ECE 232 L2 Basics.1 Adapted from Patterson 97 ©UCBCopyright 1998 Morgan Kaufmann Publishers ECE 232 Hardware Organization and Design Lecture 2 Computer.
CPEN Digital System Design Chapter 10 – Instruction SET Architecture (ISA) © Logic and Computer Design Fundamentals, 4 rd Ed., Mano Prentice Hall.
Chapter 2: Impact of Machine Architectures What is the Relationship Between Programs, Programming Languages, and Computers.
11/11/05ELEC CISC (Complex Instruction Set Computer) Veeraraghavan Ramamurthy ELEC 6200 Computer Architecture and Design Fall 2005.
CS / Schlesinger Lec1.1 1/20/99©UCB Spring 1999 Computer Architecture Lecture 1 Introduction and Five Components of a Computer Spring, 1999 Arie Schlesinger.
August 26 TA: Angela Van Osdol Questions?. What is a computer? Tape drives? Big box with lots of lights? Display with huge letters? Little box with no.
1 Lecture 1: CS/ECE 3810 Introduction Today’s topics:  logistics  why computer organization is important  modern trends.
1 CHAPTER 4 LANGUAGE/SOFTWARE Hardware Hardware is the machine itself and its various individual equipment. It includes all mechanical, electronic.
CEN 226: Computer Organization & Assembly Language :CSC 225 (Lec#1) By Dr. Syed Noman.
The Pentium: A CISC Architecture Shalvin Maharaj CS Umesh Maharaj:
Digital Circuit Implementation. Wafers and Chips  Integrated circuit (IC) chips are manufactured on silicon wafers  Transistors are placed on the wafers.
CENG311 Computer Architecture Kayhan Erciyes. CS231 Assembly language and Digital Circuits Instructor:Kayhan Erciyes Office:
Computer Organization CS224
P51UST: Unix and Software Tools Unix and Software Tools (P51UST) Compilers, Interpreters and Debuggers Ruibin Bai (Room AB326) Division of Computer Science.
Chapter1 Fundamental of Computer Design Dr. Bernard Chen Ph.D. University of Central Arkansas Fall 2010.
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?
An Introduction Chapter Chapter 1 Introduction2 Computer Systems  Programmable machines  Hardware + Software (program) HardwareProgram.
Computer Architecture ECE 4801 Berk Sunar Erkay Savas.
CDA 3101 Fall 2012 Introduction to Computer Organization Instruction Set Architecture MIPS Instruction Format 04 Sept 2013.
Cs 152 L1 Intro.1 Patterson Fall 97 ©UCB What is “Computer Architecture” Computer Architecture = Instruction Set Architecture + Machine Organization.
Chapter 1 EE380, Fall 2012 Hank Dietz
Computer Architecture And Organization UNIT-II Multilevel View Point Of A Machine.
C OMPUTER O RGANIZATION AND D ESIGN The Hardware/Software Interface 5 th Edition Chapter 1 Computer Abstractions and Technology Sections 1.5 – 1.11.
10/27: Lecture Topics Survey results Current Architectural Trends Operating Systems Intro –What is an OS? –Issues in operating systems.
CSCE 212 Review for Exam 1 Instructor: Jason D. Bakos.
Languages for HW and SW Development Ondrej Cevan.
CS35101 Computer Architecture Spring 2006 Week 1 Slides adapted from: Mary Jane Irwin ( Course url:
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?
Computer Architecture CPSC 350
1 Computer Architecture Part II-B: CPU Instruction Set.
Levels of Abstraction Computer Organization. Level of Abstraction u Provides users with concepts/tools to solve problem at that level u Implementation.
Abstraction And Technology 1 Comp 411 – Fall /28/06 Computer Abstractions and Technology 1. Layer Cakes 2. Computers are translators 3. Switches.
CWRU EECS 3221 Language of the Machine EECS 322 Computer Architecture Instructor: Francis G. Wolff Case Western Reserve University.
Cs 147 Spring 2010 Meg Genoar. History Started to emerge in mid-1970s 1988 – RISC took over workstation market.
1 chapter 1 Computer Architecture and Design ECE4480/5480 Computer Architecture and Design Department of Electrical and Computer Engineering University.
Computer Architecture CS 154 Where software and hardware finally meet Dr. Franklin.
August 27 Books? ? Accounts?. What does a computer look like? Tape drives? Big box with lots of lights? Display with huge letters? Little box with.
DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO CS 219 Computer Organization.
DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization.
Computer Organization Yasser F. O. Mohammad 1. 2 Lecture 1: Introduction Today’s topics:  Why computer organization is important  Logistics  Modern.
Jeffrey Ellak CS 147. Topics What is memory hierarchy? What are the different types of memory? What is in charge of accessing memory?
Jan. 5, 2000Systems Architecture II1 Machine Organization (CS 570) Lecture 1: Overview of High Performance Processors * Jeremy R. Johnson Wed. Sept. 27,
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
CHAPTER 2 Instruction Set Architecture 3/21/
1 CHAPTER 1 COMPUTER ABSTRACTIONS AND TECHNOLOGY Parts of these notes have been adapter from those of Prof. Professor Mike Schulte, Prof. D. Patterson,
CC311 Computer Architecture Chapter 1 Computer Abstraction & Technology.
Microprocessor Design Process
Computer Operations Part 2.
Instruction Set Architecture
Chapter1 Fundamental of Computer Design
Microprocessor and Assembly Language
Computer Architecture CSCE 350
COSC121: Computer Systems
Systems Architecture Lecture 5: MIPS Instruction Set
August 29 New address for Fang-Yi
COMS 361 Computer Organization
CSC3050 – Computer Architecture
Dr. Clincy Professor of CS
Presentation transcript:

Computer Architecture II CSC/CPE 315 Where software and hardware finally meet Prof. Franklin Chapter 1 – Fabrication

What is Computer Architecture? Program software Write compilers Design assembly language Design processor Optimize layout, circuits, etc Design transistor technology Architecture

Instruction Set Architecture Provides a view of the computer to the compiler/programmer Performance –Compiler optimizations –Hardware optimizations Price –Implementation difficulty (labor) –Implementation size (manufacturing)

Processor Design Where software and hardware meet Memory system, bus structure, chip design High-level ISA implementation (P1 vs P2) Performance –Cache size, # of func units, bells & whistles Price –Implementation difficulty (labor) –Implementation size (manufacturing)

Hardware Implementation Detailed logic design Performance –Low-level optimizations Price –Packaging technology

CPE 315 Topics What do high-level instructions get compiled down to? How do you build a basic machine? How do architects specialize the hardware to run programs quickly? How do programmers optimize programs to run quickly?

How to Speak Computer High Level Language Program Assembly Language Program Machine Language Program Hardware Compiler Assembler Machine Interpretation lw$15,0($2) lw$16,4($2) sw$16,0($2) sw$15,4($2) temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; ALUOP[0:3] <= InstReg[9:11] & MASK ISA

Java High Level Language Program Assembly Language Program Java Byte Code Hardware Compiler Assembler Virtual Machine Interpretation lw$15,0($2) lw$16,4($2) sw$16,0($2) sw$15,4($2) temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; ALUOP[0:3] <= InstReg[9:11] & MASK Java ISA Java Virtual Machine Software translates each instruction for the current hardware ISA Machine Interpretation

Architecture Where software and hardware meet Must understand software –Programs have certain characteristics –Optimize design to take advantage of char. Must understand hardware –Hardware design complexity –Ease of programming –Performance –Power

Performance Not an absolute Depends on application characteristics –Graphics –General-Purpose desktop –Scientific apps –Servers Rapidly changing technology –DRAM speed, chip density, etc. This is the focus of our class

But I’m CS Why do I have to learn about hardware? (I hear you ask) Hardware is optimized to take advantage of _________________________ If your software is different, it can get ___________ performance You must _________ general architecture to _________ for it. In ideal world, ________ would do this for you.

Which is faster? R1 = A[5]; B[6] = R1 R3 = R0 + R2 R5 = R4 – R3 R7 = R0 + R6 C[7] = R7 R1 = A[5]; R3 = R0 + R2 R7 = R0 + R6 B[6] = R1 R5 = R4 – R3 C[7] = R7

Which is faster in C/Java? for(i=0;i<n;i++) for(j=0;j<n;j++) A[j][i] = i*j+7; for(i=0;i<n;i++) for(j=0;j<n;j++) A[i][j] = i*j+7;

What data structure should I use? Array or linked structure? Does it change often? Does it get searched often?

Growing Silicon Silicon is a ______ grown in a vat It comes out the shape of a ______ This is called an ________

Creating Chips Sliced into thin discs called ______ Etch grooves and pour metal, etc Cut the wafer into ______ or ______ A flaw is called a _________ The percentage of good ones is _______

Price vs Cost Price –Selling price –Supply & Demand –Little correlation to fabrication cost Cost –Fabrication cost –Design cost

Cost Cost per die Dies per wafer Yield Cheapest when Yield and Dies per wafer are (high / low)

Current chip trends Shrinking Technology –Reported in ________ –Each generation allows more to fit in same space –_____________ gradually falls in time with same technology

Current chip trends Increasing Area effects: –Yield – (increases / decreases) chance of a defect on die –Dies/wafer – (more / fewer) dies, (more / less) wasted space

Example Current P4’s are 217mm 2 in 0.18-micron technology. A new 0.13-micron fab process should cut the die area in half. If defects occur 1 per cm 2, what are the old and new yields? Yield = 1 / (1 + (defectrate*area/2)) 2 OldYield:

Technology trends Smaller is faster, cheaper –Faster – –Cheaper – Bigger holds more Complexity is more accurate, but large & expensive

New Yield:

Review: Two’s complement 2 -> -2 -> > > 0010 Flip all the bits, add one. It works both directions 5 -> -5 -> 5 ____ ____ _____