当前位置: 首页 > 专利查询>浙江大学专利>正文

一种用于DRAM缓存的纠错编码方法技术

技术编号:5226526 阅读:262 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种用于DRAM缓存的纠错编码方法,包括如下步骤:(1)提高DRAM缓存的刷新周期,降低刷新频率;(2)对缓存中的数据进行编码和解码。本发明专利技术依据最易出错的比特位来设置刷新时间,使用纠错技术弥补一些错误数据,强大的纠错技术能纠正多比特位,意味着可以提高刷新时间,从而减少功耗。

【技术实现步骤摘要】

本专利技术嵌入式硬件设计领域、存储节能设计领域,特别涉及一种用于DRAM缓存的 纠错编码方法。
技术介绍
目前,先进的技术使得大的嵌入式DRAM缓存集成在片上成为可能,比传统的SRAM 更密集,但是必须及时刷新电路以保证数据完整,且DRAM易受设备材料的影响,对刷新周 期起决定性作用,刷新所需要的功耗点整个系统能耗的绝大部分,所以大的DRAM集成带来 了刷新功耗增加的问题。嵌入式DRAM缓存集成度高,需要频繁地进行刷新,否则由于丢失电等情况极容易 导致一些存储单元上的信息丢失,使得数据不可用,而高频率的刷新会大大增加功耗,这就 违反了绿色计算,节能的设计思想。为了达到节能,处理器拥有一些空闲状态支持低功耗模式,因为处理器大部分时 间处于空闲状态,所以在空闲状态减少功耗很重要,一种常用的方法是为大的内存块使用 功耗阀值。但是随着缓存密度增加,这种方法的性能和功耗代价也增加,因此不适用于高度 密集的DRAM。嵌入式系统中的DRAM刷新机制设计通常是依据最差情况下的刷新周期,也是存 储单元保留数据的最短时间。随着DRAM的容量增加,闲置状态时的功耗,刷新所需要的功 耗也随之增加。先前也有人提出一些硬件机制,以检测不同刷新频率时和存储单元的数据 保留时间。其中一种软件方法是,允许DRAM中数据保留时间长的页面分配在保留时间较短 的页面分配成完成,然后选择一个刷新周期,这个周期是根据一些常用的页确定,相对于根 据整个DRAM来确定刷新周期可减少很多操作,也能减少一定的功耗。但是这个方法需要额 外的存储空间来追踪各页的数据保留时间以及要依赖于内存的测试才能标识那些不重要 的比特存储单元。另外一种基于测试的方法是固定比特位算法,解决了刷新过程中的高错 误率的问题。由于基于测试的方法随着内存及缓存容量增加,其实现难度也会增加,代价也 很大。智能刷新技术通过给每一行增加计时器在刷新时略过最近访问过的行,这样就能 少刷新一些存储单元,达到节能的目的。但是智能刷新方法在空闲状态下很低效,因为空闲 状态下不会有缓存行被访问,因此就达不到减少功耗的目的。另一种提高刷新周期的方法 是使用纠错码技术动态地识别并纠正出错的比特位。这种方法依据最易出错的比特位来设 置刷新时间,使用纠错技术弥补一些错误数据,强大的纠错技术能纠正多比特位,意味着可 以提高刷新时间,从而减少功耗。
技术实现思路
为了提高刷新周期,减少刷新频率,最终减少功耗,本专利技术提供了一种用于DRAM 缓存的纠错编码方法。本专利技术解决技术问题所采用的技术方案是一种用于DRAM缓存的纠错编码方法,包括如下步骤1)提高DRAM缓存的刷新周期,降低刷新频率;2)对缓存中的数据进行编码和解码,包括如下步骤a)编码,对于缓存中数据利用BCH码进行编码,输入的数据d为K比特,输入数据 d与矩阵G相乘得到一个数据编码信息u,从而将数据保存在编码中,并增加了 r位检查位;b)解码,通过编码的症状S来判断错误类别,根据错误类别使用纠错方法如果S为0,则数据没有错误,如果S中的哪位为非零则该位为错误;如果只有一位错误,则用单比特位纠错方法,如果错误位数为两个以上,则用多比 特位纠错方法;其中:S= v*HT = (u+e)*HT = (d*G+e)*HT = e*HT,ν = u+e,G*HT = 0,e是指错误信息位数,ν表示带有错误e的编码信息。所述DRAM缓存的刷新周期为150 μ s 500 μ S。所述错误位数为两个以上,纠错过程如下先寻找S中的错误位数,然后确定错误 位置,再将该位置的错误进行改正;假设第i 位为 1,& =£7.il:l -^aj2*1 +. + σ· ,σ (χ) = l+σ lX+. . . + σ ^t = (1- α J1x) (1-α J2x)... (1- α Jtx),式中j表示错误检查位,t表示错误检查位数,求解出这个方程的根X,就得到错误 位的位置,将相应位的错位进行改正。所述H的行数为t*m+l,其中t表示能纠正的最大错误数,m则表示数据ν的长度。所述多比特位纠错方法为5EC6ED。本专利技术具有的有益效果是首先,减少存储单元刷新次数,为系统节省很多电能, 达到绿色计算,保护环境的目的;其次,虽然刷新周期长,使得存储单元中的信息易丢失,但 是强大的多比特纠错编码保证了数据的正确性;再次,虽然多比特纠错功能强,但相对于传 统的纠错编码,它所花费的低价很低,占的额外空间小,延迟小,能耗也低。最后本专利技术可实 施性强,符合当前处理器设计的要求,能迅速应用到各种处理器上,具有广泛的商业用途。附图说明图1是本专利技术一种实施例的流程图。具体实施方法以下结合附图对本专利技术提供的用于DRAM缓存的纠错编码方法作进一步详细的描 述图1是本专利技术一种实施例的流程图,该方法包括如下步骤(1)提高刷新周期,降低刷新频率嵌入式硬件中的DRAM分布比较密集,比特位数据出错的可能性严重依赖于设备 材料,整个系统的功耗中,DRAM和缓存的刷新所需要的能耗占很大一部分,较高的刷新频率 会大大增加功耗。为了减少能耗,处理器设计时考虑缓存刷新周期的设置,过于频繁会增 加功耗,而周期太长又容易使数据出错。通常都要根据硬件材料,选择一个最佳刷新周期,4使得出错存储单元数尽量少,这样纠错也容易实现。缓存的刷新周期一般为30us,一个单 一错误纠正双错检测(SECDED)可以使刷新周期为150us,本专利技术中提出的错误纠正编码 (Hi-ECC)可以使刷新周期设置为440us。刷新周期短,即电路刷新频繁,则功耗比较大,提 高刷新周期能大大减少功耗,但是会提高缓存数据出错的概率,错误位检测和纠正的能力 也是有限的,当缓存数据位出错概率较大时(同时多位出错),可能就无法纠正数据位了。(2)对缓存中的数据进行编码和解码在刷新这前,一些电流会流失,可能会有一些数据信息丢失,所以需要进行纠错, 其中①编码时,实现步骤I.输入的数据d为K比特,用一个预先定义好的矩阵G,输入数据d与矩阵G相乘 得到一个数据编码信息u,(u = d*G),这样原始数据就被保存在编码中了,并增加了 r位检 查位;②解码,实现步骤解码是和编码对应的,当CPU要提出缓存中的数据时,就会对数据解码以检查是 否有错误位。解码逻辑单元检测并修复存储在编码U中的任意错误,恢复到原始的数据,这个 解码单元可分为三个部分;I.错误查找,一个带有错误e的编码信息ν (v = u+e),解码单元先将ν与一个预 先定义好的矩阵H的转置相乘得到编码的症状S (S = ν*ΗΤ (转置));这里的e是指查错误 信息位数,也就是编码后增加的r位查错位,矩阵G与H的转置相乘的值为0。H的行数为 t*m+l,其中t表示能纠正的最大错误数,在5EC6ED中t为5,而m则表示数据ν的长度,S = v*HT = (u+e)*HT = (d*G+e)*HT = e*HT因为G*HT = 0,这里的d就是编码时的数据,e就是编码后增加的r位查错位。得 到的S就是一串01的数据,如果有为1的,则表示该位数据有误,也就是数据u中的第该位 有误,改正过来就行,要么0,要么1,错误太多5EC6ED也无法处理。在矩阵H中的第一列全 为1,第一行也全为1,其他元素为a的本文档来自技高网
...

