CN105808453B - 嵌入式装置及其存储器管理方法 - Google Patents
嵌入式装置及其存储器管理方法 Download PDFInfo
- Publication number
- CN105808453B CN105808453B CN201410851832.4A CN201410851832A CN105808453B CN 105808453 B CN105808453 B CN 105808453B CN 201410851832 A CN201410851832 A CN 201410851832A CN 105808453 B CN105808453 B CN 105808453B
- Authority
- CN
- China
- Prior art keywords
- memory
- address
- hardware
- indirect
- system storage
- 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
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明揭露了一种嵌入式装置及嵌入式装置的存储器管理方法,该嵌入式装置包含一系统存储器及一硬件存储器,并且嵌入式装置的操作系统基于一虚拟存储器地址运作,该方法包含:利用一第一存储器管理单元将该虚拟存储器地址映射至一间接存储器地址;以及利用一第二存储器管理单元将该间接存储器地址映射至该硬件存储器的物理地址及选择性地映射至该系统存储器的物理地址,使嵌入式装置的操作系统得以存取该硬件存储器。
Description
技术领域
本发明是关于嵌入式装置及其存储器管理方法,尤其是关于利用第二级存储器管理单元(memory management unit,以下简称MMU)使嵌入式装置不需要重新启动即能够动态扩展存储器的嵌入式装置及其存储器管理方法。
背景技术
请参阅图1,其系习知嵌入式装置的功能方块图。嵌入式装置100包含处理单元110、MMU 115、功能模块120、系统存储器130及硬件存储器140。嵌入式装置100为具有有限的硬件资源,并且提供特定功能的硬件装置,例如电视、手机、多媒体播放器等装置。较高阶的嵌入式装置100通常载有操作系统,以处理更复杂的程序。处理单元110配合系统存储器130以运行该操作系统,一般而言,处理单元110透过其内建的MMU 115来存取系统存储器130。MMU 115的主要功能为将操作系统所使用的虚拟存储器地址(或称为逻辑地址)映射至系统存储器130的物理存储器地址,具有使处理单元110能更有效率地使用系统存储器130以及提高操作系统的安全性等好处。MMU 115的动作原理为本技术领域具有通常知识者所熟知,故不赘述。嵌入式装置100的功能模块120主要为嵌入式装置100提供特定的功能,举例来说,假设嵌入式装置100为电视,则功能模块120可能是影像解码电路,又例如嵌入式装置100为手机,则功能模块120可能是射频收发电路。一般而言,功能模块120在运作时需要一块连续的物理存储器,而系统存储器130在操作系统运行一段时间后,其存储器空间有很大的机率变得破碎,也就是无法再取得一块连续的物理存储器地址供功能模块120使用。因此,功能模块120通常有自己专属的硬件存储器140,硬件存储器140与系统存储器130相互独立,当功能模块120运作时,便可藉由存取硬件存储器140来达成其功能。然而在习知的嵌入式装置100中,当功能模块120结束其工作而进入闲置状态时,硬件存储器140也同样进入闲置状态,造成硬件资源的浪费。对硬件资源相当宝贵的嵌入式装置100而言,如果能于硬件存储器140闲置时做更妥善的运用,且不影响后续功能模块120由闲置状态回到工作状态时对硬件存储器140的存取,则可进一步提高嵌入式装置100的效能。
发明内容
鉴于先前技术的不足,本发明的一目的在于提供一种嵌入式装置及其存储器管理方法,以更有效率地使用存储器。
本发明揭露了一种嵌入式装置的存储器管理方法,该嵌入式装置包含一系统存储器及一硬件存储器,并且嵌入式装置的操作系统基于一虚拟存储器地址运作,该方法包含:利用一第一存储器管理单元将该虚拟存储器地址映射至一间接存储器地址;以及利用一第二存储器管理单元将该间接存储器地址映射至该硬件存储器的物理地址及选择性地映射至该系统存储器的物理地址。
本发明另揭露了一种嵌入式装置,其操作系统基于一虚拟存储器地址运作,该嵌入式装置包含:一系统存储器;一硬件存储器;一第一存储器管理单元,用来将该虚拟存储器地址映射至一间接存储器地址;以及一第二存储器管理单元,耦接该系统存储器及该硬件存储器,用来将该间接存储器地址映射至该硬件存储器的物理地址及选择性地映射至该系统存储器的物理地址,使嵌入式装置的操作系统得以存取该硬件存储器。
本发明的嵌入式装置及其存储器管理方法能够将闲置中的硬件存储器交给操作系统使用,以暂时扩充嵌入式装置的系统存储器。相较于习知技术,本发明的嵌入式装置及其存储器管理方法依据硬件存储器的使用情形动态地将其交由操作系统使用,并且当硬件存储器所属的功能模块由闲置状态回到工作状态时,快速地将硬件存储器归还给功能模块,不影响功能模块的后续操作。并且上述的借用及归还硬件存储器的过程,嵌入式装置不需要重新启动。
有关本发明的特征、实作与功效,兹配合图式作较佳实施例详细说明如下。
附图说明
图1为习知嵌入式装置的功能方块图;
图2为本发明嵌入式装置的一实施例的功能方块图;
图3为本发明的第一级MMU、第二级MMU与存储器地址的映射关系的示意图;
图4为本发明的虚拟存储器地址、间接存储器地址与物理存储器地址的映射关系的一实施例的示意图;
图5a及图5b为本发明的第一级MMU的分页表与第二级MMU的分页表的一实施例的示意图;
图6为本发明的虚拟存储器地址、间接存储器地址与物理存储器地址的映射关系的另一实施例的示意图;
图7a及图7b为本发明的第一级MMU的分页表与第二级MMU的分页表的另一实施例的示意图;
图8为本发明的虚拟存储器地址、间接存储器地址与物理存储器地址的映射关系的另一实施例的示意图;
图9a及图9b为本发明的第一级MMU的分页表与第二级MMU的分页表的另一实施例的示意图;以及
图10为本发明的嵌入式装置的存储器管理方法的一实施例的流程图。
符号说明
100、200:嵌入式装置
110、210:处理单元
115、215、250:MMU
120、220:功能模块
130、230:系统存储器
140、240、610:硬件存储器
310:虚拟存储器地址
320:间接存储器地址
330:系统存储器的物理地址
340:硬件存储器的物理地址
S1005~S1090:步骤
具体实施方式
以下说明内容的技术用语系参照本技术领域的习惯用语,如本说明书对部分用语有加以说明或定义,该部分用语的解释系以本说明书的说明或定义为准。
本发明的揭露内容包含嵌入式装置及其存储器管理方法,能够有效率地运用嵌入式装置中闲置的硬件存储器。该装置与方法可应用于具有第二级MMU的嵌入式装置,在实施为可能的前提下,本技术领域具有通常知识者能够依本说明书的揭露内容来选择等效的元件或步骤来实现本发明,亦即本发明的实施并不限于后叙的实施例。
请参阅图2,其系本发明嵌入式装置的一实施例的功能方块图。嵌入式装置200包含处理单元210、MMU 215、功能模块220、系统存储器230、硬件存储器240及MMU 250。处理单元210、功能模块220、系统存储器230及硬件存储器240的功能与图1中具有相同名称的元件具有相同或相似的功能,故不再赘述。相较于习知的嵌入式装置100,本发明的嵌入式装置200更包含MMU 250,其介于处理单元210与硬件存储器240及系统存储器230之间,更详细地说,其介于MMU 215与硬件存储器240及系统存储器230之间,透过总线耦接处理单元210、系统存储器230及硬件存储器240,用来提供操作系统的虚拟存储器地址与系统存储器230及/或硬件存储器240的物理地址之间另一层的映射机制。请注意,在其他的实施例中,处理单元本身可能包含两个MMU,此种高阶的处理单元的目的是为了在一个虚拟机(virtualmachine,VM)中同时支持两个以上的操作系统,其中一个MMU(第一级MMU)负责将某一操作系统的虚拟存储器地址与间接存储器地址(indirect physical address)映射,另一个MMU(第二级MMU)负责将间接存储器地址映射至虚拟机所管理的存储器的物理地址。
请参阅图3,其系本发明的两级MMU与存储器地址的映射关系的示意图。MMU 215(第一级MMU)除了负责直接将系统存储器130的物理地址330映射至嵌入式装置200的操作系统所使用的虚拟存储器地址310,也负责在虚拟存储器地址310与间接存储器地址320之间做映射,MMU 250(第二级MMU)负责在间接存储器地址320与系统存储器的物理地址330及硬件存储器的物理地址340之间做映射。如果嵌入式装置200所使用的操作系统为Linux的架构,其操作系统程序及应用程序中会散布许多页框号码(page frame number,pfn),页框号码是用来协助操作系统程序及应用程序取得当前系统存储器的物理地址。在习知的嵌入式装置100中,因为虚拟存储器地址透过MMU 115直接映射至系统存储器的物理地址,当MMU115改变分页表(page table)使虚拟存储器地址与系统存储器的物理地址的映射状况改变时,所有相关联的页框号码必须全部随之改变,这对系统是重大的负担。因此本发明使用MMU 250在虚拟存储器地址310与系统存储器的物理地址330及硬件存储器的物理地址340之间做另一层映射,使硬件存储器的物理地址340及/或系统存储器的物理地址330的部分先映射至间接存储器地址320,再映射至虚拟存储器地址310,所以当本发明藉由改变MMU250的分页表来将间接存储器地址320映射至不同的硬件存储器的物理地址340及/或系统存储器的物理地址330时,虚拟存储器地址310与间接存储器地址320的映射关系将不受影响,嵌入式装置200的操作系统可以省去修改页框号码的不便。
请参阅图4,其系本发明的虚拟存储器地址、间接存储器地址与物理存储器(包含系统存储器及硬件存储器)地址的映射关系的一实施例的示意图。以下的实施例假设嵌入式装置200的操作系统的虚拟存储器地址310直接或间接映射至物理存储器地址的0~129(此处的数字以十进制表示,仅用于示意存储器的相对大小,不代表其绝对地址,并且实作上计算机程序中的存储器地址可能以其他形式表示,大小可能亦不相同),表示最佳的情况下操作系统可使用130单位的存储器资源。由图4可以明了,系统存储器230及硬件存储器240可以是同一块存储器,仅是在系统开机时分别被分配作为系统存储器230与硬件存储器240,其具有不同的存储器地址。图4的虚拟存储器地址310可以分为两部分,第一部分(地址的0~99)固定映射至系统存储器230,第二部分(地址的100~129)映射至间接存储器地址320,并且间接存储器地址320视硬件存储器240的工作或闲置状况,动态改变映射至系统存储器230及/或硬件存储器240的地址。请注意,上述第一部分及第二部分的地址仅用于示意,并非限制本发明,第一部分及第二部分可能有其他的配置方式,例如第二部分为虚拟存储器地址50~79,其余的地址则为第一部分。在图4的实施例中,硬件存储器240的物理存储器地址为100~129,大小为30单位,当其对应的功能模块220处于闲置状态时,可以暂时给操作系统使用。MMU 250将间接存储器地址320全部映射至硬件存储器240,也就是说在图4的实施例中,嵌入式装置200的额外的存储器资源全部由单一的硬件存储器240提供。请参阅图5a及图5b,其系本发明的第一级MMU215的分页表与第二级MMU250的分页表的一实施例的示意图。图5a中,虚拟存储器地址310的第一部分映射至物理存储器地址0~99(即系统存储器230),第二部分则映射至间接存储器地址0~29(即整个间接存储器320);图5b中,间接存储器地址0~29全部映射至物理存储器地址100~129的部分(即整个硬件存储器240)。
请参阅图6,其系本发明的虚拟存储器地址、间接存储器地址与物理存储器地址的映射关系的另一实施例的示意图。在本实施例中,嵌入式装置200更包含硬件存储器610,而硬件存储器240的大小为10单位,硬件存储器610的大小为20单位。当硬件存储器240所属的功能模块(即功能模块220)及硬件存储器610所属的功能模块(未绘示)同时处于闲置状态时,MMU 250将间接存储器地址320映射至硬件存储器240及硬件存储器610,也就是说在图6的实施例中,嵌入式装置200的额外的存储器资源由硬件存储器240及硬件存储器610提供。请参阅图7a及图7b,其系本发明的第一级MMU215的分页表与第二级MMU250的分页表的另一实施例的示意图。图7a中,虚拟存储器地址310的第一部分映射至物理存储器地址0~99的部分(即系统存储器230),第二部分则映射至间接存储器地址320;图7b中,间接存储器地址320的地址0~9映射至物理存储器地址100~109的部分(即整个硬件存储器240),地址10~29映射至物理存储器地址110~129的部分(即整个硬件存储器610)。
请参阅图8,其系本发明的虚拟存储器地址、间接存储器地址与物理存储器地址的映射关系的另一实施例的示意图。承上一实施例,在本实施例中,当硬件存储器240所属的功能模块(即功能模块220)由闲置状态转为工作状态时,硬件存储器240必须归还给功能模块220使用,因此间接存储器地址320中,原本映射至硬件存储器240的部分必须改由系统存储器230提供,而原本映射至硬件存储器610的部分则不变。实作上,当上述的状况发生时,嵌入式装置200的操作系统先透过系统呼叫(例如在Linux系统中透过函数malloc或其等效的指令)在系统存储器230上取得大小为10单位的未使用存储器(例如图8中所示系统存储器地址75~84的部分),并且MMU 250将此段存储器地址映射至间接存储器地址320中原本对应硬件存储器240的部分,之后处理单元210将原本储存于硬件存储器240中的数据移动至此新取得的10单位的未使用存储器中,硬件存储器240便可归还功能模块220使用。也就是说,在此实施例中,嵌入式装置200的系统的额外存储器系由硬件存储器240及系统存储器230提供,因此实际上嵌入式装置200可用的系统存储器的大小为100+30-10=120单位。请注意,在这个实施例中,存储器地址75~84的部分系为一连续存储器,然而实作上,也可以是自不连续的存储器取得总共10单位的未使用存储器。请参阅图9a及图9b,其系本发明的第一级MMU215的分页表与第二级MMU250的分页表的另一实施例的示意图。图9a中,虚拟存储器地址310的第一部分映射至物理存储器地址0~99的部分(即系统存储器230),第二部分则映射至间接存储器地址320;图9b中,间接存储器地址320的地址0~9映射至物理存储器地址75~84(即部分的系统存储器230)以及间接存储器地址320的地址10~29映射至物理存储器地址110~129(即整个硬件存储器610),而因为系统存储器230中的10单位用来暂时存放原本硬件存储器240中的数据,此时处理单元210可以从虚拟存储器地址310得知物理存储器地址75~84的部分已被使用,因此实际上总共可使用的系统存储器的大小为120单位。之后当功能模块220由工作状态回到闲置状态,处理单元210先将暂存于系统存储器230中的数据搬移至硬件存储器240,然后由MMU 250修改分页表,使其回到图7b所示的状态,最后操作系统释放该暂存区块,操作系统便可再度使用完整的100单位的系统存储器及额外的30单位的硬件存储器。请注意,上述的归还硬件存储器240以及再次将硬件存储器240纳入操作系统可加以利用的额外存储器资源的过程中,只需修改第二级MMU 250的分页表,嵌入式装置200不需重新启动,因此提高了操作的便利性。
请参阅图10,其系本发明的嵌入式装置的存储器管理方法的一实施例的流程图。除前述的嵌入式装置外,本发明亦相对应地揭露了一种嵌入式装置的存储器管理方法,能够动态扩充嵌入式装置的系统存储器。本方法由前揭嵌入式装置200或其等效装置来执行。如图10所示,本发明嵌入式装置的存储器管理方法的一实施例包含下列步骤:
步骤S1005:嵌入式装置开机,操作系统启动;
步骤S1010:将嵌入式装置的系统存储器及硬件存储器加载于操作系统。在预设的情况下,此步骤系透过第一级MMU将第一部份的虚拟存储器地址映射至系统存储器的物理地址,以及将第二部分的虚拟存储器地址映射至间接存储器地址,前述嵌入式装置的操作系统透过其述虚拟存储器地址存取存储器。并且,一开始第二级MMU系将间接存储器地址映射至闲置的硬件存储器,使操作系统能够将各闲置中的功能模块的硬件存储器作为额外的系统存储器使用。间接存储器地址与硬件存储器的映射可视功能模块的状态动态调整;此外,间接存储器地址可能映射至单一的硬件存储器(如图4的实施例所示),亦可能映射至2个以上的硬件存储器(如图6的实施例所示);
步骤S1020:开机作业完成,操作系统稳定工作中。刚开机完成时,操作系统可以使用全部的系统存储器及额外加载的硬件存储器,就图4或图6所示的实施例来说,此时操作系统共有130单位的存储器资源可以使用;
步骤S1030:判断功能模块是否需使用硬件存储器。如果功能模块处于闲置状态,代表操作系统可以继续使用该功能模块的硬件存储器(回到步骤S1020);如果功能模块必须使用该硬件存储器(例如影像解码单元开始解码影像),代表硬件存储器必须归还给功能模块,亦即操作系统能够使用的额外存储器资源将减少;
步骤S1040:从系统存储器取得大小相当于待归还给功能模块的硬件存储器的储存空间。硬件存储器归还给功能模块之前,操作系统必须从系统存储器中取得与待归还的硬件存储器同样大小的储存空间,以便将硬件存储器中的数据搬移至系统存储器;在图4的实施例中,若欲归还硬件存储器240,则必须向系统存储器取得30单位的储存空间;在图6的实施例中,若欲归还硬件存储器240,则必须向系统存储器取得10单位的储存空间;
步骤S1050:将硬件存储器中的数据搬移至系统存储器,并令第二级MMU改变分页表。取得储存空间后,硬件存储器中的数据被搬移至系统存储器,此时操作系统不再使用硬件存储器,因此第二级的MMU必须修改其分页表,使原本指向硬件存储器的地址,改为指向该些数据移动后的地址。参考图7b及图9b,当硬件存储器240归还后,间接存储器地址中原本指向物理存储器地址100的地址,改为指向物理存储器地址75的地址,而虚拟存储器地址对应物理存储器地址75~84的部分将变为已使用,所以此时操作系统可以使用的存储器资源共100+30-10=120单位的储存空间;
步骤S1060:将硬件存储器归还功能模块。当第二级MMU修改分页表之后,硬件存储器即可归还给功能模块使用;
步骤S1070:等待功能模块完成工作以空出硬件存储器。当功能模块完成其工作(例如影像解码单元完成影像解码),硬件存储器便不再被功能模块占用,因此可供操作系统使用;
步骤S1080:将数据从系统存储器搬移至硬件存储器,并令第二级MMU改变分页表。硬件存储器回复到闲置状态后,先将步骤S1050中搬移至系统存储器的数据搬回硬件存储器,第二级MMU再修改分页表,使间接存储器地址指向系统存储器的部分改为指向硬件存储器,因此操作系统有额外的系统存储器可用(例如图8的硬件存储器240由工作状态回到闲置状态,MMU 250将分页表由图9b改为图7b);以及
步骤S1090:释放系统存储器。完成步骤S1080的数据搬移后,步骤S1040中所取得的系统存储器必须被释放,此时操作系统可使用完整的系统存储器及额外加载的硬件存储器(回到步骤S1020)。
本技术领域具有通常知识者可藉由图2至图9的装置发明的揭露内容来了解图10的方法发明的实施细节与变化,因此虽然本发明的实施例如上所述,然而该些实施例并非用来限定本发明,本技术领域具有通常知识者可依据本发明的明示或隐含的内容对本发明的技术特征施以变化,换言之,本发明的专利保护范围须视本说明书的申请专利范围所界定者为准。
Claims (18)
1.一种存储器管理方法,应用于一嵌入式装置,该嵌入式装置包含一系统存储器及一硬件存储器,该硬件存储器对应于该嵌入式装置的一功能模块,且该嵌入式装置的操作系统基于一虚拟存储器地址运作,该方法包含:
将该虚拟存储器的一部分地址映射至一间接存储器地址;以及
将该间接存储器地址映射至该硬件存储器及该系统存储器的至少一者的物理地址,其中
当该功能模块处于一闲置状态,将该间接存储器地址的一部分映射至该硬件存储器;当该功能模块由该闲置状态进入一工作状态,将该间接存储器地址中映射至该硬件存储器的该部分映射至该系统存储器。
2.如权利要求1所述的存储器管理方法,其特征在于,该嵌入式装置的操作系统包含指向该间接存储器地址的一页框号码,该将该间接存储器地址映射至该硬件存储器及该系统存储器的该至少一者的物理地址的步骤包含:
变更该间接存储器地址映射至该硬件存储器及该系统存储器的该至少一者的物理地址,其中该页框号码维持不变。
3.如权利要求1所述的存储器管理方法,其特征在于,更包含:
将该硬件存储器储存的一数据搬移至该系统存储器。
4.如权利要求1所述的存储器管理方法,其特征在于,更包含:
当该功能模块由该工作状态进入该闲置状态,将该间接存储器地址中映射至该系统存储器的该部分映射至该硬件存储器。
5.如权利要求4所述的存储器管理方法,其特征在于,更包含:
将该系统存储器储存的一数据搬移至该硬件存储器。
6.一种存储器管理方法,应用于一嵌入式装置,该嵌入式装置包含一系统存储器、一硬件存储器以及另一硬件存储器,该硬件存储器与该另一硬件存储器分别对应于该嵌入式装置的一功能模块与一另一功能模块,且该嵌入式装置的操作系统基于一虚拟存储器地址运作,该方法包含:
将该虚拟存储器的一部分地址映射至一间接存储器地址;以及
将该间接存储器地址映射至该硬件存储器及该系统存储器的至少一者的物理地址,其中
当该功能模块与该另一功能模块皆处于一闲置状态,将该间接存储器地址的一部分映射至该硬件存储器,以及将该间接存储器地址的一另一部份映射至该另一硬件存储器;以及
当该另一功能模块由该闲置状态进入一工作状态,将该间接存储器地址中映射至该另一硬件存储器的该另一部分映射至该系统存储器。
7.如权利要求6所述的存储器管理方法,其特征在于,该嵌入式装置的操作系统包含指向该间接存储器地址的一页框号码,该将该间接存储器地址映射至该硬件存储器及该系统存储器的该至少一者的物理地址的步骤包含:
变更该间接存储器地址映射至该硬件存储器及该系统存储器的该至少一者的物理地址,其中该页框号码维持不变。
8.一种嵌入式装置,其操作系统基于一虚拟存储器地址运作,该嵌入式装置包含:
一系统存储器;
一硬件存储器;
一功能模块,对应于该硬件存储器;
一第一存储器管理单元,用来将该虚拟存储器的一部分地址映射至一间接存储器地址;以及
一第二存储器管理单元,耦接该系统存储器及该硬件存储器,用来将该间接存储器地址映射至该硬件存储器及该系统存储器的至少一者的物理地址,其中,当该功能模块处于一闲置状态,该第二存储器管理单元将该间接存储器地址的一部分映射至该硬件存储器;以及当该功能模块由一闲置状态进入一工作状态,该第二存储器管理单元将该间接存储器地址中映射至该硬件存储器的该部分,映射至该系统存储器。
9.如权利要求8所述的嵌入式装置,其特征在于,该嵌入式装置的操作系统包含指向该间接存储器地址的一页框号码,当该第二存储器管理单元变更该间接存储器地址映射至该硬件存储器及该系统存储器的该至少一者的物理地址时,该页框号码维持不变。
10.如权利要求8所述的嵌入式装置,其特征在于,当该第二存储器管理单元将该间接存储器地址中映射至该硬件存储器的该部分映射至该系统存储器时,该系统存储器用以储存搬移自该硬件存储器的一数据。
11.如权利要求8所述的嵌入式装置,其特征在于,当该功能模块由于该工作状态进入该闲置状态,该第二存储器管理单元将该间接存储器地址中映射至该系统存储器的该部分,映射至该硬件存储器。
12.如权利要求11所述的嵌入式装置,其特征在于,当该第二存储器管理单元将该间接存储器地址中映射至该系统存储器的该部分映射至该硬件存储器时,该硬件存储器用以储存搬移自该系统存储器的一数据。
13.如权利要求8所述的嵌入式装置,其特征在于,更包含:
一处理单元;
其中该第一存储器管理单元及该第二存储器管理单元包含于该处理单元之中。
14.如权利要求8所述的嵌入式装置,其特征在于,更包含;
一处理单元;
其中该第一存储器管理单元包含于该处理单元之中,该第二存储器管理单元位于该处理单元、该系统存储器及该硬件存储器之间,并透过总线耦接至该处理单元、该系统存储器及该硬件存储器。
15.一种嵌入式装置,其操作系统基于一虚拟存储器地址运作,该嵌入式装置包含:
一系统存储器;
一另一硬件存储器;
一硬件存储器;
一功能模块,对应于该硬件存储器;
一另一功能模块,对应于该另一硬件存储器;
一第一存储器管理单元,用来将该虚拟存储器的一部分地址映射至一间接存储器地址;以及
一第二存储器管理单元,耦接该系统存储器及该硬件存储器,用来将该间接存储器地址映射至该硬件存储器及该系统存储器的至少一者的物理地址,其中,当该功能模块与该另一功能模块皆处于一闲置状态,该第二存储器管理单元将该间接存储器地址的一部分映射至该硬件存储器,以及将该间接存储器地址的一另一部分映射至该另一硬件存储器,以及当该另一功能模块由该闲置状态进入一工作状态,该第二存储器管理单元将该间接存储器地址中映射至该另一硬件存储器的该另一部分映射至该系统存储器。
16.如权利要求15所述的嵌入式装置,其特征在于,该嵌入式装置的操作系统包含指向该间接存储器地址的一页框号码,当该第二存储器管理单元变更该间接存储器地址映射至该硬件存储器及该系统存储器的该至少一者的物理地址时,该页框号码维持不变。
17.如权利要求15所述的嵌入式装置,其特征在于,更包含:
一处理单元;
其中该第一存储器管理单元及该第二存储器管理单元包含于该处理单元之中。
18.如权利要求15所述的嵌入式装置,其特征在于,更包含;
一处理单元;
其中该第一存储器管理单元包含于该处理单元之中,该第二存储器管理单元位于该处理单元、该系统存储器及该硬件存储器之间,并透过总线耦接至该处理单元、该系统存储器及该硬件存储器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410851832.4A CN105808453B (zh) | 2014-12-31 | 2014-12-31 | 嵌入式装置及其存储器管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410851832.4A CN105808453B (zh) | 2014-12-31 | 2014-12-31 | 嵌入式装置及其存储器管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105808453A CN105808453A (zh) | 2016-07-27 |
CN105808453B true CN105808453B (zh) | 2018-09-28 |
Family
ID=56420507
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410851832.4A Active CN105808453B (zh) | 2014-12-31 | 2014-12-31 | 嵌入式装置及其存储器管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105808453B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220078132A (ko) | 2020-12-03 | 2022-06-10 | 삼성전자주식회사 | 어드레스 변환을 수행하는 시스템 온 칩 및 이의 동작 방법 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1504898A (zh) * | 2002-11-29 | 2004-06-16 | 上海奇码数字信息有限公司 | 内部数据存储结构、寻址方法以及数字信号处理器 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7386700B2 (en) * | 2004-07-30 | 2008-06-10 | Sandisk Il Ltd | Virtual-to-physical address translation in a flash file system |
US10380030B2 (en) * | 2012-12-05 | 2019-08-13 | Arm Limited | Caching of virtual to physical address translations |
-
2014
- 2014-12-31 CN CN201410851832.4A patent/CN105808453B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1504898A (zh) * | 2002-11-29 | 2004-06-16 | 上海奇码数字信息有限公司 | 内部数据存储结构、寻址方法以及数字信号处理器 |
Also Published As
Publication number | Publication date |
---|---|
CN105808453A (zh) | 2016-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10042778B2 (en) | Collapsed address translation with multiple page sizes | |
US20170177497A1 (en) | Compressed caching of a logical-to-physical address table for nand-type flash memory | |
US20150089150A1 (en) | Translation Bypass In Multi-Stage Address Translation | |
US7543124B1 (en) | Method for preventing page replacement of unreferenced read-ahead file pages | |
EP2472412B1 (en) | Explicitly regioned memory organization in a network element | |
US20210089468A1 (en) | Memory management unit, address translation method, and processor | |
US20150089147A1 (en) | Maintenance Of Cache And Tags In A Translation Lookaside Buffer | |
US8868883B1 (en) | Virtual memory management for real-time embedded devices | |
US20150278096A1 (en) | Method, apparatus and system to cache sets of tags of an off-die cache memory | |
EP3163451B1 (en) | Memory management method and device, and memory controller | |
US10732878B1 (en) | Enabling secondary scratchpad cache with solid-state devices for low cost hosts | |
WO2022151985A1 (zh) | 基于虚拟内存的数据存储方法、装置、设备及存储介质 | |
JP6674460B2 (ja) | 不均一メモリアーキテクチャにおける改善されたレイテンシのためのシステムおよび方法 | |
US20170024145A1 (en) | Address translation and data pre-fetch in a cache memory system | |
EP2389671B1 (en) | Non-graphics use of graphics memory | |
CN105808453B (zh) | 嵌入式装置及其存储器管理方法 | |
TWI533202B (zh) | 嵌入式裝置及其記憶體管理方法 | |
TW201202929A (en) | Apparatus and methods to reduce duplicate line fills in a victim cache | |
US20200192818A1 (en) | Translation lookaside buffer cache marker scheme for emulating single-cycle page table entry invalidation | |
CN107111560A (zh) | 用于在非统一存储器架构中提供改进的延迟的系统和方法 | |
CN106502924B (zh) | 一种内存优化方法及系统 | |
CN112860381B (zh) | 基于申威处理器的虚拟机内存扩容方法及系统 | |
US11467766B2 (en) | Information processing method, apparatus, device, and system | |
CN105183668B (zh) | 缓存刷新方法及装置 | |
CN113742253B (zh) | 存储介质管理方法、装置、设备以及计算机可读存储介质 |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200413 Address after: No.1, Duhang 1st Road, Hsinchu City, Hsinchu Science Park, Taiwan, China Patentee after: MEDIATEK Inc. Address before: Taiwan Hsinchu County Tai Yuan Street China jhubei City, No. 26 4 floor 1 Patentee before: MStar Semiconductor, Inc. |