CN104133798A - Big data high-speed storage system and implementation method - Google Patents

Big data high-speed storage system and implementation method Download PDF

Info

Publication number
CN104133798A
CN104133798A CN201410377547.3A CN201410377547A CN104133798A CN 104133798 A CN104133798 A CN 104133798A CN 201410377547 A CN201410377547 A CN 201410377547A CN 104133798 A CN104133798 A CN 104133798A
Authority
CN
China
Prior art keywords
storage
data
module
board
flash
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.)
Granted
Application number
CN201410377547.3A
Other languages
Chinese (zh)
Other versions
CN104133798B (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.)
Xidian University
Original Assignee
Xidian University
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 Xidian University filed Critical Xidian University
Priority to CN201410377547.3A priority Critical patent/CN104133798B/en
Publication of CN104133798A publication Critical patent/CN104133798A/en
Application granted granted Critical
Publication of CN104133798B publication Critical patent/CN104133798B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

一种大数据高速存储系统及实现方法,包括电源管理模块、系统主控板以及系统存储模块;系统主控板接收到数据后将所接收到的数据传送给系统存储模块中的一个存储板,若是该存储板信息还没有存满,则将信息存储于该存储板,若是该存储板信息已存满,则将数据传送给下一个存储板,同时将存满的信息反馈给FPGA主控制器,依此类推,直至最后一个存储板存满为止;从而实现了大数据的存储。本发明选用FPGA作为核心控制器,实现了400MB/s的实时带宽。并且数据存储容量,理论上可以达到无限。采用板间级连的连接方式,使得系统结构简单,尺寸和重量大大减小,适用于机载航拍中的存储等海量数据的高速持续存储的特殊应用场合。

A large data high-speed storage system and its implementation method, including a power management module, a system main control board and a system storage module; after receiving data, the system main control board transmits the received data to a storage board in the system storage module, If the memory board information is not full, store the information in the memory board, if the memory board information is full, then transfer the data to the next memory board, and feed back the full information to the FPGA main controller , and so on, until the last storage board is full; thereby realizing the storage of large data. The present invention selects FPGA as the core controller, and realizes the real-time bandwidth of 400MB/s. And the data storage capacity can theoretically reach unlimited. The cascading connection method between boards makes the system structure simple, and the size and weight are greatly reduced. It is suitable for special applications of high-speed continuous storage of massive data such as storage in airborne aerial photography.

Description

一种大数据高速存储系统及实现方法A large data high-speed storage system and its implementation method

技术领域technical field

本发明属于大数据高速存储技术领域,具体涉及一种大数据高速存储系统及实现方法。The invention belongs to the technical field of large data high-speed storage, and in particular relates to a large data high-speed storage system and an implementation method.

背景技术Background technique

闪存(FLASH)具有非挥发性(掉电后仍可以保持数据)、读写速度快、低功耗及易携带等等优点,已经作为一种重要的存储媒质应用于数据存储产品当中。根据内部构架和实现技术的不同,现在的主流FLASH主要有NOR和NAND FLASH。NOR的特点是多个存储单元并行,可实现快速随机字节访问,适合用于容量要求小,随机读写快的应用领域。NAND FLASH的特点是写入和擦除操作的速度快,芯片面积小,非常适合于大容量存储器设计。Flash memory (FLASH) has the advantages of non-volatility (data can be retained after power failure), fast read and write speed, low power consumption, and easy portability. It has been used as an important storage medium in data storage products. According to the difference in internal architecture and implementation technology, the current mainstream FLASH mainly includes NOR and NAND FLASH. The characteristic of NOR is that multiple storage units are parallel, which can realize fast random byte access, and is suitable for applications with small capacity requirements and fast random read and write. NAND FLASH is characterized by fast writing and erasing operations and small chip area, which is very suitable for large-capacity memory design.

NAND FLASH又可以分为SLC(Single-level cell,单阶存储单元)和MLC(Multi-level cell,多阶存储单元)。NAND FLASH将数据存储于由浮闸晶体管组成的记忆单元数组内,在SLC芯片中,每个单元只存储1bit的信息。而在MLC芯片中,则利用多种电荷值的控制让每个单元可以存储2bits及以上的数据,达到较高的数据密度,所以单位成本低,正因为这个优点,使得MLC更适合用于海量存储设备中。而使用MLC NAND FLASH以求达到更高的数据带宽成为一大挑战。NAND FLASH can be divided into SLC (Single-level cell, single-level storage unit) and MLC (Multi-level cell, multi-level storage unit). NAND FLASH stores data in an array of memory cells composed of floating gate transistors. In an SLC chip, each cell only stores 1 bit of information. In the MLC chip, the control of various charge values is used to allow each unit to store data of 2 bits or more to achieve a high data density, so the unit cost is low. Because of this advantage, MLC is more suitable for mass storage. in the storage device. However, using MLC NAND FLASH to achieve higher data bandwidth has become a big challenge.

目前,数据存储在图像数据存储、海量研究数据存储、海量服务器数据存储,数据库数据存储等军事及民用的各领域内得到了非常广泛的应用。而目前,很多存储系统仍采用磁盘及磁盘阵列存储,而使用FLASH的存储系统大多使用异步操作模式。其存储容量小,存储速度低,数据带宽小。At present, data storage has been widely used in military and civilian fields such as image data storage, massive research data storage, massive server data storage, and database data storage. At present, many storage systems still use disks and disk arrays for storage, and most storage systems using FLASH use asynchronous operation modes. Its storage capacity is small, storage speed is low, and data bandwidth is small.

