welcome to 236601 - coding and algorithms for memories 1

66
Welcome to 236601 - Coding and Algorithms for Memories 1

Upload: barrie-powers

Post on 13-Dec-2015

220 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Welcome to 236601 - Coding and Algorithms for Memories 1

1

Welcome to 236601 - Coding and

Algorithms for Memories

Page 2: Welcome to 236601 - Coding and Algorithms for Memories 1

2

Overview

• Lecturer: Eitan [email protected], Taub 638

• Lectures hours: Weds 10:30-12:30 @ Taub 8• Course website:

http://webcourse.cs.technion.ac.il/232601/Winter2015/

• Office hours: Weds 17:30-18:30 and/or other times (please contact by email before)

• Final grade: – Class participation (10%) – Homeworks (50%) – Take home exam/final Homework + project (40%)

Page 3: Welcome to 236601 - Coding and Algorithms for Memories 1

3

What is this class about?

Coding and Algorithms to Memories• Memories – HDDs, flash memories, and

other non-volatile memories• Coding and algorithms – how to manage

the memory and handle the interface between the physical level and the operating system

• Both from the theoretical and practical points of view

• Q: What is the difference between theory and practice?

Page 4: Welcome to 236601 - Coding and Algorithms for Memories 1

4

You do not really understand something unless you can explain it to your

grandmother

Page 5: Welcome to 236601 - Coding and Algorithms for Memories 1

5

One of the focuses during this class: How to ask the right questions, both as a theorist and as a practical engineer

Page 6: Welcome to 236601 - Coding and Algorithms for Memories 1

6

Memory Storage

• Computer data storage (from Wikipedia):

Computer components, devices, and recording media that retain digital data used for computing for some interval of time.

• What kind of data?– Pictures, word files, movies, other computer

files etc.

• What kind of memories? – Many kinds…

Page 7: Welcome to 236601 - Coding and Algorithms for Memories 1

7

1956: IBM RAMAC 5 Megabyte Hard Drive

A 2015 3 Terabyte Drive

Page 8: Welcome to 236601 - Coding and Algorithms for Memories 1

8

Memories

• Volatile Memories – need power to maintain the information– Ex: RAM memories, DRAM, SRAM

• Non-Volatile Memories – do NOT need power to maintain the information– Ex: HDD, optical disc (CD, DVD), flash

memories

• Q: Examples of old non-volatile memories?

Page 9: Welcome to 236601 - Coding and Algorithms for Memories 1

9

Page 10: Welcome to 236601 - Coding and Algorithms for Memories 1

10

Some of the main goals in designing a computer storage:

PriceCapacity (size)

EnduranceSpeed

Power Consumption

Page 11: Welcome to 236601 - Coding and Algorithms for Memories 1

11

The Evolution of Memories

Page 12: Welcome to 236601 - Coding and Algorithms for Memories 1

12

The Evolution of MemoriesOne Song 14% of

One Song

28% of One Song

140 Songs

960 Songs

5120 Songs

6553 Songs

209,715 Songs

Page 13: Welcome to 236601 - Coding and Algorithms for Memories 1

13

Optical Storage

• Storage systems that use light for recording and retrieval of information

• Types of optical storage– CD– DVD– Blu-Ray disc– Holographic storage

Page 14: Welcome to 236601 - Coding and Algorithms for Memories 1

14

History

• 1961,1969 - David Paul Gregg from Gauss Electrophysics has patented an analog optical disc for recording video

• MCA acquires Gregg’s company and his patents• 1969 - a group of researchers at Philips Research in

Eindhoven, The Netherlands, had optical videodisc experiments

• 1975 – Philips and MCA joined forces in creating the laserdisc

• 1978 – the laserdisc was first introduced but was a complete failure and this cooperation came to its end

• 1983 – the successful Compact Disc was introduced by Philips and Sony

Page 15: Welcome to 236601 - Coding and Algorithms for Memories 1

15

History

• First generation – CD (Compact Disc), 700MB• Second generation – DVD (Digital Versatile Disc),

4.7GB, 1995• Third generation – BD (Blu-Ray Disc)

