Processors. Nils Jansen and Kasper Brink. (based on slides from Jeroen Keiren, Marc Seutter and David N. Jansen)

Similar documents
How does the CPU execute programs? Nils Jansen December 5, 2017 (Based on slides by Jeroen Keiren and Niek Janssen)

CS Computer Architecture

Introduction. Computer System Organization. Languages, Levels, Virtual Machines. A multilevel machine. Sarjana Magister Program

Computer Organization & Assembly Language Programming. CSE 2312 Lecture 2 Introduction to Computers

Computer Architecture I (1DT016) Cary Laxer, Ph.D. Visiting Lecturer

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

2. Computer Evolution and Performance

The Stored Program Computer

Computer Architecture Review. ICS332 - Spring 2016 Operating Systems

Information Science 1

Introduction. Chapter 1

ECE 15B COMPUTER ORGANIZATION

CS101 Lecture 25: The Machinery of Computation: Computer Architecture. John Magee 29 July 2013 Some material copyright Jones and Bartlett

Systems Architecture

Update on logistics ECS 15

COMP3221: Microprocessors and. Embedded Systems

CS 101 INTRODUCTION TO COMPUTING

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

COMS 1003 Fall Introduction to Computer Programming in C. History & Computer Organization. September 15 th

NWI-IBC019: Operating systems. Nils Jansen and Bernard van Gastel

Microprocessor. Dr. Rabie A. Ramadan. Al-Azhar University Lecture 1

Computer Systems & Architecture

Computer Systems. Binary Representation. Binary Representation. Logical Computation: Boolean Algebra

Microprocessor (COM 9323)

7/28/ Prentice-Hall, Inc Prentice-Hall, Inc Prentice-Hall, Inc Prentice-Hall, Inc Prentice-Hall, Inc.

Machine Architecture. or what s in the box? Lectures 2 & 3. Prof Leslie Smith. ITNP23 - Autumn 2014 Lectures 2&3, Slide 1

CHAPTER 1 Introduction

Chronological History of the Pre-Computer Developments

Inf2C - Computer Systems Lecture 1 Course overview & the big picture

Welcome to. Instructor Marc Pomplun CS 470/670. Introduction to Artificial Intelligence 1/26/2016. Spring Selectivity in Complex Scenes

CS 101, Mock Computer Architecture

The due date for submitting this assignment has passed. 1) Which of the following statements regarding a microcomputer, a

SYSTEM BUS AND MOCROPROCESSORS HISTORY

CHAPTER 1 Introduction

HISTORY OF CALCULATION. Evolution of Computation

COSC 243. Computer Architecture 1. COSC 243 (Computer Architecture) Lecture 6 - Computer Architecture 1 1

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

Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Computing Layers

what operations can it perform? how does it perform them? on what kind of data? where are instructions and data stored?

Babbage Analytical Machine

FUNCTIONS OF COMPONENTS OF A PERSONAL COMPUTER

Chapter 4 The Von Neumann Model

Von Neumann Architecture

William Stallings Computer Organization and Architecture 8 th Edition. Chapter 2 Computer Evolution and Performance

CS 31: Intro to Systems Digital Logic. Kevin Webb Swarthmore College February 2, 2016

Agenda EE 224: INTRODUCTION TO DIGITAL CIRCUITS & COMPUTER DESIGN. Lecture 1: Introduction. Go over the syllabus 3/31/2010

Knowledge Organiser. Computing. Year 10 Term 1 Hardware

Computer Organization and Levels of Abstraction

CIT 668: System Architecture

Microprocessors I MICROCOMPUTERS AND MICROPROCESSORS

Computers in Engineering COMP 208. A Brief History. Mechanical Calculators. A Historic Perspective Michael A. Hawker

Computers in Engineering COMP 208

CPSC 121: Models of Computation

Figure 1-1. A multilevel machine.

Chapter 4 The Von Neumann Model

Evolution of the Computer

Computer Systems Architecture

LC-3 Architecture. (Ch4 ish material)

Quiz on Ch.4 is at the end of Ch.4 slides

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

Introduction to Computer Engineering. CS/ECE 252 Prof. Mark D. Hill Computer Sciences Department University of Wisconsin Madison

Welcome to COS151! 1.1

