CS 261 Fall Mike Lam, Professor. Memory

Similar documents
CS 261 Fall Mike Lam, Professor. Memory

Large and Fast: Exploiting Memory Hierarchy

CS 33. Memory Hierarchy I. CS33 Intro to Computer Systems XVI 1 Copyright 2016 Thomas W. Doeppner. All rights reserved.

CS429: Computer Organization and Architecture

CS429: Computer Organization and Architecture

Storage Technologies and the Memory Hierarchy

CS24: INTRODUCTION TO COMPUTING SYSTEMS. Spring 2017 Lecture 13

Giving credit where credit is due

CISC 360. The Memory Hierarchy Nov 13, 2008

Memory classification:- Topics covered:- types,organization and working

Lecture 18: Memory Systems. Spring 2018 Jason Tang

Computer Systems. Memory Hierarchy. Han, Hwansoo

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

Computer Architecture and System Software Lecture 08: Assembly Language Programming + Memory Hierarchy

Random Access Memory (RAM)

Foundations of Computer Systems

The Memory Hierarchy Sept 29, 2006

Computer Organization: A Programmer's Perspective

Memory Overview. Overview - Memory Types 2/17/16. Curtis Nelson Walla Walla University

Random-Access Memory (RAM) CS429: Computer Organization and Architecture. SRAM and DRAM. Flash / RAM Summary. Storage Technologies

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 26, FALL 2012

The Memory Hierarchy /18-213/15-513: Introduction to Computer Systems 11 th Lecture, October 3, Today s Instructor: Phil Gibbons

Random-Access Memory (RAM) Lecture 13 The Memory Hierarchy. Conventional DRAM Organization. SRAM vs DRAM Summary. Topics. d x w DRAM: Key features

CS 320 February 2, 2018 Ch 5 Memory

Basic Organization Memory Cell Operation. CSCI 4717 Computer Architecture. ROM Uses. Random Access Memory. Semiconductor Memory Types

The Memory Hierarchy 10/25/16

Where Have We Been? Ch. 6 Memory Technology

CENG3420 Lecture 08: Memory Organization

Key features. ! RAM is packaged as a chip.! Basic storage unit is a cell (one bit per cell).! Multiple RAM chips form a memory.

Contents. Memory System Overview Cache Memory. Internal Memory. Virtual Memory. Memory Hierarchy. Registers In CPU Internal or Main memory

Computer Organization

Main Memory (RAM) Organisation

PC-based data acquisition II

CS 153 Design of Operating Systems

COSC 6385 Computer Architecture - Memory Hierarchies (III)

Advanced Parallel Architecture Lesson 4 bis. Annalisa Massini /2015

+ Random-Access Memory (RAM)

Embedded Systems Design: A Unified Hardware/Software Introduction. Outline. Chapter 5 Memory. Introduction. Memory: basic concepts

Embedded Systems Design: A Unified Hardware/Software Introduction. Chapter 5 Memory. Outline. Introduction

ECSE-2610 Computer Components & Operations (COCO)

COSC 243. Memory and Storage Systems. Lecture 10 Memory and Storage Systems. COSC 243 (Computer Architecture)

CS 201 The Memory Hierarchy. Gerson Robboy Portland State University

CS 31: Intro to Systems Storage and Memory. Kevin Webb Swarthmore College March 17, 2015

The Memory Hierarchy. Computer Organization 2/12/2015. CSC252 - Spring Memory. Conventional DRAM Organization. Reading DRAM Supercell (2,1)

The Memory Hierarchy / : Introduction to Computer Systems 10 th Lecture, Feb 12, 2015

I/O CANNOT BE IGNORED

Semiconductor Memory Types Microprocessor Design & Organisation HCA2102

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

BCN1043. By Dr. Mritha Ramalingam. Faculty of Computer Systems & Software Engineering

Chapter 5 Internal Memory

CSE 153 Design of Operating Systems

MEMORY. Computer memory refers to the hardware device that are used to store and access data or programs on a temporary or permanent basis.

Computer Organization. 8th Edition. Chapter 5 Internal Memory

Computer Organization and Assembly Language (CS-506)

