||
摘要:PCM由于其非易失性、高速读取速度以及静态低功耗等优点,已成为
主存研究领域的热点。然而目前,缺乏可用PCM设备,使得基于PCM的缓存
算法得不到有效验证。因此,本文提出利用主存模拟器仿真并验证PCM算法
的思想。本文先介绍现有主存模拟器的特点,并指出其并不能完全满足当前
主存研究的实际需求,在此基础上构建一个基于DRAM-PCM的混合主存模拟器。
与现有模拟器的实验比较表明,本文设计的混合主存模拟器能够有效模拟DRAM-PCM
混合存储架构,具有高可配置性。最后,论文通过一个使用示例说明混合模拟主存
模拟器编程接口的易用性。
1、 引言
PCM的优点有望取代DRAM作为新的内存设备。另一方面,PCM由于材料本身的特性,
还不能独立为主存。使用DRAM和PCM互补来构建容量大、能量效率高的混合主存系统。
在PCM设备上进行混合存储算法验证是不可行的。目前的相关工作都在模拟平台
上进行的,现存模拟器NVMain,虽然可以构成混合主存系统,但是不具备混合主存
分配的编程接口。
2、相关工作
PCM与混合存储主存架构
PCM的特性,当前提出的混合主存结构有2层:
主存模拟器
NVMain具有高可配置以及时钟精确的优良仿真特性。它既能模拟DRAM的运行
性能,还支持NVM进行仿真。但是他们只能构建出一个平行结构。
3、混合存储模拟器架构
如图所示为构建基于PCM和DRAM的混合主存模拟器的基本架构。‘
该架构包括高速缓存、CPU模块和主存。主存模块从上一层级接收请求,并在一个具体
的主存系统中模拟这些请求执行情况。
本模拟器提供了一套内存分配函数(Dmalloc( )与Dfree( )),使用Pmalloc( )使得用户
可以自主地从DRAM或者PCM上按需申请或者释放主存空间。
功能接口模块
混合主存系统提供主存控制器接口以及主存设备接口。
外围接口提供一个类似总线的数据结构,包含若干个条目(entry)。移入的请求
是以无序的方式放置在这些条目中。
主存控制器模块
目前对主存控制器内部结构没有统一的标准,使用【】来构建一个通用
的主存控制器模型。主存控制器首先根据请求排序策略从总线中选择请求放置到
请求队列中。请求队列根据地地址映射方案将请求的物理地址映射到主存片上位置。
然后,基于控制器使用的行缓冲(Row Buffer)管理机制,将每个请求转化成
一组相对应的主存命令序列。将这些主存命令发送到指定的主存存储单元之中。
主存设备模块
时序模拟
RAC时序模拟
CRC时序模拟
CWC时序模拟
4、实验与评估
系统配置
模拟系统中处理器、高速缓存的实验参数。
在自己的模拟器上和DRAMsim上运行相同的测试用例。
在模拟器上运行的CPI:CPI=TC/IC 。
混合存储系统构建
使用示例
采用调用接口进行测试用例的使用
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-12-26 23:47
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社