nand flash 原理简介【转】Fisrt part : NAND flash和NOR flash的不同NOR flash采用位读写,因为它具有sram的接口,有足够的引脚来寻址,可以很容易的存取其内部的每一个字节。
NAND flash使用复杂的I/O口来穿行地存取数据。8个引脚用来传送控制、地址和数据信息。
NAND的读和写单位为512Byte的页,擦写单位为32页的块。 ● NOR的读速度比NAND稍快一些。
● NAND的写入速度比NOR快很多。 ● NAND的4ms擦除速度远比NOR的5s快。
● 大多数写入操作需要先进行擦除操作。 ● NAND的擦除单元更小,相应的擦除电路更少。
在NOR器件上运行代码不需要任何的软件支持,在NAND器件上进行同样操作时,通常需要驱动程序,也就是内存技术驱动程序(MTD),NAND和NOR器件在进行写入和擦除操作时都需要MTD。 ---------摘抄自网上流传很广的《NAND 和 NOR flash的区别》Second part: NAND Flash结构与驱动分析一、NAND flash的物理组成 NAND Flash 的数据是以bit的方式保存在memory cell,一般来说,一个cell 中只能存储一个bit。
这些cell 以8个或者16个为单位,连成bit line,形成所谓的byte(x8)/word(x16),这就是NAND Device的位宽。这些Line会再组成Page,(NAND Flash 有多种结构,我使用的NAND Flash 是K9F1208,下面内容针对三星的K9F1208U0M),每页528Bytes(512byte(Main Area)+16byte(Spare Area)),每32个page形成一个Block(32*528B)。
具体一片flash上有多少个Block视需要所定。我所使用的三星k9f1208U0M具有4096个block,故总容量为4096*(32*528B)=66MB,但是其中的2MB是用来保存ECC校验码等额外数据的,故实际中可使用的为64MB。
NAND flash以页为单位读写数据,而以块为单位擦除数据。按照这样的组织方式可以形成所谓的三类地址: Column Address:Starting Address of the Register. 翻成中文为列地址,地址的低8位 Page Address :页地址 Block Address :块地址 对于NAND Flash来讲,地址和命令只能在I/O[7:0]上传递,数据宽度是8位。
二、NAND Flash地址的表示 512byte需要9bit来表示,对于528byte系列的NAND,这512byte被分成1st half Page Register和2nd half Page Register,各自的访问由地址指针命令来选择,A[7:0]就是所谓的column address(列地址),在进行擦除操作时不需要它,why?因为以块为单位擦除。32个page需要5bit来表示,占用A[13:9],即该page在块内的相对地址。
A8这一位地址被用来设置512byte的1st half page还是2nd half page,0表示1st,1表示2nd。Block的地址是由A14以上的bit来表示。
例如64MB(512Mb)的NAND flash(实际中由于存在spare area,故都大于这个值),共4096block,因此,需要12个bit来表示,即A[25:14],如果是128MB(1Gbit) 的528byte/page的NAND Flash,则block address用A[26:14]表示。而page address就是blcok address|page address in block NAND Flash 的地址表示为: Block Address|Page Address in block|halfpage pointer|Column Address 地址传送顺序是Column Address,Page Address,Block Address。
由于地址只能在I/O[7:0]上传递,因此,必须采用移位的方式进行。 例如,对于512Mbit x8的NAND flash,地址范围是0~0x3FF_FFFF,只要是这个范围内的数值表示的地址都是有效的。
以NAND_ADDR 为例: 第1 步是传递column address,就是NAND_ADDR[7:0],不需移位即可传递到I/O[7:0]上,而halfpage pointer即A8 是由操作指令决定的,即指令决定在哪个halfpage 上进行读 写,而真正的A8 的值是不需程序员关心的。 第2 步就是将NAND_ADDR 右移9位,将NAND_ADDR[16:9]传到I/O[7:0]上; 第3 步将NAND_ADDR[24:17]放到I/O上; 第4步需要将NAND_ADDR[25]放到I/O上; 因此,整个地址传递过程需要4 步才能完成,即4-step addressing。
如果NAND Flash 的容量是32MB(256Mbit)以下,那么,block adress最高位只到bit24,因此寻址只需要3步。 下面,就x16 的NAND flash 器件稍微进行一下说明。
由于一个page 的main area 的容量为256word,仍相当于512byte。但是,这个时候没有所谓的1st halfpage 和2nd halfpage 之分了,所以,bit8就变得没有意义了,也就是这个时候 A8 完全不用管,地址传递仍然和x8 器件相同。
除了,这一点之外,x16 的NAND使用方法和 x8 的使用方法完全相同。三、NAND flash驱动解读 以前由于做移植多一些,那些工作很简单(现在看来),从来都不用去关心驱动里面到底怎么实现的,这几次面试才发现真的是学的太浅了,似乎我还在学习仰泳而那些牛人基本都属于潜水级的了,潜的不知有多深。
我对照着开发板所带的NAND flash驱动和k9f1208的芯片资料把这些代码通读了一遍,终于明白了NAND flash的读写过程是如何实现的了。我所参考的驱动是mizi公司为三星芯片所写的,我看看了,大概和官方2.4.18内核的nand.c差不多。
在s3c2410处理器中有专门的NAND flash控制器,他们位于SFR区,具体可以参看s3c2410用户手册。以下的这些代码均可以在vivi或者kernel里面找到,文中会标明程序出自何处。
在vivi中。
什么是Flash Memory?FLASH存储器又称闪存(快闪存储器),是一种电可擦可编程只读存储器(EEPROM)的形式,允许在操作中被多次擦或写,EEPROM与高速RAM成为当前最常用且发展最快的两种存储技术。
计算机的BIOS 、数字照相机等的存储卡中都使用闪存。 不同的是,EEPROM是以字节为单位进行数据更新,而闪存则以块为单位。
由于闪存可以比 EEPROM具有更小的电路,这使其能够达到更高的集成度,有利于降低价格。 FLASH结合了ROM和RAM的长处,不仅具备电子可擦除可编程(EEPROM)的性能,还不会断电丢失数据同时可以快速读取数据(NVRAM的优势),U盘和MP3里用的就是这种存储器。
在过去的20年里,嵌入式系统一直使用ROM(EPROM)作为它们的存储设备,近年来Flash全面代替了ROM(EPROM)在嵌入式系统中的地位,用作存储BootLoader以及操作系统或者程序代码或者直接当硬盘使用(U盘)。闪存卡(Flash Card)是利用闪存(Flash Memory)技术达到存储电子信息的存储器。
目前市场上主要的闪存或者多媒体卡主要为:TF卡、SM卡、CF卡、MicroDrive、MemoryStick、MemoryStick PRO, MMC卡、Micro SD Card、MiniSD卡、SD卡、SDHC卡和xD卡。 我们常见的FLASH Memory有储存卡与U盘。
TF卡(TransFLash卡)、SD卡(Secure Digital Memory Card)、CF卡(Compact Flash卡)等。 CF卡(Compact Flash)是1994年由SanDisk最先推出的一种闪存卡,它革命性的使用了闪存技术,对所保存的数据来说,CF卡比传统的磁盘驱动器安全性和保护性都更高。
90年代末至21世纪初出现了SD、MMC、SDHC、MS、xD图像卡等等记忆卡制式,它们将占据各种数码产品及移动存储。路由器、交换器等大多数的网络及电信设备及数码相机仍以CF卡为主要的外部储存装置。
SM卡(Smart Media)是由东芝公司在1995年11月退出的Flash Memory存贮卡,三星公司在1996年购买了生产和销售许可,这两家公司成为主要的SM卡厂商。SmartMedia卡是市场上常见的微存贮卡(但是最大容量只有128MB),一度在MP3播放器上非常的流行。
SmartMedia卡被视为软磁盘的替代者,曾是数码相机普遍支持的存储格式,如今已是没落消亡之势。这一格式相比其他而言最大的好处是通过一个名为FlashPath的转换器,可以在标准的3.5英寸软盘驱动器内使用任何容量的SM卡。
MMC卡(MultiMedia Card)卡由西门子公司和首推CF的SanDisk公司于1997年联合推出,号称是目前世界上最小的Flash Memory存贮卡。 近年MMC卡技术已差不多完全被SD卡所代替,但由于MMC卡仍可被兼容SD卡的设备所读取,因此仍有其作用。
少数一些公司,最著名的如诺基亚,仍然全部地支持MMC。MS卡(Memory Stick)通常称为记忆棒,是Sony公司研发并于1998年10月推出市场的,采用了Sony自己的外型、协议、物理格式和版权保护的一种闪存卡。
MS卡的规格和同一时间上市的MMC很相似。 SD卡(Security Digital Memory Card,译成安全数码卡)由松下、东芝和SanDisk联合推出,1999年8月才首次发布,大小如一张邮票。
一般SD卡也能够向下兼容MMC卡。容量4GB以上称为microSDHC(Secure Digital High Capacity),更大的容量就必须使用microSDXC(Secure Digital eXtended Capacity)规格。
SD卡是东芝在MMC卡技术中加入加密技术硬件而成,SD/MMC卡已经替代东芝开发的SM卡,成为了便携式数码相机使用最广泛的数字存储卡格式。之前仍然在坚持使用自己的专利格式的三大主要厂商:奥林巴斯和富士(xD卡),索尼(Memory Stick),也开始转而使用SD卡(或提供双卡支持)。
SD读卡器对计算机来说类似一个USB的软驱的作用,插上SD卡后的读卡器跟U盘功能是一样的,大小也和普通U盘类似。读卡器与电脑主机之间的连接都是采用USB接口,这种产品是配合数码相机而产生的。
有外接式和内置式两种,不少新的个人电脑都已经内置了多功能的读卡器。 TF卡(TransFlash)由SanDisk(闪迪)公司发明创立,是一种主要用于手机的极细小的快闪存储器卡,2004年重命名为MicroSD(顾名思义,就是小SD卡)。
几乎只有一片指甲盖的大小,主流台式机、笔记本上均没有直接插槽,通过SD式读卡器连接后可以读写数据。 xD卡(eXtreme Digital-Picture Card)是一种专门于数码相机的闪存存储卡,由富士胶卷与奥林巴斯联合于2002年7月发布,用于取代SM卡(SmartMedia Card)。
miniSD是闪迪2003年发布的极细小型规格标准SD卡,特别设计于移动电话上,并随卡附上minSD转接器,令它能够兼容所有配置了标准SD卡插槽的设备中。 微硬盘MD(Microdrive)最早是由IBM公司开发并于1999年上市的一款体积非常微小的硬盘式数据存储设备,用来对抗市面上主流的闪存产品。
IBM将旗下硬盘部门卖给了日立(Hitachi)公司,因此自2003年起MicroDrive的技术与专利是由日立公司拥有。微型硬盘具有记忆容量大、读写速率高有点,缺点是较为耗电、容易发热、使用寿限较短和抗震性能差。
先把电脑基础知识学好了吧 所有软件工具,都是需要什么功能,才会出现其相应的软件;所以你只要了解一个软件它能做什么,不能做什么,能做的话你就可以直接进取找到相应实现功能的按钮,但是有些是几个功能叠加的 你就要去了解,慢慢学习,但是先了解还是最重要的材料二 首先要做的是电脑的入门。
用电脑娱乐当然是最好的方法了,比如可以玩游戏,看影碟或上网,这些基本的使用只要别人在旁边指点一下就行了,不需要专门借一本电脑书看着做。我们可以从中了解到Windows的一些基本操作,增加对电脑的感性认识。
总之,电脑入门关键在于多实践。 我要说的是学电脑,如果你用电脑只是用来娱乐休闲,那就偏离了我的初衷。
对于初学者,最好学的当然是文字排版了,不但要会打字,还要会排版,那么就可以做一些文字出版工作了,比如做杂志。要学的软件嘛,有微软的word2000,XP,金山的wps office,但前者用的较多。
如果你嫌上述工作太简单的话,图形编辑正适合你。此工作入门简单,但可以做得很深入,很专业。
许多平面设计公司和广告公司就是靠这个吃饭的。可以学的软件也比较多,老牌的有Adobe的photoshop 6.0,illustrator 9.0,coral的coraldraw 10。
还有macromedia的fireworks 4,freehand 10以及比较流行的flash 5。后三种软件都是软件新秀,和网页制作结合得不错,也比较“傻瓜”,功能却不弱,比较适合初学者。
特别值得一提的是flash,现在网上的flash正热火朝天,用它可以做动画短片、网站甚至游戏。不过不花费许多精力的是做不出来的哦。
对网络世界是不是很感兴趣?你也可以自学作网页!不过这需要有以上几点的基础,即文字排版和美术编辑,然后再学点网络知识,就可以编织你的“梦幻网页”了,可用的软件首推macromedia的dreamweaver 4。如果你习惯word就可以用frontpage,不过它比前者逊色不少,习惯photoshop的可以选go live。
如果你认为以上这些都是小菜一碟,那你要学的就是电脑的高级应用了,比如编程,做动态网页,3ds max、autocad等高级应用或学网络管理。当然你的精力是有限的,能精通以上高级应用中的一种就不错了。
最后再谈谈学电脑需要的一些条件。自己有一台电脑当然是最好了,如果没有,也可以到机房上网。
我校实验楼里有四个机房,其中网一、网二、网五的电脑较好,上面也有许多必要的软件,比较适合学电脑,当让如果你有联通或电信的账号,就可以通过设置代理服务器后上网,那里的收费标准是一课时一元钱,上网流量费另计。图书馆也有一个机房,机上没有什么软件,那儿是专门上网的,上机费是一小时一元,流量费另计。
方便的上网处还有外面的网吧,速度也不错。再说上网账号吧,我校有电信和联通的两种,价格都是50元300M,30元100M。
可以在社区(3号楼)或图书馆购买。 就介绍这些吧,要学好电脑首先需要自己的努力,比如在图书馆借些电脑书啦,多上机实践,希望大家都能学到一手实用的电脑技术。
学电脑的“四忌”与“四要” 学习电脑有“四忌”,一忌好高骛远,要打好基础。对于初学者首先应该掌握Windows的基本操作。
学电脑的目的在于应用,因此,学会和掌握一种文字处理软件是必要的。二忌纸上谈兵,要勤于实践。
计算机有很强的操作性。因此对初学者来讲一定要利用好各种时间进行上机训练,将理论转化为实际操作,这样才能真正地消化吸收。
不少人认为自己缺乏英语基础,学电脑很困难。其实现在操作系统和很多软件都是汉化版,不懂外语一样能上计算机。
三忌浅尝辄止,要精益求精。学习电脑知识除:了选择好自己适用的教材,还要阅读一些有关的杂志和报纸,拓宽自己的知识面。
四忌见异思迁,要持之以恒。 学以致用最重要 谭浩强教授的《计算机普及教育中的一个误区》写得太好了,我也认为学习的目标不同,在学习内容和方法上就应该有所区别,学以致用最为重要。
我是个主任医师,年纪一大把才开始学计算机,目的也仅仅应用。我就是从计算机原理和BASIC语言开始学习的。
一开始兴趣蛮大,可是越学越费劲,学也没有学好,电脑的基本操作还是没有学会。我学电脑实在是事倍功半。
一些老作家都学会了电脑,用电脑写了好几本书了,我还在理论的牛角尖里怎么也钻不出来。白费了不少力气。
我开始怀疑自己是不是学计算机的料了。后来,我才明白,学电脑主要在于个人的需要和兴趣,不能照搬学校的那一套。
恰恰是学校必修的某些脱离实际和落后的课程学生们最不喜欢,不少人考完就丢。第16期“读者信箱”里安徽读者胡越说:他所在的学校里,所用的还多是DOS平台下的WPS和UCDOS。
实际上现在大家用的都是Windows,工作中大都使用Windows平台下的Office和WPS,我们的教育和实际应用的脱节之大可见一斑。“尽信书不如无书”,学习电脑还是应当自己的爱好和需要学起,学以致用。
弄清用电脑的目的和目标 计算机入门不难。我们希望把计算机当成工具,而不是自己当程序员。
我们只想用计算机提高设计速度和准确性,提高工作效率,减轻手工劳动的负担,这才是我们使用计算机想要达到的目的和追求的目标。 找。
FLASH的基本概念 学习Flash要理解FLASH的最基本概念:帧、层、时间轴、符号和实例,深入理解这些概念的功能是掌握FLASH的关键。
1、帧与时间轴 (1)时间轴和时间轴面板 在FLASH当中,可以通过时间轴面板来进行动画的控制。时间轴面板是FLASH用于管理不同动画元素、不同动画和动画元素叠放次序的工具。
(2)帧的分类与编辑 FLASH中最小的时间单位是帧。根据帧的作用区分,可以将帧分为以下三类,如图。
A、普通帧:包括普通帧和空帧。 B、关键帧:包装关键帧和空白关键帧。
C、过渡帧:包括形状过渡帧和运动过渡帧。 B、快捷键: F5创建帧 F6创建关键帧 F7创建空白关键帧 C、关键帧是一个非常重要的概念,只有在关键帧中,才可以加入AS脚本命令、调整动画元素的属性,而普通帧和过渡帧不可以。
普通帧只能将关键帧的状态进行延续,一般是用来将元素保持在场景中。而过渡帧是将过渡帧前后的两个关键帧进行计算得到,它所包含的元素属性的变化是计算得来的。
更深入的理解我们在课上再讲并且亲手做的时候才能够体会得到。 D、2、图层与图层夹 图层是所有图形图像软件当中必须具备的内容,是我们用来合成和控制元素叠放次序的工具。
(1)图层的类型与编辑 图层根据使用功能的不同分为四种基本类型,如图。 A、普通层:就是我们通常制作动画、安排元素所使用的图层,和PS中的层是类似的概念和功能。
E、B、遮罩层:只用遮罩层的可显示区域来显示被遮罩层的内容,与PS中的遮罩类似。 F、C、运动引导层:运动引导层包含的是一条路径,运动引导线所引导的层的运动过渡动画将会按照这条路径进行运动。
注释说明层:这是FLASH MX以后新增加的一个功能,本质上是一个运动引导层。可以在其中增加一些说明性文字,而输出的时候层中所包含的内容将不被输出。
G、(2)图层夹 图层夹是MX新增加的一项功能,它可以让我们方便的合并一些同类型的层,让设计师在设计时能够快速的寻找层,效率更高。 H、3、符号与实例 符号(元件)可以说是FLASH当中最重要的一个概念。
符号是构建FLASH的砖瓦,是我们创作的基础。因此,深入理解符号的功能与作用是我们进行FLASH影片设计的一个重点。
(1)文字可以是符号,数字也可以是符号,它们都是利用简单的表现形式来传达特定的意义。在FLASH当中,符号是代表一系列可无偿重复利用的元素的集合(这里的无偿其实指的是不增加文件的尺寸)。
当将一个符号从库面板当中拖到当前的舞台上时,这个符号就成了一个实例,这个时候我们就可以对实例进行一系列的操作了。对实例的操作不会影响到符号本身,但改变符号的话所有的实例将随之发生同样的变化。
由于使用符号将不增加文件的尺寸,因此应该尽可能重复利用FLASH中的各种符号,从而可以减小文件的尺寸,也为我们的修改带业极大的方便。 (2)创建符号与库面板 舞台上的任何一个元素均可以转化成为符号,只要选中舞台上的对象,按F8键或通过右键菜单来创建,另外也可以通过菜单栏中的“插入”--“新建元件”来创建新的符号。
I、如上图,符号可以分为:影版剪辑(Movie Clip 简称MC)、按钮(Button)、图形(Graphic)。 在上面名称处输入符号的名称,选择符号的类型,点击确定,即可创建相应类型的符号。
符号转化后的状态,如图: J、创建完成后的符号保存在库面板中,可按Ctrl+L打开,如图: K、这里再强调一下,库面板中的为符号,将它从库面板中拖到舞台上后就成了一个实例,不明白再回顾一下上面的内容。 初学FLASH时,对于处理比较复杂的动画或者编写行为脚本,曾经屡遭失败。
花了不少时间摸索,才发现不少错误都是出在符号、实例及时间轴的问题上。这些概念对于深入学习FLASH实在是太重要了。
而好多书籍却并没有把这个问题讲深讲透,致使深入学习者难以为继,本人即对此有深切体会。现将个人的几点体会写出来,希望那些FLASH的探索者们能从中得到一点启发。
你可以看看这个网站。
学flash有技巧,学什么都有技巧(注意不是取巧)不清楚你要学的是哪方面,比如flash鼠绘 动画 代码 游戏 网站 还是???首先自学或通过教程对软件有个大体的了解,比如工具或界面、菜单等等然后是有人引路,对软件有个大体定位或学习的引导,比如学习方向等等然后可以参考网络教程来逐步学习 完成示例练习,稳步前进或是可以买本床头书啃啃学学,建议入门阶段多学系统教程,提高阶段多见优秀作品,随时保持学有收获,这就是成就感,也就是学习的动力。
以上是个人自学的浅见,可以加:散要二八要五散要要,联系交流。也可以共享你些学习资源。
学习之法,贵在坚持;学有兴趣,学有收获,学有动力,学有提高,这就是技巧,不是取巧。直接学最新版本吧,资料可从VeryCD网站下载。
flash cs4 是flash的一个版本,另外还有flash cs3 5 flash 8.0等,无论什么版本,作用都是一样,为了制作网页需要的各种flash,视频播放器flv。
flash学习非常辛苦,需要有编程和图片处理基础,它有2个方向,一个是动画编程,一个是动画设计,这2个方向也需要同时学,因为只学其一而不知其二,也是学不好的,只有自己用心学习,多看教程和书,才能将其学好,你如果向动画设计方面发展,就多练习软件当中的各种工具,大概一年时间就可以画很多东西,而且它画的全部是矢量的,所以很清楚。如果你要往动画编程方向发展,那就非常之辛苦,往往要学和flash米什么关系的语言,比方c语言,c版数据结构,还有html网页语言 和 javascript脚本,这些看似和flash无关,但实际开发当中,处处要用到,越往高级编程发展,用得越多,所以你要真是下了决心,就先学动画设计,半年后再转动画编程,这样不但学得快,还学得扎实。
声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
蜀ICP备2020033479号-4 Copyright © 2016 学习鸟. 页面生成时间:3.095秒