数据处理方法、电路、终端设备及存储介质技术

技术编号:25354033 阅读:22 留言:0更新日期:2020-08-21 17:11
本申请提供一种数据处理方法、电路、终端设备及存储介质。包括:在从闪存中读取第一数据之前,或者,在从闪存中读取第一数据过程中,根据所述第一数据的物理起始地址生成所述第一数据的解密密钥流;通过所述解密密钥流对所述第一数据进行解密,并将解密后的所述第一数据写入缓存中。从而可以降低数据解密时延。

【技术实现步骤摘要】
【国外来华专利技术】数据处理方法、电路、终端设备及存储介质
本申请涉及数据处理领域,尤其涉及一种数据处理方法、电路、终端设备及存储介质。
技术介绍
随着信息技术的飞速发展,越来越多的嵌入式片上系统(System-on-a-chip,SoC)产品使用外挂闪存(FLASH)来存储程序代码等数据,以降低产品成本。为了实现数据的安全性,需要对存储在外挂FLASH的数据进行加密。相应的,对于具有本地加载代码程序直接执行(ExecuteInPlace,XIP)功能的SOC芯片,要求在芯片上电或运行期间,直接从外挂FLASH加载数据,并快速对加载的数据进行解密,将解密后的数据加载到缓存(cache)中,以供微控制单元(MicrocontrollerUnit,MCU)执行。因此数据解密时延是衡量产品好坏的一项重要性能,那么如何进行数据解密,才能降低数据解密时延是本领域亟待解决的技术问题。
技术实现思路
本申请提供一种数据处理方法、电路、终端设备及存储介质,从而可以降低数据解密时延。第一方面,本申请提供一种数据处理方法,包括:在从闪存中读取第一数据之前,或者,在从闪存中读取第一数据过程中,根据第一数据的物理起始地址生成第一数据的解密密钥流;通过解密密钥流对第一数据进行解密,并将解密后的第一数据写入缓存中。基于此,只要数据处理电路获取到第一数据,该第一数据的解密密钥流也已预先生成好了,使得数据处理电路可以直接对第一数据进行解密,从而可以降低数据解密时延。可选地,当第一数据是首个第一数据时,从微控制单元MCU获取第一数据的逻辑起始地址,并根据逻辑起始地址确定第一数据的物理起始地址;当第一数据不是首个第一数据时,根据首个第一数据的物理起始地址,以及,第一数据与首个第一数据的物理起始地址之间的偏移量,确定第一数据的物理起始地址。通过该方法可以有效的确定第一数据的物理起始地址。可选地,当接收到第一使能信号时,确定第一数据是首个第一数据;当接收到第二使能信号时,确定第一数据不是首个第一数据,其中,第一使能信号不同于第二使能信号。可选地,通过解密密钥流对第一数据进行解密,包括:当解密密钥流和第一数据长度相同时,对解密密钥流和第一数据采用异或操作,以对第一数据进行解密;当解密密钥流的长度大于第一数据的长度时,按照第一数据的长度截取解密密钥流,并对截取后的解密密钥流和第一数据采用异或操作,以对第一数据进行解密。在本实施例中,数据处理电路可以对解密密钥流和第一数据采用流加密方式的异或操作,以解密第一数据,由于异或操作是组合电路,通过该方式可以进一步地降低数据解密时延。可选地,还包括:根据第二数据的物理起始地址生成第二数据的加密密钥流;通过加密密钥流对第二数据进行加密,并将加密后的第二数据写入闪存中。在本实施例中,对于同一数据,其对应的加密密钥流与解密密钥流相同,即实现了加密密钥和解密密钥的同步。可选地,当第二数据是首个第二数据时,从MCU获取第二数据的逻辑起始地址,并根据逻辑起始地址确定第二数据的物理起始地址;当第二数据不是首个第二数据时,根据首个第二数据的物理起始地址,以及,第二数据与首个第二数据的物理起始地址之间的偏移量,确定第二数据的物理起始地址。通过该方法可以有效的确定第二数据的物理起始地址。可选地,通过加密密钥流对第二数据进行加密,包括:当加密密钥流和第二数据长度相同时,对加密密钥流和第二数据采用异或操作,以对第二数据进行加密;当加密密钥流的长度大于第二数据的长度时,按照第二数据的长度截取加密密钥流,并对截取后的加密密钥流和第二数据采用异或操作,以对第二数据进行加密。在本实施例中,数据处理电路可以对加密密钥流和第二数据采用异或操作,以解密第二数据,由于异或操作是组合电路,通过该方式可以提高数据加密效率。第二方面,本申请提供一种数据处理电路,包括:第一生成模块,用于在从闪存中读取第一数据之前,或者,在从闪存中读取第一数据过程中,根据第一数据的物理起始地址生成第一数据的解密密钥流;解密模块,用于通过解密密钥流对第一数据进行解密,并将解密后的第一数据写入缓存中。第三方面,本申请提供一种数据处理电路,包括:处理器;用于存储所述处理器的可执行指令的存储器,以使所述处理器执行如第一方面或第一方面的可选方式所述的数据处理方法。第四方面,本申请提供一种终端设备,包括:如第二方面或第三方面的数据处理电路、MCU和闪存。其中,所述数据处理电路的两端分别于所述MCU和所述闪存连接。第五方面,本申请提供一种存储介质,包括:可执行指令,所述指令用于实现如第一方面或第一方面的可选方式所述的数据处理方法。第六方面,本申请提供一种计算机程序产品,包括:可执行指令,所述指令用于实现如第一方面或第一方面的可选方式所述的数据处理方法。本申请提供数据处理方法、电路、终端设备及存储介质。其中,数据处理电路可以在从闪存中读取第一数据之前,或者,在从闪存中读取第一数据过程中,数据处理电路根据第一数据的物理起始地址生成第一数据的解密密钥流。基于此,只要数据处理电路获取到第一数据,该第一数据的解密密钥流也已经预先生成好了,使得数据处理电路可以直接对第一数据进行解密,从而可以降低数据解密时延。可选地,在本实施例中,数据处理电路可以对解密密钥流和第一数据采用异或操作,以解密第一数据,由于异或操作是组合电路,通过该方式可以进一步地降低数据解密时延。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为现有技术提供的一种嵌入式SOC芯片和外挂FLASH的示意图;图2为本申请一实施例提供的一种数据处理方法的流程图;图3为本申请一实施例提供的指令和数据传输的示意图;图4为本申请一实施例提供的闪存控制器内部模块以及数据处理流程的示意图;图5为本申请另一实施例提供的一种数据处理方法的流程图;图6为本申请另一实施例提供的闪存控制器内部模块以及数据处理流程的示意图;图7为本申请一实施例提供的一种数据处理电路的示意图;图8为本申请一实施例提供的嵌入式SOC芯片和外挂FLASH的示意图。具体实施方式为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以本文档来自技高网...