【技术保护点】
一种用于DRAM缓存的纠错编码方法,其特征在于包括如下步骤:1)提高DRAM缓存的刷新周期,降低刷新频率;2)对缓存中的数据进行编码和解码,包括如下步骤:a)编码,对于缓存中数据利用BCH码进行编码,输入的数据d为K比特,输入数据d与矩阵G相乘得到一个数据编码信息u,从而将数据保存在编码中,并增加了r位检查位;b)解码,通过编码的症状S来判断错误类别,根据错误类别使用纠错方法如果S为0,则数据没有错误,如果S中的哪位为非零则该位为错误;如果只有一位错误,则用单比特位纠错方法,如果错误位数为两个以上,则用多比特位纠错方法;其中:S=v*H↑[T]=(u+e)*H↑[T]=(d*G+e)*H↑[T]=e*H↑[T],v=u+e,G*H↑[T]=0,e是指错误信息位数,v表示带有错误e的编码信息。

【技术特征摘要】
一种用于DRAM缓存的纠错编码方法,其特征在于包括如下步骤1)提高DRAM缓存的刷新周期,降低刷新频率;2)对缓存中的数据进行编码和解码,包括如下步骤a)编码,对于缓存中数据利用BCH码进行编码,输入的数据d为K比特,输入数据d与矩阵G相乘得到一个数据编码信息u,从而将数据保存在编码中,并增加了r位检查位;b)解码,通过编码的症状S来判断错误类别,根据错误类别使用纠错方法如果S为0,则数据没有错误,如果S中的哪位为非零则该位为错误;如果只有一位错误,则用单比特位纠错方法,如果错误位数为两个以上,则用多比特位纠错方法;其中S=v*HT=(u+e)*HT=(d*G+e)*HT=e*HT,v=u+e,G*HT=0,e是指错误信息位数,v表示带有错误e的编码信息。2.根据权利要求1所述的纠错编码方法,其特征在于所述...

【专利技术属性】
技术研发人员:陈天洲虞保忠乔福明马建良乐金明
申请(专利权)人:浙江大学
类型:发明
国别省市:86[]

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

1