Computer Architecture

Similar documents
Memory unit. 2 k words. n bits per word

Computer Systems Structure Main Memory Organization

1. Memory technology & Hierarchy

A N. O N Output/Input-output connection

User s Manual HOW TO USE DDR SDRAM

Memory Basics. SRAM/DRAM Basics

Chapter 5 :: Memory and Logic Arrays

Chapter 7 Memory and Programmable Logic

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

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

Semiconductor Device Technology for Implementing System Solutions: Memory Modules

Lecture 9: Memory and Storage Technologies

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

Computer Architecture

Understanding Memory TYPES OF MEMORY

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

Features. DDR SODIMM Product Datasheet. Rev. 1.0 Oct. 2011

SDRAM and DRAM Memory Systems Overview

Table 1: Address Table

Table 1 SDR to DDR Quick Reference

Memory. The memory types currently in common usage are:

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

Features. DDR3 Unbuffered DIMM Spec Sheet

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

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

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

Memory Systems. Static Random Access Memory (SRAM) Cell

1 / 25. CS 137: File Systems. Persistent Solid-State Storage

Read-only memory Implementing logic with ROM Programmable logic devices Implementing logic with PLDs Static hazards

OpenSPARC T1 Processor

RAM. Overview DRAM. What RAM means? DRAM

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

What Every Programmer Should Know About Memory

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

DDR subsystem: Enhancing System Reliability and Yield

Features. DDR3 SODIMM Product Specification. Rev. 1.7 Feb. 2016

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

Highlights of the High- Bandwidth Memory (HBM) Standard

DDR2 Specific SDRAM Functions

DDR3 SDRAM UDIMM MT8JTF12864A 1GB MT8JTF25664A 2GB

MICROPROCESSOR. Exclusive for IACE Students iacehyd.blogspot.in Ph: /422 Page 1

Semiconductor Memories

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

Byte Ordering of Multibyte Data Items

DDR SDRAM SODIMM. MT9VDDT1672H 128MB 1 MT9VDDT3272H 256MB MT9VDDT6472H 512MB For component data sheets, refer to Micron s Web site:

Memory Testing. Memory testing.1

Static-Noise-Margin Analysis of Conventional 6T SRAM Cell at 45nm Technology

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

Chapter 9 Semiconductor Memories. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan

Memory technology evolution: an overview of system memory technologies

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

DDR4 Memory Technology on HP Z Workstations

Technical Note DDR2 Offers New Features and Functionality

The Central Processing Unit:

DDR SDRAM SODIMM. MT8VDDT3264H 256MB 1 MT8VDDT6464H 512MB For component data sheets, refer to Micron s Web site:

are un-buffered 200-Pin Double Data Rate (DDR) Synchronous DRAM Small Outline Dual In-Line Memory Module (SO-DIMM). All devices

Mobile SDRAM. MT48H16M16LF 4 Meg x 16 x 4 banks MT48H8M32LF 2 Meg x 32 x 4 banks

Open Flow Controller and Switch Datasheet

ADQYF1A08. DDR2-1066G(CL6) 240-Pin O.C. U-DIMM 1GB (128M x 64-bits)

Class 18: Memories-DRAMs

Dell Reliable Memory Technology

Basic Computer Organization

DDR SDRAM UDIMM MT16VDDT6464A 512MB MT16VDDT12864A 1GB MT16VDDT25664A 2GB

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

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

DDR2 SDRAM SODIMM MT16HTF12864H 1GB MT16HTF25664H 2GB

DDR2 SDRAM SODIMM MT8HTF3264HD 256MB MT8HTF6464HD 512MB MT8HTF12864HD 1GB For component data sheets, refer to Micron s Web site:

Communicating with devices

路 論 Chapter 15 System-Level Physical Design

Switch Fabric Implementation Using Shared Memory

GR2DR4B-EXXX/YYY/LP 1GB & 2GB DDR2 REGISTERED DIMMs (LOW PROFILE)

