一种访问存储器的方法及内存管理器技术

技术编号:16556923 阅读:59 留言:0更新日期:2017-11-14 16:36
一种访问存储器的方法及内存管理器,所述存储器包括第一存储器及第二存储器,所述方法包括当所述第二存储器处于低功耗模式且检测到所述CPU执行访问所述第二存储器的操作时,触发所述CPU进入异常处理流程,判断引起所述异常处理的原因是否为对所述第二存储器的正常访问请求;当确定引起所述异常处理的原因为对所述第二存储器的正常访问请求时,调用退出函数触发所述第二存储器退出低功耗模式,并将当前的页表从第一页表切换至第二页表;所述第一页表配置为适于访问第一存储器且不能访问所述第二存储器;所述第二页表配置为适于访问所述存储器。采用上述方案可以有效地降低系统功耗,并且提高访问存储器的效率。

Method for accessing memory and memory manager

A method for accessing memory and the memory manager, the memory includes a first memory and a two memory, including the method when the second memory in a low power mode and detection of the CPU implementation of the second memory access operations, triggering the CPU into the exception handling process, determine the reason causing the whether the exception handling requests for normal access to the second memory; when determine the cause of the exception handling for normal access to the second memory request, call out function to trigger the second memory from the low-power mode, and the current page table from the first switch to the second page table page table; the first page table configuration for access to a first memory and cannot access the second memory; the second page table configuration for accessing the memory For. Using the above scheme can effectively reduce system power consumption, and improve the efficiency of access memory.