下面详细列出现有数据存储系统的主要缺点:The main disadvantages of existing data storage systems are detailed below:

1)容量较小或者有理论上限,无法满足海量数据存储;1) The capacity is small or has a theoretical upper limit, which cannot meet the storage of massive data;

2)实时带宽较低,无法满足实时数据的高速存储;2) The real-time bandwidth is low, which cannot meet the high-speed storage of real-time data;

3)尺寸较大,空间占用大,不适合用于一些体积小的设备;3) Large size, large space occupation, not suitable for some small equipment;

4)重量较大,不便于一些特殊场合的应用。4) The weight is relatively large, which is inconvenient for some special occasions.

发明内容Contents of the invention

本发明的目的是为了克服上述现有技术的缺陷,提供一种大数据高速存储系统及实现方法,提高存储系统的容量及数据存储实时带宽的同时,减小系统的尺寸和重量。The purpose of the present invention is to overcome the defects of the above-mentioned prior art, provide a large data high-speed storage system and its implementation method, increase the capacity of the storage system and the real-time bandwidth of data storage, and reduce the size and weight of the system.

为实现上述目的,本发明采用如下的技术方案:To achieve the above object, the present invention adopts the following technical solutions:

一种大数据高速存储系统,包括电源管理模块、用于接收大数据的系统主控板以及与系统主控板相连的系统存储模块,系统存储模块包括若干个相同的存储板;A large data high-speed storage system, including a power management module, a system main control board for receiving big data, and a system storage module connected to the system main control board, the system storage module includes several identical storage boards;

所述系统主控板通过USB模块将存储于系统存储模块中的数据传输到PC中。The system main control board transmits the data stored in the system storage module to the PC through the USB module.

所述电源管理模块与系统主控板、系统存储模块相连用于供电。The power management module is connected with the system main control board and the system storage module for power supply.

所述系统主控板包括FPGA主控制器、MCU模块和USB模块,系统主控板接收到数据后将所接收到的数据进行封装打包,然后传送给系统存储模块中的一个存储板,若是该存储板信息还没有存满,则将信息存储于该存储板,若是该存储板信息已存满,则将数据传送给下一个存储板,同时将存满的信息通过MCU模块反馈给FPGA主控制器,依此类推,直至最后一个存储板存满为止;从而实现了大数据的存储。Described system main control board comprises FPGA master controller, MCU module and USB module, and system main control board packs the received data after receiving data, then sends to a storage board in the system storage module, if the If the storage board information is not full, store the information in the storage board, if the storage board information is full, then transfer the data to the next storage board, and at the same time feed back the full information to the FPGA main control through the MCU module device, and so on, until the last storage board is full; thereby realizing the storage of large data.

所述存储板包括系统主控模块,读写FLASH数据级连管理模块,FIFO缓存模块,乒乓操作模块,容量管理模块,流水线管理模块,FLASH接口时序模块以及DDR时序模块;The storage board includes a system main control module, a read-write FLASH data cascade management module, a FIFO cache module, a ping-pong operation module, a capacity management module, a pipeline management module, a FLASH interface timing module and a DDR timing module;

所述系统主控模块用于接收外部数据并响应PC机指令,并将接受的数据传输给读写FLASH数据级连管理模块;The system main control module is used to receive external data and respond to PC instructions, and transmit the received data to the read-write FLASH data cascading management module;

所述读写FLASH数据级连管理模块用于接收系统主控模块的数据,同时接收下一级存储板的信息,并将接收的数据和信息传输给FIFO缓存模块;The read-write FLASH data cascading management module is used to receive the data of the system main control module, and simultaneously receive the information of the next-level storage board, and transmit the received data and information to the FIFO cache module;

所述FIFO缓存模块用于将接收的读写FLASH数据级连模块的数据和信息进行缓存;The FIFO cache module is used to cache the data and information of the received read-write FLASH data cascading module;

所述乒乓模块用于对FIFO缓存模块中缓存的数据和信息进行乒乓操作,实现数据流的块稳定输入输出;The ping-pong module is used to perform a ping-pong operation on the data and information cached in the FIFO cache module to realize block stable input and output of data streams;

所述容量管理单片机模块用于实现整个存储板的容量管理;The capacity management single-chip microcomputer module is used to realize the capacity management of the entire storage board;

所述流水线管理模块用于提高整个存储板的数据存储带宽;The pipeline management module is used to improve the data storage bandwidth of the entire storage board;

所述FLASH时序接口模块用于产生FLASH操作的底层时序;The FLASH timing interface module is used to generate the underlying timing of the FLASH operation;

所述DDR时序模块用于把SDR数据转换成DDR数据。The DDR timing module is used to convert SDR data into DDR data.

所述存储板还包括若干FLASH存储器,与FLASH存储器相连的MCU,以及用于存储FLASH存储器的存储容量信息的EEPROM。The storage board also includes several FLASH memories, an MCU connected to the FLASH memories, and an EEPROM for storing storage capacity information of the FLASH memories.

所述FLASH存储器采用单片256Gb的MLC NAND FLASH,型号为MT29F256G08CJAAB。The FLASH memory adopts a single-chip 256Gb MLC NAND FLASH, the model is MT29F256G08CJAAB.

所述单个存储器包括10片FLASH,并且每5片FLASH进行并行存储,5片FLASH之间采用流水线技术进行操作。The single memory includes 10 pieces of FLASH, and every 5 pieces of FLASH are stored in parallel, and pipeline technology is used to operate among the 5 pieces of FLASH.

所述若干存储板之间采用LVDS接口进行数据传输。The LVDS interface is used for data transmission among the plurality of storage boards.