DDR2 SDRAM SODIMM MT4HTF6464HZ 512MB. Features. 512MB (x64, SR) 200-Pin DDR2 SODIMM. Features. Figure 1: 200-Pin SODIMM (MO-224 R/C C)

CHAPTER 16 MEMORY CIRCUITS

Atmel Norway XMEGA Introduction

Modeling Sequential Elements with Verilog. Prof. Chien-Nan Liu TEL: ext: Sequential Circuit

V58C2512(804/404/164)SB HIGH PERFORMANCE 512 Mbit DDR SDRAM 4 BANKS X 16Mbit X 8 (804) 4 BANKS X 32Mbit X 4 (404) 4 BANKS X 8Mbit X 16 (164)

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

DDR3 DIMM Slot Interposer

DDR SDRAM SODIMM MT16VDDF6464H 512MB MT16VDDF12864H 1GB

Configuring Memory on the HP Business Desktop dx5150

Intel 965 Express Chipset Family Memory Technology and Configuration Guide

The Bus (PCI and PCI-Express)

Building Blocks for PRU Development

DDR2 SDRAM SODIMM MT8HTF6464HDZ 512MB MT8HTF12864HDZ 1GB. Features. 512MB, 1GB (x64, DR) 200-Pin DDR2 SODIMM. Features

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

Chapter 13. PIC Family Microcontroller

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

Price/performance Modern Memory Hierarchy

Management Challenge. Managing Hardware Assets. Central Processing Unit. What is a Computer System?

Tuning DDR4 for Power and Performance. Mike Micheletti Product Manager Teledyne LeCroy

CHAPTER 7: The CPU and Memory

Technical Note. Initialization Sequence for DDR SDRAM. Introduction. Initializing DDR SDRAM

A Mixed Time-Criticality SDRAM Controller

COMBINATIONAL and SEQUENTIAL LOGIC CIRCUITS Hardware implementation and software design

Tuning DDR4 for Power and Performance. Mike Micheletti Product Manager Teledyne LeCroy

GETTING STARTED WITH PROGRAMMABLE LOGIC DEVICES, THE 16V8 AND 20V8

All Programmable Logic. Hans-Joachim Gelke Institute of Embedded Systems. Zürcher Fachhochschule

Why Latency Lags Bandwidth, and What it Means to Computing

Transcription:

Computer Architecture Random Access Memory Technologies 2015. április 2. Budapest Gábor Horváth associate professor BUTE Dept. Of Networked Systems and Services ghorvath@hit.bme.hu

2 Storing data Possible types of memories: ROM: read-only Classical ROM: the content is stored during the manufacturing process PROM: one-time programmable EPROM: can be erased using ultraviolet light Etc. SRAM: Static Random Access Memory Can be read and modified any time DRAM: Dynamic Random Access Memory Can be read and modified any time It forgets its content! Needs to be refreshed periodically.

Storing data in SRAM Computer Architecture Gábor Horváth, BME-HIT 3

4 Storing a single bit in SRAM An SRAM cell consists of a bi-stable flip-flop The bit and its inverse is also available WL = word line: selects the memory cell for operation BL = bit line: reflects the stored bit once the cell is selected BL = the inverse of the stored bit It does not forget the data till power supply is present

5 Storing a single bit in SRAM Reading the value of the bit: The BL and BL are precharged A logical high value is given to the WL The switches represented by the transistors get closed Selects the cell The BL will be equal to the bit stored The BL will be equal to the inverse of the bit stored The sense amplifiers detect the difference of BL and BL...providing the bit stored in the cell

6 Storing a single bit in SRAM Writing the value of the bit: The BL and BL lines are set according to the bit to store (BL=1, BL=0 if a bit 1 needs to be stored and vice versa) A logical high value is given to the WL The switches represented by the transistors get closed Selects the cell Since the driver transistors of the BL and BL are stronger than the transistors of the cell, the value if the bit is forced to the flip-flop

7 Internals of an SRAM cell Each inverter is implemented by two transistors 6 transistors are needed to store a single bit! This makes SRAM very expensive

