ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 1: Introduction

Similar documents
ELEC 5200/6200. Computer Architecture & Design. Victor P. Nelson Broun 326

EECE 321: Computer Organization

Computer Architecture. Fall Dongkun Shin, SKKU

CSE Introduction to Computer Architecture

URL: Offered by: Should already know: Will learn: 01 1 EE 4720 Computer Architecture

URL: Offered by: Should already know: Will learn: 01 1 EE 4720 Computer Architecture

ELEC / Computer Architecture and Design Fall 2013 Instruction Set Architecture (Chapter 2)

Math 230 Assembly Programming (AKA Computer Organization) Spring MIPS Intro

ECE 15B Computer Organization Spring 2011

14:332:331. Lecture 1

ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 4: Datapath and Control

Computer Architecture. Introduction. Lynn Choi Korea University

Administrative matters. EEL-4713C Computer Architecture Lecture 1. Overview. What is this class about?

URL: Offered by: Should already know how to design with logic. Will learn...

What is Computer Architecture? CSE Introduction to Computer Architecture. Why do I care? Which is faster? Allan Snavely

Introduction. What is Computer Architecture? Meltdown & Spectre. Meltdown & Spectre. Computer Architecture ELEC /1/17. Dr. Hayden Kwok-Hay So

CISC 360. Computer Architecture. Seth Morecraft Course Web Site:

ECE232: Hardware Organization and Design

CS61C Machine Structures. Lecture 1 Introduction. 8/27/2006 John Wawrzynek (Warzneck)

Computer Architecture

CSE 141 Computer Architecture Spring Lecture 3 Instruction Set Architecute. Course Schedule. Announcements

Introduction. What is Computer Architecture? Design constraints. What is Computer Architecture? Computer Architecture ELEC3441

Handouts. (CSC-3501) Lecture 1 (15 Jan 2008) Seung-Jong Park (Jay) Class information. Schedule (check online frequently)

Lecture 3: Instruction Set Architecture

CS61C Machine Structures. Lecture 1 Introduction. 8/25/2003 Brian Harvey. John Wawrzynek (Warznek) www-inst.eecs.berkeley.

CS430 - Computer Architecture William J. Taffe Fall 2002 using slides from. CS61C - Machine Structures Dave Patterson Fall 2000

CSE Introduction to Computer Architecture. Jeff Brown

CSEE 3827: Fundamentals of Computer Systems

CS64 Computer Organization

1DT157 Digitalteknik och datorarkitekt. Digital technology and computer architecture, 5p

CSE : Introduction to Computer Architecture

Introduction. What is Computer Architecture? Meltdown & Spectre. Meltdown & Spectre. Computer Architecture ELEC3441. Dr. Hayden Kwok-Hay So

Hardware Software Codesign of Embedded Systems

CS 152 Computer Architecture and Engineering Lecture 1 Single Cycle Design

ECE232: Hardware Organization and Design

IT 252 Computer Organization and Architecture. Introduction. Chia-Chi Teng

COMPUTER ARCHTECTURE

EE108B: Digital Systems II EE108B. Digital Systems II. Major Topics. What EE108b is About

CS3350B Computer Architecture. Introduction

Multiple Issue ILP Processors. Summary of discussions

CS222: Dr. A. Sahu. Indian Institute of Technology Guwahati

Spring 2014 Midterm Exam Review

CISC 662 Graduate Computer Architecture Lecture 13 - CPI < 1

Course Outline. Introduction. Intro Computer Organization. Computer Science Dept Va Tech January McQuain & Ribbens

Advanced d Processor Architecture. Computer Systems Laboratory Sungkyunkwan University

COMP3221: Microprocessors and. Embedded Systems

ECE 15B COMPUTER ORGANIZATION

EE108B Lecture 2 MIPS Assembly Language I. Christos Kozyrakis Stanford University

EEC170 Computer Architecture. Lecture 1: Introduction to Computer Architecture

CpE 442 Introduction To Computer Architecture Lecture 1

Lecture 4: Instruction Set Architecture

Computer Architecture Computer Architecture. Computer Architecture. What is Computer Architecture? Grading

ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 7: Memory Organization Part II

CO403 Advanced Microprocessors IS860 - High Performance Computing for Security. Basavaraj Talawar,

Instruction Set Architecture. "Speaking with the computer"

Instructors. ECE 152 Introduction to Computer Architecture. Undergrad Teaching Assistants. Course Website. Textbook.

Computer Architecture

ECE 468 Computer Architecture and Organization Lecture 1

