MySQL Disk--NAND Flash原理
======================================================
NAND Flash最小存储单元:
写数据操作:
通过对控制闸(Control Gate)施加高电压,然后允许源极(SOURCE)和汲极(RRAIN)间的N信道(N-Channel)流入电子,等到电流够强,电子获得足够能量时,便会越过浮置闸(Floating Gate)底下的二氧化硅层(SiO2)为单元所捕获,该过程被成为穿隧效应(Tunnel Effect)。首先将数据转换为二进制0和1,再通过向浮置闸(Floating Gate)里流入电子数量的多寡来表示要写入的二进制数据。
通过对控制闸(Control Gate),使得浮置闸(Floating Gate)里的电子被吸住,然后让N通道(N-Channel)通过电流,利用电流感应浮置闸(Floating Gate)里电子捕获量的多寡,通过感应强度转换为二进制的0和1,最终转换为数据。
通过对单元底下P型半导体(P-Well)施加电压,使得浮置闸(Floating Gate)里的电子通过源极(SOURCE)和汲极(RRAIN)间的N信道(N-Channel)穿越二氧化硅层流出,该过程被成为穿隧释出(Tunnel Release)。
对于SSD固态硬盘(NAND-Flash)的最小存储单元,通过向存储单元中流入电子来"写数据",再通过感应存储单元中的电子来“读数据”,通过释放存储单元中电子来“擦除数据”。
SSD 数据稳定性问题
1、在无外力作用下,浮置闸(Floating Gate)里的电子没有足够能量逃离存储单元底部的二氧化硅层,浮置闸(Floating Gate)里的电子不会发生变化,则数据稳定。 2、存储单元中用来绝缘的二氧化硅层会随时间推移而损耗,对MLC NAND闪存来说通常可以保存10年。 3、半导体的导电性受温度影响严重,随着环境温度身高,电子会更快地从浮置闸(Floating Gate)中逃离,导致存储单元的电压状态改变,导致数据不可读。在不通电状态下SSD要达到JEDEC规定的数据保存率,消费级SSD是30°C温度下1年,企业级是40°C下三个月。
======================================================
SSD擦写寿命问题
在“写数据”和“擦除数据”过程中,电子需要通过二氧化硅层流入或流出浮置闸(Floating Gate),随着电子流入或流出,用来绝缘的二氧化硅层(10nm左右厚度)的院子键会被一点一点破坏掉,随着电子会慢慢占据二氧化硅层,会抵消掉施加在控制闸上的电压,导致需要更高电压才能完成数据存取操作,而高电压又使得氧化物更快被击穿,当整个二氧化硅层被电子贯穿后,该存储单元便无法继续使用。
======================================================
SLC MLC TLC介绍
SLC(Single-Level Cell),每个存储单元存放1bit信息,将浮置闸里电子捕获状态分为有和无,对应二进制数据0和1。
MLC(Multi-Level Cell),每个存储单元存放2bit信息,将浮置闸里电子捕获状态分为高、中、低、无四种状态,对应二进制数据00、01、10、11。
TLC(Triple-Level Cell),每个存储单元存放3bit信息,将浮置闸里电子捕获状态分为8种状态,对应二进制数据000到111。
对应相同面积的芯片,每个存储单元所占空间相同,每个存储单元存放的信息量决定整个芯片的信息量,因此TCL的容量相对要远高于SLC的容量。
相对于SLC仅存放2中状态,MLC/TCL的每个存储单元需要存放4种/8种状态,使得每次“写数据”和“擦除数据”都需要更多流入和流出更多电子,导致二氧化硅绝缘层的使用寿命(擦写次数)较低。
======================================================
内存颗粒等级
当用于NAND Flash的内存颗粒被生产出来后,会根据其质量来决定用途:
1、质量好的用来做最高等级的同步颗粒
2、能被修复的用来做次等级的同步颗粒
3、质量较差的用来做低等级的异步颗粒
同步颗粒与异步颗粒主要是两个管脚的不同,同步模式下颗粒随时处于Ready状态,能减少一个时钟周期。
英特尔 25nm颗粒的分级表:
======================================================
摘抄自:https://www.cnblogs.com/Christal-R/p/7246415.html
======================================================
MySQL Disk--NAND Flash原理的更多相关文章
- NAND FLASH 原理
NAND FLASH 原理 http://www.360doc.com/content/12/0522/21/21412_212888167.shtml 闪存保存数据的原理: 与DRAM以电容作为存储 ...
- (一)Nand FLASH 原理讲解
NAND FLASH 优势 : 可以用当硬盘 这里好像型号是 K9F2G08 基本结构: 不是很难自己看看,暂时不要看
- Nand Flash与Nor Flash的区别
区别:http://zhidao.baidu.com/question/1068445.html?qbl=relate_question_0&word=Serial%20Flash%20%D3 ...
- NAND Flash【转】
转自:http://www.cnblogs.com/lifan3a/articles/4958224.html 以Micron公司的MT29F2G08为例介绍NAND Flash原理和使用. 1. 概 ...
- NAND FLASH
NAND Flash 以Micron公司的MT29F2G08为例介绍NAND Flash原理和使用. 1. 概述 MT29F2G08使用一个高度复用的8-bit总线(I/O[7:0])来数据传输.地址 ...
- u-boot移植总结(三)(转)S3C2440对Nand Flash操作和电路原理(基于K9F2G08U0A)
S3C2440对Nand Flash操作和电路原理(基于K9F2G08U0A) 转载自:http://www.cnblogs.com/idle_man/archive/2010/12/23/19153 ...
- ECC校验原理以及在Nand Flash中的应用
本篇文章主要介绍ECC基本原理以及在Nand Flash中的应用,本文记录自己对ECC校验原理的理解和学习. ECC介绍 ECC,全称为Error Correcting Code, ...
- NAND FLASH ECC校验原理与实现
ECC简介 由于NAND Flash的工艺不能保证NAND的Memory Array在其生命周期中保持性能的可靠,因此,在NAND的生产中及使用过程中会产生坏块.为了检测数据的可靠性,在应用NAND ...
- Nand Flash 控制器工作原理
对 Nand Flash 存储芯片进行操作, 必须通过 Nand Flash 控制器的专用寄存器才能完成.所以,不能对 Nand Flash 进行总线操作.而 Nand Flash 的写操作也必须块方 ...
随机推荐
- 关Java的内存模型(JMM)
JMM的关键技术点都是围绕着多线程的原子性.可见性和有序性来建立的 一.原子性(Atomicity) 原子性是指一个操作是不可中断的.即使是在多个线程一起执行的时候,一个操作一旦开始,就不会被其他线程 ...
- android--------Android内存分析工具的使用
内存分析(in-memory analytics)是我们编写速度快.效率高的代码必不可少的知识.如果自己编写的代码在内存的分配一无所知,我想这样的程序让你去优化,应该是无从下手的.那么内存分析是什么? ...
- PowerDesigner16工具学习笔记-工具介绍
1.初始界面 1.1 .浏览窗口:本地(Local)浏览窗口.知识库(Repository)浏览窗口 Local:用于显示本地模型 Repository:用于显示知识库模型 1.2 .输出窗口:用于显 ...
- MVC ——设置启动 URL
Visual Studio 会以一种有助的尝试,根据当前正在编辑的视图,让浏览器请求一个 URL.但这是一个不稳定的特性. 为了对浏览器的请求设置一个固定的 URL,可以从 Visual Studio ...
- 一、Object类
1.Object类是所有类的父类 声明一个类的时候,实际上已经默认继承了Object类 package property; public class Hero extends Object{ Stri ...
- memory prefix un,under,uni out1
1● un 不 非,无 打开 ,解开 ,开出 2● under ʌnd ə 向下,副 的,不足的 3● uni 单一 ,单
- Css的向左浮动、先右浮动、绝对定位、相对定位的简单使用
1.div层的浮动 1)div向左浮动.向右浮动 <!doctype html> <html> <head> <meta charset="utf- ...
- NRF51822+STM32bootload——typedef void (*Fun) (void) 理解
1.typdef 用法如下所示 typedef unsigned char uint8_t; typedef unsigned short int uint16_t; typedef unsigned ...
- download fomat install rootfs script
download.sh #!/bin/sh # check the network first serverip=$(cat /tmp/serverip) while true; do ping -c ...
- CentOS6编译安装Python3
CentOS6默认Python版本是2, 但我使用的是Python3,因此需要自己安装 但记住,不要删除自带的Python2,否则很多东西会报错,比如yum之类的.(别问我为什么知道...) 话不多说 ...