CN103226976A - 一种基于FPGA实现多片Nandflash存储及读取的装置 - Google Patents
一种基于FPGA实现多片Nandflash存储及读取的装置 Download PDFInfo
- 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
Links
Images
Abstract
本发明公开了一种基于FPGA实现多片NandFlash存储及读取的装置,其中该装置包括:Nandflash存储器组,包含多片Nandflash芯片组成的存储器阵列,用于存储FPGA输出给Nandflash的ADC采样数据;Nandflash存储及读取功能选择器,用于对所述Nandflash存储器组进行读数据、写数据、擦除和读取ID信息。采用本发明的技术方案,使得管脚数量成倍提升,相当于在物理层上对数据传输的带宽进行扩展,这样速率可以得到很大的提高,而且只在物理层上扩展,减小了FPGA程序开发的难度。
Description
技术领域
本发明涉及模数转换存储技术和基于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写入或读出的是数据信息、地址信息或芯片信息。下面列出异步接口功能选择表:
注: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存储及读取功能选择器并行扩展而成。
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)
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)
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存储及读取的装置 |
-
2013
- 2013-03-19 CN CN2013100870151A patent/CN103226976A/zh active Pending
Patent Citations (5)
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)
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 |