CACHE MEMORY & SRAM/DRAM TIMING

Similar documents
Memory Basics. SRAM/DRAM Basics

1. Memory technology & Hierarchy

361 Computer Architecture Lecture 14: Cache Memory

Computer Architecture

Technical Note. Micron NAND Flash Controller via Xilinx Spartan -3 FPGA. Overview. TN-29-06: NAND Flash Controller on Spartan-3 Overview

Computer Systems Structure Main Memory Organization

Memory. The memory types currently in common usage are:

Module 2. Embedded Processors and Memory. Version 2 EE IIT, Kharagpur 1

Computers. Hardware. The Central Processing Unit (CPU) CMPT 125: Lecture 1: Understanding the Computer

Memory Hierarchy. Arquitectura de Computadoras. Centro de Investigación n y de Estudios Avanzados del IPN. adiaz@cinvestav.mx. MemoryHierarchy- 1

RAM & ROM Based Digital Design. ECE 152A Winter 2012

Memory unit. 2 k words. n bits per word

Memory ICS 233. Computer Architecture and Assembly Language Prof. Muhamed Mudawar

A N. O N Output/Input-output connection

Am186ER/Am188ER AMD Continues 16-bit Innovation

CHAPTER 2: HARDWARE BASICS: INSIDE THE BOX

COMPUTER HARDWARE. Input- Output and Communication Memory Systems

The Quest for Speed - Memory. Cache Memory. A Solution: Memory Hierarchy. Memory Hierarchy

Chapter 6. Inside the System Unit. What You Will Learn... Computers Are Your Future. What You Will Learn... Describing Hardware Performance

The Central Processing Unit:

Homework # 2. Solutions. 4.1 What are the differences among sequential access, direct access, and random access?

Switch Fabric Implementation Using Shared Memory

Chapter 5 :: Memory and Logic Arrays

Byte Ordering of Multibyte Data Items

Logical Operations. Control Unit. Contents. Arithmetic Operations. Objectives. The Central Processing Unit: Arithmetic / Logic Unit.

Random Access Memory (RAM) Types of RAM. RAM Random Access Memory Jamie Tees SDRAM. Micro-DIMM SO-DIMM

With respect to the way of data access we can classify memories as:

Big Picture. IC220 Set #11: Storage and I/O I/O. Outline. Important but neglected

CSE2102 Digital Design II - Topics CSE Digital Design II

ADVANCED PROCESSOR ARCHITECTURES AND MEMORY ORGANISATION Lesson-17: Memory organisation, and types of memory

The Big Picture. Cache Memory CSE Memory Hierarchy (1/3) Disk

Computer Performance. Topic 3. Contents. Prerequisite knowledge Before studying this topic you should be able to:

Bandwidth Calculations for SA-1100 Processor LCD Displays

Chapter 2: Computer-System Structures. Computer System Operation Storage Structure Storage Hierarchy Hardware Protection General System Architecture

Slide Set 8. for ENCM 369 Winter 2015 Lecture Section 01. Steve Norman, PhD, PEng

CSCA0102 IT & Business Applications. Foundation in Business Information Technology School of Engineering & Computing Sciences FTMS College Global

Configuring Memory on the HP Business Desktop dx5150

Physical Data Organization

Computer Architecture

In-Memory Databases Algorithms and Data Structures on Modern Hardware. Martin Faust David Schwalb Jens Krüger Jürgen Müller

Chapter 13. PIC Family Microcontroller

Price/performance Modern Memory Hierarchy

Central Processing Unit

Unit A451: Computer systems and programming. Section 2: Computing Hardware 1/5: Central Processing Unit

Objectives. Units of Memory Capacity. CMPE328 Microprocessors (Spring ) Memory and I/O address Decoders. By Dr.

Chapter 2 Basic Structure of Computers. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan

Computer Organization and Architecture. Characteristics of Memory Systems. Chapter 4 Cache Memory. Location CPU Registers and control unit memory

Algorithms and Methods for Distributed Storage Networks 3. Solid State Disks Christian Schindelhauer

Handout 17. by Dr Sheikh Sharif Iqbal. Memory Unit and Read Only Memories

