CN105161132A - 一种基于FPGA的NVMe SSD只读保护方法 - Google Patents
一种基于FPGA的NVMe SSD只读保护方法 Download PDFInfo
- Publication number
- CN105161132A CN105161132A CN201510533694.XA CN201510533694A CN105161132A CN 105161132 A CN105161132 A CN 105161132A CN 201510533694 A CN201510533694 A CN 201510533694A CN 105161132 A CN105161132 A CN 105161132A
- Authority
- CN
- China
- Prior art keywords
- fpga
- read
- interface
- nvmessd
- cpu
- 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
- 238000000034 method Methods 0.000 title claims abstract description 20
- 230000005540 biological transmission Effects 0.000 claims description 8
- 238000011017 operating method Methods 0.000 claims description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000005055 memory storage Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000004575 stone Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于FPGA的NVMe?SSD只读保护方法,属于硬盘数据读写领域,本发明要解决的技术问题为硬盘操作过程中对数据的损坏。该方法为将CPU控制单元、PCIE设备只读单元、接口电路集成在FPGA上,FPGA上还设置有USB和SATA/eSATA接口;CPU控制单元、PCIE设备只读单元、接口电路依次串联连接,NVNESSD通过接口电路与FPGA连接;CPU在FPGA中进行写保护以及读取操作。本发明CPU通过FPGA上的接口与NVME?SSD直接互联,在FPGA上进行完整的数据保护。
Description
技术领域
本发明涉及硬盘数据读写领域,具体地说是一种基于FPGA的NVMeSSD只读保护方法。
背景技术
近年来,随着信息网络的快速发展,对硬盘的速率追求日益增加,基于PCIE(英文全称为PeripheralComponentInterconnectExpress,中文翻译为高速外围组件互联)接口的NVMeSSD应运而生,在数据存储,备份以及分析中都需要对源数据进行很好的保护,但是由于计算机并不是具备所有存储设备的接口,所以往往会用的一些转接装置。现有的各种转接装置往往都是即插即用,在数据通道没有建立或者数据读写不稳定时对存储设备供电会造成存储设备的损坏。
发明内容
本发明的技术任务是针对以上不足,提供一种基于FPGA(英文全称为Field-ProgrammableGateArray,中文翻译为现场可编程门阵列)的NVMe(英文全称为Non-VolatileMemoryExpress,中文翻译为快速非易失性存储)SSD(英文全称为:SolidStateDisk,中文翻译为固态硬盘)只读保护方法,来解决对硬盘操作过程中对数据的损坏问题。
本发明解决其技术问题所采用的技术方案是:
一种基于FPGA的NVMeSSD只读保护方法,将CPU(英文全称为CentralProcessingUnit,中文翻译为中央处理器)控制单元、PCIE设备只读单元、接口电路集成在FPGA上,FPGA上还设置有USB(英文全称为UniversalSerialBus,中文翻译为通用串行总线)和SATA(英文全称SerialAdvancedTechnologyAttachment,中文翻译为串行高级技术附件)/eSATA(英文全称ExternalSerialAdvancedTechnologyAttachment,中文翻译为外部串行高级技术附件)接口;CPU控制单元、PCIE设备只读单元、接口电路依次串联连接,NVMeSSD通过接口电路与FPGA连接;CPU在FPGA中进行写保护以及读取操作。
进一步的,CPU控制单元中,CPU对DMA(英文全称为DirectionalMemoryAccess,中文翻译为直接内存访问)传输状态机进行配置,DMA包括读操作、写保护操作以及仲裁;DMA运行步骤为,初始条件下,DMA处于复位状态,通过读取DMA信息标示符来判断当前是否处于空闲状态,并从内部读取DMA控制信息,并相应的进行读操作或写保护操作。
进一步的,PCIE设备只读单元包括IP(英文全称为InternetProtocol,中文翻译为网络之间互连的协议)模块,IP模块连接CPU控制单元。
进一步的,接口电路的一端设置有SFF-8639接口,SFF-8639接口连接NVMeSSD;接口电路的另一端设置有USB3.0接口和SATA/eSATA接口。
进一步的,CPU通过USB3.0接口和SATA/eSATA接口对NVMeSSD进行读操作。
进一步的,CPU通过SFF-8639接口对NVMeSSD进行写保护操作。
本发明的一种基于FPGA的NVMeSSD只读保护方法和现有技术相比,具有以下有益效果:本发明中CPU通过FPGA中SFF-8639接口直接连接NVMeSSD,在FPGA中通过程序进行写保护操作,并通过USB和SATA/eSATA接口进行读操作,读取速率快,通过FPGA实现CPU与NVMeSSD数据的直接互联,对数据实现完整保护;同时数据通道稳定,提高了数据在传输过程的稳定性。
附图说明
图1为本发明中FPGA架构及CPU控制单元;
图中,DMARead表示DMA读操作,DMAWrite表示DMA写操作,DMAControl表示DMA仲裁,Common表示公用信号,DATA表示数据信号。
具体实施方式
下面结合图1对本发明作进一步说明。
一种基于FPGA的NVMeSSD只读保护设计方法,将CPU控制单元、PCIE设备只读单元、接口电路集成在FPGA上,FPGA上还设置有USB和SATA/eSATA接口;CPU控制单元、PCIE设备只读单元、接口电路依次串联连接,NVMeSSD通过接口电路与FPGA连接;CPU在FPGA中进行写保护以及读取操作。
其结构包括CPU控制单元、PCIE设备只读单元、接口电路。
CPU控制单元是设计方法的核心,具有PCIE协议分析转换,实现数据传输功能。控制数据传输流向,数据传输过程中格式转换及封装,对传输的数据进行校验。对DMA传输状态机进行配置,DMA主要分为读操作、写保护操作以及仲裁3部分。初始条件下,DMA处于复位状态,通过读取DMA信息标示符来判断当前是否处于空闲状态,并从内部读取DMA控制信息,并相应的进入读操作或写保护操作。以CPU读外部存储器为例,CPU读FPGA外部存储器时,FPGA将发出对CPU的DMA写请求,并当DMA完成读操作后,等待PCIE接口发送DMA数据包,并由中断标志位判断是否开启PCIE中断。而对于写操作时,CPU控制与PCIE设备完成命令交换,但对于写入的数据进行丢弃,起到保护原数据的作用。
PCIE设备只读单元,FPGA的PCIE硬核IP包含处理层,链路层和物理层所要求的全部功能,以及大多数的可选功能。只需在IP常数设置中经过简单的参数设置即可生成全功能的IP模块;与CPU控制单元进行交互,将读取设备的命令传递,控制传输NVMeSSD读数据的传递;对写入命令进行控制,保持CPU正常状态,控制写入数据,不对NVMeSSD进行写入操作。
接口电路,在PCIE端为SFF-8639接口,支持NVMeSSD;在终端接入具有USB3.0和SATA/eSATA高速接口,具有较高的通用性和数据传输速率。
上述具体实施方式仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述具体实施方式,任何符合本发明的权利要求书的且任何所属技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。
除说明书所述的技术特征外,均为本专业技术人员的已知技术。
Claims (6)
1.一种基于FPGA的NVMeSSD只读保护方法,其特征在于将CPU控制单元、PCIE设备只读单元、接口电路集成在FPGA上,FPGA上还设置有USB和SATA/eSATA接口;CPU控制单元、PCIE设备只读单元、接口电路依次串联连接,NVMeSSD通过接口电路与FPGA连接;CPU在FPGA中进行写保护以及读取操作。
2.根据权利要求1所述的一种基于FPGA的NVMeSSD只读保护方法,其特征在于CPU控制单元中,CPU对DMA传输状态机进行配置,DMA包括读操作、写保护操作以及仲裁;DMA运行步骤为,初始条件下,DMA处于复位状态,通过读取DMA信息标示符来判断当前是否处于空闲状态,并从内部读取DMA控制信息,并相应的进行读操作或写保护操作。
3.根据权利要求1所述的一种基于FPGA的NVMeSSD只读保护方法,其特征在于PCIE设备只读单元包括IP模块,IP模块连接CPU控制单元。
4.根据权利要求1所述的一种基于FPGA的NVMeSSD只读保护方法,其特征在于接口电路的一端设置有SFF-8639接口,SFF-8639接口连接NVMESSD;接口电路的另一端设置有USB3.0接口和SATA/eSATA接口。
5.根据权利要求4所述的一种基于FPGA的NVMeSSDSSD只读保护方法,其特征在于CPU通过USB3.0接口和SATA/eSATA接口对NVMeSSD进行读操作。
6.根据权利要求4所述的一种基于FPGA的NVMeSSD只读保护方法,其特征在于CPU通过SFF-8639接口对NVMeSSD进行写保护操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510533694.XA CN105161132A (zh) | 2015-08-27 | 2015-08-27 | 一种基于FPGA的NVMe SSD只读保护方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510533694.XA CN105161132A (zh) | 2015-08-27 | 2015-08-27 | 一种基于FPGA的NVMe SSD只读保护方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105161132A true CN105161132A (zh) | 2015-12-16 |
Family
ID=54801960
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510533694.XA Pending CN105161132A (zh) | 2015-08-27 | 2015-08-27 | 一种基于FPGA的NVMe SSD只读保护方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105161132A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106970866A (zh) * | 2017-03-13 | 2017-07-21 | 郑州云海信息技术有限公司 | 一种磁盘监控系统及方法 |
CN107301140A (zh) * | 2017-06-27 | 2017-10-27 | 山东超越数控电子有限公司 | 一种利用fpga接口板采用dma进行数据传输的方法 |
WO2018006393A1 (en) * | 2016-07-08 | 2018-01-11 | SZ DJI Technology Co., Ltd. | Method and system for storing images |
CN111104274A (zh) * | 2019-12-19 | 2020-05-05 | 广东浪潮大数据研究有限公司 | Ssd硬盘自动化测试方法、装置、设备及可读存储介质 |
CN111124985A (zh) * | 2019-12-24 | 2020-05-08 | 厦门市美亚柏科信息股份有限公司 | 一种移动终端只读控制方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101539894A (zh) * | 2009-05-04 | 2009-09-23 | 成都市华为赛门铁克科技有限公司 | 一种将计算机外部设备接入计算机系统的方法和装置 |
CN101751009A (zh) * | 2008-12-05 | 2010-06-23 | 中国科学院沈阳计算技术研究所有限公司 | 基于片上可编程系统的数控系统精插补器及其控制方法 |
US20120254527A1 (en) * | 2011-04-01 | 2012-10-04 | Byungcheol Cho | Dynamic random access memory for a semiconductor storage device-based system |
US20130067156A1 (en) * | 2011-09-12 | 2013-03-14 | Byungcheol Cho | Double data rate controller having shared address and separate data error correction |
CN103336745A (zh) * | 2013-07-01 | 2013-10-02 | 无锡众志和达存储技术股份有限公司 | 一种基于ssd缓存的fc hba及其设计方法 |
-
2015
- 2015-08-27 CN CN201510533694.XA patent/CN105161132A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101751009A (zh) * | 2008-12-05 | 2010-06-23 | 中国科学院沈阳计算技术研究所有限公司 | 基于片上可编程系统的数控系统精插补器及其控制方法 |
CN101539894A (zh) * | 2009-05-04 | 2009-09-23 | 成都市华为赛门铁克科技有限公司 | 一种将计算机外部设备接入计算机系统的方法和装置 |
US20120254527A1 (en) * | 2011-04-01 | 2012-10-04 | Byungcheol Cho | Dynamic random access memory for a semiconductor storage device-based system |
US20130067156A1 (en) * | 2011-09-12 | 2013-03-14 | Byungcheol Cho | Double data rate controller having shared address and separate data error correction |
CN103336745A (zh) * | 2013-07-01 | 2013-10-02 | 无锡众志和达存储技术股份有限公司 | 一种基于ssd缓存的fc hba及其设计方法 |
Non-Patent Citations (2)
Title |
---|
李硕,刘芳,肖侬: "基于FPGA的PCIe SSD设计与实现", 《中国科技论文》 * |
王嘉良,赵曙光: "用FPGA实现PCI-E接口和DMA控制器设计", 《计算机技术与发展》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018006393A1 (en) * | 2016-07-08 | 2018-01-11 | SZ DJI Technology Co., Ltd. | Method and system for storing images |
CN106970866A (zh) * | 2017-03-13 | 2017-07-21 | 郑州云海信息技术有限公司 | 一种磁盘监控系统及方法 |
CN107301140A (zh) * | 2017-06-27 | 2017-10-27 | 山东超越数控电子有限公司 | 一种利用fpga接口板采用dma进行数据传输的方法 |
CN111104274A (zh) * | 2019-12-19 | 2020-05-05 | 广东浪潮大数据研究有限公司 | Ssd硬盘自动化测试方法、装置、设备及可读存储介质 |
CN111104274B (zh) * | 2019-12-19 | 2023-07-14 | 广东浪潮大数据研究有限公司 | Ssd硬盘自动化测试方法、装置、设备及可读存储介质 |
CN111124985A (zh) * | 2019-12-24 | 2020-05-08 | 厦门市美亚柏科信息股份有限公司 | 一种移动终端只读控制方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11500810B2 (en) | Techniques for command validation for access to a storage device by a remote client | |
CN105161132A (zh) | 一种基于FPGA的NVMe SSD只读保护方法 | |
KR101934519B1 (ko) | 저장 장치 및 그것의 데이터 전송 방법 | |
TWI601010B (zh) | 用於整合在根複合體中的裝置之方法、設備及系統 | |
CN109766302B (zh) | 设备管理的方法和装置 | |
TW201839615A (zh) | 快閃記憶體的垃圾回收斷電回復方法以及使用該方法的裝置 | |
JP2017513089A (ja) | コマンドキューイング | |
TWI492054B (zh) | 快閃記憶體的模擬方法與模擬器 | |
CN108052750B (zh) | 基于fpga的spi flash控制器及其设计方法 | |
CN109743105A (zh) | 智能网卡光模块管理方法、装置、系统及智能网卡和介质 | |
TWI545588B (zh) | 控制方法、連接器與記憶體儲存裝置 | |
CN112765055B (zh) | 存储设备的控制部件 | |
EP3072055B1 (en) | Support for ioapic interrupts in amba-based devices | |
TW201502977A (zh) | 指令執行方法、連接器與記憶體儲存裝置 | |
CN112764669A (zh) | 用于存储控制器的加速器 | |
TWI514141B (zh) | 記憶體位址管理方法、記憶體控制器與記憶體儲存裝置 | |
CN102629212A (zh) | 一种基于j-link间接烧写程序到nandflash的方法 | |
CN204086415U (zh) | 故障录波装置 | |
US10409748B2 (en) | Bridge device with DMA data transferring to upstream device with reset and clear feature command | |
CN104077080A (zh) | 存储器存取方法、存储器存取控制方法、spi闪存装置及其控制器 | |
CN107590100B (zh) | 一种多核处理器的核间数据交互方法 | |
TWI467578B (zh) | 錯誤處理方法、記憶體儲存裝置與記憶體控制電路單元 | |
US8856389B1 (en) | Efficient data transfers over serial data streams | |
TWI636363B (zh) | 用來於一記憶裝置中進行動態資源管理之方法以及記憶裝置及其控制器 | |
CN202632270U (zh) | 基于usb3.0的硬盘数据读取设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151216 |
|
RJ01 | Rejection of invention patent application after publication |