CMSC 611: Advanced Computer Architecture

Intro to Math 230 Assembly Language Programming. Lecture # 01 01/15/08

CSE 141: Computer Architecture. Professor: Michael Taylor. UCSD Department of Computer Science & Engineering

Complex Instruction Sets

AC : INTRODUCING LABORATORIES WITH SOFT PROCES- SOR CORES USING FPGAS INTO THE COMPUTER ENGINEERING CURRICULUM

Computer Systems Architecture Spring 2016

ECE 588/688 Advanced Computer Architecture II

Prof. Hakim Weatherspoon CS 3410, Spring 2015 Computer Science Cornell University. See P&H Appendix , and 2.21

Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted from David Culler, UC Berkeley CS252, Spr 2002

CPS104 Computer Organization Lecture 1. CPS104: Computer Organization. Meat of the Course. Robert Wagner

The Processor: Instruction-Level Parallelism

Lecture Topics. Announcements. Today: The MIPS ISA (P&H ) Next: continued. Milestone #1 (due 1/26) Milestone #2 (due 2/2)

Erik Jonsson School of Engineering and Computer Science THE UNIVERSITY OF TEXAS AT DALLAS HISTORY OF EE 2310

Chapter 2. OS Overview

CS61C Machine Structures. Lecture 8 - Introduction to the MIPS Processor and Assembly Language. 9/14/2007 John Wawrzynek

EEM 486: Computer Architecture

CPEG 421/621 - Spring 2008

CPS104 Computer Organization Lecture 1

EC 413 Computer Organization

Lecture 4: MIPS Instruction Set

COMPUTER ORGANIZATION (CSE 2021)

Chapter 1 Introduction. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan

Advanced Processor Architecture

ECE 154A. Architecture. Dmitri Strukov

CS 61C: Great Ideas in Computer Architecture Intro to Assembly Language, MIPS Intro

CSCI 402: Computer Architectures. Instructions: Language of the Computer (4) Fengguang Song Department of Computer & Information Science IUPUI

Syllabus CSCI 405 Operating Systems Fall 2018

55:132/22C:160, HPCA Spring 2011

15% lab participation webboard 85% various parts of the labs

EN164: Design of Computing Systems Topic 06.b: Superscalar Processor Design

I ve been getting this a lot lately So, what are you teaching this term? Computer Organization. Do you mean, like keeping your computer in place?

Processor. Han Wang CS3410, Spring 2012 Computer Science Cornell University. See P&H Chapter , 4.1 4

levels (layers) of abstraction I stand on the shoulders of giants Lecture #1 Introduction Are Computers Smart? Where does CS61C fit in?

Lecture 4: Instruction Set Design/Pipelining

Chapter 4 The Processor (Part 4)

Virtual Machines and Dynamic Translation: Implementing ISAs in Software

Real Processors. Lecture for CPSC 5155 Edward Bosworth, Ph.D. Computer Science Department Columbus State University

Moore s Law. CS 6534: Tech Trends / Intro. Good Ol Days: Frequency Scaling. The Power Wall. Charles Reiss. 24 August 2016

CSC 111 Introduction to Computer Science (Section C)

#1 #2 with corrections Monday, March 12 7:00pm to 8:30pm. Please do not write your U of C ID number on this cover page.

Computer Systems & Architecture

Computer Organization and Structure. Bing-Yu Chen National Taiwan University

Transcription:

ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 1: Introduction Ujjwal Guin, Assistant Professor Department of Electrical and Computer Engineering Auburn University, Auburn, AL 36849 http://www.eng.auburn.edu/~uguin Adapted from Prof. Vishwani D. Agrawal 1/6/2017 ELEC 5200-001/6200-001 Lecture 1 1

Course Webpage http://www.eng.auburn.edu/~uguin/teaching/e6200_ Spring_2017/course.html Or Go to professor s webpage http://www.eng.auburn.edu/~uguin/ Click on Spring 2017: ELEC 5200/6200: Computer Architecture and Design 1/6/2017 ELEC 5200-001/6200-001 Lecture 1 2

Course Organization Text book: D. A. Patterson and J. L. Hennessy, Computer Organization & Design, the Hardware/Software Interface, Fifth Edition, Morgan Kaufman (Elsevier), 2014, ISBN 978-0-12-407726-3. Instructor: Ujjwal Guin, Broun 325, (334) 844-1835, ujjwal.guin@auburn.edu Graduate Assistant: Sun Wang, shk0005@tigermail.auburn.edu, Broun 362, consulting hours: Friday 1-3 PM. Classroom: Broun 235, MWF 11:00-11:50AM. Lab: Broun 320. 1/6/2017 ELEC 5200-001/6200-001 Lecture 1 3

