CN106683158B - 一种GPU纹理映射非阻塞存储Cache的建模*** - Google Patents
一种GPU纹理映射非阻塞存储Cache的建模*** Download PDFInfo
- Publication number
- CN106683158B CN106683158B CN201611140141.9A CN201611140141A CN106683158B CN 106683158 B CN106683158 B CN 106683158B CN 201611140141 A CN201611140141 A CN 201611140141A CN 106683158 B CN106683158 B CN 106683158B
- Authority
- CN
- China
- Prior art keywords
- texture
- request
- cache
- unit
- storage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000013507 mapping Methods 0.000 title claims abstract description 27
- 230000000903 blocking effect Effects 0.000 title claims abstract description 16
- 238000001514 detection method Methods 0.000 claims abstract description 43
- 101150015860 MC1R gene Proteins 0.000 claims abstract description 26
- 102100034216 Melanocyte-stimulating hormone receptor Human genes 0.000 claims abstract description 26
- 238000000034 method Methods 0.000 claims abstract description 21
- 230000008569 process Effects 0.000 claims abstract description 15
- 238000012545 processing Methods 0.000 claims abstract description 15
- 230000006870 function Effects 0.000 claims abstract description 11
- 101100372898 Caenorhabditis elegans vha-5 gene Proteins 0.000 claims description 11
- 238000001914 filtration Methods 0.000 claims description 8
- 230000006835 compression Effects 0.000 claims description 6
- 238000007906 compression Methods 0.000 claims description 6
- 230000006837 decompression Effects 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000013461 design Methods 0.000 abstract description 7
- 230000000737 periodic effect Effects 0.000 abstract description 4
- 238000011161 development Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Image Generation (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明属于计算机图形领域,提供一种GPU纹理映射非阻塞率存储Cache的建模结构,包括:纹理Cache存储状态与控制单元(1)、缺失信息状态保持寄存器存储单元(MSHR)(2)、多请求合并与冲突检测单元(3)和纹理存储Cache核单元(4)。本发明对纹理存储Cache访问过程进行周期精确的硬件建模,采用输入请求冲突检测及请求合并划分、多端口、多Bank、非阻塞流水的多进程方式,实现纹理访问请求数据的并行处理,能有效实现纹理访问数据的大规模并行性和高吞吐率的需求。另外,采用这种建模结构有效可以避免繁琐的电路信号设计、快速评估大规模硬件***的架构,适用于电路早期的***级设计开发,对同类产品、功能实现提供有效参考。
Description
技术领域
本发明属于计算机图形领域,尤其涉及一种GPU纹理映射非阻塞率存储Cache(高速缓冲存储器)的SystemC建模***。
背景技术
随着图形学的飞速发展,3D图形技术除了在个人计算机、工作站有大量应用外,在移动电话、汽车导航等嵌入式领域也取得长足发展。鉴于3D图形渲染中运算量大、需要处理数以万计的顶点或像素数据,为了能在移动设备实现实时渲染3D图形,就要求图形处理***具有非常快的处理速度,但是移动设备等的存储容量有效、大量的图元、纹理数据无法全部加载,需要频繁的与外部存储器进行交互,有限的数据带宽和数据处理速度成为嵌入式***的主要瓶颈。
发明内容
本发明的目的是:
提供一种GPU纹理映射非阻塞率存储Cache的建模***,采用SystemC语言和Transaction Level Modeling(TLM,事务级建模)方法,对纹理存储Cache访问过程进行周期精确的硬件建模,采用输入请求冲突检测及请求合并划分、多端口、多Bank、非阻塞流水的多进程方式,实现纹理访问请求数据的并行处理,能有效实现纹理访问数据的大规模并行性和高吞吐率的需求。
本发明的解决方案是:
一种GPU纹理映射非阻塞存储Cache的建模***,包括:
纹理Cache存储状态与控制单元(1)、缺失信息状态保持寄存器存储单元(MSHR)(2)、多请求合并与冲突检测单元(3)和纹理存储Cache核单元(4);
纹理Cache存储状态与控制单元(1)为纹理Cache访问缺失信息状态保持寄存器存储单元(2)提供控制与状态信息,包括Cache使能,纹理请求数据过滤模式(filterMode),映射类型(mapType),纹理地址的使能信息;
缺失信息状态保持寄存器存储单元(2),用于保存每个外部纹理映射单元发送的每个纹理请求保存的一个MSHR寄存器,其中包括纹理请求的标识validBit,请求的控制标志信息warp_id和quad_id、16个纹素请求地址(u0,u1,……u15,v0,v1,……v15,w0,w1,……w15)、请求纹素返回的结果值(Data0,Data1,……Data15)以及16个小请求处理完成的对应的完成状态(Rdy0,Rdy1……Rdy15)和当前纹理请求完成使能Enable,另外缺失信息状态保持寄存器存储单元(2)从纹理Cache存储状态与控制单元(1)读取过滤模式(filterMode)填入当前纹理请求的MSHR寄存器中,缺失信息状态保持寄存器存储单元(2)内部进程不断检测当前请求的标识validBit,当该标识validBit有效时,将该纹理请求的16个纹素请求地址(u0,u1,……u15,v0,v1,……v15,w0,w1,……w15)输出给多请求合并与冲突检测单元(3);
多请求合并与冲突检测单元(3),从MSHR里获取最多16个纹理地址,且设置合并上限m,如果16个纹理地址合并后数目小于等于m个,将16个纹理地址1次输出给纹理存储Cache核单元(4);如果16个纹理地址合并后数目大于m个,将16个纹理地址分为2次输出给纹理存储Cache核单元(4);如果16个纹理地址中至少有2个纹理地址的Bank的索引地址相同,将16个纹理地址分为2次输出给纹理存储Cache核单元(4);
纹理存储Cache核单元(4),用m个端口独立、并行处理来自多请求合并与冲突检测单元(3)的最多m个纹理地址,如果纹理地址的高位部分与纹理存储Cache核单元(4)内部Cache的bank索引地址相同时,则认为该纹理地址命中,然后将纹理地址的低位部分作为偏移地址访问纹理Cache内部DataRam内的16个纹理像素数据,并将纹理像素数据返回给多请求合并与冲突检测单元(3),多请求合并与冲突检测单元(3)再通过与缺失信息状态保持寄存器存储单元(2)之间的接口函数,将16个纹理像素数据填入缺失信息状态保持寄存器存储单元(2)的请求纹素返回的结果值(Data0,Data1,……Data15)中,并设置16个小请求的状态(Rdy0,Rdy1……Rdy15)和当前纹理请求完成使能Enable均为有效;如果纹理地址高位部分与纹理存储Cache核单元(4)内部Cache的bank索引地址不相同时,则认为该纹理地址缺失,则将当前纹理地址进行线程转换后,再经过纹理压缩与解压缩后访问DDR3显示存储器,并将DDR3显示存储器返回的8*8大小的纹理数据送入纹理Cache进行Block替换,并将更新的纹理像素数据返回给多请求合并与冲突检测单元(3),多请求合并与冲突检测单元(3)再通过与缺失信息状态保持寄存器存储单元(2)之间的接口函数,将16个纹理像素数据填入缺失信息状态保持寄存器存储单元(2)的请求纹素返回的结果值(Data0,Data1,……Data15)中,并设置16个小请求的状态(Rdy0,Rdy1……Rdy15)和当前纹理请求完成使能Enable均为有效。
本发明的优点是:
本发明采用SystemC语言和Transaction Level Modeling(TLM,事务级建模)结构,对纹理存储Cache访问过程进行周期精确的硬件建模,采用输入请求冲突检测及请求合并划分、多端口、多Bank、非阻塞流水的多进程方式,实现纹理访问请求数据的并行处理,能有效实现纹理访问数据的大规模并行性和高吞吐率的需求。另外,采用这种建模***有效可以避免繁琐的电路信号设计、快速评估大规模硬件***的架构,适用于电路早期的***级设计开发,对同类产品、功能实现提供有效参考。
附图说明
图1是本发明纹理映射非阻塞率存储Cache的SystemC建模的原理框图。
图2是本发明中非阻塞率存储Cache单元内部事务级建模框图。
图3是本发明图片说明图。
图4是纹理Cache的MSHR管理和数据输出进程流程图。其中,
条件1:
(filterMode=nearest)&&(mapType=1D||2D||3D||CUBE));
(filterMode=linear)&&(mapType=1D||2D||CUBE));
(filterMode=nearest_mipmap_nearest)&&(mapType=1D||2D||CUBE||3D));
(filterMode=linear_mipmap_nearest)&&(mapType=1D||2D||CUBE));
(filterMode=nearest_mipmap_lineart)&&(mapType=1D||2D||CUBE));
(filterMode=linear_mipmap_linear)&&(mapType=1D);
条件2:
(filterMode=linear)&&(mapType=3D));
(filterMode=linear_mipmap_nearest)&&(mapType=3D));
(filterMode=linear_mipmap_linear)&&(mapType=2D||CUBE));
条件3:
(filterMode=linear)&&(mapType=3D));
(filterMode=linear_mipmap_nearest)&&(mapType=3D));
(filterMode=linear_mipmap_linear)&&(mapType=3D));
图5是纹理Cache的请求处理进程流程图。
具体实施方式
下面结合附图和具体实施例,对本发明的技术方案进行清楚、完整地表述。显然,所表述的实施例仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提所获得的所有其他实施例,都属于本发明的保护范围。
一种GPU纹理映射非阻塞率存储Cache的建模***,包括:
纹理Cache存储状态与控制单元(1)、缺失信息状态保持寄存器存储单元(MSHR)(2)、多请求合并与冲突检测单元(3)和纹理存储Cache核单元(4);
纹理Cache存储状态与控制单元(1)为纹理Cache访问缺失信息状态保持寄存器存储单元(2)提供控制与状态信息,包括Cache使能,纹理请求数据过滤模式(filterMode),映射类型(mapType),纹理地址的使能信息;
缺失信息状态保持寄存器存储单元(2),用于保存每个外部纹理映射单元发送的每个纹理请求保存一个MSHR寄存器,其中包括纹理请求的标识validBit,请求的控制标志信息warp_id和quad_id、16个纹素请求地址(u0,u1,……u15,v0,v1,……v15,w0,w1,……w15)、请求纹素返回的结果值(Data0,Data1,……Data15)以及15个小请求处理完成的对应的完成状态(Rdy0,Rdy1……Rdy15)和当前纹理请求完成使能Enable,另外缺失信息状态保持寄存器存储单元(2)从纹理Cache存储状态与控制单元(1)读取过滤模式(filterMode)填入当前纹理请求的MSHR寄存器中,缺失信息状态保持寄存器存储单元(2)内部进程不断检测当前请求的标识validBit,当该标识validBit有效时,将该纹理请求的16个纹素请求地址(u0,u1,……u15,v0,v1,……v15,w0,w1,……w15)输出给多请求合并与冲突检测单元(3);
多请求合并与冲突检测单元(3),从MSHR里获取有最多16个纹理地址,且设置合并上限m,如果16个纹理地址合并后数目小于等于m个,将16个纹理地址1次输出给纹理存储Cache核单元(4);如果16个纹理地址合并后数目大于m个,将16个纹理地址分为2次输出给纹理存储Cache核单元(4);如果16个纹理地址中至少有2个纹理地址的Bank的索引地址相同,将16个纹理地址分为2次输出给纹理存储Cache核单元(4);
纹理存储Cache核单元(4),用m个端口独立、并行处理来自多请求合并与冲突检测单元(3)的最多m个纹理地址,如果纹理地址的高位部分与纹理存储Cache核单元(4)内部cahe的bank索引地址相同时,则认为该纹理地址命中,然后将纹理地址的低位部分作为偏移地址访问纹理Cache内部DataRam内的16个纹理像素数据,并将纹理像素数据返回给多请求合并与冲突检测单元(3),多请求合并与冲突检测单元(3)在通过与缺失信息状态保持寄存器存储单元(2)之间的接口函数,将16个纹理像素数据填入缺失信息状态保持寄存器存储单元(2)的请求纹素返回的结果值(Data0,Data1,……Data15),并设置16个小请求的状态(Rdy0,Rdy1……Rdy15)和当前纹理请求完成使能Enable均为有效;如果纹理地址高位部分与纹理存储Cache核单元(4)内部cahe的bank索引地址不相同时,则认为该纹理地址缺失,则将当前纹理地址进行线程转换后,再经过纹理压缩与解压缩后访问DDR3显示存储器,并将DDR3显示存储器返回的8*8大小的纹理数据送入纹理Cache进行Block替换,并将更新的纹理像素数据返回给多请求合并与冲突检测单元(3),多请求合并与冲突检测单元(3)在通过与缺失信息状态保持寄存器存储单元(2)之间的接口函数,将16个纹理像素数据填入缺失信息状态保持寄存器存储单元(2)的请求纹素返回的结果值(Data0,Data1,……Data15),并设置16个小请求的状态(Rdy0,Rdy1……Rdy15)和当前纹理请求完成使能Enable均为有效。
实施例
下面结合附图和具体实施例对本发明的技术方案做进一步详细描述。
如图1、图2和图3所示,一种GPU纹理映射非阻塞率存储Cache的建模***,采用SystemC语言和Transaction Level Modeling(TLM,事务级建模)方法,对纹理存储Cache访问过程进行周期精确的硬件建模。纹理映射单元包括4个功能模块,这4个功能单元模型采用输入请求冲突检测及请求合并划分、多端口、多Bank、非阻塞流水的多进程方式,实现纹理访问请求数据的并行处理。
纹理映射非阻塞存储Cache单元包括纹理Cache存储状态与控制单元(1)、缺失信息状态保持寄存器存储单元(MSHR)(2)、多请求合并与冲突检测单元(3)和纹理存储Cache核单元(4);
如图2所示,纹理Cache存储状态与控制单元(1)为纹理Cache访问缺失信息状态保持寄存器存储单元(2)提供必要的控制与状态信息,包括Cache使能,纹理请求数据过滤模式(filterMode),映射类型(mapType),纹理地址的使能信息;建模设计时通过texture_cache_read_port端口访问纹理参数存储,获取如Cache使能,请求数据过滤模式(filterMode)或映射类型(mapType)等,纹理Cache存储状态与控制单元(1)的输出与缺失信息状态保持寄存器存储单元(MSHR)(2)双向连接;
缺失信息状态保持寄存器存储单元(2),如图2所示,用于保存每个外部纹理映射单元发送的每个纹理请求保存一个MSHR寄存器,其中包括纹理请求的标识(validBit),请求的控制标志信息(warp_id和quad_id)、16个纹素请求地址(u0,u1,……u15,v0,v1,……v15,w0,w1,……w15)、请求纹素返回的结果值(Data0,Data1,……Data15)以及15个小请求处理完成的对应的完成状态(Rdy0,Rdy1……Rdy15)和当前纹理请求完成使能(Enable),另外缺失信息状态保持寄存器存储单元(2)从纹理Cache存储状态与控制单元(1)读取过滤模式(filterMode)填入当前纹理请求的MSHR寄存器中,缺失信息状态保持寄存器存储单元(2)内部进程不断检测当前请求的标识(validBit),当该标识(validBit)有效时,将该纹理请求的16个纹素请求地址(u0,u1,……u15,v0,v1,……v15,w0,w1,……w15)输出给多请求合并与冲突检测单元(3);如图4所示,模型设计时采用CTHREAD类型“纹理Cache的MSHR管理进程”(Cache_Mshr_Manage_Dataout_Thread)和一个深度为8(此处深度可根据具体需求进行配置)的数组mshrData[8]实现,其中数组mshrData[8]的每一个元素均是结构体,其中包含了纹理请求的所有信息(如纹素请求坐标地址,纹理过滤类型filterMode和纹理映射类型mapType,请求的数据有效输出标示datavalid,请求有效标示EnableBit,纹素请求的结果数据等信息),“纹理Cache的MSHR管理和数据输出进程”在每个时钟上升沿不断轮训检测每一维数组元素中的请求有效标示EnableBit,如果有效则读取其中的纹理过滤类型filterMode和纹理映射类型mapType,若满足条件1,则表示mshrData[reqCnt]的请求结果通过texture_cache_return_port返回给纹理映射单元;若满足条件2,则表示mshrData[reqCnt]和mshrData[reqCnt+1]的请求结果通过texture_cache_return_port返回给纹理映射单元,若满足条件3,则表示mshrData[reqCnt]、mshrData[reqCnt+1]、mshrData[reqCnt+2和mshrData[reqCnt+3]的请求结果通过texture_cache_return_port返回给纹理映射单元,并设置CacheDataValid有效,否则设置CacheDataValid无效函数并且函数返回,缺失信息状态保持寄存器存储单元(2)的输出与多请求合并与冲突检测单元(3)的双向相连;
多请求合并与冲突检测单元(3),如图2所示,实现访问多请求地址合并及访问冲突检测,(例如:在双线性过滤模式下,从MSHR里获取有最多16个纹理地址,且这16个纹理地址往往是可以合并为9个请求,如果合并后数目大于9个,则多请求合并与冲突检测单元(3)分为2次输出给纹理存储Cache核单元(4),其中冲突是指对纹理请求的地址所指向的Cache内部Bank地址索引进行比较,如果有2个请求的Bank的地址索引相同,则认为产生Bank冲突,这种情况也需要多请求合并与冲突检测单元(3)将冲突的请求分开为2次输出给纹理存储Cache核单元(4),多请求合并与冲突检测单元(3)的输出与纹理存储Cache核单元(4)的双向相连;
纹理Cache核单元(4),用于纹理像素数据缓存,实现纹理访问请求命中或缺失,如果命中则直接向纹理映射单元返回纹理数据,如果L1Cache发生缺失,经过纹理压缩与解压缩后访问DDR3显示存储器,并将返回的A*B大小的纹理数据送入Cache进行Block替换,并将像素数据返回给纹理映射单元。如图2所示,模型设计时采用CTHREAD类型“纹理Cache请求处理进程”(tmu_cache_req_deal_thread)和9端口Cache设计,支持纹理地址访问时的合并访问,内部有16个bank,设计为流水操作,每个Clk接收一组请求,每个Block大小设置为8*8纹素,共2048bit。如图5所示,“纹理Cache请求处理进程”在每个时钟上升沿不断检测是否有Cache请求标识,如果有则判断当前的请求个数reqCnt是否超多9个请求,如果不足,则依次读取请求数组CacheReq[reqCnt]的纹素坐标请求地址,如果请求的地址高位部分与纹理存储Cache核单元(4)内部cahe的bank索引Tag地址不相同时,则认为该请求缺失,则现将当前纹素请求的地址进行线程转换后访问外部DDR存储器,经过纹理压缩与解压缩后访问DDR3显示存储器,并将返回的8*8大小的纹理数据送入Cache进行Block替换,并将新更新的纹理像素数据返回给多请求合并与冲突检测单元(3),多请求合并与冲突检测单元(3)在通过与缺失信息状态保持寄存器存储单元(2)之间的接口函数,将16个纹理像素数据填入缺失信息状态保持寄存器存储单元(2)的请求纹素返回的结果值(Data0,Data1,……Data15),并设置16个小请求的状态(Rdy0,Rdy1……Rdy15)和当前纹理请求完成使能(Enable)均为有效;纹理存储Cache核单元(4)的与外部纹理cache压缩与解压缩的双向连接。
最后应说明的是,以上事实例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (1)
1.一种GPU纹理映射非阻塞存储Cache的建模***,其特征在于,包括:
纹理Cache存储状态与控制单元(1)、缺失信息状态保持寄存器存储单元(MSHR)(2)、多请求合并与冲突检测单元(3)和纹理存储Cache核单元(4);
纹理Cache存储状态与控制单元(1)为纹理Cache访问缺失信息状态保持寄存器存储单元(2)提供控制与状态信息,包括Cache使能,纹理请求数据过滤模式(filterMode),映射类型(mapType),纹理地址的使能信息;
缺失信息状态保持寄存器存储单元(2),用于保存每个外部纹理映射单元发送的每个纹理请求保存的一个MSHR寄存器,其中包括纹理请求的标识validBit,请求的控制标志信息warp_id和quad_id、16个纹素请求地址(u0,u1,……u15,v0,v1,……v15,w0,w1,……w15)、请求纹素返回的结果值(Data0,Data1,……Data15)以及16个小请求处理完成的对应的完成状态(Rdy0,Rdy1……Rdy15)和当前纹理请求完成使能Enable,另外缺失信息状态保持寄存器存储单元(2)从纹理Cache存储状态与控制单元(1)读取过滤模式(filterMode)填入当前纹理请求的MSHR寄存器中,缺失信息状态保持寄存器存储单元(2)内部进程不断检测当前请求的标识validBit,当该标识validBit有效时,将该纹理请求的16个纹素请求地址(u0,u1,……u15,v0,v1,……v15,w0,w1,……w15)输出给多请求合并与冲突检测单元(3);
多请求合并与冲突检测单元(3),从MSHR里获取最多16个纹理地址,且设置合并上限m,如果16个纹理地址合并后数目小于等于m个,将16个纹理地址1次输出给纹理存储Cache核单元(4);如果16个纹理地址合并后数目大于m个,将16个纹理地址分为2次输出给纹理存储Cache核单元(4);如果16个纹理地址中至少有2个纹理地址的Bank的索引地址相同,将16个纹理地址分为2次输出给纹理存储Cache核单元(4);
纹理存储Cache核单元(4),用m个端口独立、并行处理来自多请求合并与冲突检测单元(3)的最多m个纹理地址,如果纹理地址的高位部分与纹理存储Cache核单元(4)内部Cache的bank索引地址相同时,则认为该纹理地址命中,然后将纹理地址的低位部分作为偏移地址访问纹理Cache内部DataRam内的16个纹理像素数据,并将纹理像素数据返回给多请求合并与冲突检测单元(3),多请求合并与冲突检测单元(3)再通过与缺失信息状态保持寄存器存储单元(2)之间的接口函数,将16个纹理像素数据填入缺失信息状态保持寄存器存储单元(2)的请求纹素返回的结果值(Data0,Data1,……Data15)中,并设置16个小请求的状态(Rdy0,Rdy1……Rdy15)和当前纹理请求完成使能Enable均为有效;如果纹理地址高位部分与纹理存储Cache核单元(4)内部Cache的bank索引地址不相同时,则认为该纹理地址缺失,则将当前纹理地址进行线程转换后,再经过纹理压缩与解压缩后访问DDR3显示存储器,并将DDR3显示存储器返回的8*8大小的纹理数据送入纹理Cache进行Block替换,并将更新的纹理像素数据返回给多请求合并与冲突检测单元(3),多请求合并与冲突检测单元(3)再通过与缺失信息状态保持寄存器存储单元(2)之间的接口函数,将16个纹理像素数据填入缺失信息状态保持寄存器存储单元(2)的请求纹素返回的结果值(Data0,Data1,……Data15)中,并设置16个小请求的状态(Rdy0,Rdy1……Rdy15)和当前纹理请求完成使能Enable均为有效。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611140141.9A CN106683158B (zh) | 2016-12-12 | 2016-12-12 | 一种GPU纹理映射非阻塞存储Cache的建模*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611140141.9A CN106683158B (zh) | 2016-12-12 | 2016-12-12 | 一种GPU纹理映射非阻塞存储Cache的建模*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106683158A CN106683158A (zh) | 2017-05-17 |
CN106683158B true CN106683158B (zh) | 2020-06-09 |
Family
ID=58868238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611140141.9A Active CN106683158B (zh) | 2016-12-12 | 2016-12-12 | 一种GPU纹理映射非阻塞存储Cache的建模*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106683158B (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108022269B (zh) * | 2017-11-24 | 2021-09-14 | 中国航空工业集团公司西安航空计算技术研究所 | 一种GPU压缩纹理存储Cache的建模*** |
CN108345763A (zh) * | 2018-04-02 | 2018-07-31 | 东南大学 | 乱序处理器Cache缺失服务时间的评估方法 |
CN109118422B (zh) * | 2018-07-10 | 2023-05-05 | 西安科技大学 | 一种嵌入式移动图形处理器的纹理Cache及处理方法 |
CN109634583B (zh) * | 2018-11-14 | 2022-07-19 | 西安翔腾微电子科技有限公司 | 一种基于SystemC和TLM模型的GPU颜色存储Cache模块的硬件及存储装置 |
CN109614086B (zh) * | 2018-11-14 | 2022-04-05 | 西安翔腾微电子科技有限公司 | 基于SystemC和TLM模型的GPU纹理缓冲区数据存储硬件及存储装置 |
CN109599135B (zh) * | 2018-11-14 | 2021-02-09 | 西安翔腾微电子科技有限公司 | Gpu帧缓冲区存储硬件、存储方法、存储***和存储介质 |
CN109711003A (zh) * | 2018-12-11 | 2019-05-03 | 中国航空工业集团公司西安航空计算技术研究所 | 一种面向gpu芯片图形管线单元功能仿真方法及平台 |
CN109753280B (zh) * | 2018-12-11 | 2022-03-15 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于SystemC的图形处理器TLM模型图像输出方法 |
CN111506521B (zh) * | 2019-01-31 | 2023-10-20 | 华为技术有限公司 | 一种存储器、数据请求写入方法及控制器 |
CN111694770B (zh) * | 2019-03-15 | 2022-12-02 | 杭州宏杉科技股份有限公司 | 一种处理io请求的方法及装置 |
CN111028130B (zh) * | 2019-11-18 | 2022-12-06 | 中国航空工业集团公司西安航空计算技术研究所 | 一种面向gpu硬件纹素取值方法的tlm微结构 |
CN110992240A (zh) * | 2019-11-18 | 2020-04-10 | 中国航空工业集团公司西安航空计算技术研究所 | 一种可编程纹理处理器*** |
CN111008515B (zh) * | 2019-11-18 | 2023-06-09 | 中国航空工业集团公司西安航空计算技术研究所 | 一种面向gpu硬件子纹理替换存储算法的tlm微结构 |
CN111062173A (zh) * | 2019-11-21 | 2020-04-24 | 中国航空工业集团公司西安航空计算技术研究所 | 一种面向gpu芯片渲染输出单元功能仿真方法及平台 |
CN111045818B (zh) * | 2019-11-21 | 2022-12-16 | 中国航空工业集团公司西安航空计算技术研究所 | 一种多端口Cache的请求预处理电路 |
CN114637609B (zh) * | 2022-05-20 | 2022-08-12 | 沐曦集成电路(上海)有限公司 | 基于冲突检测的gpu的数据获取*** |
CN114647516B (zh) * | 2022-05-20 | 2022-08-23 | 沐曦集成电路(上海)有限公司 | 基于多输入单输出的fifo结构的gpu数据处理*** |
CN116467227B (zh) * | 2023-06-19 | 2023-08-25 | 深流微智能科技(深圳)有限公司 | Tmu***和tmu***的运算优化方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105550443A (zh) * | 2015-12-11 | 2016-05-04 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于SystemC周期精确的统一染色器阵列TLM模型 |
CN105550979A (zh) * | 2015-12-11 | 2016-05-04 | 中国航空工业集团公司西安航空计算技术研究所 | 一种高数据通量纹理Cache层次结构 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9898409B2 (en) * | 2014-10-09 | 2018-02-20 | The Regents Of The University Of Michigan | Issue control for multithreaded processing |
-
2016
- 2016-12-12 CN CN201611140141.9A patent/CN106683158B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105550443A (zh) * | 2015-12-11 | 2016-05-04 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于SystemC周期精确的统一染色器阵列TLM模型 |
CN105550979A (zh) * | 2015-12-11 | 2016-05-04 | 中国航空工业集团公司西安航空计算技术研究所 | 一种高数据通量纹理Cache层次结构 |
Non-Patent Citations (1)
Title |
---|
通用图形处理器线程调度优化方法研究综述;何炎祥 等;《计算机学报》;20160930;第39卷(第9期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN106683158A (zh) | 2017-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106683158B (zh) | 一种GPU纹理映射非阻塞存储Cache的建模*** | |
US8700862B2 (en) | Compression status bit cache and backing store | |
US8341380B2 (en) | Efficient memory translator with variable size cache line coverage | |
CN103279426B (zh) | 在不同高速缓存一致性域之间共享信息的技术 | |
CN101794271B (zh) | 多核内存一致性的实现方法和装置 | |
US8327071B1 (en) | Interprocessor direct cache writes | |
US7475190B2 (en) | Direct access of cache lock set data without backing memory | |
US8595437B1 (en) | Compression status bit cache with deterministic isochronous latency | |
CN111538461B (zh) | 基于固态硬盘缓存的数据读写方法、装置及存储介质 | |
CN106484628A (zh) | 基于事务的混合存储器模块 | |
US8271734B1 (en) | Method and system for converting data formats using a shared cache coupled between clients and an external memory | |
US9569348B1 (en) | Method for automatic page table compression | |
US20140028693A1 (en) | Techniques to request stored data from a memory | |
CN105550978B (zh) | 一种面向统一染色架构的gpu 3d引擎片上存储层次结构 | |
US9087411B2 (en) | Multigrid pressure solver for fluid simulation | |
US9087561B2 (en) | Hybrid cache | |
TWI471819B (zh) | 電腦繪圖之緩衝區清除裝置與方法 | |
CN103760525A (zh) | 一种补齐式原地矩阵转置方法 | |
CN105550979A (zh) | 一种高数据通量纹理Cache层次结构 | |
CN104281545B (zh) | 一种数据读取方法及设备 | |
US20130187956A1 (en) | Method and system for reducing a polygon bounding box | |
CN109614086B (zh) | 基于SystemC和TLM模型的GPU纹理缓冲区数据存储硬件及存储装置 | |
CN102646071A (zh) | 单周期执行高速缓存写命中操作的装置及方法 | |
CN109634583B (zh) | 一种基于SystemC和TLM模型的GPU颜色存储Cache模块的硬件及存储装置 | |
US8683089B1 (en) | Method and apparatus for equalizing a bandwidth impedance mismatch between a client and an interface |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |