CN205983448U - 用于固态硬盘的控制芯片及固态硬盘 - Google Patents

用于固态硬盘的控制芯片及固态硬盘 Download PDF

Info

Publication number
CN205983448U
CN205983448U CN201620727377.1U CN201620727377U CN205983448U CN 205983448 U CN205983448 U CN 205983448U CN 201620727377 U CN201620727377 U CN 201620727377U CN 205983448 U CN205983448 U CN 205983448U
Authority
CN
China
Prior art keywords
interface
solid state
state hard
file
hard disc
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.)
Active
Application number
CN201620727377.1U
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.)
BEIJING HUAQING RUIDA TECHNOLOGY Co Ltd
Original Assignee
BEIJING HUAQING RUIDA TECHNOLOGY Co Ltd
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 BEIJING HUAQING RUIDA TECHNOLOGY Co Ltd filed Critical BEIJING HUAQING RUIDA TECHNOLOGY Co Ltd
Priority to CN201620727377.1U priority Critical patent/CN205983448U/zh
Application granted granted Critical
Publication of CN205983448U publication Critical patent/CN205983448U/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本实用新型提供了一种用于固态硬盘的控制芯片,包括:用于连接具有不同接口标准的接口的多个接口控制模块;与多个接口控制模块连接的指令处理模块;用于与固态硬盘中的存储单元连接的存储单元控制模块;与指令处理模块和存储单元控制模块经由AXI总线连接的处理器;经由AXI总线分别与处理器连接的多个功能子卡控制模块。本实用新型还提供了相应的固态硬盘。本实用新型由于包括多种标准不同的接口,可以通过任一接口连接到个人计算机,降低了被计算机访问的难度;还包括多个用于接插标准功能子卡的接插件,可以安装多种功能子卡,用于多种场合下的数据存取项目;此外还支持多种文件系统,使得固态硬盘中存储的数据很容易被个人计算机分析处理。

Description

