EECE 321: Computer Organization

Size: px
Start display at page:

Download "EECE 321: Computer Organization"

Transcription

1 EECE 321: Computer Organization Mohammad M. Mansour Dept. of Electrical and Compute Engineering American University of Beirut Lecture 1: Introduction

2 Administrative Instructor Dr. Mohammad M. Mansour, Associate Professor of ECE Office: 501 Bechtel Extension: Send s with Subject: EECE321 Will try to reply back during office hours Course Webpage: Teaching Assistant (TA): Nadida Raad Office hours to be announced Lecture hours: MWF: 10:00 11:00 am in room 541 Bechtel EECE 321: Computer Organization 2

3 Course Policy Grading (tentative) Homework (10%) 2 Midterms (40%) --- [Include Homework questions] Project (15%) Final Exam (30%) --- [Includes Homework questions] Participation/attendance (5% up to instructor) Final course grade will not be assigned based on a curve Attendance taken randomly during the semester at the start of the lecture Late arrivals are considered as absences (no excuses allowed) Assignments: Reading assignments: Assigned every lecture. ~20% course questions on exams. Weekly homework: Direct HW questions will be part of the midterms and final exam Deadlines are sharp, late submissions will not be accepted. Cheating: All parties involved will automatically get a grade of zero on the 10% homework grade. Final homework grade = (Grade on HW assignments) x (HW grade on exams / 100) Projects: Groups of three students Must assemble teams early Project will be done in several phases Direct project questions will be part of the midterms and final exam Cheating: All parties involved will automatically get a grade of zero on the 15% project grade. Final project grade = (Grade on course project) x (project grade on exams / 100) EECE 321: Computer Organization 3

4 Course Policy Lecture slides will be posted on line Must come to class prepared to take notes, so bring pens & notebooks Lectures begin on the hour. Students arriving late may be refused entry to the classroom. Exams are closed book and comprehensive. Students are responsible for all material covered in class, as well as other material posted on the web. No makeup exams will be given for missing any midterm (70% of your grade will be based on whatever exams were taken) If you miss the final exam, your course grade will be Incomplete (I) Do not make any travel arrangements during the final exams week of the semester Must sit for final exam on campus Reviewing your final course grade at the end of the semester must be accompanied with a signed letter from the Associate Dean Any student who sends s objecting for his/her course grade or asking for more grades will be automatically reported to the FEA Student Affairs Committee, which may result in a Dean s Warning in addition to failing the course. Don t even think about cheating!!! Zero tolerance policy; Reported to Student Affairs Committee for appropriate action. This course policy must be read and understood clearly by all students before registering in the course EECE 321: Computer Organization 4

5 Course Syllabus Main Textbook (P&H) David Patterson and John Hennessy, Computer Organization & Design: The Hardware/Software Interface, 4th edition, Morgan Kaufmann Pub., Inc., Prerequisites EECE 230: C/C++ Programming EECE 320: Digital Logic Design Assumption is that you know C/C++ programming: loops, functions, etc. 2 s complement and unsigned numbers Basic digital logic gates, truth tables Basic combination gates: Adders, shifters, multipliers Basic sequential gates: Flip flops, registers Finite state machines VHDL You are responsible for reviewing all the above material EECE 421: Computer Architecture 5

6 Outline Topics Computer Abstractions Machine Instructions, Assembly Language and Programs MIPS/x86 Instruction Set Architectures: RISC vs. CISC Microprocessor Datapath Design Basics Instruction Sequencing and Datapath Control Pipelining Memory Systems Input/Output Organization Introduction to multi-cores/multi-processors Detailed outline found in course syllabus. Material is mainly based on Patterson and Hennessy (P&H), 4 th edition Project: You will apply these ideas to design and implement a substantial course project. EECE 321: Computer Organization 6

7 Course Objectives Introduce the main components of a computer system. Datapath & Control (=processor) Memory System Input and Output (I/O) system Present an overview of the state-of-the-art microprocessors, memory systems, and I/O techniques. Use commercial microprocessors to demonstrate these concepts. Understand the full internal workings of a typical RISC microprocessor including the utilization of the various hardware resources during the execution of instructions. Introduce assembly language programming, and use a software simulator to simulate the execution of machine code on a MIPS microprocessor. Introduce the design and implementation of a microprocessor s datapath and control using a hardware description language (HDL). Introduce modern memory technologies, and modern memory systems. Introduce the design of microprocessor interfacing, basic I/O hardware, and I/O techniques and protocols: polling, interrupts, DMA. Introduce new trends in multi-core/multi-processor systems In this course we will use the MIPS 32-bit RISC microprocessor EECE 321: Computer Organization 7

8 Basic Structures of Computers EECE 321: Computer Organization 8

9 Basic Structure of Computers: Five Main Components Since 1946, all computers have had five main components Datapath, Control, Memory, Input, Output Processor = Control + Datapath Computer Processor Memory IO System Keyboard, Mouse Control ( brain ) Datapath ( brawn ) (where programs, data live when running) Input Output Disk (where programs, data live when not running) Display, Printer EECE 321: Computer Organization 9

10 Inside a Modern Processor AMD Barcelona processor: 4 cores EECE 321: Computer Organization 10

11 The Big Picture Coordination of many layers of abstraction Application (ex: Matlab) Compiler Software Hardware Assembler Processor Operating System (WinXP) Memory I/O system EECE 321 Instruction Set Architecture Datapath & Control Digital Design Circuit Design Transistors Devices EECE 321: Computer Organization 11

