论文部分内容阅读
【摘要】本文主要对闪速存储器(闪存)的接口类型和应用进行浅析。通过对闪速存储器的NOR型和NAND型所涉及到的各种接口分类、接口应用的时序和传输方式的比较,进一步的阐明了闪速存储器接口的特性和应用的趋势。
【关键词】闪速存储器;接口;闪存;NOR型;NAND型
1.前言
闪速存储器(Flash Memory),也称闪存,是存储类元器件的一种。它具有EEPROM(Electrically Erasable Programmable Read-Only Memory电可擦写可编程只读存储器)、RAM(Random Access Memory 随机存储器)和ROM(Read-Only Memory只读存储器)的一些优势:存储容量较高、可更新存储数据以及非挥发性。闪存主要被用来存放系统的启动程序和数据资料,在各种嵌入式平台及系统中起着重要的作用。闪存的存储单元的架构主要分为NOR(或非)型和NAND(与非)型。NOR型的存储单元分别连接在字线和位线上,如图(1),单元结构较为独立,但不利于生产制程的缩减,容量一般不太大。NAND型存储单元为串列相连,如图(2),单元结构比较紧密,易于生产制程的缩减,通常容量可以做的比较大。由于存储单元结构上的本质差异,也造成了存储接口上的差异和性能的不同。当然,随着系统应用和存储要求的不同,闪速存存储器的接口也随之而改变。下面以目前市场应用中所出现的几种类型的闪存接口来做进一步讨论。
2.闪存接口的类型
2.1 数据地址并行接口(ADP:Address Data Parallel)
NOR型闪存的并行接口,逻辑示意图如图(3)。有独立的数据线和地址线以及控制线,易于随机读取,一般被视为存储系统指令和启动程序的最佳选择。系统可以快速随机的读取并代码执行----芯片内执行(XIP:eXecute In Place)而无需将代码下载至RAM中执行。在系统应用前,需要先根据CPU的工作模式,如Byte模式或Word模式来一一对应闪存的控制引脚以及地址和数据接口总线。以16Mbit容量的为例,Byte#置低时,为x8的Byte模式;Byte#置高时,为x16的Word模式。在Byte模式下,Q15/A-1用作21位字节地址总线的最低位A-1。地址总线为A-1—A19,数据总线为Q0-Q7(Q8-Q14不使用,处于高阻状态);在Word模式下,Q15/A-1用作16位数据总线的最高位Q15,地址总线为A0-A19,数据总线为Q0-Q15。在异步数据读取的模式中,每次数据大致输出需要等待70ns左右;在Page页模式中读取,由于在同一页内,地址自动累加,所以数据输出只需要25ns左右;在使用同步Burst突发模式时,通过时钟频率的控制,数据输出则可以达到8ns左右。当然就半导体的特性而言,其输出时间的大小还会受到工作电压、生产工艺和温度等因素的影响。
并行接口闪存的容量,也就是内部的寻址空间,会随着地址数量的增加而增加,寻址空间=2N,N就是地址线的数量。以Word模式为例,4Mbit需要A0-A17的18根地址线;8Mbit需要A0-A18的19根地址线;16Mbit需要A0-A19的20根地址线,以此类推。所以NOR型闪存的并行接口的产品较适合1Gbit以下的相对较小容量的启动程序的随机读取和参数存放。
NOR型并行接口的闪存一般支持CFI (Common Flash Interface通用闪存接口)的JEDEC JESD68这个协议规范,将各种参数、指令等信息标准化。不仅便于系统通过软件统一操作,而且方便快速的区分和兼容使用各个厂商的同类产品。
2.2 数据地址复用型
2.2.1 NAND输入输出(I/O)复用型
NAND型的闪存接口是地址和数据的输入输出I/O复用的,逻辑示意图如图(4)。NAND型闪存的容量较大,被用来存放操作系统和大量的数据资料。
NAND型闪存在读取应用时,通常先将数据读到Page页的缓冲区内,再由I/O接口输入地址在缓冲区内寻址。所以输入地址数据包含Column列地址(页面中的起始操作地址)、相应的Page页面地址和Block块地址,传送至少需要占用三个地址周期。随着容量的增大,地址数据也随之增加,会需要占用更多的时钟周期来传输。以X8模式为例,通过I/O复用接口总线,每次传输8位地址数据。按公式来算,每次8位地址数据只能寻址到256个page页的大小。因此NAND型闪存的容量越大,需要传送的地址周期越多,相对的寻址时间也就越长。如256Mbit容量的,需要3个地址周期传送,到512Mbit和1Gbit的需要4个地址周期,依次类推。由于NAND型存储单元架构的串列特性,NAND型闪存的随机读取速度较慢,所以第一个Byte或Word的数据输出延迟时间需要大概二十个us,而后续的数据按照顺序读取的模式,输出只需要30ns左右的时间。
NAND型的一些闪存厂商通过ONFI (Open NAND Flash Interface开放式NAND闪存接口)的规范制定,统一的NAND的一些基本指令、寄存器参数、甚至是接口的应用设计,如DDR(Double Data Rate双倍数据流)的读取信号技术,可以使得数据的传输更加高效。
2.2.2 地址数据复用型接口
ADM(Address and Data Multiplexed地址数据复用)接口是NOR型闪存的使用一种地址线和数据线共用的接口,逻辑示意图如图(5)。
A/DQ15-A/DQ0作为混合数据地址信号线,减少了存储芯片的引脚数量,也节省了主芯片端的存储端口。一般在初始化的时候flash的默认工作状态是在异步模式下,可以切换到突发模式来对地址进行连续访问,从而实现对数据的快速读取。作为异步模式使用时,当AVD#(Address Low Valid)置低时为地址位有效,选通A15-A0,地址在AVD#的上升沿获取,在突发模式下,地址信号在时钟信号的上升沿获取。当AVD#置高时切换为数据位DQ15-DQ0,系统连接的数据线激活。Amax-A16作为高位地址线预留,例如128Mbit为A22-A16;256Mbit为A23-A16;512Mbit为A24-A16。在应用过程中,ADM的高位地址没有参与地址数据的复用,而另一种复用接口方式AADM(Address-high,Address-low and Data Multiplexed高低位地址数据复用)已经完全将数据和地址线混合使用。逻辑示意图如图(6)。 AVD#引脚先置低,让数据先作为地址高位输入,再作为地址低位输入,然后AVD#置高,总线接口切换作为数据输出使用。虽然地址输入时间变长,但是却充分利用了现有的16根总线接口,节省了宝贵的引脚资源。在异步模式下,数据的输出时间按照正常的70ns的大小,一般使用同步Burst突发模式下,一旦通过AVD#选定地址位,起始数据输出在正常的70ns,后续连续的每笔数据在时钟信号的下降沿输出,只需要9ns左右的时间即可。由于引脚的缩减,降低了封装的尺寸,所以目前ADM/AADM接口的NOR型闪存主要应用在手机等移动通讯产品上。
2.3 SPI串行接口(Serial Peripheral Interface)
SPI串行总线最早是由Motorola发明的。它是一种高速的、全双工的、同步的串行通信总线。所有基于SPI串行接口协议的主从设备在双向传输时只需要4根线作为接口:串行时钟线(SCLK)、主机输入/从机输出线(SO)、主机输出/从机输入线(SI)和片选信号(CS#)。
随着SPI串行接口协议在闪存存储器上的应用,通过串行协议来传输数据,极大的缩减了之前所需要的庞大的数据和地址总线,利用极少数的芯片引脚即可完成数据的传输。逻辑示意图如图(7)。串行闪存引脚简单,不仅简化了系统PCB板布线空间与面积,对于缩减了主芯片的外部引脚和封装大小,降低系统整体成本更是起到了非常大的帮助。简单的引脚使其在硬件接口上的兼容性较好,设计人员无需因为容量的变化而改动硬件的电路板设计。
不过在大容量的寻址范围上,还是有些问题需要克服的。如,24bit地址位的寻址范围在128Mbit内,如果容量扩展到128Mbit以外,则24bit的地址就不够用了,需要32bit的地址。目前可以通过硬件和软件上的3种解决方案:a.使用2个CS#的硬件引脚,/CS 1选通前128Mbit的容量,/CS 2选通后128Mbit的容量,从而达到寻址256Mbit的容量。b.使用24bit地址转换得方式,在读取前128Mbit的数据时,使用正常24bit的地址;需要后128Mbit时,通过指令切换,转换为32bit的方式来读取后128Mbit的数据。c.直接使用32bit的寻址方式,读取所有256Mbit的数据。
随着系统对于传输速度的进一步要求,串行闪速利用引脚功能的复用,从原有的数据接口的一进一出(1-1-1)的基础上发展成两进两出(2-2-2)和四进四出(4-4-4),使得传输速率得以大幅提升。逻辑示意图如图(8)。甚至可以使用类似DDR的传输模式,也就是可以在时钟信号的上升沿和下降沿均输出数据,来进一步提升数据输出效率。当四进四出模式在时钟信号频率为70MHZ时,其数据输出就已经超过传统的并行闪存使用异步读取数据的能力了。由于受系统负载的影响,串行闪存在时钟频率下降沿到数据输出有效的最快时间需要6ns,所以目前能够支持的最大频率为133MHZ。介于SPI接口的NOR型闪存在容量上的限制,NAND型闪存也发展出SPI接口的产品,用来弥补SPI串行存储容量的局限,所以不论在NOR型还是NAND型的闪存产品上均有SPI的串行接口以应对市场应用的不同需求。
当然,串行闪存也有规范其软件操作指令以及数据、参数存放的JEDEC标准JESD216 SFDP(Serial Flash Discoverable Parameter串行闪存参数表),以方便系统对各种不同厂商的串行闪存进行区分和兼容性调试。
2.4 组合型接口
由于移动通讯类产品对系统整体体积的要求,相应的需要轻薄短小的元器件封装,合适的存储器接口也变得至关重要。系统厂商在设计生产时尽可能的将元器件整合集成以便缩小体积节省空间,所以芯片的叠加封装越来越普遍。为配合主芯片的接口和整体性能,组合性存储器如MCP(Multi Chip Package多芯片封装),eMMC(Embedded MultiMediaCard嵌入式多媒体卡)等类型的存储器在移动通讯类产品上得到了广泛的应用。其内部的闪速存储器主要还是以文中前面提到各种闪存接口类型,但是会根据系统输出的需求来搭配相应的RAM(Random Access Memory)进行封装。如,NOR ADP+ RAM、NOR ADM+ RAM、NOR AADM+ RAM、NAND+ RAM等等。
3.总结语
随着手机、电脑等多媒体和嵌入式产品的功能和应用不断提高和发展,主芯片内部功能的高度整合和集成化已经变得越来越普遍。闪存,作为极少数还没有被完全集成在主芯片内的元器件而言,其接口的类型和性能势必会随着主芯片对存储的要求而不断完善和改变。以目前闪存接口所出现的各种类型来看,大容量NAND型闪存接口还是以复用型接口为主,由于对SPI串行接口的应用,也有少量市场需求串行SPI的NAND型闪存。相对小容量的NOR型闪存的接口则从并行到复用型,再到串行。目前闪存市场的串行接口应用已经超过并行接口的市占率。引脚少、兼容性好、性能优和低成本已经逐渐成为了小容量应用的趋势。
参考文献
[1]Intel Corporation. What is flash memory(Version 003)Document Number:298312-003.
[2]JEDEC Std.Common Flash Interface.(CFI)JESD68 Sep.2003.
[3]Macronix International.MX29GL640E/MX25L256 /257/258E Flash Memory Data Sheet.
[4]Open NAND Flash Interface Specification.(ONFI)3.1 Spec Sep.21,2012.
[5]Micron International.MT29F2G08AACWP Rev.D Data Sheet.
[6]Spansion International.S29XS128R/256R;S29NS128P /256P Data Sheet.
[7]JEDEC Std.Serial Flash Discoverable Parameters(SFDP)JESD216.April,2011.
作者简介:谢亚立,男,江苏江都人,大学本科,旺宏(香港)有限公司苏州代表处应用工程部经理。
【关键词】闪速存储器;接口;闪存;NOR型;NAND型
1.前言
闪速存储器(Flash Memory),也称闪存,是存储类元器件的一种。它具有EEPROM(Electrically Erasable Programmable Read-Only Memory电可擦写可编程只读存储器)、RAM(Random Access Memory 随机存储器)和ROM(Read-Only Memory只读存储器)的一些优势:存储容量较高、可更新存储数据以及非挥发性。闪存主要被用来存放系统的启动程序和数据资料,在各种嵌入式平台及系统中起着重要的作用。闪存的存储单元的架构主要分为NOR(或非)型和NAND(与非)型。NOR型的存储单元分别连接在字线和位线上,如图(1),单元结构较为独立,但不利于生产制程的缩减,容量一般不太大。NAND型存储单元为串列相连,如图(2),单元结构比较紧密,易于生产制程的缩减,通常容量可以做的比较大。由于存储单元结构上的本质差异,也造成了存储接口上的差异和性能的不同。当然,随着系统应用和存储要求的不同,闪速存存储器的接口也随之而改变。下面以目前市场应用中所出现的几种类型的闪存接口来做进一步讨论。
2.闪存接口的类型
2.1 数据地址并行接口(ADP:Address Data Parallel)
NOR型闪存的并行接口,逻辑示意图如图(3)。有独立的数据线和地址线以及控制线,易于随机读取,一般被视为存储系统指令和启动程序的最佳选择。系统可以快速随机的读取并代码执行----芯片内执行(XIP:eXecute In Place)而无需将代码下载至RAM中执行。在系统应用前,需要先根据CPU的工作模式,如Byte模式或Word模式来一一对应闪存的控制引脚以及地址和数据接口总线。以16Mbit容量的为例,Byte#置低时,为x8的Byte模式;Byte#置高时,为x16的Word模式。在Byte模式下,Q15/A-1用作21位字节地址总线的最低位A-1。地址总线为A-1—A19,数据总线为Q0-Q7(Q8-Q14不使用,处于高阻状态);在Word模式下,Q15/A-1用作16位数据总线的最高位Q15,地址总线为A0-A19,数据总线为Q0-Q15。在异步数据读取的模式中,每次数据大致输出需要等待70ns左右;在Page页模式中读取,由于在同一页内,地址自动累加,所以数据输出只需要25ns左右;在使用同步Burst突发模式时,通过时钟频率的控制,数据输出则可以达到8ns左右。当然就半导体的特性而言,其输出时间的大小还会受到工作电压、生产工艺和温度等因素的影响。
并行接口闪存的容量,也就是内部的寻址空间,会随着地址数量的增加而增加,寻址空间=2N,N就是地址线的数量。以Word模式为例,4Mbit需要A0-A17的18根地址线;8Mbit需要A0-A18的19根地址线;16Mbit需要A0-A19的20根地址线,以此类推。所以NOR型闪存的并行接口的产品较适合1Gbit以下的相对较小容量的启动程序的随机读取和参数存放。
NOR型并行接口的闪存一般支持CFI (Common Flash Interface通用闪存接口)的JEDEC JESD68这个协议规范,将各种参数、指令等信息标准化。不仅便于系统通过软件统一操作,而且方便快速的区分和兼容使用各个厂商的同类产品。
2.2 数据地址复用型
2.2.1 NAND输入输出(I/O)复用型
NAND型的闪存接口是地址和数据的输入输出I/O复用的,逻辑示意图如图(4)。NAND型闪存的容量较大,被用来存放操作系统和大量的数据资料。
NAND型闪存在读取应用时,通常先将数据读到Page页的缓冲区内,再由I/O接口输入地址在缓冲区内寻址。所以输入地址数据包含Column列地址(页面中的起始操作地址)、相应的Page页面地址和Block块地址,传送至少需要占用三个地址周期。随着容量的增大,地址数据也随之增加,会需要占用更多的时钟周期来传输。以X8模式为例,通过I/O复用接口总线,每次传输8位地址数据。按公式来算,每次8位地址数据只能寻址到256个page页的大小。因此NAND型闪存的容量越大,需要传送的地址周期越多,相对的寻址时间也就越长。如256Mbit容量的,需要3个地址周期传送,到512Mbit和1Gbit的需要4个地址周期,依次类推。由于NAND型存储单元架构的串列特性,NAND型闪存的随机读取速度较慢,所以第一个Byte或Word的数据输出延迟时间需要大概二十个us,而后续的数据按照顺序读取的模式,输出只需要30ns左右的时间。
NAND型的一些闪存厂商通过ONFI (Open NAND Flash Interface开放式NAND闪存接口)的规范制定,统一的NAND的一些基本指令、寄存器参数、甚至是接口的应用设计,如DDR(Double Data Rate双倍数据流)的读取信号技术,可以使得数据的传输更加高效。
2.2.2 地址数据复用型接口
ADM(Address and Data Multiplexed地址数据复用)接口是NOR型闪存的使用一种地址线和数据线共用的接口,逻辑示意图如图(5)。
A/DQ15-A/DQ0作为混合数据地址信号线,减少了存储芯片的引脚数量,也节省了主芯片端的存储端口。一般在初始化的时候flash的默认工作状态是在异步模式下,可以切换到突发模式来对地址进行连续访问,从而实现对数据的快速读取。作为异步模式使用时,当AVD#(Address Low Valid)置低时为地址位有效,选通A15-A0,地址在AVD#的上升沿获取,在突发模式下,地址信号在时钟信号的上升沿获取。当AVD#置高时切换为数据位DQ15-DQ0,系统连接的数据线激活。Amax-A16作为高位地址线预留,例如128Mbit为A22-A16;256Mbit为A23-A16;512Mbit为A24-A16。在应用过程中,ADM的高位地址没有参与地址数据的复用,而另一种复用接口方式AADM(Address-high,Address-low and Data Multiplexed高低位地址数据复用)已经完全将数据和地址线混合使用。逻辑示意图如图(6)。 AVD#引脚先置低,让数据先作为地址高位输入,再作为地址低位输入,然后AVD#置高,总线接口切换作为数据输出使用。虽然地址输入时间变长,但是却充分利用了现有的16根总线接口,节省了宝贵的引脚资源。在异步模式下,数据的输出时间按照正常的70ns的大小,一般使用同步Burst突发模式下,一旦通过AVD#选定地址位,起始数据输出在正常的70ns,后续连续的每笔数据在时钟信号的下降沿输出,只需要9ns左右的时间即可。由于引脚的缩减,降低了封装的尺寸,所以目前ADM/AADM接口的NOR型闪存主要应用在手机等移动通讯产品上。
2.3 SPI串行接口(Serial Peripheral Interface)
SPI串行总线最早是由Motorola发明的。它是一种高速的、全双工的、同步的串行通信总线。所有基于SPI串行接口协议的主从设备在双向传输时只需要4根线作为接口:串行时钟线(SCLK)、主机输入/从机输出线(SO)、主机输出/从机输入线(SI)和片选信号(CS#)。
随着SPI串行接口协议在闪存存储器上的应用,通过串行协议来传输数据,极大的缩减了之前所需要的庞大的数据和地址总线,利用极少数的芯片引脚即可完成数据的传输。逻辑示意图如图(7)。串行闪存引脚简单,不仅简化了系统PCB板布线空间与面积,对于缩减了主芯片的外部引脚和封装大小,降低系统整体成本更是起到了非常大的帮助。简单的引脚使其在硬件接口上的兼容性较好,设计人员无需因为容量的变化而改动硬件的电路板设计。
不过在大容量的寻址范围上,还是有些问题需要克服的。如,24bit地址位的寻址范围在128Mbit内,如果容量扩展到128Mbit以外,则24bit的地址就不够用了,需要32bit的地址。目前可以通过硬件和软件上的3种解决方案:a.使用2个CS#的硬件引脚,/CS 1选通前128Mbit的容量,/CS 2选通后128Mbit的容量,从而达到寻址256Mbit的容量。b.使用24bit地址转换得方式,在读取前128Mbit的数据时,使用正常24bit的地址;需要后128Mbit时,通过指令切换,转换为32bit的方式来读取后128Mbit的数据。c.直接使用32bit的寻址方式,读取所有256Mbit的数据。
随着系统对于传输速度的进一步要求,串行闪速利用引脚功能的复用,从原有的数据接口的一进一出(1-1-1)的基础上发展成两进两出(2-2-2)和四进四出(4-4-4),使得传输速率得以大幅提升。逻辑示意图如图(8)。甚至可以使用类似DDR的传输模式,也就是可以在时钟信号的上升沿和下降沿均输出数据,来进一步提升数据输出效率。当四进四出模式在时钟信号频率为70MHZ时,其数据输出就已经超过传统的并行闪存使用异步读取数据的能力了。由于受系统负载的影响,串行闪存在时钟频率下降沿到数据输出有效的最快时间需要6ns,所以目前能够支持的最大频率为133MHZ。介于SPI接口的NOR型闪存在容量上的限制,NAND型闪存也发展出SPI接口的产品,用来弥补SPI串行存储容量的局限,所以不论在NOR型还是NAND型的闪存产品上均有SPI的串行接口以应对市场应用的不同需求。
当然,串行闪存也有规范其软件操作指令以及数据、参数存放的JEDEC标准JESD216 SFDP(Serial Flash Discoverable Parameter串行闪存参数表),以方便系统对各种不同厂商的串行闪存进行区分和兼容性调试。
2.4 组合型接口
由于移动通讯类产品对系统整体体积的要求,相应的需要轻薄短小的元器件封装,合适的存储器接口也变得至关重要。系统厂商在设计生产时尽可能的将元器件整合集成以便缩小体积节省空间,所以芯片的叠加封装越来越普遍。为配合主芯片的接口和整体性能,组合性存储器如MCP(Multi Chip Package多芯片封装),eMMC(Embedded MultiMediaCard嵌入式多媒体卡)等类型的存储器在移动通讯类产品上得到了广泛的应用。其内部的闪速存储器主要还是以文中前面提到各种闪存接口类型,但是会根据系统输出的需求来搭配相应的RAM(Random Access Memory)进行封装。如,NOR ADP+ RAM、NOR ADM+ RAM、NOR AADM+ RAM、NAND+ RAM等等。
3.总结语
随着手机、电脑等多媒体和嵌入式产品的功能和应用不断提高和发展,主芯片内部功能的高度整合和集成化已经变得越来越普遍。闪存,作为极少数还没有被完全集成在主芯片内的元器件而言,其接口的类型和性能势必会随着主芯片对存储的要求而不断完善和改变。以目前闪存接口所出现的各种类型来看,大容量NAND型闪存接口还是以复用型接口为主,由于对SPI串行接口的应用,也有少量市场需求串行SPI的NAND型闪存。相对小容量的NOR型闪存的接口则从并行到复用型,再到串行。目前闪存市场的串行接口应用已经超过并行接口的市占率。引脚少、兼容性好、性能优和低成本已经逐渐成为了小容量应用的趋势。
参考文献
[1]Intel Corporation. What is flash memory(Version 003)Document Number:298312-003.
[2]JEDEC Std.Common Flash Interface.(CFI)JESD68 Sep.2003.
[3]Macronix International.MX29GL640E/MX25L256 /257/258E Flash Memory Data Sheet.
[4]Open NAND Flash Interface Specification.(ONFI)3.1 Spec Sep.21,2012.
[5]Micron International.MT29F2G08AACWP Rev.D Data Sheet.
[6]Spansion International.S29XS128R/256R;S29NS128P /256P Data Sheet.
[7]JEDEC Std.Serial Flash Discoverable Parameters(SFDP)JESD216.April,2011.
作者简介:谢亚立,男,江苏江都人,大学本科,旺宏(香港)有限公司苏州代表处应用工程部经理。