nand flash 原理簡(jiǎn)介【轉】Fisrt part : NAND flash和NOR flash的不同NOR flash采用位讀寫(xiě),因為它具有sram的接口,有足夠的引腳來(lái)尋址,可以很容易的存取其內部的每一個(gè)字節。
NAND flash使用復雜的I/O口來(lái)穿行地存取數據。8個(gè)引腳用來(lái)傳送控制、地址和數據信息。
NAND的讀和寫(xiě)單位為512Byte的頁(yè),擦寫(xiě)單位為32頁(yè)的塊。 ● NOR的讀速度比NAND稍快一些。
● NAND的寫(xiě)入速度比NOR快很多。 ● NAND的4ms擦除速度遠比NOR的5s快。
● 大多數寫(xiě)入操作需要先進(jìn)行擦除操作。 ● NAND的擦除單元更小,相應的擦除電路更少。
在NOR器件上運行代碼不需要任何的軟件支持,在NAND器件上進(jìn)行同樣操作時(shí),通常需要驅動(dòng)程序,也就是內存技術(shù)驅動(dòng)程序(MTD),NAND和NOR器件在進(jìn)行寫(xiě)入和擦除操作時(shí)都需要MTD。 ---------摘抄自網(wǎng)上流傳很廣的《NAND 和 NOR flash的區別》Second part: NAND Flash結構與驅動(dòng)分析一、NAND flash的物理組成 NAND Flash 的數據是以bit的方式保存在memory cell,一般來(lái)說(shuō),一個(gè)cell 中只能存儲一個(gè)bit。
這些cell 以8個(gè)或者16個(gè)為單位,連成bit line,形成所謂的byte(x8)/word(x16),這就是NAND Device的位寬。這些Line會(huì )再組成Page,(NAND Flash 有多種結構,我使用的NAND Flash 是K9F1208,下面內容針對三星的K9F1208U0M),每頁(yè)528Bytes(512byte(Main Area)+16byte(Spare Area)),每32個(gè)page形成一個(gè)Block(32*528B)。
具體一片flash上有多少個(gè)Block視需要所定。我所使用的三星k9f1208U0M具有4096個(gè)block,故總容量為4096*(32*528B)=66MB,但是其中的2MB是用來(lái)保存ECC校驗碼等額外數據的,故實(shí)際中可使用的為64MB。
NAND flash以頁(yè)為單位讀寫(xiě)數據,而以塊為單位擦除數據。按照這樣的組織方式可以形成所謂的三類(lèi)地址: Column Address:Starting Address of the Register. 翻成中文為列地址,地址的低8位 Page Address :頁(yè)地址 Block Address :塊地址 對于NAND Flash來(lái)講,地址和命令只能在I/O[7:0]上傳遞,數據寬度是8位。
二、NAND Flash地址的表示 512byte需要9bit來(lái)表示,對于528byte系列的NAND,這512byte被分成1st half Page Register和2nd half Page Register,各自的訪(fǎng)問(wèn)由地址指針命令來(lái)選擇,A[7:0]就是所謂的column address(列地址),在進(jìn)行擦除操作時(shí)不需要它,why?因為以塊為單位擦除。32個(gè)page需要5bit來(lái)表示,占用A[13:9],即該page在塊內的相對地址。
A8這一位地址被用來(lái)設置512byte的1st half page還是2nd half page,0表示1st,1表示2nd。Block的地址是由A14以上的bit來(lái)表示。
例如64MB(512Mb)的NAND flash(實(shí)際中由于存在spare area,故都大于這個(gè)值),共4096block,因此,需要12個(gè)bit來(lái)表示,即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]上傳遞,因此,必須采用移位的方式進(jìn)行。 例如,對于512Mbit x8的NAND flash,地址范圍是0~0x3FF_FFFF,只要是這個(gè)范圍內的數值表示的地址都是有效的。
以NAND_ADDR 為例: 第1 步是傳遞column address,就是NAND_ADDR[7:0],不需移位即可傳遞到I/O[7:0]上,而halfpage pointer即A8 是由操作指令決定的,即指令決定在哪個(gè)halfpage 上進(jìn)行讀 寫(xiě),而真正的A8 的值是不需程序員關(guān)心的。 第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上; 因此,整個(gè)地址傳遞過(guò)程需要4 步才能完成,即4-step addressing。
如果NAND Flash 的容量是32MB(256Mbit)以下,那么,block adress最高位只到bit24,因此尋址只需要3步。 下面,就x16 的NAND flash 器件稍微進(jìn)行一下說(shuō)明。
由于一個(gè)page 的main area 的容量為256word,仍相當于512byte。但是,這個(gè)時(shí)候沒(méi)有所謂的1st halfpage 和2nd halfpage 之分了,所以,bit8就變得沒(méi)有意義了,也就是這個(gè)時(shí)候 A8 完全不用管,地址傳遞仍然和x8 器件相同。
除了,這一點(diǎn)之外,x16 的NAND使用方法和 x8 的使用方法完全相同。三、NAND flash驅動(dòng)解讀 以前由于做移植多一些,那些工作很簡(jiǎn)單(現在看來(lái)),從來(lái)都不用去關(guān)心驅動(dòng)里面到底怎么實(shí)現的,這幾次面試才發(fā)現真的是學(xué)的太淺了,似乎我還在學(xué)習仰泳而那些牛人基本都屬于潛水級的了,潛的不知有多深。
我對照著(zhù)開(kāi)發(fā)板所帶的NAND flash驅動(dòng)和k9f1208的芯片資料把這些代碼通讀了一遍,終于明白了NAND flash的讀寫(xiě)過(guò)程是如何實(shí)現的了。我所參考的驅動(dòng)是mizi公司為三星芯片所寫(xiě)的,我看看了,大概和官方2.4.18內核的nand.c差不多。
在s3c2410處理器中有專(zhuān)門(mén)的NAND flash控制器,他們位于SFR區,具體可以參看s3c2410用戶(hù)手冊。以下的這些代碼均可以在vivi或者kernel里面找到,文中會(huì )標明程序出自何處。
在vivi中。
什么是Flash Memory?FLASH存儲器又稱(chēng)閃存(快閃存儲器),是一種電可擦可編程只讀存儲器(EEPROM)的形式,允許在操作中被多次擦或寫(xiě),EEPROM與高速RAM成為當前最常用且發(fā)展最快的兩種存儲技術(shù)。
計算機的BIOS 、數字照相機等的存儲卡中都使用閃存。 不同的是,EEPROM是以字節為單位進(jìn)行數據更新,而閃存則以塊為單位。
由于閃存可以比 EEPROM具有更小的電路,這使其能夠達到更高的集成度,有利于降低價(jià)格。 FLASH結合了ROM和RAM的長(cháng)處,不僅具備電子可擦除可編程(EEPROM)的性能,還不會(huì )斷電丟失數據同時(shí)可以快速讀取數據(NVRAM的優(yōu)勢),U盤(pán)和MP3里用的就是這種存儲器。
在過(guò)去的20年里,嵌入式系統一直使用ROM(EPROM)作為它們的存儲設備,近年來(lái)Flash全面代替了ROM(EPROM)在嵌入式系統中的地位,用作存儲BootLoader以及操作系統或者程序代碼或者直接當硬盤(pán)使用(U盤(pán))。閃存卡(Flash Card)是利用閃存(Flash Memory)技術(shù)達到存儲電子信息的存儲器。
目前市場(chǎng)上主要的閃存或者多媒體卡主要為:TF卡、SM卡、CF卡、MicroDrive、MemoryStick、MemoryStick PRO, MMC卡、Micro SD Card、MiniSD卡、SD卡、SDHC卡和xD卡。 我們常見(jiàn)的FLASH Memory有儲存卡與U盤(pán)。
TF卡(TransFLash卡)、SD卡(Secure Digital Memory Card)、CF卡(Compact Flash卡)等。 CF卡(Compact Flash)是1994年由SanDisk最先推出的一種閃存卡,它革命性的使用了閃存技術(shù),對所保存的數據來(lái)說(shuō),CF卡比傳統的磁盤(pán)驅動(dòng)器安全性和保護性都更高。
90年代末至21世紀初出現了SD、MMC、SDHC、MS、xD圖像卡等等記憶卡制式,它們將占據各種數碼產(chǎn)品及移動(dòng)存儲。路由器、交換器等大多數的網(wǎng)絡(luò )及電信設備及數碼相機仍以CF卡為主要的外部?jì)Υ嫜b置。
SM卡(Smart Media)是由東芝公司在1995年11月退出的Flash Memory存貯卡,三星公司在1996年購買(mǎi)了生產(chǎn)和銷(xiāo)售許可,這兩家公司成為主要的SM卡廠(chǎng)商。SmartMedia卡是市場(chǎng)上常見(jiàn)的微存貯卡(但是最大容量只有128MB),一度在MP3播放器上非常的流行。
SmartMedia卡被視為軟磁盤(pán)的替代者,曾是數碼相機普遍支持的存儲格式,如今已是沒(méi)落消亡之勢。這一格式相比其他而言最大的好處是通過(guò)一個(gè)名為FlashPath的轉換器,可以在標準的3.5英寸軟盤(pán)驅動(dòng)器內使用任何容量的SM卡。
MMC卡(MultiMedia Card)卡由西門(mén)子公司和首推CF的SanDisk公司于1997年聯(lián)合推出,號稱(chēng)是目前世界上最小的Flash Memory存貯卡。 近年MMC卡技術(shù)已差不多完全被SD卡所代替,但由于MMC卡仍可被兼容SD卡的設備所讀取,因此仍有其作用。
少數一些公司,最著(zhù)名的如諾基亞,仍然全部地支持MMC。MS卡(Memory Stick)通常稱(chēng)為記憶棒,是Sony公司研發(fā)并于1998年10月推出市場(chǎng)的,采用了Sony自己的外型、協(xié)議、物理格式和版權保護的一種閃存卡。
MS卡的規格和同一時(shí)間上市的MMC很相似。 SD卡(Security Digital Memory Card,譯成安全數碼卡)由松下、東芝和SanDisk聯(lián)合推出,1999年8月才首次發(fā)布,大小如一張郵票。
一般SD卡也能夠向下兼容MMC卡。容量4GB以上稱(chēng)為microSDHC(Secure Digital High Capacity),更大的容量就必須使用microSDXC(Secure Digital eXtended Capacity)規格。
SD卡是東芝在MMC卡技術(shù)中加入加密技術(shù)硬件而成,SD/MMC卡已經(jīng)替代東芝開(kāi)發(fā)的SM卡,成為了便攜式數碼相機使用最廣泛的數字存儲卡格式。之前仍然在堅持使用自己的專(zhuān)利格式的三大主要廠(chǎng)商:奧林巴斯和富士(xD卡),索尼(Memory Stick),也開(kāi)始轉而使用SD卡(或提供雙卡支持)。
SD讀卡器對計算機來(lái)說(shuō)類(lèi)似一個(gè)USB的軟驅的作用,插上SD卡后的讀卡器跟U盤(pán)功能是一樣的,大小也和普通U盤(pán)類(lèi)似。讀卡器與電腦主機之間的連接都是采用USB接口,這種產(chǎn)品是配合數碼相機而產(chǎn)生的。
有外接式和內置式兩種,不少新的個(gè)人電腦都已經(jīng)內置了多功能的讀卡器。 TF卡(TransFlash)由SanDisk(閃迪)公司發(fā)明創(chuàng )立,是一種主要用于手機的極細小的快閃存儲器卡,2004年重命名為MicroSD(顧名思義,就是小SD卡)。
幾乎只有一片指甲蓋的大小,主流臺式機、筆記本上均沒(méi)有直接插槽,通過(guò)SD式讀卡器連接后可以讀寫(xiě)數據。 xD卡(eXtreme Digital-Picture Card)是一種專(zhuān)門(mén)于數碼相機的閃存存儲卡,由富士膠卷與奧林巴斯聯(lián)合于2002年7月發(fā)布,用于取代SM卡(SmartMedia Card)。
miniSD是閃迪2003年發(fā)布的極細小型規格標準SD卡,特別設計于移動(dòng)電話(huà)上,并隨卡附上minSD轉接器,令它能夠兼容所有配置了標準SD卡插槽的設備中。 微硬盤(pán)MD(Microdrive)最早是由IBM公司開(kāi)發(fā)并于1999年上市的一款體積非常微小的硬盤(pán)式數據存儲設備,用來(lái)對抗市面上主流的閃存產(chǎn)品。
IBM將旗下硬盤(pán)部門(mén)賣(mài)給了日立(Hitachi)公司,因此自2003年起MicroDrive的技術(shù)與專(zhuān)利是由日立公司擁有。微型硬盤(pán)具有記憶容量大、讀寫(xiě)速率高有點(diǎn),缺點(diǎn)是較為耗電、容易發(fā)熱、使用壽限較短和抗震性能差。
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權,根據《信息網(wǎng)絡(luò )傳播權保護條例》,如果我們轉載的作品侵犯了您的權利,請在一個(gè)月內通知我們,我們會(huì )及時(shí)刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習?shū)B(niǎo). 頁(yè)面生成時(shí)間:2.832秒