Chapter 4 System Unit Components. Discovering Computers Your Interactive Guide to the Digital World

NAND Flash FAQ. Eureka Technology. apn5_87. NAND Flash FAQ

We r e going to play Final (exam) Jeopardy! "Answers:" "Questions:" - 1 -

Communicating with devices

Memory Systems. Static Random Access Memory (SRAM) Cell

Random-Access Memory (RAM) The Memory Hierarchy. SRAM vs DRAM Summary. Conventional DRAM Organization. Page 1

Chapter 1 Computer System Overview

COS 318: Operating Systems. Virtual Memory and Address Translation

Lecture 5: Gate Logic Logic Optimization

CHAPTER 7: The CPU and Memory

Computer Architecture

Solid State Drive Architecture

COMPUTER SCIENCE AND ENGINEERING - Microprocessor Systems - Mitchell Aaron Thornton

Computer-System Architecture

Atmel Norway XMEGA Introduction

What is a bus? A Bus is: Advantages of Buses. Disadvantage of Buses. Master versus Slave. The General Organization of a Bus

Disks and RAID. Profs. Bracy and Van Renesse. based on slides by Prof. Sirer

Motivation: Smartphone Market

Introduction To Computers: Hardware and Software

Why Computers Are Getting Slower (and what we can do about it) Rik van Riel Sr. Software Engineer, Red Hat

The Motherboard Chapter #5

CSCA0201 FUNDAMENTALS OF COMPUTING. Chapter 5 Storage Devices

SOLVING HIGH-SPEED MEMORY INTERFACE CHALLENGES WITH LOW-COST FPGAS

Computer Organization. and Instruction Execution. August 22

Open Flow Controller and Switch Datasheet

Memory Basics ~ ROM, DRAM, SRAM, Cache Memory The article was added by Kyle Duke

Candidates should be able to: (i) describe the purpose of RAM in a computer system

EFFICIENT EXTERNAL SORTING ON FLASH MEMORY EMBEDDED DEVICES

Configuring and using DDR3 memory with HP ProLiant Gen8 Servers

Generations of the computer. processors.

Discovering Computers Living in a Digital World

University of Dublin Trinity College. Storage Hardware.

Semiconductor Device Technology for Implementing System Solutions: Memory Modules

SDRAM and DRAM Memory Systems Overview

Why Latency Lags Bandwidth, and What it Means to Computing

Chapter 7 Memory and Programmable Logic

Read this before starting!

This lesson can be adapted to the grade level by the presenter. Decide the level of content and activities as appropriate.

Building Blocks for PRU Development

Keil C51 Cross Compiler

CPS104 Computer Organization and Programming Lecture 18: Input-Output. Robert Wagner

The I2C Bus. NXP Semiconductors: UM10204 I2C-bus specification and user manual HAW - Arduino 1

PowerPC Microprocessor Clock Modes

7a. System-on-chip design and prototyping platforms

Memory Testing. Memory testing.1

MPC603/MPC604 Evaluation System

A+ Guide to Managing and Maintaining Your PC, 7e. Chapter 1 Introducing Hardware

NAND Flash Architecture and Specification Trends

Chapter 2 Logic Gates and Introduction to Computer Architecture

RAM. Overview DRAM. What RAM means? DRAM

Lecture-3 MEMORY: Development of Memory:

Transcription:

CACHE MEMORY & SRAM/DRAM TIMING An introduction to cache memories and their architecture Microprocessor and Microcontrollers Course Isfahan University of Technology Mohammad 1

Storages CPU needs memory Program Data Memories Volatile memory RAM Non-Volatile memory Hard disk Flash 2

Storage Speed RAM is faster than Hard disk and flash Access to RAM is easier Compared to hard disk and flash 3

Basic Idea Hard disk is slow Access to it is difficult So : Put a memory between hard disk and CPU Now move Mostly Used Data and Instructions to this memory Allow CPU to read from/write to this memory 4

Basic Idea Expansion (1) DRAM memory Large Slow SRAM memory Fast Small Idea Put a fast SRAM memory between DRAM and CPU Store Mostly Used Data and Instructions on this SRAM memory Allow CPU to use this memory 5