一种大数据高速存储的实现方法,包括以下步骤:A method for realizing high-speed storage of big data, comprising the following steps:

大数据开始后,数据不断进入系统主控板,系统主控板在接收到一定量的数据后把这些数据进行封装打包,然后通过LVDS接口传送给存储板并存储到存储板的FLASH当中,该存储板在接收到这些数据后,先判断本存储板是否存满;如果没有存储满,则继续接着上次的存储地址进行存储;如果已经存满,则把本存储板存满的状态发送给MCU模块,然后MCU模块把本存储板存储满的信息存储到EEPROM当中,并把本级存储设置为不可写;同时把接收到的数据转送给下一个存储板,依次类推,直到所有的存储板都存储满后,把存储满的状态信息返回给系统主控模块,由系统主控模块返回给用户,使得用户得以及时做出相应的处理。After the big data starts, the data continuously enters the main control board of the system. After receiving a certain amount of data, the main control board of the system packages and packages the data, and then transmits it to the storage board through the LVDS interface and stores it in the FLASH of the storage board. After the storage board receives these data, it first judges whether the storage board is full; if it is not full, it continues to store at the last storage address; if it is full, it sends the status of the storage board full to MCU module, and then the MCU module stores the full information of the storage board in the EEPROM, and sets the storage of the current level as non-writable; at the same time, it transfers the received data to the next storage board, and so on, until all the storage boards After the storage is full, the full storage status information is returned to the system main control module, and the system main control module returns it to the user, so that the user can make corresponding processing in time.

与现有技术相比,本发明具有的有益效果:本发明选用FPGA作为核心控制器,实现了400MB/s的实时带宽。并且数据存储容量,由于使用的堆叠方式实现的级连扩展,理论上可以达到无限。采用板间级连的连接方式,使得系统结构简单,尺寸和重量大大减小,适用于机载航拍中的存储等海量数据的高速持续存储的特殊应用场合。本发明的实现方法简单,利于操作。Compared with the prior art, the present invention has beneficial effects: the present invention selects FPGA as the core controller and realizes a real-time bandwidth of 400MB/s. And the data storage capacity, due to the cascading expansion achieved by the stacking method used, can theoretically reach unlimited. The cascading connection method between boards makes the system structure simple, and the size and weight are greatly reduced. It is suitable for special applications of high-speed continuous storage of massive data such as storage in airborne aerial photography. The realization method of the present invention is simple and convenient for operation.

进一步的,本发明使用了MCL NAND FLASH的同步操作模式,并使用多片并行存储及多片间的流水线技术,使得本系统体积较小,重量大大的减轻,实现了大数据的高速存储,并且系统简单,易于实现大数据的高速存储,采用板级级连技术,使得其存储容量可以接近于无限容量扩展。Further, the present invention uses the synchronous operation mode of MCL NAND FLASH, and uses multi-chip parallel storage and multi-chip pipeline technology, so that the system is small in size, greatly reduced in weight, and realizes high-speed storage of large data, and The system is simple, easy to realize high-speed storage of large data, and adopts board-level cascading technology, so that its storage capacity can be expanded close to unlimited capacity.

进一步的,FLASH采用单片256Gb的MLC NAND FLASH,型号为MT29F256G08CJAAB,此型号为目前市场上比较容易获得的最大容量的MLCNAND FLASH。其一次program操作的数据量高达8KB。Furthermore, the FLASH uses a single-chip 256Gb MLC NAND FLASH, the model is MT29F256G08CJAAB, which is the largest capacity MLCNAND FLASH that is relatively easy to obtain on the market. The data volume of one program operation is as high as 8KB.

采用NAND FLASH的同步操作模式。相较于异步模式仅50MT/s的数据吞吐量,同步模式的数据吞吐量高达200MT/s,是异步模式的4倍。Adopt the synchronous operation mode of NAND FLASH. Compared with the data throughput of only 50MT/s in the asynchronous mode, the data throughput of the synchronous mode is as high as 200MT/s, which is 4 times that of the asynchronous mode.

采用MLC NAND FLASH独有的Multi-Plane操作模式,提高了单片NANDFLASH的读写速度。虽然在单片内部提高的带宽不是很明显,但是在经过后面的多级流水操作后,这个带宽的提高相当的显著。Using the unique Multi-Plane operation mode of MLC NAND FLASH, the reading and writing speed of single-chip NAND FLASH is improved. Although the increased bandwidth within a single chip is not very obvious, after the subsequent multi-stage pipeline operation, the increase in bandwidth is quite significant.

采用单板10片NAND FLASH,实现单板320GB的海量存储。Using 10 pieces of NAND FLASH on a single board to achieve a massive storage of 320GB on a single board.

存储板的前后数据通路设计能够对接,系统的逻辑设计完全兼容。这样,系统的容量就可以通过增加存储板的数据加以扩充。The front and back data path design of the memory board can be connected, and the logic design of the system is fully compatible. In this way, the capacity of the system can be expanded by adding data on the memory board.

存储板与存储板之间采用LVDS接口进行数据传输,LVDS的数据传输带宽高达1Gbps,提高了存储速度。The LVDS interface is used for data transmission between the storage board and the storage board. The data transmission bandwidth of LVDS is as high as 1Gbps, which improves the storage speed.

采用单板10片NAND FLASH,并平均分成两组各5片NAND FLASH进行并行存储。同时各组内的5片NAND FLASH之间使用流水线技术,大大提高了数据带宽,最终高达400MB/s。10 pieces of NAND FLASH are used on a single board, and are evenly divided into two groups of 5 pieces of NAND FLASH for parallel storage. At the same time, pipeline technology is used between the 5 pieces of NAND FLASH in each group, which greatly improves the data bandwidth, and finally reaches 400MB/s.

