论文部分内容阅读
由于动态随机存取存储器(Dynamic Random Access Memory,DRAM)的可扩展性变得越来越差,逐渐接近极限,其已经不能满足高性能计算机主存的大容量需求。相变存储器(Phase Change Memory,PCM)以其非易失性、低静态能耗、高集成度、字节寻址等特性得到了研究者的广泛关注和研究。与其它非易失性存储材料相比,PCM正成为当前DRAM与与非闪存(Not AND Flash,NAND Flash)替代品中强有力的竞争者。然而PCM依然存在写寿命过低、写能耗及写延迟高的问题。另一方面,当前的PCM模拟器在进行对PCM有关研究的模拟时,普遍存在模拟时间过长的问题。LPCMsim是一个专为磨损均衡与纠错研究而设计的轻量级PCM模拟器,模拟速度相比其它模拟器有较大改善,但仍然较慢。本文将主要针对PCM写寿命过低及LPCMsim模拟速度问题展开以下两方面研究:磨损均衡是一种能有效延长PCM写寿命的方法,但本文通过分析发现,磨损均衡存在数据污染问题:当PCM空间有数据块出错时,磨损均衡会将这个错误逐渐放大,直致整个地址空间的数据都成为无效的数据,降低PCM寿命及可靠性。本文提出了一种在PCM磨损均衡算法上增加坏块管理机制的方法(Wear-Leveling with Wear-Out,WLWO),从而有效地防止磨损均衡算法的数据污染问题。WLWO首先在PCM中预留部分空间,每当有新的坏块出现,WLWO从预留空间中找到一个空闲的数据块将其替换,以防止磨损均衡算法将未出错的数据迁入坏块中造成数据污染,大大延长PCM的寿命。WLWO通过设置少量的BMT专用缓存,将频繁访问到的数据块标记项交换到专门缓存中,减少地址转换延时。WLWO还采用了替换指针链压缩的方法,显著减少地址转换时读取替换指针的次数,从而减少PCM的访问延迟。实验表明,WLWO只需设置少量的预留空间,便可以显著地提高PCM的写寿命,且所需的时间开销较小。针对LPCMsim的模拟时间仍然太长的问题,本文提出了一种基于多线程技术的LPCMsim并行化方法。该方法根据磨损均衡算法的分组特性,通过把不同的分组分配到不同的处理核心上完成对应模拟,以此充分利用当前流行的多核处理器的处理性能,达到提高LPCMsim模拟器的模拟速度的目的。LPCMsim在实际模拟前将trace预处理:根据给定的分组方案,通过请求分发器将对应到不同分组的访问请求分发到各自的缓冲区。而实际模拟时各分组并行执行,重放各自的trace。实验证明,并行LPCMsim的模拟速度相比原LPCMsim得到大幅提升,其速度基本与模拟器的并行度成正比。