我的mini2440上是只接了一块Nor Flash,型号是S29AL016M90TAI02,这是一块2M Byte,16位宽度的Nor Flash,用于引导扇区的闪存。原理图里面关键的引脚是:
地址引脚:22个地址引脚A0-A21(S29AL016M90TAI02只接了A0-A19,20个地址,接到S3C2440的LADDR1-LADDR20,和图中NorFlash芯片型号不一致)
数据引脚:16个数据引脚D0-D15
/OE:OUTPUT ENABLE,输出使能,低电平有效。
/WE:WRITE ENABLE,写使能,低电平有效。
/CE:CHIP ENABLE,片选,低电平有效。
/WP:S29AL016M90TAI02无此引脚,暂不分析。
S3C2440内存映射:
S3C2440以NorFlash启动时,NorFlash映射到Block0,地址范围是0x0000_0000~0x0800_0000,128M Byte。由原理图OM引脚的配置可知,从NorFlash启动时,OM1直接接地,OM[1:0]=01。
根据OM表可知,此时是16bit模式。
S3C2440最多支持6个Block(Block0-Block5)连接SROM(包括ROM,SRAM,NorFlash属于SRAM),再加上2个Block可以接SROM/SDRAM,每个Block最大为128M Byte,所以S3C2440最多支持外接的8*128M=1G的随机存储介质。S3C2440如果要访问NorFlash上的数据,则通过内存地址的27:29来决定nCGS哪个使能,并作为对应存储芯片的片选信号。由于NorFlash是16位模式,并且OM为01,也设置为16位模式,则NorFlash的最低位接的是S3C2440的LADDR1,16bit对齐。以读操作为例,S3C2440的地址引脚会分别发出32bit的H位和L位,然后读入后进行拼接,拼接成32bit数据,写依然。