采用层级堆叠的硬件扩展方式,使得整个存储系统的体积大大减小。以3TB存储容量为例,需要要9块存储板,其占用的体积仅为100mm×100mm×100mm。The hardware expansion method of hierarchical stacking makes the volume of the entire storage system greatly reduced. Taking the 3TB storage capacity as an example, 9 storage boards are required, and the occupied volume is only 100mm×100mm×100mm.

附图说明Description of drawings

图1为系统整体结构图;Figure 1 is the overall structure diagram of the system;

图2为单个存储板的工作流程图;Fig. 2 is the work flowchart of single memory board;

具体实施方式Detailed ways

下面结合附图对本发明做进一步说明。The present invention will be further described below in conjunction with the accompanying drawings.

参见图1和图2所示,本发明包括电源管理模块、用于接收大数据的系统主控板以及与系统主控板相连的系统存储模块,系统存储模块包括若干个相同的存储板;Referring to Figures 1 and 2, the present invention includes a power management module, a system main control board for receiving large data, and a system storage module connected to the system main control board, and the system storage module includes several identical storage boards;

所述系统主控板通过USB模块将存储于系统存储模块中的数据传输到PC中。The system main control board transmits the data stored in the system storage module to the PC through the USB module.

所述电源管理模块与系统主控板、系统存储模块相连用于供电。The power management module is connected with the system main control board and the system storage module for power supply.

所述系统主控板包括FPGA主控制器、MCU模块和USB模块,系统主控板接收到数据后将所接收到的数据进行封装打包,然后传送给系统存储模块中的一个存储板,若是该存储板信息还没有存满,则将信息存储于该存储板,若是该存储板信息已存满,则将数据传送给下一个存储板,同时将存满的信息通过MCU模块反馈给FPGA主控制器,依此类推,直至最后一个存储板存满为止;从而实现了大数据的存储。Described system main control board comprises FPGA master controller, MCU module and USB module, and system main control board packs the received data after receiving data, then sends to a storage board in the system storage module, if the If the storage board information is not full, store the information in the storage board, if the storage board information is full, then transfer the data to the next storage board, and at the same time feed back the full information to the FPGA main control through the MCU module device, and so on, until the last storage board is full; thereby realizing the storage of large data.

所述系统主控模块用于接收外部数据并响应PC机指令,并将接受的数据传输给读写FLASH数据级连管理模块;The system main control module is used to receive external data and respond to PC instructions, and transmit the received data to the read-write FLASH data cascading management module;

所述读写FLASH数据级连管理模块用于接收系统主控模块的数据,同时接收下一级存储板的信息,并将接收的数据和信息传输给FIFO缓存模块,实现多板之间的通信,实现容量的扩展;The read-write FLASH data cascading management module is used to receive the data of the system main control module, and at the same time receive the information of the next-level storage board, and transmit the received data and information to the FIFO cache module, so as to realize the communication between multiple boards , to achieve capacity expansion;

所述FIFO缓存模块用于将接收的读写FLASH数据级连模块的数据和信息进行缓存;The FIFO cache module is used to cache the data and information of the received read-write FLASH data cascading module;

所述乒乓模块用于对FIFO缓存模块中缓存的数据和信息进行乒乓操作,实现数据流的块稳定输入输出;The ping-pong module is used to perform a ping-pong operation on the data and information cached in the FIFO cache module to realize block stable input and output of data streams;

所述容量管理单片机模块用于实现整个存储板的容量管理;The capacity management single-chip microcomputer module is used to realize the capacity management of the entire storage board;

所述流水线管理模块用于提高整个存储板的数据存储带宽;The pipeline management module is used to improve the data storage bandwidth of the entire storage board;

所述FLASH时序接口模块用于产生FLASH操作的底层时序;The FLASH timing interface module is used to generate the underlying timing of the FLASH operation;

所述DDR时序模块用于把SDR数据转换成DDR数据。The DDR timing module is used to convert SDR data into DDR data.

所述存储板还包括若干FLASH存储器。The storage board also includes several FLASH memories.

所述FLASH存储器采用单片256Gb的MLC NAND FLASH,型号为MT29F256G08CJAAB。The FLASH memory adopts a single-chip 256Gb MLC NAND FLASH, the model is MT29F256G08CJAAB.

所述若干存储板之间采用LVDS接口进行数据传输。The LVDS interface is used for data transmission among the plurality of storage boards.

本发明选用FPGA作为核心控制器,实现了400MB/s的实时带宽。并且数据存储容量,由于使用的堆叠方式实现的级连扩展,理论上可以达到无限。采用板间级连的连接方式,使得系统结构简单,尺寸和重量大大减小,适用于机载航拍中的存储等海量数据的高速持续存储的特殊应用场合。The present invention selects FPGA as the core controller, and realizes the real-time bandwidth of 400MB/s. And the data storage capacity, due to the cascading expansion achieved by the stacking method used, can theoretically reach unlimited. The cascading connection method between boards makes the system structure simple, and the size and weight are greatly reduced. It is suitable for special applications of high-speed continuous storage of massive data such as storage in airborne aerial photography.

同时把整个操作过程按工作过程划分为数据接收层、流水线控制层、数据接口切换层、及FLASH物理接口层。At the same time, the entire operation process is divided into data receiving layer, pipeline control layer, data interface switching layer, and FLASH physical interface layer according to the working process.

1.大数据高速存储系统的整体工作过程1. The overall working process of the big data high-speed storage system