Concept of Memory. The memory of computer is broadly categories into two categories:

Organization. 5.1 Semiconductor Main Memory. William Stallings Computer Organization and Architecture 6th Edition

William Stallings Computer Organization and Architecture 6th Edition. Chapter 5 Internal Memory

Input output and memory devices

I/O CANNOT BE IGNORED

CSCI-UA.0201 Computer Systems Organization Memory Hierarchy

CENG4480 Lecture 09: Memory 1

Today. The Memory Hierarchy. Byte Oriented Memory Organization. Simple Memory Addressing Modes

EE414 Embedded Systems Ch 5. Memory Part 2/2

Internal Memory. Computer Architecture. Outline. Memory Hierarchy. Semiconductor Memory Types. Copyright 2000 N. AYDIN. All rights reserved.

Random-Access Memory (RAM) CISC 360. The Memory Hierarchy Nov 24, Conventional DRAM Organization. SRAM vs DRAM Summary.

Memory Challenges. Issues & challenges in memory design: Cost Performance Power Scalability

Microcontroller Systems. ELET 3232 Topic 11: General Memory Interfacing

Memory memories memory

Memory Hierarchy Y. K. Malaiya

CS311 Lecture 21: SRAM/DRAM/FLASH

ECE 341. Lecture # 16

Semiconductor Memories: RAMs and ROMs

k -bit address bus n-bit data bus Control lines ( R W, MFC, etc.)

Memory Pearson Education, Inc., Hoboken, NJ. All rights reserved.

Memory and Disk Systems

Design and Implementation of an AHB SRAM Memory Controller

BTEC Level 3 Unit 2. Computer Components

CS 33. Architecture and Optimization (3) CS33 Intro to Computer Systems XVI 1 Copyright 2018 Thomas W. Doeppner. All rights reserved.

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

Overview. Memory Classification Read-Only Memory (ROM) Random Access Memory (RAM) Functional Behavior of RAM. Implementing Static RAM

Computer Memory Basic Concepts. Lecture for CPSC 5155 Edward Bosworth, Ph.D. Computer Science Department Columbus State University

Semiconductor Memory Types. Computer & Microprocessor Architecture HCA103. Memory Cell Operation. Semiconductor Memory.

Introduction read-only memory random access memory

Computers in Business: Concepts in Hardware and Software

The Memory Hierarchy Part I

Database Systems II. Secondary Storage

William Stallings Computer Organization and Architecture 8th Edition. Chapter 5 Internal Memory

Computer Memory. Textbook: Chapter 1

Adapted from instructor s supplementary material from Computer. Patterson & Hennessy, 2008, MK]

211: Computer Architecture Summer 2016

,e-pg PATHSHALA- Computer Science Computer Architecture Module 25 Memory Hierarchy Design - Basics

The Memory Component

5 Computer Organization

CSE 153 Design of Operating Systems Fall 2018

Storage. CS 3410 Computer System Organization & Programming

computer case. Various form factors exist for motherboards, as shown in this chart.

Today. The Memory Hierarchy. Random-Access Memory (RAM) Nonvolatile Memories. Traditional Bus Structure Connecting CPU and Memory

Summer 2003 Lecture 18 07/09/03

LECTURE 5: MEMORY HIERARCHY DESIGN

COMPUTER ARCHITECTURE

Transcription:

CS 261 Fall 2016 Mike Lam, Professor Memory

Topics Memory hierarchy overview Storage technologies SRAM DRAM PROM / flash Disk storage Tape and network storage I/O architecture Storage trends Latency comparisons

Memory Until now, we've referred to memory as a black box Modern systems actually have a variety of memory types called a memory hierarchy Frequently-accessed data in faster memory Other data in slower memory Each level caches data from the next lower level Goal: large general pool of memory that performs almost as well as if it was all made of the fastest memory Key concept: locality of time and space

Memory hierarchy

RAM Random access memory Smaller pools of fast memory, closer to the CPU Eventually lose data if the supply voltage is turned off Static RAM (SRAM) Six transistors per bit in a circuit w/ feedback loops Essentially the same as discussed in Ch. 4 Used for CPU caches; usually <1GB Dynamic RAM (DRAM) One capacitor per bit with a single access transistor Must be refreshed periodically Used for main memory and graphics memory Usually <64 GB

