flash rom ram

来源:互联网 发布:淘宝网小狗用品 编辑:程序博客网 时间:2024/05/16 12:25
闪存的英文名称是"Flash Memory",一般简称为"Flash",它属于内存器件的一种。
各类 DDR 、 SDRAM 或者 RDRAM 都属于挥发性内存,只要停止电流供应内存中的数据便无法保持,因此每次电脑开机都需要把数据重新载入内存.
闪存是一种非易失性存储器,即断电数据也不会丢失。因为闪存不像RAM(随机存取存储器)一样以字节为单位改写数据,因此不能取代RAM。
NOR型闪存更像内存,有独立的地址线和数据线,但价格比较贵,容量比较小;而NAND型更像硬盘,地址线和数据线是共用的I/O线,类似硬盘的所有信息都通过一条硬盘线传送一般,而且NAND型与NOR型闪存相比,成本要低一些,而容量大得多。因此,NOR型闪存比较适合频繁随机读写的场合,通常用于存储程序代码并直接在闪存内运行,手机就是使用NOR型闪存的大户,所以手机的“内存”容量通常不大;NAND型闪存主要用来存储资料,我们常用的闪存产品,如闪存盘、数码存储卡都是用NAND型闪存
1、SPI Flash (即SPI Nor Flash)是Nor Flash的一种;
2、NOR Flash根据数据传输的位数可以分为并行(Parallel)NOR Flash和串行(SPI)NOR Flash;
3、SPI Nor Flash每次传输一个bit位的数据,parallel Nor Flash每次传输多个bit位的数据(有x8和x16bit两种);
4、SPI Nor Flash比parallel便宜,接口简单点,但速度慢。
严格的说DDR应该叫DDR SDRAM,人们习惯称为DDR


