可实现数据地址连续的U型布局tile缓存方法技术

技术编号:20545722 阅读:24 留言:0更新日期:2019-03-09 18:39
本发明专利技术涉及数据存储领域,具体涉及一种可实现数据地址连续的U型布局tile缓存方法,解决现有片上寄存器数据存储效率低的问题。本发明专利技术的技术解决方案是,一种可实现数据地址连续的U型布局tile缓存方法包括以下步骤:1)选取tile内的四个缓存作为缓存块,四个缓存呈矩形阵列排布;2)以四个缓存中任一缓存为起点,读写顺序沿矩形阵列顺时针或逆时针依次进行。

A U-shaped Layout Tile Caching Method with Continuous Data Addresses

The invention relates to the field of data storage, in particular to a U-shaped layout tile caching method which can realize continuous data addresses, and solves the problem of low data storage efficiency of existing on-chip registers. The technical solution of the present invention is that a U-shaped layout tile cache method which can achieve continuous data addresses includes the following steps: 1) selecting four caches in tiles as buffer blocks, and four caches are arranged in rectangular arrays; 2) starting from any of the four caches, reading and writing sequence is clockwise or counterclockwise along the rectangular array.

【技术实现步骤摘要】
可实现数据地址连续的U型布局tile缓存方法
本专利技术涉及数据存储领域,具体涉及一种可实现数据地址连续的U型布局tile缓存方法,该方法为一种U型布局的存储方式和存储地址索引方法。
技术介绍
随着计算机体系结构的发展,计算机逐渐形成片上寄存器-片上缓存-片外存储器的存储层次结构。片上寄存器最接近处理器,具有数据交换速度最快的特点,同时也具有容量最小的缺陷。因此提升片上寄存器的工作效率,减少片上寄存器的等待时间成为提升数据存储效率的有效方式。在数据存储时,往往需要关注数据的局部性问题。图像、数学矩阵等数据在处理某一区域数据时,相邻地址的数据也有可能在短时间内被用到,产生空间局部性问题。传统的顺序地址访问往往忽视了数据具有的空间局部性,导致片上寄存器产生数据等待,降低了数据的读取效率。随着人们对数据空间局部性认识的提高,相关研究者提出了线性Z型存储,相较于线性存储,线性Z型存储方式在片上寄存器块将每两行变成连续的子地址块,但是在子地址块之间仍会产生较大的地址跨度,故在写回时仍会产生冲突缺失,降低了数据的读取效率。
技术实现思路
本专利技术的目的是解决现有片上寄存器数据存储效率低的问题,提供了一种可实现数据地址连续的U型布局tile缓存方法。本专利技术的技术方案是:一种可实现数据地址连续的U型布局tile缓存方法,包括以下步骤:1)选取tile内的四个缓存作为缓存块,四个缓存呈矩形阵列排布;2)以四个缓存中任一缓存为起点,读写顺序沿矩形阵列顺时针或逆时针依次进行。进一步地,步骤2)中,以四个缓存中的左上角缓存为起点。进一步地,步骤2)中,以四个缓存中的左上角缓存为起点,按顺时针依次读写。同时,本专利技术还提供另一种可实现数据地址连续的U型布局tile缓存方法,包括以下步骤:1)将2N×2N的缓存划分为多级缓存块,且一级缓存块包括四个呈矩形阵列排布的缓存,二级缓存块包括四个呈矩形阵列排布的一级缓存块,依次类推,N级缓存块包括四个呈矩形阵列排布的N-1级缓存块,其中,N≥2;2)2N×2N的缓存的U形读写规则如下;任一级缓存块读写时,其内部的所有级缓存块须从一级缓存块的任一缓存开始进行读写,并且,在每一级缓冲块中,以下一级缓存块中的任一缓存块为起点,按顺时针或逆时针依次读写。进一步地,步骤2)中,所述的U形读写规则具体包括:在每一级缓冲块中,以下一级缓存块中的左上角缓存块为起点。进一步地,步骤2)中,所述的U形读写规则具体包括:在每一级缓冲块中,以下一级缓存块中的左上角缓存块为起点,按顺时针依次读写。此外,本专利技术还提供的其它可实现数据地址连续的U型布局tile缓存方法,包括以下步骤;1)将M×2N×2N的缓存划分成M个2N×2N的缓存;2)将2N×2N的缓存划分成多级缓存块,且一级缓存块包括四个呈矩形阵列排布的缓存,二级缓存块包括四个呈矩形阵列排布的一级缓存块,……,N级缓存块包括四个呈矩形阵列排布的N-1级缓存块,其中,N≥2;3)2N×2N的缓存的U形读写规则如下:任一级缓存块读写时,其内部的所有级缓存块必须从一级缓存块的任一缓存开始进行读写,并且,在每一级缓冲块中,以下一级缓存块中的任一缓存块为起点,按顺时针或逆时针依次读写;4)M个2N×2N的缓存依次进行顺序读写。进一步地,步骤3)中,所述的U形读写规则具体包括:在每一级缓冲块中,以下一级缓存块中的左上角缓存块为起点。进一步地,步骤3)中,所述的U形读写规则具体包括:在每一级缓冲块中,以下一级缓存块中的左上角缓存块为起点,按顺时针依次读写。本专利技术与现有技术相比,具有以下技术效果:1.本专利技术可将寄存器内的数据地址设置为完全连续的,减少读取地址时较大的地址跨越,从而减少cache的冲突确缺失问题,提高数据传输效率。2.本专利技术方法用于改善在块数据读写时由于地址跨度大而导致的cache冲突缺失问题,提供一种U型存储布局的片上缓存,使整个缓存内所有数据的地址都是连续的。附图说明图1为缓存大小为2×2的U型布局示意图一;图2为缓存大小为2×2的U型布局示意图二;图3为缓存大小为2×2的U型布局示意图三;图4为缓存大小为2×2的U型布局示意图四;图5为缓存大小为4×4的U型布局示意图;图6为缓存大小为8×8的U型布局示意图;图7为缓存大小为16×16的U型布局示意图;图8为多个二级缓存块进行顺序读写示意图。具体实施方式以下结合附图和具体实施例对本专利技术的内容作进一步详细描述:一种可实现数据地址连续的U型布局tile缓存方法,包括以下步骤:1)选取tile内的任意四个缓存作为缓存块,四个缓存呈矩形阵列排布;2)以四个缓存中任一缓存为起点,读写顺序沿沿矩形阵列的四个拐角顺时针或逆时针依次进行。2×2tile缓存如图1所示,读写时顺序为左上,右上,右下,左下。2×2tile缓存如图2所示,读写时顺序为左上,左下,右下,右上。2×2tile缓存如图3所示,读写时顺序为左下,左上,右上,右下。2×2tile缓存如图4所示,读写时顺序为右上,左上,左下,右下。同时,本专利技术还提供第二种可实现数据地址连续的U型布局tile缓存方法,包括以下步骤:首先将2N×2N缓存划分成4个2N-1×2N-1的缓存,左上子缓存命名为A,右上自缓存命名为B,右下子缓存命名为C,左下子缓存明明为D;分别将ABCD的子缓存以相同方式进行划分,直至分成2×2大小的一级缓存块。这四个子缓存写回顺序为ABCD,分别将ABCD的子缓存以相同方式进行读写,且任一级缓存块读写时,其内部的所有级缓存块须从一级缓存块的任一缓存开始进行读写,并且,在每一级缓冲块中,以下一级缓存块中的任一缓存块为起点,按顺时针或逆时针依次读写。同时,本专利技术还提供第三种可实现数据地址连续的U型布局tile缓存方法,包括以下步骤:对2N×2Ntile缓存,将其划分成2N/M个2N×2M矩形子缓存,其中M<N,将每个2N×2M划分为2N/M个2M×2M的子缓存,2N/M个2M×2M的缓存块按照线性的顺序进行写回,所有2M×2M的缓存以上述第二种方法中的方式进行划分和读写,即左上子缓存命名为A,右上自缓存命名为B,右下子缓存命名为C,左下子缓存明明为D,这四个子缓存写回顺序为ABCD,直至划分成一级缓存块2×2的子缓存块,子缓存块的写回顺序也为U型读写。U型存储布局的tile缓存,数据缓存地址计算,定义数据读写顺序为Umap,tile内横坐标为tileX,纵坐标为tileY,tileX、tileY和Umap均为二进制数;依据Umap计算tile内对应的横坐标tileX和纵坐标tileY,数据缓存地址为Tileaddr,Umap[m]代表Umap的第m位;用于U型布局的存储地址索引方法,包括以下步骤;TileY={Umap[7],Umap[5],Umap[3],Umap[1]}。TileX={(Umap[6]^Umap[7]),(Umap[4]^Umap[5]),(Umap[2]^Umap[3]),(Umap[0]^Umap[1])}。Tileaddr={TileY,TileX}。地址索引的计算方法可依据tile的尺寸进行扩展。定义tile为一个片上数据缓存,其地址为Addr,横坐标为tileX,纵坐标为tileY,储一个数据,其序号为Umap,则本文档来自技高网...