如图1所示,上电后,存储板进行自检测。检测自己的FLASH是否正常、检测存储板上的主控系统是否正常工作、检测存储板现在已经使用的容量;然把把自检结果发送给系统主控模块,由系统主控模块把自检的结果发送到用户。这样用户就可以直接监测到整个存储系统的状态。如果发现有FLASH已经坏了,或者整个板子有问题时,进行及时的处理。完成自检后,存储板监测系统主控模块的oper信号以确定主控板现在要对存储板进行的操作,是读、写、擦除中的哪一种操作。然后存储板进入相应的操作模式。如果是写操作,那么存储板进行写操作模式。As shown in Figure 1, after power-on, the memory board performs self-test. Check whether your own FLASH is normal, check whether the main control system on the storage board is working normally, check the capacity of the storage board that has been used now; then send the self-test result to the system main control module, and the system main control module will send the self-test The result is sent to the user. In this way, users can directly monitor the status of the entire storage system. If it is found that some FLASH is broken, or the whole board has a problem, deal with it in time. After completing the self-test, the storage board monitors the oper signal of the main control module of the system to determine which operation the main control board is going to perform on the storage board, which is read, write, and erase. The memory board then enters the corresponding operating mode. If it is a write operation, then the memory board performs a write operation mode.

如图1所示,大数据开始后,数据不断的以一个高的速率进入系统主控板。系统主控板在接收到一定量的数据(例如8KB)后把这些数据按照内部定义的协议进行封装打包,然后通过高速的LVDS接口按照一定的地址编址方式传送给存储1号板并存储到存储1号板的FLASH当中。存储1号板在接收到这些数据(例如8K)后,先判断本存储板(存储1号板)是否存满。如果没有存储满,则继续接着上次的存储地址进行存储。如果已经存满,则把本存储板存满的状态发送给MCU,然后MCU把本存储板存储满的信息存储到EEPROM当中,并把本级存储设置为不可写。同时把接收到的数据转送给存储2号板。依次类推,直到所有的存储板都存储满后,把存储满的状态信息返回给系统主控模块,由系统主控模块返回给用户,使得用户得以及时做出相应的处理。As shown in Figure 1, after the start of big data, data continuously enters the system main control board at a high rate. After receiving a certain amount of data (such as 8KB), the main control board of the system packages the data according to the internally defined protocol, and then transmits it to the storage No. 1 board through the high-speed LVDS interface according to a certain address addressing method and stores it in the It is stored in the FLASH of No. 1 board. After receiving these data (for example, 8K), the No. 1 storage board first judges whether the storage board (Storage No. 1 board) is full. If the storage is not full, continue to store at the last storage address. If it is full, then send the full state of the storage board to the MCU, and then the MCU stores the full information of the storage board in the EEPROM, and sets the storage at this level as non-writable. At the same time, the received data is transferred to the No. 2 storage board. By analogy, until all the storage boards are full, the full storage status information is returned to the system main control module, and the system main control module returns it to the user, so that the user can make corresponding processing in time.

2.存储板的工作过程2. The working process of the memory board

参见图2,存储板的工作过程包括以下步骤:Referring to Figure 2, the working process of the memory board includes the following steps:

2.1上电后的配置2.1 Configuration after power-on

上电后,MEM存储板进入等待状态。等待数据接口模块的命令。当数据接口模块给的操作为写FLASH操作时,MEM板的FPGA启动容量管理单片机模块,容量管理单片机模块从存储板上的单片机的EEPROM中获得上次所记录的写FLASH的地址。然后把从数据接口模块中得到的数据不停的存储入FLASH当中。当数据接口的命令为读FLASH时,MEM板的FPGA启动容量管理单片机模块,容量管理单片机模块从存储板上的单片机获得所要读取的FLASH的地址。然后进入读数据状态,并把数据源源不断的从FLASH中读出,并通过数据接口的USB接口上传到PC当中。After power-on, the MEM storage board enters the waiting state. Waiting for commands from the data interface module. When the operation given by the data interface module is a write FLASH operation, the FPGA of the MEM board starts the capacity management single-chip microcomputer module, and the capacity management single-chip microcomputer module obtains the last recorded write FLASH address from the EEPROM of the single-chip microcomputer on the storage board. Then store the data obtained from the data interface module into the FLASH continuously. When the command of the data interface is to read FLASH, the FPGA of the MEM board starts the capacity management single-chip microcomputer module, and the capacity management single-chip microcomputer module obtains the address of the FLASH to be read from the single-chip microcomputer on the storage board. Then enter the state of reading data, and continuously read the data from the FLASH, and upload it to the PC through the USB interface of the data interface.

2.2写数据操作2.2 Write data operation

系统主控模块发出写操作命令时,存储板FPGA获得相应的配置后,首先判断本级存储板是否存储满,如果存储满,则把与系统主控模块的接口切换给下一级存储板。否则,本级存储板进入写操作。When the main control module of the system sends a write operation command, after the FPGA of the storage board obtains the corresponding configuration, it first judges whether the storage board of this level is full. If the storage is full, the interface with the main control module of the system is switched to the storage board of the next level. Otherwise, the storage board of the current level enters the write operation.

