可中断图形处理单元及其控制方法技术

技术编号:2947281 阅读:165 留言:0更新日期:2012-04-11 18:40
一种图形处理单元,于接收到指令时,中断处理第一上下文和初始处理第二上下文,指令处理器通过通信途径从指令处理器传送中断信号至多个流水线处理区块。对应于中断上下文的尾端的代符,从指令处理器依序传送至第一流水线处理区块以及其他流水线处理区块。各流水线处理区块根据接收的中断信号丢弃有关于存储器单元的内容直到代符到达为止。而与第二上下文有关的数据会经由图形流水线在代符之后传送。

【技术实现步骤摘要】

本专利技术有关于图形处理,特别是有关于一种存储和回存上下文(context)于图形处理单元的方法和系统。
技术介绍
目前所知的计算机系统一般包括多个处理器,例如在计算机系统中,除了中央处理器(Central Processing Unit,CPU)执行处理程序之外,另外计算机系统还具有一图形处理单元(Graphics Processing Unit,GPU)用以减少CPU的负担,使CPU减少处理程序的负荷。在一些应用上,处理器(例如GPU)可设置在计算机系统主机板上并且在CPU旁。而在另一应用上,GPU和/或其他相关装置可设置在一分离但电连接的卡上,例如GPU在一显示卡上,关于所述应用,本领域技术人员皆熟知此应用。辅助处理器(coprocessor),例如GPU,可存取如显示卡存储器的额外存储器,以执行处理程序。再者,辅助处理器可以被设计以及最佳化来执行特殊处理程序。对于GPU来说,GPU可以被最佳化以执行三维图形计算,所以GPU可以应用于复杂的图形计算上。然而传统计算机系统和辅助处理器只能胜任执行单一复杂图形的应用,当执行多个复杂图形的应用时,传统计算机系统和辅助处理器可能会遭遇到一些问题。对于一般辅助处理器而言,排序本身工作流程并未使用最有效率的方法。在一些操作系统中,GPU可以多工,其方法是将待处理的工作依序送至GPU,GPU会依序执行所接收到的工作。然而,这方法有一个问题就是无法妥善处理使用同一资源的多个应用程序的优先顺序。在一非限定的例子中,当第一应用程序正在使用GPU辅助处理器时必须交出控制权给另一应用程序以完成他们的共同处理目标。假如当第一应用程序完成相关计算程序,但是第一应用程序不交出控制权给另一个等待的应用程序,GPU会被第一应用程序给占住,而等待的应用程序则会遇到无法使用GPU的问题。如之前所述,当只有使用单一复杂图形应用程序时,所述问题并不会太严重,然而,占住GPU或其他共同处理器资源的问题,在多个应用程序同时使用GPU时,这个问题就会被突显出来。关于分配处理不同应用程序的构想,可以通过使用中断CPU的方式,也就是上下文内容从一任务跳到另一任务来完成。更具体的来说,利用较新型的GPU以执行上下文内容的存储/回存的构想,利用存储相关寄存器和程序计数器数据,以继续执行之前被中断的处理程序。然而有关于CPU如何分配处理程序的问题已经被探讨,但是有关于辅助处理器如何分配处理程序,之前并无完整探讨。关于所述分配处理程序的问题,至少有一理由认为辅助微处理器,(例如GPU)可使CPU避免执行复杂计算和耗时的程序,使CPU可以执行其他任务。图形处理往往包括复杂的计算,因此会使用大量处理程序的资源,当复杂图形应用程序增加时,GPU会被设计成更大更复杂,以应付复杂计算。关于如何精确中断CPU,对于具有并行处理功能单元以及排序执行功能单元的巨大复杂结构EPIC型(Explicitly Parallel InstructionComputing)CPU会有一些问题,因此CPU结构中的寄存器必须被重新设计,使得数十个指令可同时执行于处理流水线(pipeline)的不同阶段。为了使精确中断成为可能,CPU必须具有一重新排序缓冲器和一额外执行指令(instruction commit(retirement))于处理流水线中。目前GPU是使用不同型指令(可称为巨集指令),执行各GPU指令需要数百到数千周期,目前利用GPU流水线来处理图形的比重已经超过CPU来处理图形的比重,因此GPU往往会遇到因为不具有足够处理结构来处理大量数据于存储和回存之间,所以目前大部分GPU朝着在任何时间点上皆可处理大量数据的方向在设计,使得GPU在分配程序上变的复杂。更具体的来说,GPU会采用具有长序列数据之外来指令,例如图形图元(draw primitive),因而产生有关于如何完成之前被中断事件的问题。因此,需要一新而有效的方法来克服所述缺点。
技术实现思路
有鉴于此,本专利技术提供一种可被中断的图形处理器GPU,因而可以在同一时间处理多个图形程序,图形处理器是一硬件设备可通过中断程序以提供多个程序之间的切换。当图形处理单元接收到指令,中断处理第一上下文和初始处理第二上下文,在图形流水线中,一指令处理器从多个流水线处理区块传送一中断信号到通信途径。一对应于中断上下文的尾端的代符,从指令处理器传送至第一流水线处理区块,并依序传送至其他图形流水线。当代符到达时,各流水线处理区块丢弃有关于存储器单元的内容。代符传送至其他流水线处理区块和存储器单元,以致于经由图形流水线传送代符以清除有关于第一上下文的数据。有关于第二上下文的数据会在代符之后通过图形流水线。在图形流水线中,流水线可包括一些不通过通信途径耦接指令处理器的流水线处理区块,这些流水线处理区块继续执行有关于第一上下文的数据直到接收到通过图形流水线的代符,一旦接收到代符,这些流水线处理区块也会丢弃有关于第一上下文在存储器的数据,并开始处理第二上下文的数据。本专利技术提供一种可中断图形处理单元的控制方法,适用于中断一第一上下文和初始一第二上下文,包括在一图形流水线中,通过一通信途径从一指令处理器传送一中断信号至多个流水线处理区块;从指令处理器传送对应于一中断上下文的一终端的一代符至一第一流水线处理区块;当在通信途径接收到中断信号时,直到代符被接收到,丢弃一存储器的内容;以及传送代符至其他流水线处理区块和存储器单元,以致于代符经由图形流水线以清除关于第一上下文的数据,其中经由图形流水线有关于第二上下文的数据于代符后被处理。本专利技术提供一种图形处理单元,具有一图形流水线以中断一第一上下文和初始一第二上下文,包括多个结构单元,设置在图形流水线中,图形流水线通过一通信途径耦接至图形处理单元的一指令处理器,其中指令处理器通过通信途径传送一中断信号至各结构单元,以及一存储器,设置在各结构单元之间,以致于数据从一特定结构单元输出并存储于存储器中,之后输出至图形流水线的下一结构单元。其中接收到来自通信途径上的中断信号,直到一代符传送至存储器时,各结构单元丢弃存储器的内容,存储器的位置在各结构区块之间,代符有关于第二上下文的开始。本专利技术提供一种图形处理单元,具有一图形流水线以中断一第一上下文和初始一第二上下文,包括一第一多个流水线区块,流水线区块依序耦接在一起和一先进先出存储器在各流水线区块之间;一通信途径,耦接至图形处理单元的一指令处理器和耦接至各第一多个流水线区块,并从指令处理器传送一中断信号至各第一多个流水线区块,各多个流水线区块停止处理有关于第一上下文的数据以及清除一先进先出存储器,先进先出存储器提供数据至流水线区块,直到传送至图形流水线的一代符栅,以及一第二多个流水线区块,设置在图形流水线内,并在第一多个流水线区块后,所述第二多个流水线区块不耦接至通信途径,当接收到代符栅时,第二多个流水线区块停止处理有关于第一上下文的数据和清除先进先出存储器,其中先进先出存储器提供给流水线区块的数据。本专利技术提供一种图形处理单元的控制方法,适用于通过一图形流水线以中断一第一上下文和初始执行一第二上下文,包括在第一上下文处理期间,检查一中断指令和内部中断事件的一者;当接收中断指令和内部中断事件的一者,产生一信号在本文档来自技高网
...

【技术保护点】
一种可中断图形处理单元的控制方法,适用于中断一第一上下文和初始一第二上下文,包括:在一图形流水线中,通过一通信途径从一指令处理器传送一中断信号至多个流水线处理区块; 从所述指令处理器传送对应于一中断上下文的一终端的一代符至一第一流水线处理区块;当在所述通信途径接收到所述中断信号时,直到所述代符被接收到,丢弃一存储器的内容;以及传送所述代符至其他流水线处理区块和存储器单元,以致于所述代符经由所述图形流水线以清除关于所述第一上下文的数据,其中经由所述图形流水线有关于所述第二上下文的数据于所述代符后被处理。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:黄锡霖提莫佩塔西约翰柏拉勒斯
申请(专利权)人:威盛电子股份有限公司
类型:发明
国别省市:71[中国|台湾]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1