12 Instruction Set Architecture (ISA) ISA is the interface between hardware and the lowest-level software. It is an abstraction layer through which hardware designers and software designers communicate. It includes anything programmers need to know to make a binary machine language program work properly. It defines the specs that hardware designers need to implement. There are many implementations of an ISA (called microarchitectures) Varying cost and performance, but run identical software Example: Intel and AMD implement different processors of the Intel 80x86 ISA Pentium Processors by Intel Athlon Processors by AMD An ISA comprises: Organization of memory Data types and data structures: Encodings and representations Instruction set Instruction formats Modes of addressing and accessing data items and instructions Exceptional conditions Modern instruction set architectures: 80x86/Pentium/K6, PowerPC, MIPS, SPARC, HP EECE 321: Computer Organization 12

13 Levels of Representation in EECE 321 Architecture Interpretation Architecture Implementation High-level Language Program (e.g., C) Compiler Assembly Language Program (e.g., MIPS) Assembler temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; lw $t0, 0($2) lw $t1, 4($2) sw $t1, 0($2) sw $t0, 4($2) Machine Language Program (MIPS) Hardware Architecture Description (e.g., VHDL) Logic Circuit Description (VHDL) signal databus: std_logic_vector(31 downto 0); Component regfile port (databus :in std_logic_vector(31 downto 0); A,B:out std_logic_vector(31 downto 0) ); end component; Component ALU port (A,B:in std_logic_vector(31 downto 0); databus: out std_logic_vector(31 downto 0) ); end component; signal x, y: std_logic; y <= A xor B; X <= y and C; EECE 321: Computer Organization 13

14 Machine Language, Assembly Language Machine language: Binary representation used for communication within a computer system. Assembly language is more readable than machine language because it uses symbols instead of bits. The symbols in assembly language name commonly occurring bit patterns, such as opcodes and register specifiers so they are more readable. Assembler: A tool that translates assembly language into machine language. Example: A routine to compute and print the sum of the squares of integers between 0 and 100. Machine language code Assembly language code EECE 321: Computer Organization 14

15 Linker Linker: A systems program that combines independently assembled machine language programs and resolves all undefined labels into an executable file. EECE 321: Computer Organization 15

16 Announcements Reading assignment: Chapter 1 (P&H) Review material from EECE 230 Review material from EECE VHDL HW 1 will be posted Due next Monday at the beginning of the lecture EECE 321: Computer Organization 16

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

CS61C Machine Structures. Lecture 1 Introduction. 8/25/2003 Brian Harvey. John Wawrzynek (Warznek) www-inst.eecs.berkeley. CS61C Machine Structures Lecture 1 Introduction 8/25/2003 Brian Harvey (www.cs.berkeley.edu/~bh) John Wawrzynek (Warznek) (www.cs.berkeley.edu/~johnw) www-inst.eecs.berkeley.edu/~cs61c/ CS 61C L01 Introduction

More information

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

