《ARM Cortex-A9多核嵌入式系統(tǒng)開發(fā)教程》課件第十章_第1頁
《ARM Cortex-A9多核嵌入式系統(tǒng)開發(fā)教程》課件第十章_第2頁
《ARM Cortex-A9多核嵌入式系統(tǒng)開發(fā)教程》課件第十章_第3頁
《ARM Cortex-A9多核嵌入式系統(tǒng)開發(fā)教程》課件第十章_第4頁
《ARM Cortex-A9多核嵌入式系統(tǒng)開發(fā)教程》課件第十章_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

NandFlash控制器10NANDFlash功能介紹NANDFlash相關(guān)控制寄存器NANDFlash編程實例第10章NandFlash控制器10.1NandFlash功能介紹10.1.1Flash存儲技術(shù)簡介Flash存儲器又稱閃存,是一種可在線多次擦除的非易失性存儲器,即掉電后數(shù)據(jù)不會丟失。Flash存儲器主要分為NOR型Flash和NAND型Flash兩種。NORFlash的接口與RAM完全相同,可以隨意訪問任意地址的數(shù)據(jù)。而NANDFlash的接口僅僅包含幾個I/O引腳,這使得NORFlash適合于運行程序,而NANDFlash更適合于保存數(shù)據(jù)。一般而言,用NORFlash存儲程序,而用NANDFlash存儲數(shù)據(jù)?;贜ANDFlash的設(shè)備通常也要搭配NORFlash以存儲程序。

嵌入式Linux對NORFlash和NANDFlash的軟件支持都很成熟。在NORFlash上常用jffs2文件系統(tǒng),而在NANDFlash上常用yaffs文件系統(tǒng)。在更底層,由MTD自動程序?qū)崿F(xiàn)對它們的讀、寫、擦除操作,同時也實現(xiàn)了EDC/ECC校驗。第10章NandFlash控制器

綜合上述:NORFlash與NANDFlash存儲器各自的特點和優(yōu)勢,現(xiàn)在一般希望用NANDFlash啟動和引導(dǎo)系統(tǒng),而在DRAM上執(zhí)行主程序。Exynos4412在設(shè)計上也恰好滿足這一要求,它的啟動代碼可以在外部NANDFlash上執(zhí)行。第10章NandFlash控制器10.1.2芯片介紹

目前市場上常見的8位NANDFlash芯片有三星公司的K9GAG08U0E、K9LBG08U0E、K9HCG08U1E等。由于不同型號的芯片的結(jié)構(gòu)和容量不同,它們在尋址方式上有一定差異,所以程序代碼并不通用。接下來,將以三星公司的K9GAG08U0E來做詳細(xì)的介紹。第10章NandFlash控制器圖10.1K9GAG08U0E芯片K9GAG08U0E是三星公司生產(chǎn)的采用NAND技術(shù)的大容量、高可靠性Flash存儲器。該器件存儲容量為16?Gb。第10章NandFlash控制器K9GAG08U0E物理結(jié)構(gòu)的相關(guān)數(shù)據(jù)如下:1頁?=?8K字節(jié)?+?436字節(jié)(空閑區(qū)域)1塊?=?(8K?+?436)字節(jié)?×?128頁?=?(1M?+?54.5K)字節(jié)

總?cè)萘?=?2076塊?×?128頁?×?(8K?+?436)字節(jié)?=?(16608M?+?883.9M)比特

圖10.2K9GAG08U0E結(jié)構(gòu)圖第10章NandFlash控制器K9GAG08U0E的尋址周期:表10.2K9GAG08U0E操作周期第10章NandFlash控制器1.?NANDFlash存儲過程分析

NANDFlash原理圖上只有8根數(shù)據(jù)線Data0~Data7,是典型的串口通信。另外的兩個引腳CLE和ALE則用于區(qū)分當(dāng)前傳入的是命令還是地址。這樣,NANDFlash控制器就根據(jù)傳入的內(nèi)容進(jìn)行對應(yīng)的動作。由于NANDFlashK9GAG08U0E的頁大小是8KB,所以需要13位地址來進(jìn)行尋址,稱為列地址。第10章NandFlash控制器1.?NANDFlash存儲過程分析(3)