Computer & Microprocessor Architecture HCA103

CS 31: Intro to Systems Digital Logic. Kevin Webb Swarthmore College February 3, 2015

Computer Evolution. Budditha Hettige. Department of Computer Science

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 01, SPRING 2013

Computer System architectures

ENIAC - background. ENIAC - details. Structure of von Nuemann machine. von Neumann/Turing Computer Architecture

CSE 240 Introduction to Computer Architecture

Overview of Computer Organization. Chapter 1 S. Dandamudi

CS1100 Introduction to Programming

Computer Evolution. Computer Generation. The Zero Generation (3) Charles Babbage. First Generation- Time Line

Alternate definition: Instruction Set Architecture (ISA) What is Computer Architecture? Computer Organization. Computer structure: Von Neumann model

Chapter 1: The General Purpose Machine

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

Overview of Computer Organization. Outline

Computer Systems. Hardware, Software and Layers of Abstraction

C Programming for Engineers Introduction

CS 3410 Computer System Organization and Programming

Computer Organization and Levels of Abstraction

Memory. Hakim Weatherspoon CS 3410, Spring 2013 Computer Science Cornell University

CS 3410 Computer System Organization and Programming

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

The von Neumann Machine

EITF20: Computer Architecture Part1.1.1: Introduction

Fundamental concepts of Information Technology

Copyright 2012 Pearson Education, Inc. Publishing as Prentice Hall

Lecture 1: Gentle Introduction to GPUs

CS 265. Computer Architecture. Wei Lu, Ph.D., P.Eng.

Computer Architecture

1: History, Generation & Classification. Shobhanjana Kalita, Dept. of CSE, Tezpur University

Computer Architecture

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

Chapter 4 The Von Neumann Model

COURSE OVERVIEW. Introduction to Computer Engineering 2015 Spring by Euiseong Seo

3.1 Description of Microprocessor. 3.2 History of Microprocessor

Chapter 1: General Purpose Machine

Computer Technology & Abstraction

Computers Are Your Future

Chapter 2. Perkembangan Komputer

Transcription:

Processors Nils Jansen and Kasper Brink (based on slides from Jeroen Keiren, Marc Seutter and David N. Jansen) https://ocw.cs.ru.nl/nwi-ipc006

Student Assistants Jordi Riemens Jasper Haasdijk Niek Janssen Gijs Hendriksen jordi.riemens@student.ru.nl J.Haasdijk@student.ru.nl niek.janssen01@gmail.com gijs.hendriksen@student.ru.nl 2

Lecturers Kasper Brink Nils Jansen K.Brink@cs.ru.nl n.jansen@science.ru.nl 3

Nils Jansen Aachen, Germany Austin, Texas Research: Formal Verification, Machine Learning, Robotics Hobbies: Reading, Eating, Bars, Trumpet, Guitar 4

Lecture and Werkcollege Lecture on Tuesday at 13:45 Lecture highlights important contents Read the material in the book Werkcollege on Wednesday at 08:45 Starts on 22.11.2017 Discussion of homework and additional exercises 5

Weekly Homework At https://ocw.cs.ru.nl/nwi-ipc006 we will upload all important content such as lecture slides and homework. Weekly homework needs to be handed in each Friday at 6pm, either electronically or on paper, depending on the preferences of the student assistant. Needs to be submitted in groups of two! 6

Practical Assignment The practical assignment (practicum) will be announced and uploaded in a few weeks. Task: Design your own CPU based on a partial description that is given to you Graphical simulation tool Hades: https://tamswww.informatik.uni-hamburg.de/applets/hades/ webdemos/index.html Needs to be submitted in groups of two! 7

Evaluation The grade is the (lower) rounded average of the grade for the practical assignment and the written exam with the following additional conditions: you cannot pass with one grade < 5 you can get a bonus point from the weekly assignments, if you have no more than two insufficient grades there 8

Bonus for Weekly Assignments There are 6 assignments If you get at least 4 sufficient marks for the assignments, you will get a bonus of one point that will be added to the lower of your two partial grades. 9

Consequences of Fraud (Cheating) no grade for the respective assignment or exam no resit in the same academic year registration in the dossier and no cum laude in the diploma small and identifiable fraud: new or additional assignment serious fraud: exclusion from university possible! 10

