本技术涉及闪存,特别涉及一种闪存接口电路、闪存控制方法、电子设备及存储介质。
背景技术:
1、在嵌入式系统中,闪存作为一种非易失性存储器,存储在内的数据不会因为掉电而丢失,能够多次擦除编程,通常用来存储程序代码,系统管理参数及用户数据。而对于闪存来说,在进行擦除或编程操作的同时不能对其进行读数据操作,因此无法使用闪存中存储的擦除或编程应用编程接口对闪存自身进行擦除编程操作。
2、相关技术中,在对闪存执行擦除或编程操作之前,先将闪存中存储的相关的闪存应用编程接口程序代码复制到内存中,再由中央处理器(central processing unit,cpu)从内存中读取相关的闪存应用编程接口程序代码,来执行擦除或编程指令,从而对闪存执行擦除或编程操作。然而将相关的闪存应用编程接口程序代码从闪存复制到内存中往往会耗费部分程序执行的时间,对闪存执行擦除或编程操作的效率不高。
技术实现思路
1、本技术旨在提出一种闪存接口电路、闪存控制方法、电子设备及存储介质,能够解决对闪存执行擦除或编程操作的效率不高问题。
2、第一方面,本技术实施例提供了一种闪存接口电路,用于连接cpu和闪存,所述闪存包括至少一个第一闪存组和至少一个第二闪存组,所述第一闪存组存储有擦除程序代码和/或编程程序代码,所述闪存接口电路包括:
3、至少一个第一控制寄存器,所述第一控制寄存器与所述第一闪存组对应,所述第一控制寄存器与所述cpu连接;
4、至少一个第二控制寄存器,所述第二控制寄存器与所述第二闪存组对应,所述第二控制寄存器与所述cpu连接;
5、时序发生单元,所述第一控制寄存器、所述第二控制寄存器、所述第一闪存组和所述第二闪存组皆与所述时序发生单元连接;
6、所述第一控制寄存器用于接收第一指令,所述第一指令用于配置所述第一控制寄存器,使得所述第一控制寄存器通过所述时序发生单元产生并输出第一时序信号至所述第一闪存组,从而读取所述第一闪存组存储的擦除程序代码或编程程序代码,所述第一时序信号为用于控制读取操作的时序信号,所述读取操作用于读取所述第一闪存组内存储的所述擦除程序代码和/或所述编程程序代码;
7、所述第二控制寄存器用于接收第二指令,所述第二指令基于所述擦除程序代码或所述编程程序代码得到,所述第二指令用于配置所述第二控制寄存器,使得所述第二控制寄存器通过所述时序发生单元产生并输出第二时序信号或第三时序信号至所述第二闪存组,从而对所述第二闪存组执行擦除操作或编程操作,所述第二时序信号为用于控制所述擦除操作的时序信号,所述第三时序信号为用于控制所述编程操作的时序信号。
8、根据本技术的一些实施例,所述时序发生单元包括:
9、状态机,所述第一控制寄存器和所述第二控制寄存器皆与所述状态机连接;
10、时序发生器,所述状态机连接所述时序发生器,所述第一闪存组和所述第二闪存组皆与所述时序发生器连接。
11、根据本技术的一些实施例,还包括:
12、至少一个第一状态寄存器,所述第一状态寄存器与所述第一闪存组对应,cpu和所述时序发生单元皆与所述第一状态寄存器连接。
13、根据本技术的一些实施例,还包括:
14、至少一个第二状态寄存器,所述第二状态寄存器与所述第二闪存组对应,cpu和所述时序发生单元皆与所述第二状态寄存器连接。
15、第二方面,本技术实施例提供了一种闪存控制方法,应用于如上述的闪存接口电路,所述方法包括:
16、发送第一指令至第一控制寄存器,所述第一指令用于配置所述第一控制寄存器,使得所述第一控制寄存器通过时序发生单元产生并输出第一时序信号至第一闪存组,从而读取所述第一闪存组存储的擦除程序代码或编程程序代码,所述第一时序信号为用于控制读取操作的时序信号,所述读取操作用于读取所述第一闪存组内存储的所述擦除程序代码和/或所述编程程序代码;
17、基于所述擦除程序代码或所述编程程序代码,发送第二指令至第二控制寄存器,所述第二指令用于配置所述第二控制寄存器,使得所述第二控制寄存器通过所述时序发生单元产生并输出第二时序信号或第三时序信号至第二闪存组,从而对所述第二闪存组执行擦除操作或编程操作,所述第二时序信号为用于控制所述擦除操作的时序信号,所述第三时序信号为用于控制所述编程操作的时序信号。
18、根据本技术的一些实施例,所述时序发生单元包括状态机和时序发生器,所述第一控制寄存器和所述第二控制寄存器皆与所述状态机连接,所述状态机连接所述时序发生器,所述第一闪存组和所述第二闪存组皆与所述时序发生器连接;所述基于所述擦除程序代码或所述编程程序代码,发送第二指令至第二控制寄存器,所述第二指令用于配置所述第二控制寄存器,使得所述第二控制寄存器通过所述时序发生单元产生第二时序信号或第三时序信号,并输出至第二闪存组,包括:
19、发送第二指令至所述第二控制寄存器,所述第二指令用于配置所述第二控制寄存器,使得所述第二控制寄存器控制所述状态机进入擦除状态或编程状态,所述状态机在所述擦除状态下控制所述时序发生器产生并输出所述第二时序信号至所述第二闪存组,所述状态机在所述编程状态下控制所述时序发生器产生并输出所述第三时序信号至所述第二闪存组。
20、根据本技术的一些实施例,所述闪存接口电路还包括至少一个第一状态寄存器,所述第一状态寄存器与所述第一闪存组对应,所述cpu和所述时序发生单元皆与所述第一状态寄存器连接,所述方法还包括:
21、读取所述第一状态寄存器的第一状态数据,根据所述第一状态数据确认所述第一闪存组的状态,所述第一状态数据由所述时序发生单元反馈得到。
22、根据本技术的一些实施例,所述闪存接口电路还包括至少一个第二状态寄存器,所述第二状态寄存器与所述第二闪存组对应,所述cpu和所述时序发生单元皆与所述第二状态寄存器连接,所述方法还包括:
23、读取所述第二状态寄存器的第二状态数据,根据所述第二状态数据确认所述第二闪存组的状态,所述第二状态数据由所述时序发生单元反馈得到。
24、第三方面,本技术实施例提供了一种电子设备,包括:
25、至少一个处理器;
26、至少一个存储器,用于存储至少一个程序;
27、当至少一个所述程序被至少一个所述处理器执行时实现如上述的闪存控制方法。
28、第四方面,本技术实施例提供了一种计算机可读存储介质,其中存储有处理器可执行的程序,所述处理器可执行的程序被处理器执行时用于实现如上述的闪存控制方法。
29、本技术实施例中,由于第一闪存组对应设置有第一控制寄存器,第二闪存组对应设置有第二控制寄存器,通过第一控制寄存器和时序发生单元,能够直接调用第一闪存组内存储的擦除程序代码或编程程序代码,基于擦除程序代码或编程程序代码,通过第二控制寄存器和时序发生单元对第二闪存组进行擦除操作或编程操作。相较于传统的闪存技术,能够在不复制擦除程序代码或编程程序代码到内存的情况下,直接调用闪存中存储的擦除程序代码或编程程序代码,对闪存自身进行擦除操作或编程操作,提高了效率。
30、本技术的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本技术的实践了解到。
1.一种闪存接口电路,其特征在于,用于连接中央处理单元和闪存,所述闪存包括至少一个第一闪存组和至少一个第二闪存组,所述第一闪存组存储有擦除程序代码和/或编程程序代码,所述闪存接口电路包括:
2.根据权利要求1所述的闪存接口电路,其特征在于,所述时序发生单元包括:
3.根据权利要求1所述的闪存接口电路,其特征在于,还包括:
4.根据权利要求1所述的闪存接口电路,其特征在于,还包括:
5.一种闪存控制方法,其特征在于,应用于如权利要求1所述的闪存接口电路,所述方法包括:
6.根据权利要求5所述的闪存控制方法,其特征在于,所述时序发生单元包括状态机和时序发生器,所述第一控制寄存器和所述第二控制寄存器皆与所述状态机连接,所述状态机连接所述时序发生器,所述第一闪存组和所述第二闪存组皆与所述时序发生器连接;所述基于所述擦除程序代码或所述编程程序代码,发送第二指令至第二控制寄存器,所述第二指令用于配置所述第二控制寄存器,使得所述第二控制寄存器通过所述时序发生单元产生第二时序信号或第三时序信号,并输出至第二闪存组,包括:
7.根据权利要求5所述的闪存控制方法,其特征在于,所述闪存接口电路还包括至少一个第一状态寄存器,所述第一状态寄存器与所述第一闪存组对应,中央处理单元和所述时序发生单元皆与所述第一状态寄存器连接,所述方法还包括:
8.根据权利要求5所述的闪存控制方法,其特征在于,所述闪存接口电路还包括至少一个第二状态寄存器,所述第二状态寄存器与所述第二闪存组对应,中央处理单元和所述时序发生单元皆与所述第二状态寄存器连接,所述方法还包括:
9.一种电子设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,其中存储有处理器可执行的程序,所述处理器可执行的程序被处理器执行时用于实现如权利要求5至8任意一项所述的闪存控制方法。