Basic Idea Expansion (2) When CPU needs an instruction Look into fast SRAM memory and check If the instruction exist Give it to CPU If the instruction does not exist Read it from large DRAM Give it to CPU Update the contents of SRAM memory 6

Basic Idea Expansion (3) When CPU wants to store/read a data Look into fast SRAM memory Check if any of SRAM memory locations has been associated with this memory address If yes: store the data into this location (or read data from this location) If no: store data into main DRAM memory And also in SRAM memory 7

Cache Memory A faster small memory Stores frequently used data To shorten access time Caches are every where: CPU cache Hard disk cache Operating system cache 8

Multi-Level Caches Level 1 Data Cache Main Memory Larger than caches Slower than caches Level 3 Cache Larger than L2 Slower than L2 Level 2 Cache Larger than L1 Slower than L1 Smallest Fastest Nearest Level 1 Instruction Cache Smallest Fastest Nearest CPU 9

Basic Cache Operation 1 Cache Line (Row, Entry ) Tag Data Block Valid Bit 10

Direct Mapped Cache Main memory is divided into blocks Each block can be cached in only one cache row Fasted search speed (best hit time, worst hit rate) (2Kbytes) Block 0 (2Kbytes) Block 1 (2Kbytes) Block 2 (2Kbytes) Block 3 Cache Line 0 (64 Bytes) Cache Line 1 (64 Bytes) (2Kbytes) Block N Main Memory Cache Line N (64 Bytes) 11

Direct Mapped Cache 12

Direct Mapped Cache Can some times be very bad! Suppose both of A, B and C are stored in the same memory block in the following code for ( i = 0 ; i < 10; i++ ) A[i] = B[i] + C[i]; 13

Fully Associative Cache Each main memory location Can be cached in all of the cache memory lines When CPU wants to access a memory location All of the cache lines should be searched first Slowest search ( worst hit time ) Best hit rate There are some techniques to speed up the search 14

Set-Associative Cache Cache will be divided into sets Each set is 2,4,8 or cache lines The content of each memory block Can be cached in any of cache lines in a specific set Doubling the associativity For example from direct mapped to 2-way Has same effect on hit rate as: doubling the cache size Trade off between hit rate, and hit time 15

2-Way Set Associative Cache 16

AMD Athlon 64 Cache 17

Detailed operation of DRAM and SRAM memories DRAM VS. SRAM 18

Asynchronous SRAM Example : CYPRESS CY7C10612DV33 (16Mbits : 1M*16, 10ns) 19

What is chip enable? Usually CPU is connected to multiple devices on the same bus RAM CPU Only 1 device can use the Bus at the same time. B U S FLASH NETWORK 20

What is chip enable? (2) Usually CPU is connected to multiple devices on the same bus RAM 0x00000000 -- 0x44000000 CPU Only 1 device can use the Bus at the same time. B U S CE FLASH CE 0x86000000 -- 0x87000000 NETWORK 0x87000000 -- 0x88000000 21 CE

What is chip enable? (3) Usually CPU is connected to multiple devices on the same bus CPU Only 1 device can use the Bus at the same time. B U S Address Decoder Address Decoder CE RAM FLASH CE 0x00000000 -- 0x44000000 0x86000000 -- 0x87000000 Address Decoder NETWORK CE 0x87000000 -- 0x88000000 22

Async-SRAM Read Cycle 23

Async-SRAM Write Cycle 24

Synchronous SRAM Similar to Async SRAM But Every Read and Write operation is done with Clock pulse edges Example: Cypress CY7C1460 36MBits 2M*18 No-Bus-Latency Synchronous SRAM (NoBL Architecture) No-Bus-Latency: There is no delay for switching between read and write operations 25

CY7C1462 26

Read/Write Timing Page 22, component s data sheet 27

DRAM Memory Access to DRAM memory is very complicated (compared to SRAM) DRAM accept commands (there is not just a simple WEn signal) DRAM accepts Address in 3-phases Bank Address Row Address Column Address 28

Micron MT46V64M16 Total number of : 1G bits 4 Banks 16M lines Each line is 16Bits 29

Timings Page 53 Datasheet Page 64 Datasheet 30