CN109947376B - 一种基于fpga实现的多协议接口固态存储系统 - Google Patents
一种基于fpga实现的多协议接口固态存储系统 Download PDFInfo
- Publication number
- CN109947376B CN109947376B CN201910269863.1A CN201910269863A CN109947376B CN 109947376 B CN109947376 B CN 109947376B CN 201910269863 A CN201910269863 A CN 201910269863A CN 109947376 B CN109947376 B CN 109947376B
- Authority
- CN
- China
- Prior art keywords
- fpga
- interface
- protocol
- speed
- unit
- 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
Links
- 238000012545 processing Methods 0.000 claims abstract description 20
- 230000005540 biological transmission Effects 0.000 claims abstract description 5
- 239000007787 solid Substances 0.000 claims description 12
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 239000013078 crystal Substances 0.000 claims description 4
- 238000013500 data storage Methods 0.000 claims description 3
- 239000013307 optical fiber Substances 0.000 claims description 2
- 238000003491 array Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000000034 method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明提供了一种基于FPGA实现的多协议接口固态存储系统,包括高速连接器、FPGA处理单元、时钟单元、DDR缓存单元、存储单元。其中,FPGA处理单元为整个固态存储系统的核心数据处理单元,建立外部高速接口与内部存储单元传输通道;时钟单元用来给FPGA SERDES高速BANK提供参考时钟,以实现需要的高速接口协议;DDR缓存单元挂在FPGA上,为FPGA数据处理的缓存单元;存储单元或是单个存储盘或是存储阵列。本发明基于FPGA实现了多协议接口,解决了当前固态存储系统对外协议接口单一问题,而且存储容量易于扩展,满足用户对存储系统协议接口通用化和个性化需求。
Description
技术领域
本发明属于固态存储技术领域,涉及一种基于FPGA实现的多协议接口固态存储系统。
背景技术
随着高性能嵌入式系统的不断发展,由固态存储盘组成的高速大容量固态存储阵列成为存储方案的首选。然而,目前不论是单个固态存储盘还是存储阵列,其存储单元的对外协议接口协议都比较单一,面对复杂多变的应用环境,就不能满足用户对于存储接口的多元化需求。
发明内容
本发明通过基于FPGA实现多种协议接口的技术方案,解决了当前固态存储系统对外协议接口单一问题,而且存储容量易于扩展,满足用户对存储系统协议接口通用化和个性化需求。具体技术方案如下:
一种基于FPGA实现的多协议接口固态存储方案,主要包含5个部分:高速连接器101、FPGA处理单元102、时钟单元103、DDR缓存单元104、存储单元105。
所述高速连接器101可以是一个连接器,也可以是多个连接器。可以是电连接器,也可以是光纤连接器。
所述FPGA处理单元102,作为整个固态存储系统的核心数据处理单元,主要工作是建立外部高速接口与内部存储单元传输通道。当外部高速接口与内部存储单元接口协议不匹配时,需要通过FPGA进行协议转换。通常FPGA可通过通用的IP核实现标准接口协议,如PCIe、SATA、RocketIO、RapidIO等常用标准协议。也可以根据具体应用实现与外部设备约定的接口协议。这样既满足接口协议的通用化需求又能满足接口协议个性化需求,最终实现接口协议多元化目的。注意所选的FPGA芯片需要包含至少2个以上SERDES高速串口。
高速连接器101与FPGA处理单元102之间互连信号分为必须的高速信号和可选的低速信号。其中低速信号通过FPGA的GPIO直接对外或加接口芯片如RS485、RS422等对外。对外高速信号接口由FPGA的SERDES高速串口实现,好处是能够根据不同的应用环境调整不同的接口协议,对外高速接口可以是一种协议接口(协议接口不固定,可配),也可以是多种协议接口(协议接口不固定,可配)同时存在。
所述时钟单元103用来给FPGA SERDES高速BANK提供参考时钟,以实现需要的高速接口协议。A.当接口协议不确定时,需要采用可编程时钟芯片,根据所需接口协议以及线速率要求,由FPGA来设定具体时钟值;B.当接口协议确定时,可以采用固定频率晶振或可编程时钟芯片任意一种来为FPGA SERDES高速BANK提供时钟参考;C.当要实现多路接口,则每一路接口都可按照A和B来确定时钟方案。
所述DDR缓存单元104挂在FPGA上,作为FPGA数据处理的缓存单元。
所述存储单元105用来实现数据存储,存储单元可以是单个存储盘或是存储阵列。当为存储阵列时,需要FPGA实现RAID功能。当存储单元为单个存储盘时,FPGA无需实现RAID功能。
要求保护的技术方案范围为:
一种基于FPGA实现的多协议接口固态存储系统,包括:一个或多个高速连接器、FPGA处理单元、时钟单元、DDR缓存单元、存储单元;
所述FPGA处理单元包括至少2个SERDES高速串口,为整个固态存储系统的核心数据处理单元,建立外部高速接口与内部存储单元传输通道,当外部高速接口与内部存储单元接口协议不匹配时,需要由FPGA进行协议转换,若接口协议匹配则不需要进行协议转换,FPGA采用通用的IP核实现标准协议接口,采用用户约定的协议格式实现非标协议接口;
所述高速连接器与所述FPGA处理单元之间的互连信号,或为高速信号,或为高速信号和低速信号同时存在;其中,低速信号或通过FPGA的GPIO直接对外或加接口芯片对外,对外高速信号接口由FPGA的SERDES高速串口实现;
所述时钟单元用来给FPGA SERDES高速BANK提供参考时钟,以实现需要的高速接口协议,第一种方案为当接口协议不确定时,采用可编程时钟芯片,根据所需接口协议以及线速率要求,由FPGA来设定具体时钟值;第二种方案为当接口协议确定时,或采用固定频率晶振或采用可编程时钟芯片任意一种,来为FPGA SERDES高速BANK提供时钟参考;第三种方案为当要实现多路接口时,则每一路接口按照第一种方案和第二种方案来确定时钟方案;
所述DDR缓存单元挂在FPGA上,作为FPGA数据处理的缓存单元;
所述存储单元用来实现数据存储。
进一步,所述高速连接器或为电连接器,或为光纤连接器。
进一步,所述标准接口协议包括PCIe、SATA、RocketIO、RapidIO常用标准协议。
进一步,所述加接口芯片对外,其中的接口芯片包括RS485、RS422。
进一步,所述对外高速接口或是一种协议接口,或是多种协议接口同时存在。
进一步,所述存储单元,或是单个存储盘或是存储阵列;当存储单元为存储阵列时,需要FPGA实现RAID功能,当存储单元为单个存储盘时,FPGA无需实现RAID功能。
本发明基于FPGA实现了多协议接口,其中,存储盘数量可为1个或多个,受FPGASERDES口数量限制。
附图说明
图1为本发明一种基于FPGA实现的多协议接口固态存储系统原理框图;
图2为一种基于U.2接口FPGA实现的多协议接口固态硬盘原理框图。
具体实施方式
为了更加清楚明白理解本发明的目的、技术方案和优点,下面结合附图和本发明的一种实施例,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
参阅图2,图2显示了一种基于U.2接口由FPGA实现的多协议接口固态硬盘原理框图。本实施例采用标准2.5英寸硬盘结构,采用U.2连接器作为对外物理接口。具有小尺寸、大容量、定制化的特点。
U.2连接器201上信号可分为三类:电源,低速信号,高速信号。其中电源使用DC12V。GPIO实现低速信号。本实施例实现RS422接口和单端GPIO接口,用于通信和控制,如通过GPIO实现存储单元Flash全擦除功能,对外状态信息输出等。而高速信号共有6路,由FPGA 202的SERDES高速串口实现相应接口协议。标准U.2接口包含2路SATA/SAS信号位置,4路PCIe接口(可设置成X1,X2或X4)信号位置。
本实施例在SATA/SAS位置优先实现SATAIII接口,即需要在其对应的FPGA SERDES高速BANK接入150MHz差分参考时钟。为了保证接口协议可定制,同时接入可编程参考输入时钟,由FPGA来配置具体时钟频率。在PCIe接口位置,优先实现PCIe接口(可配置成X1,X2或X4),即需要在其对应的FPGA SERDES高速BANK接入100MHz差分参考时钟。为了保证接口协议可定制,同时接入可编程参考输入时钟,由FPGA来配置具体时钟频率。以上时钟单元203的方案即采用了可编程时钟芯片加固定频率晶振组合方案。
FPGA 202作为整个固态硬盘的核心数据处理单元,主要工作是建立外部高速接口(6路SERDES高速接口)与内部存储单元(2个SATA盘)传输通道。当外部设备要通过SATA接口操作该固态硬盘时,此时内外接口协议是匹配的,将通过FPGA实现RAID技术对两个SATA盘进行对应操作。当外部设备通过PCIe或自定义接口协议操作该固态硬盘时,此时内外接口协议是不匹配的,FPGA将首先进行协议转换,再实现RAID技术对两个SATA盘进行对应操作。
DDR 204作为FPGA 202的缓存单元,不管是传输数据还是协议转换都需要用到缓存单元。
本实施例的存储单元由SATA盘1 205和SATA盘2 206组成阵列。所有对盘的操作均需要FPGA实现相应RAID技术才能进行。
Claims (6)
1.一种基于FPGA实现的多协议接口固态存储系统,其特征在于,包括:
一个或多个高速连接器、FPGA处理单元、时钟单元、DDR缓存单元、存储单元;
所述FPGA处理单元包括至少2个SERDES高速串口,为整个固态存储系统的核心数据处理单元,建立外部高速接口与内部存储单元传输通道,当外部高速接口与内部存储单元接口协议不匹配时,需要由FPGA进行协议转换,若接口协议匹配则不需要进行协议转换;FPGA采用通用的IP核实现标准协议接口,采用用户约定的协议格式实现非标协议接口;
所述高速连接器与所述FPGA处理单元之间的互连信号,或为高速信号,或为高速信号和低速信号同时存在;其中,低速信号或通过FPGA的GPIO直接对外或加接口芯片对外,对外高速信号接口由FPGA的SERDES高速串口实现;
所述时钟单元用来给FPGA SERDES高速BANK提供参考时钟,以实现需要的高速接口协议,第一种方案为当接口协议不确定时,采用可编程时钟芯片,根据所需接口协议以及线速率要求,由FPGA来设定具体时钟值;第二种方案为当接口协议确定时,或采用固定频率晶振或采用可编程时钟芯片任意一种,来为FPGA SERDES高速BANK提供时钟参考;第三种方案为当要实现多路接口时,则每一路接口按照第一种方案和第二种方案来确定时钟方案;
所述DDR缓存单元挂在FPGA上,作为FPGA数据处理的缓存单元;
所述存储单元用来实现数据存储。
2.根据权利要求1所述的一种基于FPGA实现的多协议接口固态存储系统,其特征在于,包括:所述高速连接器或为电连接器,或为光纤连接器。
3.根据权利要求1所述的一种基于FPGA实现的多协议接口固态存储系统,其特征在于,包括:所述标准协议接口包括PCIe、SATA、RocketIO、RapidIO常用标准协议。
4.根据权利要求1所述的一种基于FPGA实现的多协议接口固态存储系统,其特征在于,包括:所述加接口芯片对外,其中的接口芯片包括RS485、RS422。
5.根据权利要求1所述的一种基于FPGA实现的多协议接口固态存储系统,其特征在于,包括:所述对外高速信号接口或是一种协议接口,或是多种协议接口同时存在。
6.根据权利要求1至5任一项所述的一种基于FPGA实现的多协议接口固态存储系统,其特征在于,包括:所述存储单元,或是单个存储盘或是存储阵列;当存储单元为存储阵列时,需要FPGA实现RAID功能,当存储单元为单个存储盘时,FPGA无需实现RAID功能。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910269863.1A CN109947376B (zh) | 2019-04-04 | 2019-04-04 | 一种基于fpga实现的多协议接口固态存储系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910269863.1A CN109947376B (zh) | 2019-04-04 | 2019-04-04 | 一种基于fpga实现的多协议接口固态存储系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109947376A CN109947376A (zh) | 2019-06-28 |
CN109947376B true CN109947376B (zh) | 2024-02-09 |
Family
ID=67012538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910269863.1A Active CN109947376B (zh) | 2019-04-04 | 2019-04-04 | 一种基于fpga实现的多协议接口固态存储系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109947376B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110297797B (zh) * | 2019-07-04 | 2021-05-04 | 天津芯海创科技有限公司 | 异构协议转换装置和方法 |
CN111539034B (zh) * | 2020-06-21 | 2020-10-23 | 深圳市安信达存储技术有限公司 | 固态硬盘双协议加密方法、装置及固态硬盘加密芯片 |
CN111858415B (zh) * | 2020-07-30 | 2024-03-15 | 超越科技股份有限公司 | 一种用于数据接收与存储的多通道、多协议硬件加速方法 |
CN111918046A (zh) * | 2020-08-11 | 2020-11-10 | 深圳市注目视讯技术有限公司 | 一种新的电影服务器控制显示系统 |
CN117708028B (zh) * | 2024-02-05 | 2024-04-26 | 成都电科星拓科技有限公司 | Sata raid桥接芯片 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101833424A (zh) * | 2010-03-26 | 2010-09-15 | 中国科学院光电技术研究所 | 基于fpga的高速存储与传输装置 |
CN102026223A (zh) * | 2010-08-03 | 2011-04-20 | 武汉易思达科技有限公司 | 一种3g基站基带与射频单元间接口协议的测试方法 |
CN106612141A (zh) * | 2016-12-20 | 2017-05-03 | 北京旋极信息技术股份有限公司 | 一种光纤通道协议通用仿真测试卡及其数据交互方法 |
CN107168644A (zh) * | 2016-06-03 | 2017-09-15 | 中北大学 | 基于sfp光纤接口的高速大容量宽带i/q数据记录仪 |
CN108012053A (zh) * | 2017-11-16 | 2018-05-08 | 南京理工大学 | 一种基于CoaXPress接口的高速图像传输系统 |
CN109522251A (zh) * | 2018-09-28 | 2019-03-26 | 天津市英贝特航天科技有限公司 | 一种基于PXIe总线的高速同步串口卡及其工作方法 |
CN209657286U (zh) * | 2019-04-04 | 2019-11-19 | 上海威固信息技术股份有限公司 | 一种基于fpga实现的多协议接口固态存储系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005339323A (ja) * | 2004-05-28 | 2005-12-08 | Hitachi Ltd | ストレージシステム、計算機システムおよびインタフェースモジュール |
US10372646B2 (en) * | 2017-06-30 | 2019-08-06 | Western Digital Technologies, Inc. | Programmable adapter between slow peripherals and network on-chip interfaces |
-
2019
- 2019-04-04 CN CN201910269863.1A patent/CN109947376B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101833424A (zh) * | 2010-03-26 | 2010-09-15 | 中国科学院光电技术研究所 | 基于fpga的高速存储与传输装置 |
CN102026223A (zh) * | 2010-08-03 | 2011-04-20 | 武汉易思达科技有限公司 | 一种3g基站基带与射频单元间接口协议的测试方法 |
CN107168644A (zh) * | 2016-06-03 | 2017-09-15 | 中北大学 | 基于sfp光纤接口的高速大容量宽带i/q数据记录仪 |
CN106612141A (zh) * | 2016-12-20 | 2017-05-03 | 北京旋极信息技术股份有限公司 | 一种光纤通道协议通用仿真测试卡及其数据交互方法 |
CN108012053A (zh) * | 2017-11-16 | 2018-05-08 | 南京理工大学 | 一种基于CoaXPress接口的高速图像传输系统 |
CN109522251A (zh) * | 2018-09-28 | 2019-03-26 | 天津市英贝特航天科技有限公司 | 一种基于PXIe总线的高速同步串口卡及其工作方法 |
CN209657286U (zh) * | 2019-04-04 | 2019-11-19 | 上海威固信息技术股份有限公司 | 一种基于fpga实现的多协议接口固态存储系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109947376A (zh) | 2019-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109947376B (zh) | 一种基于fpga实现的多协议接口固态存储系统 | |
US10468078B2 (en) | Methods and systems for pin-efficient memory controller interface using vector signaling codes for chip-to-chip communication | |
CN107015928B (zh) | 用以切换多个接口的系统及其方法及用以切换总线的系统 | |
US20130159622A1 (en) | Chained, scalable storage devices | |
US7013359B1 (en) | High speed memory interface system and method | |
CN106095334B (zh) | 一种基于fpga的高速数据采集存储系统 | |
US11907140B2 (en) | Serial interface for semiconductor package | |
CN105335326A (zh) | 一种基于fpga的pcie转sata接口阵列的装置 | |
KR102171716B1 (ko) | 연쇄된,확장가능한 저장 디바이스들 | |
CA2531846A1 (en) | Switch/network adapter port incorporating selectively accessible shared memory resources | |
US11907152B2 (en) | Reconfigurable server and server rack with same | |
CN110321313A (zh) | 可配置接口卡 | |
CN106326168B (zh) | 连接电路及具有该连接电路的计算机系统 | |
US20100296256A1 (en) | Configurable module and memory subsystem | |
WO2006124300A1 (en) | Identical chips with different operations in a system | |
CN101609442A (zh) | 一种接口自适应的方法及其装置、系统 | |
CN106776387A (zh) | 硬盘通道扩展装置 | |
US7600081B2 (en) | Processor architecture having multi-ported memory | |
CN101236776B (zh) | 一种串行接口快闪存储器及其设计方法 | |
CN209657286U (zh) | 一种基于fpga实现的多协议接口固态存储系统 | |
CN109561032B (zh) | 一种交换机模块及包括其的交换机 | |
WO2016081190A1 (en) | Memory systems, modules, and methods for improved capacity | |
US20080320186A1 (en) | Memory device capable of communicating with host at different speeds, and data communication system using the memory device | |
CN109992550B (zh) | 基于cpci总线的多类型信息处理装置及方法 | |
US8041861B2 (en) | Memory device communicating with a host at different speeds and managing access to shared memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |