目录
1.Flash基本原理概述
1.1 Non-volatile Memory的分类
1.2 Flash编程\擦除原理
2.小结
1.Flash基本原理概述
1.1 Non-volatile Memory的分类
Flash在嵌入式领域是非常重要的角色,主要用于存储数据代码,为代码的执行提供基础保证等。
实际上,Flash只是Non-volatile Memory中的一个分支,根据《Embedded Flash Memory for Embedded Systems》整理,嵌入式领域的非易失性存储器分为ROM、EEPROM、Flash等,如下图所示:
- Mask ROM是在芯片掩膜阶段写入数据或者代码,对于MCU来说最常见就是启动代码,例如英飞凌的BootRom,一旦写入,用户就无法进行修改;
- OTP类似Mask ROM,可以由用户写入敏感数据等,例如密钥、设备独有信息等;
- EPROM(Electrically Programmable ROM):按字节编程,但不能擦除;
- EEPROM(Electrically Erasable and Programmable ROM):按字节擦写,成本较高;
- Flash则是软件开发人员最常接触到的存储器之一,它由根据存储单元的结构分为浮栅型、电子捕获型等。
1.2 Flash编程\擦除原理
以浮栅型Flash为例,它基本存储单位为bit,其存储物理结构叫做cell,这个Cell其实就是一个带浮栅的MOSFET,如下所示:
可以看到,浮栅晶体管在控制栅极(CG)下的绝缘层(Gate Oxide)新增了一层浮栅极(FG),用于保存电子。
一般情况下,源极和漏极里有电子,但是因为它们之间有缺电子的P型材料,它们之间没法流通。如果此时我们给CG和漏极施加正电压,源极接地,如下图:
电子就会迅速从源极流向漏极,同时由于CG电压更大,一部分电子通过隧穿效应(Quantum Tunneling Effect)通过隧道氧化层进入到FG,如下图:
这种情况下即使正电压被移除,电子也会因为隧道氧化层的绝缘作用保存在FG里,这种状态我们说晶体管存储了一个0,表示被编程了。
当我们想要擦除的时候,则在CG施加反向电压,如下:
在这种状态下,电子会被排斥并通过隧道氧化层回到P-Well中,这种状态对应“1”,即擦除状态。
这里我们提高了隧穿效应,所谓量子隧穿效应,即很多粒子冲向势垒,一部分粒子反弹,还会有一些粒子能通过一个隧道穿过势垒,如下图,这个隧道称作“量子隧道(quantum tunneling)”。
实际上,针对浮栅型Cell的Flash来说,编程常用CHE、FN、SSI等三种方式进行操作,如下图:
- CHE:通过对CG和源施加高的电压,电子在源侧经过水平高电场加速,通过垂直高电场注入到FG,这种情况编程电流相对大;
- FN:隧穿效应,如上所示;
- SSI:该方式需要在源极施加高电压,CF和漏极电压较低,从而容易在FG和CG之间的间隙区域诱导出更高的电场。由于水平电场和垂直电场在间隙区都具有最大的场强,因此在间隙区可以高效率地产生热电子并注入到FG中。
2.小结
本章主要从NVM 的分类,Flash的编程\擦除基本原理做了分析,下一篇我们将继续描述Nor、NANDFlash区别,以及eFlash在车规MCU中遇到的问题。