RAM(Random Access Memory)的全名为随机存取记忆体,它相当于PC机上的移动存储,用来存储和保存数据的。它在任何时候都可以读写,RAM通常是作为操作系统或其他正在运行程序的临时存储介质(可称作系统内存)。         不过,当电源关闭时RAM不能保留数据,如果需要保存数据,就必须把它们写入到一个长期的存储器中(例如硬盘)。正因为如此,有时也将RAM称作“可变存储器”。RAM内存可以进一步分为静态RAM(SRAM)和动态内存(DRAM)两大类。DRAM由于具有较低的单位容量价格,所以被大量的采用作为系统的主记忆。  ROM(Read Only Memory)的全名为唯读记忆体,它相当于PC机上的硬盘,用来存储和保存数据。ROM数据不能随意更新,但是在任何时候都可以读取。即使是断电,ROM也能够保留数据。但是资料一但写入后只能用特殊方法或根本无法更改,因此ROM常在嵌入式系统中担任存放作业系统的用途。现在市面上主流的PDA的ROM大小是64MB以及128MB。      RAM和ROM相比,两者的最大区别是RAM在断电以后保存在上面的数据会自动消失,而ROM就不会。  由于ROM不易更改的特性让更新资料变得相当麻烦,因此就有了Flash Memory的发展 ,Flash Memory具有ROM不需电力维持资料的好处,又可以在需要的时候任意更改资料 ,不过单价也比普通的ROM要高。         SRAM速度非常快,是目前读写最快的存储设备了,但是它也非常昂贵,所以只在要求很苛刻的地方使用,譬如CPU的一级缓冲,二级缓冲。动态RAM(Dynamic RAM/DRAM)保留数据的时间很短,速度也比SRAM慢,不过它还是比任何的ROM都要快,但从价格上来说DRAM相比SRAM要便宜很多,计算机内存就是DRAM的。         DRAM分为很多种,常见的主要有FPRAM/FastPage、EDORAM、SDRAM、DDR RAM、RDRAM、SGRAM以及WRAM等,这里介绍其中的一种DDR RAM。        DDR RAM(Date-Rate RAM)也称作DDR SDRAM,这种改进型的RAM和SDRAM是基本一样的,不同之处在于它可以在一个时钟读写两次数据,这样就使得数据传输速度加倍了。这是目前电脑中用得最多的内存,而且它有着成本优势,事实上击败了Intel的另外一种内存标准-Rambus DRAM。在很多高端的显卡上,也配备了高速DDR RAM来提高带宽,这可以大幅度提高3D加速卡的像素渲染能力。          内存工作原理:内存是用来存放当前正在使用的(即执行中)的数据和程序,我们平常所提到的计算机的内存指的是动态内存(即DRAM),动态内存中所谓的"动态",指的是当我们将数据写入DRAM后,经过一段时间,数据会丢失,因此需要一个额外设电路进行内存刷新操作。 
历史老照片不能说的秘密
慈禧军阀明末清初文革晚清

         具体的工作过程是这样的:一个DRAM的存储单元存储的是0还是1取决于电容是否有电荷,有电荷代表1,无电荷代表0。但时间一长,代表1的电容会放电,代表0的电容会吸收电荷,这就是数据丢失的原因;刷新操作定期对电容进行检查,若电量大于满电量的1/2,则认为其代表1,并把电容充满电;若电量小于1/2,则认为其代表0,并把电容放电,藉此来保持数据的连续性。           ROM也有很多种,PROM是可编程的ROM,PROM和EPROM(可擦除可编程ROM)两者区别是,PROM是一次性的,也就是软件灌入后,就无法修改了,这种是早期的产品,现在已经不可能使用了,而EPROM是通过紫外光的照射擦出原先的程序,是一种通用的存储器。另外一种EEPROM是通过电子擦出,价格很高,写入时间很长,写入很慢。         举个例子,手机软件一般放在EEPROM中,我们打电话,有些最后拨打的号码,暂时是存在SRAM中的,不是马上写入通过记录(通话记录保存在EEPROM中),因为当时有很重要工作(通话)要做,如果写入,漫长的等待是让用户忍无可忍的。           FLASH存储器又称闪存,它结合了ROM和RAM的长处,不仅具备电子可擦除可编程(EEPROM)的性能,还不会断电丢失数据同时可以快速读取数据(NVRAM的优势),U盘和MP3里用的就是这种存储器。在过去的20年里,嵌入式系统一直使用ROM(EPROM)作为它们的存储设备,然而近年来Flash全面代替了ROM(EPROM)在嵌入式系统中的地位,用作存储Bootloader以及操作系统或者程序代码或者直接当硬盘使用(U盘)。          目前Flash主要有两种NOR Flash和NADN Flash。NOR Flash的读取和我们常见的SDRAM的读取是一样,用户可以直接运行装载在NOR FLASH里面的代码,这样可以减少SRAM的容量从而节约了成本。NAND Flash没有采取内存的随机读取技术,它的读取是以一次读取一块的形式来进行的,通常是一次读取512个字节,采用这种技术的Flash比较廉价。用户不能直接运行NAND Flash上的代码,因此好多使用NAND Flash的开发板除了使用NAND Flah以外,还作上了一块小的NOR Flash来运行启动代码。          一般小容量的用NOR Flash,因为其读取速度快,多用来存储操作系统等重要信息,而大容量的用NAND FLASH,最常见的NAND FLASH应用是嵌入式系统采用的DOC(Disk On Chip)和我们通常用的"闪盘",可以在线擦除。目前市面上的FLASH 主要来自Intel,AMD,Fujitsu和Mxic,而生产NAND Flash的主要厂家有Samsung和Toshiba及Hynix