【技术保护点】
一种数据处理方法,其特征在于,包括:/n在从闪存中读取第一数据之前,或者,在从闪存中读取第一数据过程中,根据所述第一数据的物理起始地址生成所述第一数据的解密密钥流;/n通过所述解密密钥流对所述第一数据进行解密,并将解密后的所述第一数据写入缓存中。/n

【技术特征摘要】
【国外来华专利技术】一种数据处理方法,其特征在于,包括:
在从闪存中读取第一数据之前,或者,在从闪存中读取第一数据过程中,根据所述第一数据的物理起始地址生成所述第一数据的解密密钥流;
通过所述解密密钥流对所述第一数据进行解密,并将解密后的所述第一数据写入缓存中。


根据权利要求1所述的方法,其特征在于,还包括:
当所述第一数据是首个第一数据时,从微控制单元MCU获取所述第一数据的逻辑起始地址,并根据所述逻辑起始地址确定所述第一数据的物理起始地址;
当所述第一数据不是首个第一数据时,根据所述首个第一数据的物理起始地址,以及,所述第一数据与所述首个第一数据的物理起始地址之间的偏移量,确定所述第一数据的物理起始地址。


根据权利要求2所述的方法,其特征在于,还包括:
当接收到第一使能信号时,确定所述第一数据是首个第一数据;
当接收到第二使能信号时,确定所述第一数据不是首个第一数据,其中,所述第一使能信号不同于所述第二使能信号。


根据权利要求1-3任一项所述的方法,其特征在于,所述通过所述解密密钥流对所述第一数据进行解密,包括:
当所述解密密钥流和所述第一数据长度相同时,对所述解密密钥流和所述第一数据采用异或操作,以对所述第一数据进行解密;
当所述解密密钥流的长度大于所述第一数据的长度时,按照所述第一数据的长度截取所述解密密钥流,并对截取后的解密密钥流和所述第一数据采用异或操作,以对所述第一数据进行解密。


根据权利要求1-3任一项所述的方法,其特征在于,还包括:
根据第二数据的物理起始地址生成所述第二数据的加密密钥流;
通过所述加密密钥流对所述第二数据进行加密,并将加密后的所述第二数据写入闪存中。


根据权利要求5所述的方法,其特征在于,还包括:
当所述第二数据是首个第二数据时,从MCU获取所述第二数据的逻辑起始地址,并根据所述逻辑起始地址确定所述第二数据的物理起始地址;
当所述第二数据不是首个第二数据时,根据所述首个第二数据的物理起始地址,以及,所述第二数据与所述首个第二数据的物理起始地址之间的偏移量,确定所述第二数据的物理起始地址。


根据权利要求5所述的方法,其特征在于,所述通过所述加密密钥流对所述第二数据进行加密,包括:
当所述加密密钥流和所述第二数据长度相同时,对所述加密密钥流和所述第二数据采用异或操作,以对所述第二数据进行加密;
当所述加密密钥流的长度大于所述第二数据的长度时,按照所述第二数据的长度截取所述加密密钥流,并对截取后的加密密钥流和所述第二数据采用异或操作,以对所述第二数据进行加密。


一种数据处理电路,其特征在于,包括:
第一生成模块,用于在从闪存中读取第一数据之前,或者,在从闪存中读取第一数据过程中,根据所述第一数据的物理起始地址生成所述第一数据的解密密钥流;
解密模块,用于通过所述解密密钥流对所述第一数据进行解密,并将解密后的所述第一数据写入缓存中。


根据权利要求8所述的电路,其特征...

【专利技术属性】
技术研发人员:韦健王冬格申艾麟
申请(专利权)人:深圳市汇顶科技股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1