nandflash存儲(chǔ)結(jié)構(gòu)及控制方法(k9f1g08)_第1頁
nandflash存儲(chǔ)結(jié)構(gòu)及控制方法(k9f1g08)_第2頁
nandflash存儲(chǔ)結(jié)構(gòu)及控制方法(k9f1g08)_第3頁
nandflash存儲(chǔ)結(jié)構(gòu)及控制方法(k9f1g08)_第4頁
nandflash存儲(chǔ)結(jié)構(gòu)及控制方法(k9f1g08)_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

NandFlash 存儲(chǔ)結(jié)構(gòu)及控制方法 (K9F1G08)一、NANDFlash 介紹和NANDFlash 控制器的使用NANDFlash 在嵌入式系統(tǒng)中的作用,相當(dāng)于 PC上的硬盤常見的Flash有NORFlash和NANDFlash,NORFlash上進(jìn)行讀取的效率非常高,但是擦除和寫操作的效率很低,容量一般比較??;NANDFlash進(jìn)行擦除和寫操作的效率更高,并且容量更大。一般NORFlash用于存儲(chǔ)程序,NANDFlash用于存儲(chǔ)數(shù)據(jù)。1)NANDFlash 的物理結(jié)構(gòu)筆者用的開發(fā)板上 NANDFlash 型號(hào)是K9F1G08,大小為128M,下圖為它的封裝和外部引腳I/O0-I/O7 數(shù)據(jù)輸入/輸出CLE 命令鎖存使能ALE 地址鎖存使能CE 芯片使能RE 讀使能WE 寫使能WP 寫保護(hù)R/B 就緒/忙輸出信號(hào)Vcc 電源Vss 地N.C 不接K9F1G08 功能結(jié)構(gòu)圖如下K9F1G08 內(nèi)部結(jié)構(gòu)有下面一些功能部件①X-BuffersLatches&Decoders :用于行地址②Y-BuffersLatches&Decoders :用于列地址CommandRegister:用于命令字④ControlLogic&HighVoltageGenerator :控制邏輯及產(chǎn)生Flash所需高壓⑤NandFlashArray :存儲(chǔ)部件⑥D(zhuǎn)ataRegister&S/A:數(shù)據(jù)寄存器,讀、寫頁時(shí),數(shù)據(jù)存放此寄存器⑦Y-GatingI/OBuffers&LatchesGlobalBuffersOutputDriverNANDFlash 存儲(chǔ)單元組織結(jié)構(gòu)圖如下: K9F1G08 容量為1056Mbit,分為65536行(頁)、2112列,每一頁大小為2kb,外加64字節(jié)的額外空間,這 64字節(jié)的額外空間的列地址為2048-2111命令、地址、數(shù)據(jù)都通過 IO0-IO7輸入/輸出,寫入命令、地址或數(shù)據(jù)時(shí),需要將 WE、CE信號(hào)同時(shí)拉低,數(shù)據(jù)在 WE信號(hào)的上升沿被 NANDFLash 鎖存;命令鎖存信號(hào) CLE、地址鎖存信號(hào) ALE用來分辨、鎖存命令或地址。K9F1G08 有128MB的存儲(chǔ)空間,需要 27位地址,以字節(jié)為單位訪問 Flash時(shí),需要 4個(gè)地址序列2)NANDFlash 訪問方法NANDFlash 硬件連接如下圖:NANDFlash 和S3C2440 的連線包括,8個(gè)IO引腳,5個(gè)使能信號(hào)(nWE、ALE、CLE、nCE、nRE)、1個(gè)狀態(tài)引腳R/B)、1個(gè)寫保護(hù)引腳(nWP)。地址、數(shù)據(jù)和命令都是在這些使能信號(hào)的配合下,通過8個(gè)IO引腳傳輸。寫地址、數(shù)據(jù)、命令時(shí),nCE、nWE信號(hào)必須為低電平,它們?cè)趎WE信號(hào)的上升沿被鎖存。命令鎖存使能信號(hào)CLE和地址鎖存使能信號(hào)ALE用來區(qū)別IO引腳上傳輸?shù)氖敲钸€是地址。命令字及操作方法操作NANDFlash 時(shí),先傳輸命令,然后傳輸?shù)刂?,最后讀寫數(shù)據(jù),這個(gè)期間要檢查Flash的狀態(tài)。K9F1G08容量為128MB,需要一個(gè)27位的地址,發(fā)出命令后,后面要緊跟著4個(gè)地址序列。下圖為K9F1G08 的命令字下圖為K9F1G08 的地址序列K9F1G08

2112

列,所以必須使用

A0-A11

12位來尋址,有

65535

行,所以必須使用

A12-A27

16

位來尋址。3)S3C2440NANDFlash 控制器介紹NANDFlash 的讀寫操作次序如下:①設(shè)置NFCONF 配置NANDFlash②向NFCMD寄存器寫入命令③向NFADDR 寄存器寫入地址④讀寫數(shù)據(jù):通過寄存器NFSTAT檢測(cè)NANDFlash的狀態(tài),在啟動(dòng)某個(gè)操作后,應(yīng)該檢測(cè)R/nB信號(hào)以確定該操作是否完成、是否成功。下面介紹這些寄存器:NFCONF:配置寄存器用來設(shè)置NANDFlash 的時(shí)序參數(shù),設(shè)置數(shù)據(jù)位寬,設(shè)置是否支持其他大小的頁等。NFCONT:控制寄存器用來使能NANDFlash控制器、使能控制引腳信號(hào)nFCE、初始化ECC,鎖定NANDFlash等功能③NFCMD:命令寄存器用來發(fā)送Flash操作命令NFADDR:地址寄存器用來向Flash發(fā)送地址信號(hào)NFDATA:數(shù)據(jù)寄存器讀寫此寄存器啟動(dòng)對(duì) NANDFlash 的讀寫數(shù)據(jù)操作NFSTAT:狀態(tài)寄存器0:busy,1:ready二、NANDFlash 控制器操作實(shí)例:讀 Flash1)讀NANDFlash 的步驟①設(shè)置NFCONF在HCLK=100Mhz的情況下,TACLS=0,TWRPH0=3,TWRPH1=0,則NFCONF=0x300使能NANDFlash控制器、禁止控制引腳信號(hào)nFCE,初始化ECCNFCONT=(1<<4)|(1<<1)|(1<<0)②操作NANDFlash 前,復(fù)位NFCONT&=~(1<<1) 發(fā)出片選信號(hào)NFCMD=0xff reset命令然后循環(huán)查詢 NFSTAT 位0,直到等于 1,處于就緒態(tài)最后禁止片選信號(hào),在實(shí)際使用時(shí)再使能NFCONT|=0x2 禁止NANDFlash③發(fā)出讀命令NFCONT&=

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論