一种高速可信数据存储系统的制作方法
未命名
07-27
阅读:131
评论:0
1.本发明涉及计算机存储技术领域,具体涉及一种高速可信数据存储系统。
背景技术:
2.随着信息化时代的到来,生产和生活过程中产生的电子数据越来越多,需要各种存储系统对这些电子数据进行存储,大量的数据考验着存储系统的存储和读取能力。
3.随着存储的数据越来越多,如何保证数据的安全也是亟待解决的问题;现有的计算机高速存储设备或装置,对于数据的加密和完整性校验均是由应用软件完成,这种方案会消耗大量的运算资源且降低运算速度。
技术实现要素:
4.本发明的主要目的是提供一种高速可信数据存储系统,旨在解决现有的计算机高速存储设备或装置,对于数据的加密和完整性校验方案会消耗大量的运算资源且降低运算速度的问题。
5.本发明提出的技术方案为:一种高速可信数据存储系统,包括第一数据转换模块、第二数据转换模块、管理模块、物理数据通道、数据读写控制模块、高速硬盘接口转换模块,以及硬盘组;数据读写控制模块和物理数据通道均与第一数据转换模块通信连接;第二数据转换模块和管理模块均与数据读写控制模块通信连接;第二数据转换模块和硬盘组均与高速硬盘接口转换模块通信连接;管理模块用于与上位机通信连接;物理数据通道用于与外界设备通信连接;物理数据通道用于:从外界设备获取需要存储的输入数据,并生成第一数据包,然后通过第一数据转换模块将第一数据包发送至数据读写控制模块;数据读写控制模块用于:基于写控制信息对第一数据包进行加密以得到对应的第二数据包;然后通过摘要算法对第二数据包进行计算,以得到与第二数据包对应的第一摘要信息,并将第二数据包与对应的第一摘要信息打包为新的数据包,并标记为第三数据包,然后将第三数据包通过第二数据转换模块和高速硬盘接口转换模块输入硬盘组,其中,写控制信息由上位机通过管理模块发送至数据读写控制模块。
6.优选的,所述系统还包括数据缓存模块,且数据缓存模块为多个;数据读写控制模块与数据缓存模块数量相等,且数据读写控制模块与数据缓存模块一一对应地通信连接;高速硬盘接口转换模块和硬盘组数量均为多个,高速硬盘接口转换模块和硬盘组数量相等,且高速硬盘接口转换模块和硬盘组一一对应地通信连接;物理数据通道的数量为多个;物理数据通道还用于:将需要进行存储的输入数据进行整理和缓存后形成第一数据包;第一数据转换模块用于:将第一数据包通过联结转换输出至数据读写控制模块;数据读写控制模块还用于:将第三数据包输入数据缓存模块,当数据缓存模块返回可写盘信息时,读取数据缓存模块中的第三数据包,并输入第二数据转换模块,其中,可
写盘信息用于表述硬盘组的剩余空间能够存储第三数据包;第二数据转换模块用于:通过高速硬盘接口转换模块将第三数据包写入硬盘组。
7.优选的,物理数据通道包括多路分配器、多路选择器,以及多个虚拟数据通道;每个虚拟数据通道包括数据缓存块;数据缓存块分别通信连接于多路分配器和多路选择器;物理数据通道还用于:根据外界设备发送的输入数据附带的数据信息对输入数据进行虚拟通道分配以形成虚拟通道数据;对虚拟通道数据进行整理和缓存,以形成第一数据包,然后将第一数据包输出至第一数据转换模块。
8.优选的,物理数据通道还包括数据输入接口和数据输出接口;每一物理数据通道的数据输入接口分别与外界设备的不同数据写入通道通信连接;第一数据转换模块包括多个数据输入通道和多个数据输出通道;第一数据转换模块的数据输入通道的数量与物理数据通道的数量一致,第一数据转换模块的数据输出通道数量与数据读写控制模块的数量一致;每个物理数据通道的数据输出接口与第一数据转换模块的各数据输入通道一一对应地通信连接;在物理数据通道内部,物理数据通道的数据输入接口与多路分配器通信连接;多路分配器的每个数据输出接口、对应的虚拟数据通道的数据输入接口、对应的虚拟数据传输通道的数据输出接口以及多路选择器中对应的数据输出接口依次通信连接;多路选择器的数据输出接口与物理数据通道的数据输出接口通信连接;多路分配器用于:根据数据信息将从多路分配器的数据输入接口输入的输入数据分配至不同的虚拟数据通道;虚拟数据通道用于:将分配的虚拟通道数据加入不同的虚拟数据通道并进行缓存;多路选择器还用于:对多路虚拟数据通道中的虚拟通道数据进行有序输出,以形成第一数据包。
9.优选的,第一数据转换模块还包括数据仲裁器和数据路由器;第一数据转换模块的数据输入通道用于:接收来自物理数据通道的第一数据包;第一数据转换模块的数据仲裁器用于:对第一数据包进行接入仲裁;第一数据转换模块的所述数据路由器用于:将第一数据包向多个数据输出通道进行数据路由;第一数据转换模块的数据输出通道用于:将第一数据包发送至数据读写控制模块。
10.优选的,管理模块包括上位机双向交互接口和多个第一双向交互接口;上位机双向交互接口与上位机通信连接以进行数据交互;数据读写控制模块包括第二双向交互接口;管理模块的第一双向交互接口的数量和数据读写控制模块的数量一致;第一双向交互接口和数据读写控制模块的第二双向交互接口一一对应地通信连接;管理模块用于与数据读写控制模块进行控制信息交互。
11.优选的,所述系统还包括多个数据读出通道,以及通信连接于数据读写控制模块的第三数据转换模块;数据读出通道用于与外界设备通信连接;第三数据转换模块包括数据仲裁器、数据路由器、多个数据输入通道,以及多个数据输出通道;第三数据转换模块的数据输入通道的数量与数据读写控制模块的数量一致;第三数据转换模块的数据输出通道
的数量与数据读出通道的数量一致;第二数据转换模块包括数据仲裁器、数据路由器、多个从数据双向接口,以及多个主数据双向接口;第二数据转换模块的从数据双向接口的数量与数据读写控制模块的数量一致;第二数据转换模块的主数据双向接口的数量与高速硬盘接口转换模块的数量一致;数据读写控制模块还包括直接读写控制器模块、可信算法模块、数据输入接口、数据读出接口、第一主数据双向接口和第二主数据双向接口;每个可信算法模块包括加解密算法模块和摘要算法模块;各数据读写控制模块的数据输入接口与第一数据转换模块的各数据输出通道一一对应地通信连接;各数据读写控制模块的数据读出接口与第三数据转换模块的各数据输入通道一一对应地通信连接;各数据读写控制模块的第一主数据双向接口与各数据缓存模块的从数据双向交互接口一一对应地通信连接;各数据读写控制模块的第二主数据双向接口与第二数据转换模块的各从数据双向接口一一对应地连接;在数据读写控制模块内部,第二双向交互接口与直接读写控制器模块的第一信息交互接口通信连接;数据读写控制模块的数据输入接口与直接读写控制器模块的数据输入接口通信连接,直接读写控制器模块的数据输出接口与数据读写控制模块的数据读出接口通信连接,直接读写控制器模块的可信操作信息交互接口与加解密算法模块的第二信息交互接口通信连接;直接读写控制器模块的主数据双向交互接口与加解密算法模块的从数据双向交互接口通信连接;加解密算法模块的主数据双向交互接口与摘要算法模块的从数据双向交互接口通信连接;摘要算法模块的主数据双向交互接口与数据读写控制模块的第一主数据双向接口通信连接;直接读写控制器模块的数据双向接口与数据读写控制模块的第二主数据双向接口通信连接;数据读写控制模块还用于:将第三数据包写入数据缓存模块,并从数据缓存模块中读出第三数据包以传递至第二数据转换模块;数据读写控制模块还用于:当需要读取数据时,通过第二数据转换模块和高速硬盘接口转换模块从硬盘组接收第三数据包并存入数据缓存模块,然后从数据缓存模块中读出第三数据包并进行可信验证,然后将验证完成后的数据包传递至第三数据转换模块,然后通过第三数据转换模块将第三数据包发送至外界设备。
12.优选的,数据读写控制模块还用于:当摘要算法模块接收到上位机通过管理模块和第二双向交互接口接口输入的读盘控制信息时,通过直接读写控制器模块的数据双向接口向硬盘组发送读盘命令,然后接收来自硬盘组的与读盘控制信息对应的第三数据包,并将第三数据包通过直接读写控制器模块的主数据双向交互接口经过加解密算法模块和摘要算法模块进行直通处理后通过第一主数据双向接口接口写入数据缓存模块;直接读写控制器模块控制读出数据缓存模块中的第三数据包,并通过直接读写控制器模块的主数据双向交互接口输入至摘要算法模块进行可信验证;若可信验证通过则将第三数据包去掉第一摘要信息后以形成第四数据包,并将第四数据包通过加解密算法模块的第二主数据双向交互接口输入至加解密算法模块进行解密以形成第五数据包;将第五数据包经直接读写控制器模块的主数据双向交互接口输入至
直接读写控制器模块,然后通过直接读写控制器模块的数据输出接口将第五数据包转发至数据读出接口,然后通过数据读出接口将第五数据包发送至第三数据转换模块的数据输出通道,并通过第三数据转换模块的数据输出通道和数据读出通道将第五数据包发送至外界设备;若可信验证未通过则生成验证错误信号,然后将验证错误信号经直接读写控制器模块的第二双向交互接口返回至管理模块,其中,可信验证的过程为:通过摘要算法对第三数据包中的第二数据包进行计算,以得到与第二数据包对应的第二摘要信息,并比较第一摘要信息和第二摘要信息是否一致,若一致,则可信验证通过,若不一致,则可信验证不通过。
13.优选的,数据读写控制模块还用于:通过第二双向交互接口输入命令信息并基于直接读写控制器模块的主数据双向交互接口对数据缓存模块进行读写操作;通过直接读写控制器模块的主数据双向交互接口对硬盘组进行读写操作;通过直接读写控制器模块的数据输出接口读取硬盘组上的数据并进行输出;通过直接读写控制器模块的可信操作信息交互接口完成可信处理信息的转发操作;通过第二双向交互接口向管理模块返回控制信息;加解密算法模块用于:根据第二信息交互接口接收的可信处理信息,对加解密算法模块的从数据双向交互接口接收的需加密的数据包进行加密处理后由加解密算法模块的主数据双向交互接口转发至直接读写控制器模块;对无需加密的数据包进行直通处理后由加解密算法模块的主数据双向交互接口转发至直接读写控制器模块;对加解密算法模块的主数据双向交互接口接收的需解密的数据包进行解密处理后由加解密算法模块的数据从双向交互接口转发至直接读写控制器模块,对无需加密的数据包进行直通处理后由加解密算法模块的从数据双向交互接口转发至直接读写控制器模块;直接读写控制器模块用于:对加解密算法模块的主数据双向交互接口接收到的第二数据包进行摘要计算并将计算所得第一摘要信息与原第二数据包组成第三数据包,然后通过摘要算法模块的主数据双向交互接口向数据读写控制模块的第一主数据双向接口转发第三数据包;对摘要算法模块的主数据双向交互接口接收到的第三数据包进行摘要计算以得到第二摘要信息,并比对第一摘要信息和第二摘要信息是否一致,若一致则将去掉第二摘要信息的第三数据包通过摘要算法模块的从数据双向交互接口转发至加解密算法模块,若不一致则生成验证错误信号并通过摘要算法模块的从数据双向交互接口转发至加解密算法模块;对于摘要算法模块的主数据双向交互接口接收到无需加密的数据包直接通过摘要算法模块的从数据双向交互接口转发至加解密算法模块。
14.优选的,数据缓存模块包括从数据双向交互接口、缓存块控制模块和数据缓存块;数据缓存模块的从数据双向交互接口与缓存块控制模块的数据双向接口通信连接;缓存块控制模块的数据双向接口与数据缓存模块的数据缓存块的数据双向接口通信连接;数据缓存模块用于:根据数据读写控制模块发送的读写命令和数据,完成对数据的写入和读出;通过缓存块控制模块实现对数据读写控制模块发送的命令的解析和响应,并生成对数据缓存模块的数据缓存块的读写操作,以完成对数据的读出或写入。
15.通过上述技术方案,能实现以下有益效果:本发明提出的高速可信数据存储系统,由底层硬件数据读写控制模块dmm来完成
对外界设备输入的输入数据进行加密和摘要算法,即由底层硬件来完成数据的加密和完整性校验操作,相比传统的采用应用层软件来完成对于数据的加密和完整性校验的方案,能够提高运算速度且减少cpu运算资源消耗,且能够兼顾软件的可控的灵活性和硬件的可靠性和快速性;且本方案通过设置多个物理数据通道p_ch对数据进行缓存,能够降低对数据读写操作的性能瓶颈,提高数据读写速度。
附图说明
16.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
17.图1为本发明提出的一种高速可信数据存储系统的模块结构示意图;图2为本发明提出的一种高速可信数据存储系统的物理数据通道p_ch的模块结构示意图;图3为本发明提出的一种高速可信数据存储系统的第二数据转换模块switch2的模块结构示意图;图4为本发明提出的一种高速可信数据存储系统的数据读写控制模块dmm的模块结构示意图;图5为本发明提出的一种高速可信数据存储系统的数据缓存模块dat_cache的模块结构示意图。
18.附图标记说明:0、第一信息交互接口;1、数据输入接口;2、数据输出接口;3、可信操作信息交互接口;4、主数据双向交互接口;5、数据双向接口;6、第二信息交互接口;7、从数据双向交互接口;8、主数据双向交互接口;9、从数据双向交互接口;10、主数据双向交互接口;11、数据双向接口;12、数据双向接口;13、数据双向接口。
具体实施方式
19.应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
20.本发明提出一种高速可信数据存储系统。
21.如附图1至图5所示,在本发明提出的一种高速可信数据存储系统的一实施例中,所述系统包括第一数据转换模块switch1、第二数据转换模块switch2、管理模块admin、物理数据通道p_ch、数据读写控制模块dmm、高速硬盘接口转换模块dwc_ctl,以及硬盘组disk;数据读写控制模块dmm和物理数据通道p_ch均与第一数据转换模块switch1通信连接;第二数据转换模块switch2和管理模块admin均与数据读写控制模块dmm通信连接;第二数据转换模块switch2和硬盘组disk均与高速硬盘接口转换模块dwc_ctl通信连接;管理模块admin用于与上位机通信连接;物理数据通道p_ch用于与外界设备通信连接;这里的外界设备可以是用户的应用客户端(例如个人计算机)。
22.物理数据通道p_ch用于:从外界设备获取需要存储的输入数据,并生成第一数据包,然后通过第一数据转换模块switch1将第一数据包发送至数据读写控制模块dmm。
23.数据读写控制模块dmm用于:基于写控制信息对第一数据包进行加密以得到对应的第二数据包;然后通过摘要算法(digest算法)对第二数据包进行计算,以得到与第二数据包对应的第一摘要信息,并将第二数据包与对应的第一摘要信息打包为新的数据包,并标记为第三数据包,然后将第三数据包通过第二数据转换模块switch2和高速硬盘接口转换模块dwc_ctl输入硬盘组disk,其中,写控制信息由上位机通过管理模块admin发送至数据读写控制模块dmm,写控制信息包括需要将第三数据包写入硬盘组disk的存储位置。
24.本发明提出的高速可信数据存储系统,由底层硬件数据读写控制模块dmm来完成对外界设备输入的输入数据进行加密和摘要算法,即由底层硬件来完成数据的加密和完整性校验操作,相比传统的采用应用层软件来完成对于数据的加密和完整性校验的方案,能够提高运算速度且减少cpu运算资源消耗,且能够兼顾软件的可控的灵活性和硬件的可靠性和快速性;且本方案通过设置多个物理数据通道p_ch对数据进行缓存,能够降低对数据读写操作的性能瓶颈,提高数据读写速度。
25.此外,所述系统还包括数据缓存模块dat_cache,且数据缓存模块dat_cache为多个(例如m个);数据读写控制模块dmm与数据缓存模块dat_cache数量相等(即数据读写控制模块dmm的数量也为m个),且数据读写控制模块dmm与数据缓存模块dat_cache一一对应地通信连接;高速硬盘接口转换模块dwc_ctl和硬盘组disk数量均为多个(本实施例中高速硬盘接口转换模块dwc_ctl和硬盘组disk数量均为n个),高速硬盘接口转换模块dwc_ctl和硬盘组disk数量相等,且高速硬盘接口转换模块dwc_ctl和硬盘组disk一一对应地通信连接;物理数据通道p_ch的数量为多个(例如x个);上述x、m和n均为正整数。
26.物理数据通道p_ch还用于:将需要进行存储的输入数据进行整理和缓存后形成第一数据包。
27.第一数据转换模块switch1用于:将第一数据包通过联结转换输出至数据读写控制模块dmm。
28.数据读写控制模块dmm还用于:将第三数据包输入数据缓存模块dat_cache,当数据缓存模块dat_cache返回可写盘信息时,读取数据缓存模块dat_cache中的第三数据包,并输入第二数据转换模块switch2,其中,可写盘信息用于表述硬盘组disk的剩余空间能够存储第三数据包。
29.第二数据转换模块switch2用于:通过高速硬盘接口转换模块dwc_ctl将第三数据包写入硬盘组disk。
30.本实施例给出了物理数据通道p_ch、数据读写控制模块dmm和第二数据转换模块switch2的具体工作方案。
31.此外,如附图2所示,物理数据通道p_ch包括1个多路分配器dmux_p、1个多路选择器mux_p,以及多个虚拟数据通道v_ch(例如i个);每个虚拟数据通道v_ch包括1个数据缓存块v_ram;数据缓存块v_ram分别通信连接于多路分配器dmux_p和多路选择器mux_p。
32.物理数据通道p_ch还用于:根据外界设备发送的输入数据附带的数据信息对输入数据进行虚拟通道分配以形成虚拟通道数据;对虚拟通道数据进行整理和缓存,以形成第一数据包,然后将第一数据包输出至第一数据转换模块switch1。
33.本实施例给出了物理数据通道p_ch如何将第一数据包输出至第一数据转换模块switch1的具体方案。
34.此外,物理数据通道p_ch还包括数据输入接口sdin和数据输出接口mdout;每一物理数据通道p_ch的数据输入接口sdin分别与外界设备的不同数据写入通道通信连接,具体为:且第x个(x为正整数,且x≤x)物理数据通道p_ch的数据输入接口sdin
x
与外界设备的第x路数据写入通道datain channel
x
通信连接。
35.第一数据转换模块switch1包括多个数据输入通道sin和多个数据输出通道mout;第一数据转换模块switch1的数据输入通道sin的数量与物理数据通道p_ch的数量一致,第一数据转换模块switch1的数据输出通道mout数量与数据读写控制模块dmm的数量一致;具体的:第一数据转换模块switch1包括x个数据输入通道sin和m个数据输出通道mout;第x个物理数据通道p_ch的数据输出接口mdout
x
与第一数据转换模块switch1的第x个数据输入通道sin
x
通信连接;x为小于或等于x的正整数。
36.每个物理数据通道p_ch的数据输出接口mdout与第一数据转换模块switch1的各数据输入通道sin一一对应地通信连接。
37.在物理数据通道p_ch内部,物理数据通道p_ch的数据输入接口sdin与多路分配器dmux_p通信连接;多路分配器dmux_p的每个数据输出接口、对应的虚拟数据通道v_ch的数据输入接口、对应的虚拟数据传输通道v_ch的数据输出接口以及多路选择器mux_p中对应的数据输出接口依次通信连接。
38.具体的:多路分配器dmux_p的第i个数据输出接口与第i个虚拟数据通道v_ch的数据输入接口通信连接(i为正整数,且i≤i);第i个虚拟数据通道v_ch的数据输出接口与多路选择器mux_p的第i个数据输入接口通信连接;多路选择器mux_p的数据输出接口与物理数据通道p_ch的数据输出接口mdout通信连接;i为小于或等于i的正整数。
39.多路分配器dmux_p用于:根据数据信息将从多路分配器dmux_p的数据输入接口sdin输入的输入数据分配至不同的虚拟数据通道v_ch。
40.虚拟数据通道v_ch用于:将分配的虚拟通道数据加入不同的通道并进行缓存。
41.多路选择器mux_p还用于:对多路虚拟数据通道v_ch中的虚拟通道数据进行有序输出,以形成第一数据包。
42.具体的,本实施例给出了物理数据通道p_ch基于需要存储的输入数据生成第一数据包的具体方案。
43.此外,第一数据转换模块switch1还包括1个数据仲裁器arbiter和1个数据路由器router。
44.第一数据转换模块switch1的数据输入通道sin用于:接收来自物理数据通道p_ch的第一数据包。
45.第一数据转换模块switch1的数据仲裁器arbiter用于:对第一数据包进行接入仲裁。
46.第一数据转换模块switch1的所述数据路由器router用于:将第一数据包向多个数据输出通道mout进行数据路由。
47.第一数据转换模块switch1的数据输出通道mout用于:将第一数据包发送至数据读写控制模块dmm。
48.具体的,本实施例给出了第一数据转换模块switch1如何将第一数据包发送至数据读写控制模块dmm的具体方案。
49.此外,管理模块admin包括1个上位机双向交互接口和多个第一双向交互接口mkinout(具体为m个);上位机双向交互接口与上位机通信连接以进行数据交互,具体包括上位机的读盘控制信息的下发、写控制信息的下发、以及其他信息交互操作。
50.如附图4所示,数据读写控制模块dmm包括1个第二双向交互接口sminout;管理模块admin的第一双向交互接口mkinout的数量和数据读写控制模块dmm的数量一致;第一双向交互接口mkinout和数据读写控制模块dmm的第二双向交互接口sminout一一对应地通信连接;具体的:管理模块admin的第m个第一双向交互接口mkinoutm与第m个数据读写控制模块dmm的第二双向交互接口sminout通信连接(m为正整数,且m≤m),管理模块admin用于与数据读写控制模块dmm进行控制信息交互,控制信息包括第一摘要信息、可写盘信息和写控制信息;其中,m为小于或等于m的正整数。
51.本实施例给出了管理模块admin的具体结构和应用功能。
52.此外,所述系统还包括多个数据读出通道dataout(具体为y 个),以及通信连接于数据读写控制模块dmm的第三数据转换模块switch3;数据读出通道dataout用于与外界设备通信连接;第三数据转换模块switch3包括1个数据仲裁器arbiter、1个数据路由器router,多个数据输入通道sin(具体为m个),以及多个数据输出通道mout(具体为y个);y为正整数。
53.即第三数据转换模块switch3的数据输入通道sin的数量与数据读写控制模块dmm的数量一致;第三数据转换模块switch3的数据输出通道mout的数量与数据读出通道dataout的数量一致。
54.第二数据转换模块switch2包括m个从数据双向接口sinout(如附图3所示,sinoutm为第m个从数据双向接口)、1个数据仲裁器arbiter、1个数据路由器router,以及n个主数据双向接口minout(如附图3所示,minoutn为第n个主数据双向接口,n为小于或等于n的正整数)。
55.数据读写控制模块dmm还包括1个直接读写控制器模块dma、1个可信算法模块mm、1个数据输入接口sdin、1个数据读出接口mdout、1个第一主数据双向接口mdinout0和1个第二主数据双向接口mdinout1;每个可信算法模块mm包括1个加解密算法模块jma和1个摘要算法模块mda。
56.各数据读写控制模块dmm的数据输入接口sdin与第一数据转换模块switch1的各数据输出通道mout一一对应地通信连接;具体的:第m个数据读写控制模块dmm的数据输入接口sdinm与第一数据转换模块switch1的第m个数据输出通道moutm通信连接。
57.各数据读写控制模块dmm的数据读出接口mdout与第三数据转换模块switch3的各数据输入通道sin一一对应地通信连接;具体的:第m个数据读写控制模块dmm的数据读出接口mdout与第三数据转换模块switch3的第m个数据输入通道sinm通信连接。
58.各数据读写控制模块dmm的第一主数据双向接口mdinout0与各数据缓存模块dat_cacher的从数据双向交互接口srdinout一一对应地通信连接; 具体的:第m个数据读写控制模块dmm的第一主数据双向接口mdinout0与第m个数据缓存模块dat_cacher的从数据双向交互接口srdinout通信连接。
59.各数据读写控制模块dmm的第二主数据双向接口mdinout1与第二数据转换模块switch2的各从数据双向接口sinout一一对应地连接;具体的:第m个数据读写控制模块dmm
的第二主数据双向接口mdinout1与第二数据转换模块switch2的第m个从数据双向接口sinoutm连接。
60.在数据读写控制模块dmm内部,第二双向交互接口sminout与直接读写控制器模块dma的第一信息交互接口0通信连接;数据读写控制模块dmm的数据输入接口sdin与直接读写控制器模块dma的数据输入接口1通信连接,直接读写控制器模块dma的数据输出接口2与数据读写控制模块dmm的数据读出接口mdout通信连接,直接读写控制器模块dma的可信操作信息交互接口3与加解密算法模块jma的第二信息交互接口6通信连接;直接读写控制器模块dma的主数据双向交互接口4与加解密算法模块jma的从数据双向交互接口7通信连接;加解密算法模块jma的主数据双向交互接口8与摘要算法模块mda的从数据双向交互接口9通信连接;摘要算法模块mda的主数据双向交互接口10与数据读写控制模块dmm的第一主数据双向接口mdinout0通信连接;直接读写控制器模块dma的数据双向接口5与数据读写控制模块dmm的第二主数据双向接口mdinout1通信连接。
61.数据读写控制模块dmm还用于:将第三数据包写入数据缓存模块dat_cache,并从数据缓存模块dat_cache中读出第三数据包以传递至第二数据转换模块switch2。
62.具体的,即将第三数据包进行缓存,以及写入硬盘组disk进行存储。
63.数据读写控制模块dmm还用于:当需要读取数据时,通过第二数据转换模块switch2和高速硬盘接口转换模块dwc_ctl从硬盘组disk接收第三数据包并存入数据缓存模块dat_cache,然后从数据缓存模块dat_cache中读出第三数据包并进行可信验证,然后将验证完成后的数据包传递至第三数据转换模块switch3,然后通过第三数据转换模块switch3将第三数据包发送至外界设备。
64.具体的,本实施例给出了通过数据读写控制模块dmm读取数据的方案。
65.此外,数据读写控制模块dmm还用于:当摘要算法模块mda接收到上位机通过管理模块admin和第二双向交互接口sminout接口输入的读盘控制信息时,通过直接读写控制器模块dma的数据双向接口5向硬盘组disk发送读盘命令,然后接收来自硬盘组disk的与读盘控制信息对应的第三数据包,并将第三数据包通过直接读写控制器模块dma的主数据双向交互接口4经过加解密算法模块jma和摘要算法模块mda进行直通处理后通过第一主数据双向接口mdinout0接口写入数据缓存模块dat_cache;这里的读盘控制信息用于表述用户需要读取的数据于硬盘组disk中的存储地址。
66.直接读写控制器模块dma控制读出数据缓存模块dat_cache中的第三数据包,并通过直接读写控制器模块dma的主数据双向交互接口10输入至摘要算法模块mda进行可信验证。
67.若可信验证通过则将第三数据包去掉第一摘要信息后以形成第四数据包,并将第四数据包通过加解密算法模块jma的第二主数据双向交互接口8输入至加解密算法模块jma进行解密以形成第五数据包;将第五数据包经直接读写控制器模块dma的主数据双向交互接口4输入至直接读写控制器模块dma,然后通过直接读写控制器模块dma的数据输出接口2将第五数据包转发至数据读出接口mdout,然后通过数据读出接口mdout将第五数据包发送至第三数据转换模块switch3的数据输出通道mout,并通过第三数据转换模块switch3的数据输出通道mout和数据读出通道dataout将第五数据包发送至外界设备。
68.若可信验证未通过则生成验证错误信号,然后将验证错误信号经直接读写控制器模块dma的第二双向交互接口sminout返回至管理模块admin,其中,可信验证的过程为:通过摘要算法对第三数据包中的第二数据包进行计算,以得到与第二数据包对应的第二摘要信息,并比较第一摘要信息和第二摘要信息是否一致,若一致,则可信验证通过,若不一致,则可信验证不通过。
69.具体的,本实施例给出了通过数据读写控制模块dmm读取数据的具体方案。
70.此外,数据读写控制模块dmm还用于:通过第二双向交互接口sminout输入命令信息并基于直接读写控制器模块dma的主数据双向交互接口4对数据缓存模块dat_cache进行读写操作;通过直接读写控制器模块dma的主数据双向交互接口4对硬盘组disk进行读写操作;通过直接读写控制器模块dma的数据输出接口2读取硬盘组disk上的数据并进行输出;通过直接读写控制器模块dma的可信操作信息交互接口3完成可信处理信息(这里的可信处理信息包括加密算法的加密密钥、加密算法的解密密钥、初始向量、需加密的数据包(例如第一数据包)、需解密的数据包(例如第四数据包))的转发操作;通过第二双向交互接口sminout向管理模块admin返回控制信息;具体的,这里的控制信息包括写控制信息、第一摘要信息、验证错误信号、可写盘信息和读盘控制信息。
71.加解密算法模块jma用于:根据第二信息交互接口6接收的可信处理信息,对加解密算法模块jma的从数据双向交互接口7接收的需加密的数据包(例如第一数据包)进行加密处理后由加解密算法模块jma的主数据双向交互接口8转发至直接读写控制器模块dma;对无需加密的数据包(例如第三数据包和第五数据包)进行直通处理后由加解密算法模块jma的主数据双向交互接口8转发至直接读写控制器模块dma;对加解密算法模块jma的主数据双向交互接口8接收的需解密的数据包进行解密处理后由加解密算法模块jma的从数据双向交互接口7转发至直接读写控制器模块dma,对无需加密的数据包进行直通处理后由加解密算法模块jma的从数据双向交互接口7转发至直接读写控制器模块dma。
72.直接读写控制器模块dma用于:对加解密算法模块jma的主数据双向交互接口8接收到的第二数据包进行摘要计算并将计算所得第一摘要信息与原第二数据包组成第三数据包,然后通过摘要算法模块mda的主数据双向交互接口10向数据读写控制模块dmm的第一主数据双向接口mdinout0转发第三数据包。
73.对摘要算法模块mda的主数据双向交互接口10接收到的第三数据包进行摘要计算以得到第二摘要信息,并比对第一摘要信息和第二摘要信息是否一致,若一致则将去掉第二摘要信息的第三数据包通过摘要算法模块mda的从数据双向交互接口9转发至加解密算法模块jma,若不一致则生成验证错误信号并通过摘要算法模块mda的从数据双向交互接口9转发至加解密算法模块jma;对于摘要算法模块mda的主数据双向交互接口10接收到无需加密的数据包直接通过摘要算法模块mda的从数据双向交互接口9转发至加解密算法模块jma。
74.具体的,本实施例给出了在进行数据读写时,数据读写控制模块dmm的具体工作原理。
75.此外,如附图5所示,数据缓存模块dat_cache包括从数据双向交互接口srdinout、1个缓存块控制模块ram_ctal和1个数据缓存块dat_ram;数据缓存模块dat_cache的从数据
双向交互接口srdinout与缓存块控制模块ram_ctal的数据双向接口11通信连接;缓存块控制模块ram_ctal的数据双向接口12与数据缓存模块dat_cache的数据缓存块dat_ram的数据双向接口13通信连接。
76.数据缓存模块dat_cache用于:根据数据读写控制模块dmm发送的读写命令和数据,完成对数据的写入和读出;通过缓存块控制模块ram_ctal实现对数据读写控制模块dmm发送的命令的解析和响应,并生成对数据缓存模块dat_cache的数据缓存块dat_ram的读写操作,以完成对数据的读出或写入;数据缓存块dat_ram可以是ram、ddr、flash或其他能够完成数据快速写入和读出的存储器件、装置或设备。
77.具体的,本实施例给出了在进行数据读写时,数据缓存模块dat_cache的具体工作原理。
78.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
79.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
80.上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
技术特征:
1.一种高速可信数据存储系统,其特征在于,包括第一数据转换模块、第二数据转换模块、管理模块、物理数据通道、数据读写控制模块、高速硬盘接口转换模块,以及硬盘组;数据读写控制模块和物理数据通道均与第一数据转换模块通信连接;第二数据转换模块和管理模块均与数据读写控制模块通信连接;第二数据转换模块和硬盘组均与高速硬盘接口转换模块通信连接;管理模块用于与上位机通信连接;物理数据通道用于与外界设备通信连接;物理数据通道用于:从外界设备获取需要存储的输入数据,并生成第一数据包,然后通过第一数据转换模块将第一数据包发送至数据读写控制模块;数据读写控制模块用于:基于写控制信息对第一数据包进行加密以得到对应的第二数据包;然后通过摘要算法对第二数据包进行计算,以得到与第二数据包对应的第一摘要信息,并将第二数据包与对应的第一摘要信息打包为新的数据包,并标记为第三数据包,然后将第三数据包通过第二数据转换模块和高速硬盘接口转换模块输入硬盘组,其中,写控制信息由上位机通过管理模块发送至数据读写控制模块;所述系统还包括数据缓存模块,且数据缓存模块为多个;数据读写控制模块与数据缓存模块数量相等,且数据读写控制模块与数据缓存模块一一对应地通信连接;高速硬盘接口转换模块和硬盘组数量均为多个,高速硬盘接口转换模块和硬盘组数量相等,且高速硬盘接口转换模块和硬盘组一一对应地通信连接;物理数据通道的数量为多个;物理数据通道还用于:将需要进行存储的输入数据进行整理和缓存后形成第一数据包;第一数据转换模块用于:将第一数据包通过联结转换输出至数据读写控制模块;数据读写控制模块还用于:将第三数据包输入数据缓存模块,当数据缓存模块返回可写盘信息时,读取数据缓存模块中的第三数据包,并输入第二数据转换模块,其中,可写盘信息用于表述硬盘组的剩余空间能够存储第三数据包;第二数据转换模块用于:通过高速硬盘接口转换模块将第三数据包写入硬盘组。2.根据权利要求1所述的一种高速可信数据存储系统,其特征在于,物理数据通道包括多路分配器、多路选择器,以及多个虚拟数据通道;每个虚拟数据通道包括数据缓存块;数据缓存块分别通信连接于多路分配器和多路选择器;物理数据通道还用于:根据外界设备发送的输入数据附带的数据信息对输入数据进行虚拟通道分配以形成虚拟通道数据;对虚拟通道数据进行整理和缓存,以形成第一数据包,然后将第一数据包输出至第一数据转换模块。3.根据权利要求2所述的一种高速可信数据存储系统,其特征在于,物理数据通道还包括数据输入接口和数据输出接口;每一物理数据通道的数据输入接口分别与外界设备的不同数据写入通道通信连接;第一数据转换模块包括多个数据输入通道和多个数据输出通道;第一数据转换模块的数据输入通道的数量与物理数据通道的数量一致,第一数据转换模块的数据输出通道数量与数据读写控制模块的数量一致;每个物理数据通道的数据输出接口与第一数据转换模块的各数据输入通道一一对应地通信连接;在物理数据通道内部,物理数据通道的数据输入接口与多路分配器通信连接;多路分配器的每个数据输出接口、对应的虚拟数据通道的数据输入接口、对应的虚拟数据传输通道的数据输出接口以及多路选择器中对应的数据输出接口依次通信连接;多路选择器的数
据输出接口与物理数据通道的数据输出接口通信连接;多路分配器用于:根据数据信息将从多路分配器的数据输入接口输入的输入数据分配至不同的虚拟数据通道;虚拟数据通道用于:将分配的虚拟通道数据加入不同的虚拟数据通道并进行缓存;多路选择器还用于:对多路虚拟数据通道中的虚拟通道数据进行有序输出,以形成第一数据包。4.根据权利要求3所述的一种高速可信数据存储系统,其特征在于,第一数据转换模块还包括数据仲裁器和数据路由器;第一数据转换模块的数据输入通道用于:接收来自物理数据通道的第一数据包;第一数据转换模块的数据仲裁器用于:对第一数据包进行接入仲裁;第一数据转换模块的所述数据路由器用于:将第一数据包向多个数据输出通道进行数据路由;第一数据转换模块的数据输出通道用于:将第一数据包发送至数据读写控制模块。5.根据权利要求4所述的一种高速可信数据存储系统,其特征在于,管理模块包括上位机双向交互接口和多个第一双向交互接口;上位机双向交互接口与上位机通信连接以进行数据交互;数据读写控制模块包括第二双向交互接口;管理模块的第一双向交互接口的数量和数据读写控制模块的数量一致;第一双向交互接口和数据读写控制模块的第二双向交互接口一一对应地通信连接;管理模块用于与数据读写控制模块进行控制信息交互。6.根据权利要求5所述的一种高速可信数据存储系统,其特征在于,所述系统还包括多个数据读出通道,以及通信连接于数据读写控制模块的第三数据转换模块;数据读出通道用于与外界设备通信连接;第三数据转换模块包括数据仲裁器、数据路由器、多个数据输入通道,以及多个数据输出通道;第三数据转换模块的数据输入通道的数量与数据读写控制模块的数量一致;第三数据转换模块的数据输出通道的数量与数据读出通道的数量一致;第二数据转换模块包括数据仲裁器、数据路由器、多个从数据双向接口,以及多个主数据双向接口;第二数据转换模块的从数据双向接口的数量与数据读写控制模块的数量一致;第二数据转换模块的主数据双向接口的数量与高速硬盘接口转换模块的数量一致;数据读写控制模块还包括直接读写控制器模块、可信算法模块、数据输入接口、数据读出接口、第一主数据双向接口和第二主数据双向接口;每个可信算法模块包括加解密算法模块和摘要算法模块;各数据读写控制模块的数据输入接口与第一数据转换模块的各数据输出通道一一对应地通信连接;各数据读写控制模块的数据读出接口与第三数据转换模块的各数据输入通道一一对应地通信连接;各数据读写控制模块的第一主数据双向接口与各数据缓存模块的从数据双向交互接口一一对应地通信连接;各数据读写控制模块的第二主数据双向接口与第二数据转换模块的各从数据双向接口一一对应地连接;在数据读写控制模块内部,第二双向交互接口与直接读写控制器模块的第一信息交互接口通信连接;数据读写控制模块的数据输入接口与直接读写控制器模块的数据输入接口通信连接,直接读写控制器模块的数据输出接口与数据读写控制模块的数据读出接口通信
连接,直接读写控制器模块的可信操作信息交互接口与加解密算法模块的第二信息交互接口通信连接;直接读写控制器模块的第一主数据双向交互接口与加解密算法模块的第一从数据双向交互接口通信连接;加解密算法模块的第二主数据双向交互接口与摘要算法模块的第二从数据双向交互接口通信连接;摘要算法模块的第三主数据双向交互接口与数据读写控制模块的第一主数据双向接口通信连接;直接读写控制器模块的第一数据双向接口与数据读写控制模块的第二主数据双向接口通信连接;数据读写控制模块还用于:将第三数据包写入数据缓存模块,并从数据缓存模块中读出第三数据包以传递至第二数据转换模块;数据读写控制模块还用于:当需要读取数据时,通过第二数据转换模块和高速硬盘接口转换模块从硬盘组接收第三数据包并存入数据缓存模块,然后从数据缓存模块中读出第三数据包并进行可信验证,然后将验证完成后的数据包传递至第三数据转换模块,然后通过第三数据转换模块将第三数据包发送至外界设备。7.根据权利要求6所述的一种高速可信数据存储系统,其特征在于,数据读写控制模块还用于:当摘要算法模块接收到上位机通过管理模块和第二双向交互接口接口输入的读盘控制信息时,通过直接读写控制器模块的第一数据双向接口向硬盘组发送读盘命令,然后接收来自硬盘组的与读盘控制信息对应的第三数据包,并将第三数据包通过直接读写控制器模块的第一主数据双向交互接口经过加解密算法模块和摘要算法模块进行直通处理后通过第一主数据双向接口接口写入数据缓存模块;直接读写控制器模块控制读出数据缓存模块中的第三数据包,并通过直接读写控制器模块的第三主数据双向交互接口输入至摘要算法模块进行可信验证;若可信验证通过则将第三数据包去掉第一摘要信息后以形成第四数据包,并将第四数据包通过加解密算法模块的第二主数据双向交互接口输入至加解密算法模块进行解密以形成第五数据包;将第五数据包经直接读写控制器模块的第一主数据双向交互接口输入至直接读写控制器模块,然后通过直接读写控制器模块的数据输出接口将第五数据包转发至数据读出接口,然后通过数据读出接口将第五数据包发送至第三数据转换模块的数据输出通道,并通过第三数据转换模块的数据输出通道和数据读出通道将第五数据包发送至外界设备;若可信验证未通过则生成验证错误信号,然后将验证错误信号经直接读写控制器模块的第二双向交互接口返回至管理模块,其中,可信验证的过程为:通过摘要算法对第三数据包中的第二数据包进行计算,以得到与第二数据包对应的第二摘要信息,并比较第一摘要信息和第二摘要信息是否一致,若一致,则可信验证通过,若不一致,则可信验证不通过。8.根据权利要求7所述的一种高速可信数据存储系统,其特征在于,数据读写控制模块还用于:通过第二双向交互接口输入命令信息并基于直接读写控制器模块的第一主数据双向交互接口对数据缓存模块进行读写操作;通过直接读写控制器模块的第一主数据双向交互接口对硬盘组进行读写操作;通过直接读写控制器模块的数据输出接口读取硬盘组上的数据并进行输出;通过直接读写控制器模块的可信操作信息交互接口完成可信处理信息的转发操作;通过第二双向交互接口向管理模块返回控制信息;加解密算法模块用于:根据第二信息交互接口接收的可信处理信息,对加解密算法模
块的第一从数据双向交互接口接收的需加密的数据包进行加密处理后由加解密算法模块的第二主数据双向交互接口转发至直接读写控制器模块;对无需加密的数据包进行直通处理后由加解密算法模块的第二主数据双向交互接口转发至直接读写控制器模块;对加解密算法模块的第二主数据双向交互接口接收的需解密的数据包进行解密处理后由加解密算法模块的第一从数据双向交互接口转发至直接读写控制器模块,对无需加密的数据包进行直通处理后由加解密算法模块的第一从数据双向交互接口转发至直接读写控制器模块;直接读写控制器模块用于:对加解密算法模块的第二主数据双向交互接口接收到的第二数据包进行摘要计算并将计算所得第一摘要信息与原第二数据包组成第三数据包,然后通过摘要算法模块的第三主数据双向交互接口向数据读写控制模块的第一主数据双向接口转发第三数据包;对摘要算法模块的第三主数据双向交互接口接收到的第三数据包进行摘要计算以得到第二摘要信息,并比对第一摘要信息和第二摘要信息是否一致,若一致则将去掉第二摘要信息的第三数据包通过摘要算法模块的第二从数据双向交互接口转发至加解密算法模块,若不一致则生成验证错误信号并通过摘要算法模块的第二从数据双向交互接口转发至加解密算法模块;对于摘要算法模块的第三主数据双向交互接口接收到无需加密的数据包直接通过摘要算法模块的第二从数据双向交互接口转发至加解密算法模块。9.根据权利要求8所述的一种高速可信数据存储系统,其特征在于,数据缓存模块包括从数据双向交互接口、缓存块控制模块和数据缓存块;数据缓存模块的从数据双向交互接口与缓存块控制模块的第二数据双向接口通信连接;缓存块控制模块的第三数据双向接口与数据缓存模块的数据缓存块的第四数据双向接口通信连接;数据缓存模块用于:根据数据读写控制模块发送的读写命令和数据,完成对数据的写入和读出;通过缓存块控制模块实现对数据读写控制模块发送的命令的解析和响应,并生成对数据缓存模块的数据缓存块的读写操作,以完成对数据的读出或写入。
技术总结
本发明公开了一种高速可信数据存储系统,本发明提出的高速可信数据存储系统,由底层硬件数据读写控制模块来完成对外界设备输入的输入数据进行加密和摘要算法,即由底层硬件来完成数据的加密和完整性校验操作,相比传统的采用应用层软件来完成对于数据的加密和完整性校验的方案,能够提高运算速度且减少CPU运算资源消耗,且能够兼顾软件的可控的灵活性和硬件的可靠性和快速性;且本方案通过设置多个物理数据通道对数据进行缓存,能够降低对数据读写操作的性能瓶颈,提高数据读写速度。提高数据读写速度。提高数据读写速度。
技术研发人员:刘魁 王树 谢启友
受保护的技术使用者:湖南博匠信息科技有限公司
技术研发日:2023.06.07
技术公布日:2023/7/25
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种适用于抗干扰的零点扫描漏波天线 下一篇:一种抗热膨胀的柔性压电材料及其制备方法
