學(xué)習(xí)日記-韋linux視頻一二期在上的移植7支持nand_第1頁
學(xué)習(xí)日記-韋linux視頻一二期在上的移植7支持nand_第2頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

210學(xué)習(xí)--支持S5PV210NANDFLASH2440S5PV210ECC校驗(yàn)功能ECCECC校驗(yàn)相關(guān)的寄存器的介紹,在給出代碼之前,我先講講對NANDFLASH的一些理解。(建議大家先看二期里面NAND驅(qū)動(dòng)的相關(guān)章節(jié),關(guān)于NAND的硬件原理,講得非常詳細(xì))NANDFlash的數(shù)據(jù)是以bit的方式保存在memorycell,一般來說,一個(gè)cell中只能一個(gè)bit(即SLCNAND)cell816bitlinebyte(x8)或word(x16),NANDDeviceLinePage,(NANDFlashNANDFlash是每32個(gè)page形成一個(gè)Block(32*528B)。具體一片flash上有多少個(gè)Block視需要所定。使用的三星k9f1208U0M4096個(gè)block4096*(32*528B)=66MB2MB是用來保存ECC64MB。地址:ColumnAddress(StartingAddressoftheRegister)列地址,地址的低8位;PageAddress:頁地址;BlockAddressNANDFlashI/O[7:0]8位。NANDFlash512byte9bit512byteNAND512byte1sthalfPageRegister2ndhalfPageRegister,各自的由地址指針命令來選擇,A[7:0]就是所謂的columnaddress(列地址),在進(jìn)行擦除操作時(shí)不需要用到它,為什么?因?yàn)槭且詨K為單位擦除;32page5bitA[13:9],即該page在塊內(nèi)的相對地址。A8512byte1sthalfpage2ndhalfpage,0表1st,12nd;BlockA14以上的bit來表示。例如64MB(512Mb)的NANDflash(實(shí)際中,由于存在sparearea,故都大于這個(gè)值),共4096block,因12bitA[25:14]128MB(1Gbit)528byte/pageNANDFlashblockaddress用A[26:14]pageaddressblcokaddress|pageaddressinblock。NANDFlash的地址表示為:BlockAddress|PageAddressinblock|halfpagepointer|ColumnAddress。地址傳送順序是ColumnAddress,PageAddress,BlockAddress。第1步是傳遞columnaddress,就是NAND_ADDR[7:0],不需移位即可傳遞到I/O[7:0]上,而halfpagepointerA8halfpageA8的值是不2NAND_ADDR9位,將NAND_ADDR[16:9]傳到I/O[7:0]上;3步將NAND_ADDR[24:17]I/O上;4步將NAND_ADDR[25]I/O因此,整個(gè)地址傳遞過程需要4步才能完成,即4-stepaddressing。如果NANDFlash32MB(256Mbit)以下,那么,blockadress最只到bit24,因此尋址只需要3步。(具體參考手冊x16NANDflashpagemainarea256word,512byte1sthalfpage2ndhalfpage之分了,所以,bit8就變得沒有意義了,也就是這個(gè)時(shí)候,A8x8器件相同。除了這一點(diǎn)之外,x16的NAND以210開發(fā)板上面的1G的NANDFLASGK9K8G08U0A為例:每頁=2).643).8192給舍棄了2).A12-A17263).A18到A281columnaddressNAND_ADDR[7:0],不需移位即可傳遞到I/O[7:0]上;22K,故要對地址做以下操作:(addr>>8&0x7*80x7,A8~A10A11*/3NAND_ADDR11NAND_ADDR[19:12]I/O[7:0]上;4NAND_ADDR19位,將NAND_ADDR[27:20]I/O上;5NAND_ADDR27位,將NAND_ADDR[28]I/O大家在看到這里后,也許還有人在糾結(jié)到底是怎么到NAND硬件本身的具置的?我只能告發(fā)出,NAND下面我給出NAND2440的沒多大區(qū)別,void{設(shè)置時(shí)間參數(shù)(HCLK_PSYS667MHz/5 =1 =TWRPH0[11:8]:TWRPH0= 7.5ns*2=TWRPH1[7:4]:TWRPH1=17.5ns*2=AddrCycle[11=52440NFCONF|=1<<12|1<<8|NFCONF|=/*NAND*/NFCONT|=(1<<0)|(1<<1);/*設(shè)置相應(yīng)管腳用于NandFlash控制器*/MP0_3CON=0x /*NANDFlash*/}nandread mand(intargc,char*{if(strcmp(argv[0],"nand")==0)nand(argc,argv);}然后nand()函數(shù)中會(huì)進(jìn)一步判斷從而調(diào)用nand_read()等函數(shù)我就不列出代碼了大家看我共享的代碼,就明白,放在了"Tiny210學(xué)習(xí)_代碼" md命令:WY_BOOT#WY_BOOT#WY_BOOT#mdmand :00EACEEDCE4F284F781CF81F395E9CDE :6B7DCBCFD4F870DB9F07E61FnandreadWY_BOOTWY_BOOT#

溫馨提示

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

最新文檔

評論

0/150

提交評論