CN105808452B - 微控制单元mcu的数据分级处理方法和系统 - Google Patents

微控制单元mcu的数据分级处理方法和系统 Download PDF

Info

Publication number
CN105808452B
CN105808452B CN201410849532.2A CN201410849532A CN105808452B CN 105808452 B CN105808452 B CN 105808452B CN 201410849532 A CN201410849532 A CN 201410849532A CN 105808452 B CN105808452 B CN 105808452B
Authority
CN
China
Prior art keywords
program data
memory
main memory
described program
memory portion
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
CN201410849532.2A
Other languages
English (en)
Other versions
CN105808452A (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.)
Zhaoyi Innovation Technology Group Co.,Ltd.
Original Assignee
GigaDevice Semiconductor Beijing Inc
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 GigaDevice Semiconductor Beijing Inc filed Critical GigaDevice Semiconductor Beijing Inc
Priority to CN201410849532.2A priority Critical patent/CN105808452B/zh
Publication of CN105808452A publication Critical patent/CN105808452A/zh
Application granted granted Critical
Publication of CN105808452B publication Critical patent/CN105808452B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明提供了一种微控制单元MCU的数据分级处理方法和系统,所述的方法包括:在所述MCU运行过程中,当需要从所述非易失性存储器中读取的程序数据时,判断所述程序数据是否在所述第二主存储部分;若所述程序数据在所述第二主存储部分,则从所述第二主存储部分读取所述程序数据;若所述程序数据不在所述第二主存储部分,则判断所述程序数据是否在所述第二辅助存储部分;若所述程序数据在所述第二辅助存储部分,则从所述第二辅助存储部分读取所述程序数据。本发明用以兼顾程序数据读取效率,以及兼顾非易失性存储器可支持的容量。

Description