DRAM DRAM chips store data in a grid of supercells Memory controller used to access data Connected to CPU via memory bus Row access strobe (RAS) request Column access strobe (CAS) request

Enhanced DRAM Fast page mode DRAM (FPM DRAM) Serve same-row accesses from a row buffer Extended data out DRAM (EDO DRAM) Allow CAS signals to be more closely spaced Synchronous DRAM (SDRAM) Use a clock to synchronize and speed accesses Double data-rate SDRAM (DDR SDRAM) Use both rising and falling edges of clock signal Video RAM (VRAM) Shift an entire buffer's contents in a single operation Allow simultaneous reads and writes

Nonvolatile memory Nonvolatile memory retains data if the voltage is turned off Historically referred to as read-only memory (ROM) Newer forms of nonvolatile memory can be written Programmable ROM (PROM) Programmed only once by blowing fuses Erasable PROM (EPROM) Re-programmed using ultraviolet light Electrically-erasable PROM (EEPROM) Re-programmed using electric signals Basis for flash memory storage devices

Disk storage Disk storage systems hold large amounts of data More cost effective than SRAM or DRAM Usually order of magnitudes slower Solid-state drives (SSDs) Flash memory organized into blocks Traditional hard disk drives (HDDs) Multiple platters with surfaces coated with magnetic material Accessed using a physical arm with a magnetic head Data stored on surface in tracks partitioned into sectors

Hard disk drives Capacity is based on areal density Product of recording density and track density Operation requires mechanical motion Magnetic read/write head on an actuator arm Speed is based on average access time Sum of seek time, rotational latency, and transfer time Platters spin at standard rate Disk controller coordinates accesses Maps logical blocks to (surface, track, sector) numbers

Tape and network storage Archival storage systems provide large-scale data storage Lowest cost per byte, but slowest access Tape drives store data on magnetic tape Often in an off-site location for added redundancy Network-attached storage (NAS) systems Dedicated data storage server Often uses redundant disks for relability (RAID) Communicate over a network via a file sharing protocol Examples: NFS, Samba, AFS More about this in CS 361 and CS 470!

I/O architecture Cache memory (SRAM) Access via direct connection to CPU (or on-die) Main memory (DRAM) Bus transactions via I/O bridge on motherboard Disk drives (spinning disk & SSD) Connected to I/O bridge via I/O bus Requires a device controller for communication Memory transactions w/o CPU via direct memory access (DMA) Technologies: USB, SATA, SCSI Other memory (graphics, network storage) Connected to I/O bus using expansion slots on motherboard

I/O architecture

DMA 1) CPU initiates disk read 2) Disk reads data 3) Disk writes RAM via DMA 4) Disk notifies CPU

Storage trends

Storage trends

Storage trends Faster Cheaper Effective cycle times continue to decrease

Latency comparison

Latency comparison Lets multiply all these durations by a billion: (originally from https://dzone.com/articles/every-programmer-should-know) Minute: L1 cache reference (0.5s) - One heart beat L2 cache reference (7s) - Long yawn Hour: Main memory reference (100s) - Brushing your teeth Day: Send 2K bytes over 1 Gbps network (5.5 hr) - From lunch to end of work day Week: SSD random read (1.7 days) - A normal weekend Read 1 MB sequentially from memory (2.9 days) - A long weekend Read 1 MB sequentially from SSD (11.6 days) - Waiting for almost 2 weeks for a delivery Year: Disk seek (16.5 weeks) - A semester in university Read 1 MB sequentially from disk (7.8 months) - Almost producing a new human being The above 2 together (1 year) Decade: Send packet CA->Netherlands->CA (4.8 years) - Average time to complete a bachelor's degree

Core themes Systems design involves tradeoffs Memory: price vs. performance The details matter! Knowledge of the underlying system enables you to exploit latency inequalities Key concepts: locality and caching Store and access related things together Keep copies of things you ll need again soon We ll look at these more next time