8 Array of SRAM cells SRAM cells are organized to a 2 dimensional grid The address bits are decoded and the appropriate WL line is enabled The entire row gets selected The individual cells of the row represent the bits of the data unit Only data units (rows) can be read and written, individual bits can not Example: SRAM array with 16 bit data units:

Storing data in DRAM Computer Architecture Gábor Horváth, BME-HIT 9

Storing a single bit in DRAM A DRAM cell consists of a capacitor and a transistor The capacitor stores the data: There is charge: bit 1 No charge: bit 0 WL transistor capacitor BL WL = word line: selects the memory cell for operation BL = bit line: reflects the stored bit once the cell is selected It does forget the data with time! (The charge escapes) Periodical refresh is necessary Computer Architecture Gábor Horváth, BME-HIT 10

11 Storing a single bit in DRAM Reading the value of the bit: The BL is precharged exactly to the middle between logical high and low A logical high value is given to the WL The switch represented by the transistor get closed Selects the cell The charge of the capacitor (if any) leaves towards the BL The sense amplifiers detects the level of BL...providing the bit stored in the cell Reading the bit is destructive! The charge representing the bit leaves WL transistor capacitor BL

12 Storing a single bit in DRAM Writing the value of the bit: The BL is set according to the bit to store A logical high value is given to the WL The switch represented by the transistor gets closed Selects the cell The charge of BL charges the capacitor WL transistor capacitor BL

13 SRAM vs. DRAM Cost: SRAM: 6 transistors vs DRAM: 1 transistor + 1 capacitor The DRAM is much cheaper, and higher capacity can be achieved Speed: SRAM: Reading out the bit means detecting the state of a flip-flop (1-2 ns) DRAM: Reading out the bit means detecting the extremely small charge stored in the capacitor (10-20 ns) Reading out a bit from an SRAM is much faster Integration: SRAM can be integrated with the CPU as they share the same manufacturing process DRAM is produed by a different manufacturing process Applications: SRAM: cache memory DRAM: system memory

DRAM based memory systems Computer Architecture Gábor Horváth, BME-HIT 14

15 Memory arrays Goal: arrange memory cells on a 2 dimensional grid The position of one bit is given by the row and the column number The row address selects all memory cells belonging to that row, that is called a page The column address selects the proper data unit in a page

Basic operation Reading/Writing: The row address is given to the address bus The RAS (Row Address Strobe) line is activated The given row (page) is selected: the page is open The content of the entire page appears at the sense amplifiers The column address is given to the address bus The CAS (Column Address Strobe) line is activated Selects a data unit from the currently open page for reading or writing The WE (Write Enable) signal is active: The data bus is sampled and the selected data unit is modified The OE (Output Enable) signal is active: The selected data unit is put onto the data bus The content of the entire page is written back to the memory cells Even at read operations since the reading is destructive in DRAMs Computer Architecture Gábor Horváth, BME-HIT 16

17 Basic operation Refresh: The content needs to be refreshed regularly even if no read/write operations happen The refresh is done page-to-page periodically: from the first page to the last one-by-one, then from the first again Who has to do it? Early solutions: the CPU The CPU had a counter which page is to be refreshed next The CPU had a timer that sent the refresh command to the DRAM with the current page address Later: the memory controller did the same task Now: the DRAM chips have the counter They know which page to refresh next, they just need a signal to do the refresh

Evolution of the DRAM based memory systems Computer Architecture Gábor Horváth, BME-HIT 18

Asynchronous DRAM systems The classical asynchronous DRAM: Each operation looks like: Row address RAS column address CAS data on the data bus Time consuming! Computer Architecture Gábor Horváth, BME-HIT 19

20 Asynchronous DRAM systems FPM DRAM (Fast Page Mode DRAM) Allows to read/write several data units within the same page Without addressing the row and giving the RAS signal every time Looking at the DRAM memory array again: After opening a page the entire content is available at the sense amplifiers, so reading several data units from the same column has no additional cost!

21 Asynchronous DRAM systems FPM DRAM (Fast Page Mode DRAM) The row is selected (page is opened) only once Several data units are read/written inside the page The RAS signal indicates how long we are using the same row