进入写操作后,读FLASH数据级连管理模块把得到的数据写入本级写FLASHFIFO缓存。然后,乒乓操作模块把FIFO中的数据写入RAM当中,这部分有两个RAM进行乒乓操作。这两个RAM中当其中一个处于写状态时,另一个处于读状态。当RAM写满后,给流水线管理模块一个开始信号。然后流水线管理模块开始通过接口管理模块把FLASH时序模块的写接口切换到相应的FLASH芯片,然后把当前满的RAM中的数据按照预设计的方式分配给相应的FLASH。接着,FLASH接口时序模块就把RAM中的数据生成相应的FLASH接口时序,并把数据发送给DDR时序模块,把数据从SDR转换成DDR,然后给FLASH芯片。这样就完成了一次写操作。After entering the write operation, the read FLASH data cascade management module writes the obtained data into the write FLASHFIFO cache of the current level. Then, the ping-pong operation module writes the data in the FIFO into the RAM, and this part has two RAMs for the ping-pong operation. When one of the two RAMs is in the write state, the other is in the read state. When the RAM is full, give the pipeline management module a start signal. Then the pipeline management module starts to switch the write interface of the FLASH timing module to the corresponding FLASH chip through the interface management module, and then distributes the data in the currently full RAM to the corresponding FLASH in a pre-designed manner. Then, the FLASH interface timing module generates the corresponding FLASH interface timing from the data in RAM, and sends the data to the DDR timing module, converts the data from SDR to DDR, and then sends it to the FLASH chip. This completes a write operation.

2.3读数据操作2.3 Read data operation

系统主控模块发出读操作命令时,存储板FPGA启动容量管理单片机模块以获取从PC传来的读数据的地址。然后进入读数据状态。然后流水线管理模块经FLASH接口时序模块发送相应的读操作命令,然后从FLASH获得FLASH内部所存储的数据。并把数据给乒乓操作模块,由其写入RAM当中,再把数据从RAM中搬写到本级读FIFO缓存当中。然后通过读写FLASH数据级连管理模块把数据传送给系统主控模块,再由主控模块把数据通过USB接口发送给PC机。When the system main control module issues a read operation command, the storage board FPGA starts the capacity management single-chip microcomputer module to obtain the address of the read data transmitted from the PC. Then enter the read data state. Then the pipeline management module sends the corresponding read operation command through the timing module of the FLASH interface, and then obtains the data stored inside the FLASH from the FLASH. And the data is given to the ping-pong operation module, which is written into the RAM, and then the data is moved from the RAM to the read FIFO cache of the current level. Then the management module transmits the data to the system main control module by reading and writing the FLASH data, and then the main control module sends the data to the PC through the USB interface.

2.4容量管理2.4 Capacity Management

上电后,MCU从EEPROM当中读取本级存储板的相关状态信息,并把这些状态信息通过EMIF接口发送给FPGA做为判断依据。一开始存储板上的MCU上的EEPROM当中的所有状态信息皆为初始状态。这些状态信息包括本级存储板是否存储满、本级存储板的当前存储位置、本级存储板的存储容量等。当本级存储板接收到数据后,先判断本级存储板是否存储满,如是没有存储满,则接着上次的存储地址继续存储。如是已经存储满,本级存储板上的FPGA把接收到的数据转送给下一级存储板。这样就实现了存储板的容量及存储位置的管理。读数据同理。After power-on, the MCU reads the relevant status information of the storage board at this level from the EEPROM, and sends the status information to the FPGA through the EMIF interface as a basis for judgment. At the beginning, all state information in the EEPROM on the MCU on the storage board is the initial state. The status information includes whether the storage board of the current level is full, the current storage position of the storage board of the current level, the storage capacity of the storage board of the current level, and the like. When the storage board of this level receives the data, it first judges whether the storage board of the current level is full. If it is not full, it continues to store at the last storage address. If the storage is full, the FPGA on the current storage board transfers the received data to the next storage board. In this way, the management of the capacity and storage location of the storage board is realized. Read data in the same way.

以上所述,仅是本发明的较佳实施案例而已,并非对本发明做任何形式上的限制,虽然本发明已以较佳实施方法揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的方法及技术内容做出些许的更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,仍属于本发明技术方案的范围内。The above description is only a preferred embodiment of the present invention, and does not limit the present invention in any form. Although the present invention has been disclosed as above with a preferred implementation method, it is not intended to limit the present invention. Anyone who is familiar with this field Those skilled in the art, without departing from the scope of the technical solution of the present invention, can use the method and technical content disclosed above to make some changes or modifications to equivalent embodiments with equivalent changes, but all without departing from the content of the technical solution of the present invention Any simple modifications, equivalent changes and modifications made to the above embodiments according to the technical essence of the present invention still belong to the scope of the technical solutions of the present invention.

Claims (7)