– Blue ray laser (shorter wavelength)– A single layer can store 25GB, dual layer – 50GB– Supported by Sony, Apple, Dell, Panasonic, LG, Pioneer

Page 16: Welcome to 236601 - Coding and Algorithms for Memories 1

16

Optical Disc

Information is stored as pits and lands (corres. to –1,+1)

Page 17: Welcome to 236601 - Coding and Algorithms for Memories 1

17

Optical Storage – How does it work?

• A light, emitted by a laser spot, is reflected from the disc

• The light is transformed to a voltage signal and then to bits

Page 18: Welcome to 236601 - Coding and Algorithms for Memories 1

18

The Material of the CD• Most of the CD consists of an injection-molded

piece of clear polycarbonate plastic, 1.2 mm thick • The plastic is impressed with microscopic pits

arranged as a single, continuous, extremely long spiral track of data

• A thin, reflective aluminum layer is sputtered onto the disc, covering the pits

• A thin acrylic layer is sprayed over the aluminum to protect it

• The label is then printed onto the acrylic

Page 19: Welcome to 236601 - Coding and Algorithms for Memories 1

19

The Laser• The laser spot, emitted by the laser

diode is reflected from the disc to the photodiode by the partially silvered mirror

• When the spot is over the land:– The light is reflected and the received optical

signal is high• When the spot is over a pit:

– The light is reflected from both the bottom of the pit and the land

– The reflected lights interfere destructively and the signal is low

Page 20: Welcome to 236601 - Coding and Algorithms for Memories 1

20

The Disc• A CD has a single spiral track of data, circling from

the inside of the disc to the outside • The track is approximately 0.5 microns width, with

1.6 microns separating one track from the next • The pits size is at least 0.83 microns and 125

nanometers high• The length of the track after stretching it is 3.5 miles!• Holds 74 minutes and 33 seconds of sound, enough

for a complete mono recording of Beethoven’s ninth symphony

Page 21: Welcome to 236601 - Coding and Algorithms for Memories 1

21

CD Player Components • A drive motor - spins the disc and rotates it

between 200 and 500 rpm depending on which track is being read

• A laser and a lens system for focusing read the pits • A tracking mechanism moves the laser assembly

so that the laser's beam can follow the spiral track

Page 22: Welcome to 236601 - Coding and Algorithms for Memories 1

22

DVD• Similar to CD but has more capacity (4.7G

Vs. 0.7G)• DVDs have the same diameter and

thickness as CDs • They are made of the same materials and

manufacturing methods• The data on a DVD is encoded in the form of

small pits and lands • Similar to CD, a DVD is composed of several

layers of plastic, totaling about 1.2 millimeters thick

• A semi-reflective gold layer is used for the outer layers, allowing the laser to focus through the outer and onto the inner layers

Page 23: Welcome to 236601 - Coding and Algorithms for Memories 1

23

The material of DVD• Comparing to CD, the pits

width is 320 nanometer, and at least 400 nanometer length

• Only 740 nanometers separate between adjacent tracks

• Therefore, the DVD supplies a higher density data storage

Page 24: Welcome to 236601 - Coding and Algorithms for Memories 1

24

Blu-Ray Disc• The wavelength of a blue-violet laser (405nm) is

shorter than the one of a red laser (650nm)• It possible to focus the laser spot with greater

precision• Data can be packed more tightly and stored in less

space• Blu-ray Discs holds

– 25 GB (one layer) 56%– 50 GB (dual layer) 44%

Page 25: Welcome to 236601 - Coding and Algorithms for Memories 1

25

l = 650 nmNA = 0.64.7 GBytes

l = 405 nmNA = 0.8522.5 GBytes

1.2 mm substrate

0.6 mm substrate

0.1 mm substrate

CD DVD BD

0.65 GByte 4.7 GByte 25 GByte

3 Generations of Optical Recording

Blu-Ray Disc

Page 26: Welcome to 236601 - Coding and Algorithms for Memories 1

26

Holographic Storage• An optical technology that allows 1 million

bits of data to be written and read out in single flashes of light

