CN103226976A - 一种基于FPGA实现多片Nandflash存储及读取的装置 - Google Patents

一种基于FPGA实现多片Nandflash存储及读取的装置 Download PDF

Info

Publication number
CN103226976A
CN103226976A CN2013100870151A CN201310087015A CN103226976A CN 103226976 A CN103226976 A CN 103226976A CN 2013100870151 A CN2013100870151 A CN 2013100870151A CN 201310087015 A CN201310087015 A CN 201310087015A CN 103226976 A CN103226976 A CN 103226976A
Authority
CN
China
Prior art keywords
nandflash
memory set
fpga
read
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2013100870151A
Other languages
English (en)
Inventor
马晓川
鄢社锋
林津丞
杨力
彭承彦
王敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Acoustics CAS
Original Assignee
Institute of Acoustics CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Acoustics CAS filed Critical Institute of Acoustics CAS
Priority to CN2013100870151A priority Critical patent/CN103226976A/zh
Publication of CN103226976A publication Critical patent/CN103226976A/zh
Pending legal-status Critical Current

Links

Images

Abstract

本发明公开了一种基于FPGA实现多片NandFlash存储及读取的装置,其中该装置包括:Nandflash存储器组,包含多片Nandflash芯片组成的存储器阵列,用于存储FPGA输出给Nandflash的ADC采样数据;Nandflash存储及读取功能选择器,用于对所述Nandflash存储器组进行读数据、写数据、擦除和读取ID信息。采用本发明的技术方案,使得管脚数量成倍提升,相当于在物理层上对数据传输的带宽进行扩展,这样速率可以得到很大的提高,而且只在物理层上扩展,减小了FPGA程序开发的难度。

Description

