实现地址映射的内存管理系统及方法技术方案

技术编号:15287998 阅读:56 留言:0更新日期:2017-05-10 12:26
本发明专利技术提供一种实现地址映射的内存管理系统及方法,包括虚拟地址列表、物理地址列表、压缩地址列表和传输后备缓冲器;所述虚拟地址列表、所述物理地址列表和所述压缩地址列表组成一个n行3列的整合列表,该整合列表包含多个整合表项,每个整合表项中的三个元素分别为相对应的虚拟地址、物理地址和压缩地址;所述传输后备缓冲器用于存储与一些虚拟地址对应的整合表项。本发明专利技术的实现地址映射的内存管理系统及方法,能够将现有的虚拟地址到物理地址的映射和物理地址到压缩地址的映射相结合,快速地实现虚拟地址到压缩地址的映射,从而降低访问延时。

Memory management system and method for implementing address mapping

The present invention provides a memory management system and method of address mapping, including the virtual address list, physical address list, address list compression and transmission lookaside buffer; the virtual address list, the physical address list and the compressed address list consists of a list of 3 columns for n integration, the integration of the list includes more than one table integration. The three elements in the table are respectively corresponding to the integration of each virtual address and physical address and address compression; the backup transmission buffer for table storage and integration of virtual address. The memory management system and method of mapping the realization of the invention can be the existing virtual address to physical address mapping and physical address mapping to address compression combination, quickly realize the virtual address mapping to the compressed address, thereby reducing the access delay.

【技术实现步骤摘要】

本专利技术涉及内存管理的
,特别是涉及一种实现地址映射的内存管理系统及方法
技术介绍
内存是计算机中重要的部件之一,它是与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大。内存(Memory)也被称为主存,其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。只要计算机在运行中,CPU就会把需要运算的数据调到内存中进行运算,当运算完成后CPU再将结果传送出来,内存的运行也决定了计算机的稳定运行。然而,现有技术中的将虚拟地址映射到压缩地址的方案会给平台带来较多的访问延迟,不利于平台的处理速度的提高。
技术实现思路
鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种实现地址映射的内存管理系统及方法,能够将现有的虚拟地址到物理地址的映射和物理地址到压缩地址的映射相结合,快速地实现虚拟地址到压缩地址的映射,从而降低访问延时。为实现上述目的及其他相关目的,本专利技术提供一种实现地址映射的内存管理系统,包括虚拟地址列表、物理地址列表、压缩地址列表和传输后备缓冲器;所述虚拟地址列表、所述物理地址列表和所述压缩地址列表组成一个n行3列的整合列表,该整合列表包含多个整合表项,每个整合表项中的三个元素分别为相对应的虚拟地址、物理地址和压缩地址;所述传输后备缓冲器用于存储与一些虚拟地址对应的整合表项;将虚拟地址映射到压缩地址时,若所述传输后备缓冲器中包含该虚拟地址对应的一个整合表项,则直接根据该整合表项中的映射关系查询到对应的压缩地址;若所述传输后备缓冲器中不包含该虚拟地址对应的整合表项,则将包含该虚拟地址的整合表项从存储在内存中的整合列表,替换到所述传输后备缓冲器中,然后根据该整合表项中的映射关系查询对应的压缩地址。根据上述的实现地址映射的内存管理系统,其中:在n行3列的整合表项中,前两列数据构成了页表,后两列数据构成了块表。同时,本专利技术还提供一种实现地址映射的内存管理方法,包括以下步骤:步骤S1、将虚拟地址列表、物理地址列表和压缩地址列表组成一个n行3列的整合列表,该整合列表包含多个整合表项,每个整合表项中的三个元素分别为相对应的虚拟地址、物理地址和压缩地址;在传输后备缓冲器中存储与一些虚拟地址对应的整合表项;步骤S2、将虚拟地址映射到压缩地址时,若所述传输后备缓冲器中包含该虚拟地址对应的一个整合表项,则直接根据该整合表项中的映射关系查询到对应的压缩地址;若所述传输后备缓冲器中不包含该虚拟地址对应的整合表项,则将包含该虚拟地址的整合表项从存储在内存中的整合列表,替换到所述传输后备缓冲器中,然后根据该整合表项中的映射关系查询对应的压缩地址。根据上述的实现地址映射的内存管理方法,其中:所述步骤S1中,在n行3列的整合表项中,前两列数据构成了页表,后两列数据构成了块表。如上所述,本专利技术的实现地址映射的内存管理系统及方法,具有以下有益效果:(1)将现有的虚拟地址到物理地址的映射和物理地址到压缩地址的映射相结合,快速地实现虚拟地址到压缩地址的映射;(2)极大地降低了访问延时。附图说明图1显示为将虚拟地址映射到物理地址的示意图;图2显示为将物理地址映射到压缩地址的示意图;图3显示为将虚拟地址映射到压缩地址的示意图;图4显示为本专利技术的实现地址映射的内存管理系统的结构示意图;图5显示为本专利技术的将虚拟地址映射到压缩地址的内存管理系统的框架示意图;图6显示为本专利技术的将虚拟地址映射到压缩地址的内存管理方法的流程图。具体实施方式以下通过特定的具体实例说明本专利技术的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本专利技术的其他优点与功效。本专利技术还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本专利技术的精神下进行各种修饰或改变。需要说明的是,本实施例中所提供的图示仅以示意方式说明本专利技术的基本构想,遂图式中仅显示与本专利技术中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。内存管理单元(MemoryManagementUnit,MMU)是中央处理器(CPU)中,用来管理虚拟存储器和物理存储器的一个控制模块,同时也负责虚拟地址(virtualpage的地址)与物理地址(physicalpage的地址)的映射,以及提供硬件机制的内存访问授权,多用户多进程操作系统等功能。MMU会使用页表(PageTable)来实施内存管理。PageTable可用于实现虚拟地址到物理地址的映射。通过PageTable,MMU可将虚拟存储器使用的一个虚拟地址,转换为物理存储器使用的一个物理地址。具体来说,虚拟存储器中的每个虚拟存储单元(virtualpage),对应物理存储器中的某个特定的物理存储单元(physicalpage);而每个physicalpage可以对应多个virtualpage。virtualpage和physicalpage的大小一致(比如,都是4KB)。在某个实施例中,虚拟存储器中存储的,和在物理存储器中存储的,都是未被压缩的数据。在某些实施例中,MMU还会使用一个传输后备缓冲器(TranslationLookasideBuffer,简称TLB)对PageTable中的页表项(PageTableEntry,简称PTE)进行缓存以降低延时。PageTable中的信息,可以分别存储在一个系统的内存和TLB中。MMU在完成映射的过程中(即根据一个虚拟地址找到其对应的物理地址),可以先读取TLB,试图在其中的PTE中找到虚拟地址和物理地址之间的映射关系(即“命中”)。如果无法在TLB缓存的信息中找到该映射关系(即“未命中”),MMU可再在内存中的PageTable中寻找。图1中,左边的列表显示的是一个虚拟内存空间,中间的列表显示的是一个TLB,右边的列表显示的是一个PageTable。实线路径1->2->3表示PTE在TLB中命中时的数据访问路径,虚线路径1->2->3->4->5表示PTE不能在TLB命中时的数据访问路径。具体来说,MMU先访问TLB,并试图在TLB找到一个与虚拟地址对应的物理地址。当在TLB中命中时(实线1),MMU可以直接通过TLB,在PageTable中获取与该虚拟地址相对应的PTE,并从该PTE中获取一个与虚拟地址对应的物理地址(实线2),从而根据该物理地址到物理存储中去获取信息(实线3)。当MMU在TLB中无法命中时(虚线1),首先需要到在内存中的PageTable中查找存储了该虚拟地址和物理地址之间的映射关系的PTE(虚线2),然后将该PTE的信息从PageTable传输至TLB用于缓存(虚线3),再在PageTable中根据虚线2获取的虚拟地址和物理地址之间的映射关系找到对应的物理地址(虚线4),从而根据该物理地址到物理存储中去获取信息(虚线5)。因此,虚拟地址到物理地址的映射流程如下:首先在TLB中查询是否包含有该虚拟地址对应的PTE,如果是,则直接利用该PTE从PageTable中获取映射关系,并根据该映射关系返回对应的物理地址本文档来自技高网...
实现地址映射的内存管理系统及方法