Problem Solutions too little time to finish the processor 11

Problem Solutions too little time to finish the processor sign up for resit 11

Problem Solutions too little time to finish the processor sign up for resit evaluation of partial solution 11

Problem Solutions too little time to finish the processor sign up for resit evaluation of partial solution always account for the sources of your solution 11

Problem Solutions too little time to finish the processor sign up for resit evaluation of partial solution always account for the sources of your solution cooperation is not going well 11

Problem Solutions too little time to finish the processor sign up for resit evaluation of partial solution always account for the sources of your solution cooperation is not going well talk with the teachers 11

Responsibilities Homework Reading Practical assignment Active participation in the lecture 12

Time Investment Lecture + werkcolleges 8 2 + 6 2 = 28 Reading 8 1 = 8 Homework 6 1 = 6 Practical Assignment 4 8 + 2 = 34 Exam 6 + 2 = 8 Total (3 ec) 84 13

Goals 14

Goals Insights in the structure of the hardware of a computer and into the instructions of processors. 14

Goals Insights in the structure of the hardware of a computer and into the instructions of processors. 14

Goals Insights in the structure of the hardware of a computer and into the instructions of processors. You know the basic principles of computer organization. 14

Goals Insights in the structure of the hardware of a computer and into the instructions of processors. You know the basic principles of computer organization. You can describe the different abstraction levels of the architecture of a modern computer. 14

Goals Insights in the structure of the hardware of a computer and into the instructions of processors. You know the basic principles of computer organization. You can describe the different abstraction levels of the architecture of a modern computer. You can explain the relationship between a processor's organization and its instruction set. 14

Goals Insights in the structure of the hardware of a computer and into the instructions of processors. You know the basic principles of computer organization. You can describe the different abstraction levels of the architecture of a modern computer. You can explain the relationship between a processor's organization and its instruction set. You know some ways to improve the performance of a processor. 14

Goals Insights in the structure of the hardware of a computer and into the instructions of processors. You know the basic principles of computer organization. You can describe the different abstraction levels of the architecture of a modern computer. You can explain the relationship between a processor's organization and its instruction set. You know some ways to improve the performance of a processor. You have some knowledge of circuit design, processor design and assembly programming. 14

Overview approach: bottom up 15

Overview approach: bottom up computer structure (today) 15

Overview approach: bottom up computer structure (today) CPU structure 15

Overview approach: bottom up computer structure (today) CPU structure electrical signals 15

Overview approach: bottom up computer structure (today) CPU structure electrical signals how is code executed? instruction set architecture, machine code 15

Overview approach: bottom up computer structure (today) CPU structure electrical signals how is code executed? instruction set architecture, machine code assembly as simple programing language 15

CPU Structure: Von-Neumann-Architecture Nils Jansen and Kasper Brink

17

Machine Code vs. High-level Language Humans can t understand machine language, using high-level language directly on the computer is not efficient how to approach this gap? 17

Languages, Levels, and Virtual Machines translation vs. interpretation cost-efficiency vs. usability specific machine language for each machine A multilevel machine 18

A Six-level Computer 19

A Six-level Computer gates get signals 0 or 1, compute output functions (AND, OR), may form memory or even computing engine 19

A Six-level Computer ALU (Arithmetic Logic Unit), registers gates get signals 0 or 1, compute output functions (AND, OR), may form memory or even computing engine 19

A Six-level Computer controls data path between ALU and registers ALU (Arithmetic Logic Unit), registers gates get signals 0 or 1, compute output functions (AND, OR), may form memory or even computing engine 19

A Six-level Computer humanunderstandable machine language controls data path between ALU and registers ALU (Arithmetic Logic Unit), registers gates get signals 0 or 1, compute output functions (AND, OR), may form memory or even computing engine 19

Computer Generations Zeroth Generation Mechanical Computers (1642 1945) First Generation Vacuum Tubes (1945 1955) Second Generation Transistors (1955 1965) Third Generation Integrated Circuits (1965 1980) Fourth Generation Very Large Scale Integration (1980?) 20

Moore s Law Moore s law predicts a 60-percent annual increase in the number of transistors that can be put on a chip. The data points given in this figure are memory sizes, in bits. 21

Who s Idea? Idea of a stored-program computer : Konrad Zuse 1936 (Z1) Alan Turing 1936 (Turing Machine) Wikipedia www.zuse.info John von Neumann 1945 (EDVAC), using ideas from Eckert and Mauchly 1943 22 http://www2.lv.psu.edu/ojj/courses/ist-240/ reports/spring2001/fa-cb-bc-kf/1941-1950.html

Von Neumann machine What are the main parts of a computer? 23

Von Neumann machine What are the main parts of a computer? control unit 23

Von Neumann machine What are the main parts of a computer? control unit arithmetic logic unit 23

Von Neumann machine What are the main parts of a computer? control unit arithmetic logic unit memory 23

Von Neumann machine What are the main parts of a computer? control unit arithmetic logic unit memory input and output equipment 23

Von Neumann-architecture Tanenbaum, Structured Computer Organization, Fifth Edition, 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0 24

Von Neumann-architecture 4096 words, 40 bits per word, words may be instructions or (signed) integers Tanenbaum, Structured Computer Organization, Fifth Edition, 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0 24

Von Neumann-architecture 4096 words, 40 bits per word, words may be instructions or (signed) integers CPU Tanenbaum, Structured Computer Organization, Fifth Edition, 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0 24

Von Neumann-architecture 4096 words, 40 bits per word, words may be instructions or (signed) integers CPU Internal register Tanenbaum, Structured Computer Organization, Fifth Edition, 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0 24

Von Neumann-architecture Tanenbaum, Structured Computer Organization, Fifth Edition, 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0 25

Von Neumann-architecture fetch program instructions from main memory execute programs Tanenbaum, Structured Computer Organization, Fifth Edition, 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0 25

Von Neumann-architecture fetch program instructions from main memory execute programs addition, subtraction, other simple operations needed to carry out instructions Tanenbaum, Structured Computer Organization, Fifth Edition, 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0 25

Von Neumann-architecture fetch program instructions from main memory execute programs temporary results, control information, Program Counter (PC) points to next instruction addition, subtraction, other simple operations needed to carry out instructions Tanenbaum, Structured Computer Organization, Fifth Edition, 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0 25

Von Neumann-architecture fetch program instructions from main memory execute programs temporary results, control information, Program Counter (PC) points to next instruction addition, subtraction, other simple operations needed to carry out instructions parallel wires, modern computers have several buses Tanenbaum, Structured Computer Organization, Fifth Edition, 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0 25

Personal Computer 7 2 5 10 6 4 8 6 2 3 8 1 9 1 2 3 4 5 6 7 8 9 10 Pentium 4 socket 875P Support chip Memory sockets AGP connector Disk interface Gigabit Ethernet Five PCI slots USB 2.0 ports Cooling technology BIOS This figure is a photograph of the Intel D875PBZ board. The photograph is copyrighted by the Intel Corporation, 2003 and is used by permission. Tanenbaum, Structured Computer Organization, Fifth Edition, 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0 26

CPU Organization: ALU The data path of a typical Von Neumann machine. 27

CPU Organization: ALU bus The data path of a typical Von Neumann machine. 27

CPU Organization: ALU Data path cycle Registers feed into ALU input registers ALU performs addition, subtraction, and other simple operations Output is stored in register bus The data path of a typical Von Neumann machine. 27

Internal and External Buses 28

Organization of the 8088-CPU http://faculty.etsu.edu/tarnoff/ntes2150/uproc/blck8088.gif 29

Connection of a CPU ship The logical pinout of a generic CPU. The arrows indicate input signals and output signals. The short diagonal lines indicate that multiple pins are used. Tanenbaum, Structured Computer Organization, Fifth Edition, 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0 30

Intel Computer Family (2) Tanenbaum, Structured Computer Organization, Fifth Edition, 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0 31 The Pentium 4 chip. The photograph is copyrighted by the Intel Corporation, 2003 and is used by permission.

CPU Behavior program execution 1. read instruction (address: program counter) (fetch) 2. increase program counter 3. decode instruction (decode) 4. execute instruction 32

Summary What do we expect from you: do your homework do your practical assignment do not cheat take part in the exam actively participate in the lectures and werkcolleges Discussed today: Von-Neumann architecture Structure of CPU 33