处理三维绘图数据请求的系统及方法

文档序号:6421006阅读:205来源:国知局
专利名称:处理三维绘图数据请求的系统及方法
技本领域本发明为一种应用于三维绘图的数据处理,特别是有关于一种在绘图基本图形的处理程序中,处理三维绘图数据请求的系统及方法,该方法以管理一管线(pipeline)来增进其处理效能。
背景技术
在三维(three-Dimension)绘图技术应用上,绘图基本图形(graphicsprimitive)各顶点(vertex)均有其对应的坐标参数(X,Y,Z,W)、色彩属性参数(包含反光点(specular)、AGBR、扩散AGBR及烟雾(fog))与纹理(texture)参数(U,V)。第一表所示为数个三角形的典型数据排序方式。如依照特性区分,三角形0具有一顶点坐标HT0及顶点属性DT0_d(扩散色彩,diffuse color)、DT0_s(反光色彩,specular color)、DT0_f(烟雾色彩,fog color)、DT0_t(纹理,texture)等。而三角形1及三角形2也分别具有相同的参数,三角形1为HT1、DT1_d、DT1_s、DT1_f及DT1_t,三角形2为HT2、DT2_d、DT2_s、DT2_f及DT2_t。在第一表中以30个循环(cycle)来表示一管线中六个三角形的运算数据。
由第一表中可知,当绘图处理器处理多个三角形时,除了同质坐标(homogeneous coordinates)(X,Y,Z,W)外,其余各个顶点属性参数也必须列出。当处理过程中所使用的纹理及其它参数越多时,就必须列出越多的顶点属性参数。然而,就统计上来说,大约只有一半的三角形会形成(rendered)于屏幕上,其余一半的三角形会被拒绝或是剔除。因此,为增进系统运算效率,必须有一方法来有效降低进入管线(pipeline)中无效数据的数量,亦即避免系统对会被拒绝或剔除的三角形进行运算处理。

第一表发明内容基于前述,为减少对非必要数据的运算处理,增进系统效率,本发明提出一种应用于处理三维绘图基本图形数据请求的系统及方法,其主要目的为通过避免传递无效绘图基本图形的数据参数,使管线循环能更有效的被利用,进而增加系统处理效率。
本发明的处理三维绘图基本图形数据的方法一实施例,包含在一管线中加载一预先决定的绘图基本图形数量的主信息(HEADinformation),并以加载管线中的主信息来执行一测试,以评估绘图基本图形是否可形成,而该测试会有一数个管线循环的潜伏期(latency)。当执行此测试并出现延迟潜伏期时,绘图基本图形的其它数据会被预先撷取(prefetched)进入管线中,以避免一些空管线循环(empty pipelinecycles)发生,以及当绘图基本图形被评估为可形成时,即处理已预先撷取的绘图基本图形数据。
本发明另一实施例,处理绘图基本图形流(graphics primitivesstream)的绘图数据的方法,包含在一管线中加载一预先决定的绘图基本图形数量的主信息,并以加载管线中的主信息来执行一测试,以评估绘图基本图形是否可形成,而该测试则会有一数个管线循环的潜伏期。当执行此测试并出现延迟潜伏期时,绘图基本图形的其它数据会被预先撷取进入管线中,以避免一些空管线循环发生。同时,当预先撷取进行时,若绘图基本图形被评估为无法形成,则中止预先撷取绘图基本图形的数据信息,此时为因应测试潜伏期,将加载其它绘图基本图形的主信息。