【技术保护点】
1.一种可实现数据地址连续的U型布局tile缓存方法,其特征在于,包括以下步骤:1)选取tile内的四个缓存作为缓存块,四个缓存呈矩形阵列排布;2)以四个缓存中任一缓存为起点,读写顺序沿矩形阵列顺时针或逆时针依次进行。

【技术特征摘要】
1.一种可实现数据地址连续的U型布局tile缓存方法,其特征在于,包括以下步骤:1)选取tile内的四个缓存作为缓存块,四个缓存呈矩形阵列排布;2)以四个缓存中任一缓存为起点,读写顺序沿矩形阵列顺时针或逆时针依次进行。2.根据权利要求1所述的可实现数据地址连续的U型布局tile缓存方法,其特征在于:步骤2)中,以四个缓存中的左上角缓存为起点。3.根据权利要求2所述的可实现数据地址连续的U型布局tile缓存方法,其特征在于:步骤2)中,以四个缓存中的左上角缓存为起点,按顺时针依次读写。4.一种可实现数据地址连续的U型布局tile缓存方法,其特征在于,包括以下步骤:1)将2N×2N的缓存划分为多级缓存块,且一级缓存块包括四个呈矩形阵列排布的缓存,二级缓存块包括四个呈矩形阵列排布的一级缓存块,N级缓存块包括四个呈矩形阵列排布的N-1级缓存块,其中,N≥2;2)2N×2N缓存的U形读写规则如下;任一级缓存块读写时,其内部的所有级缓存块须从一级缓存块的任一缓存开始进行读写,并且,在每一级缓冲块中,以下一级缓存块中的任一缓存块为起点,按顺时针或逆时针依次读写。5.根据权利要求4所述的可实现数据地址连续的U型布局tile缓存方法,其特征在于:步骤2)中,所述的U形读写规则具体包括;在每一级缓冲块中,以下一级缓存块中的左上角缓存块为起点。6...

【专利技术属性】
技术研发人员:曾泽沧郝武黄世远杜慧敏张丽果
申请(专利权)人:西安邮电大学
类型:发明
国别省市:陕西,61

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

1