CN109240952B - 一种高速数据加密NVMe-SATA转换器电路 - Google Patents

一种高速数据加密NVMe-SATA转换器电路 Download PDF

Info

Publication number
CN109240952B
CN109240952B CN201810994587.0A CN201810994587A CN109240952B CN 109240952 B CN109240952 B CN 109240952B CN 201810994587 A CN201810994587 A CN 201810994587A CN 109240952 B CN109240952 B CN 109240952B
Authority
CN
China
Prior art keywords
encryption
controller
data
nvme
decryption
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
CN201810994587.0A
Other languages
English (en)
Other versions
CN109240952A (zh
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 Institute of Computer Technology and Applications
Original Assignee
Beijing Institute of Computer Technology and Applications
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 Institute of Computer Technology and Applications filed Critical Beijing Institute of Computer Technology and Applications
Priority to CN201810994587.0A priority Critical patent/CN109240952B/zh
Publication of CN109240952A publication Critical patent/CN109240952A/zh
Application granted granted Critical
Publication of CN109240952B publication Critical patent/CN109240952B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation

Abstract

本发明公开了一种高速数据加密NVMe‑SATA转换器电路,其中,主机通过NVMe控制器进行初始化配置,密钥注入单元将初始密钥注入系统总控制器进行密钥的分发,NVMe控制器分别将接受的命令与数据通过系统总控制器发送至片内缓存与SATA控制器中,加解密引擎控制器根据系统总控制器配置的命令参数从片内缓存中搬运数据至高速缓存寄存器中去,以及从高速缓存寄存器读取数据,写入至片内缓存中,高速缓存寄存器将数据整理为相应的数据格式写入至加解密计算单元进行加解密处理过程,将结果写回高速缓存寄存器,经SATA控制器写入至固态盘中或将解密的数据经NVMe控制器输出;系统总线控制器查询加解密引擎的状态使能信号,获取每个加解密引擎的状态,并调用闲置的加解密引擎进行加解密运算。

Description

一种高速数据加密NVMe-SATA转换器电路
技术领域
本发明涉及一种高速数据加密NVMe-SATA转换器电路,特别是一种高速数据加密NVMe-SATA转换器电路芯片的架构。
背景技术
在传统的机械硬盘时代,主机使用SATA传输协议与AHCI用户协议对硬盘进行读写操作。在固态硬盘时代,SATA传输协议的传输速率及AHCI用户协议支持的队列数、队列深度已经不能满足实际需求。为解决这一问题,非易失性内存主机控制器接口协议(Non-Volatile Memory express)应运而生,解决了非易失性存储器的存储性能问题。
NVMe协议利用充分利用了PCIe传输协议通道低延迟及并行性的特性,支持数量巨大的队列数量及队列深度,极大地提升了固态硬盘的读写性能,降低由AHCI接口带来的高延时,彻底解放SATA时代固态盘的极致性能。
然而,在NVMe协议传输过程中直接添加加密单元对传输的数据进行加密,并非是一个良好的解决方案。利用软件控制NVMe协议格式的数据进行加密,不仅控制流程复杂,而且资源消耗高、传输速率低。因此,有必要采用基于硬件控制的加密处理方法,能够快速处理大量的固态盘读写数据,保证固态盘数据的安全性与可靠性。
NVMe协议格式数据转换据的过程中,使用硬件逻辑控制进行命令的解析、数据的传输、数据通路的选择、数据的加密处理以及数据写入过程,提高了数据传顺处理的效率,保证了固态盘中数据的安全性与可靠性。
发明内容
本发明的目的在于提供一种高速数据加密NVMe-SATA转换器电路用于解决上述现有技术的问题。
本发明一种高速数据加密NVMe-SATA转换器电路,其中,包括:NVMe控制器、系统总控制器、片内缓存、SATA控制器、加解密引擎以及密钥注入单元;加解密引擎包括:加解密引擎控制器、加解密计算单元以及高速缓存寄存器;主机通过NVMe控制器进行初始化配置,密钥注入单元将初始密钥注入系统总控制器进行密钥的分发,NVMe控制器分别将接受的命令与数据通过系统总控制器发送至片内缓存与SATA控制器中,加解密引擎控制器根据系统总控制器配置的命令参数从片内缓存中搬运数据至高速缓存寄存器中去,以及从高速缓存寄存器读取数据,写入至片内缓存中,高速缓存寄存器将数据整理为相应的数据格式写入至加解密计算单元进行加解密处理过程,将结果写回高速缓存寄存器,经SATA控制器写入至固态盘中或将解密的数据经NVMe控制器输出;系统总线控制器查询加解密引擎的状态使能信号,获取每个加解密引擎的状态,并调用闲置的加解密引擎进行加解密运算。
根据本发明的高速数据加密NVMe-SATA转换器电路的一实施例,其中,NVMe控制器与系统总控制器双向连接,密钥注入单元与系统总控制器单向连接,系统总控制器与片内缓存双向连接,系统总控制器与加解密引擎双向连接,系统总控制器与SATA控制器单向连接,片内缓存与加解密引擎双向连接,片内缓存与SATA控制器双向连接,加解密引擎控制器与高速缓存寄存器双向连接,加解密引擎控制器与加解密计算单元双向连接,加解密计算单元与高速缓存寄存器双向互联。
根据本发明的高速数据加密NVMe-SATA转换器电路的一实施例,其中,系统总线控制器能够将NVMe控制器传输的读写数据写入片内缓存的特定地址,NVMe控制器传输的读写数据按照片内缓存的特定地址进行读写操作。
根据本发明的高速数据加密NVMe-SATA转换器电路的一实施例,其中,系统总线控制器持续查询加解密引擎的状态使能信号,获取每个加解密引擎的计算状态,跳转到可读或可写的状态并记录可供使用的加解密引擎数量资源,根据NVMe控制器发送的读写命令与数据长度,激活闲置的加解密引擎使能信号。
根据本发明的高速数据加密NVMe-SATA转换器电路的一实施例,其中,系统总线控制器根据每个加解密引擎单元的实际状态,选择相应加解密引擎单元的加解密引擎控制器施加控制信号,使得加解密引擎控制器从片内缓存相应位置读写数据。
根据本发明的高速数据加密NVMe-SATA转换器电路的一实施例,其中,系统总线控制器能够将NVMe控制器解析的相应读写命令写入至SATA控制器中。
根据本发明的高速数据加密NVMe-SATA转换器电路的一实施例,其中,SATA控制器按照接收的读写命令从片内缓存中读写相应的数据。
本发明的高速数据加密NVMe-SATA转换器电路,可以对NVMe控制器协议格式数据转换为SATA控制器协议格式数据过程中,大批量的读写数据进行实时的加密运算,实现了数据存储与传输过程中的安全性与可靠性。
附图说明
图1所示为本发明的一种高速数据加密NVMe-SATA转换器电路的原理图;
图2所示为加密计算阵列单元的原理图;
图3所示为高速数据加密NVMe桥控制器的工作流程图。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
图1所示为本发明的一种高速数据加密NVMe-SATA转换器电路的原理图,图2所示为加密计算阵列单元的原理图,如图1以及图2所示,本发明一种高速数据加密NVMe-SATA转换器电路,包括:一种高速数据加密NVMe桥控制器装置7,包括:NVMe控制器1,系统总控制器2,片内缓存3,SATA控制器6,加解密引擎9,密钥注入单元10。加解密引擎9包括:加解密引擎控制器4,加解密计算单元5,高速缓存寄存器8。NVMe控制器1与系统总控制器双向连接2,密钥注入单元10与系统总控制器2单向连接,系统总控制器2与片内缓存3双向连接,系统总控制器2与加解密引擎9双向连接,系统总控制器2与SATA控制器6单向连接,片内缓存3与加解密引擎9双向连接,片内缓存3与SATA控制器6双向连接,加解密引擎控制器4与高速缓存寄存器8双向连接,加解密引擎控制器4与加解密计算单元5双向连接,加解密计算单元5与高速缓存寄存器8双向互联。
图3所示为高速数据加密NVMe桥控制器的工作流程图,如图1至图3所示,高速数据加密NVMe桥控制器装置上电时,主机通过NVMe控制器1进行初始化配置。密钥注入单元10将初始密钥注入系统总控制器2进行密钥的分发,分发给加解密引擎9中的高速缓存寄存器8,加解密计算单元5通过密钥以对数据进行加解密处理,NVMe控制器1分别将接受的命令与数据通过系统总控制器2发送至片内缓存3与SATA控制器6中,加解密引擎9根据系统总控制器2配置的命令参数从片内缓存3中搬运数据至高速缓存寄存器8中去,高速缓存寄存器8将数据整理为相应的数据格式写入至加解密计算单元5进行加密处理过程,获得的加密数据存在片内缓存3中,最后经SATA控制器6写入至固态盘中。或者,加解密引擎9根据系统总控制器2从片内缓存3中读取SATA控制器6的固态盘数据,搬运数据至高速缓存寄存器8中去,高速缓存寄存器8将数据整理为相应的数据格式写入至加解密计算单元5进行解密处理过程,获得的解密数据存在片内缓存3中,最后经NVMe控制器1输出。
如图1至图3所示,系统总线控制器2能够将NVMe控制器1传输的读写数据写入片内缓存3的特定位置,NVMe控制器1传输的读写数据按照片内缓存3特定地址(每个加解密引擎9在片内缓存3设定的起始基地址及数据空间队列长度),快速高效地进行读写操作。系统总线控制器2不断查询加解密引擎9的状态使能信号,获取每个加解密引擎9的计算状态,跳转到可读或可写的状态并记录可供使用的加解密引擎9数量资源,根据NVMe控制器1发送的读写命令与数据长度,激活闲置的加解密引擎9使能信号,实现对每一加解密引擎控制器4的高效控制过程。
如图1至图3所示,系统总线控制器2根据每个加解密引擎单元的实际状态,选择相应加解密引擎单元的加解密引擎控制器4施加控制信号,使得加解密引擎控制器4从片内缓存3相应位置读写数据。
如图1至图3所示,系统总线控制器2能够将NVMe控制器1解析的相应读写命令写入至SATA控制器6中。
如图1至图3所示,SATA控制器6,按照接收的读写命令从片内缓存3中读写相应的数据。
如图1至图3所示,加解密引擎控制器4从片内缓存3读取数据,并将数据写入至高速缓存寄存器8;或是从高速缓存寄存器8读取数据,写入至片内缓存3中。
如图1至图3所示,加解密引擎控制器4控制高速缓存寄存器8获取数据,及加解密计算单元5进行并行加密计算,最后将获得结果写回高速缓存寄存器8的过程。
本发明高速数据加密NVMe桥控制器装置,利用多个SATA传输通路,多个加解密引擎单元并行处理的高带宽结构,快速进行大容量数据的加解密处理过程,保证存储在固态硬盘中数据的安全性。利用系统总控制器分配数据传输通路,使大批量数据在多个加解密引擎单元同时加密数据,以密文形式存储在固态盘中,提高数据存储安全性。其中系统总控制器根据每个加解密引擎单元的情况配置相应通道的加解密引擎控制器高速搬运数据至该通道的多个并行的加解密单元缓存空间进行加密运算,能够有效地对大批量的数据进行加解密运算。由此在NVMe协议格式数据转换为SATA协议格式数据过程中,对大批量的读写数据进行实时的加解密运算,实现了数据存储与传输过程中的安全性与可靠性。
本发明提供一种在NVMe协议格式数据转换为SATA协议格式数据的过程中,高速加密处理大批量数据的流程架构,保证了存储在固态盘中数据的安全性,消除了固态盘中存储数据被盗取的隐患,提高了数据与系统的安全性与可靠性。同时采用完全基于硬件逻辑控制的数据处理过程,使得整个过程数据处理效率更高、传输的速度带宽更快、消耗的资源更小。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

Claims (7)

1.一种高速数据加密NVMe-SATA转换器电路,其特征在于,包括:NVMe控制器、系统总控制器、片内缓存、SATA控制器、加解密引擎以及密钥注入单元;加解密引擎包括:加解密引擎控制器、加解密计算单元以及高速缓存寄存器;
主机通过NVMe控制器进行初始化配置,密钥注入单元将初始密钥注入系统总控制器进行密钥的分发,NVMe控制器分别将接受的命令与数据通过系统总控制器发送至片内缓存与SATA控制器中,加解密引擎控制器根据系统总控制器配置的命令参数从片内缓存中搬运数据至高速缓存寄存器中去,以及从高速缓存寄存器读取数据,写入至片内缓存中,高速缓存寄存器将数据整理为相应的数据格式写入至加解密计算单元进行加解密处理过程,将结果写回片内缓存,经SATA控制器写入至固态盘中或将解密的数据经NVMe控制器输出;
系统总线控制器查询加解密引擎的状态使能信号,获取每个加解密引擎的状态,并调用闲置的加解密引擎进行加解密运算。
2.如权利要求1所述的高速数据加密NVMe-SATA转换器电路,其特征在于,NVMe控制器与系统总控制器双向连接,密钥注入单元与系统总控制器单向连接,系统总控制器与片内缓存双向连接,系统总控制器与加解密引擎双向连接,系统总控制器与SATA控制器单向连接,片内缓存与加解密引擎双向连接,片内缓存与SATA控制器双向连接,加解密引擎控制器与高速缓存寄存器双向连接,加解密引擎控制器与加解密计算单元双向连接,加解密计算单元与高速缓存寄存器双向互联。
3.如权利要求1所述的高速数据加密NVMe-SATA转换器电路,其特征在于,系统总线控制器能够将NVMe控制器传输的读写数据写入片内缓存的特定地址,NVMe控制器传输的读写数据按照片内缓存的特定地址进行读写操作。
4.如权利要求1所述的高速数据加密NVMe-SATA转换器电路,其特征在于,系统总线控制器持续查询加解密引擎的状态使能信号,获取每个加解密引擎的计算状态,跳转到可读或可写的状态并记录可供使用的加解密引擎数量资源,根据NVMe控制器发送的读写命令与数据长度,激活闲置的加解密引擎使能信号。
5.如权利要求1所述的高速数据加密NVMe-SATA转换器电路,其特征在于,系统总线控制器根据每个加解密引擎单元的实际状态,选择相应加解密引擎单元的加解密引擎控制器施加控制信号,使得加解密引擎控制器从片内缓存相应位置读写数据。
6.如权利要求1所述的高速数据加密NVMe-SATA转换器电路,其特征在于,系统总线控制器能够将NVMe控制器解析的相应读写命令写入至SATA控制器中。
7.如权利要求1所述的高速数据加密NVMe-SATA转换器电路,其特征在于,SATA控制器按照接收的读写命令从片内缓存中读写相应的数据。
CN201810994587.0A 2018-08-27 2018-08-27 一种高速数据加密NVMe-SATA转换器电路 Active CN109240952B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810994587.0A CN109240952B (zh) 2018-08-27 2018-08-27 一种高速数据加密NVMe-SATA转换器电路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810994587.0A CN109240952B (zh) 2018-08-27 2018-08-27 一种高速数据加密NVMe-SATA转换器电路

Publications (2)

Publication Number Publication Date
CN109240952A CN109240952A (zh) 2019-01-18
CN109240952B true CN109240952B (zh) 2022-02-15

Family

ID=65069720

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810994587.0A Active CN109240952B (zh) 2018-08-27 2018-08-27 一种高速数据加密NVMe-SATA转换器电路

Country Status (1)

Country Link
CN (1) CN109240952B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110765450A (zh) * 2019-10-31 2020-02-07 江苏华存电子科技有限公司 非易失性内存主机控制器接口权限设置和非对称加密方法
CN111190844A (zh) * 2019-12-31 2020-05-22 杭州华澜微电子股份有限公司 一种协议转化方法及电子设备
CN112416830B (zh) * 2020-12-09 2024-03-26 鸿秦(北京)科技有限公司 一种nvme与sata协议转换的实现电路
CN113420308A (zh) * 2021-07-01 2021-09-21 联芸科技(杭州)有限公司 用于加密存储器的数据访问控制方法及控制系统
CN113761599B (zh) * 2021-09-10 2023-06-20 成都佰维存储科技有限公司 固态硬盘加密方法、装置、可读存储介质及电子设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150254088A1 (en) * 2014-03-08 2015-09-10 Datawise Systems, Inc. Methods and systems for converged networking and storage
CN104657288B (zh) * 2015-03-03 2017-11-10 山东华芯半导体有限公司 一种spi flash加密接口及加密数据的读写方法
CN209396881U (zh) * 2016-02-03 2019-09-17 强力物联网投资组合2016有限公司 生产和使用氢燃料的智能烹饪系统
KR20180049338A (ko) * 2016-10-31 2018-05-11 삼성전자주식회사 저장 장치 및 그것의 동작 방법
US11243782B2 (en) * 2016-12-14 2022-02-08 Microsoft Technology Licensing, Llc Kernel soft reset using non-volatile RAM

Also Published As

Publication number Publication date
CN109240952A (zh) 2019-01-18

Similar Documents

Publication Publication Date Title
CN109240952B (zh) 一种高速数据加密NVMe-SATA转换器电路
KR101340865B1 (ko) 동시 데이터 조작이 가능한 dma 엔진
CN107256363B (zh) 一种由加解密模块阵列组成的高速加解密装置
US7512743B2 (en) Using shared memory with an execute-in-place processor and a co-processor
CN109902043A (zh) 一种基于fpga的国密算法加速处理系统
CN110618947A (zh) 用于利用存储器加密引擎的安全i/o的技术
US20100122021A1 (en) USB-Attached-SCSI Flash-Memory System with Additional Command, Status, and Control Pipes to a Smart-Storage Switch
KR20120098505A (ko) 비휘발성 메모리를 갖는 시스템에 대한 효율적인 버퍼링
JP2012523612A (ja) いくつかのコマンドを処理するためのメモリコントローラ、メモリシステム、ソリッドステートドライブ、および方法
CN107092835B (zh) 一种虚拟存储盘的计算机数据加密装置及方法
US20100128874A1 (en) Encryption / decryption in parallelized data storage using media associated keys
KR20190075363A (ko) 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 메모리 모듈
CN110163011B (zh) 一种高速安全硬盘设计方法
CN112084138A (zh) 一种用于可信存储的SoC安全盘控芯片架构设计方法
US20230185745A1 (en) Data flow control module for autonomous flow control of multiple dma engines
US20220368851A1 (en) Removable Storage Device with a Virtual Camera for Video Surveillance as a Service
CN106970889B (zh) 一种sata桥接芯片及其工作方法
CN113031862B (zh) 一种基于nvme协议控制sata盘的存储系统
CN112181891B (zh) 基于NVMe的存储板卡以及数据处理方法
CN108563603B (zh) 一种基于uasp协议的高效数据加密设备
KR20190139081A (ko) 스토리지 장치와 재구성 가능 로직 칩을 포함하는 스토리지 장치 세트 및 이를 포함하는 스토리지 시스템
US9058295B2 (en) Encrypt data of storage device
KR20090059602A (ko) 세션 메모리 버스를 구비한 암호화 장치
TWI787110B (zh) 寫入資料到閃存記憶體的方法及裝置
CN110765498A (zh) 一种加密计算机

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