flash闪存

宏旺半导体通俗易懂的让你了解SSD固态硬盘结构和基本工作原理

拟墨画扇 提交于 2020-03-23 18:32:25
从CPU处理速度越来越快,到内存的蓬勃发展,如今随着技术的进步,SSD的普及度也大大提升,在疫情期间,不少人也打算给自己的电脑升级一块高速大容量的SSD。之前的文章中,我们聊到了eMMC的工作原理,今天宏旺半导体就跟大家来聊一聊SSD固态硬盘的结构和基本工作原理 SSD 主要由 SSD 控制器,FLASH 存储阵列,板上DRAM,以及跟HOST接口(诸如SATA,SAS, PCIe等)组成。而其中最重要的三个组件就是NAND闪存,控制器及固件。NAND闪存负责重要的存储任务,控制器和固件需要协作来完成复杂且同样重要的任务,即管理数据存储、维护SSD性能和使用寿命等。 SSD 的基本工作原理是从主机PC端开始,用户从操作系统应用层面对SSD发出请求,文件系统将读写请求经驱动转化为相应的符合协议的读写和其他命令,SSD收到命令执行相应操作,然后输出结果,每个命令的输入和输出经协议标准组织标准化,这是标准的东西,和HDD无异,只不过HDD替换成SSD硬件存储数据,访问的对象变成SSD。 宏旺半导体之前说过,由于闪存不能覆盖写,闪存块需擦除才能写入。主机发来的某个数据块,它不是写在闪存固定位置,SSD可以为其分配任何可能的闪存空间写入。因此,SSD内部需要FTL这样一个东西,完成逻辑数据块到闪存物理空间的转换或者映射。 举个例子,假设SSD容量为128GB,逻辑数据块大小为4KB

nor flash 与 nand flash 区别

自闭症网瘾萝莉.ら 提交于 2020-02-26 21:11:17
转载:http://blog.csdn.net/shuaishuai80/article/details/6202205 介绍的很详细 Flash编程原理都是只能将1写为0,而不能将0写成1.所以在Flash编程之前,必须将对应的块擦除,而擦除的过程就是将所有位都写为1的过程,块内的所有字节变为0xFF . 因此可以说,编程是将相应位写0的过程,而擦除是将相应位写1的过程,两者的执行过程完全相反 . (1) 闪存芯片读写的基本单位不同 应用程序对NorFlash芯片操作以“字”为基本单位.为了方便对大容量NorFlash闪存的管理,通常将NOR闪存分成大小为128KB或64KB的逻辑块,有时块内还分扇区.读写时需要同时指定逻辑块号和块内偏移.应用程序对NandFlash芯片操作是以“块”为基本单位.NAND闪存的块比较小,一般是8KB,然后每块又分成页,页大小一般是512字节.要修改NandFlash芯片中一个字节,必须重写整个数据块. (2) NorFlash闪存是随机存储介质,用于数据量较小的场合;NandFlash闪存是连续存储介质,适合存放大的数据. (3) 由于NorFlash地址线和数据线分开,所以NorFlash芯片可以像SDRAM一样连在数据线上.NOR芯片的使用类似于通常内存芯片,传输效率高,可执行程序可以在芯片内执行(XI P, eXecute In Place

NOR型flash与NAND型flash的区别

喜欢而已 提交于 2020-02-26 20:50:09
不同点: 1) 闪存芯片读写的基本单位不同 应用程序对NOR芯片操作以“字”为基本单位。为了方便对大容量NOR闪存的管理,通常将NOR闪存分成大小为128KB或者64KB的逻辑块,有时候块内还分成扇区。读写时需要同时指定逻辑块号和块内偏移。应用程序对NAND芯片操作是以“块”为基本单位。NAND闪存的块比较小,一般是8KB,然后每块又分成页,页的大小一般是512字节。要修改NAND芯片中一个字节,必须重写整个数据块。 2)NOR闪存是随机存储介质,用于数据量较小的场合;NAND闪存是连续存储介质,适合存放大的数据。 3) 由于NOR地址线和数据线分开,所以NOR芯片可以像SRAM一样连在数据线上。NOR芯片的使用也类似于通常的内存芯片,它的传输效率很高,可执行程序可以在芯片内执行( XI P, eXecute In Place),这样应用程序可以直接在flash闪存内运行,不必再把代码 读到系统RAM中。由于NOR的这个特点,嵌入式系统中经常将NOR芯片做启动芯片使用。而NAND共用地址和数据总线,需要额外联结一些控制的输入输出,所以直接将NAND芯片做启动芯片比较难。 4) N AN D闪存芯片因为共用地址和数据总线的原因,不允许对一个字节甚至一个块进行的数据清空,只能对一个固定大小的区域进行清零操作;而NOR芯片可以对字进行操作。所以在处理小数据量的I

NOR型flash与NAND型flash的区别

 ̄綄美尐妖づ 提交于 2020-02-26 20:44:01