• A stack of holograms can be stored in the same location

• An entire page of information is stored at once as an optical interference pattern within a thick, photosensitive optical material

Page 27: Welcome to 236601 - Coding and Algorithms for Memories 1

27

Holographic Storage• Light from a coherent laser

source is split into two beams: signal (data-carrying) and reference beams

• The Digital data is encoded onto the signal beam via a spatial light modulator (SLM)

• By changing the reference beam angle, wavelength, or media position many different holograms are recorded

Page 28: Welcome to 236601 - Coding and Algorithms for Memories 1

28

Data Encoding• The data is arranged into large

arrays• The 0's and 1's are translated into

pixels of the spatial light modulator that either block or transmit light

• The light of the signal beam traverses through the modulator and is therefore encoded with the pattern of the data page

• This encoded beam interferes with the reference beam through the volume of a photosensitive recording medium

• The light pattern of the image is recorded as a hologram on the photopolymer disc using a chemical reaction

Page 29: Welcome to 236601 - Coding and Algorithms for Memories 1

29

Reading Data• The reference beam is

shined directly onto the hologram

• When it reflects off the hologram, it holds the light pattern of the image stored there

• The reconstruction beam is sent to a CMOS sensor to recreate the original image

Page 30: Welcome to 236601 - Coding and Algorithms for Memories 1

30

The Magnetic Hard Disk Drive

Disk

ArmRead-Write Head

Actuator

Spindle motor

Page 31: Welcome to 236601 - Coding and Algorithms for Memories 1

31

What is This?A 1975 HDD Factory Floor

• The total capacity of all of the drives shown on this factory floor was less than 20 GB’s!

• The total selling price of all of the drives shown on this floor was about $4,000,000!

Page 32: Welcome to 236601 - Coding and Algorithms for Memories 1

32

1980’s: IBM 3380 Drive

• The IBM 3380 was the first gigabyte drive

• The manufacturing cost was about $5000. The selling price was in the range of$80,000- $150,000!

• During the 1980’s, IBM sold billions of dollars of these drives each year

• It is the 2nd most profitable product ever manufactured by man

Page 33: Welcome to 236601 - Coding and Algorithms for Memories 1

33

1980’s: IBM 3380 Drive

One DiskFrom Drive

Page 34: Welcome to 236601 - Coding and Algorithms for Memories 1

34

Q: What’s Inside an Old 4GB Nano?

A 4 GB 1”“Microdrive”

Page 35: Welcome to 236601 - Coding and Algorithms for Memories 1

Disk Drive Basics

Disk DriveSuspendedMR Head

Rotating Thin Film Disk

Track widthA Recording Track

Slider/ MR Head

“1” “0”

35

Page 36: Welcome to 236601 - Coding and Algorithms for Memories 1

Disk Drive Basics - Writing

Track

Recording Media

Write HeadMR Read Sensor

Shield

B

Head on slider

Suspension

Magnetic flux leaking from the write-head gap records bits in the magnetic medium

36

Page 37: Welcome to 236601 - Coding and Algorithms for Memories 1

Disk Drive Basics - Reading

Track

Recording Media

Write HeadMR Read Sensor

Shield

B

Head on slider

Suspension

Resistance of MR read sensor changes in response to fields produced by the recorded bits

37

Page 38: Welcome to 236601 - Coding and Algorithms for Memories 1

38

Magnetic Write Process

disk

100 nm

Gap is 100 nm but bits are 25 nm.How can this be??

Inductive Write Element

GMR Read Sensor

Grain Structure andMagnetic Transitiont

W

B

100 nm

Page 39: Welcome to 236601 - Coding and Algorithms for Memories 1

Scaling

Shrink everything (including microstructure)Requires vastly improved processesSignal to noise drops

L L/s

Shrink everything by factor s (including currents and microstructure) Areal density of data increases by the factor s2

Requires vastly improved head and disk materials Requires improved mechanical tolerances

Scaling the flying height is a real challenge Requires improved signal processing schemes because the SNR drops by a factor of s

What is needed?

39

Page 40: Welcome to 236601 - Coding and Algorithms for Memories 1

