ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl.

Slides:



Advertisements
Similar presentations
Computer Abstractions and Technology
Advertisements

TU/e Processor Design 5Z0321 Processor Design 5Z032 Computer Systems Overview Chapter 1 Henk Corporaal Eindhoven University of Technology 2011.
Computer Architecture & Organization
CpE442 Intro. To Computer Architecture CpE 442 Introduction To Computer Architecture Lecture 1 Instructor: H. H. Ammar These slides are based on the lecture.
1 Copyright © 2012, Elsevier Inc. All rights reserved. Chapter 1 Fundamentals of Quantitative Design and Analysis Computer Architecture A Quantitative.
Room: E-3-31 Phone: Dr Masri Ayob TK 2123 COMPUTER ORGANISATION & ARCHITECTURE Lecture 4: Computer Performance.
Processor Technology and Architecture
1 Lecture 2: System Metrics and Pipelining Today’s topics: (Sections 1.6, 1.7, 1.9, A.1)  Quantitative principles of computer design  Measuring cost.
ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 24 th, 2008 Reading for Friday: Chapter 1.1 – 1.4,
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.
EET 4250: Chapter 1 Performance Measurement, Instruction Count & CPI Acknowledgements: Some slides and lecture notes for this course adapted from Prof.
Memory: Virtual MemoryCSCE430/830 Memory Hierarchy: Virtual Memory CSCE430/830 Computer Architecture Lecturer: Prof. Hong Jiang Courtesy of Yifeng Zhu.
Rung-Bin Lin Chapter 1: Fundamental of Computer Design1-1 Chapter 1. Fundamentals of Computer Design Introduction –Performance Improvement due to (1).
3.1Introduction to CPU Central processing unit etched on silicon chip called microprocessor Contain tens of millions of tiny transistors Key components:
COM181 Computer Hardware Ian McCrumRoom 5B18,
1 Instant replay  The semester was split into roughly four parts. —The 1st quarter covered instruction set architectures—the connection between software.
1 Copyright © 2012, Elsevier Inc. All rights reserved. Chapter 1 Fundamentals of Quantitative Design and Analysis Computer Architecture A Quantitative.
Computer performance.
Lecture 2: Technology Trends and Performance Evaluation Performance definition, benchmark, summarizing performance, Amdahl’s law, and CPI.
C.S. Choy95 COMPUTER ORGANIZATION Logic Design Skill to design digital components JAVA Language Skill to program a computer Computer Organization Skill.
Computer Architecture ECE 4801 Berk Sunar Erkay Savas.
2007 Sept 06SYSC 2001* - Fall SYSC2001-Ch1.ppt1 Computer Architecture & Organization  Instruction set, number of bits used for data representation,
Cs 152 L1 Intro.1 Patterson Fall 97 ©UCB What is “Computer Architecture” Computer Architecture = Instruction Set Architecture + Machine Organization.
Mark Franklin, S06 CS, CoE, EE 362 Digital Computers II: Architecture Prof. Mark Franklin: Course Assistants: –Drew Frank:
Lecture 03: Fundamentals of Computer Design - Trends and Performance Kai Bu
1 Lecture 1: CS/ECE 3810 Introduction Today’s topics:  Why computer organization is important  Logistics  Modern trends.
Recap Technology trends Cost/performance Measuring and Reporting Performance What does it mean to say “computer X is faster than computer Y”? E.g. Machine.
Computers organization & Assembly Language Chapter 0 INTRODUCTION TO COMPUTING Basic Concepts.
1 Recap (from Previous Lecture). 2 Computer Architecture Computer Architecture involves 3 inter- related components – Instruction set architecture (ISA):
The University of Adelaide, School of Computer Science
Digital Design and Computer Architecture Dr. Robert D. Kent LT Ext Lecture 1 Introduction.
C OMPUTER O RGANIZATION AND D ESIGN The Hardware/Software Interface 5 th Edition Chapter 1 Computer Abstractions and Technology Sections 1.5 – 1.11.
Chapter 1 — Computer Abstractions and Technology — 1 Understanding Performance Algorithm Determines number of operations executed Programming language,
Advanced Computer Architecture Fundamental of Computer Design Instruction Set Principles and Examples Pipelining:Basic and Intermediate Concepts Memory.
Computer Organization and Design Computer Abstractions and Technology
Computer Architecture And Organization UNIT-II General System Architecture.
Computer Architecture
Chapter 1 Computer Abstractions and Technology. Chapter 1 — Computer Abstractions and Technology — 2 The Computer Revolution Progress in computer technology.
Computer Organization & Assembly Language © by DR. M. Amer.
Computer Architecture CPSC 350
CS252/Patterson Lec 1.1 1/17/01 CMPUT429/CMPE382 Winter 2001 Topic2: Technology Trend and Cost/Performance (Adapted from David A. Patterson’s CS252 lecture.
Computer Architecture Souad MEDDEB
S.J.Lee 1 컴퓨터 구조 강좌개요 순천향대학교 컴퓨터학부 이 상 정. S.J.Lee 2 교 재교 재 J.L.Hennessy & D.A.Patterson Computer Architecture a Quantitative Approach, Second Edition.
Dept. of Computer Science - CS6461 Computer Architecture CS6461 – Computer Architecture Fall 2015 Lecture 1 – Introduction Adopted from Professor Stephen.
Performance Performance
Chapter 5: Computer Systems Design and Organization Dr Mohamed Menacer Taibah University
DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO CS 219 Computer Organization.
Computer Organization Yasser F. O. Mohammad 1. 2 Lecture 1: Introduction Today’s topics:  Why computer organization is important  Logistics  Modern.
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.
Computer Architecture
Lecture 1: Introduction CprE 585 Advanced Computer Architecture, Fall 2004 Zhao Zhang.
CC311 Computer Architecture Chapter 1 Computer Abstraction & Technology.
VU-Advanced Computer Architecture Lecture 1-Introduction 1 Advanced Computer Architecture CS 704 Advanced Computer Architecture Lecture 1.
Computer Architecture Furkan Rabee
Computer Organization and Architecture Lecture 1 : Introduction
Morgan Kaufmann Publishers
Architecture & Organization 1
Computer Architecture and Organization
Computer Architecture CSCE 350
CS775: Computer Architecture
Architecture & Organization 1
T Computer Architecture, Autumn 2005
Chapter 1 Introduction.
The University of Adelaide, School of Computer Science
Computer Evolution and Performance
COMS 361 Computer Organization
The University of Adelaide, School of Computer Science
Utsunomiya University
Presentation transcript:

ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl article Reading for Monday: 1.5 – 1.11

ENGS 116 Lecture 12 Prerequisite Knowledge Assembly language programming Fundamentals of logic design  Combinational and sequential components (e.g., gates, multiplexers, decoders, ROMs, flip-flops, registers, RAMs) Processor Design  Instruction cycle, pipelining, branch prediction, exceptions Memory Hierarchy  Caches (direct-mapped, fully-associative, 2-way set associative), spatial locality, temporal locality, virtual memory, translation lookaside buffer (TLB) Input and Output  Polling, interrupts Multiprocessors

ENGS 116 Lecture 13 What is Computer Architecture? Two viewpoints: Hardware designer’s viewpoint: CPUs, caches, buses, pipelines, physical memory, etc. Programmer’s viewpoint: instruction set – opcodes, addressing modes, registers, virtual memory, etc.  Study of architecture covers both instruction-set architectures and machine implementation organizations.

ENGS 116 Lecture 14 Computer Architecture Is... The attributes of a [computing] system as seen by the programmer, i.e., the conceptual structure and functional behavior, as distinct from the organization of the data flows and controls the logic design, and the physical implementation. Amdahl, Blaauw, and Brooks, 1964

ENGS 116 Lecture 15 Computer Architecture’s Changing Definition 1950s to 1960s: Computer Architecture Course = Computer Arithmetic. 1970s to 1980s: Computer Architecture Course = Instruction Set Design, especially ISA appropriate for compilers. 1990s and beyond: Computer Architecture Course = Design of CPU, memory system, I/O system, multiprocessors.

ENGS 116 Lecture 16 5 Generations of Electronic Computers (Hwang)

ENGS 116 Lecture 17

8 Basic Computer Organization Control Datapath Memory Input Output Processor

ENGS 116 Lecture 19 Computer Architecture Topics Instruction Set Architecture Pipelining, Hazard Resolution, Superscalar, Reordering, Prediction, Speculation Addressing, Protection, Exception Handling L1 Cache L2 Cache DRAM Disks, WORM, Tape Coherence, Bandwidth, Latency Emerging Technologies Interleaving Bus protocols RAID VLSI Input/Output and Storage Memory Hierarchy Pipelining and Instruction- Level Parallelism

ENGS 116 Lecture 110 Computer Architecture Topics M Interconnection Network S PMPMPMP ° ° ° Topologies, Routing, Bandwidth, Latency, Reliability Network Interfaces Shared Memory, Message Passing, Data Parallelism Processor-Memory-Switch Multiprocessors Networks and Interconnections

ENGS 116 Lecture 111 Understanding the design techniques, machine structures, technology factors, and evaluation methods that will determine the form of computers in the 21st Century Technology Programming Languages Operating Systems History Applications Interface Design (ISA) Measurement & Evaluation Parallelism Computer Architecture: Instruction Set Design Organization Hardware Course Focus

ENGS 116 Lecture 112 Computer Tasks Desktop Computing, Lightweight Servers  Price-performance (low cost)  Communication, Graphics Server Computing, Mainframe Systems  Specific performance, computing power  Availability, Reliability Embedded Computers and DSPs  Power and Memory requirements  Lowest cost for required performance  Real-time or soft-real-time performance

ENGS 116 Lecture 113 Task of Computer Designer Determine which attributes are important for a new machine. Design a machine to meet functional requirements, price, power and performance goals.

ENGS 116 Lecture 114 Technology Trends Integrated circuit logic technology  transistor density (feature size)  transistor count  cycle speed Semiconductor DRAM  density  latency and bandwidth Magnetic disk technology  density  access time Network technology  bandwidth  latency

ENGS 116 Lecture 115 Scaling in ICs Feature size: minimum size of a single distinguishable/producible item on a chip die  1971 – 10 microns  2001 – 0.18 microns  2003 – 0.06 microns  2006 – 5 nanometers (0.005 microns) Complex relationships:  Transistor density increases quadratically with decrease in feature size  Reduction in feature size requires voltage reduction to maintain correct operation and reasonable reliability Scaling IC wiring:  Signal delay increases with product of resistance and capacitance  Shorter wires can be smaller

ENGS 116 Lecture 116 Power Consumption of ICs Energy requirements per transistor are proportional to load capacitance, frequency of switching and the square of the voltage. Switching frequency and density of transistors increases faster than decrease in capacitance and voltage, leading to increased power consumption == generated heat Pentium 4 consumes 100 Watts of power while the i386 did not even feature a heat-sink

ENGS 116 Lecture 117 Cost and Price Cost of manufacturing decreases over time: learning curve Learning curve is measured as an increase in yield Volume doubling leads to 10% reduction in cost Commodity products tend to decrease cost:  Volume  Competition  Efficiency

ENGS 116 Lecture 118 Difference between Cost and Price

ENGS 116 Lecture 119 Wafers and Dies Chips are produced on round silicon disks Dies are the actual chip, cut out from the wafer Testing occurs before cutting and after packaging

ENGS 116 Lecture 120 Yield and Cost However:  Wafers do not just contain chip-dies, usually a large area, including several chip-dies, is dedicated for test equipment hook-up  Actual yield in mass-production chip-fabs varies between 98% for DRAMS to 1% for new Processors

ENGS 116 Lecture 121 Yield and Cost Switch from 200mm to 300mm wafers:  Although 300mm wafers have lower yield than 200mm wafers, the overhead processing costs per wafer are high enough to make 300mm wafers more cost effective. Redundancy in dies:  Single transistors do fail during production, causing memory cells, pipeline stages, control logic sections to fail  Redundancy is built into the each die by introducing backup-units  After testing, backup units are enabled and failed units can be disabled by LASER  This decreases the chances of small flaws failing an entire die  No company yet has released their redundant circuitry numbers

ENGS 116 Lecture 122 Measurement and Evaluation Architecture is an iterative process: Searching the space of possible designs at all levels of computer systems Creativity Good Ideas Mediocre Ideas Bad Ideas Cost / Performance Analysis

ENGS 116 Lecture 123 Performance Hwang: “The ideal performance of a computer system demands a perfect match between machine capability and program behavior.” Machine capability – enhanced with better hardware technology, innovative architectural features, efficient resource management. Program behavior – affected by algorithm design, data structures, language efficiency, programmer skill, compiler technology. To improve software performance, need to understand how various hardware factors affect overall system performance!

ENGS 116 Lecture 124 Measuring Performance Key measure is time. Response time (execution time): Time between start and completion of a task. Throughput: total amount of work completed in a given time.

ENGS 116 Lecture 125 Comparing Design Alternatives “ X is n times faster than Y” means

ENGS 116 Lecture 126 Benchmarking Real programs; e.g., compilers, photo editing Modified or scripted real programs; e.g., compression algorithms Kernels – small, key pieces from real programs; e.g., Livermore Loops, Linpack. Toy benchmarks – typically 10 to 100 lines of code, useful primarily for intro programming assignments; e.g., quicksort, prime numbers, encryption Synthetic benchmarks – try to match average frequency of operations and operands for a set of programs; e.g., Whetstone, Dhrystone. Benchmark suites – collections of programs; e.g, SPEC CPU2000