Main Memory CS448.

Slides:



Advertisements
Similar presentations
Main MemoryCS510 Computer ArchitecturesLecture Lecture 15 Main Memory.
Advertisements

Outline Memory characteristics SRAM Content-addressable memory details DRAM © Derek Chiou & Mattan Erez 1.
Chapter 5 Internal Memory
+ CS 325: CS Hardware and Software Organization and Architecture Internal Memory.
5-1 Memory System. Logical Memory Map. Each location size is one byte (Byte Addressable) Logical Memory Map. Each location size is one byte (Byte Addressable)
Anshul Kumar, CSE IITD CSL718 : Main Memory 6th Mar, 2006.
COEN 180 DRAM. Dynamic Random Access Memory Dynamic: Periodically refresh information in a bit cell. Else it is lost. Small footprint: transistor + capacitor.
Main Mem.. CSE 471 Autumn 011 Main Memory The last level in the cache – main memory hierarchy is the main memory made of DRAM chips DRAM parameters (memory.
CS.305 Computer Architecture Memory: Structures Adapted from Computer Organization and Design, Patterson & Hennessy, © 2005, and from slides kindly made.
Memories and the Memory Subsystem; The Memory Hierarchy; Caching; ROM.
1 COMP 206: Computer Architecture and Implementation Montek Singh Wed., Nov. 19, 2003 Topic: Main Memory (DRAM) Organization.
EECC722 - Shaaban #1 lec # 12 Fall Computer System Components SDRAM PC100/PC MHZ bits wide 2-way interleaved ~ 900 MBYTES/SEC.
EECC550 - Shaaban #1 Lec # 10 Spring Main Memory Main memory generally utilizes Dynamic RAM (DRAM), which use a single transistor to store.
Memory Hierarchy.1 Review: Major Components of a Computer Processor Control Datapath Memory Devices Input Output.
331 Lec20.1Fall :332:331 Computer Architecture and Assembly Language Fall 2003 Week 13 Basics of Cache [Adapted from Dave Patterson’s UCB CS152.
ENEE350 Ankur Srivastava University of Maryland, College Park Based on Slides from Mary Jane Irwin ( )
1 COMP 206: Computer Architecture and Implementation Montek Singh Wed., Nov. 13, 2002 Topic: Main Memory (DRAM) Organization.
EECC550 - Shaaban #1 Lec # 10 Summer Main Memory Main memory generally utilizes Dynamic RAM (DRAM), which use a single transistor to store.
©UCB CS 162 Ch 7: Virtual Memory LECTURE 13 Instructor: L.N. Bhuyan
331 Lec20.1Spring :332:331 Computer Architecture and Assembly Language Spring 2005 Week 13 Basics of Cache [Adapted from Dave Patterson’s UCB CS152.
1 SRAM: –value is stored on a pair of inverting gates –very fast but takes up more space than DRAM (4 to 6 transistors) DRAM: –value is stored as a charge.
EECC551 - Shaaban #1 Lec # 11 Winter Main Memory Main memory generally utilizes Dynamic RAM (DRAM), which use a single transistor to store.
EECC551 - Shaaban #1 Lec # 11 Fall Main Memory Main memory generally utilizes Dynamic RAM (DRAM), which use a single transistor to store.
1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Nov. 18, 2002 Topic: Main Memory (DRAM) Organization – contd.
8-5 DRAM ICs High storage capacity Low cost Dominate high-capacity memory application Need “refresh” (main difference between DRAM and SRAM) -- dynamic.
Overview Booth’s Algorithm revisited Computer Internal Memory Cache memory.
Computing Systems Memory Hierarchy.
CSIT 301 (Blum)1 Memory. CSIT 301 (Blum)2 Types of DRAM Asynchronous –The processor timing and the memory timing (refreshing schedule) were independent.
Types of RAM By Alysha Gould. TYPES OF RAM SIMM’S DIMM’S DRAM SDRAM RDAM VDRAM.
CPE232 Memory Hierarchy1 CPE 232 Computer Organization Spring 2006 Memory Hierarchy Dr. Gheith Abandah [Adapted from the slides of Professor Mary Irwin.
CSIE30300 Computer Architecture Unit 07: Main Memory Hsin-Chou Chi [Adapted from material by and
Survey of Existing Memory Devices Renee Gayle M. Chua.
Lecture 19 Today’s topics Types of memory Memory hierarchy.
EEE-445 Review: Major Components of a Computer Processor Control Datapath Memory Devices Input Output Cache Main Memory Secondary Memory (Disk)
Lecture 13 Main Memory Computer Architecture COE 501.
CS 312 Computer Architecture Memory Basics Department of Computer Science Southern Illinois University Edwardsville Summer, 2015 Dr. Hiroshi Fujinoki
University of Tehran 1 Interface Design DRAM Modules Omid Fatemi
CS1104 – Computer Organization PART 2: Computer Architecture Lecture 10 Memory Hierarchy.
+ CS 325: CS Hardware and Software Organization and Architecture Memory Organization.
Modern DRAM Memory Architectures Sam Miller Tam Chantem Jon Lucas CprE 585 Fall 2003.
COMP203/NWEN Memory Technologies 0 Plan for Memory Technologies Topic Static RAM (SRAM) Dynamic RAM (DRAM) Memory Hierarchy DRAM Accelerating Techniques.
CS/EE 5810 CS/EE 6810 F00: 1 Main Memory. CS/EE 5810 CS/EE 6810 F00: 2 Main Memory Bottom Rung of the Memory Hierarchy 3 important issues –capacity »BellÕs.
1 Chapter Seven. 2 Users want large and fast memories! SRAM access times are ns at cost of $100 to $250 per Mbyte. DRAM access times are ns.
1 Chapter Seven CACHE MEMORY AND VIRTUAL MEMORY. 2 SRAM: –value is stored on a pair of inverting gates –very fast but takes up more space than DRAM (4.
COMP541 Memories II: DRAMs
1 Adapted from UC Berkeley CS252 S01 Lecture 18: Reducing Cache Hit Time and Main Memory Design Virtucal Cache, pipelined cache, cache summary, main memory.
Jeffrey Ellak CS 147. Topics What is memory hierarchy? What are the different types of memory? What is in charge of accessing memory?
07/11/2005 Register File Design and Memory Design Presentation E CSE : Introduction to Computer Architecture Slides by Gojko Babić.
1 Memory Hierarchy (I). 2 Outline Random-Access Memory (RAM) Nonvolatile Memory Disk Storage Suggested Reading: 6.1.
Contemporary DRAM memories and optimization of their usage Nebojša Milenković and Vladimir Stanković, Faculty of Electronic Engineering, Niš.
1 Chapter Seven. 2 SRAM: –value is stored on a pair of inverting gates –very fast but takes up more space than DRAM (4 to 6 transistors) DRAM: –value.
Chapter 11 System Performance Enhancement. Basic Operation of a Computer l Program is loaded into memory l Instruction is fetched from memory l Operands.
CS35101 Computer Architecture Spring 2006 Lecture 18: Memory Hierarchy Paul Durand ( ) [Adapted from M Irwin (
CSE431 L18 Memory Hierarchy.1Irwin, PSU, 2005 CSE 431 Computer Architecture Fall 2005 Lecture 18: Memory Hierarchy Review Mary Jane Irwin (
“With 1 MB RAM, we had a memory capacity which will NEVER be fully utilized” - Bill Gates.
Types of RAM (Random Access Memory) Information Technology.
CPEG3231 Integration of cache and MIPS Pipeline  Data-path control unit design  Pipeline stalls on cache misses.
CMSC 611: Advanced Computer Architecture Memory & Virtual Memory Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material.
Administration Midterm on Thursday Oct 28. Covers material through 10/21. Histogram of grades for HW#1 posted on newsgroup. Sample problem set (and solutions)
CS 704 Advanced Computer Architecture
COMP541 Memories II: DRAMs
Chapter 5 Internal Memory
Reducing Hit Time Small and simple caches Way prediction Trace caches
Cache Memory Presentation I
William Stallings Computer Organization and Architecture 8th Edition
William Stallings Computer Organization and Architecture 8th Edition
William Stallings Computer Organization and Architecture 8th Edition
Bob Reese Micro II ECE, MSU
Presentation transcript:

Main Memory CS448

Main Memory Bottom of the memory hierarchy Measured in Access Time Time between a read is requested and data delivered Cycle Time Minimum time between requests to memory Greater than access time to ensure address lines are stable Three Important Issues Capacity Bell’s law - 1 MB per MIP needed for balance, avoid page faults Latency Time to access the data Bandwidth Amount of data that can be transferred

Early DRAMs Dynamic RAM Number of address lines was a large cost issue Solution: multiplex the address lines e.g., :Address: 10101010101010101 CAS CAS = Column Address Select RAS = Row Address Select DRAM Multiplexed RAS

DRAMS Dynamic RAM Transistor stores each bit Loss over time Must periodically “refresh” the bits All bits in a row can be refreshed by reading that row Memory controllers periodically refresh, e.g. every 8 ms If the CPU tries to access memory during the refresh, we must wait (hopefully won’t occur often) Typical cycle times 60-90ns

SRAMs Static RAM Typical memories Does not need a refresh Faster than DRAM, generally not multiplexed But more expensive Typical memories DRAM 4-8 times the capacity of SRAM Used for main memory SRAM 8-16 times faster than DRAM Typical cycle times 4-7ns Also 8-16 times as expensive Used to build cache Exceptions; Cray built main memory out of SRAM

Memory Example Consider the following scenario 1 cycle to send the address 4 cycles per word of access 1 cycle to transmit the data If main memory is organized by word 6 cycles for every word Given a cache line of 4 words 24 cycles is the miss penalty Yikes! What can we do about this penalty?

#1 : More Bandwidth to Memory Make a word of main memory look like a cache line Easy to do conceptually Say we want 4 words, so send all four words back on the bus at one time instead of one after the other In the previous scenario, we could send 1 address, access the four words (4 cycles if in parallel or 16 if sequential), and then send all data at once in 1 more cycle for a total of 6 or 18 cycles Still better than 24 even if we don’t access each word in parallel Problem Need a wider bus, which is expensive Especially true if this contributes to the pin count on the CPU Usually the bus width to memory will match the width of the L2 cache

#2 : Interleaved Memory Banks Take advantage of potential parallelism by interleaving memory 4-way interleaved memory Allow simultaneous access to data in different memory banks Good for sequential data

#3: Independent Memory Banks Can take the idea of interleaved banks a bit farther… make independent banks altogether Multiple independent accesses Multiple memory controllers Each bank needs separate address lines and probably a separate data bus Will see this idea appear again with multiprocessors that share a common memory

Summary of Techniques

#4 : Avoiding Memory Bank Conflicts Have the compiler schedule code to operate on all data in a bank first before moving on to a separate bank Might result in cache conflicts Similar to previous optimizations we saw using compiler-based scheduling

Other Types of RAM SDRAM RDRAM Synchronous Dynamic RAM Like a DRAM, but uses pipelining across two sets of memory addresses 8-10ns read cycle time RDRAM Rambus Direct RAM Also uses pipelining Replace RAS/CAS with a packet-switched bus, new interface to act like a memory system not memory component Can deliver one byte every 2ns Somewhat expensive, most architectures need a new bus systems to really take advantage of the increased RAM speed