发明名称 图形处理器、图形系统、嵌入式处理器、执行图形处理运算之方法、操作图形管线之方法、执行暂存器写入的方法,及监视图形处理器之方法
摘要 本发明揭示一种图形处理器,其具有一能够进行用于处理像素封包之纯量算术运算的可程式之算术逻辑单元(ALU)阶段。该等像素封包中之运算元可以一S1.8格式来格式化以改良动态范围,或以一不同资料格式来格式化。可将该图形处理器实施为一可组态图形管线。在一实施例中,分配器耦合一图形管线之元件以允许重新组态像素封包经由该管线之处理流程,以回应一来自一主机之命令(command)。可使用一可组态之测试点选择器来监视该图形管线之一所选子组分接头点(tap point),并对与该子组分接头点之每一分接头点相关联之至少一条件来计数统计量。可将像素指派为偶像素或奇像素,且接着交错奇及偶像素的像素封包以解决ALU等待时间(latency)。在一实施例中,一资料封包触发该图形管线之一元件以发现一识别符。
申请公布号 TWI297468 申请公布日期 2008.06.01
申请号 TW094115854 申请日期 2005.05.16
申请人 辉达公司 发明人 艾德华A 贺屈斯;布莱恩K 安吉尔;保罗 金
分类号 G06T1/20(2006.01) 主分类号 G06T1/20(2006.01)
代理机构 代理人 陈长文 台北市松山区敦化北路201号7楼
主权项 1.一种图形处理器,其包含: 一光栅阶段,其接收关于待光栅化之图原之资料, 该光栅阶段产生用于待处理之每一像素之复数个 像素封包,每一像素封包包括识别待处理之至少一 像素属性的有效负载资讯,并具有识别一待在该像 素封包上执行之含至少一指令的序列所相关联之 旁频带资讯;及 一可程式之算术逻辑单元(ALU)阶段,其用于处理该 等像素封包,该ALU阶段包括至少一ALU,每一ALU经程 式化以具有一组至少一可能之纯量算术运算,该组 纯量算术运算系在一具有一对应之当前指令之传 入像素封包上来执行; 其中在该复数个像素封包上执行一算术运算序列 以执行一图形处理功能。 2.如请求项1之图形处理器,其中该旁频带资讯包括 一取消栏位,且每一ALU被时脉闸控以回应在该取消 栏位中侦测到一取消位元,以降低该复数个ALU之功 率消耗。 3.如请求项2之图形处理器,其中至少一ALU回应侦测 到对于纯量运算元之一逻辑比较的一真値而设定 该取消位元。 4.如请求项1之图形处理器,其中该算术运算之形式 为a*b+c*d,其中a、b、c及d为运算元且*为一乘法运算 。 5.如请求项1之图形处理器,其中该ALU阶段经调适成 执行一网底功能。 6.如请求项1之图形处理器,其中该ALU阶段执行一雾 化运算、纹理映射、透明度混色、z测试或一透明 度测试中之至少一者。 7.如请求项1之图形处理器,其中该光栅阶段对每一 该像素产生至少一像素封包列,每一列具有在一特 定时脉周期中被发送至该ALU阶段之复数个像素封 包。 8.如请求项1之图形处理器,其进一步包含一闸道管 理器阶段,该闸道管理器阶段具有一用于追踪自该 光栅阶段所接收之像素封包的记分板。 9.如请求项8之图形处理器,其进一步包含: 一资料提取阶段,其用以提取该等像素封包之资料 ; 一资料写入阶段,其用以执行自该ALU阶段所接收之 经处理之像素封包的像素资料之一记忆体写入。 10.如请求项9之图形处理器,其进一步包含: 一自该资料写入阶段至该闸道管理器阶段的再循 环路径,其用于为额外通过该ALU阶段一次而再循环 像素封包。 11.如请求项10之图形处理器,其中关于在该ALU阶段 中被标记为取消之像素封包的资讯被提供至该记 分板以解决取消之封包像素。 12.一种图形处理器,其包含: 至少一阶段,其用以转换并设定待光栅化之图原的 顶点; 一光栅阶段,其接收关于待光栅化之图原之资料, 该光栅阶段为待使用一图形运算来处理之每一像 素产生至少一像素封包列,该图形运算可被表达为 一纯量算术运算序列; 一闸道管理器,其包括一用以追踪像素封包之该处 理之计分板; 一资料提取阶段,其用以提取每一像素封包列之资 料; 一ALU阶段,其包含复数个可程式之算术逻辑单元( ALU)以用于处理每一该像素封包列,每一ALU接收一 输入像素封包列并输出一输出像素封包列,每一ALU 自一所接收之像素封包列读取至少一运算元,使用 该至少一运算元来执行一纯量算术运算,产生一结 果,并执行将该结果写入至一临时値及使用该结果 来更新该输出列之一像素属性暂存器中之至少一 者;及 一资料写入阶段,其用以执行自该复数个ALU所接收 之经处理之像素封包的像素资料之一记忆体写入; 其中在该复数个像素封包上执行一算术运算序列 以执行该图形处理功能。 13.如请求项12之图形处理器,其中该复数个ALU系以 一管线来配置。 14.如请求项12之图形处理器,其中每一像素封包包 括识别待处理之至少一像素属性的有效负载资讯, 且每一列具有识别待在该列之每一该像素封包上 执行之至少一指令的相关联之旁频带资讯。 15.如请求项12之图形处理器,其进一步包括一再循 环路径,该再循环路径用以自该资料写入阶段至该 闸道管理器阶段再循环像素封包,藉以可使用通过 该ALU阶段一次以上来处理像素封包。 16.如请求项12之图形处理器,其中每一ALU经调适成 允许一软体主机选择待选自该列之运算元以及一 常数値与一临时値中之至少一者。 17.如请求项12之图形处理器,其中至少一阶段经组 态以侦测一取消条件并将像素封包标记为被取消, 其中一ALU中之纯量算术处理被停用以回应侦测到 一像素封包被标记为被取消。 18.如请求项12之图形处理器,其中该纯量算术运算 之形式为a*b+c*d,其中a、b、c及d为运算元且*为一乘 法运算。 19.如请求项12之图形处理器,其中该ALU阶段经调适 成执行一网底功能。 20.如请求项12之图形处理器,其中该ALU阶段执行一 雾化运算、纹理映射、透明度混色、z测试或一透 明度测试中之至少一者。 21.如请求项12之图形处理器,其中该光栅阶段及该 复数个ALU经调适成将一向量算术运算转换为一纯 量算术运算序列。 22.一种图形系统,其包含: 一中央处理器,其具有一图形软体模组; 一可程式之图形处理器,其自该图形软体模组接收 顶点资讯及用于程式化该可程式之图形处理器之 阶段的程式化指令,该可程式之图形处理器包含: 一光栅阶段,其为待处理之每一像素产生复数个像 素封包以回应来自该图形软体模组之指令,每一像 素封包包括识别待处理之至少一像素属性的有效 负载资讯,并具有识别待在每一该像素封包上执行 之至少一指令的相关联之旁频带资讯;及 一可程式之算术逻辑单元(ALU)阶段,其包括经组态 用于处理该等像素封包之复数个ALU,每一ALU系由该 图形软体模组所指派以自所接收之像素封包读取 所选运算元,执行一纯量算术运算以回应一当前指 令以产生一结果,并执行使用该结果来更新一像素 属性暂存器及将该结果储存为一临时値中之至少 一者; 其中在该复数个像素封包上执行一纯量算术运算 序列以在每一该像素上执行一图形处理功能。 23.如请求项22之图形系统,其中该旁频带资讯包括 一取消栏位,且每一ALU被时脉闸控以回应在该取消 栏位中侦测到一取消位元,以降低该复数个ALU之功 率消耗。 24.如请求项22之图形系统,其中该算术运算之形式 为a*b+c*d,其中a、b、c及d为运算元且*为一乘法运算 。 25.如请求项22之图形系统,其中该ALU阶段经调适成 执行一网底功能。 26.如请求项22之图形系统,其中该ALU阶段执行一雾 化运算、纹理映射、透明度混色、z测试或一透明 度测试中之至少一者。 27.如请求项22之图形系统,其中该光栅阶段对每一 该像素产生至少一像素封包列,每一列具有在一特 定时脉周期中被发送至该ALU阶段之复数个像素封 包。 28.如请求项22之图形系统,其进一步包含一闸道管 理器阶段,该闸道管理器阶段具有一用于追踪自该 光栅阶段所接收之像素封包的记分板。 29.如请求项22之图形系统,其进一步包含:一资料提 取阶段,其用以提取该等像素封包之资料; 一资料写入阶段,其用以执行自该ALU阶段所接收之 经处理之像素封包的像素资料之一记忆体写入;及 一自该资料写入阶段至该闸道管理器阶段的再循 环路径,其用于为额外通过该ALU阶段一次而再循环 像素封包。 30.如请求项29之图形系统,其中关于在该ALU阶段中 被标记为取消之像素封包的资讯被提供至该记分 板以解决取消之封包像素。 31.一种嵌入式处理器,其包含: 一暂存器介面,其用于一主机以程式化一图形核心 之暂存器; 一主机介面,其用于一主机以与该图形核心进行通 信; 一记忆体介面,其用于该图形核心以读取及写入资 料; 一可程式之图形处理器,其安置于该图形核心中, 该可程式之图形处理器包含:至少一阶段,其用以 设定并转换待光栅化之图原的顶点; 一光栅阶段,其接收关于待光栅化之图原之资料, 该光栅单元为待使用一图形运算来处理之每一像 素产生至少一像素封包列,该图形运算可被表达为 一纯量算术运算序列,每一像素封包包括识别待处 理之至少一像素属性的有效负载资讯,且每一列具 有识别待在该列之每一该像素封包上执行之至少 一指令的相关联之资讯; 一闸道管理器,其包括一用以追踪像素封包之该处 理之计分板; 一资料提取阶段,其用以提取每一像素封包列之资 料; 一ALU阶段,其包含复数个可程式之算术逻辑单元( ALU)以用于处理每一该像素封包列,每一ALU接收一 输入像素封包列并输出一输出像素封包列,每一ALU 自一所接收之像素封包列读取至少一运算元,使用 该至少一运算元来执行一纯量算术运算,产生一结 果,并执行将该结果写入至一临时値及使用该结果 来更新该输出列之一属性暂存器中之至少一者;及 一资料写入阶段,其用以执行自该复数个ALU所接收 之经处理之像素封包的像素资料之一记忆体写入; 其中在该复数个像素封包上执行一算术运算序列 以执行该图形处理功能。 32.如请求项31之嵌入式处理器,其中该复数个ALU系 以一管线来配置。 33.如请求项31之嵌入式处理器,其进一步包含一再 循环路径,该再循环路径用以自该资料写入阶段至 该闸道管理器阶段再循环像素封包,藉以可使用通 过该ALU阶段一次以上来处理像素封包。 34.如请求项31之嵌入式处理器,其中每一ALU可组态 以允许选自该列之运算元以及一常数値与一临时 値中之至少一者。 35.如请求项31之嵌入式处理器,其中至少一阶段经 组态以侦测一取消条件并将像素封包标记为被取 消,其中一ALU中之算术处理被停用以回应侦测到一 像素封包被标记为被取消。 36.如请求项31之嵌入式处理器,其进一步包含: 一中央处理器,其用于执行一图形应用程式以操作 该图形核心,其中该图形核心及该中央处理器安置 于一单一晶片上。 37.一种在一像素上执行一图形处理运算之方法,其 包含:对于待在一像素上执行之至少一图形功能, 识别可在像素封包上执行的一纯量算术运算序列, 以实施该至少一图形功能; 对该像素产生复数个像素封包,每一像素封包包括 在该纯量算术运算序列中待作为运算元处理之一 子组像素属性,该复数个像素封包具有一相关联之 指令序列; 在至少一算术逻辑单元(ALU)中,自该等像素封包读 取运算元; 在该至少一ALU中,根据该指令序列来执行纯量算术 运算,以执行该纯量算术运算序列以用于实施该至 少一图形功能。 38.如请求项37之方法,其进一步包含:判定一像素不 需要进一步处理; 将一取消状态指派给至少一像素封包;及 停用由该至少一像素封包所遇到之每一随后之ALU 中的算术计算以节省功率。 39.如请求项37之方法,其中该图形功能包括一纹理 组合、一Z深度测试、一透明度混色、一透明度测 试或一雾化中之至少一者。 40.如请求项37之方法,其中该纯量算术运算之形式 为a*b+c*d,其中a、b、c及d为运算元且*为一乘法运算 。 41.一种在一像素上执行一图形处理运算之方法,其 包含: 对于待在一像素上执行之一图形功能,识别可在像 素封包上执行的一纯量算术运算序列,以实施该图 形功能; 对在连续时脉周期中待处理之该像素产生至少一 像素封包列,每一像素封包包括用于在该纯量算术 运算序列中待作为运算元处理之一子组像素属性 的至少一栏位,该至少一列具有一相关联之指令序 列; 在复数个算术逻辑单元(ALU)之每一者中,读取所指 派之运算元,该等运算元中之至少一者对应于一自 一像素封包列内之一像素封包所读取之运算元; 在每一该ALU中,根据该指令序列在该等所指派之运 算元上执行一纯量算术计算,以执行该纯量算术运 算序列以用于执行该图形功能。 42.如请求项41之方法,其中每一该ALU执行以下步骤 中之至少一者:使用该纯量算术运算之一结果来更 新一像素封包;及 储存该纯量算术运算之一结果,以在一稍后之时脉 周期中所执行之一算术运算中用作一运算元。 43.如请求项41之方法,其进一步包含: 识别一不需要进一步处理之像素,且作为回应,将 该像素之至少一像素封包标记为取消;及 在每一ALU中,停用已标记为被取消的像素封包之算 术计算。 44.如请求项43之方法,其中该识别系在一资料提取 阶段中来执行。 45.如请求项43之方法,其中该识别系在一资料写入 阶段中来执行。 46.如请求项41之方法,其进一步包含:指派待读取之 该等ALU像素封包属性中之每一者及待执行之一对 应之纯量算术运算,以回应该指令序列内之一当前 指令。 47.如请求项41之方法,其进一步包含:提取像素封包 之资料。 48.如请求项41之方法,其进一步包含:对该图形功能 写入经处理之像素资料。 49.如请求项41之方法,其进一步包含:在该等ALU中使 用一递增指令为一第二处理通过而再循环一经处 理之像素封包。 50.如请求项41之方法,其进一步包含: 识别可在像素封包上执行之一第二纯量算术运算 序列,以实施一第二图形功能; 在一像素封包列上执行该第一图形功能及该第二 图形功能,其中一第一组ALU在一第一组像素封包上 执行一第一类型之图形功能,且一第二组ALU在一第 二组像素封包上执行一第二类型之图形功能。 51.一种执行一图形处理运算之方法,其包含: 程式化复数个算术逻辑单元(ALU),以自一像素封包 列读取所选运算元,并执行一所选纯量算术运算以 回应一与该像素封包列相关联之所选当前指令; 对于待在一像素上执行之至少一图形运算,识别待 在该像素之一子组属性上执行之至少一对应纯量 算术运算; 对该像素产生一像素封包列,每一像素封包包括用 于待作为至少一运算元处理之与该像素相关联的 至少一属性之栏位,该像素封包具有一指示待执行 之一纯量算术运算序列的相关联之当前指令; 在该等ALU中,在该像素封包列中读取该等所选运算 元,并执行对应于该相关联之当前指令的该所选纯 量算术运算。 52.如请求项51之方法,其进一步包含:程式化一资料 提取阶段以提取像素封包之资料。 53.如请求项51之方法,其进一步包含:程式化该光栅 阶段以将该图形运算映射至一像素封包指派及一 相关联之指令。 54.如请求项51之方法,其进一步包含:程式化至少一 ALU以执行一纯量比较测试,且若一像素封包使该纯 量比较测试失败,则将该像素封包标记为被取消。 55.一种在一像素上执行图形处理运算之方法,其包 含: 对于待在一像素上执行之至少一图形功能,识别可 在像素封包上执行的纯量算术运算,以实施该至少 一图形功能; 为待处理之该像素产生至少一像素封包列,每一像 素封包包括用于待作为运算元处理之一子组像素 属性的至少一栏位,该至少一列具有一相关联之指 令序列; 在复数个算术逻辑单元(ALU)之每一者中,读取所指 派之运算元,该等运算元中之至少一者对应于一自 一像素封包列内之一像素封包所读取之运算元; 在每一该ALU中,根据该指令序列在该等所指派之运 算元上执行一纯量算术计算; 其中对于一需要一在[0,1]范围内之结果的所选纯 量算术运算,以一S1.8格式来格式化像素封包之对 应运算元,该S1.8格式对应于具有一8位元小数成份 之[-2,+2]范围内之运算元的一基数2表示,并将该所 选纯量算术运算之一结果钳制至该[0,1]范围;及 对于至少一其他纯量算术运算,以一不同之资料格 式来格式化对应之像素封包。 56.如请求项55之方法,其中需要一在该[0,1]范围内 之结果的该至少一纯量算术运算系在以该S1.8格式 所表示之至少一色彩成份上的一计算。 57.如请求项56之方法,其中该至少一其他纯量算术 运算对应于一以一不同于S1.8之格式所表示之纹理 上的一运算。 58.如请求项57之方法,其中每一像素封包具有为像 素封包所需之一固定位元大小,该等像素封包包括 高精确度(s,t)纹理资料,且色彩成份之像素封包包 括至少两色彩成份之资料。 59.一种在一像素上执行一图形处理运算之方法,其 包含: 对于待在一像素之色彩成份上执行之一第一图形 功能,识别一第一纯量算术运算序列以实施该第一 图形功能,该第一图形功能需要一纯量算术运算以 具有一钳制于该[0,1]范围内的结果; 对于待在与一像素相关联之纹理上执行之一第二 图形功能,识别一第二纯量算术运算序列以实施该 第二图形功能; 对该像素产生至少一像素封包列,每一像素封包具 有长度为至少16位元之一固定位元大小,且包括用 于待作为运算元处理之一子组像素属性的至少一 栏位,该至少一列具有一相关联之指令序列; 对于与该第一图形功能相关联之每一像素封包,以 一S1.8格式来封装至少两色彩成份,该S1.8格式对应 于具有一8位元小数成份之[-2,+2]范围内之运算元 的一基数2表示; 对于与该第二图形功能相关联之每一像素封包,封 装一需要8位元以上之单一高精确度纹理; 在复数个算术逻辑单元(ALU)之每一者中,读取所指 派之运算元,并根据该指令序列在该等所指派之运 算元上执行一纯量算术计算; 其中对于该第一图形功能,色彩成份以该S1.8格式 被选择为运算元,且一结果被钳制至该[0,1]范围,而 对于该第二图形功能,该纹理以一具有大于8位元 之精确度的格式被选择为一运算元。 60.一种图形处理器,其包含: 至少一阶段,其用以设定并转换待光栅化之图原的 顶点; 一光栅阶段,其接收关于待光栅化之图原之资料, 该光栅阶段对待为每一图形运算而处理之每一像 素产生至少一像素封包列,该每一图形运算可被表 达为一纯量算术运算序列; 一闸道管理器,其包括一用以追踪像素封包之该处 理之计分板; 一资料提取阶段,其用以提取每一像素封包列之资 料; 一ALU阶段,其包含复数个可程式之算术逻辑单元( ALU)以用于处理每一该像素封包列,每一ALU接收一 输入像素封包列并输出一输出像素封包列,每一ALU 自一所接收之像素封包列读取至少一运算元,使用 该至少一运算元来执行一纯量算术运算,产生一结 果,并执行将该结果写入至一临时値或使用该结果 来更新该输出列之一像素封包中之至少一者;及 一资料写入阶段,其用以执行自该复数个ALU所接收 之经处理之像素封包的像素资料之一记忆体写入; 其中在该复数个像素封包上执行一算术运算序列 以执行该图形处理功能; 该光栅阶段以一S1.8格式对一第一类型的纯量算术 运算格式化像素封包,该S1.8格式对应于具有一8位 元小数成份之在[-2,+2]之一范围内之运算元的一基 数2表示,且每一ALU处理该第一类型之纯量运算,其 将一结果钳制在该[0,1]范围内; 该光栅阶段以一需要大于8位元之精确度的格式对 一第二类型之纯量算术运算格式化像素封包。 61.如请求项60之图形处理器,其中该第一类型之纯 量运算对应于一色彩成份上的一运算,且至少两色 彩成份包括于一为在色彩成份上之一纯量运算而 产生之像素封包中,且该第二类型之纯量运算对应 于一运算,该运算需要一具有一大于该像素封包大 小之一半之大小的资料属性。 62.如请求项60之图形处理器,其中该第二类型之纯 量运算对应于一纹理上之一运算。 63.如请求项62之图形处理器,其中每一像素封包具 有一为至少20位元之大小,一纹理之属性需要至少 16位元并具有一相关联之4位元精细度,且每一S1.8 格式需要十位元,藉以可于每一像素封包中含有两 个S1.8运算元以用于该第一类型之运算,且可于每 一像素封包中含有用于该第二类型之运算的一组 纹理属性以用于该第二类型之运算。 64.一种图形处理器,其包含: 一光栅阶段,其接收关于待光栅化之图原的资料, 该光栅阶段为待处理之每一像素产生复数个像素 封包,每一像素封包包括识别待处理之至少一像素 属性的有效负载资讯,并具有识别待在每一该像素 封包上执行之至少一指令的相关联之旁频带资讯; 一可程式之算术逻辑单元(ALU)阶段,其用于处理该 等像素封包,该ALU阶段包括复数个ALU,每一ALU具有 一组至少一可能之算术运算,该组算术运算系在一 具有一对应之当前指令式命令的传入像素封包上 来执行; 一资料提取阶段,其用以提取该等像素封包之资料 ; 一资料写入阶段,其用以执行自该ALU阶段所接收之 经处理之像素封包的像素资料之一记忆体写入; 一第一分配器,其耦合至该ALU阶段、该资料提取阶 段及该资料写入阶段之个别输入;及 一第二分配器,其耦合至该ALU阶段、该资料提取阶 段及该资料写入阶段之个别输出; 该第一分配器及该第二分配器经调适成重新组态 像素封包经由该资料提取阶段、该ALU阶段及该ALU 写入阶段之一处理流程,以回应一来自一主机之命 令。 65.如请求项64之图形处理器,其中该第一分配器及 该第二分配器经调适成允许绕过该图形处理器之 至少一部分以回应一软体命令。 66.如请求项65之图形处理器,其中该第一分配器及 该第二分配器经调适成允许绕过该资料提取阶段 以回应一软体命令。 67.如请求项64之图形处理器,其中该第一分配器及 该第二分配器耦合至该ALU阶段中之每一ALU,以允许 指派一ALU执行次序以回应一软体命令。 68.如请求项64之图形处理器,其中该图形处理器经 调适成允许重新组态该处理流程,以在一纯量算术 运算之后具有一资料提取。 69.如请求项64之图形处理器,其中该图形处理器经 调适成允许该主机重新组态该处理流程,以在一纯 量算术运算之前具有一资料提取。 70.一种操作一图形管线之方法,该图形管线具有: 一光栅器,其用以产生像素封包;一资料提取阶段, 其用以提取像素封包之资料;一ALU阶段,其具有至 少一ALU以用于在像素封包上执行纯量算术运算;一 资料写入阶段,其用于写入像素资料;及分配器,其 耦合至该资料提取阶段、该资料写入阶段及该ALU 阶段;该方法包含: 回应第一命令,程式化该等分配器以定义像素封包 经由该资料提取阶段、该ALU阶段及该资料写入阶 段之一第一处理流程;及 回应一第二命令,程式化该等分配器以定义像素封 包经由该资料提取阶段、该ALU阶段及该资料写入 阶段之一第二流程; 其中一软体主机可以复数个处理流程中之任一者 来组态该管线。 71.如请求项70之方法,其中该第一处理流程包括该 资料提取阶段、该ALU阶段及该资料写入阶段,且该 第二处理流程绕过该资料提取阶段。 72.如请求项70之方法,其中该第一处理流程包括该 等ALU之一第一执行次序,且该第二处理流程包括该 等ALU之一第二执行次序。 73.如请求项70之方法,其中该第一处理流程包括先 于一纯量算术运算之一资料提取,且该第二处理流 程包括在一纯量算术运算之后的一资料提取。 74.一种操作一图形管线之方法,该图形管线具有: 一光栅器,其用以产生像素封包;一资料提取阶段, 其用以提取像素封包之资料;一ALU阶段,其具有至 少一ALU以用于在像素封包上执行纯量算术运算;一 资料写入阶段,其用于写入像素资料;及分配器,其 耦合至该资料提取阶段、该资料写入阶段及该ALU 阶段;该方法包含: 接收一来自一软体主机之命令,以将该管线自像素 封包经由该资料提取阶段、该ALU阶段及该资料写 入阶段之一第一处理流程重新组态至像素封包经 由该资料提取阶段、该ALU阶段及该资料写入阶段 之一第二处理流程;及 调整该等分配器,以将该管线自该第一处理流程重 新组态至该第二处理流程。 75.如请求项74之方法,其中该第一处理流程包括该 资料提取阶段、该ALU阶段及该资料写入阶段,且该 第二处理流程绕过该资料提取阶段。 76.如请求项74之方法,其中该第一处理流程包括该 等ALU之一第一执行次序,且该第二处理流程包括该 等ALU之一第二执行次序。 77.如请求项74之方法,其中该第一处理流程包括先 于一纯量算术运算之一资料提取,且该第二处理流 程包括在一纯量算术运算之后的一资料提取。 78.一种图形处理器,其包含: 复数个元件,其用于处理像素封包; 一第一分配器,其耦合至该复数个元件之个别输入 ;及 一第二分配器,其耦合至该复数个元件之个别输出 ; 该第一分配器及该第二分配器经调适成重新组态 像素封包经由该复数个元件之一处理流程,以回应 一来自一主机之命令。 79.如请求项78之图形处理器,其中该等元件为阶段 。 80.一种操作一图形管线之方法,该图形管线具有一 具有用于处理像素封包之复数个元件之图形管线, 该方法包含: 回应第一命令,程式化分配器以定义像素封包经由 该复数个元件之一第一处理流程;及 回应一第二命令,程式化该等分配器以定义像素封 包经由该复数个元件之一第二流程; 其中一软体主机可以复数个处理流程中之任一者 来组态该管线。 81.如请求项80之方法,其中该等元件为阶段。 82.一种在一像素上执行一图形处理运算之方法,其 包含: 对于待在复数个像素上执行之图形功能,识别可在 像素封包上执行的一纯量算术运算序列,以实施该 等图形功能; 将像素指派为偶像素或奇像素; 对每一该像素产生至少两像素封包列,每一像素封 包包括用于在该纯量算术运算序列中待作为运算 元处理之一子组像素属性的至少一栏位,该等至少 两列具有一相关联之指令序列及一用以指示该像 素封包是用于一奇像素还是用于一偶像素的识别 符; 在一群像素封包列中交错一偶像素及一奇像素之 像素封包列,其中该群中之每一列经指派以用于在 连续时脉周期中处理; 在一ALU阶段之复数个算术逻辑单元(ALU)之每一者 中,对一当前之时脉周期接收一像素封包列,并根 据该指令序列在自该像素封包列所读取之至少一 运算元上执行一纯量算术计算; 其中像素封包之处理系在该等ALU中来交错。 83.如请求项82之方法,其中一像素封包列需要一来 自一先前像素封包列之结果,且选择该交错以解决 ALU等待时间。 84.如请求项82之方法,其进一步包含:在每一ALU中储 存偶像素与奇像素两者的一共用组常数値。 85.如请求项82之方法,其进一步包含:在每一ALU中储 存奇像素之一第一组临时値及偶像素之一第二组 临时値。 86.如请求项85之方法,其进一步包含:利用该识别符 来为偶像素之像素封包选择该第一组临时値且为 奇像素之像素封包选择该第二组临时値。 87.如请求项85之方法,其进一步包含:将该等临时値 储存一足够之时间长度以模拟一常数暂存器。 88.一种在一可组态之图形管线之元件中执行一识 别符之一暂存器写入的方法,该可组态之图形管线 具有像素封包经由该图形管线之元件之一个以上 可能的处理流程,该方法包含: 接收一触发该图形管线之该等元件的资料封包,以 发现一用于每一元件之指示该元件在该处理流程 内之位置的识别符;及 每一元件在一组态暂存器中写入一指示该处理流 程内之一相对位置的识别符。 89.如请求项88之方法,其中回应一软体命令来产生 触发该等元件之该资料封包。 90.如请求项88之方法,其中在需要组态资讯之元件 之前之一位置处将该资料封包注入于该管线中,其 中需要组态资讯之每一连续元件在该资料封包中 读取一识别符之一当前値,将该当前値写入至其组 态暂存器,递增该识别符,并将具有一递增识别符 的该资料封包转发至该处理流程的下一元件。 91.如请求项88之方法,其中该等元件包含用于处理 像素封包之算术逻辑单元。 92.一种图形处理器,其包含: 一光栅阶段,其接收关于待光栅化之图原的资料, 该光栅阶段为待处理之每一像素产生复数个像素 封包,每一像素封包包括识别待处理之至少一像素 属性的有效负载资讯,并具有识别待在每一该像素 封包上执行之至少一指令的相关联之旁频带资讯; 一可程式之算术逻辑单元(ALU)阶段,其用于处理该 等像素封包,该ALU阶段包括复数个ALU,每一ALU具有 一组至少一可能之算术运算,该组算术运算系在一 具有一对应之当前指令式命令的传入像素封包上 来执行; 一资料提取阶段,其用以提取该等像素封包之资料 ; 一资料写入阶段,其用以执行自该ALU阶段所接收之 经处理之像素封包的像素资料之一记忆体写入; 一第一分配器,其耦合至该ALU阶段、该资料提取阶 段及该资料写入阶段之个别输入;及 一第二分配器,其耦合至该ALU阶段、该资料提取阶 段及该资料写入阶段之个别输出; 该第一分配器及该第二分配器经调适成重新组态 像素封包经由该资料提取阶段、该ALU阶段及该ALU 写入阶段之一处理流程,以回应一来自一主机之命 令; 其中该ALU阶段之每一ALU经调适成接收一由一软体 识别码所起始之识别封包,每一ALU将该识别封包之 一识别符之一当前値写入至一组态暂存器中,递增 该识别符,并将该识别封包转发至下一ALU。 93.一种图形处理器,其包含: 一图形管线,其具有一组与该图形管线之元件相关 联之分接头点; 一可组态之测试点选择器,其接收来自一软体主机 之命令,该可组态之测试点选择器经调适成监视由 一软体命令所选择之一子组分接头点,并对与该子 组分接头点之每一该分接头点相关联之至少一条 件来计数统计量; 其中对该软体主机收集一子组分接头点的统计量 。 94.如请求项93之图形处理器,其中该图形管线包含 一用于处理像素封包之算术逻辑单元(ALU)链。 95.如请求项94之图形处理器,其中该子组分接头点 系由与该图形管线中之连续元件相关联的两个分 接头点所组成。 96.如请求项95之图形处理器,其中为一指示有效负 载资料能够自一第一元件流动至一第二元件之有 效讯号及一指示该第二元件是否能够接收该有效 负载资料之就緖讯号,而监视该等两个分接头点。 97.如请求项96之图形处理器,其中当侦测到一有效 条件及一就緖条件时对每一时脉周期计数一转移 状态,且当侦测到一有效条件及一未就緖条件时对 每一时脉周期计数一等待状态。 98.如请求项94之图形处理器,其中在与该等ALU相关 联之该等两个所选分接头点中之每一者处监视一 转移状态及一等待状态。 99.如请求项98之图形处理器,其中该转移状态对应 于一处于一就緖状态之下游ALU及一处于一有效状 态之上游ALU。 100.如请求项93之图形处理器,其进一步包含一用于 该软体主机以启用统计量收集之追踪记录暂存器 。 101.如请求项93之图形处理器,其中该可组态之测试 点选择器包括至少一计数器。 102.一种监视一图形处理器之方法,其包含: 接收一选择与一能够将一有效负载发送至一第二 元件之第一元件相关联之两个测试点的命令; 监视该等两个测试点;及 收集关于与该第一元件及该第二元件相关联之至 少两条件的统计量。 103.如请求项102之方法,其中该第一条件为一用于 该第一元件之一有效负载的有效讯号,且该第二条 件为一用于该第二元件之指示到该第二元件就緖 接收一有效负载的就緖讯号。 104.如请求项103之方法,其中对存在一有效讯号及 一就緖讯号之每一时脉周期计数一转移状态,且对 存在一有效讯号但不存在就緖讯号之每一时脉周 期计数一等待状态。 105.如请求项102之方法,其中对该图形处理器之一 预选运算模式来执行该收集统计量。 106.如请求项102之方法,其进一步包含:接收一用以 对该等两个测试点启用统计量收集的命令。 107.如请求项106之方法,其中对该图形处理器之一 所选图形运算启用统计量收集,藉以收集与该图形 运算相关联之统计量。 108.如请求项102之方法,其中启用该收集统计量以 回应一设定一追踪记录暂存器之一値的软体主机 。 图式简单说明: 图1为三维图形之先前技术管线之图; 图2为包括根据本发明之一实施例之可程式之图形 处理器的积体电路之方块图; 图3为根据本发明之一实施例之可程式之图形处理 器的方块图; 图4说明根据本发明之一实施例的例示性像素封包 ; 图5说明根据本发明之一实施例将像素封包配置成 一群像素封包列的例示性配置; 图6为根据本发明之一实施例之单一算术逻辑单元 的方块图; 图7为根据本发明之一实施例之一含两个算术逻辑 单元之序列的方块图; 图8为根据本发明之一实施例之可组态之可程式之 图形处理器的方块图; 图9说明像素封包列根据本发明之一实施例之交错 ; 图10为说明根据本发明之一实施例之具有组态暂 存器之算术逻辑单元的方块图;及 图11为说明根据本发明之一实施例之可组态测试 点选择器的方块图。 相同之参考数字在整个该等图式之若干视图中指 的是对应之部分。
地址 美国