混合内存的数据访问方法、模块、处理器及终端设备技术

技术编号:11027843 阅读:44 留言:0更新日期:2015-02-11 15:07
本发明专利技术的实施例提供一种混合内存的数据访问方法、模块、处理器及终端设备,涉及计算机领域,能够简化数据访问过程。包括:当待访问数据不在动态随机存取存储器DRAM中时,向内存控制器发送预设出错数据,以便于所述内存控制器根据所述预设出错数据触发处理器产生错误纠正码ECC出错中断,所述待访问数据为数据访问请求中访问的数据;在所述处理器对所述ECC出错中断处理时,所述串接模块将位于非易失性存储器NVM中的所述待访问数据迁移至所述DRAM中。本发明专利技术的实施例提供的一种混合内存的数据访问方法、模块、处理器及终端设备,用于混合内存的数据访问。

【技术实现步骤摘要】
【专利摘要】本专利技术的实施例提供一种混合内存的数据访问方法、模块、处理器及终端设备,涉及计算机领域,能够简化数据访问过程。包括:当待访问数据不在动态随机存取存储器DRAM中时,向内存控制器发送预设出错数据,以便于所述内存控制器根据所述预设出错数据触发处理器产生错误纠正码ECC出错中断,所述待访问数据为数据访问请求中访问的数据;在所述处理器对所述ECC出错中断处理时,所述串接模块将位于非易失性存储器NVM中的所述待访问数据迁移至所述DRAM中。本专利技术的实施例提供的一种混合内存的数据访问方法、模块、处理器及终端设备,用于混合内存的数据访问。【专利说明】混合内存的数据访问方法、模块、处理器及终端设备
本专利技术涉及计算机领域,尤其涉及一种混合内存的数据访问方法、模块、处理器及终端设备。
技术介绍
随着技术的逐渐进步,处理器内集成的核的个数不断增长,服务器、云计算平台对内存容量的需求也不断增长,而内存容量的增长速度较慢,通常的,内存主要都是使用DRAM (Dynamic Random Access Memory,动态随机存取存储器),而为了提高内存容量的增长速度,研发新型的内存材料成为了必然趋势,目前新型的内存材料研究主要集中在NVM (Non-Vo I at i I e Memory,非易失性存储器)材料上,如 PCM (Phase Change Memory,相变存储器),MRAM(Magnetic Random Access Memory,磁性随机存储器)和快闪存储器(Flash)等等。这些NVM材料具有位密度高、静态功耗低和非易失等优点,但是NVM等新型的内存材料还存在写寿命有限等缺点,使得这些新型的内存材料还无法完全替代DRAM作为内存,而是作为DRAM的扩展内存。 现有技术中,在使用由DRAM和扩展内存组成的混合内存时,内存访问仍然使用DDRx内存同步访问接口,其中,X是指第几代DDR协议,如DDR3,DDR4,而DDR (DoubIe DataRate,双倍速率)内存同步访问接口要求访问命令具有固定的时序延迟,因此无法直接处理这种由于混合内存带来的非一致访存延迟,需要对所述非一致访问延迟进行处理。示例的,当在OS (Operating System,操作系统)中使用由DRAM和扩展内存组成的混合内存时,需要软件来维护当前哪些页面(Page)位于DRAM中,哪些页面只在扩展内存中,这一般通过在页表项中增加标志位来实现。当OS收到访存请求,即数据访问请求,先查询页表获取数据访问请求中访问的数据是否在DRAM中,如果是,则直接访问DRAM ;如果不是,需要产生缺页中断(Page Fault),然后将访问的数据对应的页面从扩展内存迁移到DRAM中,并更新对应页表项中的标志位,最后才能向DRAM重新发送访存请求。 但是上述混合内存的数据访问方法需要对现有的处理器运行的操作系统中的内存管理部分进行重新设计,如建立和更新页表项中的标志位、产生缺页中断等,代码修改量较大,数据访问过程较为复杂。
技术实现思路
本专利技术的实施例提供一种混合内存的数据访问方法、模块、处理器及终端设备,能够简化数据访问过程。 为达到上述目的,本专利技术的实施例采用如下技术方案: 第一方面,提供一种混合内存的数据访问方法,应用于串接模块,包括: 当待访问数据不在动态随机存取存储器DRAM中时,向内存控制器发送预设出错数据,以便于所述内存控制器根据所述预设出错数据触发处理器产生错误纠正码ECC出错中断,所述待访问数据为数据访问请求中访问的数据; 在所述处理器对所述ECC出错中断处理时,所述串接模块将位于非易失性存储器NVM中的所述待访问数据迁移至所述DRAM中。 结合第一方面,在第一种可实施方式中,在所述向内存控制器发送预设出错数据之前,所述方法还包括: 建立地址映射表,所述地址映射表记录了存储模块中当前位于所述DRAM中的数据和位于所述NVM中的数据,所述存储模块为由所述DRAM和所述NVM组成的混合内存; 接收所述数据访问请求; 根据所述数据访问请求查询所述地址映射表,判断所述待访问数据是否在所述DRAM 中; 当所述待访问数据在所述DRAM中,则在所述DRAM中获取所述待访问数据。 结合第一种可实施方式,在第二种可实施方式中,所述将位于NVM中的所述待访问数据迁移至所述DRAM中包括: 按照所述数据访问请求生成数据迁移请求,所述数据迁移请求中请求迁移的数据为所述待访问数据; 根据所述数据迁移请求,按照预设迁移粒度将位于NVM中的所述待访问数据迁移至所述DRAM中。 结合第二种可实施方式,在第三种可实施方式中,所述数据访问请求包括所述待访问数据的物理地址, 所述按照所述数据访问请求生成数据迁移请求包括: 根据所述数据访问请求生成所述数据迁移请求,所述数据迁移请求包括所述待访问数据的物理地址,所述数据迁移请求还包括所述预设迁移粒度。 结合第二、三种可实施方式,在第四种可实施方式中, 所述预设迁移粒度与DRAM行缓冲器的粒度相同。 结合第一至四种可实施方式,在第五种可实施方式中,所述地址映射表还记录了缓存标志,所述缓存标志用于标识数据是否位于缓存中, 在所述向内存控制器发送预设出错数据之前,所述方法还包括: 查询所述地址映射中的缓存标志,判断所述待访问数据是否位于缓存中; 当所述待访问数据位于缓存中,停止将位于所述NVM中的所述待访问数据迁移至所述DRAM中。 结合第一至五种可实施方式,在第六种可实施方式中, 接收所述处理器重新发送的所述数据访问请求; 根据所述数据访问请求查询所述地址映射表,判断得到所述待访问数据在所述DRAM中,则在所述DRAM中获取所述待访问数据。 结合第一方面,第一至六种可实施方式,在第七种可实施方式中,所述预设出错数据为至少存在两位出错的数据。 第二方面,提供一种混合内存的数据访问方法,应用于处理器,包括: 接收内存控制器发送的触发消息,所述触发消息是所述内存控制器在接收串接模块发送的预设出错数据后发送的,所述预设出错数据为所述串接模块在待访问数据不在DRAM中时发送的; 根据所述预设出错数据产生错误纠正码ECC出错中断,以便于所述串接模块在所述处理器对所述ECC出错中断处理时,所述串接模块将位于NVM中的所述待访问数据迁移至所述DRAM中。 结合第二方面,在第一种可实现方式中,在所述根据所述预设出错数据产生错误纠正码ECC出错中断之前,所述方法还包括: 通过对所述预设出错数据进行ECC校验,判断所述预设出错数据的错误模式是否为ECC出错中断模式。 结合第二方面、第一种可实现方式,在第二种可实现方式中,在所述串接模块将位于所述NVM中的所述待访问数据迁移至所述DRAM中之后,所述方法还包括: 重新向所述串接模块发送所述数据访问请求,以便于所述串接模块在所述DRAM中获取所述待访问数据。 结合第二方面、第一、二种可实现方式,在第三种可实现方式中,所述预设出错数据为至少存在两位出错的数据。 第三方面,提供一种串接模块,包括: 发送单元,用于在待访问数据不在动态随机存取存储器DRAM中时,向内存控制器发送预设出错本文档来自技高网
...

【技术保护点】
一种混合内存的数据访问方法,应用于串接模块,其特征在于,包括:当待访问数据不在动态随机存取存储器DRAM中时,向内存控制器发送预设出错数据,以便于所述内存控制器根据所述预设出错数据触发处理器产生错误纠正码ECC出错中断,所述待访问数据为数据访问请求中访问的数据;在所述处理器对所述ECC出错中断处理时,所述串接模块将位于非易失性存储器NVM中的所述待访问数据迁移至所述DRAM中。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈荔城陈明宇崔泽汉
申请(专利权)人:华为技术有限公司中国科学院计算技术研究所
类型:发明
国别省市:广东;44

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

1