一种基于FPGA实现多片Nandflash存储及读取的装置
技术领域
本发明涉及模数转换存储技术和基于FPGA开发设计领域,尤其涉及采用物理性能稳定的Nandflash芯片来设立可靠的可扩展存储机制的技术。
背景技术
一般存储器控制结构如图1所示:存储器与FPGA的接口主要分为地址线、数据线和控制线,这种方式的好处是可操作性强,读写的时候只要FPGA给出地址,就能对存储器进行精确的控制。
但在更多的具体应用中,如声纳系统数据采集中,则希望存储器能准确、稳定的录入数据,而且当声纳系统运行结束后可以回放数据。所以要选择非易失性存储器。
非易失性存储器是指关掉供电后,所存储的数据不会消失,可分为两大类产品,即ROM和Flash memory。现在ROM一般只EEPROM(电可擦可编程只读存储器)。EEPROM的优势在于,它很便于经常擦写操作,性能优异,能以较小的单位(例如以字节)擦除或写入。而Nandflash只能进行,以较大区块为单位的擦除或写入,虽然操作没有EEPROM灵活,但是闪存的成本远较可以字节为单位写入的EEPROM来的低。
而且在声纳平台工作期间持续的存储AD的数据,并不需要精确的以字节擦除或写入,以及闪存在成本上的极大优势,所以本设计使用Nandflash作为存储芯片。
现有的方案由于存储器件物理性质不稳定,容易发生存储错误,存储控制器很多选用DSP、单片机、ARM等,存储方式不灵活,管脚有限,不能随意的分配管脚数量扩大带宽;现有的方法很难针对本系统的多通道数据存储设计高速存储方案;下面详细列出现有方法的主要缺点:
(1)采用一般的存储介质,想要同时满足存储容量和稳定的物理性质比较困难;本设计的ADC板是应用在运动平台上,在运动的过程中会发生震荡等不稳定因素,如果物理性质不稳定,数据会错误或者丢失,所以本设计选择Nandflash芯片;
(2)现有的解决方案一般不能做到容量很大,本提案的设计方法使用多片Nandflash,扩大了存储容量,足够用来存储平台运行时间内的ADC数据。
(3)对于多通道的AD数据采集系统,数据带宽要求很大,用单片存储芯片,或者传统的存储设计方法难以解决;本设计使用多片Nandflash,因为存储芯片的数量和数据传输的带宽成正比,所以多片的结构可以提高数据传输的带宽。
发明内容
本发明就是为了克服老旧方案的这些局限性,创新性地使用多片Nandflash存储芯片,很大地提高容量,物理性质稳定;存储控制设计具有针对性,只需要给出起始地址和区块大小即可对Nandflash进行读写操作。
具体而言,本发明提出了一种基于FPGA实现多片NandFlash存储及读取的装置,其中该装置包括:
Nandflash存储器组,包含多片Nandflash芯片组成的存储器阵列,用于存储FPGA输出给Nandflash的ADC采样数据;
Nandflash存储及读取功能选择器,用于对所述Nandflash存储器组进行读数据、写数据、擦除和读取ID信息。
根据本发明另一个方面,其中所述Nandflash存储器组包括FPGA与Nandflash存储器组的硬件连接,用于为Nandflash存储及读取功能选择器2控制Nandflash提供通信;IO线及控制线的硬件连接,其中所述IO线用于FPGA访问Nandflash存储器组时,给出数据和地址信息;所述控制线用于FPGA访问Nandflash存储器组时,给出复位、读写命令的控制信号。
根据本发明另一个方面,其中所述Nandflash存储器组进一步包括:
FPGA与Nandflash存储器组的IO连接,用于FPGA访问Nandflash存储器组时,给出数据和地址信息。
FPGA与Nandflash存储器组连接的控制线,用于FPGA访问Nandflash存储器组时,给出复位、读写命令的控制信号。
Nandflash存储器阵列,包括8片Nandflash存储芯片,用于存储FPGA输出给Nandflash的ADC采样数据。
根据本发明另一个方面,其中Nandflash存储及读取功能选择器进一步用于:
等待外部启动命令及参数设定,用于待机,等待外部信号给出的命令,从而决定Nandflash存储及读取功能选择器进入哪一项操作;读取Nandflash存储器组的ID信息及检测Nandflash存储器组是否正常工作;读取Nandflash存储器组的数据,用于读取Nandflash存储器组中的数据,并通过外部FIFO2缓存,将读取的数据通过LVDS信号线传给DSP板;向Nandflash存储器组写入数据,将外部FIFO1中缓存的ADC采样数据存储到Nandflash存储器组中;擦除Nandflash存储器组中的数据。
根据本发明另一个方面,其中可以通过设置可扩展式多组Nandflash存储器组架构和可扩展式多组Nandflash存储及读取功能选择器来对该装置进行扩展,其中,可扩展式多组Nandflash存储器组架构是多组Nandflash存储器并行扩展而成,多组Nandflash存储及读取功能选择器由多组Nandflash存储及读取功能选择器并行扩展而成。
本发明提出的多片Nandflash存储芯片,容量有很大的提升,物理性质稳定;存储控制设计具有针对性,只需要给出起始地址和区块大小即可对Nandflash进行读写操作。多片设计使得管脚数量成倍提升,相当于在物理层上对数据传输的带宽进行扩展,这样速率可以得到很大的提高,而且只在物理层上扩展,减小了FPGA程序开发的难度。
附图说明
下面结合附图及具体实施例对本发明再作进一步详细的说明:
附图1所示为现有技术中的存储器控制结构示意图;
附图2所示为本发明所提出的Nandflash存储装置基本结构示意图;
附图3所示为本发明所提出的Nandflash容量结构图示意图;
附图4所示为本发明所提出的Nandflash存储器组整体结构示意图;
附图5所示为本发明所提出的Nandflash存储及读取功能选择器;
附图6所示为本发明所提出的可扩展式多组Nandflash存储器结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
下面结合附图,对本发明作详细的阐述,本发明详细结构如图二:
参见图2,Nandflash存储及读取功能选择器2和Nandflash存储器组1是本发明的核心部分,需要介绍。
具体结构说明如下:
1.Nandflash存储器组,这部分是Nandflash存储器组,包括FPGA与Nandflash存储器组的硬件连接,包括IO线及控制线的硬件连接,用于为Nandflash存储及读取功能选择器2控制Nandflash提供硬件连接。IO线用于FPGA访问Nandflash存储器组时,给出数据和地址信息;控制线用于FPGA访问Nandflash存储器组时,给出复位、读写等命令的控制信号;多片Nandflash芯片组成的存储器阵列,用于存储FPGA输出给Nandflash的ADC采样数据。
2.Nandflash存储及读取功能选择器,用于对Nandflash存储器组1进行读数据、写数据、擦除和读取ID信息,具体方法实现是由FPGA编程控制。
为了保证数据可靠性,本设计采用可扩展式的多组nandlflash控制器,每组都各包括一个Nandflash存储器组1和Nandflash存储及读取功能选择器2。
Nandflash的数据和地址接口使用相同的IO(图2中“Nandflash的IO”),每片Nandflash存储器只有8个IO,还有5个控制线(图2中“CTRL”)。Nandflash功能选择就靠这5个控制线,这5个控制线决定IO写入或读出的是数据信息、地址信息或芯片信息。下面列出异步接口功能选择表:
Figure BDA00002934609000041
Figure BDA00002934609000051
注:L代表LOW,低电平;
H代表HIGH,高电平;
X代表L或是H都可以;
NANDFLASH介绍
通过上表中的控制方式就可以实现对Nandflash存储芯片的操作了。操作主要分为擦除、写入和读取三种操作,这三种操作都是以大区块进行的,每次进行操作的最小单位是4KByte。
一片Nandflash中有多个层,每个层中有2048个块,每个块中有128页,每个页中有4K+224字节。为了开发方便,这里只用了4K的整数倍字节。通过多级的分化,Nandflash的容量可以达到很大,我们每片使用2G字节的存储容量,总共是16G字节的存储容量。
1.Nandflash存储器组
图4是Nandflash存储器组的整体结构图,用于为Nandflash存储及读取功能选择器2控制Nandflash提供硬件连接,包括FPGA与Nandflash存储器组的IO连接101,FPGA与Nandflash存储器组连接的控制线102,Nandflash存储器阵列103。图中显示的数据\地址总线(IO)和控制线是由FPGA的IO直接输出的;图中201的是IO,每片Nandflash都有8个独立的IO;202的是控制线,是所有Nandflash芯片共用的。控制线202总共有CE#、CLE、ALE、WE#、RE#,具体功能已经在上表中介绍过了。
具体结构说明如下:
101.FPGA与Nandflash存储器组的IO连接101,属于1结构的一部分,用于FPGA访问Nandflash存储器组时,给出数据和地址信息。
102.FPGA与Nandflash存储器组连接的控制线102,用于FPGA访问Nandflash存储器组时,给出复位、读写等命令的控制信号。
103.Nandflash存储器阵列103,此部分包括8片Nandflash存储芯片,用于存储FPGA输出给Nandflash的ADC采样数据。
2.Nandflash存储及读取功能选择器
此部分是Nandflash存储及读取功能选择器2,用于对Nandflash存储器组1进行读数据、写数据、擦除和读取ID信息,具体方法实现是由FPGA编程控制。Nandflash存储及读取功能选择器2的实现方法如图5所示:
具体内容如下:
201.等待外部启动命令及参数设定201,用于待机,等待外部信号给出的命令,从而决定Nandflash存储及读取功能选择器进入哪一项操作。
202.FPGA读取Nandflash存储器组的ID信息202,用于检测Nandflash存储器组是否正常工作,此方法通过FPGA与Nandflash存储器组连接的控制线102,给Nandflash发命令信号,从而读取Nandflash存储器组中的ID信息。
203.FPGA读取Nandflash存储器组的数据203,用于读取Nandflash存储器组中的数据,并通过FIFO2缓存,将读取的数据通过LVDS信号线传给DSP板。
204.FPGA向Nandflash存储器组写入数据204,用于将FIFO1中缓存的ADC采样数据存储到Nandflash存储器组中。
205.擦除Nandflash存储器组中的数据205,用于擦除Nandflash存储器组中的数据,此方法通过FPGA与Nandflash存储器组连接的控制线102,给Nandflash发命令信号,从而擦除Nandflash存储器组中的全部数据。
Nandflash存储及读取功能选择器2,工作流程说明:
硬件系统工作起来后,状态机首先停在等待外部启动命令及参数设定201状态,并不断检测启动命令,如果没有读写或擦除的命令,状态机会保持在这个状态。
如果要想对Nandflash进行操作,外部信号首先要设定参数,然后给出命令。设定的参数包括:起始地址、区块范围;4个不同的启动命令包括:读取ID信息、读取数据、写入数据、擦除数据。
当进行完操作后,状态机回停到待机状态,等待下一次启动。
3.可扩展式多组Nandflash存储方案
以上介绍的是nandlflash控制器的具体结构,此种结构设计有非常好的扩展特性,本发明按照以上介绍的结构和方法进行并行扩展,实现了可扩展式多组Nandflash存储方案。
具体结构说明如下:
301.可扩展式多组Nandflash存储器组架构301,此架构是由多组Nandflash存储器组1并行扩展而成。
302.可扩展式多组Nandflash存储及读取功能选择器302,此架构是由多组Nandflash存储及读取功能选择器2并行扩展而成。
现有的方案由于存储器件由于物理性质不稳定,容易发生存储错误,存储控制器很多选用DSP、单片机、ARM等,存储方式不灵活,管脚有限,不能随意的分配管脚数量扩大带宽;现有的方法很难针对本系统的多通道数据存储设计高速存储方案;
本申请提案使用多片Nandflash存储芯片,容量有很大的提升,物理性质稳定;存储控制设计具有针对性,只需要给出起始地址和区块大小即可对Nandflash进行读写操作。
多片设计使得管脚数量成倍提升,相当于在物理层上对数据传输的带宽进行扩展,这样速率可以得到很大的提高,而且只在物理层上扩展,减小了FPGA程序开发的难度。
综上所述,虽然本发明已以优选实施例披露如上,然而其并非用以限定本发明。本发明所属技术领域的普通技术人员,在不脱离本发明的精神和范围内,可作各种变动与修饰。因此,本发明的保护范围当视所附的权利要求所界定的范围为准。

