(计算机系统结构专业论文)流处理器相变存储器主存的性能优化.pdf_第1页
(计算机系统结构专业论文)流处理器相变存储器主存的性能优化.pdf_第2页
(计算机系统结构专业论文)流处理器相变存储器主存的性能优化.pdf_第3页
(计算机系统结构专业论文)流处理器相变存储器主存的性能优化.pdf_第4页
(计算机系统结构专业论文)流处理器相变存储器主存的性能优化.pdf_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘 要 i摘 要 摘 要 单芯片多处理器的发展和应用不断增加的性能和精度要求, 需要计算机的主存系统增加容量以保存更大的工作集。dram 是过去的几十年里计算机主存系统采用的主流技术。但 dram 的工作原理决定了其可扩放性较差,且随着主存容量的扩展,dram 的漏电流功耗在主存系统能耗中所占的比例逐渐和动态功耗持平。随着 cmos 工艺不断向 16nm 的极限尺寸发展, 处理器片上存储层次也需要新的存储技术代替存储密度较低而能耗较高的 sram。以 pcram 和 stt-ram 为代表的新型存储技术成为存储器系统方面的研究热点。pcram 是非易失性的存储器,具有很低的漏电流功耗,pcram 具有接近完美的可扩放性和数倍于 dram 的存储密度。虽然 pcram 在存储密度和漏电流功耗控制方面具备了代替 dram 的能力,但是要用 pcram 完全代替 dram 目前还需要在降低读写延时,扩展生命周期,控制动态功耗等关键技术方面进行改进。 本文主要从三个方面进行研究: 利用避免冗余位写技术延长 pcram 的生命周期,利用避免行缓存写回技术降低读写延时和动态功耗,并评估了访存调度算法对 pcram 性能的影响。主要研究内容和成果包括: (1)研究了 pcram 的工作原理,为 pcram 建立了抽象的性能模型,并将该模型用于模拟流处理器的主存系统。 (2)研究了 pcram 的非易失性,并提出了利用该特性对 pcram 性能进行优化的新技术。采用避免冗余位写技术优化了 pcram 的可写次数,从而延长了pcram 主存系统的生命周期;利用避免行缓存写回技术减少了无效写操作的次数,有效的弥补了避免冗余位写技术带来的性能损失,提高了 pcram 主存的性能同时降低了动态功耗。实验评测了以上两种技术的优化效果:避免冗余位写技术平均使 pcram 生命周期延长 3.2 倍,优化后的写操作能耗是原系统写操作能耗的 42%。 (3)通过对 pcram 存储技术特点和流处理器访存特征的分析,评测了不同访存调度策略对 pcram 主存性能的影响。 对测试程序实验结果的分析显示,选择适合 pcram 技术特点的访存调度算法对程序性能有显著影响。 关键词:关键词:相变存储器 流处理器 避免冗余位写 非易失性 访存调度算法abstract iiabstract the development of single-chip multiprocessor and new applications need for more accuracy and better perforamance require main memories of computer systems increase its capacity to store more worksets. dram has been the primary technology to build main memories of computer systems. however with feature size scaling down dram is in jeopardy as charge storge and sensing mechanisms become less reliable. the capacity increament of dram main memory result in a significant portion of the total system power and the total system cost is spent in the memory system. as integrated circuit technology to and beyond the end of cmos dimensional scaling, cpu needs new memory technology to replace sram. therefore, technology researchers have been studying new memory technologies that can provide more memory capacity than dram while still being competitive in terms of performance, cost, and power. pcram and stt-ram are those new memory technologies. pcram has advantages in scalability and dencity compared with dram. however, pcram have longer read and write latency than dram, pcrams read and write operations need consume more energy compared with dram, as a non-valitile memory, pcram has limit write endurance also. those drawbacks of pcram will be less important with feature size scaling. at current technology node we need to improve pcrams properties to make it compacatiable with dram. this dissertation focuses on the optimation of pcram main memory for stream processor. the major research contents and achievements cover the following aspects. (1)bases on the study of pcram storage mechanisms, we model pcram in a fundamental way from architecture point, use this model we build main memory for stream processor. (2) in order to enhance limited pcram write endurance, we use redundant bit-writes removal technology extended the endurance of pcram to an average 3.2x longer, and reduced write energy to 42% of original pcram. we study the way to use nonvolatility to improve memory access performance and make applications go faster with pcram main memory. the use of nonvolatility to avoid not necessary row buffer write back can improve applications performance and consume less energy. (3) base on the analysis result of stream memory system and pcram technology, we test several memory access scheduling algorithms on abstract iiiapplications. experiment result show that the row/open memory access scheduling algorithm is more suitable for pcram than other algorithms. key words: phase-change ram, redundant bit-writes removal, non-volatility, memory access scheduling algorithms, stream processor 图片目录 vii图片目录 图片目录 图 1.1图 1.1 纳米信息技术发展趋势 2 图 1.2图 1.2 ddrx sdram 结构实例 1 dimm,2 ranks,8x4 dram chips 3 图 1.3 图 1.3 stt-ram 存储单元电路图6 图 1.4图 1.4 pcram 存储单元结构和存储原理示意图 7 图 2.1图 2.1 具有区域选择功能的分层 wordline 结构 12 图 2.2图 2.2 ssa dram 结构图 13 图 2.3图 2.3 访存延时的组成示意图 15 图 2.4 图 2.4 mlc 结构 17 图 2.5图 2.5 adc 结构和工作原理 17 图 2.6图 2.6 连续近似 adc 18 图 2.7图 2.7 混合 cache 的实现类别 21 图 2.8图 2.8 避免冗余位写的实现 23 图 2.9图 2.9 pcram 和 dram 混合主存结构 25 图 3.1图 3.1 三种派生流示意图 28 图 3.2图 3.2 流编程模型示意图 28 图 3.3图 3.3 抽象的流处理器结构 29 图 3.4图 3.4 流处理器的存储系统结构图 30 图 3.5图 3.5 ag 的模块接口及伪码描述 32 图 3.6图 3.6 bank 控制器结构图 33 图 3.7图 3.7 bank 控制器模块接口 33 图 3.8图 3.8 mshr_entry、pkt、mshr_data 之间的关系 35 图 3.9图 3.9 访存请求插入 mshr 状态转换图35 图 3.10图 3.10 mshr 模块接口图 37 图 3.11图 3.11 dram chip 结构及 bank 状态转换图38 图 4.1图 4.1 jpeg 编码的流程序模型 44 图 4.2图 4.2 访存和计算在执行周期中所占比例 46 图 4.3图 4.3 pcram 主存优化前和 dram 主存性能比较 47 图 4.4图 4.4 避免冗余位写结构示意图 48 图 4.5图 4.5 避免冗余位写带来的 pcram 生命周期延长 49 图 4.6图 4.6 避免冗余位写对 pcram 写能耗的优化效果 50 图 4.7图 4.7 rbwr 带来的性能损失50 图 4.8图 4.8 非易失性带来的性能提升 52 图 4.9图 4.9 访存调度算法的影响示意图 53 图 4.10图 4.10 访存调度算法对访存性能的影响 55 图 4.11图 4.11 访存调度算法对总执行周期数的影响 56 表目录 viii表目录 表目录 表 2.1表 2.1 相变材料参数的可扩放性 16 表 2.2表 2.2 不同存储技术的比较 19 表 2.3表 2.3 存储技术在 45nm 时的技术参数 20 表 2.4表 2.4 pcram 和 dram 主存系统性能比较 26 表 3.1 表 3.1 mscr 各域的作用 31 表 3.2表 3.2 mshr 项的结构组成 34 表 3.3 表 3.3 两种 pcram 建模方法的比较 40 表 3.4表 3.4 imagine pcram 主存系统的配置 41 表 4.1 表 4.1 测试程序简介 43 表 4.2 表 4.2 测试程序中的流访存请求类型 46 表 4.3表 4.3 访存调度策略 54 中国科学技术大学学位论文原创性声明 本人声明所呈交的学位论文,是本人在导师指导下进行研究工作所取得的成果。除已特别加以标注和致谢的地方外,论文中不包含任何他人已经发表或撰写过的研究成果。 与我一同工作的同志对本研究所做的贡献均已在论文中作了明确的说明。 作者签名:_ 签字日期:_ 中国科学技术大学学位论文授权使用声明 作为申请学位的条件之一, 学位论文著作权拥有者授权中国科学技术大学拥有学位论文的部分使用权,即:学校有权按有关规定向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅,可以将学位论文编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。本人提交的电子文档的内容和纸质论文的内容相一致。 保密的学位论文在解密后也遵守此规定。 公开 保密(_年) 作者签名:_ 导师签名:_ 签字日期:_ 签字日期:_ 第 1 章 绪论 1第1章 第1章 绪论 绪论 1.1 研究背景研究背景 计算机体系结构领域, 任何一款新的设计都是应用需求驱动和制造工艺进步两者共同作用的结果,存储器技术也不例外。实际上正是多核系统对内存容量的需求不断增长、多处理器计算机系统的访存特征发生变化、控制主存能耗的需求和 cmos 工艺进步共同促进了新型存储器技术的研发。dram 是过去的几十年里计算机系统采用的主流主存技术。与 dram 相比,新型存储器技术大多具有非易失性和良好的可扩放性, 为计算机系统的主存容量扩展和降低漏电流能耗提供了解决方案;新型存储器技术在可写次数、读写延时、动态能耗、可靠性等方面需要进一步的提升性能,使新型存储器技术比 dram 带来更多的系统性能提升。 1.1.1 计算机系统主存的发展趋势 计算机系统主存的发展趋势 处理器性能的提升由增加处理器的主频, 转向片上多核利用并行性提升处理器性能。多核处理器可以象 smp 一样实现多个应用的并行执行。为了保障多个并行应用的性能,每个应用都需要将工作集存放在主存中,多核处理器和单核处理器相比增加了对主存容量的需求(moinuddin k. qureshi,2009) 。随着技术的进步,应用程序在计算精度和速度方面也提出了更高的要求,应用的输入和输出文件大小不断增加导致单个应用需要将更大的工作集放在主存储器中。 以上两方面决定了计算机系统的主存储器容量需要扩展。 主存容量的增加会使主存能耗在整个系统中所占的比例增加。例如:对一个中等规模的 ibm eserver dram 主存系统的能耗达到总能耗的 40%(c.lefurgy, 2003) 。对于当前主存系统采用的主流存储技术 dram 来说,漏电流能耗逐渐和动态能耗接近,导致主存系统接近 50%的能耗消耗在保持数据有效性上面(s. thoziyoor,2008) 。非易失性的存储器不需通过供电和刷新操作保持数据的有效性,从而最大程度上减少了漏电流能耗。 当前处理器的 cmos 工艺已经进展到 32nm(intel 酷睿 tm i5 处理器) ,而且正在研究将特征尺寸扩展到 16nm(当前条件下的 cmos 工艺极限尺寸)和16nm 之后的技术(itrs,2009) 。dram 在特征尺寸的可扩放性上面临困境,dram受限于工作方式, 原因在于特征尺寸越小dram 能存储的电荷数量越少,第 1 章 绪论 2数据的可靠性和有效时间都会随之变差,这限制了 dram 的特征尺寸向 30nm以内扩展(itrs,2007) 。特征尺寸的扩放是控制存储器能耗和提升存储器性能的关键因素,面对 dram 的可扩放性限制,为了不让处理器和存储器的性能差距越拉越大,寻找能替代 dram 的存储器技术成为研究热点。 1.1.2 cmos 工艺的发展工艺的发展 半导体工业在将 cmos 工艺向 16nm 推进时面临来自两方面的挑战(itrs,2009) : (1)将 cmos 工艺推进到 16nm 及以下,并能有效的将其它技术例如新型存储器技术有效的整合到cmos平台上;(2) 将cmos、 新的设备和扩展cmos的体系结构方法相结合,突破 cmos 工艺的极限,并最终实现一个优于 cmos的新的信息处理平台。itrs 2009 给出了计算机从信息的表示形式到体系结构的变化趋势。如图 1.1 所示。信息的表示形式的变化趋势是,由存储电荷(electric charge)经相位状态(phase state)到电子自旋和强相关的电子态。 sram 和 flash 在未来的几年里达到可扩放性的极限(itrs,2010) 。存储技术方面的挑战是需要一种新的存储技术能将现有存储器的众多优点集于一身。 同时这种新存储技术的生产技术应与 cmos 的处理流程相兼容, 并比 sram和 flash 具有更优的可扩放性。当前微处理器(microprocessor unit,mpu)的处理能力受限于 mpu 和存储器之间的数据传输, 而通过 cmos 工艺的发展上述问题并不会自动解决, 现行的解决方法是增加 cache 的容量, 这会增加 sram在片上所占的面积,最终会导致信息吞吐率的下降。因此如果有一种新的存储技术具有可电访问、非易失、低访问延时和高存储密度等优点,它将会对处理器的体系结构产生革命性的影响(itrs,2009)。 conventional scaled cmosnew information process technologiesreconfigurablequantummorphicanalogvon neumannarchitectureanalogdigitalpatternsquantum statedata representationsetsscaled cmosmolecularferromagneticspintronics quantumdevicecarbonsiliconge & iii-v matlsnanostructrued matlsstrongly correlated mat lsmolecular stateelectric chargephase statestrongly correlated electron statespin orientationstate variablematerial 图 1.1图 1.1 纳米信息技术发展趋势 第 1 章 绪论 31.1.3 dram 的结构的结构 要描述dram技术发展的瓶颈, 需要对当前主流的dram结构jedec-style ddrx sdram(b.jacob,2008)进行介绍。其结构如图 1.2 所示。遵守 jedec标准的 dram,通过 64bits 的数据总线和处理器的片上访存控制器连接,另外还有 17bits 的行/列地址线和 8bits 的命令总线。多个双列直插内存模块(dual in-line memory modules,dimm)可以共用一个访存控制器和一个访存通道。dimm 通常分成多个 rank,每个 rank 由多个 dram 芯片组成,属于同一 rank的 dram 芯片组成 rank-set。事实上每次读、写访存请求都至少激活属于一个rank-set 的 dram 芯片。图 1.2 中的 dimm 包含 16 个 dram chip,分为 2 个rank-set。 memorycontrollerarray1/8th of the row bufferone word of date outputdramchip or devicerankdimmbankmemory bus or channel 图 1.2图 1.2 ddrx sdram 结构实例 1 dimm,2 ranks,8x4 dram chips 一个 xn 的 dram 芯片,n 表示每个时钟节拍有 n 位数据被读出或写入一个 dram 芯片。例如图 1.2 中的 dram 芯片是 x4 的芯片。对于一个 64 位宽的数据总线和x8 的dram芯片, 一个rank-set就需要8个dram芯片, 如果dimm支持错误检查和纠正(error correcting code,ecc) ,数据总线被扩展到 72 位,那么每个 rank-set 就需要包括 9 个 x8 dram 芯片。当一个 rank 被选中,属于该rank-set 的 9 个 dram 芯片都从共享的行/列地址线和命令线接收来自访存控制器的数据。每个 dram 芯片和数据总线中的部分位相连接,对于 x8 的芯片和第 1 章 绪论 464 位的数据总线,8 个 dram 芯片每个 chip 提供 8 位数据组成 64 位宽的总线数据。 每个 rank 可被分成 416 个存储体(bank) 。每个存储体可以并发的处理不同的访存请求,提供访存并行性。如图 1.2 所示:每个 bank 被分布在属于一个rank-set 的所有 dram 芯片上, 在一个 dram 芯片上的 bank 部分被称为子存储体(sub-bank) 。当一个访存控制器对 dimm 发射一个 cache line 的访存请求,属于一个 rank 的所有 dram 芯片被激活,并且每个 sub-bank 提供 cache line 数据的一部分。通过把 cache line 分布的存储在 rank 的多个 dram chip 上,可以同时利用多个 dram 芯片的引脚进行数据传输,减少传输延时。例如:若一个cache line 大小是 64bytes,数据总线的宽度是 64bits,则对一个 cache line 的访存请求需 8 个时钟周期完成数据传输。 一个 xn 的 dram 芯片,每个 sub-bank 被分成 n 个存储阵列(array) 。每个 array 每时钟节拍为数据传输贡献 1bit 给该 dram 芯片的输入/输出引脚。每个 array 包含一个多行 x 多列的 dram 存储单元矩阵。 一个 cache line 的访存请求开始于一个行地址选择(row address select,ras)命令,ras 中包含的地址信息可以确定 bank 和 bank 中的行号,该 bank 中的每个 array 会将 array 中的对应行整行激活,读出的信息存储在 bank 的 row buffer 锁存器中,此时认为该行已激活了。row buffer 的大小被定义为,访问一个 bank 时和该 bank 相关的所有 array 激活的行位数的和。 row buffer 的大小被称为 page size, 通常取 4-16kb。通常其中有用的数据只有一个 cache line 的大小 64bytes。 每个 bank 有独立的 row buffer,所以任意时刻都有 416 个行的数据处于打开的状态。不同的 bank 可以被并行的访问,但是数据必须通过共享的数据总线串行的传输。如果被访问的行已处于打开状态(a row buffer hit) ,数据的返回会更快。相反,若待访问数据不在已激活行中(a row buffer miss) ,当前的已打开行需要先关闭,再打开待访问数据所在的行。为了避免关键路径上进行上述的行关闭再打开待访问行带来的延时,访存控制器有可能采用 close策略。close策略是在返回请求的 cache line 数据后,立刻进行 row buffer 的关闭操作。另一个可选的策略是 open,即保持 row buffer 处于打开状态直到该bank 收到对其它行的访存请求才关闭 row buffer。 作为一个实例,考虑一个 4gb 的 dimm,由 2 个 2gb 的 rank 组成。每个rank 包含 8 个 256mb x8 且 4bank 的 dram 芯片, 为一个 cache line 大小为 64b的 l2 cache 提供数据。对来自于 l2 cache 的一个访存请求,每个 dram 芯片要提供 8b 的数据。 每个 bank 在 256mb 的 dram chip 上占用 8 个 8mb 的 array,如果每个 array 是 65,536 行 1024 列的位矩阵, 一个行访存请求每个 array 需要打第 1 章 绪论 5开 1024bits 存入 row buffer, 共需要激活 65,536bits (8kb) 。 在这 8kb 的 row buffer数据中只有 64b 会最终传输给处理器,且 8 个 dram chip 每个负责提供其中的64bits。从上述例子可以看出只有 0.78%的 row buffer 数据得到了有效的利用(aniruddha n.udipi,2010) 。 1.1.4 dram 的发展趋势的发展趋势 从 1.1.3 中对当前主流 dram 结构的介绍可以发现 dram 的发展在结构上面临以下瓶颈(aniruddha n.udipi,2010) : (1)能耗:在 dram 系统的设计中能耗已经成为最重要的制约条件。许多研究工作得到如下结论:dram 主存系统功耗在数据中心总功耗中所占的比例高达2540%。当前的 dram 结构被设计成预取远多于访存请求需要的大量的数据,这种过度的预取浪费了大量的动态能耗(dynamic power) 。 (2)局部性的缺失:单核处理器的工作负载有很好的访存局部性。因此当前的dram 在 1.1.3 的实例中预取 8kb 的数据来满足对 64b 的访存请求,以减少后续访存请求的延时。在多线程的多核处理器实现中,来自多个访存流的访存请求复用访存控制器,这些交错发射的访存请求之间局部性较差。这种局部性缺失的趋势会随着处理器核数和访存控制器的数量增加而变的日趋明显,导致在将来dram 结构的设计中局部性的优先级会降低,而如何开发访存并行性会成为关键的设计因素。 (3)排队延时:单核处理器的访存请求较少,且 dram 传输带宽快速的增长,所以访存请求的排队延时并不明显。 未来处理器的引脚数增长缓慢, itrs (2007) road-map 预测在未来的 8 年里处理器的引脚数会增加到现在的 1.47 倍。 而依据摩尔定律 8 年里处理器的核数至少增加到现在的 16 倍。这意味着来自多个核的访存请求竞争使用有限的引脚。 一些研究工作已经将排队延时作为制约系统性能的关键参数进行研究。 访存并行性的提高会是一个降低多核时代排队延时的解决方法。 (4)有效性和可靠性:越来越多的应用期待着 dram 的结构提供容错能力,这也将深刻的影响 dram 未来结构的发展。 上面提到的都是当前 dram 的结构带来的问题和需要改进的地方。dram在漏电流能耗和可扩放性上面临更棘手的问题,且目前尚没有解决的办法。 漏电流能耗的产生是因为 dram 的电容中存储的电荷在流失,导致存储的信息会很快失效。 为了使dram 保存有效信息, 刷新电路需要周期性的给dram补充电荷。 且漏电流能耗随着 dram 容量的增加和 dram 的动态能耗越来越接近,成为制约 dram 容量扩展的一个制约条件。 第 1 章 绪论 6可扩放性的问题同样是由于 dram 利用存储电荷的方式存储信息导致的。dram 是典型的 1t1c 结构,t 代表访问晶体管,c 代表存储电荷的电容。为了存储足够的电荷来有效的区分逻辑 1 和 0,c 的尺寸不能很小,同样访问晶体管t 为了能快速的读写 c 中的信息也不能很小,目前尚没有解决的方案使 dram的特征尺寸扩放到 30nm 及以下。 1.1.5 磁随机存储器 磁随机存储器 当 dram 面临众多难题的同时, 研究人员开始寻找能替代 dram 的新型存储技术。其中旋转力矩转移存储器(spin torque transfer ram,stt-ram)和相变存储器(phase-change ram,pcram)是最有可能替代 dram 的新型存储技术,与 dram 相比 stt-ram 和 pcram 都是非易失性的存储器。 stt-ram(hai li,2009)是第二代的磁随机存储器(magnetic ram,mram) 。是未来主流存储器技术的有力竞争者,其具有高密度、高访问速度、低能耗、随机访问、非易失性和接近无限的写入次数等特点。 mram 的存储单元是磁性隧道结(magnetic tunneling junction,mtj) ,mram 利用 mtj 电阻值的高低来存储信息。图 1.3 显示了 mram 的 1t1mtj结构, 晶体管t做为选择设备, mtj存储信息。 mtj由两个铁磁体 (ferromagnetic,fm)层和将两个 fm 层隔开的氧化栅(e.g., mgo)层组成。一个 fm 被称为参考层,该层的磁化方向被固定。另一个 fm 层的磁化方向以可控的方式改变。当两个 fm 层的磁化方向相同时 mtj 电阻低(parallel,p) ,当两个 fm 层的磁化方向不同时 mtj 电阻高 (anti parallel, ap) 。 因此 p/ap 状态用来存储 “0” / “1” ,相应的电阻值用 rp 和 rap 表示。 (a)bliwlslbit “0”(b)bliwlslbit “1” 图 1.3 图 1.3 stt-ram 存储单元电路图 传统的 mram 中 mtj 的磁化方向通过电流诱导磁场来改变。当 mtj 缩小时,需要的磁场强度增大,导致需要的写入电流相应增大,写入功耗增加。随着第 1 章 绪论 7技术的进步,引入了一种基于自旋极化电流(spin polarization current)诱导磁极改变的写入方法。 这种新的 mram 设计被称为 stt-ram, stt-ram 比 mram具有更好的可扩放性。 stt-ram 的写入操作如图 1.3 所示, 当电流从 bl 流经 mtj 到达 sl 时产生一个自旋扭矩,使自由 fm 的磁化方向从 ap 态转化到 p 态写入“0” 。相似的,电流从 sl 到 bl 时自由 fm 从 p 态转化到 ap 态写入“1” 。 1.1.6 相变存储器 相变存储器 pcram 的存储单元采用相变材料, ge2sb2te5(gst) 是过去 5 年间 pcram最常用的相变材料 (benjamin c.lee, 2009) 。 相变材料可以处于晶态 (crystalline)和非晶态 (amorphous) 两种稳定状态, 处于晶态的相变材料电阻低表示逻辑 “1” ,处于非晶态的相变材料电阻高表示逻辑“0” 。如图 1.4 所示 pcram 是典型的“1t1r”结构,其中电阻 r 代表 gst,t 代表访问晶体管。pcram 的存储阵列可以使用和 dram 相似的方式生产,不同点在于存储单元由电容变成了相变存储单元。 programmable volumeblreset or set currentgstwlcrystalline stateset “1 ”amorphousstatereset “0 ”crystallizing set pulsecrystallizationtransition temperature( 300 c)melting point ( 600 c)amorphizing reset pulseheatern+substrategsttop electrodetimebottomelectrodethe temperature of gst 图 1.4图 1.4 pcram 存储单元结构和存储原理示意图 gst 处于晶态和非晶态时电阻值约相差 103,gst 的读操作需要在 gst 两端加上读操作电压,通过检测流经 gst 电流的大小来判断 gst 中存储的信息。 如图 1.4 所示,pcram 的写操作分为 set 和 reset 两种,set 操作将 gst 变为晶态,reset 操作将 gst 变为非晶态。流经 gst 的写操作电流加热 gst 使其在晶态和非晶态之间快速切换。set 和 reset 操作可以通过控制提供给访问晶体管的电流脉冲大小和持续时间来实现。 set 操作需要的电流脉冲幅度小, 持第 1 章 绪论 8续时间长。通过将 gst 的加热温度控制在结晶温度(300)和融化温度(600)之间并保持一段时间,gst 就会处于晶态;reset 操作需要的电流脉冲幅度大,持续时间短。将 gst 加热至融化温度(600)并迅速冷却,gst 就会处于非晶态。 作为非易失性存储器的新技术,可扩放性是决定 pcram 生命力的关键因素。pcram 的可扩放性表现在两个方面: (1)多级存储单元(multi-level cell,mlc) , 一个存储单元存储多位信息, mlc 在不缩小特征尺寸的情况下增加了存储密度。 (2)pcram 具有接近完美的可扩放性,表现在 pcram 的特征尺寸可以缩小到 3nm(s.raoux,2008) 。特征尺寸的缩小带来的不利影响表现在:读操作所需的电压逐渐逼近结晶温度所需的电压,有引起误写入操作的可能。同时特征尺寸越小,存储单元之间的干扰也会越来越明显。 以上两种新型存储技术各有优缺点,stt-ram 的可写入次数达到了 1015,同时读写速度与 pcram 相比更快。pcram 的优势在于可扩放性好,特征尺寸可以扩放到 3nm,同时 pcram 的存储密度也要比 stt-ram 更高。两种存储技术的缺点同样明显。 stt-ram 的 “0” 和 “1” 状态电阻只有 30%40%的差异 (宋志棠,2010) ,读写过程难于识别存储的信息,因此 stt-ram 需要在大规模生产时保证数据的可靠性上有所改进。而 pcram 在控制动态能耗、增加可写次数以及提高访问速度三个方面需要进行改进。 1.2 pcram 用作流处理器主存的研究意义用作流处理器主存的研究意义 “存储墙”问题严重的影响了计算机系统的性能,随着处理器的结构变化和新的存储器技术日渐成熟。 将新的存储器技术用于计算机系统提升系统性能是当前计算机结构界关心的问题。 且在将新的存储器技术用于现有系统过程中遇到的各种问题也会对存储器技术的发展产生影响。 pcram 的可写次数有限。相变材料通过加热的方式在晶态和非晶态之间转换时,gst 的电阻、密度和体积都会随之产生变化(wangyuan zhang and tao li, 2009)。经过多次 set 和 reset 操作后,体积上的变化使 gst 和加热电极之间的接触不再可靠,无法保证对 pcram 进行正确的写入操作,此时 pcram 存储单元失效。当前的技术条件下 pcram 的可写入次数只有 108109左右。 ,现行的能提高 pcram 可写入次数的技术有 gst 掺杂、消除或降低工艺偏差的影响等。 如何利用的非易失性是个值得思考的问题。pcram 是非易失性的存储器,非易失性表现在存入的信息在断电之后仍能长时间保持。pcram 的数据保持时第 1 章 绪论 9间在 10 年左右。这意味着新的 pcram 结构中不需要刷新电路,主存的静态能耗为零。同时 pcram 可以作为硬盘存储信息。且 os 可以存放在 pcram 内存中减少开机时间。 访存调度算法将来自处理器的访存请求进行排队, 并参照特定的参数制定访存请求发射顺序。当前的访存调度算法主要是针对单核处理器的 dram 主存储器设计的,访存的调度依据和 dram 的参数息息相关。但当主存系统换作其他存储技术时原来最优的调度算法不一定仍能得到最高的性能。 即使同一种存储技术用于单核系统和多核系统时,访存性能的瓶颈发生了变化,也应采用不同的访存调度策略。 1.3 论文的研究目标和主要工作论文的研究目标和主要工作 本文的研究目标是为流处理器提供高性能的 pcram 主存系统。首先为pcram 建立性能模型,结合流处理器的访存系统为流处理器提供主存。其次采用优化技术克服 pcram 的缺陷, 针对 pcram 可写次数有限的缺点利用避免冗余位写技术延长了 pcram 主存的生命周期。 利用避免缓存行写回技术可以避免不必要的 row buffer 写回,提高读操作的效率,降低 pcram 主存功耗。最后本文比较了四种访存调度算法对 pcram 的影响, 依据实验结果得出适合流处理器pcram 主存的访存调度算法。具体研究内容如下所述: (1) pcram 性能模型的建立。 由于 pcram 和 dram 技术良好的兼容性,可以依据 dram 模型的参数,确定 pcram 的读/写延时、读写功耗、存储密度、可写次数等参数和 dram 的比例关系。通过细化模型参数区别 pcram 特有的属性,例如非易失性和写“0”和写“1”操作的不对称性。 (2) 利用避免缓存行写回技术和避免冗余位写技术优化 pcram 性能。 由于 pcram 是典型的非易失性存储器且可写次数有限,如何利用pcram 的非易失性克服可写次数有限的缺点,是影响 pcram 竞争力的关键因素。本文采用避免冗余位写技术延长 pcram 的生命周期,利用避免缓存行写回技术能进一步优化 pcram 主存的性能。 (3) 访存调度算法是影响流处理器的访存性能的关键因素。 不同的访存调度算法在不同的存储技术上性能差距明显。本文选用了四种访存调度算法应用于 pcram 主存。实验结果显示在流处理器结构下row/open 访存调度策略是更适合 pcram 技术特点的访存调度算法。 第 1 章 绪论 101.4 论文的结构论文的结构 本文分为五章: 第一章为绪论,概述了本文的选题背景和意义,对研究目标和主要工作进行了介绍。 第二章介绍了 pcram 技术在各个研究方向上的进展和在计算机系统中的应用。 第三章详细介绍了流处理器的访存控制器结构,pcram 的建模方法和pcram 主存的实现。 第四章对选用的测试程序,pcram 主存的优化技术及优化技术对各应用的访存性能和执行周期数的影响进行描述和分析。 第五章是全文的总结,对全文的工作进行了回顾,以及未来的工作方向。 错误!未找到引用源。错误!未找到引用源。 错误!未找到引用源。错误!未找到引用源。 11第第2章 章 相关工作相关工作 近几年新型存储器技术研究不断取得突破。新型存储器技术能否取代dram 在计算机系统中的地位,如何为新型存储技术建立能耗、延时及性能模型并评估新型存储技术对计算机系统存储层次的影响等工作备受关注。 新型存储技术具有不同于 dram 的特点,将新技术的优点最大化并抑制新技术的缺点成为新技术推广的决定因素。本章首先对 dram 结构的改进趋势进行了介绍。其次对 pcram 在可扩放性(s.raoux,2008) 、多位存储技术(f.bedeschi,2009) 、工艺偏差的影响(wangyuan zhang and tao li,2009)等几个方面进行了介绍。最后介绍了如何将 pcram 用于计算机系统的不同存储层次, 以及将 pcram 技术用于不同存储层次时产生的优化技术,例如避免冗余位写技术等。 2.1 对对 dram 结构的重新思考结构的重新思考 依据 1.1.3 节对 dram 结构的介绍,当前的 dram 结构建立在有效利用局部性、提高传输速度和降低存储成本的基础上。有效利用局部性表现在:通过激活 8kb 的数据满足对 64b cache line 的访存请求, 期待后序的访存有效利用已激活的 8k 数据, 减少后序的访存延时。 提高传输速度表现在: 将属于一个 cache line的数据交错的存放在多个 dram 芯片上, 使每个 dram 芯片的数据管脚得到有效的利用。降低存储成本:通过将每个 dram chip 中的 array 做的很大,使更多的存储单元分摊外围设备的成本。以上 dram 结构设计依据以增加能耗为代价换来性能的提升。 最近的研究表明: 数据中心约 40%的能耗消耗在 dram 的主存系统上 (u.s,environmental protection agency-energy star program ,2007) ,控制 dram 能耗的需求越来越迫切。随着处理器核数的增加,更多的线程可以并行执行,实验显示:单核处理器的系统中 dram row buffer 的命中率为 60%,16 核处理器系统中 dram row buffer 的命中率降为 35%,且 row buffer 中的已激活数据在命中时也只会重用 12 次(k.sudan,2010) 。以上事实表明,对于 16 核处理器,激活8kb 的数据平均只被访问了 64b192b,这种过度预取现象浪费了大量的能耗。 为了控制 dram 能耗的增加,aniruddha n. udipi(2010)等对未来 dram的结构进行了重新的思考。 这些 dram 结构上的改变不仅使 dram 的能耗得到控制,也使 dram 的结构更适合多核 cpu 的发展方向,同时也为众多的新型存储技术的结构设计提供了有益的参考。aniruddha n. udipi 针对过度预取的情况提出了挂起行地址选择(posetd-ras)和有选择的位线激活(selective bitline 错误!未找到引用源。错误!未找到引用源。 错误!未找到引用源。错误!未找到引用源。 12activation,sba)协同工作的机制,只需对 dram 的微结构和接口进行简单的改变就能降低大量的 dram 动态能耗。进一步提出了将一个 cache line 的数据存储在单个 dram 芯片的一个存储阵列中的方法 single subarray access (ssa) 。ssa 通过对 dram 芯片的微结构和接口进行改变,牺牲了部分访存延时来换取动态和静态能耗的节约。 sba 的设计是为了解决 dram 的过度预取问题。对每个访存请求激活少部分的字线(wordline) ,同时只激活所请求 cache line 对应的位线(bitlines) ,这样只有所请求的 cache line 对应的数据位被读入 row buffer,由于精确的 sba 没有数据预取所以宜采用 close策略,在返回请求数据后立即将 row buffer 中的数据写回 dram。要实现 sba 需要对 dram 的微结构进行调整,并采用posetd-ras 技术。 rx0rx1rx2memory arraysmemory arraysmwl0mwl1swlswlswlswlswlswlbitlinesbitlinesbitlinesbitlinesmetalpoly-simwl-main wordline swl-subwordline rx-region select 图 2.1图 2.1 具有区域选择功能的分层 wordline 结构 由于 dram 的管脚数有限,dram 复用 command 总线传输 ras 和 cas命令。 对于传统的 dram 设计来说, ras 命令激活待访问的行并将 8kb 的数据存入 row buffer,cas 命令在 row buffer 中选择需要的数据位传输。在 aniruddha n. udipi 的设计中,当 ras 命令到来时并不马上激活目标行,而是使用一个寄

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论