1. NandFlash接口電路 2. NandFlash接口信號
*
NandFlash接口信號較少;
*
數(shù)據(jù)寬度只有8Bit,沒有地址
總線。地址和數(shù)據(jù)總線復(fù)用,串行讀??;
信號名稱 | 信號描述 |
IO[7..0] | 數(shù)據(jù)總線 |
CE# | 片選信號(Chip Select),低電平有效 |
WE# | 寫有效(Write Enable),低電平表示當(dāng)前總線操作是寫操作 |
RE# | 讀有效(Read Enable),低電平表示當(dāng)前總線操作是讀操作 |
CLE | 命令鎖存(Command Latch Enable)信號,寫操作時給出此信號表示寫命令 |
ALE | 地址/數(shù)據(jù)鎖存(Address Latch Enable)信號,寫操作時給出此信號表示寫地址或數(shù)據(jù) |
WP# | 寫保護(Write Protect)信號 |
R/B | 忙(Read/Busy)信號 |
3. NandFlash地址結(jié)構(gòu)
*
NandFlash設(shè)備的存儲容量是以頁(Page)和塊(Block)為單位的。
*
Page=528Byte
(512Byte用于存放數(shù)據(jù),其余16Byte用于存放其他信息,如塊好壞的標記、塊的邏輯地址、頁內(nèi)數(shù)據(jù)的ECC校驗和等)。
*
Block=32Page;
*
容量為64MB的NandFlash存儲結(jié)構(gòu)為:512Byte×32Page×4096Block;
*
NandFlash以頁為單位進行讀和編程(寫)操作,一頁為512Byte;以塊為單位進行擦除操作,一塊為512Byte*32page=16KB;
*
對于64MB的NAND設(shè)備,需要26根地址線,由于NAND設(shè)備數(shù)據(jù)總線寬度是8位的,因此必須經(jīng)過4個時鐘周期才能把全部地址信息接收下來;
| I/O7 | I/O6 | I/O5 | I/O4 | I/O3 | I/O2 | I/O1 | I/O0 |
第一個周期 | A7 | A6 | A5 | A4 | A3 | A2 | A1 | A0 |
第二個周期 | A15 | A14 | A13 | A12 | A11 | A10 | A9 | A8 |
第三個周期 | A23 | A22 | A21 | A20 | A19 | A18 | A17 | A16 |
第四個周期 | | | | | | | A25 | A24 |
*
可以這么說,第一個時鐘周期給出的是目標地址在一個page內(nèi)的偏移量,而后三個時鐘周期給出的是頁地址。
*
由于一個頁內(nèi)有512Byte,需要9bit的地址尋址,而第一個時鐘周期只給出了低8bit,最高位A8由不同的讀命令(Read Mode2)來區(qū)分的。
4.
NandFlash的命令
評論