CN106709858A - 一种统一染色图形处理器单指令多线程染色处理单元结构 - Google Patents
一种统一染色图形处理器单指令多线程染色处理单元结构 Download PDFInfo
- Publication number
- CN106709858A CN106709858A CN201611139577.6A CN201611139577A CN106709858A CN 106709858 A CN106709858 A CN 106709858A CN 201611139577 A CN201611139577 A CN 201611139577A CN 106709858 A CN106709858 A CN 106709858A
- Authority
- CN
- China
- Prior art keywords
- units
- unit
- sfu
- point
- floating
- 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.)
- Pending
Links
Classifications
-
- 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
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
本发明属于图形处理器设计领域,涉及一种统一染色架构图形处理器单指令多线程染色单元,包括:四个用于执行常规运算的SC单元(1);一个用于执行特殊功能函数的SFU单元(2);一个用于程序分支处理的BRU单元(3);五套用于数据存储的RF单元(4),一套RF单元(4)与1个SFU单元(2)对应,其余四套RF单元(4)与4个SC单元(1)一一对应;五套用于数据存储的LSRAM单元(5),一套LSRAM单元(5)与1个SFU单元(2)对应,其余四套LSRAM单元(5)与4个SC单元(1)一一对应。
Description
技术领域
本发明属于图形处理器设计领域,涉及一种统一染色架构图形处理器单指令多线程染色单元。
背景技术
图形处理器(Graphic Process Unit,GPU)是现代计算机硬件的重要组成部分,是进行图形绘制、处理和显示的关键部件,普遍存在于工作站、个人电脑、笔记本、手机以及各类需进行图形显示的***中。GPU负责产生2D和3D的图形、图像和视频,以支持基于窗口的操作***、图形用户界面、视频游戏、可视化图像应用和视频播放等可视化计算。GPU技术的发展主要经历了固定功能流水线阶段、分离染色器架构阶段、统一染色器架构阶段,其图形处理能力不断提升,应用领域也从最初的图形绘制逐步扩展到通用计算领域。GPU流水线高速、并行的特征和灵活的可编程能力,为图形处理和通用并行计算提供了良好的运行平台。
目前,我国GPU研制能力薄弱,各领域显示控制***中大量采用国外进口的商用GPU芯片。尤其是在军用领域中,国外进口商用GPU芯片存在安全性、可靠性、保障性等方面的隐患,无法满足军用环境的需求;而且,出于政治、军事、经济等原因,国外对我国实行技术“封锁”和产品“垄断”,难以获得GPU芯片的底层技术资料,如寄存器资料、详细内部微架构、核心软件源码等,导致GPU功能、性能无法充分发挥,且移植性较差;上述问题严重制约了我国显示***的独立研制和自主发展,研制具有自主知识产权的统一染色图形处理器芯片已迫在眉睫,而单指令多线程染色单元作为统一染色图形处理器中染色单元簇以及中统一染色阵列单元的关键和核心,对其设计技术进行研究和突破已刻不容缓。
发明内容
本发明的目的是:提供一种统一染色图形处理器单指令多线程染色处理单元结构,突破单指令多线程染色单元设计的关键技术。
本发明的技术解决方案是:
一种统一染色图形处理器单指令多线程染色处理单元结构,包括:
四个用于执行常规运算的SC单元(1);一个用于执行特殊功能函数的SFU单元(2);一个用于程序分支处理的BRU单元(3);五套用于数据存储的RF单元(4),一套RF单元(4)与1个SFU单元(2)对应,其余四套RF单元(4)与4个SC单元(1)一一对应;五套用于数据存储的LSRAM单元(5),一套LSRAM单元(5)与1个SFU单元(2)对应,其余四套LSRAM单元(5)与4个SC单元(1)一一对应;
所述SC单元(1)与外部FDU单元连接,用于从FDU单元获取常规运算指令的操作数;所述SFU单元(2)与外部FDU单元连接,用于从FDU单元获取特殊运算指令的操作数;所述SC单元(1)、SFU单元(2)与RF单元(4)连接,用于将SC单元(1)、SFU单元(2)的运算结果写入RF单元(4);所述SC单元(1)、SFU单元(2)与外部LSU单元连接,用于将外部LSU单元的执行结果写入RF单元(4);所述SC单元(1)与BRU单元(3)相连,用于将SC单元(1)的分支执行结果发送到BRU单元(3);所述SC单元(1)与外部CU单元相连,用于将SC单元(1)的分支跳转结果发送到CU单元;所述BRU单元(3)与外部FDU单元连接,用于从FDU获取分支指令的操作数;所述BRU单元(3)与SC单元(1)和SFU单元(2)相连,用于为SC单元(1)和SFU单元(2)的执行提供执行Mask信息;所述RF单元(4)与外部FDU单元相连,用于为FDU单元对RF单元(4)中指令的操作数进行读取;所述LSRAM单元(5)与外部RAC单元连接,用于向外部单元对LSRAM单元(5)的访问提供数据通路;所述RF单元(4)为寄存器文件;所述LSRAM单元(5)为局部存储器;
外部单元经RAC单元通过接口e将待处理数据写入LSRAM单元(5);LSU单元经RAC单元通过接口e将待处理数据读出,并通过接口b和SC单元(1)写入RF单元(4);FDU单元通过接口d将RF单元(4)中待处理数据读入,将控制信息及数据通过接口a一并发往SC单元(1)、SFU单元(2)和BRU单元(3)中的一个或两个;SC单元(1)根据BRU单元(3)送来的标示信号对待处理数据进行处理,将结果写入与之对应的RF单元(4)或BRU单元(3);SFU单元(2)根据BRU单元(3)送来的标示信号对数据进行处理,将结果写入与之对应的RF单元(4);BRU单元(3)对数据进行处理,将处理结果记录在自己内部;FDU单元通过接口d将存储在RF单元(4)中已经处理完毕的数据读出,并送给LSU单元,LSU单元将已经处理完毕的数据经RAC单元通过接口e写入LSRAM单元(5);外部单元经RAC单元通过接口e将处理完毕的数据从LSRAM单元(5)读出。
SC单元(1),包含1个用于常规浮点运算的FLE单元、1个用于常规定点运算的FIE单元和1个用于将数据写回到所述RF单元的WBU单元;外部FDU单元与FLE单元和FIE单元相连,用于向FLE单元和FIE单元提供执行指令的控制信号和所需数据,且同一周期可以向SC单元(1)下发2条不存在相关的指令;所述FLE单元和FIE单元与所述WBU单元相连,用于将常规浮点运算和常规定点运算的结果写入RF单元;外部LSU单元与所述WBU单元相连,用于将LSU单元的执行结果写入所述RF单元;所述WBU单元与权利要求1所述RF单元相连,用于将FLE单元、FIE单元和LSU单元的执行结果写入RF单元,且同一周期最多可写入3个不存在冲突的结果;其中,
FLE单元负责浮点常规运算的执行,其由FMAC、FFU、FDIV、FADD单元组成;
——FMAC单元完成浮点乘法、浮点乘累加运算:FMUL、FMAC,两者复用实现;
——FFU单元负责完成浮点操作:FINT、FMOV、FABS;
——FDIV单元完成浮点除法运算:FDIV;
——FADD单元负责完成浮点加减法运算:FADD、FSUB,还负责浮点比较设置类指令:FSETLT、FSETGT、FSETLE、FSETGE、FSETEQ、FSETNE、浮点定点转换指令FSTOI、FITOS和条件传送类指令FMOVLT、FMOVGT、FMOVLE、FMOVGE、FMOVEQ、FMOVNE的执行;
FIE单元负责定点常规运算的执行,其由MAC、ALU1、ALU2、DIV单元组成;
——MAC单元完成定点乘法、定点乘累加运算:MUL、MAC,两者复用实现;
——ALU单元完成加减法运算:ADD、ADDC、SUB、SUBC、条件比较设置类指令:MOV、SMOV、SMOVS、STM、MOVLT、MOVGT、MOVLE、MOVGE、MOVEQ、MOVNE、SLT、SGT、SLE、SGE、SEQ、SNE、逻辑及移位运算类指令:AND、ANDN、OR、ORN、XOR、XNOR、SLL、SLA、SRL、SRA的执行;
——DIV单元完成定点除法运算和取模运算:DIV、REM;
WBU单元负责SC、LSU执行结果向RF单元的写回。
SFU单元(2),由FILE单元和WBU单元组成,其中:
——FILE单元负责定点特殊功能运算:LOG、EXP、RCP、RSQ、SQRT、SIN、COS和浮点特殊功能运算:FLOG、FEXP、FRCP、FRSQ、FSQRT、FSIN、FCOS的执行,两者复用实现;
——WBU单元负责执行结果向RF单元的写回。
BRU单元(3)对数据进行处理包括:产生执行掩码Mask、掩码压栈、掩码出栈、掩码取反。
本发明的技术效果是:
1、本发明提供的染色处理单元体系架构内部包含4个用于常规计算的SC单元和1个用于特殊计算的SFU单元,能有效加速顶点和像素染色过程用到的绝大多数常规和特殊运算;
2、本发明提供的染色处理单元体系架构内部包含5个LSRAM单元,分别对应与所述的4个SC单元和1个SFU单元,能够满足顶点、像素染色输入、输出数据,以及染色过程中临时数据的存储需求;
3、使用多个染色处理单元构成染色簇,并使用多个染色簇构成同一染色阵列,能够提供强大的统一染色能力,能够实现顶点和像素的统一染色,且染色程序可编程;
4、本发明突破了染色处理单元设计,可用于国产统一染色图形处理器芯片的研制。
附图说明:
图1是SPU单元的详细框图,其中:SC-染色内核单元;SFU-特殊功能单元;BRU-分支处理单元;RF-寄存器文件;LSRAM-局部存储器。
图2是图1中SC单元的详细框图,其中:FLE-浮点执行单元;FIE-定点执行单元;WBU-写回单元;FRF-浮点寄存器文件;IRF-定点寄存器文件;FMAC-浮点乘累加单元;FFU-浮点前向单元;FDIV-浮点除法单元;FADD-浮点加法单元;MAC-定点乘累加单元;ALU-算术逻辑单元;DIV-定点除法单元。
图3是图1中SFU单元的详细框图,其中:FILE-定浮点执行单元。
具体实施方式:
下面结合附图和具体实施例,对本发明的技术方案进行清楚、完整地表述。显然,所表述的实施例仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提所获得的所有其他实施例,都属于本发明的保护范围。
一种统一染色图形处理器单指令多线程染色处理单元结构,包括:
四个用于执行常规运算的SC单元(1);一个用于执行特殊功能函数的SFU单元(2);一个用于程序分支处理的BRU单元(3);五套用于数据存储的RF单元(4),一套RF单元(4)与1个SFU单元(2)对应,其余四套RF单元(4)与4个SC单元(1)一一对应;五套用于数据存储的LSRAM单元(5),一套LSRAM单元(5)与1个SFU单元(2)对应,其余四套LSRAM单元(5)与4个SC单元(1)一一对应;
所述SC单元(1)与外部FDU单元连接,用于从FDU单元获取常规运算指令的操作数;所述SFU单元(2)与外部FDU单元连接,用于从FDU单元获取特殊运算指令的操作数;所述SC单元(1)、SFU单元(2)与RF单元(4)连接,用于将SC单元(1)、SFU单元(2)的运算结果写入RF单元(4);所述SC单元(1)、SFU单元(2)与外部LSU单元连接,用于将外部LSU单元的执行结果写入RF单元(4);所述SC单元(1)与BRU单元(3)相连,用于将SC单元(1)的分支执行结果发送到BRU单元(3);所述SC单元(1)与外部CU单元相连,用于将SC单元(1)的分支跳转结果发送到CU单元;所述BRU单元(3)与外部FDU单元连接,用于从FDU获取分支指令的操作数;所述BRU单元(3)与SC单元(1)和SFU单元(2)相连,用于为SC单元(1)和SFU单元(2)的执行提供执行Mask信息;所述RF单元(4)与外部FDU单元相连,用于为FDU单元对RF单元(4)中指令的操作数进行读取;所述LSRAM单元(5)与外部RAC单元连接,用于向外部单元对LSRAM单元(5)的访问提供数据通路;所述RF单元(4)为寄存器文件;所述LSRAM单元(5)为局部存储器;
外部单元经RAC单元通过接口e将待处理数据写入LSRAM单元(5);LSU单元经RAC单元通过接口e将待处理数据读出,并通过接口b和SC单元(1)写入RF单元(4);FDU单元通过接口d将RF单元(4)中待处理数据读入,将控制信息及数据通过接口a一并发往SC单元(1)、SFU单元(2)和BRU单元(3)中的一个或两个;SC单元(1)根据BRU单元(3)送来的标示信号对待处理数据进行处理,将结果写入与之对应的RF单元(4)或BRU单元(3);SFU单元(2)根据BRU单元(3)送来的标示信号对数据进行处理,将结果写入与之对应的RF单元(4);BRU单元(3)对数据进行处理,将处理结果记录在自己内部;FDU单元通过接口d将存储在RF单元(4)中已经处理完毕的数据读出,并送给LSU单元,LSU单元将已经处理完毕的数据经RAC单元通过接口e写入LSRAM单元(5);外部单元经RAC单元通过接口e将处理完毕的数据从LSRAM单元(5)读出。
SC单元(1),包含1个用于常规浮点运算的FLE单元、1个用于常规定点运算的FIE单元和1个用于将数据写回到所述RF单元的WBU单元;外部FDU单元与FLE单元和FIE单元相连,用于向FLE单元和FIE单元提供执行指令的控制信号和所需数据,且同一周期可以向SC单元(1)下发2条不存在相关的指令;所述FLE单元和FIE单元与所述WBU单元相连,用于将常规浮点运算和常规定点运算的结果写入RF单元;外部LSU单元与所述WBU单元相连,用于将LSU单元的执行结果写入所述RF单元;所述WBU单元与权利要求1所述RF单元相连,用于将FLE单元、FIE单元和LSU单元的执行结果写入RF单元,且同一周期最多可写入3个不存在冲突的结果;其中,
FLE单元负责浮点常规运算的执行,其由FMAC、FFU、FDIV、FADD单元组成;
——FMAC单元完成浮点乘法、浮点乘累加运算:FMUL、FMAC,两者复用实现;
——FFU单元负责完成浮点操作:FINT、FMOV、FABS;
——FDIV单元完成浮点除法运算:FDIV;
——FADD单元负责完成浮点加减法运算:FADD、FSUB,还负责浮点比较设置类指令:FSETLT、FSETGT、FSETLE、FSETGE、FSETEQ、FSETNE、浮点定点转换指令FSTOI、FITOS和条件传送类指令FMOVLT、FMOVGT、FMOVLE、FMOVGE、FMOVEQ、FMOVNE的执行;
FIE单元负责定点常规运算的执行,其由MAC、ALU1、ALU2、DIV单元组成;
——MAC单元完成定点乘法、定点乘累加运算:MUL、MAC,两者复用实现;
——ALU单元完成加减法运算:ADD、ADDC、SUB、SUBC、条件比较设置类指令:MOV、SMOV、SMOVS、STM、MOVLT、MOVGT、MOVLE、MOVGE、MOVEQ、MOVNE、SLT、SGT、SLE、SGE、SEQ、SNE、逻辑及移位运算类指令:AND、ANDN、OR、ORN、XOR、XNOR、SLL、SLA、SRL、SRA的执行;
——DIV单元完成定点除法运算和取模运算:DIV、REM;
WBU单元负责SC、LSU执行结果向RF单元的写回。
SFU单元(2),由FILE单元和WBU单元组成,其中:
——FILE单元负责定点特殊功能运算:LOG、EXP、RCP、RSQ、SQRT、SIN、COS和浮点特殊功能运算:FLOG、FEXP、FRCP、FRSQ、FSQRT、FSIN、FCOS的执行,两者复用实现;
——WBU单元负责执行结果向RF单元的写回。
BRU单元(3)对数据进行处理包括:产生执行掩码Mask、掩码压栈、掩码出栈、掩码取反。
实施例
SPU为染色簇的主要组成部分,是进行染色处理的核心执行部件,主要完成顶点染色、像素染色任务的运算以及相关数据的存储。如图1所示,该模块由以下模块组成:四个用于执行常规运算的SC单元;一个用于执行特殊功能函数的SFU单元;一个用于程序分支处理的BRU单元;五套用于数据存储的RF单元;五套用于数据存储的LSRAM单元。
下面分别详细介绍各模块的具体结构及功能:
1、4个SC单元:SC单元负责定点和浮点常规运算的执行,是进行染色运算的基础执行结构,其由FIE单元、FLE单元和WBU单元组成,如图2所示。其中:
a)FLE单元负责浮点常规运算的执行,其由FMAC、FFU、FDIV、FADD单元组成;
——FMAC单元完成浮点乘法、浮点乘累加运算(FMUL、FMAC),两者复用实现;
——FFU单元负责完成简单的浮点操作(FINT、FMOV、FABS);
——FDIV单元完成浮点除法运算(FDIV);
——FADD单元负责完成浮点加减法运算(FADD、FSUB),此外,还负责浮点比较设置类指令(FSETLT、FSETGT、FSETLE、FSETGE、FSETEQ、FSETNE)、浮点定点转换指令(FSTOI、FITOS)和条件传送类指令(FMOVLT、FMOVGT、FMOVLE、FMOVGE、FMOVEQ、FMOVNE)的执行;
b)FIE单元负责定点常规运算的执行,其由MAC、ALU1、ALU2、DIV单元组成;
——MAC单元完成定点乘法、定点乘累加运算(MUL、MAC),两者复用实现;
——ALU单元完成加减法运算(ADD、ADDC、SUB、SUBC)、条件比较设置类指令(MOV、SMOV、SMOVS、STM、MOVLT、MOVGT、MOVLE、MOVGE、MOVEQ、MOVNE、SLT、SGT、SLE、SGE、SEQ、SNE)、逻辑及移位运算类指令(AND、ANDN、OR、ORN、XOR、XNOR、SLL、SLA、SRL、SRA)的执行;
——DIV单元完成定点除法运算和取模运算(DIV、REM);
c)WBU单元负责SC、LSU执行结果向RF(包括IRF和FRF)的写回。
2、1个SFU单元:SFU单元负责定点和浮点特殊功能运算的执行,用于对染色程序中的特殊运算进行加速,其由FILE单元和WBU单元组成。其中:
——FILE单元负责定点特殊功能运算(LOG、EXP、RCP、RSQ、SQRT、SIN、COS)和浮点特殊功能运算(FLOG、FEXP、FRCP、FRSQ、FSQRT、FSIN、FCOS)的执行,两者复用实现;
——WBU单元负责执行结果向RF(包括IRF和FRF)的写回。
3、1个BRU单元:BRU单元根据条件分支指令的结果产生执行Mask,以对SPU内部4个SC和1个SFU进行控制;此外,还包括断言Mask栈、断言寄存器的实现。
4、5个RF单元:分别用于存放4个SC、1个SFU计算过程中的定点和浮点数据。每个RF单元均由IRF和FRF组成,其中IRF为定点寄存器文件,FRF为浮点寄存器文件。考虑到指令的双发射需求及寄存器文件的实现代价:与SC对应的IRF、FRF均为4个读端口,2个写端口;与SFU对应的IRF为2个读端口,1个写端口;与SFU对应的FRF为1个读端口,1个写端口。每个RF均具有32个不同的现场,用于支持8个warp且每个warp 4个周期的执行。
5、5个LSRAM单元:用于存放染色程序所需的输入数据、染色过程中的中间数据和染色完成的结果数据。与RF类似,每个LSRAM也具有32个不同的现场。
最后应说明的是,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (4)
1.一种统一染色图形处理器单指令多线程染色处理单元结构,其特征在于,包括:
四个用于执行常规运算的SC单元(1);一个用于执行特殊功能函数的SFU单元(2);一个用于程序分支处理的BRU单元(3);五套用于数据存储的RF单元(4),一套RF单元(4)与1个SFU单元(2)对应,其余四套RF单元(4)与4个SC单元(1)一一对应;五套用于数据存储的LSRAM单元(5),一套LSRAM单元(5)与1个SFU单元(2)对应,其余四套LSRAM单元(5)与4个SC单元(1)一一对应;
所述SC单元(1)与外部FDU单元连接,用于从FDU单元获取常规运算指令的操作数;所述SFU单元(2)与外部FDU单元连接,用于从FDU单元获取特殊运算指令的操作数;所述SC单元(1)、SFU单元(2)与RF单元(4)连接,用于将SC单元(1)、SFU单元(2)的运算结果写入RF单元(4);所述SC单元(1)、SFU单元(2)与外部LSU单元连接,用于将外部LSU单元的执行结果写入RF单元(4);所述SC单元(1)与BRU单元(3)相连,用于将SC单元(1)的分支执行结果发送到BRU单元(3);所述SC单元(1)与外部CU单元相连,用于将SC单元(1)的分支跳转结果发送到CU单元;所述BRU单元(3)与外部FDU单元连接,用于从FDU获取分支指令的操作数;所述BRU单元(3)与SC单元(1)和SFU单元(2)相连,用于为SC单元(1)和SFU单元(2)的执行提供执行Mask信息;所述RF单元(4)与外部FDU单元相连,用于为FDU单元对RF单元(4)中指令的操作数进行读取;所述LSRAM单元(5)与外部RAC单元连接,用于向外部单元对LSRAM单元(5)的访问提供数据通路;所述RF单元(4)为寄存器文件;所述LSRAM单元(5)为局部存储器;
外部单元经RAC单元通过接口e将待处理数据写入LSRAM单元(5);LSU单元经RAC单元通过接口e将待处理数据读出,并通过接口b和SC单元(1)写入RF单元(4);FDU单元通过接口d将RF单元(4)中待处理数据读入,将控制信息及数据通过接口a一并发往SC单元(1)、SFU单元(2)和BRU单元(3)中的一个或两个;SC单元(1)根据BRU单元(3)送来的标示信号对待处理数据进行处理,将结果写入与之对应的RF单元(4)或BRU单元(3);SFU单元(2)根据BRU单元(3)送来的标示信号对数据进行处理,将结果写入与之对应的RF单元(4);BRU单元(3)对数据进行处理,将处理结果记录在自己内部;FDU单元通过接口d将存储在RF单元(4)中已经处理完毕的数据读出,并送给LSU单元,LSU单元将已经处理完毕的数据经RAC单元通过接口e写入LSRAM单元(5);外部单元经RAC单元通过接口e将处理完毕的数据从LSRAM单元(5)读出。
2.如权利要求1所述的一种统一染色图形处理器单指令多线程染色处理单元结构,其特征在于,
SC单元(1),包含1个用于常规浮点运算的FLE单元、1个用于常规定点运算的FIE单元和1个用于将数据写回到所述RF单元的WBU单元;外部FDU单元与FLE单元和FIE单元相连,用于向FLE单元和FIE单元提供执行指令的控制信号和所需数据,且同一周期可以向SC单元(1)下发2条不存在相关的指令;所述FLE单元和FIE单元与所述WBU单元相连,用于将常规浮点运算和常规定点运算的结果写入RF单元;外部LSU单元与所述WBU单元相连,用于将LSU单元的执行结果写入所述RF单元;所述WBU单元与权利要求1所述RF单元相连,用于将FLE单元、FIE单元和LSU单元的执行结果写入RF单元,且同一周期最多可写入3个不存在冲突的结果;其中,
FLE单元负责浮点常规运算的执行,其由FMAC、FFU、FDIV、FADD单元组成;
——FMAC单元完成浮点乘法、浮点乘累加运算:FMUL、FMAC,两者复用实现;
——FFU单元负责完成浮点操作:FINT、FMOV、FABS;
——FDIV单元完成浮点除法运算:FDIV;
——FADD单元负责完成浮点加减法运算:FADD、FSUB,还负责浮点比较设置类指令:FSETLT、FSETGT、FSETLE、FSETGE、FSETEQ、FSETNE、浮点定点转换指令FSTOI、FITOS和条件传送类指令FMOVLT、FMOVGT、FMOVLE、FMOVGE、FMOVEQ、FMOVNE的执行;
FIE单元负责定点常规运算的执行,其由MAC、ALU1、ALU2、DIV单元组成;
——MAC单元完成定点乘法、定点乘累加运算:MUL、MAC,两者复用实现;
——ALU单元完成加减法运算:ADD、ADDC、SUB、SUBC、条件比较设置类指令:MOV、SMOV、SMOVS、STM、MOVLT、MOVGT、MOVLE、MOVGE、MOVEQ、MOVNE、SLT、SGT、SLE、SGE、SEQ、SNE、逻辑及移位运算类指令:AND、ANDN、OR、ORN、XOR、XNOR、SLL、SLA、SRL、SRA的执行;
——DIV单元完成定点除法运算和取模运算:DIV、REM;
WBU单元负责SC、LSU执行结果向RF单元的写回。
3.如权利要求1所述的一种统一染色图形处理器单指令多线程染色处理单元结构,其特征在于,
SFU单元(2),由FILE单元和WBU单元组成,其中:
——FILE单元负责定点特殊功能运算:LOG、EXP、RCP、RSQ、SQRT、SIN、COS和浮点特殊功能运算:FLOG、FEXP、FRCP、FRSQ、FSQRT、FSIN、FCOS的执行,两者复用实现;
——WBU单元负责执行结果向RF单元的写回。
4.如权利要求1所述的一种统一染色图形处理器单指令多线程染色处理单元结构,其特征在于,
BRU单元(3)对数据进行处理包括:产生执行掩码Mask、掩码压栈、掩码出栈、掩码取反。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611139577.6A CN106709858A (zh) | 2016-12-12 | 2016-12-12 | 一种统一染色图形处理器单指令多线程染色处理单元结构 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611139577.6A CN106709858A (zh) | 2016-12-12 | 2016-12-12 | 一种统一染色图形处理器单指令多线程染色处理单元结构 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106709858A true CN106709858A (zh) | 2017-05-24 |
Family
ID=58937081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611139577.6A Pending CN106709858A (zh) | 2016-12-12 | 2016-12-12 | 一种统一染色图形处理器单指令多线程染色处理单元结构 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106709858A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108022202A (zh) * | 2017-11-24 | 2018-05-11 | 中国航空工业集团公司西安航空计算技术研究所 | 一种超前消隐几何引擎结构 |
CN108255743A (zh) * | 2017-12-06 | 2018-07-06 | 中国航空工业集团公司西安航空计算技术研究所 | 一种用于在染色内核中写回仲裁电路 |
CN112581351A (zh) * | 2020-12-05 | 2021-03-30 | 西安翔腾微电子科技有限公司 | 一种双发射simt染色处理单元写回单元结构及写回通路冲突检测方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105335127A (zh) * | 2015-10-29 | 2016-02-17 | 中国人民解放军国防科学技术大学 | Gpdsp中支持浮点除法的标量运算单元结构 |
CN105513003A (zh) * | 2015-12-11 | 2016-04-20 | 中国航空工业集团公司西安航空计算技术研究所 | 一种图形处理器统一染色器阵列体系结构 |
US20160162290A1 (en) * | 2013-04-19 | 2016-06-09 | Institute Of Automation, Chinese Academy Of Sciences | Processor with Polymorphic Instruction Set Architecture |
-
2016
- 2016-12-12 CN CN201611139577.6A patent/CN106709858A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160162290A1 (en) * | 2013-04-19 | 2016-06-09 | Institute Of Automation, Chinese Academy Of Sciences | Processor with Polymorphic Instruction Set Architecture |
CN105335127A (zh) * | 2015-10-29 | 2016-02-17 | 中国人民解放军国防科学技术大学 | Gpdsp中支持浮点除法的标量运算单元结构 |
CN105513003A (zh) * | 2015-12-11 | 2016-04-20 | 中国航空工业集团公司西安航空计算技术研究所 | 一种图形处理器统一染色器阵列体系结构 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108022202A (zh) * | 2017-11-24 | 2018-05-11 | 中国航空工业集团公司西安航空计算技术研究所 | 一种超前消隐几何引擎结构 |
CN108022202B (zh) * | 2017-11-24 | 2021-03-26 | 中国航空工业集团公司西安航空计算技术研究所 | 一种超前消隐几何引擎结构 |
CN108255743A (zh) * | 2017-12-06 | 2018-07-06 | 中国航空工业集团公司西安航空计算技术研究所 | 一种用于在染色内核中写回仲裁电路 |
CN112581351A (zh) * | 2020-12-05 | 2021-03-30 | 西安翔腾微电子科技有限公司 | 一种双发射simt染色处理单元写回单元结构及写回通路冲突检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105513003B (zh) | 一种图形处理器统一染色器阵列体系结构 | |
CN103793203B (zh) | 响应于输入数据值降低fma单元中的功率消耗 | |
AU624524B2 (en) | Simplified synchronous mesh processor | |
US20180336036A1 (en) | Parallel slice processor having a recirculating load-store queue for fast deallocation of issue queue entries | |
Skillicorn | A taxonomy for computer architectures | |
US7783860B2 (en) | Load misaligned vector with permute and mask insert | |
CN105247475B (zh) | 紧缩数据元素断定处理器、方法、***和指令 | |
US6374346B1 (en) | Processor with conditional execution of every instruction | |
CN108351830A (zh) | 用于存储器损坏检测的硬件装置和方法 | |
CN106709858A (zh) | 一种统一染色图形处理器单指令多线程染色处理单元结构 | |
CN102750133A (zh) | 支持simd的32位三发射的数字信号处理器 | |
US5426743A (en) | 3-1 Arithmetic logic unit for simultaneous execution of an independent or dependent add/logic instruction pair | |
CN106709860A (zh) | 一种gpu统一染色处理阵列的调试结构 | |
CN112580792B (zh) | 一种神经网络多核张量处理器 | |
CN107810486A (zh) | 锁定用于原子地执行的指令组的操作数的值 | |
CN114035916A (zh) | 计算图的编译、调度方法及相关产品 | |
Iseli et al. | Spyder: a SURE (SUperscalar and REconfigurable) processor | |
Stepchenkov et al. | Recurrent data-flow architecture: features and realization problems | |
CN106651742A (zh) | 一种统一染色架构图形处理器单指令多线程染色簇结构 | |
CN109087381A (zh) | 一种基于双发射vliw的统一架构渲染着色器 | |
Lipovski et al. | Special Feature: Developments and Directions in Computer Architecture | |
Kaufman | Rendering, visualization and rasterization hardware | |
Ino et al. | Performance study of LU decomposition on the programmable GPU | |
CN206470741U (zh) | 一种基于分布式功能单元的微处理器架构 | |
US20110213948A1 (en) | Efficient Processor Apparatus and Associated Methods |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170524 |