Fundamental Innovations

GMR readsensor

Perpendicular media

Mrteff = Mrt(1) – Mrt(2)

AFC media (2001)

MR/GMR sensors (1991/1997)

to 100 Gb/in2

to 500+ Gb/in2

Perpendicular recording(2006)

40

Page 41: Welcome to 236601 - Coding and Algorithms for Memories 1

Longitudinal vs. Perpendicular

Longitudinal recording:

horizontal orientation

Perpendicular

recording: vertical

orientation

(introduced commercially in

2005)41

Page 42: Welcome to 236601 - Coding and Algorithms for Memories 1

42

Areal Density Increase of Hard Disk Drives

1950 1960 1970 1980 1990 2000 201010

-4

10-2

100

102

104

106

108

~ 36 % CAGR

~ 60 % CAGR

~ 100 % CAGR

1st Thin film head

1st MR head

1st GMR head

Perpendicularrecording

Product Year

Are

al d

ensi

ty, M

bits

/in2

1st RAMAC

250 million fold increase !!

~ slow down

Are

al d

ensi

ty [

Mb

its/

in2 ]

*

* CAGR = Cumulative Annual Growth Rate

Page 43: Welcome to 236601 - Coding and Algorithms for Memories 1

43

Predicting the Future of Disk Drives

• It looks like the present technology will max out in a few years

• As the size of the stored bit shrinks, the present magnetic material will not hold it’s magnetization at room temperature. This is called the superparamagnetic effect

• A radically new system may be required

Page 44: Welcome to 236601 - Coding and Algorithms for Memories 1

44

The Future of Disk Drives

• Two solutions are being pursued to overcome the superparamagnetic effect

– One solution is to use a magnetic material with a much higher coercivity. The problem with this solution is that you cannot write on the material at room temperature so you need to heat the media to write

– The second approach is called patterned media where bits are stored on physically separated magnetic elements

Page 45: Welcome to 236601 - Coding and Algorithms for Memories 1

Future Technology?

G M R laser

w rite co ils

heat spo t

HAMR-Heat Assisted Magnetic Recording

Patterned Media

45

Page 46: Welcome to 236601 - Coding and Algorithms for Memories 1

46

Patterned Media

Ordinary Media Patterned Media

Many grains/bit One grain/bit

In patterned media, the pattern of islands is defined by lithography

An areal density of 1 Tb/in2 requires 25-nm bit cells. Presently, this

is very difficult to achieve

Page 47: Welcome to 236601 - Coding and Algorithms for Memories 1

47

Flash Memories

Page 48: Welcome to 236601 - Coding and Algorithms for Memories 1

48

Page 49: Welcome to 236601 - Coding and Algorithms for Memories 1

49

The History of Flash Memories

• Flash memory was introduced in 1984 by Dr. Fujio Masouka of Toshiba

• Why the name flash?– Because the erase operation is similar to the flash of the

camera

• There are two types: NOR and NAND flash• NAND flash is used in most products because of

its cost advantage• Recently multi-level (MLC) NAND flash has been

introduced because it can store more information

Page 50: Welcome to 236601 - Coding and Algorithms for Memories 1

50

Flash Memory Cell

1

0

3

2

Page 51: Welcome to 236601 - Coding and Algorithms for Memories 1

51

Cell programming

01

Page 52: Welcome to 236601 - Coding and Algorithms for Memories 1

52

Block erasure

10

Page 53: Welcome to 236601 - Coding and Algorithms for Memories 1

53

Gartner & Phison

Page 54: Welcome to 236601 - Coding and Algorithms for Memories 1

54

Fast

Low Power

Reliable

~104 P/E Cylces

Page 55: Welcome to 236601 - Coding and Algorithms for Memories 1

55

Solid State Drives

• What is a Solid State Drive (SSD)? It is an “Hard Disk” with flash instead of a disk

• Why to use a Solid State Drive?– Lower power consumption– Durability– Faster random access

• Flash drives have not replaced HDDs in most large storage applications because:– They wear out– They are more temperature sensitive– Erasing is more difficult– They are more expensive