图1所示为本发明的数据撷取方式的流程2所示为本发明的数据撷取系统的方块中符号说明200 动态执行绪选择器202 排序/判定与撷取主/数据参数单元204 数据运算单元206 循环式选择器208 执行绪旗标暂存器210a-210f顶点高缓存解码/请求单元212 顶点数据储存装置具体实施方式
本发明的一些实施例会详细描述如下。然而,除了该详细描述外,本发明还可以广泛地在其它的实施例施行。亦即,本发明的范围不受已提出的实施例的限制,而应以本发明提出的申请专利范围为准。
图1为一流程图,表示如何使一绘图基本图形(graphics primitive,例如一三角形)的属性参数(attributes parameters)在进入管线之前,能够不经系统运算处理即知道是否该拒绝或删除(culled)该绘图基本图形。在本发明的较佳实施例中,绘图基本图形包含一三角形(triangle),但也可以是线段(line)、反锯齿线(Anti-aliased line)、点(point)或是粒子图(Point sprites)。接着说明流程图各步骤内容,步骤100表示撷取n个绘图基本图形主参数(HEAD parameter)。主参数中包括绘图基本图形的同质坐标(homogeneous coordinate、如X、Y、Z、W),但并不包括属性参数。步骤102表示由主参数就可以来评估一三角形是否被拒绝或删除。换句话说,由坐标X、Y、Z、W(主参数)就能够使系统决定此三角形是否能形成(render)于屏幕上。假如三角形被评估为无法形成,则会被拒绝或删除。假如被评估为可形成于屏幕上,则于步骤104撷取该三角形的数据参数(DATA parameter,三角形的顶点属性参数)进行处理。步骤106表示n个绘图基本图形主参数是否皆已评估完毕。若尚未评估完毕,则回到步骤102分析下一个绘图基本图形主参数,以决定是否拒绝或删除该绘图基本图形。若已全部评估完毕,则回到步骤100重新撷取新的绘图基本图形主参数。
请参照第二表,为表示图1之一实施例。首先于循环1到循环6中撷取主参数(HT0-HT5)。而为了更方便分析,必须使用一些处理循环来评估绘图基本图形是否拒绝或删除。如第二表中的范例所示,使用了8个循环来处理主参数HT0,并评估是否应该处理该三角形。在这过程当中,留下循环7~9不使用。
如第二表中的范例所示,三角形绘图基本图形0、2、4、5、8及10被删除及拒绝,只有三角形1、3、6、7、9及11需要撷取数据参数。所以,由循环10开始,撷取三角形1的数据(DT1_d、DT1_s、DT1_f、DT1_t)。接着,由循环14开始撷取三角形3的数据。在循环18~循环23期间,撷取其它新的绘图基本图形的主参数信息,因三角形4及5已被删除。因此,可通过分开处理主参数及属性参数、先行对主参数进行评估以及只撷取被承认绘图基本图形数据的方式,来减少处理绘图基本图形所需的总循环数。

第二表第三表用来表示将预先撷取的数据放入空管线循环中的状况。在第三表中,通过在还不知道第一三角形是否删除或拒绝的状况下,先于循环7、8及9中预先撷取第一三角形的数据来变更第一表的范例。例如在不知道三角形0是否删除或拒绝的状况下,先于循环7、8及9中预先撷取三角形0的数据。假如三角形0被删除或拒绝,则一并删除循环7、8及9中的数据。假如三角形0未被删除或拒绝,则三角形0剩下的数据会在的后的循环中被撷取(亦即三角形1的剩余属性数据会在周期10中被撷取)。因此,系统能够通过预先撷取三角形数据于空管线循环的方式来增进执行效率。

第三表除上述方法外,为增进系统处理效率,本发明亦可以一动态方式来评估三角形是否拒绝或删除。请参照图2,一动态执行绪选择器(dynamic thread selector)200可用来有效处理主参数及数据参数,以减少处理循环数。首先,绘图基本图形的索引(Index)分别被储存于顶点高缓存解码/请求单元210a至到210f(vertex cache decoder/requestunit)。一排序/判定与撷取主/数据参数单元(scheduling/arbitration andHEAD/DATA fetching block)202,由顶点高缓存解码/请求单元210其中之一取得绘图基本图形索引。当取得一索引,则同时由该顶点高缓存解码/请求单元210形成一对应绘图基本图形顶点坐标参数的指针(pointer)。一数据运算单元(data calculation block)204,对顶点坐标参数执行必要的操作(以指针在顶点数据储存装置(vertex cache)212,来读取顶点坐标数据),来判定绘图基本图形是否拒绝或删除。此外,当绘图基本图形的数据参数被撷取时,一循环式选择器(round robinselector)206会将新索引加载至空的顶点高缓存解码/请求单元210中。六组执行绪旗标暂存器(thread register flag)208,则用来探知可加载新索引的顶点高缓存解码/请求单元210以及数据运算单元204是否已完成一数据参数的撷取处理。
在排序/判定与撷取主/数据参数单元202中,主参数的处理均优先于数据参数。因此,假如一绘图基本图形(例如一三角形)的坐标参数被数据运算单元204处理并拒绝时,排序/判定与撷取主/数据参数单元202会优先加载另一主参数。使得动态执行绪选择器200能有效的选择所需的主参数或数据参数,以降低处理循环数。
接着以一范例来表示动态循环式选择器200如何处理主参数及数据参数。此范例类似于第二表及第三表的内容,三角形0、2、4、5、8及10是被拒绝或删除的。请参照第四表,因为系统中对主参数的处理均优先于数据参数,所以主参数于前面的循环中被加载,因此可以节省处理循环数。例如循环11中三角形6的主参数优先于三角形1的其它属性参数被加载。动态循环式选择器200充分利用拒绝或删除运算的潜伏期(latency),更有效率地加载主参数。此拒绝或删除运算的潜伏期愈长(例如,24个循环),所能节省下的处理循环数量愈可观。