用于固态硬盘的控制芯片及固态硬盘
技术领域
本实用新型涉及硬盘存储技术领域,具体涉及一种用于固态硬盘的控制芯片及固态硬盘。
背景技术
SSD(Solid State Drive,固态硬盘),用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单元组成。一般以NAND Flash芯片或者DRAM芯片作为存储介质。其中基于NAND Flash的SSD不仅读写带宽高,抗震防摔,功耗低,体积小而且掉电后数据不会丢失,应用范围最为广泛。因此,消费级SSD及工业用数据存储系统中的定制SSD大都基于NANDFlash。
在实现本实用新型的过程中,发明人发现现有技术至少存在以下问题:
对于消费级的SSD来说,一般只有一种接口,通常是USB接口、SATA接口或PCIe接口中的一种,因此和PC(personal computer,个人计算机)的连接方式较为单一,无法提供多种接口选择;并且只有和个人计算机相连的接口,不支持其它工业标准接口,无法用于工业数据采集等应用情况。
对于工业用数据存储系统中定制的SSD来说,其通常具有多个接口,但该类SSD中主控芯片没有维护文件系统的功能,不能按照文件系统来组织数据,一般用于直接存储原始数据,因此存储的数据不能被个人计算机直接识别,不能作为标准硬盘使用,不方便数据分析处理。为了读出其中的数据,通常需要个人计算机使用专门的硬件接口与其连接,并安装专门的软件。因此其使用过程较为繁琐。
实用新型内容
本实用新型实施例提供一种用于固态硬盘的控制芯片及固态硬盘,用以至少解决上述阐述的现有技术中消费级固态硬盘接口单一且应用场合少、工业级固态硬盘不支持文件系统的问题。
本实用新型实施例的一个方面提供了一种用于固态硬盘的控制芯片,包 括:
用于连接具有不同接口标准的接口的多个接口控制模块;
与所述多个接口控制模块连接的指令处理模块;
用于与所述固态硬盘中的存储单元连接的存储单元控制模块;
与所述指令处理模块和所述存储单元控制模块经由AXI总线连接的处理器;
经由所述AXI总线分别与所述处理器连接的多个功能子卡控制模块。
在本实用新型的一些实施例中,所述多个接口控制模块至少包括USB接口控制模块、SATA接口控制模块、PCIe接口控制模块。
在本实用新型的一些实施例中,所述控制芯片为FPGA芯片。
在本实用新型的一些实施例中,所述控制芯片还包括经由所述AXI总线与所述处理器和所述存储单元控制模块连接的DMA控制模块。
在本实用新型的一些实施例中,所述处理器安装有操作系统,所述操作系统中的文件系统至少包括NTFS、FAT32、exFAT中的任意一种。
在本实用新型的一些实施例中,所述操作系统包括Linux系统。
本实用新型实施例的另一个方面提供了一种固态硬盘,包括:
上述实施例中的控制芯片;
与所述控制芯片的存储单元控制模块连接的存储单元;
分别与所述控制芯片的多个功能子卡控制模块连接的适于接插多个功能子卡的多个扩展接插件;
分别与所述控制芯片的多个接口控制模块对应连接的适于与外部设备连接的多个接口,所述多个接口对应多种不同的接口标准。
在本实用新型的一些实施例中,所述固态硬盘包括经由所述AXI总线与所述控制芯片的处理器连接的缓存单元。
在本实用新型的一些实施例中,所述缓存单元与所述控制芯片中的经由所述AXI总线与所述处理器和所述存储单元控制模块连接的DMA控制模块连接。
在本实用新型的一些实施例中,所述存储单元包括NAND Flash存储阵列。
在本实用新型的一些实施例中,所述多个接口至少包括USB接口、SATA 接口和PCI-e接口。
在本实用新型的一些实施例中,所述USB接口通过物理接口收发器与所述控制芯片连接。
本实用新型实施例所示用于固态硬盘的控制芯片及固态硬盘,由于包括多种接口标准不同的接口,例如USB接口、SATA接口、PCIe接口等,可以通过任一接口连接到个人计算机,使得本实用新型实施例所示固态硬盘具有多种被个人计算机访问的选择,降低了被计算机访问的复杂度。本实用新型实施例还包括多个用于接插标准功能子卡的接插件,例如标准FMC接口,可以安装多种标准FMC功能子卡,使得本实用新型实施例所示固态硬盘可用于多种场合下的数据存取项目。此外,本实用新型实施例支持例如NTFS、FAT32、exFAT等多种文件系统,使得本实用新型实施例所示固态硬盘中存储的数据很容易被个人计算机分析处理。
附图说明
为了更清楚地说明本实用新型实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本实用新型的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本实用新型一实施例的用于固态硬盘的控制芯片的内部逻辑结构示意图;
图2是本实用新型一实施例的固态硬盘的内部逻辑结构示意图;
图3是本实用新型一实施例的固态硬盘的USB接口的逻辑结构示意图;
图4是本实用新型一实施例的固态硬盘的PCIe接口的逻辑结构示意图;
图5是本实用新型一实施例的固态硬盘的SATA接口的逻辑结构示意图;
图6是本实用新型一实施例的固态硬盘中的NAND Flash存储阵列的逻辑结构示意图;
图7是本实用新型一实施例的固态硬盘支持的FAT32文件系统的整体布局图;
图8是本实用新型一实施例的多接口固态硬盘的工作流程图。
具体实施方式
为使本实用新型实施例的目的、技术方案和优点更加清楚,下面将结合本实用新型实施例中的附图,对本实用新型实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本实用新型一部分实施例,而不是全部的实施例。基于本实用新型中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本实用新型保护的范围。
需要说明的是,在不冲突的情况下,本实用新型中的实施方式及实施方式中的特征可以相互组合。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”,不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
图1是本实用新型一实施例的用于固态硬盘的控制芯片的内部逻辑结构示意图。如图1所示,该控制芯片1为FPGA芯片,包括处理器10、指令处理模块11、存储单元控制模块12、多个功能子卡控制模块13和多个接口控制模块14。其中,各模块均通过总线15与处理器10连接。
在图1所示实施例中,处理器10为嵌入在FPGA芯片上的MicroBlaze处理器。MicroBlaze处理器是利用FPGA IP核搭建的内嵌处理器。在该处理器中安装有操作系统,例如可以是Linux系统,用于维护NTFS、FAT32、exFAT等多种文件系统。通过给本实用新型实施例中的FPGA芯片加载不同的bit文件来配置FPGA芯片,可使本实用新型所示实施例维护不同的文件系统。
存储单元控制模块12为NAND Flash控制器,用于实现对固态硬盘中的NAND Flash存储阵列的访问,包括读、写、擦除等操作。
指令处理模块11为ATA指令解释和映射模块,用于分析和固态硬盘连接的外部设备例如PC机通过固态硬盘中的SATA接口,USB接口,PCIe接口传送的ATA指令,并从中获取PC机希望执行的操作和目的地址并映射为 NAND Flash控制器能直接处理的地址和命令。
接口控制模块14包括USB接口控制器141,SATA接口控制器142和PCIe接口控制器143。其中,USB接口控制器141用于控制处理器10通过固态硬盘中的USB接口与PC机之间的通信;SATA接口控制器142用于控制处理器10通过固态硬盘中的SATA接口与PC机之间的通信;PCIe接口控制器用于控制处理器10通过固态硬盘中的PCIe接口与PC机之间的通信。
功能子卡控制模块13包括FMC功能板卡控制器131和132,FMC功能板卡控制器用于控制固态硬盘中的FMC接口安装的标准FMC功能板卡的工作。其具体功能与FMC接口安装的标准FMC功能板卡相关,例如FMC接口安装DAC板卡,则对应的FMC功能板卡控制器需要控制DAC板卡工作;如FMC接口安装ADC板卡,则对应的FMC功能板卡控制器需要控制ADC板卡工作。FMC接口安装的板卡根据实际需要灵活选择,不仅限于ADC板卡和DAC板卡。因此使用本实用新型之前,需要根据FMC接口安装的标准FMC功能板卡正确配置本实用新型的FPGA。通过给本实用新型中的FPGA芯片加载对应的bit文件可实现对本实用新型的多种配置,每种配置下FMC功能板卡控制器只能实现对特定的标准FMC功能板卡的控制。
图1所示实施例中,控制芯片1还包括与处理器10和存储单元控制模块12连接的DMA控制器16。本实用新型实施例中各模块包括USB接口控制器,SATA接口控制器,PCIe接口控制器,FMC功能板卡控制器,NAND Flash控制器,ATA指令解释和映射模块都通过AXI总线15挂载到MicroBlaze处理器上,由MicroBlaze处理器统一调度,实现对NAND Flash阵列的高速DMA操作。
图2是本实用新型一实施例的固态硬盘的内部逻辑结构示意图。如图2所示,该固态硬盘2包括图1所示实施例中的用于固态硬盘的控制芯片21、存储单元22、多个扩展接插件23和多个接口24。其中,存储单元22、多个扩展接插件23和多个接口24均与控制芯片21连接。
在图2所示实施例中,存储单元22是NAND Flash芯片组成的存储阵列,用于存储数据;
扩展接插件231和232为FMC接口,用于安装多个标准FMC功能板卡。 FMC接口安装的板卡根据实际需要灵活选择,本实用新型对此不作限制;
接口24包括USB3.0接口241、SATA接口242和PCIe 2.0接口243,通过接口24本实用新型实施例所示固态硬盘可以和外部设备例如PC机进行通信。其中,USB接口通过物理接口收发器例如PHY与FPGA芯片连接。
图2所示实施例中,固态硬盘2还包括与控制芯片21连接的缓存单元,例如DDR3芯片,用于固态硬盘中数据存取的缓存处理。相应地,控制芯片21中包括缓存单元控制模块,例如DDR3控制器。该DDR3控制器通过总线例如AXI连接至控制芯片中的处理器。
以下将结合图3、图4、图5和图6说明本实用新型的接口电路及NAND Flash存储阵列的具体实现。
图3是本实用新型一实施例的固态硬盘的USB接口的逻辑结构示意图。参见图3,本实用新型实施例中USB接口电路的主要元件可以包括电源转换芯片,TPS74801DRCR、TPS76801QD;USB接口插件,CMS1811-010010;配置EEPROM,24LC256;以及时钟元件,NX3225SA-19.200M-EXS00A-CS03082和SG-3040LC 32.7680KB3:PURE SN。
图4是本实用新型一实施例的固态硬盘的PCIe接口的逻辑结构示意图。参见图4,本实用新型实施例中PCIe接口电路的主要元件可以包括PCIe金手指和时钟芯片ICS854104,ICS874001。
图5是本实用新型一实施例的固态硬盘的SATA接口的逻辑结构示意图。参见图5,本实用新型实施例中SATA接口电路的主要元件可以包括SATA接口插件,67490-1221和时钟芯片ICS844071。
图6是本实用新型一实施例的固态硬盘中的NAND Flash存储阵列的逻辑结构示意图。参见图6,本实用新型实施例中NAND Flash存储阵列由多片NAND Flash芯片,MT29F128G08AE[C/E]BB组成。NAND Flash芯片的数量可结合储器带宽和性能要求灵活扩展。
本实用新型实施例所示固态硬盘,存在两种工作模式:模式0和模式1。 当本实用新型所示的固态硬盘通过USB接口,SATA接口,PCIe接口三种接口中的任一接口和PC机相连且在FMC接口安装了某种标准FMC功能板卡,则固态硬盘工作于模式0;当本实用新型所示的固态硬盘通过USB接口,SATA接口,PCIe接口中的任一接口和PC机相连且未在FMC接口安装任何标准FMC功能板卡,则此时固态硬盘工作于模式1。
本实用新型所示的固态硬盘工作时,在根目录下存在5个文件夹:CFG文件夹,RD文件夹,WR文件夹,DONE文件夹,USER文件夹。其中,CFG文件夹中存放CFG文件,该类文件为FMC接口安装的标准FMC功能板卡及对应的FMC功能板卡控制器提供配置参数,CFG文件夹中可存放多个CFG文件,但同一时刻只有一个CFG文件有效;RD文件夹中存放读操作数据文件,该类数据文件为本实用新型中的固态硬盘在模式0时,标准FMC功能板卡传送到本实用新型中的数据组成的文件,RD文件夹中可存放多个数据文件;WR文件夹中存放写操作数据文件,该类数据文件为本实用新型中的固态硬盘在模式0时,PC机准备通过标准FMC功能板卡向外发送的数据组成的文件,WR文件夹可存放多个数据文件,但同一时刻仅有一个数据文件有效且有效的数据文件必是有效CFG文件指定的文件;DONE文件夹中存放DONE文件,该类文件代表当前CFG文件启动的操作完成,DONE文件夹中可存放多个DONE文件;USER文件夹中存放文件的类型不受限制,当本实用新型中的固态硬盘处于模式1时或者处于模式0但用户不启动FMC功能板卡只执行标准的硬盘文件操作时,用户的所有文件操作应该在本文件夹中执行。
本实用新型中的固态硬盘工作时,PC机识别本存储器为一硬盘盘符。PC机访问本实用新型所示固态硬盘的行为如同PC机访问标准硬盘。虽然PC机访问本实用新型所示固态硬盘的行为如同访问标准硬盘,但需要配合PC机端的操作机制,PC机除了可实现标准的硬盘操作外,还可启动固态硬盘中FMC接口安装的标准FMC功能板卡使其工作,将标准FMC功能板卡接收的数据组成文件存储到本实用新型所示固态硬盘中的RD文件夹或者,将WR文件夹中指定文件中的有效数据,通过标准FMC功能板卡向外发送数据。
以下结合表1说明用户在PC机端的操作机制。
表1用户在PC机上的操作机制
当本实用新型中的固态硬盘工作于模式0时,用户通过PC机可执行的操作如下:
1)如果用户要启动FMC接口安装的标准FMC功能板卡并将该标准FMC功能板卡接收的数据组成文件存储到本实用新型中的固态硬盘:用户需要通过PC机在CFG文件夹中写入读操作CFG文件;该CFG文件写入到CFG文件夹之后,固态硬盘会启动其内部工作机制,使FMC接口安装的标准FMC功能板卡工作并将该标准FMC功能板卡接收的数据存储到固态硬盘的RD文件夹;数据存储完成后,等待DONE文件夹中生成指定的DONE文件,表示本次操作结束;待看到指定DONE文件,用户才可执行其他操作。
2)如果用户需要启动FMC接口安装的标准FMC功能板卡并通过此板卡向外发送数据:用户需要通过PC机在CFG文件夹中写入写操作CFG文件并在WR文件夹中写入待发送的数据文件;待CFG文件和指定的数据文件写入完成之后,固态硬盘会启动其内部工作机制,使FMC接口安装的标准FMC功能板卡工作并读取WR文件夹中的待发送数据文件,从标准FMC功能板卡向外发送数据;数据发送结束后,等待DONE文件夹中生成指定的DONE文件,表示本次操作结束;待看到指定DONE文件,用户才可执行其他操作。
3)如果PC机不需要启动FMC接口安装的标准FMC功能板卡,仅执行标准硬盘文件操作。用户需要在以上两种操作已经完成的情况下,在USER文件夹中执行。
当本实用新型中的固态硬盘工作于模式1时,本实用新型支持PC机所有的标准硬盘文件操作,但要求用户在USER文件夹中执行。
本实用新型支持FAT32,exFAT,NTFS等多种文件系统。以下以FAT32文件系统为例,说明本实用新型中的固态硬盘是如何支持文件系统的。
图7是本实用新型一实施例的固态硬盘支持的FAT32文件系统的整体布局图。如图7所示,以本实用新型中的固态硬盘采用256GB存储空间为例,说明NAND Flash空间布局:
设定文件系统每扇区字节数512字节,每簇32个扇区,存储空间划分为536,870,912个扇区,其中保留区使用34个扇区,2个FAT区使用4,161,790个扇区,数据区使用16,647,159个簇。
在本实用新型中的固态硬盘工作前,需要先为NAND Flash阵列建立FAT32文件系统。具体方法可以如下:
1)建立引导扇区:将如上各配置参数写入NAND Flash阵列的保留区的第0扇区。
2)初始化FAT0区和FAT1区:除FAT表项0和FAT表项1外,所有FAT表项为32`h0,表示对应簇未被分配使用;FAT表项0写入32`hF8FF_FF0F;FAT表项1写入32`hFFFF_FFFF。
3)初始化数据区:擦除数据区所有空间。
4)建立根目录:写结束标记32`h0fff_ffff到FAT区的第2个FAT表项,表示数据区第二簇已经分配给根目录使用;将卷标目录项写入数据区第二簇中,指定本硬盘盘符为“FAT32_HQ”。
5)根目录下新建5个文件夹:CFG文件夹,WR文件夹,RD文件夹,DONE文件夹,USER文件夹。具体建立过程如下:
a)建立CFG文件夹:写结束标记32`h0fff_ffff到FAT区的第3表项,表示数据区第3簇被使用;将CFG文件夹的文件大小,文件夹名称,属性,时间及开始簇地址等信息写入到根目录数据区的目录项中。
b)建立WR文件夹:写结束标记32`h0fff_ffff到FAT区的第4表项,表示数据区第4簇被使用;将WR文件夹的文件大小,文件夹名称,属性,时间及开始簇地址等信息写入到根目录数据区的目录项中。
c)建立RD文件夹:写结束标记32`h0fff_ffff到FAT区的第5表项, 表示数据区第5簇被使用;将RD文件夹的文件大小,文件夹名称,属性,时间及开始簇地址等信息写入到根目录数据区的目录项中。
d)建立DONE文件夹:写结束标记32`h0fff_ffff到FAT区的第6表项,表示数据区第6簇被使用;将DONE文件夹的文件大小,文件夹名称,属性,时间及开始簇地址等信息写入到根目录数据区的目录项中。
e)建立USER文件夹:写结束标记32`h0fff_ffff到FAT区的第7表项,表示数据区第7簇被使用;将USER文件夹的文件大小,文件夹名称,属性,时间及开始簇地址等信息写入到根目录数据区的目录项中。
以上操作为本实用新型中的固态硬盘工作前的配置工作,配置成功后固态硬盘中存在指定文件系统。本实用新型中的固态硬盘工作时,不需要再执行本配置。
由于本实用新型的固态硬盘中已经存在文件系统,当固态硬盘工作时,PC机通过驱动程序识别本实用新型为一卷标为“FAT32_HQ”的硬盘。在该盘根目录下有5个文件夹分别是CFG文件夹,WR文件夹,RD文件夹,DONE文件夹,USER文件夹。这5个文件夹受本实用新型保护,不可被删除。
固态硬盘工作时,FPGA根据固态硬盘外部连接状况进入正确的工作模式。
当固态硬盘工作于模式0时,FPGA监控CFG文件夹中是否存在有效的CFG文件以及PC机是否请求操作本实用新型。
如果用户需要通过PC机启动标准FMC功能板卡并存储标准FMC功能板卡接收的数据到RD文件夹,用户需要通过PC机在CFG文件夹中写入CFG文件,在该CFG文件中指定标准FMC功能板卡运行参数和标准FMC功能板卡接收数据的存储文件名。固态硬盘监测到有效的CFG文件后,启动标准FMC功能板卡,然后接收标准FMC功能板卡传给固态硬盘的数据,将其组成文件存储在RD文件夹中,该文件的名字在对应CFG文件中指定。其中将数据组成文件并存储到RD文件夹的具体流程如下:
1)寻找起始簇:FPGA在FAT表中查找未使用的第一个FAT表项,将其作为本文件写入起始簇并将结束标记32`h0fff_ffff写入表项。
2)将标准FMC功能板卡接收的数据写入到起始簇中;若当前簇写满之后,如还需要继续写入数据,则FPGA在FAT表中寻找下一个未使用的FAT 表项,将结束标记32`h0fff_ffff写入该表项并将该表项对应的簇号写入上一FAT表项,然后将标准FMC功能板卡接收的数据写入到本次寻找的FAT表项对应的数据区簇中;若当前簇空间使用完毕后,还需继续写入,则重复上一步骤,直至数据全部写入完毕。
3)待数据写入完毕后,将文件大小,文件名称,属性,时间及开始簇地址等信息写入到RD文件夹数据区的目录项中。
4)生成DONE文件:FPGA在FAT表中寻找未使用的簇,并在该FAT表项中写入结束标记32`h0fff_ffff,指示当前DONE文件使用该簇;然后在数据区该簇中写入“***文件接收成功”,此处“***”为CFG文件中指定的文件名;最后将该DONE文件的相关信息如文件大小,文件夹名称,属性,时间及开始簇地址等信息写入到DONE文件夹数据区的目录项中。
如果用户需要通过PC机启动标准FMC功能板卡并将WR文件夹中指定的数据文件通过标准FMC功能板卡发送出去,用户需要通过PC机向CFG文件夹写入CFG文件,该CFG文件含有指定标准FMC功能板卡运行参数和待发送的数据文件的文件名;用户还需要通过PC机向WR文件写入该待发送数据文件。待固态硬盘监测到有效的CFG文件和对应的数据文件,将启动标准FMC功能板卡,并把WR文件夹中的指定数据文件经标准FMC功能板卡向外发送。其中读取数据文件并向外发送的具体流程如下:
1)寻找指定文件的起始簇:FPGA读取在根目录的数据区簇中搜索WR文件夹的目录项;然后在WR文件夹的数据区簇中搜索待发送文件的目录项,从该目录项中,FPGA获取待发送文件的起始簇。
2)发送数据:FPGA从起始簇中,将簇中的有效数据读出,通过标准FMC功能板卡发送出去;如果数据文件的内容分布在多个簇中,当前簇中的数据读取完毕后,FPGA通过FAT表项寻找到下一簇,并从中读取数据,直到待发送文件的所有数据被读取。
3)生成DONE文件:FPGA在FAT表中寻找未使用的簇,并在该FAT表项中写入结束标记32`h0fff_ffff,指示当前DONE文件使用该簇;然后在数据区该簇中写入“***文件发送成功”,此处文件名为CFG文件中指定的文件名;最后将该DONE文件的相关信息如文件大小,文件夹名称,属性,时间及开始簇地址等信息写入到DONE文件夹数据区的目录项中。
以上描述了本实用新型实施例所示固态硬盘对FAT32文件系统的支持,但本实用新型不仅限于支持FAT32文件系统,还可以支持exFAT,NTFS等文件系统,本实用新型对此不作限制。
以下将结合图8说明本实用新型内部逻辑模块的工作机制。
如图8所示,本实用新型中的固态硬盘通过USB,SATA,PCIe三种接口中的任一接口与PC机相连并在FMC接口安装标准FMC功能板卡(或者FMC接口不安装标准FMC功能板卡),然后上电,固态硬盘开始工作:首先固态硬盘会启动MicroBlaze处理器中的Linux系统,并初始化FPGA中的各逻辑单元;待以上操作完成之后,MicroBlaze处理器会扫描USB接口,SATA接口,PCIe接口和FMC接口,确定固态硬盘和PC机之间的有效连接接口以及FMC接口是否安装标准FMC功能板卡,由此判断并进入正确的工作模式。
1、当本实用新型所示固态硬盘工作于模式1时,该固态硬盘如同标准硬盘。该模式下,固态硬盘具体的工作机制如下:MicroBlaze处理器会一直监控是否有来自PC机的操作请求,直到接收到来自PC机的操作请求:
1)如果用户通过PC机端口(USB,SATA,PCIe中的任一端口)发送写数据操作,该操作请求经对应的接口控制器传送到ATA指令解释和映射模块;ATA指令解释和映射模块,分析出PC机要求执行的操作和目标地址并将其映射为NAND Flash控制器能够直接执行的操作和地址,然后发送给MicroBlaze处理器;MicroBlaze处理器收到相关信息后,调用NANDFlash阵列控制器写入到NAND Flash阵列中,操作的过程中为了缩短操作时间,将使用DDR3缓存和DMA模块;
2)如果PC机通过PC机端口(USB,SATA,PCIe中的任一端口)发送读数据操作,该操作请求经对应的接口控制器传送到ATA指令解释和映射模块;ATA指令解释和映射模块分析出PC机要求执行的操作和目标地址并将其映射为NAND Flash控制器能够直接执行的操作和地址,然后发送给MicroBlaze处理器;MicroBlaze处理器收到相关信息后,调用NANDFlash阵列控制器从NAND Flash阵列中读出的数据,经接口控制器上传到PC机,在这一过程中,为缩短操作时间,将使用DDR3缓存和DMA模块。
3)如果PC机通过PC机端口(USB,SATA,PCIe中的任一端口)发送擦除数据操作,该操作请求经对应的接口控制器传送到ATA指令解释和映射 模块;ATA指令解释和映射模块分析出PC机要求执行的操作和目标地址并将其映射为NAND Flash控制器能够直接执行的操作和地址,然后发送给MicroBlaze处理器;MicroBlaze处理器收到相关信息后,调用NANDFlash阵列控制器从NAND Flash阵列中删除指定位置的数据。
2、当本实用新型所示固态硬盘工作于模式0时,MicroBlaze处理器会监控CFG文件夹中是存在有效的CFG文件。
1)如果不存在,固态硬盘可以接收PC机的读、写、擦除请求,执行标准的硬盘操作,其工作机制与模式1一致。
2)当MicroBlaze处理器发现CFG文件夹中存在有效的CFG文件之后,MicroBlaze处理器将根据该CFG文件的类型执行不同的操作流程。
A.如果有效的CFG文件为读操作CFG文件:MicroBlaze处理器根据文件系统组织结构(具体结构及实现方法参照前述文件系统的实现)读取该CFG文件并根据文件的内容设置对应的标准FMC功能板卡及其控制器;设置完毕后,标准FMC功能板卡及对应的控制器开始工作;标准FMC功能板卡接收的数据由对应的FMC功能板卡控制器传送到MicroBlaze处理器;MicroBlaze处理器根据文件系统组织结构(具体结构及实现方法参照前述文件系统的实现)使用NAND Flash控制器存储数据到NAND Flash阵列中,在这一过程中,为了缩短操作时间,将使用DDR3缓存和DMA模块;写入完成后,RD文件夹中生成一数据文件,该数据文件的名称由CFG文件指定;当当前CFG文件中指定的工作完成,MicroBlaze处理器将根据指定文件系统组织结构(具体结构及实现方法参照前述文件系统的实现)向DONE文件夹写入一DONE文件并无效当前CFG文件;当用户看到DONE文件夹中出现指定DONE文件,用户可执行其他操作。
B.如果有效的CFG文件为写操作CFG文件:MicroBlaze处理器读取该CFG文件,确定将要发送文件的名称,然后搜索WR文件夹,查看其中是否已经存在指定的写数据文件;如果WR文件夹中不存在对应的写数据文件,本实用新型所示固态硬盘可执行标准的硬盘操作,期间MicroBlaze处理器会不断监控WR文件夹,查看其中是否有指定的数据文件,直到PC机写入指定名称的数据文件或者删除该CFG文件取消启动标准FMC功能板卡;当MicroBlaze处理器检测到WR文件夹中存在指定的数据文件时,MicroBlaze 处理器根据文件系统组织结构(具体结构及实现方法参照前述文件系统的实现)读取写操作CFG文件中的参数并根据文件的内容配置标准FMC功能板卡对应的控制器及对应的标准FMC功能板卡;设置完毕后,标准FMC功能板卡及对应的控制器开始工作;MicroBlaze处理器根据文件系统组织结构(具体结构及实现方法参照前述文件系统的实现)通过NAND Flash控制器读取WR文件夹中指定的数据文件,然后解析数据文件中的有效载荷并发送给FMC功能板卡控制器,在FMC功能板卡控制器的控制下由标准FMC功能板卡向外发送,在这一过程中为了缩短操作时间,将使用DDR3缓存和DMA模块;待数据发送完毕,MicroBlaze处理器将根据指定文件系统组织结构(具体结构及实现方法参照前述文件系统的实现)在DONE文件夹中写入一DONE文件,并无效当前CFG文件,当用户看到DONE文件夹中出现对应DONE文件,用户可以执行其他操作。
本实用新型实施例所示用于固态硬盘的控制芯片及固态硬盘,由于包括多种接口标准不同的接口,例如USB接口、SATA接口、PCIe接口等,可以通过任一接口连接到个人计算机,使得本实用新型实施例所示固态硬盘具有多种被个人计算机访问的选择,降低了被计算机访问的复杂度。本实用新型实施例还包括多个用于接插标准功能子卡的接插件,例如标准FMC接口,可以安装多种标准FMC功能子卡,使得本实用新型实施例所示固态硬盘可用于多种场合下的数据存取项目。此外,本实用新型实施例支持例如NTFS、FAT32、exFAT等多种文件系统,使得本实用新型实施例所示固态硬盘中存储的数据很容易被个人计算机分析处理。
通过以上的实施例的描述,本领域的技术人员可以清楚地了解到以上所描述的实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。各实施例可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
最后应说明的是:以上实施例仅用以说明本实用新型的技术方案,而非对其限制;尽管参照前述实施例对本实用新型进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本实用新型各实施例技术方案的精神和范围。

Claims (12)

1.一种用于固态硬盘的控制芯片,包括:
用于连接具有不同接口标准的接口的多个接口控制模块;
与所述多个接口控制模块连接的指令处理模块;
用于与所述固态硬盘中的存储单元连接的存储单元控制模块;
与所述指令处理模块和所述存储单元控制模块经由AXI总线连接的处理器;
经由所述AXI总线分别与所述处理器连接的多个功能子卡控制模块。
2.根据权利要求1所述的控制芯片,其特征在于,所述多个接口控制模块至少包括USB接口控制模块、SATA接口控制模块、PCIe接口控制模块。
3.根据权利要求1所述的控制芯片,其特征在于,所述控制芯片为FPGA芯片。
4.根据权利要求1所述的控制芯片,其特征在于,所述控制芯片还包括经由所述AXI总线与所述处理器和所述存储单元控制模块连接的DMA控制模块。
5.根据权利要求1-4中任一项所述的控制芯片,其特征在于,所述处理器安装有操作系统,所述操作系统中的文件系统至少包括NTFS、FAT32、exFAT中的任意一种。
6.根据权利要求5所述的控制芯片,其特征在于,所述操作系统包括Linux系统。
7.一种固态硬盘,其特征在于,包括:
根据权利要求1-6中任一项所述的控制芯片;
与所述控制芯片的存储单元控制模块连接的存储单元;
分别与所述控制芯片的多个功能子卡控制模块连接的适于接插多个功能 子卡的多个扩展接插件;
分别与所述控制芯片的多个接口控制模块对应连接的适于与外部设备连接的多个接口,所述多个接口对应多种不同的接口标准。
8.根据权利要求7所述的固态硬盘,其特征在于,所述固态硬盘包括经由所述AXI总线与所述控制芯片的处理器连接的缓存单元。
9.根据权利要求8所述的固态硬盘,其特征在于,所述缓存单元与所述控制芯片中的经由所述AXI总线与所述处理器和所述存储单元控制模块连接的DMA控制模块连接。
10.根据权利要求7-9中任一项所述的固态硬盘,其特征在于,所述存储单元包括NANDFlash存储阵列。
11.根据权利要求10所述的固态硬盘,其特征在于,所述多个接口至少包括USB接口、SATA接口和PCI-e接口。
12.根据权利要求11所述的固态硬盘,其特征在于,所述USB接口通过物理接口收发器与所述控制芯片连接。
CN201620727377.1U 2016-07-11 2016-07-11 用于固态硬盘的控制芯片及固态硬盘 Active CN205983448U (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201620727377.1U CN205983448U (zh) 2016-07-11 2016-07-11 用于固态硬盘的控制芯片及固态硬盘

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201620727377.1U CN205983448U (zh) 2016-07-11 2016-07-11 用于固态硬盘的控制芯片及固态硬盘

Publications (1)

Publication Number Publication Date
CN205983448U true CN205983448U (zh) 2017-02-22

Family

ID=58023787

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201620727377.1U Active CN205983448U (zh) 2016-07-11 2016-07-11 用于固态硬盘的控制芯片及固态硬盘

Country Status (1)

Country Link
CN (1) CN205983448U (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106952663A (zh) * 2017-03-13 2017-07-14 西北工业大学 一种多接口高速大容量固态存储产品开发平台
CN113254383A (zh) * 2021-06-18 2021-08-13 湖南博匠信息科技有限公司 基于飞腾和fpga的嵌入式板卡的数据存储方法及系统
CN115857805A (zh) * 2022-11-30 2023-03-28 合肥腾芯微电子有限公司 人工智能可计算存储系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106952663A (zh) * 2017-03-13 2017-07-14 西北工业大学 一种多接口高速大容量固态存储产品开发平台
CN113254383A (zh) * 2021-06-18 2021-08-13 湖南博匠信息科技有限公司 基于飞腾和fpga的嵌入式板卡的数据存储方法及系统
CN115857805A (zh) * 2022-11-30 2023-03-28 合肥腾芯微电子有限公司 人工智能可计算存储系统

Similar Documents

Publication Publication Date Title
US20220129374A1 (en) Memory system, data storage device, user device and data management method thereof
US9256384B2 (en) Method and system for reducing write latency in a data storage system by using a command-push model
CN101213510B (zh) 用于管理存储装置中的分区的方法和系统
CN107908571B (zh) 一种数据写入方法、闪存装置及存储设备
TWI454906B (zh) 資料讀取方法、快閃記憶體控制器與儲存系統
US20160253093A1 (en) A new USB protocol based computer acceleration device using multi I/O channel SLC NAND and DRAM cache
CN100476650C (zh) 单片机存储系统
US9058257B2 (en) Persistent block storage attached to memory bus
US10268592B2 (en) System, method and computer-readable medium for dynamically mapping a non-volatile memory store
CN111880727A (zh) 一种用于硬盘端口号灵活分配的硬件架构及其实现方法
US8677095B2 (en) System and method for optimal dynamic resource allocation in a storage system
CN104615618B (zh) 一种嵌入式内存数据库的实现方法
CN205983448U (zh) 用于固态硬盘的控制芯片及固态硬盘
CN103281260A (zh) 支持PCIe的系统、设备及其资源分配方法
CN111796759B (zh) 多平面上的片段数据读取的计算机可读取存储介质及方法
CN108062201A (zh) 用于固态驱动器的自虚拟化闪速存储器
CN104575595A (zh) 非易失性随机存取的存储装置
Koh et al. Faster than flash: An in-depth study of system challenges for emerging ultra-low latency SSDs
CN103176832B (zh) 一种类unix操作系统运行虚拟操作系统的方法及装置
US7418545B2 (en) Integrated circuit capable of persistent reservations
US11550740B2 (en) Data storage device with an exclusive channel for flag checking of read data, and non-volatile memory control method
CN113495850B (zh) 管理垃圾回收程序的方法、装置及计算机可读取存储介质
CN105354294A (zh) 一种嵌套式文件管理系统及方法
US20100274828A1 (en) Electronic Device, Storage Area Allocation Method for File System, and Computer Product
CN208255870U (zh) 一种可重建通用型电子盘

Legal Events

Date Code Title Description
C14 Grant of patent or utility model
GR01 Patent grant