【技术保护点】
一种实现地址映射的内存管理系统,其特征在于:包括虚拟地址列表、物理地址列表、压缩地址列表和传输后备缓冲器;所述虚拟地址列表、所述物理地址列表和所述压缩地址列表组成一个n行3列的整合列表,该整合列表包含多个整合表项,每个整合表项中的三个元素分别为相对应的虚拟地址、物理地址和压缩地址;所述传输后备缓冲器用于存储与一些虚拟地址对应的整合表项;将虚拟地址映射到压缩地址时,若所述传输后备缓冲器中包含该虚拟地址对应的一个整合表项,则直接根据该整合表项中的映射关系查询到对应的压缩地址;若所述传输后备缓冲器中不包含该虚拟地址对应的整合表项,则将包含该虚拟地址的整合表项从存储在内存中的整合列表,替换到所述传输后备缓冲器中,然后根据该整合表项中的映射关系查询对应的压缩地址。

【技术特征摘要】
1.一种实现地址映射的内存管理系统,其特征在于:包括虚拟地址列表、物理地址列表、压缩地址列表和传输后备缓冲器;所述虚拟地址列表、所述物理地址列表和所述压缩地址列表组成一个n行3列的整合列表,该整合列表包含多个整合表项,每个整合表项中的三个元素分别为相对应的虚拟地址、物理地址和压缩地址;所述传输后备缓冲器用于存储与一些虚拟地址对应的整合表项;将虚拟地址映射到压缩地址时,若所述传输后备缓冲器中包含该虚拟地址对应的一个整合表项,则直接根据该整合表项中的映射关系查询到对应的压缩地址;若所述传输后备缓冲器中不包含该虚拟地址对应的整合表项,则将包含该虚拟地址的整合表项从存储在内存中的整合列表,替换到所述传输后备缓冲器中,然后根据该整合表项中的映射关系查询对应的压缩地址。2.根据权利要求1所述的实现地址映射的内存管理系统,其特征在于:在n行3列的整合表项中,前两列数据构成了页表,后两列数...

【专利技术属性】
技术研发人员:韩江
申请(专利权)人:福州瑞芯微电子股份有限公司
类型:发明
国别省市:福建;35

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

1