CN106651742B - 一种统一染色架构图形处理器单指令多线程染色簇*** - Google Patents
一种统一染色架构图形处理器单指令多线程染色簇*** Download PDFInfo
- Publication number
- CN106651742B CN106651742B CN201611139607.3A CN201611139607A CN106651742B CN 106651742 B CN106651742 B CN 106651742B CN 201611139607 A CN201611139607 A CN 201611139607A CN 106651742 B CN106651742 B CN 106651742B
- Authority
- CN
- China
- Prior art keywords
- unit
- spu
- dyeing
- processing unit
- information
- 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
- 238000004043 dyeing Methods 0.000 title claims abstract description 112
- 238000012545 processing Methods 0.000 claims abstract description 96
- 238000000034 method Methods 0.000 claims description 10
- 238000009877 rendering Methods 0.000 claims description 8
- 238000004040 coloring Methods 0.000 claims description 4
- 238000013461 design Methods 0.000 abstract description 5
- 238000010186 staining Methods 0.000 description 7
- 238000011161 development Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000000903 blocking effect Effects 0.000 description 3
- 241001510071 Pyrrhocoridae Species 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3887—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Image Generation (AREA)
Abstract
本发明属于图形处理器设计领域,涉及一种统一染色架构图形处理器单指令多线程染色簇***,包括:用于对SSC进行控制和调度的CU控制单元(3);用于对指令进行取指译码的FDU取指译码单元(2);用于加速指令存取速度的I$单元(4);若干用于执行染色程序的SPU染色处理单元(1);用于在SPU间共享数据的SSRAM单元(8);用于对内部存储器访问进行译码和仲裁控制的RAC单元(7);用于在SSRAM单元(8)、SPU染色处理单元(1)内部存储器和RF单元之间进行数据交换的LSU加载存储单元(6);用于加速常量存取的C$单元(5);本发明实现了单指令多线程的处理方式。
Description
技术领域
本发明属于图形处理器设计领域,涉及一种统一染色架构图形处理器单指令多线程染色簇***。
背景技术
图形处理器(Graphic Process Unit,GPU)是现代计算机硬件的重要组成部分,是进行图形绘制、处理和显示的关键部件,普遍存在于工作站、个人电脑、笔记本、手机以及各类需进行图形显示的***中。GPU负责产生2D和3D的图形、图像和视频,以支持基于窗口的操作***、图形用户界面、视频游戏、可视化图像应用和视频播放等可视化计算。GPU技术的发展主要经历了固定功能流水线阶段、分离染色器架构阶段、统一染色器架构阶段,其图形处理能力不断提升,应用领域也从最初的图形绘制逐步扩展到通用计算领域。GPU流水线高速、并行的特征和灵活的可编程能力,为图形处理和通用并行计算提供了良好的运行平台。
目前,我国GPU研制能力薄弱,各领域显示控制***中大量采用国外进口的商用GPU芯片。尤其是在军用领域中,国外进口商用GPU芯片存在安全性、可靠性、保障性等方面的隐患,无法满足军用环境的需求;而且,出于政治、军事、经济等原因,国外对我国实行技术“封锁”和产品“垄断”,难以获得GPU芯片的底层技术资料,如寄存器资料、详细内部微架构、核心软件源码等,导致GPU功能、性能无法充分发挥,且移植性较差;上述问题严重制约了我国显示***的独立研制和自主发展,研制具有自主知识产权的统一染色图形处理器芯片已迫在眉睫,而单指令多线程染色簇作为统一染色图形处理器中统一染色阵列单元的关键和核心,对其设计技术进行研究和突破已刻不容缓。
发明内容
本发明的目的是:提供一种统一染色架构图形处理器单指令多线程染色簇***,突破单指令多线程染色簇设计的关键技术。
本发明的技术解决方案是:
一种统一染色架构图形处理器单指令多线程染色簇***,包括:用于对SSC(simt染色处理单元簇)进行控制和调度的CU控制单元(3);用于对指令进行取指译码的FDU取指译码单元(2);用于加速指令存取速度的I$单元(4);若干用于执行染色程序的SPU染色处理单元(1);用于在SPU间共享数据的SSRAM单元(8);用于对内部存储器访问进行译码和仲裁控制的RAC单元(7);用于在SSRAM单元(8)、SPU染色处理单元(1)内部存储器和RF单元之间进行数据交换的LSU加载存储单元(6);用于加速常量存取的C$单元(5);
所述CU控制单元(3)具有与SSC单元外部的输入接口,用于从外部接收控制信息;所述CU控制单元(3)具有与SSC单元外部的输出接口,用于向外部输出状态信息;所述I$单元(4)具有与SSC单元外部的输入接口,用于从外部接收染色指令;所述C$单元(5)具有与SSC单元外部的输入接口,用于从外部接收染色所需常量参数;所述RAC单元(7)具有与SSC单元外部的输入、输出接口,分别用于从外部接收染色程序需要加工的输入数据,及向外部输出染色程序对输入数据加工后的输出结果;
所述的CU控制单元(3)与FDU取指译码单元(2)相连,用于和FDU取指译码单元(2)交互控制和状态信息,并告知FDU发射哪个warp的控制信号和数据到SPU上执行;所述SPU染色处理单元(1)与所述CU控制单元(3)相连,用于将SPU染色处理单元(1)的分支跳转结果发送到CU控制单元(3);所述I$单元(4)与FDU取指译码单元(2)连接,用于向FDU取指译码单元(2)提供染色指令;所述SPU染色处理单元(1)与FDU取指译码单元(2)连接,用于FDU取指译码单元(2)读取SPU染色处理单元(1)内部的寄存器文件;所述FDU取指译码单元(2)与SPU染色处理单元(1)、所述LSU加载存储单元(6)相连,用于向SPU染色处理单元(1)、LSU加载存储单元(6)提供指令译码后的控制信号和所需的源操作数;
所述SSRAM单元(8)与RAC相连,用于为LSU加载存储单元(6)和SSC单元外部对SSRAM单元(8)的访问提供数据通路;所述SPU染色处理单元(1)与RAC相连,用于为LSU加载存储单元(6)和SSC单元外部对SPU染色处理单元(1)内部的存储器访问提供数据通路;所述LSU加载存储单元(6)和所述RAC单元(7)相连,用于为LSU加载存储单元(6)通过RAC单元(7)对SSRAM单元(8)和SPU染色处理单元(1)内部存储器的访问提供数据通路;所述LSU加载存储单元(6)和SPU染色处理单元(1)相连,用于为LSU加载存储单元(6)的执行结果写入SPU染色处理单元(1)提供数据通路;所述C$单元(5)与LSU加载存储单元(6)连接,用于为LSU加载存储单元(6)对C$单元(5)的访问提供数据通路。
所述统一染色架构图形处理器单指令多线程染色簇***的工作流程为:
1)外部模块将待加工数据通过接口c,经RAC单元(7)写入SPU染色处理单元(1);
2)外部模块将控制信息通过接口d,写入CU控制单元;
3)CU控制单元(3)检测到控制信息后,通知FDU取指译码单元(2)经I$单元(4)取回指令,译码后从SPU染色处理单元(1)取回数据,且:
c.如果是定点或浮点操作,则将控制信息和数据发往SPU染色处理单元(1)进行运算,并将结果存入SPU染色处理单元(1)的内部寄存器文件;
d.如果是加载或存储操作,则将控制信息和数据发往LSU加载存储单元(6)进行运算:
vii.如果是局部加载,则LSU加载存储单元(6)依据控制信息和输入数据从SPU染色处理单元(1)的局部存储器加载信息,并将该信息写入SPU染色处理单元(1)的内部寄存器文件;
viii.如果是共享加载,则LSU加载存储单元(6)依据控制信息和输入数据从SSRAM单元(8)中加载信息,并将该信息写入SPU染色处理单元(1)的内部寄存器文件;
ix.如果是纹理加载,则LSU加载存储单元(6)依据控制信息和输入数据通过RAC单元(7)和接口c从外部加载信息,并将该信息写入SPU染色处理单元(1)的内部寄存器文件;
x.如果是常量加载,则LSU加载存储单元(6)依据控制信息和输入数据从C$单元(5)加载信息,并将该信息写入SPU染色处理单元(1)的内部寄存器文件;
xi.如果是局部存储,则LSU加载存储单元(6)依据控制信息和输入数据将SPU染色处理单元(1)内部寄存器文件中的信息存入SPU染色处理单元(1)内部的局部存储器;
xii.如果是共享存储,则LSU加载存储单元(6)依据控制信息和输入数据将SPU染色处理单元(1)内部寄存器中的信息通过RAC单元(7)存入SSRAM单元(8);
4)程序执行完毕后,CU控制单元产生完成信息,并通过接口d向外部报告所述完成信息;
5)外部模块检测到所述完成信息后通过接口c经RAC单元(7)将加工完成的数据从SPU染色处理单元(1)的局部存储器搬出。
本发明的技术效果是:
1、本发明提供的单指令多线程染色簇体系架构可在若干条指令控制下,对多个顶点或像素数据进行处理,实现了单指令多线程的处理方式;
2、单指令多线程染色簇内部集成了多个SPU染色处理单元(1),提供强大的计算能力;
3、使用1个或多个单指令多线程染色簇构成统一染色阵列,能够提供强大的统一染色能力,能够实现顶点和像素的统一染色,且染色程序可编程;
4、本发明突破了单指令多线程染色簇设计,可用于国产统一染色图形处理器芯片的研制。
附图说明:
图1是本发明一种统一架构图形处理器单指令多线程染色簇的整体结构框图,其中:CU-控制单元;FDU-取指译码单元;I$-指令高速缓存;SPU-染色处理单元;SSRAM-共享存储器;RAC-RAM访问控制;LSU-加载存储单元;C$-常量高速缓存。
图2是图1中FDU取指译码单元(2)和CU控制单元(3)的详细框图,其中:CSR-控制和状态寄存器。
图3是图1中RAC单元(7)的详细框图。
图4是图1中LSU加载存储单元(6)的详细框图,其中:AGU-地址产生单元;ADL-地址数据锁存单元;LSSA-局部&共享存储器访问单元;LSA-局部存储器访问单元;SSA-共享存储器访问单元;CCA-常量cache访问单元;TUA-纹理访问单元。
具体实施方式:
下面结合附图和具体实施例,对本发明的技术方案进行清楚、完整地表述。显然,所表述的实施例仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提所获得的所有其他实施例,都属于本发明的保护范围。
一种统一染色架构图形处理器单指令多线程染色簇***,包括:用于对SSC进行控制和调度的CU控制单元(3);用于对指令进行取指译码的FDU取指译码单元(2);用于加速指令存取速度的I$单元(4);若干用于执行染色程序的SPU染色处理单元(1);用于在SPU间共享数据的SSRAM单元(8);用于对内部存储器访问进行译码和仲裁控制的RAC单元(7);用于在SSRAM单元(8)、SPU染色处理单元(1)内部存储器和RF单元之间进行数据交换的LSU加载存储单元(6);用于加速常量存取的C$单元(5);
所述CU控制单元(3)具有与SSC单元外部的输入接口,用于从外部接收控制信息;所述CU控制单元(3)具有与SSC单元外部的输出接口,用于向外部输出状态信息;所述I$单元(4)具有与SSC单元外部的输入接口,用于从外部接收染色指令;所述C$单元(5)具有与SSC单元外部的输入接口,用于从外部接收染色所需常量参数;所述RAC单元(7)具有与SSC单元外部的输入、输出接口,分别用于从外部接收染色程序需要加工的输入数据,及向外部输出染色程序对输入数据加工后的输出结果;
所述的CU控制单元(3)与FDU取指译码单元(2)相连,用于和FDU取指译码单元(2)交互控制和状态信息,并告知FDU发射哪个warp的控制信号和数据到SPU上执行;所述SPU染色处理单元(1)与所述CU控制单元(3)相连,用于将SPU染色处理单元(1)的分支跳转结果发送到CU控制单元(3);所述I$单元(4)与FDU取指译码单元(2)连接,用于向FDU取指译码单元(2)提供染色指令;所述SPU染色处理单元(1)与FDU取指译码单元(2)连接,用于FDU取指译码单元(2)读取SPU染色处理单元(1)内部的寄存器文件;所述FDU取指译码单元(2)与SPU染色处理单元(1)、所述LSU加载存储单元(6)相连,用于向SPU染色处理单元(1)、LSU加载存储单元(6)提供指令译码后的控制信号和所需的源操作数;
所述SSRAM单元(8)与RAC相连,用于为LSU加载存储单元(6)和SSC单元外部对SSRAM单元(8)的访问提供数据通路;所述SPU染色处理单元(1)与RAC相连,用于为LSU加载存储单元(6)和SSC单元外部对SPU染色处理单元(1)内部的存储器访问提供数据通路;所述LSU加载存储单元(6)和所述RAC单元(7)相连,用于为LSU加载存储单元(6)通过RAC单元(7)对SSRAM单元(8)和SPU染色处理单元(1)内部存储器的访问提供数据通路;所述LSU加载存储单元(6)和SPU染色处理单元(1)相连,用于为LSU加载存储单元(6)的执行结果写入SPU染色处理单元(1)提供数据通路;所述C$单元(5)与LSU加载存储单元(6)连接,用于为LSU加载存储单元(6)对C$单元(5)的访问提供数据通路。
所述统一染色架构图形处理器单指令多线程染色簇***的工作流程为:
1.外部模块将待加工数据通过接口c,经RAC单元(7)写入SPU染色处理单元(1);
2.外部模块将控制信息通过接口d,写入CU控制单元;
3.CU控制单元(3)检测到控制信息后,通知FDU取指译码单元(2)经I$单元(4)取回指令,译码后从SPU染色处理单元(1)取回数据,且:
e.如果是定点或浮点操作,则将控制信息和数据发往SPU染色处理单元(1)进行运算,并将结果存入SPU染色处理单元(1)的内部寄存器文件;
f.如果是加载或存储操作,则将控制信息和数据发往LSU加载存储单元(6)进行运算:
xiii.如果是局部加载,则LSU加载存储单元(6)依据控制信息和输入数据从SPU染色处理单元(1)的局部存储器加载信息,并将该信息写入SPU染色处理单元(1)的内部寄存器文件;
xiv.如果是共享加载,则LSU加载存储单元(6)依据控制信息和输入数据从SSRAM单元(8)中加载信息,并将该信息写入SPU染色处理单元(1)的内部寄存器文件;
xv.如果是纹理加载,则LSU加载存储单元(6)依据控制信息和输入数据通过RAC单元(7)和接口c从外部加载信息,并将该信息写入SPU染色处理单元(1)的内部寄存器文件;
xvi.如果是常量加载,则LSU加载存储单元(6)依据控制信息和输入数据从C$单元(5)加载信息,并将该信息写入SPU染色处理单元(1)的内部寄存器文件;
xvii.如果是局部存储,则LSU加载存储单元(6)依据控制信息和输入数据将SPU染色处理单元(1)内部寄存器文件中的信息存入SPU染色处理单元(1)内部的局部存储器;
xviii.如果是共享存储,则LSU加载存储单元(6)依据控制信息和输入数据将SPU染色处理单元(1)内部寄存器中的信息通过RAC单元(7)存入SSRAM单元(8);
4.程序执行完毕后,CU控制单元产生完成信息,并通过接口d向外部报告所述完成信息;
5.外部模块检测到所述完成信息后通过接口c经RAC单元(7)将加工完成的数据从SPU染色处理单元(1)的局部存储器搬出。
实施例
SSC为统一染色阵列的主要组成部分,是进行顶点、像素染色的主要功能部件,是warp执行的硬件载体。Warp是由待处理数据、对数据进行加工的程序,以及加工后产生的结果数据组成的集合。多个warp可在同一SSC硬件上互不干扰地分时执行,不同warp需要有不同的现场记录相关信息,即warp需要由相应的硬件支持。SSC上:warp待处理数据由需要进行相同处理(顶点染色或像素染色)的16个顶点或像素组成;对数据进行加工的程序包括两大类,即顶点染色程序和像素染色程序;加工后产生的结果数据包括顶点染色的输出和像素染色的输出。1个SSC支持8warp,SSC每周期可从8warp中选择一个,采用双发射技术发射2条32位指令。其中,每条32位指令均执行4个周期,每周期可控制4个SPU并行对不同数据进行处理,可同时处理16个顶点/像素任务,4个周期共64线程,此处即单指令多线程技术。
如图1所示,SSC单元采用单指令多线程技术,使用单条32位标量指令控制4个SPU的执行,并由以下子模块构成:用于对SSC进行控制和调度的CU控制单元(3);用于对指令进行取指译码的FDU取指译码单元(2);用于加速指令存取速度的I$单元(4);4个用于执行染色程序的SPU染色处理单元(1);用于在SPU间共享数据的SSRAM单元(8);用于对内部存储器访问进行译码和仲裁控制的RAC单元(7);用于在SSRAM、SPU染色处理单元(1)内部存储器和RF单元之间进行数据交换的LSU加载存储单元(6);用于加速常量存取的C$单元(5)。
下面分别详细介绍各模块的具体结构及功能:
1、CU控制单元(3):CU控制单元(3)主要负责控制状态寄存器、Warp调度的实现和条件分支分歧的判定。如图2所示,CU控制单元(3)由CSR单元、分歧判定单元和warp调度器单元组成。其中:CSR单元是SSC单元和外部进行控制和状态交互的接口;分歧判定单元负责多个线程条件分支的分歧判定,即对条件跳转指令在各线程上的执行结果是否存在分歧进行判定,以便更新该warp对应PC;Warp调度器单元实现Warp调度功能,即从SSC上具备执行条件的多个warp中选出一个,在SSC执行,该warp的双发射的2条指令执行4个周期后,调度下一个具备执行条件warp的指令执行4个周期。
2、FDU取指译码单元(2):FDU取指译码单元(2)主要负责取指、译码功能。由于SSC采用双发射结构,FDU取指译码单元(2)还包括同时发射的两条指令的拆分和拼接,此外,译码级包括计分板,故FDU取指译码单元(2)还负责数据相关、结构相关的检测。如图2所示,FDU取指译码单元(2)由取指单元、Buffer单元、预译码单元、IBuffer单元、计分板单元和译码单元组成。其中:取指单元负责依据CU控制单元(3)中的CSR信息向I$发出指令的地址,并负责依据CU控制单元(3)中分歧判定的结果对warp PC进行维护;Buffer单元用于缓存从I$单元(4)取出的指令;预译码单元用于对双发射的两条指令之间的数据相关、结构相关进行化解,化解方法为拆分并***空操作指令;IBuffer单元用于存储经过预译码单元处理的指令,并负责从CU控制单元(3)接收warp调度信息,根据调度信息向译码单元发出待译码的指令;计分板单元用于对待发射指令和正在执行的指令之间的数据相关、结构相关进行预先检测,并向CU控制单元(3)中的warp调度其提供进行warp调度所需信息;译码单元对IBuffer单元发出的获得执行资格的warp的指令进行译码。
3、I$单元(4):I$单元(4)为指令Cache,用于提高取指效率,同时减少对DDR中染色程序存储区的访问,I$提供非阻塞支持。I$单元(4)具有单个现场。
4、SSRAM单元(8):SSRAM单元(8)负责SSC内部各SPU间的数据共享。SSRAM单元(8)具有32个不同的现场。
5、RAC单元(7):RAC单元(7)主要负责对SSRAM和SPU内部的存储器访问进行仲裁和数据交换,同时根据访问单元的不同对通路宽度进行匹配。RAC单元(7)的内部结构如图3所示。
6、LSU加载存储单元(6):LSU加载存储单元(6)负责SSC中Load指令、Store指令及纹理访问指令的执行。如图4所示,该单元由AGU单元、ADL单元、Crossbar单元、LSSA单元、CCA单元和TUA单元组成。其中:AGU单元负责地址的产生(计算);ADL单元负责地址和数据的锁存,其具有32个现场;Crossbar单元负责32个现场到LSU加载存储单元(6)中3类处理资源(LSSA单元、CCA单元和TUA单元)的数据交换;LSSA单元负责LSRAM单元、SSRAM单元(8)资源的访问;CCA单元负责C$单元(5)的访问;TUA单元负责纹理阵列单元的访问。
7、C$单元(5):C$单元(5)为常量Cache,用于缓存染色过程中所需的参数,提高参数访问速度,C$提供非阻塞支持。C$单元(5)具有单个现场。
最后应说明的是,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (2)
1.一种统一染色架构图形处理器单指令多线程染色簇***,其特征在于,包括:用于对warp执行的硬件载体SSC进行控制和调度的CU控制单元(3);用于对指令进行取指译码的FDU取指译码单元(2);用于加速指令存取速度的I$单元(4);若干用于执行染色程序的SPU染色处理单元(1);用于在SPU间共享数据的SSRAM单元(8);用于对内部存储器访问进行译码和仲裁控制的RAC单元(7);用于在SSRAM单元(8)、SPU染色处理单元(1)内部存储器和RF单元之间进行数据交换的LSU加载存储单元(6);用于加速常量存取的C$单元(5);
所述CU控制单元(3)具有与SSC单元外部的输入接口,用于从外部接收控制信息;所述CU控制单元(3)具有与SSC单元外部的输出接口,用于向外部输出状态信息;所述I$单元(4)具有与SSC单元外部的输入接口,用于从外部接收染色指令;所述C$单元(5)具有与SSC单元外部的输入接口,用于从外部接收染色所需常量参数;所述RAC单元(7)具有与SSC单元外部的输入、输出接口,分别用于从外部接收染色程序需要加工的输入数据,及向外部输出染色程序对输入数据加工后的输出结果;
所述的CU控制单元(3)与FDU取指译码单元(2)相连,用于和FDU取指译码单元(2)交互控制和状态信息,并告知FDU发射哪个warp的控制信号和数据到SPU上执行;所述SPU染色处理单元(1)与所述CU控制单元(3)相连,用于将SPU染色处理单元(1)的分支跳转结果发送到CU控制单元(3);所述I$单元(4)与FDU取指译码单元(2)连接,用于向FDU取指译码单元(2)提供染色指令;所述SPU染色处理单元(1)与FDU取指译码单元(2)连接,用于FDU取指译码单元(2)读取SPU染色处理单元(1)内部的寄存器文件;所述FDU取指译码单元(2)与SPU染色处理单元(1)、所述LSU加载存储单元(6)相连,用于向SPU染色处理单元(1)、LSU加载存储单元(6)提供指令译码后的控制信号和所需的源操作数;
所述SSRAM单元(8)与RAC相连,用于为LSU加载存储单元(6)和SSC单元外部对SSRAM单元(8)的访问提供数据通路;所述SPU染色处理单元(1)与RAC相连,用于为LSU加载存储单元(6)和SSC单元外部对SPU染色处理单元(1)内部的存储器访问提供数据通路;所述LSU加载存储单元(6)和所述RAC单元(7)相连,用于为LSU加载存储单元(6)通过RAC单元(7)对SSRAM单元(8)和SPU染色处理单元(1)内部存储器的访问提供数据通路;所述LSU加载存储单元(6)和SPU染色处理单元(1)相连,用于为LSU加载存储单元(6)的执行结果写入SPU染色处理单元(1)提供数据通路;所述C$单元(5)与LSU加载存储单元(6)连接,用于为LSU加载存储单元(6)对C$单元(5)的访问提供数据通路。
2.如权利要求1所述的一种统一染色架构图形处理器单指令多线程染色簇***,其特征在于,
所述统一染色架构图形处理器单指令多线程染色簇结构的工作流程为:
1)外部模块将待加工数据通过接口c,经RAC单元(7)写入SPU染色处理单元(1);
2)外部模块将控制信息通过接口d,写入CU控制单元;
3)CU控制单元(3)检测到控制信息后,通知FDU取指译码单元(2)经I$单元(4)取回指令,译码后从SPU染色处理单元(1)取回数据,且:
a.如果是定点或浮点操作,则将控制信息和数据发往SPU染色处理单元(1)进行运算,并将结果存入SPU染色处理单元(1)的内部寄存器文件;
b.如果是加载或存储操作,则将控制信息和数据发往LSU加载存储单元(6)进行运算:
i.如果是局部加载,则LSU加载存储单元(6)依据控制信息和输入数据从SPU染色处理单元(1)的局部存储器加载信息,并将该信息写入SPU染色处理单元(1)的内部寄存器文件;
ii.如果是共享加载,则LSU加载存储单元(6)依据控制信息和输入数据从SSRAM单元(8)中加载信息,并将该信息写入SPU染色处理单元(1)的内部寄存器文件;
iii.如果是纹理加载,则LSU加载存储单元(6)依据控制信息和输入数据通过RAC单元(7)和接口c从外部加载信息,并将该信息写入SPU染色处理单元(1)的内部寄存器文件;
iv.如果是常量加载,则LSU加载存储单元(6)依据控制信息和输入数据从C$单元(5)加载信息,并将该信息写入SPU染色处理单元(1)的内部寄存器文件;
v.如果是局部存储,则LSU加载存储单元(6)依据控制信息和输入数据将SPU染色处理单元(1)内部寄存器文件中的信息存入SPU染色处理单元(1)内部的局部存储器;
vi.如果是共享存储,则LSU加载存储单元(6)依据控制信息和输入数据将SPU染色处理单元(1)内部寄存器中的信息通过RAC单元(7)存入SSRAM单元(8);
4)程序执行完毕后,CU控制单元产生完成信息,并通过接口d向外部报告所述完成信息;
5)外部模块检测到所述完成信息后通过接口c经RAC单元(7)将加工完成的数据从SPU染色处理单元(1)的局部存储器搬出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611139607.3A CN106651742B (zh) | 2016-12-12 | 2016-12-12 | 一种统一染色架构图形处理器单指令多线程染色簇*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611139607.3A CN106651742B (zh) | 2016-12-12 | 2016-12-12 | 一种统一染色架构图形处理器单指令多线程染色簇*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106651742A CN106651742A (zh) | 2017-05-10 |
CN106651742B true CN106651742B (zh) | 2020-08-11 |
Family
ID=58824687
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611139607.3A Active CN106651742B (zh) | 2016-12-12 | 2016-12-12 | 一种统一染色架构图形处理器单指令多线程染色簇*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106651742B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108133452B (zh) * | 2017-12-06 | 2021-06-01 | 中国航空工业集团公司西安航空计算技术研究所 | 一种统一染色器阵列的指令发射处理电路 |
CN113268270B (zh) * | 2021-06-07 | 2022-10-21 | 中科计算技术西部研究院 | 一种针对成对隐马尔可夫模型的加速方法、***及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110072245A1 (en) * | 2009-09-23 | 2011-03-24 | Duluk Jr Jerome F | Hardware for parallel command list generation |
CN103150146A (zh) * | 2013-01-31 | 2013-06-12 | 西安电子科技大学 | 基于可扩展处理器架构的专用指令集处理器及其实现方法 |
CN105513003A (zh) * | 2015-12-11 | 2016-04-20 | 中国航空工业集团公司西安航空计算技术研究所 | 一种图形处理器统一染色器阵列体系结构 |
CN105630441A (zh) * | 2015-12-11 | 2016-06-01 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于统一染色技术的gpu体系架构 |
-
2016
- 2016-12-12 CN CN201611139607.3A patent/CN106651742B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110072245A1 (en) * | 2009-09-23 | 2011-03-24 | Duluk Jr Jerome F | Hardware for parallel command list generation |
CN103150146A (zh) * | 2013-01-31 | 2013-06-12 | 西安电子科技大学 | 基于可扩展处理器架构的专用指令集处理器及其实现方法 |
CN105513003A (zh) * | 2015-12-11 | 2016-04-20 | 中国航空工业集团公司西安航空计算技术研究所 | 一种图形处理器统一染色器阵列体系结构 |
CN105630441A (zh) * | 2015-12-11 | 2016-06-01 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于统一染色技术的gpu体系架构 |
Non-Patent Citations (1)
Title |
---|
图形处理器低功耗设计技术研究;田泽 等;《计算机科学》;20130630;第40卷(第6A期);210-215 * |
Also Published As
Publication number | Publication date |
---|---|
CN106651742A (zh) | 2017-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8615646B2 (en) | Unanimous branch instructions in a parallel thread processor | |
US8082420B2 (en) | Method and apparatus for executing instructions | |
US10360039B2 (en) | Predicted instruction execution in parallel processors with reduced per-thread state information including choosing a minimum or maximum of two operands based on a predicate value | |
US7697007B1 (en) | Predicated launching of compute thread arrays | |
CN111310910A (zh) | 一种计算装置及方法 | |
US20080109795A1 (en) | C/c++ language extensions for general-purpose graphics processing unit | |
US20240004666A1 (en) | Floating-point supportive pipeline for emulated shared memory architectures | |
CN105513003A (zh) | 一种图形处理器统一染色器阵列体系结构 | |
JPH1124929A (ja) | 演算処理装置およびその方法 | |
US9207919B2 (en) | System, method, and computer program product for bulk synchronous binary program translation and optimization | |
US11934867B2 (en) | Techniques for divergent thread group execution scheduling | |
CN106651742B (zh) | 一种统一染色架构图形处理器单指令多线程染色簇*** | |
US11727530B2 (en) | Instruction storage | |
CN111026444A (zh) | 一种gpu并行阵列simt指令处理模型 | |
KR101420592B1 (ko) | 컴퓨터 시스템 | |
US20210089305A1 (en) | Instruction executing method and apparatus | |
CN106030517B (zh) | 用于仿真共享内存架构中的长延迟操作的架构 | |
CN111813447B (zh) | 一种数据拼接指令的处理方法和处理装置 | |
CN111857822A (zh) | 一种运算装置及其操作方法 | |
CN117667212A (zh) | 指令控制装置、方法、处理器、芯片和板卡 | |
CN118259970A (zh) | 指令处理方法、装置、***以及电子设备 | |
Fumero et al. | Heterogeneous Hardware | |
CN117667211A (zh) | 指令同步控制方法、同步控制器、处理器、芯片和板卡 | |
CN116737159A (zh) | 面向处理电路阵列的数据处理方法及相关产品 | |
CN117667210A (zh) | 指令控制装置、方法、处理器、芯片和板卡 |
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 |