Asynchronous DRAM systems EDO DRAM (Extended Data Out DRAM) While the data of the previous memory operation is read/written, the column address of the next operation is transmitted in parallel A signifficant overlap speedup Computer Architecture Gábor Horváth, BME-HIT 22

23 Asynchronous DRAM systems BEDO DRAM (Burst-Mode EDO DRAM) The column address of the next data is not needed Default: the next column address is incremented At each CAS strobe the next data unit is transmitted Works well is data needs to be transmitted in bursts

24 Synchronous DRAM systems SDR SDRAM (Synchronous DRAM) have clock signal Any event can occur at the clock signal only Similar to BEDO: An initial row and column address are provided A burst of data is read/written at consecutive clock signals

Synchronous DRAM systems Computer Architecture Gábor Horváth, BME-HIT 25

26 Synchronous DRAM systems DDR SDRAM (Double Data Rate SDRAM) Doubles the transfer speed of the burst It transmits data at both the rising and the falling edge of the clock DDR-200 memory operates at 100 MHz only! The 200 means that the burst is transmitted as fast as a 200 MHz single data rate SDRAM can transmit Notation of DDR SDRAMs: Let us have a DDR SDRAM operating at 200 MHz having 64 bit data units It is sold as: DDR-400 PC-3200» As this memory transmits bursts at 400 Mega-data units per second» Data units are 8 bytes speed is 3200 MB/s

27 Synchronous DRAM systems DDR2 SDRAM Classical DDR: 2 data units / clock (raising and falling edge) DDR2: 4 data units / clock DDR2-800 memory operates at 200 MHz only! The 800 means that the burst is transmitted as fast as a 800 MHz single data rate SDRAM can transmit Notation of DDR2 SDRAMs: Let us have a DDR2 SDRAM operating at 200 MHz having 64 bit data units It is sold as: DDR2-800 PC2-6400» As this memory transmits bursts at 800 Mega-data units per second» Data units are 8 bytes speed is 6400 MB/s

28 Synchronous DRAM systems DDR3 SDRAM Classical DDR: 2 data units / clock (raising and falling edge) DDR2: 4 data units / clock DDR3: 8 data units / clock DDR3-1600 memory operates at 200 MHz only! The 1600 means that the burst is transmitted as fast as a 1600 MHz single data rate SDRAM can transmit Notation of DDR3 SDRAMs: Let us have a DDR3 SDRAM operating at 200 MHz having 64 bit data units It is sold as: DDR3-1600 PC3-12800» As this memory transmits bursts at 1600 Mega-data units per second» Data units are 8 bytes speed is 12800 MB/s

Synchronous DRAM systems DDR4 SDRAM Still transfers 8 data units/clock (like DDR3) Internal clock rate is increased to improve throughput Computer Architecture Gábor Horváth, BME-HIT 29

30 Comparison SDR DDR DDR2 DDR3 DDR4 Internal clock 66-133 MHz 133-200 MHz 100-200 MHz 100-200 MHz 266-533 MHz Data/int. clock 1 2 4 8 8 Throu. MB/s 528-1064 2128-3200 3200-6400 6400-12800 17024-34112 Burst length 1-8 2-8 4-8 8 8 Voltage 3.3V 2.5V 1.8V 1.5V 1.05-1.2V

31 Synchronous DRAM systems Conclusion Internal clock rate is almost the same in the last 10-15 years latency is the same (latency: delay between the address and the corresponding data) Data units transfered / clock cycle increased significantly throughput is improving (Throughput: amount of data transmitted / second)

Memory modules Computer Architecture Gábor Horváth, BME-HIT 32

33 SIMM SIMM: Single In-line Memory Module Have ICs at one side only Used mainly by asynchronous DRAMs

34 DIMM DIMM: Dual In-line Memory Module Have ICs on both sides Used mainly by synchronous DRAMs

35 SO-DIMM SO-DIMM: (Small-Outline Dual In-line Memory Module) More compact than DIMM Used mainly by laptops