Claims (5)

1.一种基于FPGA实现多片NandFlash存储及读取的装置,其中该装置包括:
Nandflash存储器组,包含多片Nandflash芯片组成的存储器阵列,用于存储FPGA输出给Nandflash的ADC采样数据;
Nandflash存储及读取功能选择器,用于对所述Nandflash存储器组进行读数据、写数据、擦除和读取ID信息。
2.如权利要求1所述的装置,其中所述Nandflash存储器组包括FPGA与Nandflash存储器组的硬件连接,用于为Nandflash存储及读取功能选择器2控制Nandflash提供通信;IO线及控制线的硬件连接,其中所述IO线用于FPGA访问Nandflash存储器组时,给出数据和地址信息;所述控制线用于FPGA访问Nandflash存储器组时,给出复位、读写命令的控制信号。
3.如权利要求1所述的装置,其中所述Nandflash存储器组进一步包括:
FPGA与Nandflash存储器组的IO连接,用于FPGA访问Nandflash存储器组时,给出数据和地址信息。
FPGA与Nandflash存储器组连接的控制线,用于FPGA访问Nandflash存储器组时,给出复位、读写命令的控制信号。
Nandflash存储器阵列,包括8片Nandflash存储芯片,用于存储FPGA输出给Nandflash的ADC采样数据。
4.如权利要求1所述的装置,其中Nandflash存储及读取功能选择器进一步用于:
等待外部启动命令及参数设定,用于待机,等待外部信号给出的命令,从而决定Nandflash存储及读取功能选择器进入哪一项操作;读取Nandflash存储器组的ID信息及检测Nandflash存储器组是否正常工作;读取Nandflash存储器组的数据,用于读取Nandflash存储器组中的数据,并通过外部FIFO2缓存,将读取的数据通过LVDS信号线传给DSP板;向Nandflash存储器组写入数据,将外部FIFO1中缓存的ADC采样数据存储到Nandflash存储器组中;擦除Nandflash存储器组中的数据。
5.如权利要求1-4中任一权利要求所述的装置,其中可以通过设置可扩展式多组Nandflash存储器组架构和可扩展式多组Nandflash存储及读取功能选择器来对该装置进行扩展,其中,可扩展式多组Nandflash存储器组架构是多组Nandflash存储器并行扩展而成,多组Nandflash存储及读取功能选择器由多组Nandflash存储及读取功能选择器并行扩展而成。
CN2013100870151A 2013-03-19 2013-03-19 一种基于FPGA实现多片Nandflash存储及读取的装置 Pending CN103226976A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2013100870151A CN103226976A (zh) 2013-03-19 2013-03-19 一种基于FPGA实现多片Nandflash存储及读取的装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2013100870151A CN103226976A (zh) 2013-03-19 2013-03-19 一种基于FPGA实现多片Nandflash存储及读取的装置

