MRAM因具有许多优点,有取代SRAM和DRAM的潜能。用MTJ存储单元构建的MRAM存储器可以用作高速缓存。然而MRAM写入操作的长延时和较高的功耗成为其瓶颈,阻碍了其性能的进一步提高。读取优先的写缓存器和SRAM-MRAM混合结构这两种策略可以提高MRAM的性能及降低其功耗。
读取优先和SRAM-MRAM混合结构
直接用MRAM代替SRAM可能导致性能下降。因此提出了用两种策略来缓解这个矛盾:一是引入读取优先的写入缓冲器;二是引入SRAM-MRAM混合结构。二者可以结合起来以改善MRAM高速缓存的性能。
读取优先的写入缓冲器
因为L2高速缓存从上一级存储器和写入缓冲器获取命令,必须有一个优先权策略来解决读取和写入命令的冲突。对于MRAM高速缓存,写入延时远大于读取延时,因此应防止写入操作阻塞读取操作。
提出两条规则来确保读取操作的优先权:
(1)读取操作总是具有高于写入操作的优先权。
(2)当写入操作阻塞了读取操作且写入缓冲器未满,在满足特定优先条件下,读取命令可以使当前写入操作中止。然后读取命令获得执行权力。被中止的写入操作稍后重试。用完成度α作为优先条件,完成度低于α时读取命令不会获取优先权。经模拟定α为50%可以满足各种工作条件。实现这一策略需要一个计数器,当写入开始时从O开始计数。高速缓存控制器检查计数器然后决定是否中止当前写入操作来执行读取操作。与直接用MRAM取代SRAM的方案相比,这一策略消除了性能上的退步,但是功耗增加了,因为部分写入操作需要重新执行。
SRAM-MRAM混合结构的L2高速缓存
研究者提出用SRAM-MRAM混合结构取代纯粹的MRAM存储器,其中SRAM只占一小部分。其主要目的是尽量使写入操作集中到SRAM而减少了MRAM中的写入操作数量。
如图1所示,研究者减少了部分MRAM,代之以sram ,并且将所有SRAM单元集中到一起在处理器层上构建了若干个完整的SRAM组。SRAM组放置在处理器层的中央而不是分散放置,这样处理器层的面积会增加而高速缓存层的面积会减少。
给出了几个混合结构的管理策略:
(1)高速缓存控制器需要知道SRAM和MRAM的位置。当出现写入失误时,控制器优先考虑将该数据放入SRAM。
(2)考虑到处理器反复将数据写入某些单元的可能性,这些数据若在MRAM中需移入SRAM中。如果数据连续经历两次写入操作,则这些数据需要被移入SRAM中。
(3)注意到处理器的读取操作同样可能引起数据的转移,而且其次数可能大于写入操作。因此引入一个新的数据移动策略。对于传统的管理策略,数据会被移动到host组,而适应于混合结构的策略把数据移入SRAM中。
(4)结果显示混合结构平均提高性能5.65% ,使平均总功耗降低了12.45%。
联系客服