发明名称 面向流数据的重排序访存缓冲方法及装置
摘要 本发明公开了一种面向流数据的重排序访存缓冲方法及装置,在地址产生器与底层存储器之间设置有地址重排序缓冲单元,在地址产生器与上层流缓冲单元之间设置有数据返回缓冲单元,地址重排序缓冲单元和数据返回缓冲单元与控制逻辑单元相连;地址重排序缓冲单元用来将地址产生器产生的访存地址序列重新组合,使得各自记录内部元素的地址相对连续起来;数据返回缓冲单元保存底层存储器突发式传输出来的数据,控制逻辑单元根据当次访问的特点控制何时向外发送访存请求、从数据返回缓冲中选择某次突发式传输的部分或者全部元素送回到上层流缓冲单元中工作。本发明能使离散的访存序列连续化、优化访存,同时能够提高访存效率、扩展有效带宽的面向流数据。
申请公布号 CN101021783A 申请公布日期 2007.08.22
申请号 CN200710034577.4 申请日期 2007.03.19
申请人 中国人民解放军国防科学技术大学 发明人 蒋江;张民选;邢座程;杨学军;陈海燕;高军;李晋文;衣晓飞;张明;穆长富;阳柳;曾献君;马驰远;李勇;倪晓强;唐遇星;张承义;汤明
分类号 G06F9/38(2006.01);G06F15/80(2006.01) 主分类号 G06F9/38(2006.01)
代理机构 湖南兆弘专利事务所 代理人 赵洪
主权项 1、一种面向流数据的重排序访存缓冲方法,其特征在于:(1)在地址产生器与底层存储器之间设置有地址重排序缓冲单元,在地址产生器与上层流缓冲单元之间设置有数据返回缓冲单元,地址重排序缓冲单元和数据返回缓冲单元与控制逻辑单元相连,地址重排序缓冲单元和数据返回缓冲单元都为双缓冲;(2)流控制器启动地址产生器工作的同时将记录长度、访存模式等信息传送到与地址重排序缓冲单元相连的控制逻辑单元,控制逻辑单元根据这些信息确定填写重排序缓冲的规则;(3)根据上述规则对地址重排序缓冲单元中的一个地址重排序半缓冲单元进行填写,当填写完成时,阻止该地址重排序半缓冲单元接收填写操作并向下层发送选择出来的访存地址,此时另一个地址重排序半缓冲单元可以接收地址产生器产生的请求;(4)对与load操作来说,当访存地址发送出去之后,控制逻辑单元等待存储器的数据返回信号有效,一旦底层burst传输有效,就将数据送入到对应的数据返回半缓冲单元的M[i][0](0≤i≤burst length-1,burst length为一次存储器突发式传输的长度)号位置,下一次则将数据存放在M[i][1](0≤i≤burst length-1,burst length为一次存储器突发式传输的长度)号位置,以此类推,直到将n次burst传输数据全部填写完毕,其中n与CLUSTER数目以及OFFSET寄存器数目对应;以上过程完成之后,该数据返回半缓冲单元已填写完毕,此时可以向上层流缓冲单元发送缓冲可读信号,控制逻辑单元按照重排序半缓冲单元中的地址选择在数据返回半缓冲单元中的相应数据送往上层缓冲单元,当数据返回半缓冲单元中的数据全部读取完毕之后,释放该重排序半缓冲单元和数据返回半缓冲单元;(5)对于Store操作来说,某个访存地址发送出去之后,要将重排序半缓冲单元的矩阵中该列对应的数据依次发送到底层存储器,也就是说一个地址对应该列的若干个数据,以此类推,直到该重排序半缓冲单元中所有数据都发送完毕,释放该重排序半缓冲单元。
地址 410073湖南省长沙市砚瓦池正街47号国防科学技术大学计算机学院