微控制单元MCU的数据分级处理方法和系统
技术领域
本发明涉及集成电路技术领域,特别是涉及一种微控制单元MCU的数据分级处理方法和一种微控制单元MCU的数据分级处理系统。
背景技术
MCU(Micro Control Unit,微控制单元),又称SCM(Single Chip Microcomputer,单片微型计算机)或者单片机,是指随着大规模集成电路的出现及其发展,将计算机的CPU(Central Processing Unit,中央处理器)、RAM(Random Access Memory,随机存储器)、ROM(Read-Only Memory,只读存储器)、定时计数器和多种I/O(Input/Output,输入/输出接口)集成在一片芯片上,形成芯片级的计算机,为不同的应用场合做不同组合控制。
MCU芯片需要主芯片与闪存芯片之间配合完成各种数据的操作。闪存芯片由于具有掉电不丢失数据的特性,一般用于存储用户的程序数据等等。MCU芯片上电后从闪存芯片中读取程序数据,开始执行程序,从而完成用户需求的功能。主芯片的SRAM(Static RandomAccess Memory,静态随机存储器)为标准IP(intellectual property core,知识产权核),其特点为读写速度快,可以与主芯片的读取速度一致。具有掉电后数据会丢失的特性。由于闪存芯片的读取速度相对于主芯片的读取速度比较慢,需要花费很多的等待时间,严重影响程序执行效率。此矛盾是基本所有MCU芯片难以避免的问题。
在实际应用中,由于工艺水平以及需求的提高,主芯片的速度会越来越快,而闪存芯片的读取速度却很难提升,所以读取速度的矛盾会越来越大。另外,随着应用的提高,对闪存芯片容量的需求也会越来越大,以前可能只需要128Kbytes的闪存芯片容量,就可以满足大部分的需求,但随着客户应用的提高进一步扩大。
发明内容
本发明实施例所要解决的技术问题是提供一种微控制单元MCU的数据分级处理方法,用以兼顾程序数据读取效率,兼顾非易失性存储器可支持的容量。
相应的,本发明实施例还提供了一种微控制单元MCU的数据分级处理系统,用以保证上述方法的实现及应用。
为了解决上述问题,本发明公开了一种微控制单元MCU的数据分级处理方法,所述MCU与易失性存储器和非易失性存储器互连,所述非易失性存储器包括第一主存储部分和第一辅助存储部分,所述易失性存储器包括与第一主存储部分对应的第二主存储部分,以及包括与第一辅助存储部分对应的第二辅助存储部分;
所述的方法包括:
在所述MCU运行过程中,当需要从所述非易失性存储器中读取的程序数据时,判断所述程序数据是否在所述第二主存储部分;
若所述程序数据在所述第二主存储部分,则从所述第二主存储部分读取所述程序数据;
若所述程序数据不在所述第二主存储部分,则判断所述程序数据是否在所述第二辅助存储部分;
若所述程序数据在所述第二辅助存储部分,则从所述第二辅助存储部分读取所述程序数据。
优选地,在所述在MCU运行过程中,当需要从所述非易失性存储器中读取的程序数据时,判断所述程序数据是否在所述第二主存储部分的步骤之前,还包括:
当所述MCU上电复位时,读取所述第一主存储部分的程序数据并保存到所述第二主存储部分。
优选地,所述程序数据具有相应的地址信息,所述第一主存储部分的地址信息与第二主存储部分的地址信息互相对应,所述判断程序数据是否在所述第二主存储部分的步骤包括:
判断所述程序数据相应的地址信息是否在所述第一主存储部分的地址信息的范围内;
若是,则判定为所述程序数据在所述第二主存储部分;
若否,则判定为所述程序数据不在所述第二主存储部分。
优选地,所述第二辅助存储器具有对应的有效寄存器和地址范围寄存器,所述地址范围寄存器存储有所述第一辅助存储部分的地址信息,所述有效寄存器具有有效位;所述第一辅助存储部分的地址信息与第二辅助存储部分的地址信息互相对应,所述判断程序数据是否在所述第二辅助存储部分的步骤包括:
判断所述程序数据相应的地址信息是否在所述第一辅助存储部分的地址信息的范围内,并且所述有效寄存器的有效位是否置为有效;
若是,则判定为所述程序数据在所述第二辅助存储部分;
若否,则判定为所述程序数据不在所述第二辅助存储部分。
优选地,所述的方法还包括:
若所述程序数据不在所述第二辅助存储部分,则确定所述程序数据对应的地址信息所在的所述第一辅助存储部分;
读取所述第一辅助存储部分的全部程序数据并保存至所述第二辅助存储部分;
将所述第二辅助存储部分对应的有效寄存器的有效位置为有效;
将所述第二辅助存储部分对应的地址范围寄存器更新为所述第一辅助存储部分对应的地址信息。
优选地,所述的方法还包括:
当所述第一主存储部分的程序数据被修改时,将所述第一主存储部分中被修改的程序数据读取到所述第二主存储部分。
优选地,所述非易失性存储器为闪存芯片,所述易失性存储器静态随机存储器。
本发明实施例还公开了一种微控制单元MCU的数据分级处理系统,所述MCU与易失性存储器和非易失性存储器互连,所述非易失性存储器包括第一主存储部分和第一辅助存储部分,所述易失性存储器包括与第一主存储部分对应的第二主存储部分,以及包括与第一辅助存储部分对应的第二辅助存储部分;
所述的系统包括:
主存储比较模块,用于在所述MCU运行过程中,当需要从所述非易失性存储器中读取的程序数据时,判断所述程序数据是否在所述第二主存储部分;若所述程序数据在所述第二主存储部分,则调用主存储读取模块,若所述程序数据不在所述第二主存储部分,则调用主存储读取模块;
主存储读取模块,用于从所述第二主存储部分读取所述程序数据;
辅助存储比较模块,用于判断所述程序数据是否在所述第二辅助存储部分;若所述程序数据在所述第二辅助存储部分,则调用辅助存储读取模块;
辅助存储读取模块,用于从所述第二辅助存储部分读取所述程序数据。
优选地,所述的装置还包括:
上电复位模块,用于在所述MCU上电复位时,读取所述第一主存储部分的程序数据并保存到所述第二主存储部分。
优选地,所述程序数据具有相应的地址信息,所述第一主存储部分的地址信息与第二主存储部分的地址信息互相对应,所述主存储比较模块包括:
主存储判断子模块,用于判断所述程序数据相应的地址信息是否在所述第一主存储部分的地址信息的范围内;若是,则调用第一主存储判定子模块,若否,则调用第二主存储判定子模块;
第一主存储判定子模块,用于判定为所述程序数据在所述第二主存储部分;
第二主存储判定子模块,用于判定为所述程序数据不在所述第二主存储部分。
优选地,所述第二辅助存储器具有对应的有效寄存器和地址范围寄存器,所述地址范围寄存器存储有所述第一辅助存储部分的地址信息,所述有效寄存器具有有效位;所述第一辅助存储部分的地址信息与第二辅助存储部分的地址信息互相对应,所述辅助存储比较模块包括:
辅助存储判断子模块,用于判断所述程序数据相应的地址信息是否在所述第一辅助存储部分的地址信息的范围内,并且所述有效寄存器的有效位是否置为有效;若是,则调用第一辅助存储判定子模块,若否,则调用第二辅助存储判定子模块;
第一辅助存储判定子模块,用于判定为所述程序数据在所述第二辅助存储部分;
第二辅助存储判定子模块,用于判定为所述程序数据不在所述第二辅助存储部分。
优选地,所述的装置还包括:
辅助存储确定模块,用于在所述程序数据不在所述第二辅助存储部分,则确定所述程序数据对应的地址信息所在的所述第一辅助存储部分;
数据保持模块,用于读取所述第一辅助存储部分的全部程序数据并保存至所述第二辅助存储部分;
有效更新模块,用于将所述第二辅助存储部分对应的有效寄存器的有效位置为有效;
地址更新模块,用于将所述第二辅助存储部分对应的地址范围寄存器更新为所述第一辅助存储部分对应的地址信息。
优选地,所述的装置还包括:
数据更新模块,用于在所述第一主存储部分的程序数据被修改时,将所述第一主存储部分中被修改的程序数据读取到所述第二主存储部分。
与现有技术相比,本发明实施例包括以下优点:
在本发明实施例中对数据分级处理,在所述MCU芯片运行过程中,如果需要从所述非易失性存储器中读取的程序数据,则分别判断程序数据是在易失性存储器的主存储部分或辅助存储部分,并在所述程序数据存在于主存储部分或辅助存储部分时从中获取。由于易失性存储器相比于非易失性存储器而言,读取速度较快,故可以达到实时性的要求。
实际中非易失性存储器的容量通常较大,如果将全部非易失性存储器中的程序数据都存储到易失性存储器中,对于MCU芯片而言,成本可能无法接受。在本发明实施例中在易失性存储器中除主存储部分之外,还开辟有辅助存储部分用于存储非易失性存储器中的数据部分或其他实时性要求不高的部分。具体地,对于非易失性存储器中的程序部分或其他实时性要求高的部分,采用易失性存储器进行存储,而对于数据部分或其他实时性要求不高的部分,则在易失性存储器中开辟出小块的空间来进行辅助存储,因此不需要易失性存储器完全复制非易失性存储器的全部数据,故本发明实施例既兼顾了面积和成本,又兼顾了MCU芯片在实际应用中的运行效率。
附图说明
图1是本发明的一种微控制单元MCU的数据分级处理方法实施例1的步骤流程图;
图2是本发明的一种MCU芯片系统的结构框图;
图3是本发明的一种闪存控制器的结构框图;
图4是本发明的一种SRAM的结构框图;
图5是本发明的一种主控单元的结构框图;
图6是本发明的一种微控制单元MCU的数据分级处理方法实施例2的步骤流程图;
图7是本发明的一种微控制单元MCU的数据分级处理系统实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
目前,嵌入式系统的存储器的管理方案有以下几种:
1、第一种:嵌入式闪存芯片,将闪存芯片与MCU芯片做成一颗芯片,这样技术好处在于面积小,但由于闪存芯片工艺的复杂性,成本也很高。而且目前来说主要缺点为闪存芯片的读取速度慢(一般速度可能几兆到几十兆赫兹),而MCU的主芯片读取速度可能达到100兆以上,在此时MCU主芯片每读取一个闪存芯片中的程序数据,可能需要花费2个或3个等待周期,这样程序运行的效率将会大大降低。
2、第二种:是嵌入式闪存芯片是对第一种的改进,通过预取闪存芯片中的程序数据,或缓存cache方式,提高程序数据的读取速度,在一定方面上改进了程序运行效率。但第二种方案有仍然有两个缺点,一是在读取程序数据时需要等待周期,不能每个周期读取一个程序数据,达不到实时运行。二是在MCU芯片实际应用时很多情况下需要读取速度的确定行,即下一个数据在明确的第几个周期可以给出,第二种方案无法达到这种需求。
3、第三种:这种方式是通过SRAM对整个闪存芯片的程序数据集进行1比1复制。第三中方案的好处为,读取效率高,没有等待周期,但此方法缺点为,对于闪存芯片容量比较大时,SRAM的面积无法承受,比如如果闪存芯片容量为128Kbytes,或256Kbytes时,那么SRAM的面积就可能占整个芯片面积的一半或以上。当闪存芯片超多256Kbytes时,比如1Mbytes时。SRAM的面积太大,成本根本无法承受。
综上可知,在MCU芯片中对于闪存芯片(flash)的读写速度一直是制约MCU程序运行效率的主要瓶颈,单芯片嵌入式闪存读取速度较低,达不到实时性的要求,如果MCU芯片内部通过SRAM(Static Random Access Memory,静态随机存储器)存储闪存信息的话,对于容量大的闪存芯片所需要的SRAM面积又非常大,对于MCU芯片来说,成本可能无法接受。
为了解决上述问题,本发明实施例中通过分级存储管理的方式,对于flash中程序部分或其他实时性要求高的部分,采用SRAM 1比1存储。而对于数据部分或其他实时性要求不高的部分,采用一小块SRAM,采用类似于cache的方式,进行存储和预取。既兼顾了面积和成本,又兼顾了MCU芯片在实际应用中的运行效率。
参照图1,示出了本发明的一种微控制单元MCU的数据分级处理方法实施例1的步骤流程图,所述MCU可以与易失性存储器和非易失性存储器互连,所述非易失性存储器可以包括第一主存储部分和第一辅助存储部分,所述易失性存储器可以包括与第一主存储部分对应的第二主存储部分,以及可以包括与第一辅助存储部分对应的第二辅助存储部分;
所述的方法具体可以包括以下步骤:
步骤101,在所述MCU芯片运行过程中,当需要从所述非易失性存储器中读取的程序数据时,判断所述程序数据是否在所述第二主存储部分;若所述程序数据在所述第二主存储部分,则执行步骤102;若所述程序数据不在所述第二主存储部分,则执行步骤103;
步骤102,从所述第二主存储部分读取所述程序数据;
本发明实施例中在第二主存储部分中的程序数据与第一主存储部分中的程序数据保持一致,如果在MCU芯片正常运行的过程中,所需读取的程序数据是第一主存储部分中数据,那么就可以直接从第二主存储部分中读取该程序数据。
步骤103,判断所述程序数据是否在所述第二辅助存储部分;若所述程序数据在所述第二辅助存储部分,则执行步骤104;
步骤104,从所述第二辅助存储部分读取所述程序数据。
本发明实施例中如果所需读取的程序数据不是第一主存储部分中数据,但是在第二辅助存储部分中有该程序数据,则可以从第二辅助存储数据中读取该程序数据。
在MCU芯片系统中,非易失性存储器是不可或缺的,即MCU芯片与非易失性存储器连接,该连接可以是MCU芯片与非易失性存储器相互独立并在外部物理连接(例如通过导线连接),也可以是将非易失性存储器集成在MCU中。
非易失性存储器具有掉电数据不丢失的特点,主要用于存储MCU的程序数据,在实际中读取速度较慢。易失性存储器具有掉电后数据会丢失的特性,但是在实际中读写速度很快,可以与MCU芯片的主芯片的读取速度一致。
应用本发明实施例,对于原本需要从非易失性存储器读取的程序数据,转换为从易失性存储器中读取,由于易失性存储器相对于非易失性存储器读取速度非常快,因此可以减少等待时间,提高程序执行效率。
为了使本领域技术人员更好地理解本发明实施例,对于本发明实施例具体应用进行详细说明。以下对本发明实施例的描述中,采用非易失性存储器为闪存芯片,易失性存储器为静态随机存储器SRAM作为示例,但是本发明实施例并不限定于闪存芯片和静态随机存储器SRAM这些存储器,其他任意一种存储器均是可行的。
首先,介绍一下本发明实施例中的MCU的整体结构,具体可以参照图2所示的本发明的一种MCU芯片系统的结构框图,本发明实施例涉及的子系统主要包括内存控制器,SRAM,闪存控制器和闪存芯片。其中MCU与闪存芯片可以相互独立并在外部物理连接,也可以将闪存芯片集成在MCU中。对于MCU的各个部分分别叙述如下:
内存控制器:内存主要作用为CPU执行程序中暂存程序或数据的地方,内存控制器主要作用为,将系统总线向内存发出的读写操作,转化成内存的读写操作。
SRAM:SRAM为标准IP。在本发明实施例中可用于存放闪存芯片中的程序数据。SRAM具有在断电后数据丢失的特性,读写速度快,可实时读写。
闪存芯片:闪存芯片为常用芯片,可读,可擦写,具有断电数据不丢失数据的特性,相对于SRAM而言,读写速度较慢,并且大部分时间是读操作,在MCU系统中主要用于存储程序以及一些固定不变的数据。为了让产品的体积更小巧,在实际应用中可采用MCP(Multiple Chip Package,多制层封装芯片)技术将主芯片与闪存芯片制造在同一个封装内。
CPU:CPU即中央处理器,用于执行从闪存芯片中的程序数据,起到控制MCU芯片各个模块正常运行的作用。
在MCU芯片系统中,闪存芯片(或者其他非易失性存储器)是不可或缺的,它具有掉电数据不丢失的特性,主要用于存储用户的程序数据等。程序主要为通过系统总线读取到CPU中执行,一般数据量不大,但对速度要求很高,而读取速度直接影响到程序的执行效率。数据部分一般具有固定不变或不常修改的特性。
闪存控制器负责闪存芯片与MCU芯片中各个模块的交互。MCU芯片对闪存芯片的操作主要为读操作,即通过系统总线读取闪存芯片中的程序数据或其他数据。当然,如果在闪存芯片中的程序数据需要修改时,也可执行写操作。写操作需要先擦除闪存芯片中相应的位置,然后通过编程的方式改写数据,在本例中根据写数据的地址可能需要一个读闪存芯片操作,更新SRAM中的程序数据,与写入的数据一致。写操作整个过程非常耗时,主要由闪存芯片的特性决定,在MCU芯片中也非常少用。所以读取速度对MCU芯片至关重要。
参照图3所示的本发明的一种闪存控制器的结构框图,闪存控制器主要可以包括闪存总线接口,SRAM控制单元,闪存配置寄存器,主控单元,闪存控制单元,分别叙述如下:
闪存总线接口:闪存总线接口的功能是将系统总线的读写操作转化为闪存控制器内部的读写操作。闪存总线接口根据地址空间的不同将系统总线的访问分为两类:一类是访问配置寄存器,通过数据通路2访问的。一类是访问程序数据空间。读操作通过数据通路1访问的。如果为写操作,则通过数据通路4完成的。
闪存配置寄存器:主要包括一系列寄存器,由系统总线通过数据通路2配置。控制闪存控制器的运行。
主控单元:主要为控制闪存控制器各个装置的运行。通过控制通路1,从闪存总线接口单元得到当前要执行的操作,比如读操作,写操作。通过控制通路2,给闪存控制单元发出命令,擦除,编程,读命令等。通过控制通路3,给SRAM控制单元发出读写命令。
SRAM控制单元:为SRAM与闪存控制器的接口,将闪存控制器给出读写信号,翻译成SRAM的读写信号。
闪存控制单元:控制片外闪存,包括执行读、写、擦除等数据操作,读ID,读状态等。在本发明实施例中,读闪存芯片程序数据,通过数据通路3,存储到SRAM中。写闪存芯片程序数据部分是系统总线通过数据通路4完成的。
数据通路1:从SRAM控制单元到闪存总线接口的读数据通路,用于将SRAM中数据读取到系统总线中。本发明实施例中在两种情况下用到,根据地址空间的区别,读主SRAM装置(即第二主存储部分)中的数据以及读辅助SRAM装置(即第二辅助存储部分)中的数据到系统总线中。
数据通路2:闪存总线接口到闪存配置寄存器之间的数据通路,用于系统总线配置闪存寄存器信息。
数据通路3:从闪存控制单元到SRAM控制单元之间的读数据通路,用于将闪存芯片中的程序数据部分读取到SRAM中。在本发明实施例中可以在以下情况下用到:
1、上电后自动读取闪存芯片中主存储部分(即第一主存储部分)到主SRAM装置中。
2、读闪存芯片中除了主存储部分的其他部分(即第二辅助存储部分),并且在辅助SRAM装置中没有命中,则需要读取的数据从闪存芯片中读取到辅助SRAM装置中。
3、擦写闪存芯片中主存储部分,将修改的数据更新到主SRAM装置中,保证主SRAM装置中的数据与闪存芯片中主存储部分的数据一致。
4、同上,擦写闪存芯片中除了主存储部分的其他部分,如果此部分数据原先在辅助SRAM装置中,则更新更新辅助SRAM装置中的数据。
数据通路4:闪存总线接口到闪存控制单元之间的写数据通路,用于用系统总线编程闪存芯片中的程序数据。
控制通路1:为闪存总线接口到主控单元之间的控制通路,主要为闪存总线接口给主控单元的读写信息,以及地址信息。
控制通路2:为主控单元与闪存控制单元之间的控制通路,主要为主控单元给闪存控制单元的读操作,擦除操作,写操作命令以及地址。
控制通路3:为主控单元与SRAM控制单元之间的控制通路,为主控单元给SRAM控制单元的读取命令以及地址信息。
在本发明实施例中,SRAM被分为两个存储部分,具体可以参照图4所示的本发明的一种SRAM的结构框图,SRAM分为主SRAM装置和辅助SRAM装置,所述SRAM与SRAM控制单元连接,对于SRAM各个存储部分分别叙述如下:
主SRAM部分:为1比1存储闪存芯片中相应地址范围(地址范围与主SRAM装置的地址范围一致)里的程序数据。定义成闪存芯片中的主存储部分,这部分程序数据在MCU芯片上电后,以及在MCU芯片系统运行前,自动一次性读取存入主SRAM中。如果闪存芯片中的主存储部分有修改(即通过写操作修改),则自动将修改的部分读取更新到主SRAM中。这样在系统正常运行中,主SRAM一直存储着闪存芯片中主存储部分的程序数据。当MCU芯片需要读取这部分程序数据,则可直接从主SRAM中读取。由于SRAM这种易失性存储器读取速度非常快,可达到实时,即1个时钟周期读取到系统总线上。这样读取效率最优。
辅助SRAM部分:类似于缓存cache,可分成多个块(根据实际需求确定,假设为N块),每一个块,均可存储闪存芯片中除主存储部分外其他部分的一小块内容。每一块在主控单元中均对应一个是否有效寄存器(VALID),和地址范围寄存器(TAG)。当系统总线要读取的程序数据不在主SRAM中,并且不在辅助SRAM中(相当于cache miss(缓存未命中)),则自动从闪存芯片中,将闪存数据读取到辅助SRAM中,置相应的VALID为有效,地址存入TAG中。如果在辅助SRAM中(通过VALID与TAG判断),则直接从辅助SRAM中读取。
举例说明:假设闪存容量大小为1M bytes(1024X1024字节)。主SRAM为128Kbytes(128X1024字节),辅助SRAM为1Kbytes(1024字节),分为2个512bytes块。则闪存芯片中的主存储部分为128Kbytes,与主SRAM大小一致。如果读取闪存中128Kbytes以内的数据,可直接从主SRAM装置中读取,如果读取闪存中128Kbytes~1Mbytes数据时,则需要通过辅助SRAM装置,执行相应的操作读取。
参照图5所示的本发明的一种主控单元的结构框图,主SRAM比较单元:当闪存总线接口需要读写数据时,第一步比较地址是否在主SRAM中,如果在主SRAM中,如果为读操作,则直接从主SRAM中读取,如果为写操作,通过操作控制单元,给闪存控制单元发出擦除命令(擦除闪存相应地址上数据),编程命令(将需要写的数据写入到闪存相应地址),读取命令(将闪存中刚改写的数据读取更新到主SRAM中)。
辅助SRAM信息单元:存储辅助SRAM每个存储块的有效寄存器(VALID1,VALID2,VALIDn),和地址范围寄存器(TAG1,TAG2,TAGn)。
辅助SRAM比较单元:当第一步比较地址不在主SRAM中,则进入辅助SRAM比较单元,将地址与所有辅助SRAM块的TAG比较,如果在某一块辅助SRAM中,假设为第n块,并且有效寄存器(VALIDn)为有效,此时为命中(cache hit),此时读写操作与主SRAM命中一致。读直接从第n块辅助SRAM中读,写通过操作控制单元,给闪存控制单元发出擦除,写,读更新第n块辅助SRAM。假设所有的辅助SRAM块均没有命中(cache miss),如为读操作,则将闪存中相应地址,读取一整块数据到辅助SRAM块中,更新SRAM块中所有数据。替换策略采用最近最少原则,即优先替换VALID无效的块,如果所有块VALID均有效,则最久没有被用到的块被更新,同时将被更新的块的VALID置为有效,地址存入TAG中。如为写操作,则只需执行擦除,写即可,不需要读操作。
操作控制单元:将闪存总线接口给出的读写操作,翻译成控制SRAM的读写命令,以及闪存的擦写读命令。与上面叙述基本一致,简单叙述如下:读操作在主SRAM中,读主SRAM。写操作在主SRAM中,擦除闪存,编程闪存,读闪存,写主SRAM。读操作在辅助SRAM中,读辅助SRAM。写操作在辅助SRAM中,擦除闪存,编程闪存,读闪存,写辅助SRAM。读操作不在辅助SRAM中,读闪存,写辅助SRAM,读辅助SRAM到总线。写操作不在辅助SRAM中,擦除闪存,编程闪存。
为了使本领域技术人员更好地理解本发明实施例,结合上述图2-图5所示的结构及相关描述,对本发明实施例的数据分级处理的另一实施例进行介绍。
参照图6,示出了本发明的一种微控制单元MCU的数据分级处理方法实施例2的步骤流程图,所述MCU可以与易失性存储器和非易失性存储器互连,所述非易失性存储器可以包括第一主存储部分和第一辅助存储部分,所述易失性存储器可以包括与第一主存储部分对应的第二主存储部分,以及可以包括与第一辅助存储部分对应的第二辅助存储部分;
所述的方法具体可以包括以下步骤:
步骤201,所述MCU芯片上电复位;
步骤202,当所述MCU芯片上电复位时,读取所述第一主存储部分的程序数据并保存到所述第二主存储部分;
在本发明实施例中,读取闪存芯片主存储部分到主SRAM中。具体而言,在MCU芯片上电复位后,自动将闪存芯片中主存储部分的程序数据读取并存入主SRAM中。在此过程为上电后一次性完成,完成之后MCU芯片系统才开始正常运行。
MCU芯片系统正常从闪存芯片中读取程序数据,通过系统总线到CPU中,开始正常运行。
在本发明的一种优选实施例中,所述的方法还可以包括如下步骤:
当所述第一主存储部分的程序数据被修改时,将所述第一主存储部分中被修改的程序数据读取到所述第二主存储部分。
在本发明实施例中,在MCU芯片上电复位后,以及MCU芯片系统运行前,自动一次性读取存入到主SRAM中。除此之外,如果闪存芯片的主存储部分有修改(例如通过写操作发生修改),则自动将主存储部分修改的程序数据部分读取更新到主SRAM。那么在MCU芯片系统正常运行过程中,主SRAM一直存储着闪存芯片的主存储部分的程序数据。当MCU芯片需要读取这部分程序数据,则可直接从主SRAM中读取。由于SRAM读取速度相对于闪存芯片而言读取速度非常快,可达到实时读取的效果。
步骤203,在所述MCU芯片运行过程中,需要从所述非易失性存储器中读取的程序数据;
步骤204,判断所述程序数据是否在所述第二主存储部分;若所述程序数据在所述第二主存储部分,则执行步骤205;若所述程序数据不在所述第二主存储部分,则执行步骤206;
在本发明的一种优选实施例中,所述程序数据可以具有相应的地址信息,所述第一主存储部分的地址信息可以与第二主存储部分的地址信息互相对应,所述步骤204可以包括如下子步骤:
子步骤S11,判断所述程序数据相应的地址信息是否在所述第一主存储部分的地址信息的范围内;若是,则执行子步骤S12,若否,则执行子步骤S13;
子步骤S12,判定为所述程序数据在所述第二主存储部分;
子步骤S13,判定为所述程序数据不在所述第二主存储部分。
在MCU芯片系统运行时,需要从闪存芯片中读取程序数据到CPU中执行,在系统运行过程中,绝大多数情况需要不断的从闪存芯片读取程序数据。
在本发明实施例中,首先判断当前所需的程序数据是否在主SRAM中,具体而言,通过主SRAM比较单元,通过判断当前地址是否在主SRAM的地址范围里,确定当前需要读取的程序数据是否在主SRAM中。
步骤205,从所述第二主存储部分读取所述程序数据;
如果当前需要读取的程序数据在主SRAM中,则主控单元通知SRAM控制单元,从主SRAM中将程序数据读取,通过数据通路1,给到总线中。然后MCU芯片系统继续运行。
步骤206,判断所述程序数据是否在所述第二辅助存储部分;若所述程序数据在所述第二辅助存储部分,则执行步骤207;若所述程序数据不在所述第二辅助存储部分,则执行步骤208;
在本发明的一种优选实施例中,所述第二辅助存储器具有对应的有效寄存器和地址范围寄存器,所述地址范围寄存器存储有所述第一辅助存储部分的地址信息,所述有效寄存器具有有效位;所述第一辅助存储部分的地址信息与第二辅助存储部分的地址信息互相对应,所述步骤206可以包括如下子步骤:
子步骤S21,判断所述程序数据相应的地址信息是否在所述第一辅助存储部分的地址信息的范围内,并且所述有效寄存器的有效位是否置为有效;若是,则执行子步骤S22,若否,则执行子步骤S23;
子步骤S22,判定为所述程序数据在所述第二辅助存储部分;
子步骤S23,判定为所述程序数据不在所述第二辅助存储部分。
在本发明实施例中,如果当前需要读取的程序数据不在主SRAM中,则需要判断辅助SRAM是否命中,具体而言,可以通过辅助SRAM比较装置来判断。如果当前地址在某一个辅助SRAM块中(通过比较当前地址与辅助SRAM块的TAG信息),并且是否有效标记位(VALID)为有效,则为命中。如果所有的辅助SRAM块均没有命中,则辅助SRAM也不命中。
步骤207,从所述第二辅助存储部分读取所述程序数据;
如果辅助SRAM命中,则主控单元通知SRAM控制单元,从命中的辅助SRAM块中将程序数据读取,通过数据通路1,给到总线。然后MCU芯片系统继续运行。
步骤208,确定所述程序数据对应的地址信息所在的所述第一辅助存储部分,并读取所述第一辅助存储部分的全部程序数据并保存至所述第二辅助存储部分。
如果辅助SRAM不命中,则主控单元通知闪存控制单元,从闪存中将相应地址段读取到某一辅助SRAM块中。需要注意的是,读取的程序数据不仅仅包括当前需要的程序数据,包括当前需要的程序数据,在闪存芯片上的整个地址段上的数据,均读取到辅助SRAM块中。如在前面的例子中辅助SRAM块的大小为512bytes(字节),则需要从闪存中将整个连续的512bytes数据读取到辅助SRAM块中,这样的好处在于,总线在读取下一个数据时(很大概率为下一个地址上的数据),很大概率会是辅助SRAM命中,这样读取的速度就快了。然后主控单元通知SRAM控制单元,从替换的辅助SRAM块中将数据读取,通过数据通路1,给到总线中。然后MCU芯片系统继续运行。
步骤209,更新所述述第二辅助存储部分的标记寄存器;所述标记寄存器包括有效寄存器和地址范围寄存器;
在本发明的一种优选实施例中,所述步骤209可以包括如下子步骤:
子步骤S33,将所述第二辅助存储部分对应的有效寄存器的有效位置为有效;
子步骤S34,将所述第二辅助存储部分对应的地址范围寄存器更新为所述第一辅助存储部分对应的地址信息。
当某一辅助SRAM块被替换,则这个SRAM块标记信息需要被更新,是否有效位(VALID)置为有效,地址范围信息(TAG)更新成替换之后的地址范围。更新后,方便下一次判断辅助SRAM是否命中。
本发明实施例根据MCU芯片运行的特点,以及闪存芯片存储的特点,采用分级管理方式,合理的安排SRAM的面积,既兼顾了程序运行的执行效率,又兼顾了闪存芯片可支持很大容量。
MCU芯片在实际应用中的特点为,对于程序运行的效率要求比较高,这直接影响MCU芯片的性能,但是程序本身所占的容量并不大(比如在128Kbytes以下),由于这部分在本发明实施例中放置在闪存芯片的主存储部分,通过主SRAM,可达到效率最优(读取时没有等待时间,每个周期可读取一个程序数据)。
而对于闪存芯片容量要求很大的,一般主要存储固定不变或很少改变的数据,比如一些字库或数据库之类的。这部分的特点为需求的容量很大(可达到1Mbytes~4Mbytes),但对速度需求不高,并且一般为连续读取,每次读这么大容量中的一小块到系统中使用,在本发明实施例中通过一小块辅助SRAM支持这部分内容,达到速度面积的最优平衡。
比如在前面的例子中,如果没有辅助SRAM,这样每读取一个数据需要几十个周期(直接读闪存芯片数据需要命令地址等信息,占用很多周期),这样显然非常慢。而通过辅助SRAM,虽然读第一个数据也很慢,但连续读512bytes数据,平均起来确很快。读第一个数据(假设没有命中),需要将闪存芯片中512bytes读取到辅助SRAM块中,而其后的511bytes数据均在辅助SRAM块中(命中情况),均一个周期读出,这样连续读512bytes数据时,平均每个数据大概在3~4周期左右。只需要使用很少的面积,MCU芯片在速度上有很大的提升。
需要说明的是,可以对辅助SRAM的一些不同安排,以及运行方式的做出一些变形,均在本发明实施例的保护范围之内。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图7,示出了本发明一种微控制单元MCU的数据分级处理系统实施例的结构框图,所述MCU与易失性存储器和非易失性存储器互连,所述非易失性存储器包括第一主存储部分和第一辅助存储部分,所述易失性存储器包括与第一主存储部分对应的第二主存储部分,以及包括与第一辅助存储部分对应的第二辅助存储部分,所述的系统具体可以包括如下模块:
主存储比较模块301,用于在所述MCU运行过程中,当需要从所述非易失性存储器中读取的程序数据时,判断所述程序数据是否在所述第二主存储部分;若所述程序数据在所述第二主存储部分,则调用主存储读取模块,若所述程序数据不在所述第二主存储部分,则调用主存储读取模块;
在本发明的一种优选实施例中,所述的系统还可以包括如下模块:
上电复位模块,用于在所述MCU上电复位时,读取所述第一主存储部分的程序数据并保存到所述第二主存储部分。
在本发明的一种优选实施例中,所述程序数据具有相应的地址信息,所述第一主存储部分的地址信息与第二主存储部分的地址信息互相对应,所述主存储比较模块301包括如下子模块:
主存储判断子模块,用于判断所述程序数据相应的地址信息是否在所述第一主存储部分的地址信息的范围内;若是,则调用第一主存储判定子模块,若否,则调用第二主存储判定子模块;
第一主存储判定子模块,用于判定为所述程序数据在所述第二主存储部分;
第二主存储判定子模块,用于判定为所述程序数据不在所述第二主存储部分。
主存储读取模块302,用于从所述第二主存储部分读取所述程序数据;
辅助存储比较模块303,用于判断所述程序数据是否在所述第二辅助存储部分;若所述程序数据在所述第二辅助存储部分,则调用辅助存储读取模块;
在本发明的一种优选实施例中,所述第二辅助存储器具有对应的有效寄存器和地址范围寄存器,所述地址范围寄存器存储有所述第一辅助存储部分的地址信息,所述有效寄存器具有有效位;所述第一辅助存储部分的地址信息与第二辅助存储部分的地址信息互相对应,所述辅助存储比较模块303可以包括如下子模块:
辅助存储判断子模块,用于判断所述程序数据相应的地址信息是否在所述第一辅助存储部分的地址信息的范围内,并且所述有效寄存器的有效位是否置为有效;若是,则调用第一辅助存储判定子模块,若否,则调用第二辅助存储判定子模块;
第一辅助存储判定子模块,用于判定为所述程序数据在所述第二辅助存储部分;
第二辅助存储判定子模块,用于判定为所述程序数据不在所述第二辅助存储部分。
辅助存储读取模块304,用于从所述第二辅助存储部分读取所述程序数据。
在本发明的一种优选实施例中,所述的系统还可以包括如下模块:
辅助存储确定模块,用于在所述程序数据不在所述第二辅助存储部分,则确定所述程序数据对应的地址信息所在的所述第一辅助存储部分;
数据保持模块,用于读取所述第一辅助存储部分的全部程序数据并保存至所述第二辅助存储部分;
有效更新模块,用于将所述第二辅助存储部分对应的有效寄存器的有效位置为有效;
地址更新模块,用于将所述第二辅助存储部分对应的地址范围寄存器更新为所述第一辅助存储部分对应的地址信息。
在本发明的一种优选实施例中,所述的系统还可以包括如下模块:
数据更新模块,用于在所述第一主存储部分的程序数据被修改时,将所述第一主存储部分中被修改的程序数据读取到所述第二主存储部分。
本发明的一种优选实施例中,所述非易失性存储器为闪存芯片,所述易失性存储器静态随机存储器。
对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
以上对本发明所提供的一种微控制单元MCU的数据分级处理方法和一种微控制单元MCU的数据分级处理系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (11)