1.一种大数据高速存储系统,其特征在于,包括电源管理模块、用于接收大数据的系统主控板以及与系统主控板相连的系统存储模块,系统存储模块包括若干个相同的存储板;1. A large data high-speed storage system, characterized in that it includes a power management module, a system main control board for receiving large data and a system storage module connected to the system main control board, and the system storage module includes several identical storage plate; 所述系统主控板通过USB模块将存储于系统存储模块中的数据传输到PC中;The system main control board transmits the data stored in the system storage module to the PC through the USB module; 所述电源管理模块与系统主控板、系统存储模块相连用于供电;The power management module is connected to the system main control board and the system storage module for power supply; 所述系统主控板包括FPGA主控制器、MCU模块和USB模块,系统主控板接收到数据后将所接收到的数据进行封装打包,然后传送给系统存储模块中的一个存储板,若是该存储板信息还没有存满,则将信息存储于该存储板,若是该存储板信息已存满,则将数据传送给下一个存储板,同时将存满的信息通过MCU模块反馈给FPGA主控制器,依此类推,直至最后一个存储板存满为止;从而实现了大数据的存储。Described system main control board comprises FPGA master controller, MCU module and USB module, and system main control board packs the received data after receiving data, then sends to a storage board in the system storage module, if the If the storage board information is not full, store the information in the storage board, if the storage board information is full, then transfer the data to the next storage board, and at the same time feed back the full information to the FPGA main control through the MCU module device, and so on, until the last storage board is full; thereby realizing the storage of large data. 2.根据权利要求1所述的一种大数据高速存储系统,其特征在于,所述存储板包括系统主控模块,读写FLASH数据级连管理模块,FIFO缓存模块,乒乓操作模块,容量管理模块,流水线管理模块,FLASH接口时序模块以及DDR时序模块;2. A kind of big data high-speed storage system according to claim 1, it is characterized in that, described storage board comprises system main control module, reading and writing FLASH data cascading management module, FIFO cache module, ping-pong operation module, capacity management module, pipeline management module, FLASH interface timing module and DDR timing module; 所述系统主控模块用于接收外部数据并响应PC机指令,并将接受的数据传输给读写FLASH数据级连管理模块;The system main control module is used to receive external data and respond to PC instructions, and transmit the received data to the read-write FLASH data cascading management module; 所述读写FLASH数据级连管理模块用于接收系统主控模块的数据,同时接收下一级存储板的信息,并将接收的数据和信息传输给FIFO缓存模块;The read-write FLASH data cascading management module is used to receive the data of the system main control module, and simultaneously receive the information of the next-level storage board, and transmit the received data and information to the FIFO cache module; 所述FIFO缓存模块用于将接收的读写FLASH数据级连模块的数据和信息进行缓存;The FIFO cache module is used to cache the data and information of the received read-write FLASH data cascading module; 所述乒乓模块用于对FIFO缓存模块中缓存的数据和信息进行乒乓操作,实现数据流的块稳定输入输出;The ping-pong module is used to perform a ping-pong operation on the data and information cached in the FIFO cache module to realize block stable input and output of data streams; 所述容量管理单片机模块用于实现整个存储板的容量管理;The capacity management single-chip microcomputer module is used to realize the capacity management of the entire storage board; 所述流水线管理模块用于提高整个存储板的数据存储带宽;The pipeline management module is used to improve the data storage bandwidth of the entire storage board; 所述FLASH时序接口模块用于产生FLASH操作的底层时序;The FLASH timing interface module is used to generate the underlying timing of the FLASH operation; 所述DDR时序模块用于把SDR数据转换成DDR数据。The DDR timing module is used to convert SDR data into DDR data. 3.根据权利要求1所述的一种大数据高速存储系统,其特征在于,所述存储板还包括若干FLASH存储器,与FLASH存储器相连的MCU,以及用于存储FLASH存储器的存储容量信息的EEPROM。3. A kind of big data high-speed storage system according to claim 1, it is characterized in that, described memory board also comprises some FLASH memories, the MCU that links to each other with FLASH memories, and the EEPROM that is used to store the storage capacity information of FLASH memories . 4.根据权利要求3所述的一种大数据高速存储系统,其特征在于,所述FLASH存储器采用单片256Gb的MLC NAND FLASH,型号为MT29F256G08CJAAB。4. A kind of big data high-speed storage system according to claim 3, is characterized in that, described FLASH memory adopts the MLC NAND FLASH of monolithic 256Gb, and model is MT29F256G08CJAAB. 5.根据权利要求4所述的一种大数据高速存储系统,其特征在于,所述单个FLASH存储器包括10片FLASH,并且每5片FLASH进行并行存储,5片FLASH之间采用流水线技术进行操作。5. A kind of big data high-speed storage system according to claim 4, it is characterized in that, described single FLASH memory comprises 10 pieces of FLASH, and every 5 pieces of FLASH carry out parallel storage, adopt pipeline technology to operate between 5 pieces of FLASH . 6.根据权利要求1所述的一种大数据高速存储系统,其特征在于,所述若干存储板之间采用LVDS接口进行数据传输。6. A large data high-speed storage system according to claim 1, characterized in that, LVDS interfaces are used for data transmission between the plurality of storage boards. 7.一种基于权利要求1所述的系统的大数据高速存储的实现方法,其特征在于,包括以下步骤:7. A method for realizing high-speed storage of large data based on the system according to claim 1, comprising the following steps: 大数据开始后,数据不断进入系统主控板,系统主控板在接收到一定量的数据后把这些数据进行封装打包,然后通过LVDS接口传送给存储板并存储到存储板的FLASH当中,该存储板在接收到这些数据后,先判断本存储板是否存满;如果没有存储满,则继续接着上次的存储地址进行存储;如果已经存满,则把本存储板存满的状态发送给MCU模块,然后MCU模块把本存储板存储满的信息存储到EEPROM当中,并把本级存储设置为不可写;同时把接收到的数据转送给下一个存储板,依次类推,直到所有的存储板都存储满后,把存储满的状态信息返回给系统主控模块,由系统主控模块返回给用户,使得用户得以及时做出相应的处理。After the big data starts, the data continuously enters the main control board of the system. After receiving a certain amount of data, the main control board of the system packages and packages the data, and then transmits it to the storage board through the LVDS interface and stores it in the FLASH of the storage board. After the storage board receives these data, it first judges whether the storage board is full; if it is not full, it continues to store at the last storage address; if it is full, it sends the status of the storage board full to MCU module, and then the MCU module stores the full information of the storage board in the EEPROM, and sets the storage of the current level as non-writable; at the same time, it transfers the received data to the next storage board, and so on, until all the storage boards After the storage is full, the full storage status information is returned to the system main control module, and the system main control module returns it to the user, so that the user can make corresponding processing in time.
CN201410377547.3A 2014-08-01 2014-08-01 A kind of big data high-speed memory system and implementation method Expired - Fee Related CN104133798B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410377547.3A CN104133798B (en) 2014-08-01 2014-08-01 A kind of big data high-speed memory system and implementation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410377547.3A CN104133798B (en) 2014-08-01 2014-08-01 A kind of big data high-speed memory system and implementation method