第四表在本发明中,通过上述的实施例说明如何在读取数据参数前先评估绘图基本图形是否被拒绝或删除,亦即以绘图基本图形的坐标参数较属性参数先行处理的方式来达到提升处理效率的目的。此外,还必须有一技术能够将坐标参数由属性参数中独立出来依序保存。本发明人于台湾专利申请的一篇名为“处理三维绘图数据排序的系统及方法”的发明即叙述了一方法及装置能有效率的将主参数及属性参数有系统的分开排序,此发明的内容于审查本发明时可一并做为参考。
以上所述仅为本发明的较佳实施例,并非用以限定本发明的申请专利范围。在不脱离本发明的实质内容的范畴内仍可予以变化而加以实施,此等变化应仍属本发明的范围。因此,本发明的范畴由所述的申请专利范围所界定。
权利要求
1.一种处理三维绘图数据请求的方法,包含;加载一预先决定的绘图基本图形数量的主信息至一管线中;执行一测试,该测试根据加载该管线中的主信息来评估一绘图基本图形是否可形成,其中该测试具有一已知管线循环数的潜伏期;当执行该测试时,预先撷取该绘图基本图形的数据信息至该管线中,以避免空管线循环发生于该潜伏期内;及当该绘图基本图形被评估为可形成时,处理已预先撷取的该绘图基本图形的数据信息。
2.如权利要求1所述的处理绘图数据的方法,其中该绘图基本图形具有一个或多个顶点;该主信息包含该绘图基本图形顶点的同质坐标;及该数据信息包含该绘图基本图形顶点的属性数据。
3.如权利要求2所述的处理绘图数据的方法,其中该顶点属性数据包含一纹理数据。
4.如权利要求2所述的处理绘图数据的方法,其中该顶点属性数据包含一色彩数据。
5.一种处理三维绘图数据请求的方法,包含;加载一预先决定的绘图基本图形数量的主信息至一管线中;执行一测试,该测试根据加载该管线中的主信息来评估一绘图基本图形是否可形成,其中该测试具有一已知管线循环数的潜伏期;当执行该测试时,预先撷取该绘图基本图形的数据信息至该管线中,以避免空管线循环发生于该潜伏期内;及在预先撷取进行时,当该绘图基本图形被评估为无法形成,则中止预先撷取该绘图基本图形的数据信息,进而撷取一个或多个其它绘图基本图形的主信息以因应该测试潜伏期。
6.如权利要求5所述的处理绘图数据的方法,其中该主信息包含该绘图基本图形顶点的同质坐标;及该数据信息包含该绘图基本图形顶点的属性数据。
7.如权利要求6所述的处理绘图数据的方法,其中该属性数据包含一纹理数据。
8.如权利要求6所述的处理绘图数据的方法,其中该属性数据包含一色彩数据。
9.如权利要求5所述的处理绘图数据的方法,其中该测试根据该主数据来评估该绘图基本图形是否形成于屏幕空间的边界外,或评估该绘图基本图形是否不可见于屏幕空间内。
10.一种处理绘图基本图形的系统,包含;复数个内存,每一该内存由一执行绪识别码来辨识并各自配置来储存一绘图基本图形的索引;复数个译码/请求单元,与该复数个内存一对一耦合,并根据已储存于相耦合的该复数个内存中的该索引来提供一主指针及一数据指针;一暂存器,用来储存复数个执行绪旗标,该复数个执行绪旗标一对一对应于该复数个内存,各该执行绪旗标用以接收一完成执行绪讯号或一拒绝执行绪讯号,并指示该复数个内存其中之一是否可加载一新索引;一循环式选择器,用来接收该绘图基本图形索引,并根据该执行绪旗标指示而将该绘图基本图形索引加载该复数个内存其中之一;一排序回路,用来选择该复数个译码/请求单元其中之一,用以提供该主指针及该数据指针;及一数据运算单元,与该排序回路相耦合,用来接收由该排序回路选择的主指针并于一潜伏期中测试该主指针所指向之一主信息,以决定是否拒绝已接收的该绘图基本图形,同时该数据运算单元与该暂存器耦合,并于该执行绪完成或被拒绝时提供指示给该暂存器。
全文摘要
一种有效处理绘图基本图形数据的方法,其中绘图基本图形数据包含顶点坐标参数及顶点属性参数。绘图基本图形的顶点坐标参数为一同质坐标,用来评估绘图基本图形是否可形成。假如一绘图基本图形可形成,则回复该绘图基本图形的属性参数。假如一绘图基本图形无法形成,则删除该绘图基本图形的属性参数。通过只撷取可形成的绘图基本图形的参数的方式,来增进其系统的执行效率。在一实施例中,预先撷取该绘图基本图形的属性参数,当该绘图基本图形被判定为无法形成时,即删除此预先撷取的数据,再重新撷取其它绘图基本图形数据。
文档编号G06T15/00GK1514407SQ20031011882
公开日2004年7月21日 申请日期2003年11月28日 优先权日2003年4月4日
发明者黄锡霖 申请人:威盛电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1