1.一种微控制单元MCU的数据分级处理方法,其特征在于,所述MCU与易失性存储器和非易失性存储器互连,所述非易失性存储器包括第一主存储部分和第一辅助存储部分,所述易失性存储器包括与第一主存储部分对应的第二主存储部分,以及包括与第一辅助存储部分对应的第二辅助存储部分;
所述的方法包括:
在所述MCU运行过程中,当需要从所述非易失性存储器中读取的程序数据时,判断所述程序数据是否在所述第二主存储部分;
若所述程序数据在所述第二主存储部分,则从所述第二主存储部分读取所述程序数据;
若所述程序数据不在所述第二主存储部分,则判断所述程序数据是否在所述第二辅助存储部分;
若所述程序数据在所述第二辅助存储部分,则从所述第二辅助存储部分读取所述程序数据;
其中,所述第二辅助存储器具有对应的有效寄存器和地址范围寄存器,所述地址范围寄存器存储有所述第一辅助存储部分的地址信息,所述有效寄存器具有有效位;所述第一辅助存储部分的地址信息与第二辅助存储部分的地址信息互相对应,所述判断程序数据是否在所述第二辅助存储部分的步骤包括:
判断所述程序数据相应的地址信息是否在所述第一辅助存储部分的地址信息的范围内,并且所述有效寄存器的有效位是否置为有效;
若是,则判定为所述程序数据在所述第二辅助存储部分;
若否,则判定为所述程序数据不在所述第二辅助存储部分;
其中,所述第二主存储部分1比1存储所述第一主存储部分中相应范围里的程序数据,所述第二辅助存储部分存储闪存芯片中所述第一辅助存储部分的一小块内容。
2.根据权利要求1所述的方法,其特征在于,在所述在MCU运行过程中,当需要从所述非易失性存储器中读取的程序数据时,判断所述程序数据是否在所述第二主存储部分的步骤之前,还包括:
当所述MCU上电复位时,读取所述第一主存储部分的程序数据并保存到所述第二主存储部分。
3.根据权利要求1或2所述的方法,其特征在于,所述程序数据具有相应的地址信息,所述第一主存储部分的地址信息与第二主存储部分的地址信息互相对应,所述判断程序数据是否在所述第二主存储部分的步骤包括:
判断所述程序数据相应的地址信息是否在所述第一主存储部分的地址信息的范围内;
若是,则判定为所述程序数据在所述第二主存储部分;
若否,则判定为所述程序数据不在所述第二主存储部分。
4.根据权利要求1所述的方法,其特征在于,还包括:
若所述程序数据不在所述第二辅助存储部分,则确定所述程序数据对应的地址信息所在的所述第一辅助存储部分;
读取所述第一辅助存储部分的全部程序数据并保存至所述第二辅助存储部分;
将所述第二辅助存储部分对应的有效寄存器的有效位置为有效;
将所述第二辅助存储部分对应的地址范围寄存器更新为所述第一辅助存储部分对应的地址信息。
5.根据权利要求1所述的方法,其特征在于,还包括:
当所述第一主存储部分的程序数据被修改时,将所述第一主存储部分中被修改的程序数据读取到所述第二主存储部分。
6.根据权利要求1所述的方法,其特征在于,所述非易失性存储器为闪存芯片,所述易失性存储器静态随机存储器。
7.一种微控制单元MCU的数据分级处理系统,其特征在于,所述MCU与易失性存储器和非易失性存储器互连,所述非易失性存储器包括第一主存储部分和第一辅助存储部分,所述易失性存储器包括与第一主存储部分对应的第二主存储部分,以及包括与第一辅助存储部分对应的第二辅助存储部分;
所述的系统包括:
主存储比较模块,用于在所述MCU运行过程中,当需要从所述非易失性存储器中读取的程序数据时,判断所述程序数据是否在所述第二主存储部分;若所述程序数据在所述第二主存储部分,则调用主存储读取模块,若所述程序数据不在所述第二主存储部分,则调用主存储读取模块;
主存储读取模块,用于从所述第二主存储部分读取所述程序数据;
辅助存储比较模块,用于判断所述程序数据是否在所述第二辅助存储部分;若所述程序数据在所述第二辅助存储部分,则调用辅助存储读取模块;
辅助存储读取模块,用于从所述第二辅助存储部分读取所述程序数据;
其中,所述第二辅助存储器具有对应的有效寄存器和地址范围寄存器,所述地址范围寄存器存储有所述第一辅助存储部分的地址信息,所述有效寄存器具有有效位;所述第一辅助存储部分的地址信息与第二辅助存储部分的地址信息互相对应,所述辅助存储比较模块包括:
辅助存储判断子模块,用于判断所述程序数据相应的地址信息是否在所述第一辅助存储部分的地址信息的范围内,并且所述有效寄存器的有效位是否置为有效;若是,则调用第一辅助存储判定子模块,若否,则调用第二辅助存储判定子模块;
第一辅助存储判定子模块,用于判定为所述程序数据在所述第二辅助存储部分;
第二辅助存储判定子模块,用于判定为所述程序数据不在所述第二辅助存储部分;
其中,所述第二主存储部分1比1存储所述第一主存储部分中相应范围里的程序数据,所述第二辅助存储部分存储闪存芯片中所述第一辅助存储部分的一小块内容。
8.根据权利要求7所述的系统,其特征在于,还包括:
上电复位模块,用于在所述MCU上电复位时,读取所述第一主存储部分的程序数据并保存到所述第二主存储部分。
9.根据权利要求7或8所述的系统,其特征在于,所述程序数据具有相应的地址信息,所述第一主存储部分的地址信息与第二主存储部分的地址信息互相对应,所述主存储比较模块包括:
主存储判断子模块,用于判断所述程序数据相应的地址信息是否在所述第一主存储部分的地址信息的范围内;若是,则调用第一主存储判定子模块,若否,则调用第二主存储判定子模块;
第一主存储判定子模块,用于判定为所述程序数据在所述第二主存储部分;
第二主存储判定子模块,用于判定为所述程序数据不在所述第二主存储部分。
10.根据权利要求7所述的系统,其特征在于,还包括:
辅助存储确定模块,用于在所述程序数据不在所述第二辅助存储部分,则确定所述程序数据对应的地址信息所在的所述第一辅助存储部分;
数据保持模块,用于读取所述第一辅助存储部分的全部程序数据并保存至所述第二辅助存储部分;
有效更新模块,用于将所述第二辅助存储部分对应的有效寄存器的有效位置为有效;
地址更新模块,用于将所述第二辅助存储部分对应的地址范围寄存器更新为所述第一辅助存储部分对应的地址信息。
11.根据权利要求7所述的系统,其特征在于,还包括:
数据更新模块,用于在所述第一主存储部分的程序数据被修改时,将所述第一主存储部分中被修改的程序数据读取到所述第二主存储部分。
CN201410849532.2A 2014-12-29 2014-12-29 微控制单元mcu的数据分级处理方法和系统 Active CN105808452B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410849532.2A CN105808452B (zh) 2014-12-29 2014-12-29 微控制单元mcu的数据分级处理方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410849532.2A CN105808452B (zh) 2014-12-29 2014-12-29 微控制单元mcu的数据分级处理方法和系统