Page 56: Welcome to 236601 - Coding and Algorithms for Memories 1

56

• Array of cells, made of floating gate transistors– Each cell can store q different values.– Today, q typically ranges between 2 and 16.

0-1-2-3-

.

.

q-1-.

Multi-Level Flash Memory Model

Page 57: Welcome to 236601 - Coding and Algorithms for Memories 1

57

• Array of cells, made of floating gate transistors─ Each cell can store q different values─ Today, q typically ranges between 2 and 16─ The cell’s level is increased by pulsing

electrons─ Reducing a cell level requires resetting all

the cells in its containing block to level 0 – A VERY EXPENSIVE OPERATION

Multi-Level Flash Memory Model

Page 58: Welcome to 236601 - Coding and Algorithms for Memories 1

58

Flash Memory Constraints

• The lifetime/endurance of flash memories corresponds to the number of times the blocks can be erased and still store reliable information

• Usually a block can tolerate ~104-105 erasures before it becomes unreliable

• The Goal: Representing the data efficiently such that block erasures are postponed as much as possible

Page 59: Welcome to 236601 - Coding and Algorithms for Memories 1

59

SLC, MLC and TLC Flash

High Voltage

Low Voltage

1 Bit Per Cell2 States

SLC Flash

011

010

000

001

101

100

110

111

01

00

10

11

0

1

High Voltage

Low Voltage

2 Bits Per Cell

4 States

MLC Flash

High Voltage

Low Voltage

3 Bits Per Cell

8 States

TLC Flash

Page 60: Welcome to 236601 - Coding and Algorithms for Memories 1

60

Flash Memory Structure

• A group of cells constitute a page• A group of pages constitute a block– In SLC flash, a typical block layout is as

follows

page 0 page 1

page 2 page 3

page 4 page 5

.

.

.

.

.

.

page 62 page 63

Page 61: Welcome to 236601 - Coding and Algorithms for Memories 1

61

• In MLC flash the two bits within a cell DO NOT belong to the same page – MSB page and LSB page

• Given a group of cells, all the MSB’s constitute one page and all the LSB’s constitute another page

Row index

MSB of first 214

cells

LSB of first 214

cells

MSB of last 214

cells

LSB of last 214

cells0 page 0 page 4 page 1 page 51 page 2 page 8 page 3 page 92 page 6 page 12 page 7 page 133 page 10 page 16 page 11 page 17

⋮ ⋮ ⋮ ⋮ ⋮

30 page 118 page 124 page 119 page 12531 page 122 page 126 page 123 page 127

01

10

00

11

MSB/LSBFlash Memory Structure

Page 62: Welcome to 236601 - Coding and Algorithms for Memories 1

62

Row inde

x

MSB of first 216

cells

CSB of first 216

cells

LSB of first 216

cells

MSB of last 216

cells

CSB of last 216

cells

LSB of last 216

cells0 page 0 page 11 page 2 page 6 page 12 page 3 page 7 page 132 page 4 page 10 page 18 page 5 page 11 page 193 page 8 page 16 page 24 page 9 page 17 page 254 page 14 page 22 page 30 page 15 page 23 page 31

⋮ ⋮ ⋮ ⋮ ⋮

62 page 362

page 370

page 378

page 363

page 371

page 379

63 page 368

page 376

page 369

page 377

64 page 374

page 382

page 375

page 383

65 page 380

page 381

MSB Page CSB Page LSB Page MSB Page CSB Page LSB Page

Flash Memory Structure

Page 63: Welcome to 236601 - Coding and Algorithms for Memories 1

63

Raw BER Results

Page 64: Welcome to 236601 - Coding and Algorithms for Memories 1

64

BER per page for MLC block

×105

×10-3

Pages, colored the same, behave similarly

01

10

00

11

MSB/LSB

Page 65: Welcome to 236601 - Coding and Algorithms for Memories 1

65

Raw BER Results

011

010

000

001

101

100

110

111

High Voltage

Low Voltage

Page 66: Welcome to 236601 - Coding and Algorithms for Memories 1

66