CO200 Computer Organization and Architecture

Size: px
Start display at page:

Download "CO200 Computer Organization and Architecture"

Transcription

1 CO200 Computer Organization and Architecture Basavaraj Talawar, CSE, NITK

2 Learning from the Course How does the hardware execute our program? What goes on under the hood during program execution?

3 Learning from the Course How does the hardware execute our program? What goes on under the hood during program execution? Which components of the system are at work? Design of these components

4 What does the hardware see? int main() { int i, i, a=2, b=3, sum=0; sum = a + b; b; This This is is what what the the Programmer sees. sees.

5 What does the hardware see? int main() { int i, i, a=2, b=3, sum=0; sum = a + b; b; This This is is what what the the Programmer sees. sees. Compiler

6 What does the hardware see? int main() { int i, i, a=2, b=3, sum=0; sum = a + b; b; This This is is what what the the Programmer sees. sees. Binary Code Code This This is is what what the the Machine sees. sees. Compiler

7 What does the hardware see? Binary Code Code What does the binary code (a.out) contain? What happens when do do $./a.out

8 The Program int main() { int a=2, b=3, sum=0; sum = a + b; b; Start Start here! here!

9 The Program int main() { int a=2, b=3, sum=0; sum = a + b; b; Allocate space in in memory for for these data! data!

10 The Program int main() { int a=2, b=3, sum=0; sum = a + b; b; Add Add a and and b and and store store the the result in in c. c.

11 The Program int main() { int a=2, b=3, sum=0; sum = a + b; b; Exit Exit the the program!

12 What goes on under the hood? int main() { int a=2, b=3, sum=0; sum = a + b; b; Add Add a and and b and and store store the the result in in c. c.

13 What goes on under the hood? int main() { int a=2, b=3, sum=0; sum = a + b; b; Add Add a and and b and and store store the the result in in c. c. All the work is done here PROCESSOR MEMORY Programs and Data reside here

14 What goes on under the hood? a b c PROCESSOR MEMORY int main() { int a=2, b=3, sum=0; sum = a + b; b; Add Add a and and b and and store store the the result in in c. c.

15 What goes on under the hood? 0 0 ALU ALU PROCESSOR a b c MEMORY int main() { int a=2, b=3, sum=0; sum = a + b; b; Add Add a and and b and and store store the the result in in c. c.

16 What goes on under the hood? 1 1 Load Load a, a, b ALU ALU a a b b a b c MEMORY PROCESSOR int main() { int a=2, b=3, sum=0; sum = a + b; b; Add Add a and and b and and store store the the result in in c. c.

17 What goes on under the hood? 1 1 ALU ALU a b PROCESSOR a b c MEMORY int main() { int a=2, b=3, sum=0; sum = a + b; b; Add Add a and and b and and store store the the result in in c. c.

18 What goes on under the hood? 2 Feed Feed a, a, b to to ALU ALU ALU ALU b a a a b b PROCESSOR a b c MEMORY int main() { int a=2, b=3, sum=0; sum = a + b; b; Add Add a and and b and and store store the the result in in c. c.

19 What goes on under the hood? 2 Addition in in ALU ALU ALU ALU b + a a a b b PROCESSOR a b c MEMORY int main() { int a=2, b=3, sum=0; sum = a + b; b; Add Add a and and b and and store store the the result in in c. c.

20 What goes on under the hood? 2 Add Add a, a, b. b. Write a+b. a+b. ALU ALU b a a a b b a+b a+b PROCESSOR a b c MEMORY int main() { int a=2, b=3, sum=0; sum = a + b; b; Add Add a and and b and and store store the the result in in c. c.

21 What goes on under the hood? 3 Store Store a+b a+b in in memory in in c c ALU ALU a b a+b a+b PROCESSOR a+b a+b a b a+b a+b MEMORY int main() { int a=2, b=3, sum=0; sum = a + b; b; Add Add a and and b and and store store the the result in in c. c.

22 What goes on under the hood? int main() { int a=2, b=3, sum=0; sum = a + b; b; Add Add a and and b and and store store the the result in in c. c. Variables memory locations Load the values from memory into the processor Feed the inputs to to the ALU Arithmetic operation in in the ALU Addition Save the sum in in the processor Store the calculated sum from the processor to to the memory

23 A Bigger Program int int calculate_sum(int a[], a[], int int i) i) { int int sum=0; i=0; i=0; for(i=0;i<5;i++) sum sum = sum sum + a[i]; return sum; sum; int int main() { int int i, i, a[5]={2,3,5,7,11, sum=0; sum=calculate_sum(a, 5); 5);

24 A Bigger Program int int calculate_sum(int a[], a[], int int i) i) { int int sum=0; i=0; i=0; for(i=0;i<5;i++) sum sum = sum sum + a[i]; return sum; sum; int int main() { int int i, i, a[5]={2,3,5,7,11, sum=0; sum=calculate_sum(a, 5); 5); Condition evaluation Function call and return Parameters pass and return

25 An Even Bigger Program! int int calculate_sum(int a[], a[], int int i) i) { int int sum=0; i=0; i=0; for(i=0;i<5;i++) sum sum = sum sum + a[i]; return sum; sum; int int main() { int int i, i, a[5]={2,3,5,7,11, sum=0; sum=calculate_sum(a, 5); 5); printf( the sum: sum: %d., sum);

26 An Even Bigger Program! int int calculate_sum(int a[], a[], int int i) i) { int int sum=0; i=0; i=0; for(i=0;i<5;i++) sum sum = sum sum + a[i]; return sum; sum; int int main() { int int i, i, a[5]={2,3,5,7,11, sum=0; sum=calculate_sum(a, 5); 5); printf( the sum: sum: %d., sum); I/O operation!!

27 Computer Organization and Architecture This Course Binary Code Instructions The The Binary Program (a.out) Data Data Function Calls Calls I/O I/O Operations

28 Computer Organization and Architecture This Course Binary Code Hardware Units The The Binary Program (a.out) Instructions Data Data Function Calls Calls I/O I/O Operations ALU ALU Design Datapath Design Control Unit Unit Design Memory Hierarchy

29 Course Details Assignments (~4) RISC-V Assembly language programming Hardware design - Build components in HDL Tutorials (8 10) Solve problems in class; Teams of 2; Every week. Midterm and Final Exam Class slides will be on the course website

30 Course Reference Texts David A Patterson and John L Hennessy. Computer Organization and Design The Hardware/Software Interface. RISC-V Edition, Morgan Kaufmann M. Morris Mano. Computer System Architecture. 3e. Pearson, Hamacher, Vranesic, Zaky. Computer Organization, 5e. Tata McGraw Hill, John P Hayes. Computer Architecture and Organization, 3e. McGraw Hill, David Harris and Sarah Harris. Digital Design and Computer Architecture. 2e. MK NPTEL Courses ( Matthew Jacob High Performance Computing, Bhaskaran Raman Computer Organisation and Architecture, S. Raman Computer Organization, Jatindra Kumar Deka Computer Organisation and Architecture.

31 Extra Slides

32 The Program int main() { int a=2, b=3, sum=0; sum = a + b; b; Variables memory locations Load the values from memory Arithmetic operation Addition Store the sum into memory

33 int int main() { int int i, i, a[5]={2,3,5,7,11, sum=0; for(i=0;i<5;i++) sum sum = sum sum + a[i]; Variables memory locations Load the values from memory Store the sum into memory Arithmetic operation Addition Condition evaluation

34 A Bigger Program int int calculate_sum(int a[], a[], int int i) i) { int int sum=0; i=0; i=0; for(i=0;i<5;i++) sum sum = sum sum + a[i]; return sum; sum; int int main() { int int i, i, a[5]={2,3,5,7,11, sum=0; sum=calculate_sum(a, 5); 5); Variables memory locations Load the values from memory Store the sum into memory Arithmetic operation Addition Condition evaluation Function call, return, parameters pass and return

35 What do we learn in this course? What does a computer do? X = 10; Y = 20; X = 20; Y = 10;

36 The Binary Code Code for tasks to perform. Program Hardware interprets the code Decode Hardware accomplishes the task Execute

37 The Processor The processor decodes and executes the binary code Where does the code reside? PROCESSOR MEMORY Decodes, Executes Instructions Stores programs

38 The Computer System PROCESSOR MEMORY Hard Drive

39 The Computer System PROCESSOR MEMORY Interconnect I/O Devices I/O Devices I/O Devices

40 Computer Organization and Architecture Not in this Course Binary Code Hardware Units The The Binary Program (a.out) Instructions Data Data Function Calls Calls ALU ALU Design Datapath Design Control Unit Unit Design Memory Hierarchy Pipelining I/O I/O Processing Parallel Processing

41 What do we learn in this course? What does a computer do? v[k] = 10; v[k+1] = 20; v[k] = 20; v[k+1] = 10; C Program Binary Code Execution Compiler Hardware

42 return of the Binary Code Program Instructions and Data Instructions Arithmetic, Logic, Memory transfer, and others. Data Characters, Integers, Floating point numbers, etc.

43 This Course Decode, Execute Program Layout (Instructions and Data) How are bits stored? PROCESSOR MEMORY Interconnect I/O Devices I/O Devices I/O Devices Input and Output Devices, Communication A whole lot more!!!

COURSE DELIVERY PLAN - THEORY Page 1 of 6

COURSE DELIVERY PLAN - THEORY Page 1 of 6 COURSE DELIVERY PLAN - THEORY Page 1 of 6 Department of Information Technology B.E/B.Tech/M.E/M.Tech : B.Tech Information Technology Regulation: 2013 Sub. Code / Sub. Name : CS6303 / Computer Architecture

More information

Day Hour Timing pm pm am am

Day Hour Timing pm pm am am SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF SOFTWARE ENGINEERING COURSE PLAN Course Code : SE1002 Course Title : COMPUTER ORGANIZATION AND ARCHITECTURE Semester

More information

COURSE DELIVERY PLAN - THEORY Page 1 of 6

COURSE DELIVERY PLAN - THEORY Page 1 of 6 COURSE DELIVERY PLAN - THEORY Page 1 of 6 Department of Information Technology B.E/B.Tech/M.E/M.Tech : B.Tech Information Technology Regulation: 2013 Sub. Code / Sub. Name : CS6303 / Computer Architecture

More information

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

Math 230 Assembly Programming (AKA Computer Organization) Spring MIPS Intro Math 230 Assembly Programming (AKA Computer Organization) Spring 2008 MIPS Intro Adapted from slides developed for: Mary J. Irwin PSU CSE331 Dave Patterson s UCB CS152 M230 L09.1 Smith Spring 2008 MIPS

More information

EECE 321: Computer Organization

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

More information

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

CO403 Advanced Microprocessors IS860 - High Performance Computing for Security. Basavaraj Talawar, CO403 Advanced Microprocessors IS860 - High Performance Computing for Security Basavaraj Talawar, basavaraj@nitk.edu.in Course Syllabus Technology Trends: Transistor Theory. Moore's Law. Delay, Power,

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

High Performance Computing Lecture 1. Matthew Jacob Indian Institute of Science

High Performance Computing Lecture 1. Matthew Jacob Indian Institute of Science High Performance Computing Lecture 1 Matthew Jacob Indian Institute of Science Agenda 1. Program execution: Compilation, Object files, Function call and return, Address space, Data & its representation

More information

SISTEMI EMBEDDED. Computer Organization Central Processing Unit (CPU) Federico Baronti Last version:

SISTEMI EMBEDDED. Computer Organization Central Processing Unit (CPU) Federico Baronti Last version: SISTEMI EMBEDDED Computer Organization Central Processing Unit (CPU) Federico Baronti Last version: 20170516 Processing Unit A processor reads program instructions from the computer s memory and executes

More information

High Performance Computing

High Performance Computing High Performance Computing CS701 and IS860 Basavaraj Talawar basavaraj@nitk.edu.in Course Syllabus Definition, RISC ISA, RISC Pipeline, Performance Quantification Instruction Level Parallelism Pipeline

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

SAMPLE CHAPTERS UNESCO-EOLSS COMPUTER ARCHITECTURE. Prabhat Mishra University of Florida, Gainesville, Florida, U.S.A.

SAMPLE CHAPTERS UNESCO-EOLSS COMPUTER ARCHITECTURE. Prabhat Mishra University of Florida, Gainesville, Florida, U.S.A. COMPUTER ARCHITECTURE Prabhat Mishra University of Florida, Gainesville, Florida, U.S.A. Keywords: computer organization, datapath and control, cache coherence, instructionset, pipelining, hazards, exceptions,

More information

Single cycle MIPS data path without Forwarding, Control, or Hazard Unit

Single cycle MIPS data path without Forwarding, Control, or Hazard Unit Single cycle MIPS data path without Forwarding, Control, or Hazard Unit Figure 1: an Overview of a MIPS datapath without Control and Forwarding (Patterson & Hennessy, 2014, p. 287) A MIPS 1 single cycle

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

Computer Logic II CCE 2010

Computer Logic II CCE 2010 Computer Logic II CCE 2010 Dr. Owen Casha Computer Logic II 1 The Processing Unit Computer Logic II 2 The Processing Unit In its simplest form, a computer has one unit that executes program instructions.

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

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

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

CISC 662 Graduate Computer Architecture. Lecture 4 - ISA

CISC 662 Graduate Computer Architecture. Lecture 4 - ISA CISC 662 Graduate Computer Architecture Lecture 4 - ISA Michela Taufer http://www.cis.udel.edu/~taufer/courses Powerpoint Lecture Notes from John Hennessy and David Patterson s: Computer Architecture,

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

COMPUTER ARCHITECTURE AND OPERATING SYSTEMS (CS31702)

COMPUTER ARCHITECTURE AND OPERATING SYSTEMS (CS31702) COMPUTER ARCHITECTURE AND OPERATING SYSTEMS (CS31702) Syllabus Architecture: Basic organization, fetch-decode-execute cycle, data path and control path, instruction set architecture, I/O subsystems, interrupts,

More information

Processor: Multi- Cycle Datapath & Control

Processor: Multi- Cycle Datapath & Control Processor: Multi- Cycle Datapath & Control (Based on text: David A. Patterson & John L. Hennessy, Computer Organization and Design: The Hardware/Software Interface, 3 rd Ed., Morgan Kaufmann, 27) COURSE

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. 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

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

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

Computer Organization

Computer Organization Computer Organization Dr. Lokesh Chouhan Assistant Professor Computer Science and Engineering (CSE) Department National Institute of Technology (NIT) Hamirpur (H.P.) INDIA Website: http://nith.ac.in/newweb/computer-science-engineering/

More information

Chapter 4. Instruction Execution. Introduction. CPU Overview. Multiplexers. Chapter 4 The Processor 1. The Processor.

Chapter 4. Instruction Execution. Introduction. CPU Overview. Multiplexers. Chapter 4 The Processor 1. The Processor. COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor The Processor - Introduction

More information

COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor

COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition The Processor - Introduction

More information

COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor

COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle

More information

Textbook : [WH book] CMOS VLSI Design by Neil H. E. Weste, David F. Harris, Pearson

Textbook : [WH book] CMOS VLSI Design by Neil H. E. Weste, David F. Harris, Pearson NPTEL-Phase-II : Course : Advanced VLSI Design Question Set for Module 5 and Module 6 : prepared by Dr. Sachin B. Patkar ( Professor, Dept. EE, IIT Bombay ) Module 5: FSM Controller/Datapath and Processor

More information

COURSE DESCRIPTION. CS 232 Course Title Computer Organization. Course Coordinators

COURSE DESCRIPTION. CS 232 Course Title Computer Organization. Course Coordinators COURSE DESCRIPTION Dept., Number Semester hours CS 232 Course Title Computer Organization 4 Course Coordinators Badii, Joseph, Nemes 2004-2006 Catalog Description Comparative study of the organization

More information

CISC 662 Graduate Computer Architecture. Lecture 4 - ISA MIPS ISA. In a CPU. (vonneumann) Processor Organization

CISC 662 Graduate Computer Architecture. Lecture 4 - ISA MIPS ISA. In a CPU. (vonneumann) Processor Organization CISC 662 Graduate Computer Architecture Lecture 4 - ISA MIPS ISA Michela Taufer http://www.cis.udel.edu/~taufer/courses Powerpoint Lecture Notes from John Hennessy and David Patterson s: Computer Architecture,

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

Computer Systems and Networks

Computer Systems and Networks University of the Pacific LECTURE 15: MIPS (FOR LAB 10) Computer Systems and Networks Dr. Pallipuram (vpallipuramkrishnamani@pacific.edu) Notes on MIPS Lectures When in a MIPS lecture, pay complete attention

More information

DC57 COMPUTER ORGANIZATION JUNE 2013

DC57 COMPUTER ORGANIZATION JUNE 2013 Q2 (a) How do various factors like Hardware design, Instruction set, Compiler related to the performance of a computer? The most important measure of a computer is how quickly it can execute programs.

More information

Lecture 3: Instruction Set Architecture

Lecture 3: Instruction Set Architecture Lecture 3: Instruction Set Architecture CSE 30: Computer Organization and Systems Programming Summer 2014 Diba Mirza Dept. of Computer Science and Engineering University of California, San Diego 1. Steps

More information

Superscalar Processors Ch 13. Superscalar Processing (5) Computer Organization II 10/10/2001. New dependency for superscalar case? (8) Name dependency

Superscalar Processors Ch 13. Superscalar Processing (5) Computer Organization II 10/10/2001. New dependency for superscalar case? (8) Name dependency Superscalar Processors Ch 13 Limitations, Hazards Instruction Issue Policy Register Renaming Branch Prediction 1 New dependency for superscalar case? (8) Name dependency (nimiriippuvuus) two use the same

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

Systems Architecture

Systems Architecture Systems Architecture Lecture 15: A Simple Implementation of MIPS Jeremy R. Johnson Anatole D. Ruslanov William M. Mongan Some or all figures from Computer Organization and Design: The Hardware/Software

More information

Modern Processors. RISC Architectures

Modern Processors. RISC Architectures Modern Processors RISC Architectures Figures used from: Manolis Katevenis, RISC Architectures, Ch. 20 in Zomaya, A.Y.H. (ed), Parallel and Distributed Computing Handbook, McGraw-Hill, 1996 RISC Characteristics

More information

Administrivia. Minute Essay From 4/11

Administrivia. Minute Essay From 4/11 Administrivia All homeworks graded. If you missed one, I m willing to accept it for partial credit (provided of course that you haven t looked at a sample solution!) through next Wednesday. I will grade

More information

: Computer Architecture

: Computer Architecture Jin-Soo Kim (jinsoo.kim@snu.ac.kr) Systems Software & Architecture Lab. Seoul National University 4190.308: Computer Architecture Fall 2018 Schedule 9:30 10:45 (Tuesday & Thursday) Lecture room: Engineering

More information

Embedded Systems Entry Test

Embedded Systems Entry Test ES entry test, September 2016, Page 1 of 5 DELFT UNIVERSITY OF TECHNOLOGY Faculty of Electrical Engineering, Mathematics, and Computer Science MSc. Embedded Systems Embedded Systems Entry Test 2016 This

More information

Many ways to build logic out of MOSFETs

Many ways to build logic out of MOSFETs Many ways to build logic out of MOSFETs pass transistor logic (most similar to the first switch logic we saw) static CMOS logic (what we saw last time) dynamic CMOS logic Clock=0 precharges X through the

More information

DYNAMIC INSTRUCTION SCHEDULING WITH SCOREBOARD

DYNAMIC INSTRUCTION SCHEDULING WITH SCOREBOARD DYNAMIC INSTRUCTION SCHEDULING WITH SCOREBOARD Slides by: Pedro Tomás Additional reading: Computer Architecture: A Quantitative Approach, 5th edition, Chapter 3, John L. Hennessy and David A. Patterson,

More information

COS 471A,COS 471B/ELE 375 Midterm

COS 471A,COS 471B/ELE 375 Midterm COS 471A,COS 471B/ELE 375 Midterm Prof: David August TAs : Jonathan Chang Junwen Lai Neil Vachharajani Fall 2004 Please write your answers clearly in the space provided. For partial credit, show all work.

More information

Implementation of a pipelined MIPS CPU with single cycle

Implementation of a pipelined MIPS CPU with single cycle Implementation of a pipelined MIPS CPU with single cycle S.G.Nafreen Sultana 1, K.Sudhakar 2 K.PrasadBabu 3 S.Ahmed Basha 4 1 15G31D0610 M.Tech DSCE, Sjcet, Yerrakota, Kurnool, Andhra Pradesh India 2 HOD

More information

Exam in Computer Architecture

Exam in Computer Architecture Exam in Computer Architecture Justin Pearson 2002-03-07 Cover Sheet Problem no. Solution provided Max Your points 1 1 2 6 3 14 4 9 5 13 6 11 7 10 Total: 64 Name :...................................................

More information

Academic Course Description. EM2101 Computer Architecture

Academic Course Description. EM2101 Computer Architecture Academic Course Description SRM University Faculty of Engineering and Technology Department of Electronics and Communication Engineering EM2101 Computer Architecture Third Semester, 2015-2016 (Odd Semester)

More information

18. Machine Language. Computer Systems. COMP1917: Computing 1. Machine Language Programming. History of Computer Technology

18. Machine Language. Computer Systems. COMP1917: Computing 1. Machine Language Programming. History of Computer Technology COMP1917 13s2 18. Machine Language 1 COMP1917: Computing 1 18. Machine Language Computer Systems Recall: modern computer systems are layered. Applications Programming Language Operating System Assembly

More information

ECE 486/586. Computer Architecture. Lecture # 7

ECE 486/586. Computer Architecture. Lecture # 7 ECE 486/586 Computer Architecture Lecture # 7 Spring 2015 Portland State University Lecture Topics Instruction Set Principles Instruction Encoding Role of Compilers The MIPS Architecture Reference: Appendix

More information

Introduction to Programming in C Department of Computer Science and Engineering. Lecture No. #13. Loops: Do - While

Introduction to Programming in C Department of Computer Science and Engineering. Lecture No. #13. Loops: Do - While Introduction to Programming in C Department of Computer Science and Engineering Lecture No. #13 Loops: Do - While So far we have been using while loops in C, now C programming language also provides you

More information

Computer Systems and Networks

Computer Systems and Networks University of the Pacific LECTURE 15: MIPS (FOR LAB 10) Computer Systems and Networks Dr. Pallipuram (vpallipuramkrishnamani@pacific.edu) Some Deadlines Lab 8 hard deadline 17 th NOV 5 AM Lab 9 due 15

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

Memory Hierarchy. ENG3380 Computer Organization and Architecture Cache Memory Part II. Topics. References. Memory Hierarchy

Memory Hierarchy. ENG3380 Computer Organization and Architecture Cache Memory Part II. Topics. References. Memory Hierarchy ENG338 Computer Organization and Architecture Part II Winter 217 S. Areibi School of Engineering University of Guelph Hierarchy Topics Hierarchy Locality Motivation Principles Elements of Design: Addresses

More information

CS31001 COMPUTER ORGANIZATION AND ARCHITECTURE. Debdeep Mukhopadhyay, CSE, IIT Kharagpur. Instructions and Addressing

CS31001 COMPUTER ORGANIZATION AND ARCHITECTURE. Debdeep Mukhopadhyay, CSE, IIT Kharagpur. Instructions and Addressing CS31001 COMPUTER ORGANIZATION AND ARCHITECTURE Debdeep Mukhopadhyay, CSE, IIT Kharagpur Instructions and Addressing 1 ISA vs. Microarchitecture An ISA or Instruction Set Architecture describes the aspects

More information

Review Topics. Midterm Exam Review Slides

Review Topics. Midterm Exam Review Slides Review Topics Midterm Exam Review Slides Original slides from Gregory Byrd, North Carolina State University Modified slides by Chris Wilcox, Colorado State University!! Computer Arithmetic!! Combinational

More information

WELCOME TO CS 16! Problem Solving with Computers-I

WELCOME TO CS 16! Problem Solving with Computers-I WELCOME TO CS 16! Problem Solving with Computers-I 2 Instructor/TAs Lawton Nichols I m just a PhD Student, so you don t have to call me professor Office hours: Tuesday, Thursday: 3:30pm 4:30pm in the TA

More information

CS Computer Architecture

CS Computer Architecture CS 35101 Computer Architecture Section 600 Dr. Angela Guercio Fall 2010 Computer Systems Organization The CPU (Central Processing Unit) is the brain of the computer. Fetches instructions from main memory.

More information

ECE410 Design Project Spring 2013 Design and Characterization of a CMOS 8-bit pipelined Microprocessor Data Path

ECE410 Design Project Spring 2013 Design and Characterization of a CMOS 8-bit pipelined Microprocessor Data Path ECE410 Design Project Spring 2013 Design and Characterization of a CMOS 8-bit pipelined Microprocessor Data Path Project Summary This project involves the schematic and layout design of an 8-bit microprocessor

More information

FPGA Implementation of MIPS RISC Processor

FPGA Implementation of MIPS RISC Processor FPGA Implementation of MIPS RISC Processor S. Suresh 1 and R. Ganesh 2 1 CVR College of Engineering/PG Student, Hyderabad, India 2 CVR College of Engineering/ECE Department, Hyderabad, India Abstract The

More information

Computer Organization And Design Revised Fourth Edition Solutions Manual

Computer Organization And Design Revised Fourth Edition Solutions Manual Computer Organization And Design Revised Fourth Edition Solutions Manual COMPUTER ORGANIZATION AND DESIGN REVISED FOURTH EDITION SOLUTIONS MANUAL PDF - Are you looking for computer organization and design

More information

Computer Organization and Architecture (CSCI-365) Sample Final Exam

Computer Organization and Architecture (CSCI-365) Sample Final Exam Computer Organization and Architecture (CSCI-365) Sample Final Exam NAME: STUDENT NUMBER 1. Consider a computer system with 64Kbytes main memory and 256bytes cache. If we assume the cache line size is

More information

Computer Organization And Design Solutions 4th Edition

Computer Organization And Design Solutions 4th Edition COMPUTER ORGANIZATION AND DESIGN SOLUTIONS 4TH EDITION PDF - Are you looking for computer organization and design solutions 4th edition Books? Now, you will be happy that at this time computer organization

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

Laboratory Single-Cycle MIPS CPU Design (4): 16-bits version One clock cycle per instruction

Laboratory Single-Cycle MIPS CPU Design (4): 16-bits version One clock cycle per instruction Laboratory 7 7. Single-Cycle MIPS CPU Design (4): 16-bits version One clock cycle per instruction 7.1. Objectives Study, design, implement and test Instruction Execute Unit for the 16-bit Single-Cycle

More information

Introduction to Digital Logic Missouri S&T University CPE 2210 Multipliers/Dividers

Introduction to Digital Logic Missouri S&T University CPE 2210 Multipliers/Dividers Introduction to Digital Logic Missouri S&T University CPE 2210 Multipliers/Dividers Egemen K. Çetinkaya Egemen K. Çetinkaya Department of Electrical & Computer Engineering Missouri University of Science

More information

Chapter 2, Part III Arithmetic Operators and Decision Making

Chapter 2, Part III Arithmetic Operators and Decision Making Chapter 2, Part III Arithmetic Operators and Decision Making C How to Program, 8/e, GE 2016 Pearson Education, Ltd. All rights reserved. 1 2016 Pearson Education, Ltd. All rights reserved. 2 2016 Pearson

More information

Procedure Calling. Procedure Calling. Register Usage. 25 September CSE2021 Computer Organization

Procedure Calling. Procedure Calling. Register Usage. 25 September CSE2021 Computer Organization CSE2021 Computer Organization Chapter 2: Part 2 Procedure Calling Procedure (function) performs a specific task and return results to caller. Supporting Procedures Procedure Calling Calling program place

More information

Operators & Expressions

Operators & Expressions Operators & Expressions Operator An operator is a symbol used to indicate a specific operation on variables in a program. Example : symbol + is an add operator that adds two data items called operands.

More information

CSE 20. Lecture 4: Number System and Boolean Function. CSE 20: Lecture2

CSE 20. Lecture 4: Number System and Boolean Function. CSE 20: Lecture2 CSE 20 Lecture 4: Number System and Boolean Function Next Weeks Next week we will do Unit:NT, Section 1. There will be an assignment set posted today. It is just for practice. Boolean Functions and Number

More information

Chapter 2 Lecture 1 Computer Systems Organization

Chapter 2 Lecture 1 Computer Systems Organization Chapter 2 Lecture 1 Computer Systems Organization This chapter provides an introduction to the components Processors: Primary Memory: Secondary Memory: Input/Output: Busses The Central Processing Unit

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 313 Computer Organization FINAL EXAM December 13, 2000

ECE 313 Computer Organization FINAL EXAM December 13, 2000 This exam is open book and open notes. You have until 11:00AM. Credit for problems requiring calculation will be given only if you show your work. 1. Floating Point Representation / MIPS Assembly Language

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

COMPUTER ORGANIZATION & ARCHITECTURE

COMPUTER ORGANIZATION & ARCHITECTURE COMPUTER ORGANIZATION & ARCHITECTURE Instructions Sets Architecture Lesson 5a 1 What are Instruction Sets The complete collection of instructions that are understood by a CPU Can be considered as a functional

More information

Lecture 7: Instruction Set Architectures - IV

Lecture 7: Instruction Set Architectures - IV Lecture 7: Instruction Set Architectures - IV Last Time Register organization Memory issues (endian-ness, alignment, etc.) Today Exceptions General principles of ISA design Role of compiler Computer arithmetic

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

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

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 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

Computer Organization And Design 3rd Edition Solution Manual

Computer Organization And Design 3rd Edition Solution Manual Computer Organization And Design 3rd Edition Solution Manual We have made it easy for you to find a PDF Ebooks without any digging. And by having access to our ebooks online or by storing it on your computer,

More information

Arithmetic and Bitwise Operations on Binary Data

Arithmetic and Bitwise Operations on Binary Data Arithmetic and Bitwise Operations on Binary Data CSCI 2400: Computer Architecture ECE 3217: Computer Architecture and Organization Instructor: David Ferry Slides adapted from Bryant & O Hallaron s slides

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

SISTEMI EMBEDDED. Computer Organization Pipelining. Federico Baronti Last version:

SISTEMI EMBEDDED. Computer Organization Pipelining. Federico Baronti Last version: SISTEMI EMBEDDED Computer Organization Pipelining Federico Baronti Last version: 20160518 Basic Concept of Pipelining Circuit technology and hardware arrangement influence the speed of execution for programs

More information

MICROPROCESSOR FUNDAMENTALS SYLLABUS

MICROPROCESSOR FUNDAMENTALS SYLLABUS MICROPROCESSOR FUNDAMENTALS SYLLABUS This document includes the set of rules that regulates the Microprocessor Fundamentals subject, which is part of the Telecommunication Technologies and Services Engineering

More information

Course Outline Computing Science Department. Faculty of Science. COMP Credits Introduction to Computer Systems (3,1,0) Fall 2015

Course Outline Computing Science Department. Faculty of Science. COMP Credits Introduction to Computer Systems (3,1,0) Fall 2015 Coue Outline Computing Science Department Faculty of Science COMP 2130 3 Credits Introduction to Computer Systems (3,1,0) Fall 2015 Instructor: Office: Office Hou: Phone/Voice Mail: E-Mail: CALEND DESCRIPTION

More information

Computer Science /21/2000

Computer Science /21/2000 Computer Science 126 01/21/2000 Final Exam with Answers 1:30-4:30pm 1. Linked Lists and Recursion [11] This is based on final review question #6. Assume the following linked list definition. typedef struct

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

Course overview. Introduction to Computer Yung-Yu Chuang. with slides by Nisan & Schocken (www.nand2tetris.org)

Course overview. Introduction to Computer Yung-Yu Chuang. with slides by Nisan & Schocken (www.nand2tetris.org) Course overview Introduction to Computer Yung-Yu Chuang with slides by Nisan & Schocken (www.nand2tetris.org) Logistics Meeting time: 2:20pm-5:20pm, Tuesday Classroom: CSIE Room 104 Instructor: 莊永裕 Yung-Yu

More information

Introduction. Arizona State University 1

Introduction. Arizona State University 1 Introduction CSE100 Principles of Programming with C++, Fall 2018 (based off Chapter 1 slides by Pearson) Ryan Dougherty Arizona State University http://www.public.asu.edu/~redoughe/ Arizona State University

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

COMPUTER ARCHITECTURE

COMPUTER ARCHITECTURE COURSE: COMPUTER ARCHITECTURE per week: Lectures 3h Lab 2h For the specialty: COMPUTER SYSTEMS AND TECHNOLOGIES Degree: BSc Semester: VII Lecturer: Assoc. Prof. PhD P. BOROVSKA Head of Computer Systems

More information

ECE 15B Computer Organization Spring 2011

ECE 15B Computer Organization Spring 2011 ECE 15B Computer Organization Spring 2011 Dmitri Strukov Partially adapted from Computer Organization and Design, 4 th edition, Patterson and Hennessy, Agenda Instruction formats Addressing modes Advanced

More information

Math 230 Assembly Programming (AKA Computer Organization) Spring 2008

Math 230 Assembly Programming (AKA Computer Organization) Spring 2008 Math 230 Assembly Programming (AKA Computer Organization) Spring 2008 MIPS Intro II Lect 10 Feb 15, 2008 Adapted from slides developed for: Mary J. Irwin PSU CSE331 Dave Patterson s UCB CS152 M230 L10.1

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

Week 1 Introduction to Computer and Algorithm (Part1) UniMAP Sem II 11/12 DKT121: Basic Computer Programming 1

Week 1 Introduction to Computer and Algorithm (Part1) UniMAP Sem II 11/12 DKT121: Basic Computer Programming 1 Week 1 Introduction to Computer and Algorithm (Part1) UniMAP Sem II 11/12 DKT121: Basic Computer Programming 1 General Information Contributes 3 units: 2 hours lectures 2 hours labs and tutorials Main

More information