Publications (2)

Publication Number Publication Date
CN105808452A CN105808452A (zh) 2016-07-27
CN105808452B true CN105808452B (zh) 2019-04-26

Family

ID=56421567

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410849532.2A Active CN105808452B (zh) 2014-12-29 2014-12-29 微控制单元mcu的数据分级处理方法和系统

Country Status (1)

Country Link
CN (1) CN105808452B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107272496A (zh) * 2017-07-14 2017-10-20 佛山华芯微特科技有限公司 一种mcu存储系统及实现方法
US20190073132A1 (en) * 2017-09-05 2019-03-07 Alibaba Group Holding Limited Method and system for active persistent storage via a memory bus
CN111078261B (zh) * 2019-11-13 2022-10-18 汉纳森(厦门)数据股份有限公司 闪存升级装置及车辆
CN114063887A (zh) * 2020-07-31 2022-02-18 深圳市中兴微电子技术有限公司 写入及读取方法、处理器芯片、存储介质和电子设备
CN115086168B (zh) * 2022-08-19 2022-11-22 北京全路通信信号研究设计院集团有限公司 一种车载设备通信参数更新存储方法、系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662913A (zh) * 2012-03-29 2012-09-12 佛山华芯微特科技有限公司 用于提高mcu存储性能的方法及其对应的mcu芯片
CN103019955A (zh) * 2011-09-28 2013-04-03 中国科学院上海微系统与信息技术研究所 基于pcram主存应用的内存管理方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8914568B2 (en) * 2009-12-23 2014-12-16 Intel Corporation Hybrid memory architectures

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103019955A (zh) * 2011-09-28 2013-04-03 中国科学院上海微系统与信息技术研究所 基于pcram主存应用的内存管理方法
CN102662913A (zh) * 2012-03-29 2012-09-12 佛山华芯微特科技有限公司 用于提高mcu存储性能的方法及其对应的mcu芯片