NANDFlash不能像內(nèi)存一樣直接讀/寫,要先發(fā)命令,再發(fā)地址,然后讀/寫數(shù)據(jù)。(4)

CLE為高電平時,Data0~Data7發(fā)出的是命令;ALE為高電平時,Data0~Data7發(fā)出的是地址;CLE/ALE都為低電平時,Data0~Data7發(fā)出的是數(shù)據(jù)。信號nWE控制著寫操作,nRE控制著讀操作。第10章NandFlash控制器表10.3K9GAG08U0E命令集第10章NandFlash控制器10.1.3芯片的主要操作寫操作第10章NandFlash控制器寫操作過程:(1)發(fā)送第一個編程命令“0x80”。(2)依次發(fā)送第1~5個周期地址。(3)向K9GAG08U0E發(fā)送第一頁數(shù)據(jù)。(4)發(fā)送第二個編程指令“0x10”。(5)發(fā)送狀態(tài)查詢命令字“0x70”。(6)讀取K9GAG08U0E的數(shù)據(jù)總線,判斷I/O6的值或R/的值,直到I/O6?=?1或R/?=?1。(7)判斷I/O0是否為0,如果是0,表示編程成功;如果為1,表示編程失敗。第10章NandFlash控制器2.讀操作第10章NandFlash控制器讀操作過程:(1)發(fā)送第一個讀操作命令“0x00”。(2)依次發(fā)送第1~5個周期的地址。(3)發(fā)送第二個讀操作指令“0x30”。(4)從數(shù)據(jù)總線讀取數(shù)據(jù)。(5)

ECC產(chǎn)生器進(jìn)行校驗。(6)根據(jù)ECC校驗結(jié)果判斷頁面讀操作是否完成。第10章NandFlash控制器3.擦除操作第10章NandFlash控制器擦除操作過程:(1)發(fā)送第一個擦除命令“0x60”。(2)依次發(fā)送第1~5個周期的地址。(3)發(fā)送第二個擦除指令“0xD0”。(4)發(fā)送狀態(tài)查詢命令字“0x70”。(5)讀取K9GAG08U0E的數(shù)據(jù)總線,判斷I/O6的值或R/的值,直到I/O6?=?1或R/?=

1。(6)判斷I/O0是否為0,如果是0,則表示編程成功;如果為1,則表示編程失敗。第10章NandFlash控制器10.2NandFlash相關(guān)控制寄存器1.

NANDFlash配置寄存器(NFCONF)該寄存器用于配置NANDFlash控制器讀、寫、擦除等主要操作參數(shù),如表10.4所示。表10.4NANDFlash配置寄存器(NFCONF)第10章NandFlash控制器2.

NANDFlash控制寄存器(NFCONT)該寄存器用于配置NANDFlash的各種控制參數(shù),如表10.5所示。第10章NandFlash控制器表10.5NANDFlash控制寄存器(NFCONT)第10章NandFlash控制器3.

NANDFlash命令寄存器(NFCMMD)該寄存器用于存儲NANDFlash的命令值,如表10.6所示。表10.6NANDFlash命令寄存器(NFCMMD)第10章NandFlash控制器4.

NANDFlash命令寄存器(NFADDR)該寄存器用于存儲NANDFlash的地址值,如表10.7所示。表10.7NANDFlash地址寄存器(NFADDR)第10章NandFlash控制器5.?NANDFlash命令寄存器(NFDATA)該寄存器用于存儲NANDFlash讀/寫的數(shù)據(jù),如表10.8所示。表10.8NANDFlash數(shù)據(jù)寄存器(NFDATA)第10章NandFlash控制器6.?NANDFlash控制寄存器(NFSTAT)該寄存器用于查詢NANDFlash的各種狀態(tài)值,如表10.9所示。表10.9NANDFlash控制寄存器(NFSTAT)第10章NandFlash控制器10.3NandFlash編程實例10.3.1電路連接

圖10.7是K9GAG08U0E電路連接圖。由圖可知,電路連接比較簡單,其中Xm0DATA0~Xm0DATA7為命令、地址、數(shù)據(jù)復(fù)用8位數(shù)據(jù)傳輸?shù)囊_,其他控制引腳的連接如圖所示。第10章N

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論