[发明专利]一种统一染色器阵列多warp取指电路有效
申请号: | 201611139580.8 | 申请日: | 2016-12-12 |
公开(公告)号: | CN106708473B | 公开(公告)日: | 2019-05-21 |
发明(设计)人: | 魏艳艳;田泽;牛少平;任向隆;王宣明;韩一鹏 | 申请(专利权)人: | 中国航空工业集团公司西安航空计算技术研究所 |
主分类号: | G06F9/34 | 分类号: | G06F9/34 |
代理公司: | 中国航空专利中心 11008 | 代理人: | 杜永保 |
地址: | 710000 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 染色器 取指 地址计算单元 电路 集成电路技术 存储器延迟 调度单元 取指令 统一 吞吐量 外部 | ||
本发明属于集成电路技术领域,涉及一种统一染色器阵列多warp取指电路及方法。其中电路包括warp调度单元(1)、取指信息fifo(2)、外部的icache(3)及至少2个warp的pc地址计算单元(4);每个pc地址计算单元对应1个warp。本发明能够实现多个warp取指令的过程,有效的隐藏存储器延迟,以提高统一染色器阵列的吞吐量。
技术领域
本发明属于集成电路技术领域,涉及一种统一染色器阵列多warp取指电路及方法。
背景技术
统一染色器阵列完成顶点、像素的统一染色功能。在统一染色器阵列中,指令存在访存指令,后面的指令需要该访存指令访问存储器返回的结果,因存储器访问需要经过较长时间才能返回,运算部件不得不停顿等待。存储器返回结果后,后面的指令才能继续运行。
因此,这种情况下,运算部件很长一段时间处于空闲。为充分利用运算部件这段空闲的时间,采用多warp切换的方式,在该warp的这类指令之间插入多个其他warp的指令,隐藏其存储器访问延迟,以充分利用运算部件,提高统一染色器阵列的吞吐量。
发明内容
本发明的目的是提供一种统一染色器阵列多warp取指电路,从而能够实现多个warp取指令的过程,有效的隐藏存储器延迟,以提高统一染色器阵列的吞吐量。
本发明的技术解决方案是:
一种统一染色器阵列多warp指令取指电路,包括warp调度单元(1)、取指信息fifo(2)、外部的icache(3)及至少2个warp的pc地址计算单元(4);每个pc地址计算单元对应1个warp,
pc地址计算单元(4)与warp调度单元(1)连接,进行warp pc地址的计算并产生warp可调度请求,将所述warp可调度请求发送给warp调度单元(1);
warp调度单元(1)与取指信息fifo(2)及至少2个pc地址计算单元(4)连接,根据所述warp可调度请求进行多个warp的调度,选取一个warp产生对应的warp取指信息发送给取指信息fifo(2);
取指信息fifo(2)与warp调度单元(1)及外部的icache(3)连接,存储调度出的warp取指信息并产生外部的icache(3)的取指接口信号;
外部的icache(3)与取指信息fifo(2)连接,根据所述取指接口信号产生取指令。
具体的,pc地址计算单元(4)内部包含一个warp pc栈,warp pc栈用于实现函数嵌套时pc地址的保存与恢复。
具体的,pc地址计算单元(4)中warp可调度请求的产生条件如下:
5)每个warp的指令有2行的buffer缓存,该warp只要有一个空闲即可调度;
6)该warp数据准备好;
7)该warp的取指pc准备好;
a)初始的取指pc准备好是在该warp数据准备好的时刻;
b)之后的取指pc准备好是根据取回的指令进行判断,取回的指令中有跳转指令时,等该跳转指令执行完该warp取指pc即准备好;反之,取回指令后该warp取指pc就准备好。
8)该warp的指令取到后,才能进行该warp的下一次调度。
进一步的,pc地址计算单元(4)中warp pc地址计算的方法如下:
3)在warp数据准备好时,warp pc地址值的初值为某个具体的数值;
4)根据warp pc地址值取回的指令确定下一次该warp pc地址值;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国航空工业集团公司西安航空计算技术研究所,未经中国航空工业集团公司西安航空计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611139580.8/2.html,转载请声明来源钻瓜专利网。