Publications (1)

Publication Number Publication Date
CN103226976A true CN103226976A (zh) 2013-07-31

Family

ID=48837390

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2013100870151A Pending CN103226976A (zh) 2013-03-19 2013-03-19 一种基于FPGA实现多片Nandflash存储及读取的装置

Country Status (1)

Country Link
CN (1) CN103226976A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103763110A (zh) * 2014-01-03 2014-04-30 熊猫电子集团有限公司 一种用于通信设备参数清除的装置
CN105955919A (zh) * 2016-04-27 2016-09-21 西安交通大学 基于FPGA的多MCU读写NANDFlash的实现方法
WO2020140361A1 (zh) * 2019-01-04 2020-07-09 中国科学院声学研究所东海研究站 基于fpga的智能存储控制系统及其应用

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090228637A1 (en) * 2008-03-10 2009-09-10 Moon Yang Gi High-speed solid state storage system having a hierarchy of different control units that process data in a corresponding memory area and method of controlling the same
CN101980139A (zh) * 2010-11-12 2011-02-23 北京理工大学 一种基于nand的存储板
CN102428454A (zh) * 2009-04-08 2012-04-25 谷歌公司 数据存储装置
CN102520892A (zh) * 2012-01-02 2012-06-27 西安电子科技大学 多功能固态数据存储回放仪
CN203192416U (zh) * 2013-03-19 2013-09-11 中国科学院声学研究所 一种基于FPGA实现多片Nandflash存储及读取的装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090228637A1 (en) * 2008-03-10 2009-09-10 Moon Yang Gi High-speed solid state storage system having a hierarchy of different control units that process data in a corresponding memory area and method of controlling the same
CN102428454A (zh) * 2009-04-08 2012-04-25 谷歌公司 数据存储装置
CN101980139A (zh) * 2010-11-12 2011-02-23 北京理工大学 一种基于nand的存储板
CN102520892A (zh) * 2012-01-02 2012-06-27 西安电子科技大学 多功能固态数据存储回放仪
CN203192416U (zh) * 2013-03-19 2013-09-11 中国科学院声学研究所 一种基于FPGA实现多片Nandflash存储及读取的装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103763110A (zh) * 2014-01-03 2014-04-30 熊猫电子集团有限公司 一种用于通信设备参数清除的装置
CN105955919A (zh) * 2016-04-27 2016-09-21 西安交通大学 基于FPGA的多MCU读写NANDFlash的实现方法
CN105955919B (zh) * 2016-04-27 2019-02-05 西安交通大学 基于FPGA的多MCU读写NANDFlash的实现方法
WO2020140361A1 (zh) * 2019-01-04 2020-07-09 中国科学院声学研究所东海研究站 基于fpga的智能存储控制系统及其应用
US11379129B2 (en) 2019-01-04 2022-07-05 Shanghai Acoustics Laboratory, Chinese Academy Of Sciences FPGA-based intelligent storage control system and application thereof

Similar Documents

Publication Publication Date Title
TWI543185B (zh) 具有輸出控制之記憶體及其系統
JP5226722B2 (ja) 記憶装置
CN100485814C (zh) 操作快闪存储器芯片的方法
CN112035381B (zh) 一种存储系统及存储数据处理方法
CN105702300B (zh) 一种基于FPGA的NAND Flash容错系统
CN105468547A (zh) 一种基于axi总线的便捷可配置帧数据存取控制系统
CN106776359B (zh) 一种NAND Flash坏块管理方法及系统
CN101908379A (zh) 基于访问时间调整对非易失性半导体存储器的访问
CN107491267B (zh) 一种基于lvds接口的高速图像数据存储装置
CN105867840A (zh) 闪存组件及非易失性半导体存储器组件
CN203192416U (zh) 一种基于FPGA实现多片Nandflash存储及读取的装置
CN103226976A (zh) 一种基于FPGA实现多片Nandflash存储及读取的装置
CN102053913B (zh) 记忆装置以及记忆装置的数据存取方法
CN102520892A (zh) 多功能固态数据存储回放仪
TW201719429A (zh) 針對nand快閃記憶體的靈活介面
CN101515221A (zh) 一种读数据的方法、装置和系统
CN102279820A (zh) 基于spi接口的数据存储装置及控制方法
US20170069385A1 (en) Nand memory addressing
CN101840375A (zh) 半导体存储装置
US20200264811A1 (en) A SD card-based high-speed data storage method
CN107168899A (zh) 一种基于FPGA的NandFlash控制器
CN103488600A (zh) 通用从机同步串行接口电路
CN101676872A (zh) 一种固态硬盘的结构及其加速初始化的方法
CN112069095B (zh) Ddr3读写传输方法和装置
CN101562039A (zh) 多通道内存储存装置及其控制方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130731