看了点帖子,有点哭笑不得,首先咱们分清RAM和ROM的区别再讨论吧
RAM是类似于我们电脑的内存一样的存在,本身不保存数据,但是日常使用必然会占用它的空间缓存数据,无论是日常使用的程序游戏还是系统本身都要占用这个RAM,也因此,我们使用某些软件时,显示出的RAM是实际可用RAM,是除去了系统占用的那部分空间的。拿NEO的同宗大哥X10来举例,X10的RAM是256+128M,其中128M是显存,有点像咱们电脑的显卡独立出的显存部分,它不被其他应用说占用,只有特定情况下才使用,然而,我们使用X10,用一些查看系统硬件的工具查看,往往得到的是260左右的一个数值,按理说这个奇怪的数值是很诡异的,做成260M根本不符合计算机算法(通常为2的N次方),得到的结论是,这些软件将系统之外的RAM全部相加得到的这么一个数值,实际上因为没有计算系统自己预留的那部分空间,所以我们看到的RAM本身则比实际宣传的要小的多,因为系统把自己平时必然需要的那部分空间给霸占了。RAM不会因为安装多少软件而减少,只会因为系统运行程序太多或者个人开启了太多程序而减少,断电则复位。
而ROM是什么?是我们电脑的硬盘,更准确一点来说,如果我们的电脑把系统安装到C盘,那这个ROM就是C盘,我们的SD卡就是D、E、F等盘,是用来保存我们安装的程序的,它和我们的内存,也就是RAM是完全两个不同的东西,和我们的SD卡也不同,ROM在android系统下被强行划分为两个部分,一个是系统占用空间,这个是根据系统大小来决定的,并且还有一定的预留的空间以便之后升级用,剩下的那部分,才是我们能用的ROM空间,可以装点软件什么的。所以,一个1G的ROM,装完系统后就只剩下400多M的情况比比皆是,这取决于手机系统都安装了自己的什么样的内容,我们在android的设置项目的SD卡和内存中可以看到这个ROM大小,它是指的我们当前还剩下多少容量来安装软件,不相信的话可以随便找个大一点的软件安装一下,比如那个opera浏览器,再看看这个设置项是不是就减少了?卸载这个软件,空间就回来了。ROM是用来储存数据的,安装任何软件都会消费ROM空间,直到ROM不够用为止。
ROM和RAM概念一定要分开,否则最后丢人的是自己。
但是论坛某个帖子的楼主有一段话我并不同意,并不是说2.2之后,程序可安装到SD卡上,ROM就不重要了,实际上,它仍然重要,因为android的程序运行机制问题导致全部应用都要将部分重要数据保存到手机储存空间中,也就是ROM里去,所以无论安装什么软件,ROM仍然都会消耗,但是消耗的少的多,所以如果有300M左右,平时是足够用了,ROM中不必保存诸如游戏的地图音乐数据之类的,当然会使得ROM压力大幅减轻,通常一个应用全部安装到ROM需要10M的话,2.2之后甚至可能只需要100K保存关键数据,剩下的都放到SD里面去。只是,开机必然启动的程序,还是只能安装到ROM里去,比如说输入法等软件,开机就加载,这种如果安装到SD上,就会有不少麻烦。
检测系统到底有多少ROM和RAM简单也不简单,通常,我们判断RAM有多少,实际上可以大概估算出来,安装高级任务管理器之类的杀进程软件,开机进系统后直接进这个软件,杀进程,看看剩余内存(RAM)是多少,一般来说,这个数字加上60~100就是实际RAM大体数值(不算显存),仍然拿X10举例,开机后打开任务管理器进去,杀光一般开机自启动程序后,2.2系统下剩余180~150,加60~100大概是240~250的样子,由于内存生产规律导致内存只能是2的N次方,也就是128,256,512,1024M,所以取最近的,也就是256M无误。
ROM方面则不大好计算,通常我们去设置,SD卡和手机内存这个项目中,最下方会看到手机内存这一项,有“总容量”“可用空间”这两项,前者是表示除去系统本身和手机厂商自定义程序外加系统预留了一部分空间以后,还剩下了多少ROM给你用,就好比我们C盘安装了系统,系统自己又给自己预留了一定的缓存空间之后,剩下那点才是给你用的C盘,是这么个意思,并不是说ROM就这么大、后者这个可用空间,是说你安装了杂七杂八的程序后,还剩下多少,举例来说就是自家电脑在C盘装了一大堆程序后,还剩下多少可以继续安装其他软件。有时候,系统占用了ROM一倍左右的空间,一个1G的ROM,装完系统后很可能只有400M甚至更少,这取决于手机生产商究竟往系统镜像里塞了多少自己的东西,是有一个浮动的,不过大体比较靠谱,由于索爱深度定制,占用的ROM比其它的手机厂家多一些,所以能占到将近6成甚至还多,所以我们只能看到中容量是多少,因为给你看整个ROM大小也不靠谱,反正你也用不成。X10的ROM为1G,系统安装后,400多M,今后如果出现精简ROM等第三方民间,这个总容量可能会有所提升但是幅度不大。

综上所述,RAM和ROM实际显示数值都会比它真正的大小要小的多,这是因为系统管理机制划走了系统应该占有的那部分空间,你所能查到的空间,是系统用剩下的然后给你的,究竟是多少,还是自己去看一下,算一下吧。

0 0