《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > ARM開發(fā)步步深入之NandFlash4KB突圍
ARM開發(fā)步步深入之NandFlash4KB突圍
摘要: 開發(fā)板上電啟動后,自動將NandFlash開始的4K數(shù)據(jù)復(fù)制到SRAM中,,然后跳轉(zhuǎn)到0地址開始執(zhí)行,。然后初始化存儲控制器SDRAM,,調(diào)用NandFlash讀函數(shù)操作把4KB后的點燈代碼復(fù)制到SDRAM中,跳到點燈代碼的入口點實現(xiàn)點燈操作,。
關(guān)鍵詞: ARM NandFlash
Abstract:
Key words :

  實驗?zāi)康模和黄?KB的Steppingstone存儲空間限制,,讀取NandFlash中4KB后的代碼實現(xiàn)“點燈大法”,,借此掌握NandFlash的操作。

  實驗環(huán)境及說明:恒頤S3C2410開發(fā)板H2410,。H2410核心板的NandFlash選用的是三星片上(SOP)K9F1208U0M,,該NandFlash容量為64MB。

  實驗思路:開發(fā)板上電啟動后,,自動將NandFlash開始的4K數(shù)據(jù)復(fù)制到SRAM中,,然后跳轉(zhuǎn)到0地址開始執(zhí)行。然后初始化存儲控制器SDRAM,,調(diào)用NandFlash讀函數(shù)操作把4KB后的點燈代碼復(fù)制到SDRAM中,,跳到點燈代碼的入口點實現(xiàn)點燈操作。

  知識掌握:NandFlash內(nèi)部結(jié)構(gòu),、命令字及存儲控制器

  一,、NandFlash內(nèi)部結(jié)構(gòu)

  不同開發(fā)板使用的NandFlash的型號可能不一樣,,本文只是以K9F1208U0M為例做個簡單介紹,。引腳描述如下所示:

 

  NandFlash存儲單元結(jié)構(gòu)圖如下所示:

 

  Device、Block和Page之間的關(guān)系---1 Device = 4,096 Blocks = 4096*32 Pages = 128K Pages,;1 Block = 32 Page,;1 Page = 528 Byte = 512 Byte + 16 Byte。其中1 Page中包含有數(shù)據(jù)寄存器512 Byte和16 Byte的備用位用于ECC校驗存儲,。所以有528 columns * 128K rows(Pages),。1 Page中的512 Byte的數(shù)據(jù)寄存器又分為兩個部分1st 256 Bytes和 2nd 256 Bytes。用于數(shù)據(jù)存儲的單元有 512 Bytes * 32 Pages * 4096 Blocks = 64 MB,,用于ECC校驗單元有16 Bytes * 32 Pages * 4096 Blocks = 2MB ,。

  二、NandFlash命令字

  操作NandFlash時,,先傳輸命令,,然后傳輸?shù)刂罚詈筮M行數(shù)據(jù)的讀/寫,。K9F1208U0M的命令字如下所示:

  由于尋址需要26bit的地址,,該26bit地址通過四個周期發(fā)送到NandFlash,如下圖所示: 

  

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。