XIP:eXecute In Place,即芯片内执行,指应用程序可以直接在flash闪存内运行,不必再把代码读到系统RAM中。所谓片内执行并不是说程序在存储器内执行,CPU的基本功能是取指、译码、执行,存储器访问,写回。Nor Flash能在芯片内执行,指的是CPU能够直接从Nor flash中取指令,供后面的译码器和执行器来使用。
NOR Flash和Nand Flash上面2种flash是现在市场上两种主要的非易失闪存技术。NOR Flash 的特点是芯片内执行(XIP ,eXecute In Place),这样应用程序可以直接在Flash闪存内运行,不必再把代码读到系统RAM中。NOR 的传输效率很高,在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响到它的性能。NAND的结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。应用NAND的困难在于Flash的管理和需要特殊的系统接口。通常读取NOR的速度比NAND稍快一些,而NAND的写入速度比NOR快很多。
Nand Flash器件的IO口比较少,通过串行地进行读写数据,硬件接口少了,势必会带来复杂的软件成本,一般使用8个引脚来进行传输控制、地址和数据信息,由于时序非常复杂,所以一般CPU最好集成NAND控制器,另外由于Nand flash没有挂接在地址总线上,所以如果想用Nand flash作为系统的启动盘,就需要CPU具备特殊的功能,比如s3c2440在被选择为NandFlash启动方式时会在上电时自动读取Nan