存储器扩展连接理解(S3C2410为例)—NandFlash
2. NandFlash接口信号
*NandFlash接口信号较少
*数据宽度只有8Bit,没有地址总线。地址和数据总线复用,串行读取
信号名称 | 信号描述 |
IO[7..0] | 数据总线 |
CE# | 片选信号(Chip Select),低电平有效 |
WE# | 写有效(Write Enable),低电平表示当前总线操作是写操作 |
RE# | 读有效(Read Enable),低电平表示当前总线操作是读操作 |
CLE | 命令锁存(Command Latch Enable)信号,写操作时给出此信号表示写命令 |
ALE | 地址/数据锁存(Address Latch Enable)信号,写操作时给出此信号表示写地址或数据 |
WP# | 写保护(Write Protect)信号 |
R/B | 忙(Read/Busy)信号 |
3. NandFlash地址结构
*NandFlash设备的存储容量是以页(Page)和块(Block)为单位的。
*Page=528Byte(512Byte用于存放数据,其余16Byte用于存放其他信息,如块好坏的标记、块的逻辑地址、页内数据的ECC校验和等)。
*Block=32Page
*容量为64MB的NandFlash存储结构为:512Byte×32Page×4096Block
*NandFlash以页为单位进行读和编程(写)操作,一页为512Byte;以块为单位进行擦除操作,一块为512Byte*32page=16KB
*对于64MB的NAND设备,需要26根地址线,由于NAND设备数据总线宽度是8位的,因此必须经过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内的偏移量,而后三个时钟周期给出的是页地址。
*由于一个页内有512Byte,需要9bit的地址寻址,而第一个时钟周期只给出了低8bit,最高位A8由不同的读命令(Read Mode2)来区分的。
4.NandFlash的命令
存储器扩展S3C2410NandFlas 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)