闪存数据的读取方法、装置、计算机设备和存储介质与流程

文档序号:31456487发布日期:2022-09-07 14:45阅读:182来源:国知局
闪存数据的读取方法、装置、计算机设备和存储介质与流程

1.本技术涉及芯片电路设计技术领域,特别是涉及一种闪存数据的读取方法、装置、计算机设备和存储介质。


背景技术:

2.随着信息安全技术的发展,出现了闪存数据的读取方法,这个技术可以禁止闪存外部对闪存数据进行读取操作,从而提高了闪存数据读取的安全性。
3.传统的闪存数据的读取方法是通过预设禁止调试功能、以及预设禁止执行静态随机存储器对闪存数据进行读取,从而实现禁止闪存外部对闪存数据进行读取操作。
4.然而,目前的闪存数据的读取方法,只禁止了闪存外部对闪存数据进行读取操作,闪存内部不同扇区之间数据的读取是允许的。若闪存的扇区a中的数据需要保密,但闪存的扇区b中存在能够读取扇区a中数据的程序,那么中央处理器在执行该程序时就可以将扇区a中的数据进行读取。因此,闪存数据的安全性较低。


技术实现要素:

5.基于此,有必要针对上述技术问题,提供一种能够通过禁止跨扇区读取闪存数据来提高闪存数据安全性的闪存数据的读取方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
6.第一方面,本技术提供了一种闪存数据的读取方法。所述方法包括:
7.所述中央处理器从所述目标闪存的第一扇区中读取指令数据;在所述指令数据指示读取所述目标闪存的第二扇区中的目标数据的情况下,通过所述总线控制器向所述闪存读取控制器发送第一控制信号、以及第一地址信号;
8.所述闪存读取控制器根据所述第一控制信号确定所述目标数据的类别,并根据所述第一地址信号确定所述目标数据的闪存地址;
9.在所述闪存读取控制器确定所述目标数据的类别为非指令数据、且所述目标数据的闪存地址处于预设的加密地址范围内的情况下,所述闪存读取控制器获取所述指令数据对应的闪存地址;
10.在所述闪存读取控制器确定所述指令数据对应的闪存地址不处于所述预设的加密地址范围内的情况下,所述闪存读取控制器向所述中央处理器返回读取失败响应信息。
11.在其中一个实施例中,所述中央处理器从目标闪存的第一扇区中读取指令数据之后,还包括:
12.所述中央处理器向指令地址寄存器发送第二控制信号、以及第二地址信号;
13.所述指令地址寄存器根据所述第二控制信号,确定所述第二控制信号对应的闪存数据的类别为所述指令数据;
14.所述指令地址寄存器根据所述第二地址信号,确定所述指令数据对应的闪存地址,并把所述指令数据对应的闪存地址寄存到所述指令地址寄存器。
15.在其中一个实施例中,所述方法还包括:
16.所述中央处理器根据所述预设的加密地址范围,产生总线写,并向加密控制寄存器发送所述总线写;
17.所述加密控制寄存器根据所述总线写,确定所述目标闪存的加密地址范围;
18.所述加密控制寄存器根据所述目标闪存的加密地址范围,生成并向所述闪存读取控制器发送起始加密地址配置信号、以及结束加密地址配置信号;
19.所述闪存读取控制器根据所述起始加密地址配置信号、以及所述结束加密地址配置信号,配置所述目标闪存的加密地址范围。
20.在其中一个实施例中,所述方法还包括:
21.所述指令地址寄存器根据当前寄存的地址,确定寄存地址信号,并向所述闪存读取控制器发送所述寄存地址信号;
22.所述闪存读取控制器根据所述寄存地址信号,确定所述指令数据对应的闪存地址。
23.在其中一个实施例中,所述方法还包括:
24.在所述闪存读取控制器确定所述目标数据的类别是指令数据的情况下,所述闪存读取控制器向中央处理器返回所述目标数据。
25.在其中一个实施例中,所述方法还包括:
26.在所述闪存读取控制器确定所述目标数据的类别为非指令数据、且所述目标数据的闪存地址不处于所述预设的加密地址范围内的情况下,所述闪存读取控制器向所述中央处理器返回所述目标数据。
27.在其中一个实施例中,所述方法还包括:
28.在所述闪存读取控制器确定所述指令数据对应的闪存地址处于所述预设的加密地址范围内的情况下,所述闪存读取控制器向所述中央处理器返回所述目标数据。
29.在其中一个实施例中,所述闪存读取控制器向所述中央处理器返回所述目标数据,包括:
30.所述闪存读取控制器向所述目标闪存发送总线读;
31.所述目标闪存根据所述总线读,确定所述目标数据,并向所述闪存读取控制器返回所述目标数据;
32.所述闪存读取控制器向所述中央处理器返回所述目标数据。
33.第二方面,本技术还提供了一种闪存数据读取系统。所述闪存数据读取系统包括中央处理器、总线控制器、闪存读取控制器、以及目标闪存;所述闪存读取控制器分别与所述中央处理器、所述目标闪存总线连接;所述总线控制器与闪存读取控制器分线连接;其中:
34.所述中央处理器,用于从所述目标闪存的第一扇区中读取指令数据;
35.所述总线控制器,用于在所述指令数据指示读取所述目标闪存的第二扇区中的目标数据的情况下,所述中央处理器通过所述总线控制器向所述闪存读取控制器发送第一控制信号、以及第一地址信号;
36.所述闪存读取控制器,用于根据所述第一控制信号确定所述目标数据的类别,并根据所述第一地址信号确定所述目标数据的闪存地址;
37.所述闪存读取控制器,还用于在确定所述目标数据的类别为非指令数据、且所述目标数据的闪存地址处于预设的加密地址范围的情况下,获取所述指令数据对应的闪存地址;
38.所述闪存读取控制器,还用于在确定所述指令数据对应的闪存地址不处于所述预设的加密地址范围内的情况下,向所述中央处理器返回读取失败响应信息。
39.在其中一个实施例中,所述系统还包括指令地址寄存器,其中:
40.所述中央处理器,用于向所述指令地址寄存器发送第二控制信号、以及第二地址信号;
41.所述指令地址寄存器,用于根据所述第二控制信号,确定所述第二控制信号对应的闪存数据的类别为所述指令数据;
42.所述指令地址寄存器,还用于根据所述第二地址信号,确定所述指令数据对应的闪存地址,并把所述指令数据对应的闪存地址寄存到所述指令地址寄存器。
43.在其中一个实施例中,所述系统还包括加密控制寄存器,其中:
44.所述中央处理器,用于根据所述预设的加密地址范围,产生总线写,并向加密控制寄存器发送所述总线写;
45.所述加密控制寄存器,用于根据所述总线写,确定所述目标闪存的加密地址范围;
46.所述加密控制寄存器,还用于根据所述目标闪存的加密地址范围,生成并向所述闪存读取控制器发送起始加密地址配置信号、以及结束加密地址配置信号;
47.所述闪存读取控制器,用于根据所述起始加密地址配置信号、以及所述结束加密地址配置信号,配置所述目标闪存的加密地址范围。
48.在其中一个实施例中,所述系统还包括指令地址寄存器,其中:
49.所述指令地址寄存器,用于根据当前寄存的地址,确定寄存地址信号,并向所述闪存读取控制器发送所述寄存地址信号;
50.所述闪存读取控制器,用于根据所述寄存地址信号,确定所述指令数据对应的闪存地址。
51.在其中一个实施例中,所述闪存读取控制器还用于:
52.在所述闪存读取控制器确定所述目标数据的类别是指令数据的情况下,向中央处理器返回所述目标数据。
53.在其中一个实施例中,所述闪存读取控制器还用于:
54.在所述闪存读取控制器确定所述目标数据的类别为非指令数据、且所述目标数据的闪存地址不处于所述预设的加密地址范围内的情况下,向所述中央处理器返回所述目标数据。
55.在其中一个实施例中,所述闪存读取控制器还用于:
56.在所述闪存读取控制器确定所述指令数据对应的闪存地址处于所述预设的加密地址范围内的情况下,向所述中央处理器返回所述目标数据。
57.在其中一个实施例中,所述系统还包括:
58.所述闪存读取控制器,用于向所述目标闪存发送总线读;
59.所述目标闪存,用于根据所述总线读,确定所述目标数据,并向所述闪存读取控制器返回所述目标数据;
60.所述闪存读取控制器,还用于向所述中央处理器返回所述目标数据。
61.第三方面,本技术还提供了一种计算机设备。所述计算机设备所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以第一方面所述的步骤。
62.第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以第一方面所述的步骤。
63.第五方面,本技术还提供了一种计算机程序产品。本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以第一方面所述的步骤。
64.上述闪存数据的读取方法、装置、计算机设备、存储介质和计算机程序产品,通过所述中央处理器从所述目标闪存的第一扇区中读取指令数据;在所述指令数据指示读取所述目标闪存的第二扇区中的目标数据的情况下,通过所述总线控制器向所述闪存读取控制器发送第一控制信号、以及第一地址信号;所述闪存读取控制器根据所述第一控制信号确定所述目标数据的类别,并根据所述第一地址信号确定所述目标数据的闪存地址;在所述闪存读取控制器确定所述目标数据的类别为非指令数据、且所述目标数据的闪存地址处于预设的加密地址范围内的情况下,所述闪存读取控制器获取所述指令数据对应的闪存地址;在所述闪存读取控制器确定所述指令数据对应的闪存地址不处于所述预设的加密地址范围内的情况下,所述闪存读取控制器向所述中央处理器返回读取失败响应信息。也就是说,若闪存的扇区a中的数据需要保密,闪存的扇区b中存在能够读取扇区a中数据的程序,那本技术方案可以将扇区a的地址进行加密,而不对扇区b进行加密,那么中央处理器在读取扇区b中的程序时,闪存读取控制器就会向中央处理器返回读取失败响应信息,从而禁止中央处理器读取闪存数据,从而提高闪存数据的安全性。
附图说明
65.图1为一个实施例中闪存数据的读取方法的应用环境图;
66.图2为一个实施例中闪存数据的读取方法的流程示意图;
67.图3为另一个实施例中闪存数据的读取方法的应用环境图;
68.图4为另一个实施例中加密地址范围的配置方法的流程示意图;
69.图5为一个实施例中计算机设备的内部结构图。
具体实施方式
70.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
71.本技术实施例提供的闪存数据的读取方法,可以应用于终端,也可以应用于服务器,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例以该方法应用于闪存数据读取系统进行举例说明,如图1所示,闪存数据读取系统包括中央处理器(central processing unit,cpu)102、总线控制器104、闪存读取控制器106、以及目标闪存(flash eeprom memory,flash)108。中央处理器102通过总线分别与总线控制器104、
闪存读取控制器106连接,总线控制器104通过分线与闪存读取控制器106连接,闪存读取控制器106通过总线与目标闪存108连接。其中,总线包括地址总线、控制总线、读信号总线。分线包括地址分线、控制分线、读信号分线。
72.中央处理器102通过总线从目标闪存108的第一扇区中读取指令数据,在该指令数据指示读取目标闪存108的第二扇区中的目标数据的情况下,通过总线向总线控制器104发送第一总线读。然后,总线控制器104根据第一总线读,解析得到目标数据的地址、目标数据的类别、以及操作类别,并且该操作类别是读。总线控制器104根据目标数据的地址,产生第一地址信号;根据目标数据的类别,产生第一控制信号;根据中央处理器的读操作,产生第一读信号。总线控制器104通过地址线向闪存读取控制器106发送第一地址信号,通过第一控制线向闪存读取控制器106发送第一控制信号,通过第二控制线向闪存读取控制器106发送第一读信号。闪存读取控制器106解析第一地址信号,得到目标数据的地址;解析第一控制信号,得到目标数据的类别。闪存读取控制106对目标数据的类别进行识别,判断目标数据的类别是否是非指令数据。在目标数据的类别是非指令数据的情况下,闪存读取控制器106对目标数据的地址进行识别,判断目标数据的地址是否处于预设的加密地址。在目标数据的地址处于预设的加密地址的情况下,闪存读取控制器106对指令数据对应的闪存地址进行识别,判断指令数据对应的闪存地址是否处于预设的加密地址。在指令数据对应的闪存地址不处于预设的加密地址的情况下,闪存读取控制器106通过总线向中央处理器102返回读取失败响应信息。可选的,读取失败响应信息可以是预设值,例如0等,也可以是随机生成的数据。
73.在一个实施例中,如图2所示,提供了一种闪存数据的读取方法,以该方法应用于图1中的闪存数据的读取系统为例进行说明,包括以下步骤:
74.步骤202,中央处理器从目标闪存的第一扇区中读取指令数据;在指令数据指示读取目标闪存的第二扇区中的目标数据的情况下,通过总线控制器向闪存读取控制器发送第一控制信号、以及第一地址信号。
75.其中,闪存数据是目标闪存108中存储的数据。闪存数据的类别包括指令数据、以及非指令数据。目标数据是指令数据指示中央处理器要读取的闪存数据。
76.本技术实施例中,中央处理器102从目标闪存108的第一扇区中读取指令数据,并对读取的指令数据进行解析。在中央处理器102解析指令数据,并获得指令数据指示的内容为读取的存储器数据。其中,存储器数据是存储器中存储的数据。可选的,存储器可以是目标闪存108、也可以是静态随机存取存储器(static random-access memory,sram)。在中央处理器102识别到读取的存储器数据包含目标闪存108的第二扇区中的目标数据的情况下,中央处理器102向总线控制器104发送第一总线读。总线控制器104对第一总线读进行解析,并筛选出与目标数据有关的信息。总线控制器104基于目标数据有关的信息,产生第一控制信号、以及第一地址信号,并向闪存读取控制器106发送第一控制信号、以及第一地址信号。其中,第一总线读包括第一控制总线信号、第一地址总线信号、以及第一读总线信号。与目标数据有关的信息包括目标数据的类别、目标数据的闪存地址、以及对目标数据的操作类别。
77.具体的,中央处理器102根据存储器数据的存储器地址,产生第一地址总线信号;根据存储器数据的数据类别,产生第一控制总线信号;根据对存储器数据进行的操作为读,
产生第一读总线信号。中央处理器102向总线控制器104发送第一地址总线信号、第一控制总线信号、以及第一读总线信号。总线控制器104对第一地址总线信号进行解析,得到存储器数据对应的存储器地址。总线控制器104根据预设的目标闪存的地址范围,对存储器数据对应的存储器地址进行筛选,得到目标数据对应的闪存地址。总线控制器104对第一控制总线信号进行解析,得到存储器数据对应的数据类别。总线控制器104根据目标数据对应的闪存地址,对存储器数据进行筛选,得到目标数据,进而得到目标数据对应的数据类别;对第一读总线信号进行解析,得到对存储器数据进行的操作类别为读,进而得到对目标数据进行的操作类别也为读操作。总线控制器104分别根据目标数据对应的闪存地址、目标数据对应的数据类别、读操作,产生目标数据对应的闪存地址对应的第一地址信号、目标数据对应的数据类别对应的第一控制信号、以及读操作对应的第一读信号。总线控制器104向闪存读取控制器106发送第一地址信号、第一控制信号、以及第一读信号。
78.步骤204,闪存读取控制器根据第一控制信号确定目标数据的类别,并根据第一地址信号确定目标数据的闪存地址。
79.其中,目标数据的类别包括非指令数据、以及指令数据。
80.本技术实施例中,闪存读取控制器106对第一控制信号进行解析,得到目标数据对应的数据类别;对第一地址信号进行解析,得到目标数据对应的闪存地址;对第一读信号进行解析,得到对目标数据进行的操作类别为读。
81.步骤206,在闪存读取控制器确定目标数据的类别为非指令数据、且目标数据的闪存地址处于预设的加密地址范围内的情况下,闪存读取控制器获取指令数据对应的闪存地址。
82.本技术实施例中,在闪存读取控制器106识别目标数据的类别为非指令数据的情况下,闪存读取控制器106根据预设的加密地址的范围,判断目标数据闪存地址是否处于预设的加密地址范围内。在闪存读取控制器106识别目标数据闪存地址处于预设的加密地址范围内的情况下,闪存读取控制器对寄存地址信号进行解析,得到指令数据对应的闪存地址。闪存读取控制器106根据指令数据对应的闪存地址,判断指令数据对应的闪存地址是否处于预设的加密地址范围内。其中,寄存地址信号是指令地址寄存器根据当前寄存的地址产生的,并向闪存读取控制器106发送的。
83.步骤208,在闪存读取控制器确定指令数据对应的闪存地址不处于预设的加密地址范围内的情况下,闪存读取控制器向中央处理器返回读取失败响应信息。
84.本技术实施例中,在闪存读取控制器106识别指令数据对应的闪存地址不处于预设的加密地址范围内的情况下,闪存读取控制器106向中央处理器返回读取失败响应信息。其中,读取失败响应信息可以是预设值,也可以是闪存读取控制器106随机生成的数据。
85.上述闪存数据的读取方法,通过总线控制器104筛选得到与目标数据有关的信息,并将该目标数据信息发送给闪存读取控制器106,闪存读取控制器106依次对目标数据的类别、目标数据的闪存地址、以及指令数据对应的闪存地址进行识别。在确定目标数据的类别为非指令数据、目标数据的闪存地址处于预设的加密地址范围内、并且指令数据对应的闪存地址不处于预设的加密地址范围内的情况下,闪存读取控制器106向中央处理器102返回读取失败响应信息。可以理解,返回读取失败响应信息相当于中央处理器102无法读取到真实数据,相当于读取失败,也就是相当于闪存读取控制器106禁止中央处理器102读取目标
闪存108中的非指令数据。那么,当闪存的扇区a中的数据需要保密,而闪存的扇区b中存在能够读取扇区a中数据的程序时,本技术方案可以将扇区a的地址进行加密,而不对扇区b进行加密。那么,中央处理器102在读取扇区b中的程序时,闪存读取控制器106就会向中央处理器102返回读取失败响应信息,相当于禁止中央处理器102读取闪存数据,从而提高闪存数据的安全性。
86.在一个实施例中,中央处理器从目标闪存的第一扇区中读取指令数据之后,还包括:
87.中央处理器向指令地址寄存器发送第二控制信号、以及第二地址信号;指令地址寄存器根据第二控制信号,确定第二控制信号对应的闪存数据的类别为指令数据;指令地址寄存器根据第二地址信号,确定指令数据对应的闪存地址,并把指令数据对应的闪存地址寄存到指令地址寄存器。
88.本实施例还可以应用于如图3所示的闪存数据读取系统。该闪存数据读取系统包括中央处理器102、总线控制器104、闪存读取控制器106、目标闪存108、指令地址寄存器302、以及加密控制寄存器304。中央处理器102通过总线分别与总线控制器104、闪存读取控制器106、加密控制寄存器304连接,总线控制器104通过分线分别与闪存读取控制器106、指令地址寄存器302连接,闪存读取控制器106通过总线与目标闪存108连接,指令地址寄存器302通过地址分线与闪存读取控制器106地址连接,加密控制寄存器304通过地址分线与闪存读取控制器106连接。
89.本技术实施例中,中央处理器102对指令数据进行识别,得到指令数据对应的类别、指令数据的闪存地址、以及操作类别。其中,指令数据对应的类别是指令数据,操作类别是读操作。中央处理器102根据指令数据的类别,产生第二控制总线信号;根据指令数据的闪存地址,产生第二地址总线信号;根据中央处理器的读操作,产生第二读总线信号。其中,第二总线读包括第二控制总线信号、第二地址总线信号、以及第二读总线信号。中央处理器102通过总线向总线控制器104发送第二总线读,总线控制器104对第二总线读进行解析,得到指令数据的类别、指令数据的闪存地址、以及操作类别。总线控制器104分别根据指令数据的类别、指令数据的闪存地址、以及操作类别,产生指令数据的类别对应的第二控制信号、指令数据的闪存地址对应的第二地址信号、以及操作类别对应的第二读信号,并向指令地址寄存器302发送第二控制信号、第二地址信号以及第二读信号。指令地址寄存器302对第二控制信号进行解析,得到指令数据对应的类别为指令数据。在指令地址寄存器302识别指令数据对应的类别为指令数据的情况下,指令地址寄存器302对第二地址信号进行解析,得到指令数据对应的闪存地址,并把该指令数据对应的闪存地址寄存到指令地址寄存器302。其中,指令地址寄存器302只寄存一条地址。可以理解,如果指令地址寄存器302已存储地址1,现在指令地址寄存器302把地址2存储到指令地址寄存器302后,地址1会被地址2冲掉,那么,当前指令地址寄存器302寄存的地址只有地址2。
90.在本实施例中,通过指令地址寄存器302对第二控制信号、第二地址信号、以及第二读信号进行解析,得到闪存数据对应的类别是指令数据、指令数据对应的闪存地址、以及操作类别是读操作。在指令地址寄存器302确定闪存数据对应的类别是指令数据的情况下,指令地址寄存器302把指令数据对应的闪存地址寄存到指令地址寄存器302中。因此,可以实现指令地址寄存器302中指令数据的闪存地址更新。
91.在一个实施例中,如图4所示,该方法还包括:
92.步骤402,中央处理器根据预设的加密地址范围,产生总线写,并向加密控制寄存器发送总线写。
93.本技术实施例中,中央处理器102根据预设的加密地址范围,产生总线写,并向加密控制寄存器304发送总线写。其中,总线写包括写总线信号、起始加密地址配置总线信号、以及结束加密地址配置总线信号。可以理解,如果预设的加密地址范围中的地址是连续地址,那么只要发送一对起始加密地址配置总线信号和结束加密地址配置总线信号。如果预设的加密地址范围中的地址是不连续的地址,那么中央处理器102识别预设的加密地址范围中的多个连续地址,并分别产生对应的起始加密地址配置总线信号和结束加密地址配置总线信号。例如,假设预设的加密地址范围是目标闪存中的扇区a、以及扇区c,其中扇区a和扇区c的地址是不连续的,而每个扇区内的地址是连续的。那么,中央处理器102根据扇区a中的闪存地址,产生一对起始加密地址配置总线信号1和结束加密地址配置总线信号1;根据扇区c中的闪存地址,产生一对起始加密地址配置总线信号2和结束加密地址配置总线信号2。
94.步骤404,加密控制寄存器根据总线写,确定目标闪存的加密地址范围。
95.本技术实施例中,加密控制寄存器304对写总线信号进行解析,得到操作类别是写;对起始加密地址配置总线信号进行解析,得到目标闪存的加密地址范围对应的起始地址;对结束加密地址配置总线信号进行解析,得到目标闪存的加密地址范围对应的结束地址。
96.步骤406,加密控制寄存器根据目标闪存的加密地址范围,生成并向闪存读取控制器发送起始加密地址配置信号、以及结束加密地址配置信号。
97.本技术实施例中,加密控制寄存器304根据目标闪存的加密地址范围对应的起始地址,产生起始加密地址配置信号;根据目标闪存的加密地址范围对应的结束地址,产生结束加密地址配置信号;根据操作类别是写,产生写信号。加密控制寄存器304向闪存读取控制器106发送起始加密地址配置信号、结束加密地址配置信号以及写信号。
98.步骤408,闪存读取控制器根据起始加密地址配置信号、以及结束加密地址配置信号,配置目标闪存的加密地址范围。
99.闪存读取控制器106对写信号进行解析,确定操作类型是写操作;对起始加密地址配置信号,得到目标闪存的加密地址范围对应的起始地址;对结束加密地址配置信号,得到目标闪存的加密地址范围对应的结束地址。闪存读取控制器106根据该起始地址、以及该结束地址,对目标闪存的加密地址的范围进行配置。
100.在本实施例中,通过预设的加密地址,闪存读取控制器106对目标闪存的加密地址进行配置。这样,闪存读取控制器106就可以根据目标闪存的加密地址范围,去判断读取的闪存数据的地址、或者读取的指令数据的地址是否处于加密地址范围,进而确定中央处理器是否在执行不处于加密地址范围内的指令,并且该指令的作用是读取处于加密地址范围内的闪存数据。当判断中央处理器是在执行不处于加密地址范围内的指令、并且该指令的作用是读取处于加密地址范围内的闪存数据的情况下,闪存读取控制器向中央处理器返回读取失败响应信息,因此,提高闪存数据的安全性。
101.在一个实施例中,该方法还包括:
102.指令地址寄存器根据当前寄存的地址,确定寄存地址信号,并向闪存读取控制器发送寄存地址信号;闪存读取控制器根据寄存地址信号,确定指令数据对应的闪存地址。
103.本技术实施例中,指令地址寄存器302根据当前寄存的地址,产生寄存地址信号,从向闪存读取控制器106发送该寄存地址信号。闪存读取控制器106对该寄存地址信号进行解析,得到指令数据对应的闪存地址。具体的,在中央处理器102从目标闪存108的第一扇区中读取指令数据的情况下,指令地址寄存器302将指令数据对应的闪存地址寄存到指令地址寄存器302中。在中央处理器102解析指令数据,并得到指令数据指示读取目标闪存108的第二扇区的目标数据的情况下,总线控制器104分别向指令地址寄存器302、以及闪存读取控制器106发送第一控制信号、第一地址信号、以及第一读信号。指令地址寄存器302对第一读信号进行解析,确定操作类型为读操作;对第一控制信号进行解析,得到目标数据的类别为非指令数据。在指令地址寄存器302确定目标数据的类别为非指令数据的情况下,指令地址寄存器302不对所寄存的地址进行更新。可以理解,经过上述两次工作过程,指令地址寄存器302当前的寄存地址是指令数据对应的地址。
104.在本实施例中,通过指令地址寄存器302去识别数据的类型是否是指令数据,只有是指令数据的情况下,才将数据对应的闪存地址寄存在指令地址寄存器302中。并把指令地址寄存器302当前寄存的地址对应的地址信号发送给闪存读取控制器106,进而闪存读取控制器得到指令地址寄存器302当前的寄存地址。可以理解,由于指令地址寄存器302只寄存指令数据的地址,所以闪存读取控制器得到的当前的寄存地址也就是指令数据的地址,从而为闪存读取控制器提供了指令数据的地址。
105.在一个实施例中,该方法还包括:
106.在闪存读取控制器确定目标数据的类别是指令数据的情况下,闪存读取控制器向中央处理器返回目标数据。
107.本技术实施例中,在闪存读取控制器106识别目标数据的类别为指令数据的情况下,闪存读取控制器106向目标闪存108发送第三总线读,目标闪存108解析第三总线读,得到目标数据对应的闪存地址,并根据该目标数据对应的闪存地址,获得目标数据。目标闪存108向闪存读取控制器106发送目标数据。闪存读取控制器106向中央处理器102发送目标数据。
108.在本实施例中,闪存读取控制器106通过判断目标数据的类别,来确定是否向中央处理器102返回目标数据。在闪存读取控制器106确定目标数据的类别为指令数据的情况下,闪存读取控制器106才向中央处理器102返回目标数据。也就是说,中央处理器102读取目标闪存108中的目标数据用作指令时,中央处理器102是可以读取得到目标数据的。也就是说,中央处理器102可以执行目标闪存中任一扇区的指令数据,而中央处理器102读取目标闪存中任一扇区的非指令数据却不一定能读取得到数据,从而提高闪存数据读取的安全性。
109.在一个实施例中,该方法还包括:
110.在闪存读取控制器确定目标数据的类别为非指令数据、且目标数据的闪存地址不处于预设的加密地址范围内的情况下,闪存读取控制器向中央处理器返回目标数据。
111.本技术实施例中,在闪存读取控制器106识别目标数据的类别是非指令数据、并判断得到目标数据的闪存地址处于预设的加密地址范围内的情况下,闪存读取控制器106向
目标闪存108发送第三总线读,目标闪存108解析第三总线读,得到目标数据对应的闪存地址,并根据该目标数据对应的闪存地址,获得目标数据。目标闪存108向闪存读取控制器106发送目标数据。闪存读取控制器106向中央处理器102发送目标数据。
112.在本实施例中,在目标数据的类别是非指令数据的情况下,闪存读取控制器106通过判断目标数据的闪存地址是否处于预设的加密地址范围内,来确定是否向中央处理器102返回目标数据。只有在目标数据的闪存地址不处于预设的加密地址范围内的情况下,闪存读取控制器106才向中央处理器102返回目标数据。也就是说,中央处理器102可以读取不在预设加密地址范围内的非指令数据,而在预设加密地址范围内的非指令数据不一定能读取得到数据,从而提高闪存数据的安全性。
113.在一个实施例中,该方法还包括:
114.在闪存读取控制器确定指令数据对应的闪存地址处于预设的加密地址范围内的情况下,闪存读取控制器向中央处理器返回目标数据。
115.本技术实施例中,在目标数据的类别是非指令数据、目标数据的闪存地址处于预设的加密地址范围内、以及指令数据对应的闪存地址处于预设的加密地址范围内的情况下,闪存读取控制器106向目标闪存108发送第三总线读,目标闪存108解析第三总线读,得到目标数据对应的闪存地址,并根据该目标数据对应的闪存地址,获得目标数据。目标闪存108向闪存读取控制器106发送目标数据。闪存读取控制器106向中央处理器102发送目标数据。
116.在实施例中,在目标数据是非指令数据、目标数据的闪存地址是加密地址、并且读取目标数据的指令数据的闪存地址也处于加密地址的情况下,闪存读取控制器106向中央处理器返回目标数据。也就是说,在中央处理器102读取目标闪存108中的指令数据、并且该指令数据指示读取的目标数据与指令数据都处于加密地址范围内的情况下,中央处理器可以读取目标数据。所以,若目标闪存的扇区a的地址处于预设的加密地址范围,扇区a中存储指令数据1,而指令数据1的作用是读取扇区a中的非指令数据1,那么中央处理器是可以读取非指令数据1的,因此,本方案的实用性高。
117.在一个实施例中,闪存读取控制器向中央处理器返回目标数据,包括:
118.闪存读取控制器向目标闪存发送总线读;目标闪存根据总线读,确定目标数据,并向闪存读取控制器返回目标数据;闪存读取控制器向中央处理器返回目标数据。
119.其中,总线读(与上述第三总线读为同一信号,为了保持描述一致,下面也统一称为第三总线读)包括目标数据地址信号、以及目标数据读信号。
120.本技术实施例中,闪存读取控制器106根据目标数据对应的闪存地址,产生目标数据地址信号;根据读操作,产生目标数据读信号。闪存读取控制器106向目标闪存108发送目标数据地址信号、以及目标数据读信号。目标闪存108对目标数据地址信号进行解析,得到目标数据对应的闪存地址;对目标数据读信号进行解析,得到读操作。目标闪存108根据目标数据对应的闪存地址,读取得到目标数据,并把目标数据发送给闪存读取控制器106。在闪存读取控制器106接收到目标数据的情况下,闪存读取控制器106向中央处理器102发送目标数据。
121.在本实施例中,在目标闪存108接收到闪存读取控制器106发送的第三总线读的情况下,目标闪存108向闪存读取控制器106发送目标数据,然后闪存读取控制器106再向中央
处理器102返回目标数据。因此,只有在闪存读取控制器106向目标闪存108发送的第三总线读的情况下,中央处理器才能读取目标数据,提高闪存数据的安全性。
122.应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
123.基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的闪存数据的读取方法的闪存数据的读取系统。该系统所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个闪存数据的读取系统实施例中的具体限定可以参见上文中对于闪存数据的读取方法的限定,在此不再赘述。
124.在一个实施例中,如图1所示,闪存数据读取系统包括中央处理器102、总线控制器104、闪存读取控制器106、以及目标闪存108;中央处理器102分别与总线控制器104、闪存读取控制器106通过总线连接,总线控制器104与闪存读取控制器106通过分线连接,闪存读取控制器106与目标闪存108通过总线连接;其中:
125.中央处理器102,用于从目标闪存108的第一扇区中读取指令数据;
126.总线控制器104,用于在指令数据指示读取目标闪存108的第二扇区中的目标数据的情况下,中央处理器102通过总线控制器104向闪存读取控制器106发送第一控制信号、以及第一地址信号;
127.闪存读取控制器106,用于根据第一控制信号确定目标数据的类别,并根据第一地址信号确定目标数据的闪存地址;
128.闪存读取控制器106,还用于在确定目标数据的类别为中央处理器102数据、且目标数据的闪存地址处于预设的加密地址范围的情况下,获取指令数据对应的闪存地址;
129.闪存读取控制器106,还用于在确定指令数据对应的闪存地址不处于预设的加密地址范围内的情况下,向中央处理器102返回读取失败响应信息。
130.在其中一个实施例中,如图3所示,该闪存数据读取系统还包括指令地址寄存器302、以及指令地址寄存器304,其中:
131.中央处理器102,用于向指令地址寄存器302发送第二控制信号、以及第二地址信号;
132.指令地址寄存器302,用于根据第二控制信号,确定第二控制信号对应的闪存数据的类别为指令数据;
133.指令地址寄存器302,还用于根据第二地址信号,确定指令数据对应的闪存地址,并把指令数据对应的闪存地址寄存到指令地址寄存器302。
134.在其中一个实施例中,该系统还包括指令地址寄存器304,其中:
135.中央处理器102,用于根据预设的加密地址范围,产生总线写,并向指令地址寄存器304发送总线写;
136.指令地址寄存器304,用于根据总线写,确定目标闪存108的加密地址范围;
137.指令地址寄存器304,还用于根据目标闪存108的加密地址范围,生成并向闪存读取控制器106发送起始加密地址配置信号、以及结束加密地址配置信号;
138.闪存读取控制器106,用于根据起始加密地址配置信号、以及结束加密地址配置信号,配置目标闪存108的加密地址范围。
139.在其中一个实施例中,该系统还包括指令地址寄存器302,其中:
140.指令地址寄存器302,用于根据当前寄存的地址,确定寄存地址信号,并向闪存读取控制器106发送寄存地址信号;
141.闪存读取控制器106,用于根据寄存地址信号,确定指令数据对应的闪存地址。
142.在其中一个实施例中,闪存读取控制器106还用于:
143.在闪存读取控制器106确定目标数据的类别是指令数据的情况下,向中央处理器102返回目标数据。
144.在其中一个实施例中,闪存读取控制器106还用于:
145.在闪存读取控制器106确定目标数据的类别为中央处理器102数据、且目标数据的闪存地址不处于预设的加密地址范围内的情况下,向中央处理器102返回目标数据。
146.在其中一个实施例中,闪存读取控制器106还用于:
147.在闪存读取控制器106确定指令数据对应的闪存地址处于预设的加密地址范围内的情况下,向中央处理器102返回目标数据。
148.在其中一个实施例中,该系统还包括:
149.闪存读取控制器106,用于向目标闪存108发送总线读;
150.目标闪存108,用于根据总线读,确定目标数据,并向闪存读取控制器106返回目标数据;
151.闪存读取控制器106,还用于向中央处理器102返回目标数据。
152.上述闪存数据读取系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
153.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、移动蜂窝网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种闪存数据读取方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
154.本领域技术人员可以理解,图5中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
155.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构
图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、移动蜂窝网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种恶意代码的检测方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
156.本领域技术人员可以理解,图5中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
157.在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
158.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
159.在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
160.需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
161.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
162.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
163.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1