1) 闪存芯片读写的基本单位不同 应用程序对NOR芯片操作以“字”为基本单位。为了方便对大容量NOR闪存的管理,通常将NOR闪存分成大小为128KB或者64KB的逻辑块,有时候块内还分成扇区。读写时需要同时指定逻辑块号和块内偏移。应用程序对NAND芯片操作是以“块”为基本单位。NAND闪存的块比较小,一般是8KB,然后每块又分成页,页的大小一般是512字节。要修改NAND芯片中一个字节,必须重写整个数据块。 2)NOR闪存是随机存储介质,用于数据量较小的场合;NAND闪存是连续存储介质,适合存放大的数据。 3) 由于NOR地址线和数据线分开,所以NOR芯片可以像SRAM一样连在数据线上。NOR芯片的使用也类似于通常的内存芯片,它的传输效率很高,可执行程序可以在芯片内执行( XI P, eXecute In Place),这样应用程序可以直接在flash闪存内运行,不必再把代码 读到系统RAM中。由于NOR的这个特点,嵌入式系统中经常将NOR芯片做启动芯片使用。而NAND共用地址和数据总线,需要额外联结一些控制的输入输出,所以直接将NAND芯片做启动芯片比较难。 4) N AN D闪存芯片因为共用地址和数据总线的原因,不允许对一个字节甚至一个块进行的数据清空,只能对一个固定大小的区域进行清零操作;而NOR芯片可以对字进行操作。所以在处理小数据量的I

FLASH和EEPROM的最大区别

隐身守侯 提交于 2020-01-05 02:53:53
FLASH和EEPROM的最大区别是FLASH按扇区操作,EEPROM则按字节操作,二者寻址方法不同,存储单元的结构也不同,FLASH的电路结构较简单,同样容量占芯片面积较小,成本自然比EEPROM低,因而适合用作程序存储器,EEPROM则更多的用作非易失的数据存储器。当然用FLASH做数据存储器也行,但操作比EEPROM麻烦的多,所以更“人性化”的MCU设计会集成FLASH和EEPROM两种非易失性存储器,而廉价型设计往往只有FLASH,早期可电擦写型MCU则都是EEPRM结构,现在已基本上停产了。 至于那个“总工”说的话如果不是张一刀记错了的话,那是连基本概念都不对,只能说那个“总工”不但根本不懂芯片设计,就连MCU系统的基本结构都没掌握。在芯片的内电路中,FLASH和EEPROM不仅电路不同,地址空间也不同,操作方法和指令自然也不同,不论冯诺伊曼结构还是哈佛结构都是这样。技术上,程序存储器和非易失数据存储器都可以只用FALSH结构或EEPROM结构,甚至可以用“变通”的技术手段在程序存储区模拟“数据存储区”,但就算如此,概念上二者依然不同,这是基本常识问题。 没有严谨的工作精神,根本无法成为真正的技术高手。 现在的单片机,RAM主要是做运行时数据存储器,FLASH主要是程序存储器,EEPROM主要是用以在程序运行保存一些需要掉电不丢失的数据. 楼 上说的很好 另外,一些变量

NOR型flash与NAND型flash的区别

末鹿安然 提交于 2019-12-24 16:39:49
转自http://jinren1010.spaces.eepw.com.cn/articles/article/item/15556    (1)闪存芯片读写的基本单位不同应用程序对NOR芯片操作以“ 字 ”为基本单位。为了方便对大容量NOR闪存的管理,通常将NOR闪存分成大小为128KB或者64KB的逻辑块,有时候块内还分成扇区。读写时需要同时指定逻辑块号和块内偏移。应用程序对NAND芯片操作是以“块”为基本单位。NAND闪存的块比较小,一般是8KB,然后每块又分成页,页的大小一般是512字节。要修改NAND芯片中一个字节,必须重写整个数据块。 (2)NOR闪存是随机存储介质,用于 数据量较小 的场合;NAND闪存是连续存储介质,适合 存放大的数据 。 (3)由于NOR地址线和数据线分开,所以NOR芯片可以像SRAM一样连在数据线上。NOR芯片的使用也类似于通常的内存芯片,它的传输效率很高,可执行程序可以在芯片内执行( XI P, eXecute In Place),这样应用程序可以直接在flash闪存内运行,不必再把代码读到系统RAM中。由于NOR的这个特点,嵌入式系统中经常将NOR芯片做启动芯片使用。而NAND共用地址和数据总线,需要额外联结一些控制的输入输出,所以直接将NAND芯片做启动芯片比较难。 (4)NAND闪存芯片因为共用地址和数据总线的原因

SSD基本原理

浪子不回头ぞ 提交于 2019-12-21 16:41:28
SSD组成 SSD Controler、Flash Memory Array(NAND Flash,存储颗粒)、Dram(option)、Host Interface(eg. SATA、SAS、PCIe) SSD基本工作原理: 从主机PC端开始,用户从操作系统应用层面对SSD发出请求,文件系统将读写请求经drive转化为相应的符合协议的命令,SSD收到命令执行相应操作,然后输出结果。 对SSD来说,输入是Command,输出是Data和Command Status。SSD前端(Front End)接受用户命令请求,经过内部处理,输出用户请求的数据或状态。 SSD前端负责和主机直接通信,接受主机发来的命令和相关数据,命令经SSD处理后,最终交由前端返回命令状态数数据给主机。 SSD通过SATA、SAS、PCIe等类型接口与主机相连,遵守相应的ATA、SCSI、NVMe协议。如表所示: 接口类型 协议命令 主机控制器接口 标准组织 文档链接 SATA ATA/SATA Command Set AHCI(Advanced Host Controller Interface) ATA-IO SATA Spec SAS SCSI Command Set SCSI T10 of INCITs SCSI Express PCIe NVMe Command Set NVMe PCI Express

浅谈RAM、ROM、EPROM、闪存FLASH

点点圈 提交于 2019-12-18 08:11:12
RAM Random Access Memory,随机存取存储器,主要用来储存实时数据,表格等,可以通过指令随机地访问储存单元。它的速度快,但是需要供电才能工作,一旦掉电数据就会丢失。 通俗的讲,就类似于手机上的运行内存 ROM Read Only Memory,只读式存储器,通俗的讲,它只支持读,不支持擦写,一般用来存储文件、固定代码和一些固定指令等,不会因掉电而丢失数据。但是写入ROM中的信息只能被读出,不能修改。 EPROM (英文名太长了。)可擦除可编程只读存储器,它是一种可以用特殊的装置擦除或重写其中内容的存储器 闪存FLASH 一种非易失性( Non-Volatile )内存,就算没有供电它也可以长久的保存数据,可理解为硬盘,支持在线传输,读写速度快 来源: CSDN 作者: 漠失沉沦 链接: https://blog.csdn.net/sinat_39560711/article/details/103578473

SSD固态硬盘的结构和基本工作原理概述

∥☆過路亽.° 提交于 2019-12-16 07:08:55
展开 我们都知道,早期的电脑CPU是可以直接从硬盘上面读取数据进行处理的,随着科技的进步,时代的发展,计算机硬件的发展速度也是极其迅猛。CPU主频的不断提升,从单核到双核,再到多核;CPU的处理速度越来越快,而硬盘的的读写速度已经远远跟不上CPU的读写速度,后来增加了内存这个读写速度相对较快的缓存,而内存也是蓬勃到发展,从SDRAM到DDR,从DDR到DDR2再到DDR3,但是无论怎样,内存缓存速度还是跟不上CPU的运算处理速度,后来便在CPU中增加了快速缓存机制!而硬盘这个持久化存储器呢?之前的文章,聊到了机械硬盘的结构和工作原理,今天就来聊一聊SSD固态硬盘的结构和基本工作原理,如理解有所变差,或文章有所不足,皆因水平所限! 硬盘的发展在不断的科技进步中快速提升,从容量以及速度再到接口方面。从早期的PATA变成SATA,SCSI变到SAS,以及垂直记录技术在容量上的突破,但这些进步亦未能改变磁盘的记录方式。随着人们对数据需求增多,存储系统的瓶颈越来越明显。而在嵌入式领域移动设备和工业自动化控制等恶劣环境下,传统硬盘机械结构已经无法满足要求,而所有这一切随着固态存储(SSD)的到来而发生了改变。 传统的机械硬盘(HDD)运行主要是靠机械驱动头,包括马达、盘片、磁头摇臂等必需的机械部件,它必须在快速旋转的磁盘上移动至访问位置,至少95%的时间都消耗在机械部件的动作上

嵌入式学习之Linux文件系统、

旧巷老猫 提交于 2019-12-05 05:13:31
Linux 支持多种文件系统,包括 ext2、 ext3、 vfat、 ntfs、 iso9660、 jffs、 romfs和nfs 等,为了对各类文件系统进行统一管理,Linux 引入了虚拟文件系统VFS(Virtual File System) ,为各类文件系统提供一个统一的操作界面和应用编程接口。本文将和大家详细介绍 Linux文件系统 相关知识,一起来看看吧。 Linux 下的文件系统结构如下: Linux 启动时,第一个必须挂载的是根文件系统;若系统不能从指定设备上挂载根文件系统,则系统会出错而退出启动。之后可以自动或手动挂载其他的文件系统。因此,一个系统中可以同时存在不同的文件系统。   不同的文件系统类型有不同的特点,因而根据 存储  设备的硬件特性、系统需求等有不同的应用场合。在嵌入式 Linux应用中,主要的 存储  设备为 RAM(DRAM, SDRAM)和ROM( 常采用FLASH 存储器) ,常用的基于存储设备的文件系统类型包括:jffs2, yaffs, cramfs, romfs, ramdisk, ramfs/tmpfs等。 1. 基于 FLASH的文件系统 Flash  ( 闪存 )作为嵌入式系统的主要存储媒介,有其自身的特性。 Flash  的写入操作只能把对应位置的 1修改为 0 ,而不能把 0 修改为 1( 擦除 Flash