发明名称 |
支持同步EDAC校验的高效取指流水线 |
摘要 |
一种支持同步EDAC校验的高效取指流水线,流程为:(1)程序地址产生栈AG;(2)程序地址发送栈AS,用来接收Tag体返回的数据并进行命中判断;且进行Tag体伴随式计算、判断Tag体是否存在错误和对1位错误进行纠正;当AS栈获得的Tag体信息发生1位错误时,暂停流水线,对其进行纠错,再命中判断,确认是读取数据体还是读取下一级存储器;(3)程序访问等待栈WT,用来等待从数据体或下一级存储器返回的指令包并进行选择;且进行数据体伴随式计算、判断数据体是否存在错误、对1位错误进行纠正、Tag体和数据体的EDAC编码写入;(4)程序取指包接收栈RE。本发明具有高效性、纠错能力强、硬件开销小、对程序员具有透明性等优点。 |
申请公布号 |
CN103279329A |
申请公布日期 |
2013.09.04 |
申请号 |
CN201310166448.6 |
申请日期 |
2013.05.08 |
申请人 |
中国人民解放军国防科学技术大学 |
发明人 |
陈书明;刘宗林;刘必慰;孙永节;梁斌;刘胜;雷元武;鲁建壮;孙书为;余再祥 |
分类号 |
G06F9/38(2006.01)I;G06F11/10(2006.01)I |
主分类号 |
G06F9/38(2006.01)I |
代理机构 |
湖南兆弘专利事务所 43008 |
代理人 |
周长清 |
主权项 |
一种支持同步EDAC校验的高效取指流水线,其特征在于,流程为:(1)程序地址产生栈AG,用来产生当前取指包的地址,并向一级指令Cache的Tag体发送读请求; (2)程序地址发送栈AS,用来接收Tag体返回的数据并进行命中判断,如果命中则向数据体发送读请求;如果不命中则暂停流水线,并向下一级存储器发送读请求;且进行Tag体伴随式计算、判断Tag体是否存在错误和对1位错误进行纠正;当AS栈获得的Tag体信息发生1位错误时,需要暂停流水线,对其进行纠错,再进行命中判断,确认是读取数据体还是读取下一级存储器;(3)程序访问等待栈WT,用来等待从数据体或下一级存储器返回的指令包并进行选择;且进行数据体伴随式计算、判断数据体是否存在错误、对1位错误进行纠正、Tag体和数据体的EDAC编码写入;一旦发生1位错误,首先暂停流水线,对其进行纠错,然后再进行后续处理;(4)程序取指包接收栈RE,用来对接收到的取指包进行边界对齐和调整;在上述流水线中,在程序地址发送栈AS和程序访问等待栈WT一旦发现2位错,控制逻辑将会重新读取对应的存储体,只有连续两拍访问存储体均出现2位错的时候,系统才会进入2位错处理状态。 |
地址 |
410073 湖南省长沙市砚瓦池正街47号中国人民解放军国防科学技术大学计算机学院微电子与微处理器研究所 |