Also Published As

Publication number Publication date
CN105808452A (zh) 2016-07-27

Similar Documents

Publication Publication Date Title
CN105808452B (zh) 微控制单元mcu的数据分级处理方法和系统
CN105446900B (zh) 处理器和区分系统管理模式条目的方法
CN104115132B (zh) 借助于存储器通道关闭的功率节约
CN103946813B (zh) 基于使用统计量追踪的远存储器访问信号的生成
US8561043B2 (en) Data transfer optimized software cache for irregular memory references
CN102841865B (zh) 高性能缓存系统和方法
CN110045913A (zh) 垃圾收集的方法、记忆装置及其控制器和电子装置
CN109952567B (zh) 用于旁通高级dram存储器控制器的内部高速缓存的方法和装置
CN103729306B (zh) 高速缓存块无效的方法和数据处理设备
CN108874695A (zh) 在电力关闭时保存数据
CN109558168A (zh) 低等待时间加速器
US20070016719A1 (en) Memory device including nonvolatile memory and memory controller
CN105975405B (zh) 处理器和使处理器进行工作的方法
CN107368433A (zh) 2级存储器分级结构中的存储器侧高速缓存的动态部分断电
CN103198026A (zh) 指令高速缓存功耗降低
CN106462410A (zh) 加速基于非易失性存储器(nvm)技术的存储器的引导时间清零
CN100426220C (zh) 在通信系统中利用单片机实现软件下载的装置及其方法
US20100191913A1 (en) Reconfiguration of embedded memory having a multi-level cache
CN102073596A (zh) 针对指令的可重构片上统一存储器管理方法
CN102566978A (zh) 存储器加速器缓冲器置换方法及系统
CN106557442A (zh) 一种芯片系统
JPH10293720A (ja) コンピュータシステムにおけるキャッシュ・コヒーレンシー機構および主メモリに保持されている項目に関してキャッシュの内容のコヒーレンシー状態を変更する方法
CN100437485C (zh) 用于配置计算机系统的系统和方法
CN108959125A (zh) 一种支持数据快速获取的存储访问方法和装置
US7356647B1 (en) Cache with integrated capability to write out entire cache

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: Room 101, Floor 1-5, Building 8, Yard 9, Fenghao East Road, Haidian District, Beijing 100094

Patentee after: Zhaoyi Innovation Technology Group Co.,Ltd.

Address before: 100083 12 Floors, Block A, Tiangong Building, Science and Technology University, 30 College Road, Haidian District, Beijing

Patentee before: GIGADEVICE SEMICONDUCTOR(BEIJING) Inc.