嵌入式Linux裸机开发(十二)——iNand简介
一、iNand简介
iNand是SanDisk公司研发的存储芯片,可以看成SD卡或MMC卡芯片化。 iNand是SanDisk公司符合eMMC协议的芯片系列名称,内部采用MLC存储颗粒。iNand接口电路设计复杂,功能完善,提供eMMC接口协议,与SoC的eMMC控制器配对通信。
相对MLC NandFlash,iNAND有以下优点:
1、提高性能
A、减少SOC的工作量,节约SOC资源。
如果使用MLC做存储,SOC要参与FLASH的坏块管理、ECC校正等管理,会牺牲部分SOC性能, 而使用iNAND的话,FLASH的管理工作都有iNAND完成,SOC只在需要时对iNAND进行读写,其他时候完全可以不需要理会iNAND。
B、读 写速度快
iNAND内置Cache模块,如果要存储小于4K的小容量文件时,Cache能够帮助用户将速度提高至MLC的10倍左右,并且 Cache模块不需要用户控制,只要存储小容量文件,Cache自动启动,非常方便。
iNAND可以将内置的MLC FLASH模拟成为为SLC,是iNAND具有SLC的读写速度及其他性能,从而提高读写速度。
C、产品更可靠稳定iNAND内置掉电保护、Wear leveling等SANDISK专利技术,可以帮助客户提高FLASH的读写寿 命,以及防止系统忽然掉电损坏系统文件,降低产品返修率。
2、降低系统成本
首先因为iNANDZ中选用的FLASH一般都是市场上最新、最先进制程的FLASH,所以iNAND具有一定的价格优势。 其次,iNAND不同容量的封装一致,客户如果某款机型有不同容量的几个型号,那么它PCB只需要做一套即可,可以帮助客户简化工作、提高效率,比如苹果 iPHONE有8G、16G等容量产品,他的PCB只需要一套,生产时候贴上对用的iNAND即可。
3、方便采购
采购iNAND时候只需要注意使用的容量,不需要管制程、架构。而很多CPU对普通NAND FLASH不是完全兼容,假如某款CPU最多支持51nm制程的FLASH,如果FLASH厂家产品升级,该客户就可能遇到采购困难等问题,而且市场上也 有三星、现代、美 光等公司的产品,他们都是完全遵照JEDEC委员会的标准,产品完全兼容。
4、使用简单,加快产品研发进度
A、对软件工程师而言,FLASH制程改变,其对应驱动也需要随之变化,其程序移植、代码升级都要重新调试,而 iNAND的产品驱动完全一样,一次调试成功就无后顾之忧;
B、对应硬件工程师也可能会因为新FLASH要重新布板,增加工作强度,而iNAND不管多大 容量,封装都一样,如果贵司产品容量升级,可以直接在原先的PCB上换上更高容量的iNAND即可。
二、iNand接口
iNand连接在SD/MMC通道,与SD卡相比,iNand芯片的IO引脚有8个,是SD卡的芯片化,软件操作与SD卡基本相同。硬件接口功能如下:
A、iNand的IO支持1、4、8bit并行传输
B、CMD引脚用来传输命令
C、CLK引脚用来传输同步时钟信号