西安翔腾微电子科技有限公司田泽获国家专利权
买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
龙图腾网获悉西安翔腾微电子科技有限公司申请的专利一种统一染色图形处理器共享寄存器文件的分配与释放方法获国家发明授权专利权,本发明授权专利权由国家知识产权局授予,授权公告号为:CN115393156B 。
龙图腾网通过国家知识产权局官网在2026-04-21发布的发明授权授权公告中获悉:该发明授权的专利申请号/专利号为:202210999509.6,技术领域涉及:G06T1/20;该发明授权一种统一染色图形处理器共享寄存器文件的分配与释放方法是由田泽;王党辉;岳琛设计研发完成,并于2022-08-20向国家知识产权局提交的专利申请。
本一种统一染色图形处理器共享寄存器文件的分配与释放方法在说明书摘要公布了:本发明涉及一种统一染色图形处理器共享寄存器文件的分配与释放方法。本发明的方法包括以下步骤:1将物理存储单元划分成8个Bank及128个Block;2建立Block申请与释放表;3将物理存储单元的划分和Block申请与释放表整合,实现逻辑地址到物理寄存器地址的转换;4根据物理寄存器地址,以单个或多个Block为调度单位进行分配与释放。本发明解决了原本由于染色内核独享寄存器文件而导致的染色内核规模受限的问题,具有提高统一染色阵列寄存器利用率的优点。
本发明授权一种统一染色图形处理器共享寄存器文件的分配与释放方法在权利要求书中公布了:1.一种统一染色图形处理器共享寄存器文件的分配与释放方法,其特征在于:该方法包括以下步骤: 1将物理存储单元划分成8个Bank及128个Block; 1.1以4KB大小的物理存储单元为调度单位,共享寄存器文件的单个数据宽度为32bit,这个调度单位共有1K个位宽为32bit的寄存器文件; 1.2将物理存储单元划分成了8个Bank,每个Bank包含了128个位宽为32bit的物理寄存器文件; 1.3以每8个寄存器文件为1个Block,且恰好覆盖Bank0—Bank7,将整个存储单元划分为128个Block; 2建立Block申请与释放表; 2.1确定调度粒度为32,即每个Warp每次可以分配1—32个Block; 2.2为每个Warp提供一个Block申请与释放表,每一个Warp的申请与释放表均包含32个块,用于存储分配给该Warp的Block的编号及其有效信号,由于每个寄存器文件需要支持16个Warp共享,因此共有16个这样的分配与释放表; 2.3将16个Warp的Block申请与释放表组织为一个二维阵列; 3将物理存储单元的划分和Block申请与释放表整合,实现逻辑地址到物理寄存器地址的转换; 3.1将物理存储单元的划分和Block申请与释放表整合,即可得到寄存器文件的虚实地址映射关系;逻辑地址共包含12位,其中高4位为WarpID,表示该逻辑地址对应的Warp编号,范围是0—15;低3位为BankID,表示逻辑地址对应的Bank编号,范围是0—7;中间5位为BlockID,表示逻辑地址对应的存放在Block申请与释放表中的列号,范围是0—31; 3.2将WarpID和BlockID共同映射在Block申请与释放表中,二者结合可以得到唯一一个Block申请与释放表的块,这个块中存放的数据为PhysicalBlockNumber,即实际Block号,其位宽为7bit,范围是0—127,将该值作为偏移量送至物理寄存器的划分表; 3.3PhysicalBlockNumber与BankID共同映射在物理寄存器的划分表中,二者结合可以得到唯一一个物理寄存器文件编号,这个编号就是物理寄存器地址; 4根据物理寄存器地址,以单个或多个Block为调度单位进行分配与释放 所述步骤4中对寄存器文件中每一个物理寄存器块的使用情况进行统计并标记其状态,生成物理寄存器块的使用状态表,并找到在当前指令中使用结束的寄存器文件,并将其释放回收、重新分配; 所述步骤4中以4个Block为调度单位,4个Block为调度单位的使用状态表,由5个部分组成,分别是FreeBit、FreeList、分配指针ap_cnt、释放指针rp_cnt以及对应到32个位置的索引,FreeList是一个位宽为5bit,深度为32的寄存器堆,用于存储block组号,即Blockid,FreeList每一个寄存器存储的范围都是0—31,在初始状态下,FreeList每个寄存器中存入的数据与其下标相同,即0—31号寄存器依次初始化为0—31;与FreeList对应的FreeBit是一个位宽为32的寄存器,用于表示FreeList每个寄存器的分配与回收状态,其每一位对应1个FreeList的寄存器,当这一位为0时表示当前FreeList空闲,可以被分配调度,当这一位为1时表示当前FreeList已经被分配,无法继续调度,FreeBit初始状态下每一位都是0;分配指针和释放指针都是一个位宽为5bit的寄存器,用于存储FreeList当前分配Block的编号与当前释放Block组的编号,其存储范围都是0—31,释放指针永远指向当前写入的位置即释放回收的Block组在当前FreeList中的位置,分配指针永远指向下一个要读取的位置,即下一个要被分配出去Block的位置,初始状态下,两个指针都指向第0个Block;此外,由于两个指针位宽均为5bit,所以当分配指针或释放指针指向最后一个FreeList即31时,其内部存放的数据为5’b11111,此时若需要继续分配、释放Block,直接在5’b11111基础上加相应的分配、释放数量即可,由于数据溢出的原因,指针下一位会直接从5’b00000开始,不需要额外做判断或做减法;如果不使用分配与释放指针,就需要使用轮询的办法分别查找FreeBit为1和为0的位置用于Block的分配与释放,并且将使用结束的Block释放回原来的位置。
如需购买、转让、实施、许可或投资类似专利技术,可联系本专利的申请人或专利权人西安翔腾微电子科技有限公司,其通讯地址为:710054 陕西省西安市高新一路25号创新大厦S303室;或者联系龙图腾网官方客服,联系龙图腾网可拨打电话0551-65771310或微信搜索“龙图腾网”。
以上内容由龙图腾AI智能生成。
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。

皖公网安备 34010402703815号
请提出您的宝贵建议,有机会获取IP积分或其他奖励