ACOE301 – Computer Architecture II

Slides:



Advertisements
Similar presentations
Khaled A. Al-Utaibi  Computers are Every Where  What is Computer Engineering?  Design Levels  Computer Engineering Fields  What.
Advertisements

Chapter 1: Introduction We begin with a brief, introductory look at the components in a computer system We will then consider the evolution of computer.
RISC vs CISC CS 3339 Lecture 3.2 Apan Qasem Texas State University Spring 2015 Some slides adopted from Milo Martin at UPenn.
Spring 2008, Jan. 14 ELEC / Lecture 2 1 ELEC / Computer Architecture and Design Spring 2007 Introduction Vishwani D. Agrawal.
EEM 486 EEM 486: Computer Architecture Lecture 1 Course Introduction and the Five Components of a Computer.
COMP3221: Microprocessors and Embedded Systems Lecture 2: Instruction Set Architecture (ISA) Lecturer: Hui Wu Session.
Chapter 1. Introduction This course is all about how computers work But what do we mean by a computer? –Different types: desktop, servers, embedded devices.
©UCB CS 162 Computer Architecture Lecture 1 Instructor: L.N. Bhuyan
Computer Architecture Instructor: Wen-Hung Liao Office: 大仁樓三樓 Office hours: TBA Course web page:
1  1998 Morgan Kaufmann Publishers Lectures for 2nd Edition Note: these lectures are often supplemented with other materials and also problems from the.
CPEN Digital System Design Chapter 10 – Instruction SET Architecture (ISA) © Logic and Computer Design Fundamentals, 4 rd Ed., Mano Prentice Hall.
EET 4250: Chapter 1 Performance Measurement, Instruction Count & CPI Acknowledgements: Some slides and lecture notes for this course adapted from Prof.
Vacuum tubes Transistor 1948 –Smaller, Cheaper, Less heat dissipation, Made from Silicon (Sand) –Invented at Bell Labs –Shockley, Brittain, Bardeen ICs.
CS 300 – Lecture 2 Intro to Computer Architecture / Assembly Language History.
CIS 314 : Computer Organization Lecture 1 – Introduction.
ECE 232 L1 Intro.1 Adapted from Patterson 97 ©UCBCopyright 1998 Morgan Kaufmann Publishers ECE 232 Hardware Organization and Design Lecture 1 Introduction.
Chapter 1 Sections 1.1 – 1.3 Dr. Iyad F. Jafar Introduction.
Computer Organization and Assembly language
COM181 Computer Hardware Ian McCrumRoom 5B18,
CMSC 611: Advanced Computer Architecture Performance Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted.
1 Instant replay  The semester was split into roughly four parts. —The 1st quarter covered instruction set architectures—the connection between software.
An Introduction Chapter Chapter 1 Introduction2 Computer Systems  Programmable machines  Hardware + Software (program) HardwareProgram.
CCSE251 Introduction to Computer Organization
CPE232 Introduction1 CPE 335 Computer Organization Introduction Dr. Gheith Abandah [Adapted from the slides of Professor Mary Irwin (
Physics 413 Chapter 1 Computer Architecture What is a Digital Computer ? A computer is essentially a fast electronic calculating machine. What is a program.
ACOE255 – Microprocessor Architecture
Fall 2015, Aug 17 ELEC / Lecture 1 1 ELEC / Computer Architecture and Design Fall 2015 Introduction Vishwani D. Agrawal.
EET 4250: Chapter 1 Computer Abstractions and Technology Acknowledgements: Some slides and lecture notes for this course adapted from Prof. Mary Jane Irwin.
CS 6461: Computer Architecture Fall 2013 History and Trends Instructor: Morris Lancaster.
Computers organization & Assembly Language Chapter 0 INTRODUCTION TO COMPUTING Basic Concepts.
CS/ECE 3330 Computer Architecture Kim Hazelwood Fall 2009.
1 Recap (from Previous Lecture). 2 Computer Architecture Computer Architecture involves 3 inter- related components – Instruction set architecture (ISA):
CS1104 – Computer Organization PART 2: Computer Architecture Lecture 12 Overview and Concluding Remarks.
Computer Organization and Design Computer Abstractions and Technology
Computer System Design Lecture 1 Wannarat Suntiamorntut.
Computer Engineering Rabie A. Ramadan Lecture 1. 2 Welcome Back.
Chapter 1 Computer Abstractions and Technology. Chapter 1 — Computer Abstractions and Technology — 2 The Computer Revolution Progress in computer technology.
by Computer System Design Lecture 1 Wannarat Suntiamorntut
AEEC405 – Microprocessor Architecture. Some Information Instructor Details Main Book.
Ted Pedersen – CS 3011 – Chapter 10 1 A brief history of computer architectures CISC – complex instruction set computing –Intel x86, VAX –Evolved from.
EEL 4713/EEL 5764 Computer Architecture Spring Semester 2004 Instructor: Dr. Shonda Walker Required Textbook: Computer Organization & Design, by Patterson.
Computer Architecture Souad MEDDEB
12/13/ _01 1 Computer Organization EEC-213 Computer Organization Electrical and Computer Engineering.
1 chapter 1 Computer Architecture and Design ECE4480/5480 Computer Architecture and Design Department of Electrical and Computer Engineering University.
DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO CS 219 Computer Organization.
Spring 2016, Jan 13 ELEC / Lecture 1 1 ELEC / Computer Architecture and Design Spring 2016 Introduction Vishwani D. Agrawal.
Introduction Computer Organization Spring 1436/37H (2015/16G) Dr. Mohammed Sinky Computer Architecture
Jan. 5, 2000Systems Architecture II1 Machine Organization (CS 570) Lecture 1: Overview of High Performance Processors * Jeremy R. Johnson Wed. Sept. 27,
Compsci Today’s topics l Operating Systems  Brookshear, Chapter 3  Great Ideas, Chapter 10  Slides from Kevin Wayne’s COS 126 course l Performance.
Lecture 1: Introduction CprE 585 Advanced Computer Architecture, Fall 2004 Zhao Zhang.
Computer Organization IS F242. Course Objective It aims at understanding and appreciating the computing system’s functional components, their characteristics,
VU-Advanced Computer Architecture Lecture 1-Introduction 1 Advanced Computer Architecture CS 704 Advanced Computer Architecture Lecture 1.
Microprocessors CSE- 341 Dr. Jia Uddin Assistant Professor, CSE, BRAC University.
By Wannarat Computer System Design Lecture 1 Wannarat Suntiamorntut.
Computer Architecture Furkan Rabee
COMP311A Computer Systems Architecture Murray Pearson Office: G1.28A
Computer Organization and Architecture Lecture 1 : Introduction
ECE354 Embedded Systems Introduction C Andras Moritz.
INTRODUCTION TO MICROPROCESSORS
Architecture & Organization 1
INTRODUCTION TO MICROPROCESSORS
CS775: Computer Architecture
EEL 4713/EEL 5764 Computer Architecture
Architecture & Organization 1
BIC 10503: COMPUTER ARCHITECTURE
T Computer Architecture, Autumn 2005
Introduction to Microprocessor Programming
COMS 361 Computer Organization
ELEC / Computer Architecture and Design Fall 2014 Introduction
Presentation transcript:

ACOE301 – Computer Architecture II

ACOE301 - Computer Architecture II - Frederick University Useful Information Instructor: Lecturer K. Tatas Office hours : Mo5, Tu3, We6-8, Fri5 E-mail: com.tk@fit.ac.cy http://staff.fit.ac.cy/com.tk Prerequisites: ACOE201 Lectures/week: 3 + 1 (Lab) ECTS: 5 (x25 h) = 125h Evaluation: 60% Final exam – 20% Labs/Quizzes – 20% midterm/assignment Enrollment key: ACOE301_FALL12 ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University Course Objectives Introduce students to computer architecture and organization with emphasis on performance metrics and cost, instruction set architectures, RISC processor design, Pipelining memory hierarchy. ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University Course Outcomes By the end of this course students should be able to: Understand the computer architecture and organization of modern processors. Further advance their knowledge in designing computer architecture systems using Assembly, C/C++ and VHDL. ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University Course Description Introduction to Computer Architecture: Organisation and abstraction of a computer. ISAs. Emerging computer architecture technologies. Processor, caches, memory and  I/O devices. Instruction Set Architecture (ISA): Specifications, classes, registers, memory addressing and addressing modes. The complete MIPS architecture and in-depth analysis. ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University Course Description RISC Processor Design: Full ALU design of the MIPS processor. Multiplication and division algorithms in hardware. Single-cycle, multi-cycle datapath and controller design. Performance Metrics: Measuring performance and metrics. Improve performance, clock cycles, CPI, instructions count, MIPS, MOPS, MFLOPs. Benchmarks. Amdahl's Law. ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University Course Description Pipelining: Single-cycle, Multi-cycle versus Pipeline. Structural, data and control hazards. Forwarding. Exceptions. MIPS R3000 pipeline and design of a pipelined processor. Loop unrolling in scalar and superscalar computer systems. Software pipelining. Memory Hierarchy: Locality and memory hierarchy. SRAM and DRAM. Memory organization. Advanced cache memory. Virtual memory. Protection. Translation Lookaside Buffer (TLB). ACOE301 - Computer Architecture II - Frederick University

Textbook and References Paterson, Hennessy, Computer Organisation and Design: the Hardware/Software Interface, Morgan Kaufman, 2003. M. Mano, C. R. Kime, Logic and Computer Design Fundamentals, Prentice Hall, 2004 J. P. Hayes, Computer Architecture and Organization, 3Ed, McGraw Hill., 1998 ACOE301 - Computer Architecture II - Frederick University

The task of the computer designer Determine what attributes are important for a new machine, then design a machine to maximize performance while staying within cost and power constraints. This task has many aspects instruction set design functional organization logic design implementation. integrated circuit design Packaging Power cooling Optimizing the design requires familiarity with a very wide range of technologies: Compilers operating systems packaging. ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University Basic Terminology instruction set architecture refers to is the part of the processor that is visible to the programmer or compiler writer. The instruction set architecture serves as the boundary between the software and hardware Hardware is used to refer to the specifics of a machine detailed logic design Implementation/packaging technology Often a line of machines contains machines with identical instruction set architectures and nearly identical organizations, but they differ in the detailed hardware implementation. For example, the Pentium II and Celeron are nearly identical, but offer different clock rates and different memory systems, In this course the word computer architecture is intended to cover all three aspects of computer design instruction set architecture Organization hardware ACOE301 - Computer Architecture II - Frederick University

HISTORICAL PERSPECTIVE 1st generation: 1945 - 1955 Tubes, punchcards 2nd generation: 1955 - 1965 transistors 3rd generation: 1965 – 1980 Integrated circuits 4th generation: 1980 – PCs and workstations ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University 1st generation (1945-1955) Programming was done in machine language No operating system Programming and maintenance done by one group of people ACOE301 - Computer Architecture II - Frederick University

ENIAC – The first electronic computer (1946) 18,000 tubes 300 Tn 170 KWatt ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University 2nd generation (1955-1965) Transistor-based Fairly reliable Clear distinction between designers, manufacturers, users, programmers, and support personnel. Only afforded by governments, universities or large companies (millions $) ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University 2nd generation (1955-1965) Program was first written on paper (FORTRAN) and then punched into cards Cards were then delivered to the user. Mostly used for scientific and technical calculations Solving differential equations ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University 3rd generation (1965-1980) IC-based operation IBM develops compatible systems Tradeoffs in performance, memory, I/O etc). Greater MHz/$ ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University 4th generation (1980-1990) LSI-based PCs Significantly cheaper User-friendly software 2 dominant operating systems: MS DOS: IBM PC (8088, 80286, 80386, 80486) UNIX: RISC workstations ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University 5th generation (1990-) PC networks Network operating systems Each machine runs its own operating system Users don’t care where their programs are being executed ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University Famous quotes “Future computers may weigh less than 1,5 tn”, (1949) “I believe there is a world market for five computers”, T. Watson, IBM CEO (1943) “There is no particular reason why someone would want a computer at home”, K. Oslon, president of DEC (1974) “640Κbytes of memory should be enough for anybody”, B. Gates, president of Microsoft (1981) ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University

Microprocessor Technologies (Orthogonal) VLSI technology Computer Architecture Compiler technology ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University Moore’s Law ACOE301 - Computer Architecture II - Frederick University

Intel 4004 Micro-Processor ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University Recent advances ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University The Future: 3D ICs Memory Processor RF Chip DNA Chip MEMS Battery Image Sensor 3D integration: One chip ACOE301 - Computer Architecture II - Frederick University

Computer Architecture ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University RISC vs. CISC Complex instruction set computer (CISC): Large instruction set; Complex operations; Complex addressing modes; Complex hardware, long execution time; Minimum number of instructions needed for a given task; Easy to program, simpler compiler. Reduced instruction set computer (RISC): Small instruction set; Simple instructions to allow for fast execution (fewer steps); Large number of registers; Only read/write (load/store) instructions should access the main memory, one MM access per instruction; Simple addressing modes to allow for fast address computation; Fixed-length instructions with few formats and aligned fields to allow for fast instruction decoding; increased compiler complexity and compiling time; simpler and faster hardware implementation, pipelined architecture. ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University RISC vs. CISC example CISC (M68000) Add the content of MM location pointed to by A3 to the component of an array starting at MM address 100. The index number of the component is in A2. The content of A3 is then automatically incremented by 1. RISC (MIPS) ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University Memory Architecture Von Neumann: Common memory for data and instructions Harvard: Separate data and instruction memories ACOE301 - Computer Architecture II - Frederick University

Von Neumann Memory Architecture address CPU PC 200 data 200 ADD r5,r1,r3 ADD r5,r1,r3 IR ACOE301 - Computer Architecture II - Frederick University

Harvard Memory Architecture address CPU data memory data PC address program memory data ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University Pipelining Dividing the processing task into stages, which are executed in parallel ACOE301 - Computer Architecture II - Frederick University

Application-Specific Processors Processors optimized for a specific application domain DSP processors Multiplier/accumulator in ALU, Harvard memory architecture Multimedia processors Image processing/video hardware accelerators ACOE301 - Computer Architecture II - Frederick University

Assembler/Compiler technologies Increased productivity by using high-level languages For critical tasks and embedded systems, assembly is commonly used ACOE301 - Computer Architecture II - Frederick University

ACOE301 - Computer Architecture II - Frederick University References Weste, Harris, CMOS VLSI Design: A Circuits and Systems Perspective Patterson, Hennessy - Computer Organization and Design; The Hardware-Software Interface, 2E (Morgan Kaufman, 1997) Fundamentals Of Computer Organization And Architecture (2005) Wiley ACOE301 - Computer Architecture II - Frederick University