CS61C Machine Structures. Lecture 1 Introduction. 8/27/2006 John Wawrzynek (Warzneck) CS61C Machine Structures Lecture 1 Introduction 8/27/2006 John Wawrzynek (Warzneck) (http://www.cs.berkeley.edu/~johnw/) http://www-inst.eecs.berkeley.edu/~cs61c/ CS 61C L01 Introduction (1) What are Machine

More information

ECE 15B COMPUTER ORGANIZATION

ECE 15B COMPUTER ORGANIZATION ECE 15B COMPUTER ORGANIZATION What are Computing Systems? CMOS Camera (courtesy of Samsung Electronics Co., Ltd) Lecture 1 Introduction Dr. Rahul Singh UCLA Gonda Robotic Surgery Center da Vinci surgical

More information

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

ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 1: Introduction 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

More information

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

URL:  Offered by: Should already know how to design with logic. Will learn... 00 1 EE 3755 Computer Organization 00 1 URL: http://www.ece.lsu.edu/ee3755 Offered by: David M. Koppelman Room 3191 P. Taylor Hall 578-5482, koppel@ece.lsu.edu, http://www.ece.lsu.edu/koppel Tentative

More information

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

ELEC 5200/6200. Computer Architecture & Design. Victor P. Nelson Broun 326 ELEC 5200/6200 Computer Architecture & Design Victor P. Nelson Broun 326 nelsovp@auburn.edu The Concept of a Computer Application software Systems software User Hardware Operating system compiler assembler

More information

Computer Architecture

Computer Architecture Computer Architecture Mehran Rezaei m.rezaei@eng.ui.ac.ir Welcome Office Hours: TBA Office: Eng-Building, Last Floor, Room 344 Tel: 0313 793 4533 Course Web Site: eng.ui.ac.ir/~m.rezaei/architecture/index.html

More information

Computer Architecture. Fall Dongkun Shin, SKKU

Computer Architecture. Fall Dongkun Shin, SKKU Computer Architecture Fall 2018 1 Syllabus Instructors: Dongkun Shin Office : Room 85470 E-mail : dongkun@skku.edu Office Hours: Wed. 15:00-17:30 or by appointment Lecture notes nyx.skku.ac.kr Courses

More information

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

CPS104 Computer Organization Lecture 1. CPS104: Computer Organization. Meat of the Course. Robert Wagner CPS104 Computer Organization Lecture 1 Robert Wagner Slides available on: http://www.cs.duke.edu/~raw/cps104/lectures 1 CPS104: Computer Organization Instructor: Robert Wagner Office: LSRC D336, 660-6536

More information

CPS104 Computer Organization Lecture 1

CPS104 Computer Organization Lecture 1 CPS104 Computer Organization Lecture 1 Robert Wagner Slides available on: http://www.cs.duke.edu/~raw/cps104/lectures 1 CPS104: Computer Organization Instructor: Robert Wagner Office: LSRC D336, 660-6536

More information

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

CS430 - Computer Architecture William J. Taffe Fall 2002 using slides from. CS61C - Machine Structures Dave Patterson Fall 2000 CS430 - Computer Architecture William J. Taffe Fall 2002 using slides from CS61C - Machine Structures Dave Patterson Fall 2000 CS 430 Intro.1 WJ Taffe, Fall 2002 Overview Intro to Machine Structures Organization

More information

ECE 154A. Architecture. Dmitri Strukov

ECE 154A. Architecture. Dmitri Strukov ECE 154A Introduction to Computer Architecture Dmitri Strukov Lecture 1 Outline Admin What this class is about? Prerequisites ii Simple computer Performance Historical trends Economics 2 Admin Office Hours:

More information

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

Administrative matters. EEL-4713C Computer Architecture Lecture 1. Overview. What is this class about? Administrative matters EEL-4713C Computer Architecture Lecture 1 Instructor: Ann Gordon-Ross (Dr. Ann) Larsen 221 Office hours: TBD http://www.ann.ece.ufl.edu; ann@ece.ufl.edu Web Page: Sakai TA: Ryan

More information

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 01 1 EE 4720 Computer Architecture 01 1 URL: https://www.ece.lsu.edu/ee4720/ RSS: https://www.ece.lsu.edu/ee4720/rss home.xml Offered by: David M. Koppelman 3316R P. F. Taylor Hall, 578-5482, koppel@ece.lsu.edu,

More information

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 01 1 EE 4720 Computer Architecture 01 1 URL: http://www.ece.lsu.edu/ee4720/ RSS: http://www.ece.lsu.edu/ee4720/rss home.xml Offered by: David M. Koppelman 345 ERAD, 578-5482, koppel@ece.lsu.edu, http://www.ece.lsu.edu/koppel

More information

CMPE012 Computer Engineering 12 (and Lab) Computing Systems and Assembly Language Programming. Summer 2009

CMPE012 Computer Engineering 12 (and Lab) Computing Systems and Assembly Language Programming. Summer 2009 CMPE012 Computer Engineering 12 (and Lab) Computing Systems and Assembly Language Programming Summer 2009 About these notes Originally by Cyrus Bazeghi Overhauled by Andrea Di Blas Modified by me (Alexandra

More information

EEC170 Computer Architecture. Lecture 1: Introduction to Computer Architecture

EEC170 Computer Architecture. Lecture 1: Introduction to Computer Architecture EEC170 Computer Architecture Lecture 1: Introduction to Computer Architecture Soheil Ghiasi Electrical and Computer Engineering University of California, Davis Fall 2005 What is a Computer? It has memory

More information

CS64 Computer Organization

CS64 Computer Organization CS64 Computer Organization Lecture 1 Prof. Heather Zheng (1) Your computer never complains about the # of languages you use.. 1 (2) The same program runs on almost all the computers? 2 How Computer Operates

More information

CPE300: Digital System Architecture and Design

CPE300: Digital System Architecture and Design CPE300: Digital System Architecture and Design Fall 2011 MW 17:30-18:45 CBC C316 Layered View of the Computer http://www.egr.unlv.edu/~b1morris/cpe300/ 2 Outline Recap Assembly/Machine Programmer View

More information

14:332:331. Lecture 1

14:332:331. Lecture 1 14:332:331 Computer Architecture and Assembly Language Fall 2003 Lecture 1 [Adapted from Dave Patterson s UCB CS152 slides and Mary Jane Irwin s PSU CSE331 slides] 331 W01.1 Course Administration Instructor:

More information

378: Machine Organization and Assembly Language

378: Machine Organization and Assembly Language 378: Machine Organization and Assembly Language Spring 2010 Luis Ceze Slides adapted from: UIUC, Luis Ceze, Larry Snyder, Hal Perkins 1 What is computer architecture about? Computer architecture is the

More information

ICE3003: Computer Architecture. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

ICE3003: Computer Architecture. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University ICE3003: Computer Architecture Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Introduction Schedule 16:30 17:45 (Mon), 13:30 14:45 (Thu) Lecture

More information

CS 152 Computer Architecture and Engineering Lecture 1 Single Cycle Design

CS 152 Computer Architecture and Engineering Lecture 1 Single Cycle Design CS 152 Computer Architecture and Engineering Lecture 1 Single Cycle Design 2014-1-21 John Lazzaro (not a prof - John is always OK) TA: Eric Love www-inst.eecs.berkeley.edu/~cs152/ Play: 1 Today s lecture

More information

ESET 349 Microcontroller Architecture, Fall 2018

ESET 349 Microcontroller Architecture, Fall 2018 ESET 349 Microcontroller Architecture, Fall 2018 Syllabus Contact Information: Professor: Dr. Byul Hur Office: 008 Fermier Telephone: (979) 845-5195 FAX: E-mail: byulmail@tamu.edu Web: rftestgroup.tamu.edu

More information

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

Intro to Math 230 Assembly Language Programming. Lecture # 01 01/15/08 Intro to Math 230 Assembly Language Programming Lecture # 01 01/15/08 Lecture Overview Course Overview Short history of industry trends and motivation for course need Lab: command line environment review

More information

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

Handouts. (CSC-3501) Lecture 1 (15 Jan 2008) Seung-Jong Park (Jay) Class information. Schedule (check online frequently) Computer Architecture (CSC-3501) Lecture 1 (15 Jan 2008) Seung-Jong Park (Jay) http://www.csc.lsu.edu/~sjpark 1 Handouts Class information http://www.csc.lsu.edu/~sjpark/cs3501/overview.html Schedule (check

More information

EEM 486: Computer Architecture

EEM 486: Computer Architecture EEM 486: Computer Architecture Lecture 1 Course Introduction and the Five Components of a Computer EEM 486 Course Information Instructor: Atakan Doğan (atdogan@anadolu.edu.tr) Office Hours: Anytime Materials:

More information

ECE232: Hardware Organization and Design

ECE232: Hardware Organization and Design ECE232: Hardware Organization and Design Lecture 4: MIPS Instructions Adapted from Computer Organization and Design, Patterson & Hennessy, UCB From Last Time Two values enter from the left (A and B) Need

More information

COMPUTER ARCHTECTURE

COMPUTER ARCHTECTURE Syllabus COMPUTER ARCHTECTURE - 67200 Last update 19-09-2016 HU Credits: 5 Degree/Cycle: 1st degree (Bachelor) Responsible Department: computer sciences Academic year: 0 Semester: 2nd Semester Teaching

More information

Computer Architecture. Introduction. Lynn Choi Korea University

Computer Architecture. Introduction. Lynn Choi Korea University Computer Architecture Introduction Lynn Choi Korea University Class Information Lecturer Prof. Lynn Choi, School of Electrical Eng. Phone: 3290-3249, 공학관 411, lchoi@korea.ac.kr, TA: 윤창현 / 신동욱, 3290-3896,

More information

ECE573 Introduction to Compilers & Translators

ECE573 Introduction to Compilers & Translators ECE573 Introduction to Compilers & Translators Tentative Syllabus Fall 2005 Tu/Th 9:00-10:15 AM, EE 115 Instructor Prof. R. Eigenmann Tel 49-41741 Email eigenman@ecn Office EE334C Office Hours Tu 10:15-11:30

More information

CSE Introduction to Computer Architecture

CSE Introduction to Computer Architecture -- Introduction to Computer Architecture What is Computer Architecture? (am I in the right class?) Hardware Designer thinks about circuits, components, timing, functionality, ease of debugging Computer

More information

ESET 369 Embedded Systems Software, Fall 2017

ESET 369 Embedded Systems Software, Fall 2017 ESET 369 Embedded Systems Software, Fall 2017 Syllabus Contact Information: Professor: Dr. Byul Hur Office: Fermier 008A Telephone: (979) 845-5195 FAX: E-mail: byulmail@tamu.edu Web: rftestgroup.tamu.edu

More information

COMPUTER ORGANIZATION (CSE 2021)

COMPUTER ORGANIZATION (CSE 2021) COMPUTER ORGANIZATION (CSE 2021) HUGH CHESSER LAS 1012U Agenda Introduction to course Context Hardware - Integrated Circuits (IC s) Software Assembly Language Reading: Patterson, Sections 1.1 1.3. CSE

More information

CS61C : Machine Structures

CS61C : Machine Structures inst.eecs.berkeley.edu/~cs61c/su06 CS61C : Machine Structures Lecture #14: Combinational Logic, Gates, and State 2006-07-20 CS 61C L14 Combinational Logic (1) Andy Carle What are Machine Structures? Software

More information

CS240: Programming in C

CS240: Programming in C CS240: Programming in C Lecture 1: Class overview. Cristina Nita-Rotaru Lecture 1/ Fall 2013 1 WELCOME to CS240 Cristina Nita-Rotaru Lecture 1/ Fall 2013 2 240 Team Instructor: Cristina Nita-Rotaru Special

More information

ECE 250 / CPS 250 Computer Architecture. Introduction

ECE 250 / CPS 250 Computer Architecture. Introduction ECE 250 / CPS 250 Computer Architecture Introduction Benjamin Lee Slides based on those from Andrew Hilton (Duke), Alvy Lebeck (Duke) Benjamin Lee (Duke), and Amir Roth (Penn) Instructor and Graduate TAs

More information

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

Instructors. ECE 152 Introduction to Computer Architecture. Undergrad Teaching Assistants. Course Website. Textbook. Instructors ECE 152 Introduction to Computer Architecture Intro and Overview Copyright 2005 Daniel J. Sorin Duke University Slides are derived from work by Amir Roth (Penn) and Alvy Lebeck (Duke) Spring

More information

ECE 468 Computer Architecture and Organization Lecture 1

ECE 468 Computer Architecture and Organization Lecture 1 ECE 468 Computer Architecture and Organization Lecture 1 September 7, 1999 ece 468 Intro.1 What is "Computer Architecture" Co-ordination of levels of abstraction Application Compiler Instr. Set Proc. Operating

More information

Introduction to Data Structures

Introduction to Data Structures 15-121 Introduction to Data Structures Lecture #1 Introduction 28 August 2019 Margaret Reid-Miller Today Course Administration Overview of Course A (very basic) Java introduction Course website: www.cs.cmu.edu/~mrmiller/15-121

More information

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

Instructor. ECE 152 Introduction to Computer Architecture. Course Website. Undergrad Teaching Assistants Instructor ECE 152 Introduction to Computer Architecture Intro and Overview Copyright 2009 Daniel J. Sorin Duke University Slides are derived from work by Amir Roth (Penn) and Alvy Lebeck (Duke) Spring

More information

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

Erik Jonsson School of Engineering and Computer Science THE UNIVERSITY OF TEXAS AT DALLAS HISTORY OF EE 2310 HISTORY OF EE 2310 Initially planned by Prof. David Harper as a counterpart to courses on computer organization and design at Berkeley and Stanford D. Patterson (Berkeley) and J. Hennessy (Stanford) are

More information

ECE232: Hardware Organization and Design

ECE232: Hardware Organization and Design ECE232: Hardware Organization and Design Lecture 2: Hardware/Software Interface Adapted from Computer Organization and Design, Patterson & Hennessy, UCB Overview Basic computer components How does a microprocessor

More information

CS61C : Machine Structures

CS61C : Machine Structures inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures CS 61C L01 Introduction (1) Lecture 1 Introduction 2004-08-30 Lecturer PSOE Dan Garcia www.cs.berkeley.edu/~ddgarcia New show this Fall Father of

More information

What are Machine Structures? Lecture 1 Introduction C. * Coordination of many. levels (layers) of abstraction

What are Machine Structures? Lecture 1 Introduction C. * Coordination of many. levels (layers) of abstraction CS 61C L01 Introduction (1) inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture 1 Introduction 2004-08-30 Lecturer PSOE Dan Garcia www.cs.berkeley.edu/~ddgarcia New show this Fall Father of

More information

CPSC 213. Introduction to Computer Systems. Introduction. Unit 0

CPSC 213. Introduction to Computer Systems. Introduction. Unit 0 CPSC 213 Introduction to Computer Systems Unit Introduction 1 Overview of the course Hardware context of a single executing program hardware context is CPU and Main Memory develop CPU architecture to implement

More information

COMPUTER ORGANIZATION (CSE 2021)

COMPUTER ORGANIZATION (CSE 2021) COMPUTER ORGANIZATION (CSE 2021) HUGH CHESSER CSEB 1012U Agenda Introduction to course Context Hardware - Integrated Circuits (IC s) Software Assembly Language Reading: Patterson, Sections 1.1 1.3. CSE

More information

CPSC 213. Introduction to Computer Systems. About the Course. Course Policies. Reading. Introduction. Unit 0

CPSC 213. Introduction to Computer Systems. About the Course. Course Policies. Reading. Introduction. Unit 0 About the Course it's all on the web page... http://www.ugrad.cs.ubc.ca/~cs213/winter1t1/ - news, admin details, schedule and readings CPSC 213 - lecture slides (always posted before class) - 213 Companion

More information

ECE331: Hardware Organization and Design

ECE331: Hardware Organization and Design ECE331: Hardware Organization and Design Lecture 35: Final Exam Review Adapted from Computer Organization and Design, Patterson & Hennessy, UCB Material from Earlier in the Semester Throughput and latency

More information

EE 3170 Microcontroller Applications

EE 3170 Microcontroller Applications EE 3170 Microcontroller Applications Lecture 4 : Processors, Computers, and Controllers - 1.2 (reading assignment), 1.3-1.5 Based on slides for ECE3170 by Profs. Kieckhafer, Davis, Tan, and Cischke Outline

More information

CSEE 3827: Fundamentals of Computer Systems

CSEE 3827: Fundamentals of Computer Systems CSEE 3827: Fundamentals of Computer Systems Lecture 15 April 1, 2009 martha@cs.columbia.edu and the rest of the semester Source code (e.g., *.java, *.c) (software) Compiler MIPS instruction set architecture

More information

CSC 111 Introduction to Computer Science (Section C)

CSC 111 Introduction to Computer Science (Section C) CSC 111 Introduction to Computer Science (Section C) Course Description: (4h) Lecture and laboratory. Rigorous introduction to the process of algorithmic problem solving and programming in a modern programming

More information

Computer Organization & Assembly Language Programming (CSE 2312)

Computer Organization & Assembly Language Programming (CSE 2312) Computer Organization & Assembly Language Programming (CSE 2312) Lecture 1 Taylor Johnson Outline Administration Course Objectives Computer Organization Overview August 21, 2014 CSE2312, Fall 2014 2 Administration

More information

CSCE 441 Computer Graphics Fall 2018

CSCE 441 Computer Graphics Fall 2018 CSCE 441 Computer Graphics Fall 2018 Meetings: Monday, Wednesday, Friday 9:10-10:00 a.m. Location: HRBB 113 Instructor: Dr. John Keyser Office: 527C, H.R. Bright Building Phone: 458-0167 Email: keyser@cse.tamu.edu

More information

ESET 369 Embedded Systems Software, Spring 2018

ESET 369 Embedded Systems Software, Spring 2018 ESET 369 Embedded Systems Software, Spring 2018 Syllabus Contact Information: Professor: Dr. Byul Hur Office: Fermier 008A Telephone: (979) 845-5195 FAX: E-mail: byulmail@tamu.edu Web: rftestgroup.tamu.edu

More information

Computer Architecture!

Computer Architecture! Informatics 3 Computer Architecture! Dr. Boris Grot and Dr. Vijay Nagarajan!! Institute for Computing Systems Architecture, School of Informatics! University of Edinburgh! General Information! Instructors

More information

CS 200, Section 1, Programming I, Fall 2017 College of Arts & Sciences Syllabus

CS 200, Section 1, Programming I, Fall 2017 College of Arts & Sciences Syllabus Northeastern Illinois University CS 200, Section 1, Programming I, Fall 2017 Syllabus, Page 1 of 7 CS 200, Section 1, Programming I, Fall 2017 College of Arts & Sciences Syllabus COURSE INFORMATION: Credit

More information

Computer Systems & Architecture

Computer Systems & Architecture Computer Systems & Architecture Ian Batten Dr Iain Styles I.G.Batten@bham.ac.uk I.B.Styles@cs.bham.ac.uk Timetable Lectures 9.00am 10.00am Tuesday Chem Law LT1 Eng 124 2.00pm 3.00pm Friday Chem Muirhead

More information

Beijing Jiaotong University CS-23: C++ Programming Summer, 2019 Course Syllabus

Beijing Jiaotong University CS-23: C++ Programming Summer, 2019 Course Syllabus Beijing Jiaotong University CS-23: C++ Programming Summer, 2019 Course Syllabus Course Personnel: Instructor Name: Jovan Ilić Office: TBD Phone: TBD e-mail: TBD Teaching Assistants Name: TBD Office: TBD

More information

CO200 Computer Organization and Architecture

CO200 Computer Organization and Architecture CO200 Computer Organization and Architecture Basavaraj Talawar, CSE, NITK http://bt.nitk.ac.in/c/18b/co200/index.html Learning from the Course How does the hardware execute our program? What goes on under

More information

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

Lecture Topics. Announcements. Today: The MIPS ISA (P&H ) Next: continued. Milestone #1 (due 1/26) Milestone #2 (due 2/2) Lecture Topics Today: The MIPS ISA (P&H 2.1-2.14) Next: continued 1 Announcements Milestone #1 (due 1/26) Milestone #2 (due 2/2) Milestone #3 (due 2/9) 2 1 Evolution of Computing Machinery To understand

More information

CprE 381 Computer Organization and Assembly Level Programming

CprE 381 Computer Organization and Assembly Level Programming CprE 381 Computer Organization and Assembly Level Programming Mini-Project B, Version 1.0 Last update: 10/21/2013 This is a three-week project. You will design and implement two versions of a single-cycle

More information

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

IT 252 Computer Organization and Architecture. Introduction. Chia-Chi Teng IT 252 Computer Organization and Architecture Introduction Chia-Chi Teng What is computer architecture about? Computer architecture is the study of building computer systems. IT 252 is roughly split into

More information

CpE 442 Introduction To Computer Architecture Lecture 1

CpE 442 Introduction To Computer Architecture Lecture 1 CpE 442 Introduction To Computer Architecture Lecture 1 Instructor: H. H. Ammar These slides are based on the lecture slides provided with the course text book specified in the course syllabus The original

More information

How What When Why CSC3501 FALL07 CSC3501 FALL07. Louisiana State University 1- Introduction - 1. Louisiana State University 1- Introduction - 2

How What When Why CSC3501 FALL07 CSC3501 FALL07. Louisiana State University 1- Introduction - 1. Louisiana State University 1- Introduction - 2 Computer Organization and Design Dr. Arjan Durresi Louisiana State University Baton Rouge, LA 70803 durresi@csc.lsu.edu d These slides are available at: http://www.csc.lsu.edu/~durresi/csc3501_07/ Louisiana

More information

CS3350B Computer Architecture Winter 2015

CS3350B Computer Architecture Winter 2015 CS3350B Computer Architecture Winter 2015 Lecture 5.5: Single-Cycle CPU Datapath Design Marc Moreno Maza www.csd.uwo.ca/courses/cs3350b [Adapted from lectures on Computer Organization and Design, Patterson

More information

EECE 417 Computer Systems Architecture

EECE 417 Computer Systems Architecture EECE 417 Computer Systems Architecture Department of Electrical and Computer Engineering Howard University Charles Kim Spring 2007 1 Computer Organization and Design (3 rd Ed) -The Hardware/Software Interface

More information

Introduction to System Programming Course 2015 Spring Euiseong Seo

Introduction to System Programming Course 2015 Spring Euiseong Seo Introduction to System Programming Course 2015 Spring Euiseong Seo (euiseong@skku.edu) 1 Overview What this course is about Who teaches this course Why you have to take this course What you will learn

More information

Chapter 1. Computer Abstractions and Technology

Chapter 1. Computer Abstractions and Technology Chapter 1 Computer Abstractions and Technology The Computer Revolution Progress in computer technology Underpinned by Moore s Law Makes novel applications feasible Computers in automobiles Cell phones

More information

COMP3221: Microprocessors and. Embedded Systems

COMP3221: Microprocessors and. Embedded Systems Embedded Systems Lecture 1: Introduction http://www.cse.unsw.edu.au/~cs3221 Lecturer: Hui Wu Session 1, 2005 1 COMP 3221 Administration (1/2) Lecturer: Hui Wu: huiw@cse.unsw.edu.au Office: K17-501D Consultation:

More information

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

CS61C Machine Structures. Lecture 8 - Introduction to the MIPS Processor and Assembly Language. 9/14/2007 John Wawrzynek CS61C Machine Structures Lecture 8 - Introduction to the MIPS Processor and Assembly Language 9/14/2007 John Wawrzynek (www.cs.berkeley.edu/~johnw) www-inst.eecs.berkeley.edu/~cs61c/ CS 61C L08 C Introduction

More information

ECE 3220 Digital Design with VHDL. Course Information. Lecture 1

ECE 3220 Digital Design with VHDL. Course Information. Lecture 1 ECE 3220 Digital Design with VHDL Course Information Lecture 1 Course Information Course #: ECE 3220 Course Name: Digital Design with VHDL Course Instructor: Dr. Vida Vakilian Email: vvakilian@csub.edu

More information

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

Computer Architecture Computer Architecture. Computer Architecture. What is Computer Architecture? Grading 178 322 Computer Architecture Lecturer: Watis Leelapatra Office: 4301D Email: watis@kku.ac.th Course Webpage: http://gear.kku.ac.th/~watis/courses/178322/178322.html Computer Architecture Grading Midterm

More information

Syllabus CSCI 405 Operating Systems Fall 2018

Syllabus CSCI 405 Operating Systems Fall 2018 Syllabus CSCI 405 Operating Systems Fall 2018 1.0 General Information Class Time: Monday/Wednesday/Friday 11:00 AM - 11:50 AM Class Location: 317 Thompson Instructor: Dr. Deepti Joshi; Office: 224 Thompson;

More information

CPE300: Digital System Architecture and Design. Fall 2011 MW 17:30-18:45 CBC C316

CPE300: Digital System Architecture and Design. Fall 2011 MW 17:30-18:45 CBC C316 CPE300: Digital System Architecture and Design Fall 2011 MW 17:30-18:45 CBC C316 2 Outline Intro to Computer Systems and Architecture Need for this class Course objectives Views of the general purpose

More information

מבנה מחשבים Amar Lior Based on lectures notes from Arie Schlesinger

מבנה מחשבים Amar Lior Based on lectures notes from Arie Schlesinger מבנה מחשבים 2006 Amar Lior Based on lectures notes from Arie Schlesinger (aries@cs.columbia.edu) Adapted from Computer Organization&Design, H/S interface, Patterson Hennessy@UCB,1999 1 Administration Course

More information

EE282H: Computer Architecture and Organization. EE282H: Computer Architecture and Organization -- Course Overview

EE282H: Computer Architecture and Organization. EE282H: Computer Architecture and Organization -- Course Overview : Computer Architecture and Organization Kunle Olukotun Gates 302 kunle@ogun.stanford.edu http://www-leland.stanford.edu/class/ee282h/ : Computer Architecture and Organization -- Course Overview Goals»

More information

ELEC 2520 Embedded Systems Engineering II

ELEC 2520 Embedded Systems Engineering II ELEC 2520 Embedded Systems Engineering II University of Colorado Denver College of Engineering and Applied Science Department of Electrical Engineering Term: Spring 2011 Meeting: Tuesday/Thursday 3:30pm-4:45pm

More information

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

CSE 141 Computer Architecture Spring Lecture 3 Instruction Set Architecute. Course Schedule. Announcements CSE141: Introduction to Computer Architecture CSE 141 Computer Architecture Spring 2005 Lecture 3 Instruction Set Architecute Pramod V. Argade April 4, 2005 Instructor: TAs: Pramod V. Argade (p2argade@cs.ucsd.edu)

More information

EECE.2160: ECE Application Programming Spring 2017

EECE.2160: ECE Application Programming Spring 2017 Course Meetings Section 201: MWF 8-8:50, Ball 314 Section 202: MWF 12-12:50, Kitson 305 Course Website Main page: http://mjgeiger.github.io/eece2160/sp17/ Schedule: http://mjgeiger.github.io/eece2160/sp17/schedule.htm

More information

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

EE108B: Digital Systems II EE108B. Digital Systems II. Major Topics. What EE108b is About EE108B: Digital Systems II EE108B Digital Systems II Christos Kozyrakis Stanford University christos@ee.stanford.edu Part of the Digital Systems sequence of the new ugrad EE curriculum Revision of EE182

More information

Computer Organization

Computer Organization Computer Organization KR Chowdhary Professor & Head Email: kr.chowdhary@gmail.com webpage: krchowdhary.com Department of Computer Science and Engineering MBM Engineering College, Jodhpur November 14, 2013

More information

EECE.2160: ECE Application Programming Spring 2019

EECE.2160: ECE Application Programming Spring 2019 Course Meetings Section 201: MWF 8-8:50, Kitson 305 Section 202: MWF 12-12:50, Kitson 305 Course Website Main page: http://mjgeiger.github.io/eece2160/sp19/ Schedule: http://mjgeiger.github.io/eece2160/sp19/schedule.htm

More information

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

CISC 360. Computer Architecture. Seth Morecraft Course Web Site: CISC 360 Computer Architecture Seth Morecraft (morecraf@udel.edu) Course Web Site: http://www.eecis.udel.edu/~morecraf/cisc360 Overview Intro to Computer Architecture About the Course Organization

More information

When and Where? Course Information. Expected Background ECE 486/586. Computer Architecture. Lecture # 1. Spring Portland State University

When and Where? Course Information. Expected Background ECE 486/586. Computer Architecture. Lecture # 1. Spring Portland State University When and Where? ECE 486/586 Computer Architecture Lecture # 1 Spring 2015 Portland State University When: Tuesdays and Thursdays 7:00-8:50 PM Where: Willow Creek Center (WCC) 312 Office hours: Tuesday

More information

Computer Architecture

Computer Architecture 188 322 Computer Architecture Lecturer: Watis Leelapatra Office: 4301D Email: watis@kku.ac.th Course Webpage http://gear.kku.ac.th/~watis/courses/188322/188322.html 188 322 Computer Architecture Grading

More information

ECE 4450:427/527 - Computer Networks

ECE 4450:427/527 - Computer Networks ECE 4450:427/527 - Computer Networks Spring 2017 Dr. Nghi Tran Lecture 1: Introduction Dr. Nghi Tran (ECE-University of Akron) ECE 4450:427/527 Computer Networks 1 / 16 Outline 1 Information 2 Broad Overview

More information

Computer Architecture!

Computer Architecture! Informatics 3 Computer Architecture! Dr. Vijay Nagarajan and Prof. Nigel Topham! Institute for Computing Systems Architecture, School of Informatics! University of Edinburgh! General Information! Instructors

More information

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

CS 61C: Great Ideas in Computer Architecture Intro to Assembly Language, MIPS Intro CS 61C: Great Ideas in Computer Architecture Intro to Assembly Language, MIPS Intro Instructors: Vladimir Stojanovic & Nicholas Weaver http://inst.eecs.berkeley.edu/~cs61c/sp16 1 Machine Interpretation

More information

CS61C C/Assembler Operators and Operands Lecture 2 January 22, 1999 Dave Patterson (http.cs.berkeley.edu/~patterson)

CS61C C/Assembler Operators and Operands Lecture 2 January 22, 1999 Dave Patterson (http.cs.berkeley.edu/~patterson) CS61C C/Assembler Operators and Operands Lecture 2 January 22, 1999 Dave Patterson (http.cs.berkeley.edu/~patterson) www-inst.eecs.berkeley.edu/~cs61c/schedule.html cs 61C L2 Asm Ops.1 Machine Structures

More information

CS 61C: Great Ideas in Computer Architecture Introduction to Assembly Language and RISC-V Instruction Set Architecture

CS 61C: Great Ideas in Computer Architecture Introduction to Assembly Language and RISC-V Instruction Set Architecture CS 61C: Great Ideas in Computer Architecture Introduction to Assembly Language and RISC-V Instruction Set Architecture Instructors: Krste Asanović & Randy H. Katz http://inst.eecs.berkeley.edu/~cs61c 9/7/17

More information

Cleveland State University

Cleveland State University Cleveland State University CIS 260/500 Introduction to Programming (4 credits). Spring 2015 Section 2/ 50 Class Nbr. 1810/1855 Tue, Thu 12:30 PM 2:20 PM Section 2/ 50 Class Nbr. 1813/1856. Tue, Thu 4:00

More information

SWE3004: Operating Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

SWE3004: Operating Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University SWE3004: Operating Systems Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Introduction Schedule 16:30 17:45 (Monday), 13:30 14:45 (Wednesday) Lecture

More information

TEACHING COMPUTER ARCHITECTURE THROUGH DESIGN PRACTICE. Guoping Wang 1. INTRODUCTION

TEACHING COMPUTER ARCHITECTURE THROUGH DESIGN PRACTICE. Guoping Wang 1. INTRODUCTION TEACHING COMPUTER ARCHITECTURE THROUGH DESIGN PRACTICE Guoping Wang Indiana University Purdue University Fort Wayne, Indiana; Email:wang@engr.ipfw.edu 1. INTRODUCTION Computer Architecture is a common

More information

Introduction to UNIX

Introduction to UNIX Introduction to UNIX Class time and location COP 3353, Spring 2011 Department of Computer Science, Florida State University Tuesday, 9:30AM-10:20 AM, 201 Milton Carothers Hall (MCH). (Note that this is

More information

CS 200: Computer Organization

CS 200: Computer Organization CS 200: Computer Organization Spring 2017 Course Syllabus Northern Arizona University College of Engineering, Forestry, and Natural Sciences School of Informatics, Computing, and Cyber Systems Course Information

More information

CSE : Introduction to Computer Architecture

CSE : Introduction to Computer Architecture Computer Architecture 9/21/2005 CSE 675.02: Introduction to Computer Architecture Instructor: Roger Crawfis (based on slides from Gojko Babic A modern meaning of the term computer architecture covers three

More information

CS61C : Machine Structures

CS61C : Machine Structures inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture #18 Introduction to CPU Design 2007-7-25 Scott Beamer, Instructor CS61C L18 Introduction to CPU Design (1) What about overflow? Consider

More information

CS 110 Computer Architecture. Lecture 2: Introduction to C, Part I. Instructor: Sören Schwertfeger.

CS 110 Computer Architecture. Lecture 2: Introduction to C, Part I. Instructor: Sören Schwertfeger. CS 110 Computer Architecture Lecture 2: Introduction to C, Part I Instructor: Sören Schwertfeger http://shtech.org/courses/ca/ School of Information Science and Technology SIST ShanghaiTech University

More information

CMSC 611: Advanced Computer Architecture

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

More information