【技术实现步骤摘要】
一种访问存储器的方法及内存管理器
本专利技术涉及存储器
,尤其涉及一种访问存储器的方法及内存管理器。
技术介绍
随着通讯网络的不断发展,人们对基带芯片的性能要求也在不断地提升,一般基带芯片上具有两个存储器,分别为第一与第二存储器。比如所述第一存储器可以为内部内存(internal-ram,iram),第二存储器为双倍速率同步动态随机存储器(DoubleDataRate,DDR)。为了满足基带芯片的性能,除了提升中央处理器(CentralProcessingUnit,CPU)的性能外,DDR性能的提升也必不可少。随着DDR性能的提升,随之带来的功耗开销也愈大。为了解决DDR带来的功耗,使得代码尽可能地存放及运行在iram上,从而达到不开启DDR,也就是使得DDR处于低功耗模式(LightSleep,DDRControllerStop,DDRSelf-refresh)下。这样一来,就会出现在CPU处于工作情况下,DDR已经进入低功耗模式。为了能够在DDR处于低功耗模式下,捕捉到访问DDR的操作,并让DDR提前退出低功耗模式,目前,通过寻找可能会执行访问DDR操作的区域,并在所述区域中插入可以使得DDR退出低功耗模式的函数。但是,在这种情况下,会增加大量的代码,并且由于大量的函数被插入,会破坏原来的代码结构,同时还会造成该函数多次调用,造成数据访问的效率低下,且还造成代码稳定性及可移植性差,还会导致系统功耗大。
技术实现思路
本专利技术解决的问题是如何尽可能高效地使用内部内存,降低系统功耗,并提高访问存储器的效率。为解决上述问题,本专利技术实施例提供一种访问存储器的方法,所述存储器包括第一存储器及第二存储器,所述方法包括:当所述第二存储器处于低功耗模式且检测到CPU执行访问所述第二存储器的操作时,触发所述CPU进入异常处理流程,包括:判断引起所述异常处理的原因是否为对所述第二存储器的正常访问请求;当确定引起所述异常处理的原因为对所述第二存储器的正常访问请求时,调用退出函数触发所述第二存储器退出低功耗模式,并将当前的页表从第一页表切换至第二页表;述第一页表为所述CPU设置所述第二存储器进入低功耗模式时所对应的页表,设置于所述第一存储器上,且配置为适于访问第一存储器且不能访问所述第二存储器;所述第二页表配置为适于访问所述存储器。可选地,所述方法还包括:记录所述CPU对所述第二存储器进行访问的信息;根据所述CPU对所述第二存储器进行访问的信息,调整所述第一存储器及所述第二存储器内的数据。可选地,所述根据所述CPU对所述第二存储器进行访问的信息调整所述第一存储器及所述第二存储器内的数据,包括:当所述CPU对所述第二存储器中的程序访问的次数超过预设的次数,并且所述程序小于预设的存储阈值时,将所述程序从所述第二存储器迁移至所述第一存储器。可选地,采用如下任意一种方式配置所述第一页表:在所述第一页表内配置所述第二存储器的页表项为空;或者将所述第二存储器的页表项配置为不可读写。可选地,所述方法还包括:当确定引起所述异常处理的原因并非为对所述第二存储器的正常访问请求时,触发所述CPU进入断言处理流程。可选地,所述退出函数,适于通过将控制信号设置为假,触发所述第二存储器退出低功耗模式。可选地,所述第一存储器为内部内存,所述第二存储器为双倍速率同步动态随机存储器。本专利技术实施例提供了一种内存管理器,所述内存管理器适于管理存储器,所述存储器包括第一存储器及第二存储器,所述内存管理器包括:第一检测单元,适于检测所述第二存储器是否处于低功耗模式;第二检测单元,适于检测CPU是否执行访问所述第二存储器的操作;触发单元,适于当所述第一检测单元检测到所述第二存储器处于低功耗模式,且所述第二检测单元检测到所述CPU执行访问所述第二存储器的操作时,触发所述CPU进入异常处理流程;判断单元,适于判断触发所述异常处理的原因是否为对所述第二存储器的正常访问请求;函数调用单元,适于当所述判断单元确定引起所述异常处理的原因为对所述第二存储器的正常访问请求时,调用退出函数触发所述第二存储器退出低功耗模式,并将当前的页表从第一页表切换至第二页表;所述第一页表为所述CPU设置所述第二存储器进入低功耗模式时所对应的页表,设置于所述第一存储器上,且配置为适于访问第一存储器且不能访问所述第二存储器;所述第二页表配置为适于访问所述存储器。可选地,所述内存管理器还包括:记录单元,适于记录所述CPU对所述第二存储器进行访问的信息;调整单元,适于根据所述记录单元记录的所述CPU对所述第二存储器进行访问的信息,调整所述第一存储器及所述第二存储器内的数据。可选地,所述调整单元,适于当所述CPU对所述第二存储器中的程序访问的次数超过预设的次数,并且所述程序小于预设的存储阈值时,将所述程序从所述第二存储器迁移至所述第一存储器。可选地,所述内存管理器还包括:配置单元,适于配置页表,所述页表包括第一页表和第二页表;所述配置单元适于采用如下任意一种方式配置所述第一页表:在所述第一页表内配置所述第二存储器的页表项为空;或者将所述第二存储器的页表项配置为不可读写。可选地,所述触发单元,还适于当所述判断单元确定引起所述异常处理的原因并非为对所述第二存储器的正常访问请求时,触发所述CPU进入断言处理流程。可选地,所述退出函数,适于通过将控制信号设置为假,触发所述第二存储器退出低功耗模式。可选地,所述第一存储器为内部内存,所述第二存储器为双倍速率同步动态随机存储器。与现有技术相比,本专利技术的技术方案具有以下优点:当第二存储器处于低功耗模式且检测到所述CPU执行访问所述第二存储器的操作时,通过调用退出函数触发所述第二存储器退出低功耗模式,并将当前的页表从不适于对第二存储器进行访问的第一页表切换至可适于对第二存储器进行访问第二页表,可以使得所述CPU按照所述第二页表对所述第二存储器进行访问。也就是说,在第二存储器处于低功耗模式时,可以准确地捕捉到访问第二存储器的操作,并通过统一的一个退出函数触发第二存储器提前退出低功耗模式,可以避免插入大量的退出函数,并且无须一一寻找可能访问第二存储器的位置,从而可以提高效率,且还能提高代码稳定性及可移植性。并且,通过这种方法可以高效地使用第一存储器,避免一直使用所述第二存储器,可以有效地降低系统的功耗。进一步,通过记录CPU对第二存储器进行访问的信息,并根据记录结果,来调整第一存储器及所述第二存储器内的数据,可以便于代码的优化及调试。进一步,在确定引起所述异常处理的原因并非为对所述第二存储器的正常访问请求时,通过设置所述CPU进入断言处理流程,可以分析出不是对所述第二存储器的正常访问请求的其他原因并进而解决所述中断异常。附图说明图1是本专利技术实施例中的一种访问存储器的方法的流程示意图;图2是本专利技术实施例中的一种芯片的通讯模块的架构图;图3是本专利技术实施例中的一种存储器的控制信号的逻辑示意图;图4是本专利技术实施例中的另一种访问存储器的方法的流程示意图;图5是本专利技术实施例中的一种内存管理器的结构示意图。具体实施方式随着通讯网络的不断发展,人们对基带芯片的性能要求也在不断地提升,一般基带芯片上具有两个存储器,分别为第一与第二存储器。比如所述第一存储器可以为内部内本文档来自技高网...
一种访问存储器的方法及内存管理器