Student Performance Evaluation Homework (25%) Two Class Tests (25%) Test 1, TBD, 11:00-11:50AM, Broun 235 Test 2, TBD, 11:00-11:50AM, Broun 235 CPU Design Project (25%) Final Exam (25%) TBD, 12:00-2:30PM, Broun 235 Participation in class discussion and attendance of lectures are strongly encouraged. 1/6/2017 ELEC 5200-001/6200-001 Lecture 1 4

Course Objective Learn what a digital computer contains and how it works. Learn design concepts of a modern computer. Gain design experience (through project). 1/6/2017 ELEC 5200-001/6200-001 Lecture 1 5

The Concept of a Computer Application software Systems software User Hardware Operating system compiler assembler Programs user writes and runs 1/6/2017 ELEC 5200-001/6200-001 Lecture 1 6

Software Compiler Assembler Application software, a program in C: swap (int v[ ], int k) {int temp; temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; } Application software Systems software Hardware MIPS compiler output, assembly language program: swap; muli $2, $5, 4 add $2, $4, $2 lw $15, 0 ($2) lw $16, 4 ($2) sw $16, 0 ($2) sw $15, 4 ($2) jr $31 See pages 15 MIPS binary machine code: 00000000101000010000000000011000 00000000000110000001100000100001 10001100011000100000000000000000 10001100111100100000000000000100 10101100111100100000000000000000 10101100011000100000000000000100 00000011111000000000000000001000 1/6/2017 ELEC 5200-001/6200-001 Lecture 1 7

The Hardware of a Computer Control Input Datapath Central Processing Unit (CPU) or Processor Memory Application software Systems software Output Hardware 1/6/2017 ELEC 5200-001/6200-001 Lecture 1 8

Instruction Set Instruction Set Architecture (ISA) A set of assembly language instructions (ISA) provides a link between software and hardware. Given an instruction set, software programmers and hardware engineers work more or less independently. ISA is designed to extract the most performance out of the available hardware technology. Application software Systems software Hardware Software Hardware 1/6/2017 ELEC 5200-001/6200-001 Lecture 1 9

ISA Defines registers Defines data transfer modes between registers, memory and I/O Types of ISA RISC, CISC, VLIW, Superscalar Examples: IBM370/X86/Pentium/K6 (CISC) PowerPC (Superscalar) Alpha (Superscalar) MIPS (RISC and Superscalar) Sparc (RISC), UltraSparc (Superscalar) 1/6/2017 ELEC 5200-001/6200-001 Lecture 1 10

Computer Architecture Architecture: System attributes that have a direct impact on the logical execution of a program Architecture is visible to a programmer: Instruction Set Data Representation I/O Mechanisms Memory Addressing 1/6/2017 ELEC 5200-001/6200-001 Lecture 1 11

Computer Organization Organization: Physical details that are transparent to a programmer, such as Hardware implementation of an instruction Control signals Memory technology used Example: System/370 architecture has been used in many IBM computers, which widely differ in their organization. 1/6/2017 ELEC 5200-001/6200-001 Lecture 1 12

CPU Design Project Design and implementation of a processor: Define instruction set Design datapath and control hardware Implement hardware in FPGA Verify 1/6/2017 ELEC 5200-001/6200-001 Lecture 1 13

Research and Developments of Continuing Interest Instruction level parallelism (ILP) Multi-core systems and chip multi-processing (CMP) Processors Inter-processor communication Memory organization Operating system Programming languages Computing algorithms Energy efficiency and low power design Embedded systems Quantum computing, biological computing,... 1/6/2017 ELEC 5200-001/6200-001 Lecture 1 14

Summary A computer processes digital data. A user solves problems by writing and running programs written in a high-level programming language like C. Inside computer, system programs called compiler and assembler break the user program down into assembly code (instruction set) and then into binary machine code. The machine code is processed by the 5-piece hardware (control unit, datapath, memory, input and output) to obtain the desired result. Readings on architecture (posted at course website): S. Borkar and A. A. Chen, The Future of Microprocessors, Comm. ACM, vol. 54, no. 5, pp. 67-77, May 2011. L. Hoffmann, Q&A: RISC and Reward (An Interview with David Patterson), Comm. ACM, vol. 57, no. 3, pp. 112, 111, March 2014. 1/6/2017 ELEC 5200-001/6200-001 Lecture 1 15