Publications (2)

Publication Number Publication Date
CN104133798A true CN104133798A (en) 2014-11-05
CN104133798B CN104133798B (en) 2017-10-10

Family

ID=51806478

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410377547.3A Expired - Fee Related CN104133798B (en) 2014-08-01 2014-08-01 A kind of big data high-speed memory system and implementation method

Country Status (1)

Country Link
CN (1) CN104133798B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104317748A (en) * 2014-11-22 2015-01-28 成都锦江电子系统工程有限公司 Multi-MCU-and-FPGA collaboration processing and touch display master monitoring system and image interface design and control method of multi-MCU-and-FPGA collaboration processing and touch display master monitoring system
CN105718219A (en) * 2016-01-19 2016-06-29 浙江大学 Method and module for high-speed data transmission and storage based on USB3.0
CN107102813A (en) * 2016-02-19 2017-08-29 合肥君正科技有限公司 A kind of sensor data acquisition method for being classified storage

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1967713A (en) * 2006-11-27 2007-05-23 华为技术有限公司 High-capacity cache memory
JP2007274036A (en) * 2006-03-30 2007-10-18 Nec Commun Syst Ltd Communication terminal equipment, and control method thereof
US7616508B1 (en) * 2006-08-10 2009-11-10 Actel Corporation Flash-based FPGA with secure reprogramming
CN201465566U (en) * 2009-07-10 2010-05-12 北京国科环宇空间技术有限公司 Data storage device
CN102202171A (en) * 2011-04-21 2011-09-28 北京理工大学 Embedded high-speed multi-channel image acquisition and storage system
CN102520892A (en) * 2012-01-02 2012-06-27 西安电子科技大学 Multifunctional solid state data storage playback instrument

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007274036A (en) * 2006-03-30 2007-10-18 Nec Commun Syst Ltd Communication terminal equipment, and control method thereof
US7616508B1 (en) * 2006-08-10 2009-11-10 Actel Corporation Flash-based FPGA with secure reprogramming
CN1967713A (en) * 2006-11-27 2007-05-23 华为技术有限公司 High-capacity cache memory
CN201465566U (en) * 2009-07-10 2010-05-12 北京国科环宇空间技术有限公司 Data storage device
CN102202171A (en) * 2011-04-21 2011-09-28 北京理工大学 Embedded high-speed multi-channel image acquisition and storage system
CN102520892A (en) * 2012-01-02 2012-06-27 西安电子科技大学 Multifunctional solid state data storage playback instrument

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104317748A (en) * 2014-11-22 2015-01-28 成都锦江电子系统工程有限公司 Multi-MCU-and-FPGA collaboration processing and touch display master monitoring system and image interface design and control method of multi-MCU-and-FPGA collaboration processing and touch display master monitoring system
CN105718219A (en) * 2016-01-19 2016-06-29 浙江大学 Method and module for high-speed data transmission and storage based on USB3.0
CN105718219B (en) * 2016-01-19 2018-12-04 浙江大学 The method and module of high speed data transfer storage based on USB3.0
CN107102813A (en) * 2016-02-19 2017-08-29 合肥君正科技有限公司 A kind of sensor data acquisition method for being classified storage
CN107102813B (en) * 2016-02-19 2020-08-18 合肥君正科技有限公司 Sensor data acquisition method for classified storage

Also Published As

Publication number Publication date
CN104133798B (en) 2017-10-10

Similar Documents

Publication Publication Date Title
US10725956B2 (en) Memory device for a hierarchical memory architecture
KR101702280B1 (en) Command queuing
CN206557767U (en) A kind of caching system based on ping-pong operation structure control data buffer storage
CN104809075B (en) A kind of solid state record device and method for accessing real-time parallel processing
KR102491651B1 (en) Nonvolatile memory module, computing system having the same, and operating method thereof
TWI479491B (en) Memory controlling method, memory controller and memory storage apparatus
CN101740102B (en) Multi-channel flash memory chip array structure and write-in and read-out methods thereof
KR20130031046A (en) Flash memory device and data manage method thererof
WO2016107429A1 (en) Memory accessing method, storage-class memory, and computer system
CN112035381A (en) Storage system and storage data processing method
KR20210091647A (en) Auto-increment write count for nonvolatile memory
TW201610834A (en) Methods for scheduling read commands and apparatuses using the same
KR20210087864A (en) System and method for reduced latency of read-modify-write operations
CN104133798B (en) A kind of big data high-speed memory system and implementation method
US11775222B2 (en) Adaptive context metadata message for optimized two-chip performance
JP2014532929A (en) Embedded memory and embedded storage system
CN104035897A (en) Storage controller
CN110554833B (en) Parallel processing IO commands in a memory device
CN204291206U (en) A kind of HD video data logger based on flash array
Khalifa et al. Memory controller architectures: A comparative study
TW201947403A (en) Data storage apparatus and system information programming mehtod
CN203733100U (en) Memory system structure based on PCM (Phase Change Memory)
CN203192416U (en) A device based on FPGA to realize multi-chip Nandflash storage and reading
CN113805809B (en) Storage microarray equipment based on QSFP interface
CN204331700U (en) A kind of data storage device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20171010

Termination date: 20180801

CF01 Termination of patent right due to non-payment of annual fee