【技术保护点】
一种访问存储器的方法,其特征在于,所述存储器包括第一存储器及第二存储器,包括:当所述第二存储器处于低功耗模式且检测到CPU执行访问所述第二存储器的操作时,触发所述CPU进入异常处理流程,包括:判断引起所述异常处理的原因是否为对所述第二存储器的正常访问请求;当确定引起所述异常处理的原因为对所述第二存储器的正常访问请求时,调用退出函数触发所述第二存储器退出低功耗模式,并将当前的页表从第一页表切换至第二页表;所述第一页表为所述CPU设置所述第二存储器进入低功耗模式时所对应的页表,设置于所述第一存储器上,且配置为适于访问第一存储器且不能访问所述第二存储器;所述第二页表配置为适于访问所述存储器。

【技术特征摘要】
1.一种访问存储器的方法,其特征在于,所述存储器包括第一存储器及第二存储器,包括:当所述第二存储器处于低功耗模式且检测到CPU执行访问所述第二存储器的操作时,触发所述CPU进入异常处理流程,包括:判断引起所述异常处理的原因是否为对所述第二存储器的正常访问请求;当确定引起所述异常处理的原因为对所述第二存储器的正常访问请求时,调用退出函数触发所述第二存储器退出低功耗模式,并将当前的页表从第一页表切换至第二页表;所述第一页表为所述CPU设置所述第二存储器进入低功耗模式时所对应的页表,设置于所述第一存储器上,且配置为适于访问第一存储器且不能访问所述第二存储器;所述第二页表配置为适于访问所述存储器。2.根据权利要求1所述的访问存储器的方法,其特征在于,还包括:记录所述CPU对所述第二存储器进行访问的信息;根据所述CPU对所述第二存储器进行访问的信息,调整所述第一存储器及所述第二存储器内的数据。3.根据权利要求2所述的访问存储器的方法,其特征在于,所述根据所述CPU对所述第二存储器进行访问的信息调整所述第一存储器及所述第二存储器内的数据,包括:当所述CPU对所述第二存储器中的程序访问的次数超过预设的次数,并且所述程序小于预设的存储阈值时,将所述程序从所述第二存储器迁移至所述第一存储器。4.根据权利要求1所述的访问存储器的方法,其特征在于,采用如下任意一种方式配置所述第一页表:在所述第一页表内配置所述第二存储器的页表项为空;或者将所述第二存储器的页表项配置为不可读写。5.根据权利要求1所述的访问存储器的方法,其特征在于,还包括:当确定引起所述异常处理的原因并非为对所述第二存储器的正常访问请求时,触发所述CPU进入断言处理流程。6.根据权利要求1所述的访问存储器的方法,其特征在于,所述退出函数,适于通过将控制信号设置为假,触发所述第二存储器退出低功耗模式。7.根据权利要求1所述的访问存储器的方法,其特征在于,所述第一存储器为内部内存,所述第二存储器为双倍速率同步动态随机存储器。8.一种内存管理器,其特征在于,所述内存管理器适于管理存储器,所述存储器包括第一存储器及第二存储器,所述内存管理器包括:第一检测单元,适于检测所述第二存...

【专利技术属性】
技术研发人员:谭中平陈军伟王春厚
申请(专利权)人:展讯通信上海有限公司
类型:发明
国别省市:上海,31

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

1