專利名稱:圖像再現(xiàn)裝置和圖像再現(xiàn)方法
相關(guān)申請(qǐng)的交叉引用本申請(qǐng)按照35U.S.C§119的規(guī)定,要求2003年4月28日提交的日本專利申請(qǐng)No.2003-123986的優(yōu)先權(quán),在這里結(jié)合這個(gè)申請(qǐng)的全文來(lái)作為參考。
發(fā)明的背景發(fā)明的領(lǐng)域本發(fā)明涉及一種圖像再現(xiàn)裝置和一種圖像再現(xiàn)方法。
相關(guān)技術(shù)的說(shuō)明通常,即使是在濃度測(cè)試和α混合中,在從由幀緩沖器讀出當(dāng)前值直到寫(xiě)入處理結(jié)果值的這段時(shí)間中,寫(xiě)入過(guò)程在相同的像素位置執(zhí)行,也不能反映寫(xiě)入過(guò)程的結(jié)果,因此不能獲得正確的處理結(jié)果。因此,在相關(guān)的技術(shù)中,有一種機(jī)構(gòu),將正在處理的像素的位置保存在像素處理器中,并與新近處理的像素的位置進(jìn)行比較,以及當(dāng)新近處理的像素的位置與正在處理的像素匹配的時(shí)候,等待處理的結(jié)束。
圖1是示出了一個(gè)相關(guān)的圖像再現(xiàn)裝置的結(jié)構(gòu)圖。圖1中所示的光柵化器10逐象素地執(zhí)行擴(kuò)展圖像存儲(chǔ)器中的多邊形的處理。
例如,逐個(gè)像素的顏色是由內(nèi)插的顏色確定的,內(nèi)插的顏色是通過(guò)用一種叫做平滑陰影的方法給每個(gè)頂點(diǎn)的。在這種情況下,通過(guò)叫做零緩沖器算法的隱藏面消除算法,像素處理器20將隱藏在另一個(gè)物體后面不可見(jiàn)的物體隱藏(不再現(xiàn))。這也叫做濃度測(cè)試。像素處理器20包括寄存器22和運(yùn)算裝置24,將存儲(chǔ)器30中的幀緩沖器的值和來(lái)自光柵化器10的值順次存儲(chǔ)在寄存器22中,在運(yùn)算裝置24通過(guò)紋理映射和零緩沖器算法進(jìn)行處理,然后再將其存儲(chǔ)在寄存器22中。寄存器22的內(nèi)容輸出到可為幀緩沖器的存儲(chǔ)器30。因此,當(dāng)存儲(chǔ)器30從寄存器22獲得操作結(jié)果時(shí),需要通過(guò)比較來(lái)確定正在被運(yùn)算裝置24處理的處理位置,和將要從存儲(chǔ)器30中獲取的處理位置是否互相匹配,并在這些處理位置相匹配的時(shí)候,等待相應(yīng)的像素的處理的開(kāi)始。
然而,隨著LSI的時(shí)鐘頻率的增長(zhǎng),處理中的等待時(shí)間(從數(shù)據(jù)輸入到圖2中的寄存器22直到數(shù)據(jù)輸出的時(shí)間)變得更長(zhǎng),因此需要保存的像素的數(shù)量增加了,這就導(dǎo)致比較器增大以及由于處理位置之間的匹配引起的阻塞率增長(zhǎng)的問(wèn)題。
另一方面,由于LSI的規(guī)模的增大,能夠安裝在LSI上的像素處理器的并行度增大了,但是在相關(guān)技術(shù)中,安裝的許多像素處理器中只有一部分能夠進(jìn)行在小的多邊形的處理中的操作,因此處理效率沒(méi)有象電路規(guī)模一樣地增長(zhǎng)。
發(fā)明概要為了達(dá)到上述及其它的目的,根據(jù)本發(fā)明的一方面,一種圖像再現(xiàn)裝置,包括段發(fā)生器,配置為基于輸入的像素?cái)?shù)據(jù),生成一組包括不同位置中的像素的段;以及像素處理器,配置為順次地處理由段發(fā)生器生成的段中包括的像素?cái)?shù)據(jù)。
根據(jù)本發(fā)明的另一方面,一種圖像再現(xiàn)裝置,包括數(shù)據(jù)緩沖器,被配置來(lái)保存多邊形的光柵化的結(jié)果,其中,數(shù)據(jù)緩沖器將互相不沖突的光柵化的結(jié)果合并,并將它們作為一個(gè)光柵化的結(jié)果來(lái)保存;以及像素處理器,被配置來(lái)從數(shù)據(jù)緩沖器獲取光柵化的結(jié)果,并順次地處理包括在光柵化的結(jié)果中的像素?cái)?shù)據(jù)。
根據(jù)本發(fā)明的進(jìn)一步的方面,一種圖像再現(xiàn)的方法,包括基于輸入的像素?cái)?shù)據(jù),生成一組包括在不同位置中的像素的段;以及順次地處理包括在生成的段中的像素?cái)?shù)據(jù)。
根據(jù)本發(fā)明的更進(jìn)一步的方面,一種圖像再現(xiàn)的方法,包括保存多邊形的光柵化的結(jié)果,將互相不沖突的光柵化的結(jié)果合并,并將它們作為一個(gè)光柵化的結(jié)果來(lái)保存;以及從數(shù)據(jù)緩沖器獲取光柵化的結(jié)果,并順次地處理包括在光柵化的結(jié)果中的像素?cái)?shù)據(jù)。
根據(jù)本發(fā)明的另一個(gè)方面,一種圖形系統(tǒng)包括存儲(chǔ)要再現(xiàn)的物體的頂點(diǎn)數(shù)據(jù)的存儲(chǔ)器;CPU,配置為從存儲(chǔ)器中讀出頂點(diǎn)數(shù)據(jù)來(lái)執(zhí)行處理,并將處理的結(jié)果作為像素?cái)?shù)據(jù)輸出;以及圖像再現(xiàn)裝置包括段發(fā)生器,配置為基于輸入的像素?cái)?shù)據(jù),生成一組包括不同位置中的像素的段;以及像素處理器,配置為順次地處理由段發(fā)生器生成的段中包括的像素?cái)?shù)據(jù)。
附圖的簡(jiǎn)要說(shuō)明圖1是示出了一個(gè)相關(guān)的圖像再現(xiàn)裝置的結(jié)構(gòu)框圖;圖2是說(shuō)明在相關(guān)圖像再現(xiàn)裝置中存在的一個(gè)問(wèn)題的框圖;圖3是說(shuō)明一個(gè)實(shí)施例中的塊合并的原理圖;圖4是說(shuō)明根據(jù)這個(gè)實(shí)施例的圖像再現(xiàn)裝置的結(jié)構(gòu)框圖;圖5是說(shuō)明該圖像再現(xiàn)裝置的結(jié)構(gòu)的一個(gè)變型的框圖;圖6是說(shuō)明該圖像再現(xiàn)裝置的結(jié)構(gòu)的另一個(gè)變型的框圖;圖7是說(shuō)明該圖像再現(xiàn)裝置的結(jié)構(gòu)的又一個(gè)變型的框圖;圖8是說(shuō)明根據(jù)這個(gè)實(shí)施例的塊合并裝置的結(jié)構(gòu)框圖;圖9是說(shuō)明塊數(shù)據(jù)緩沖器和像素處理器之間的連接關(guān)系的框圖;圖10是說(shuō)明根據(jù)這個(gè)實(shí)施例的塊合并裝置的另一種結(jié)構(gòu)框圖;圖11是示出了在逐象素執(zhí)行沖突確定并且逐象素合并塊的情況下合并兩個(gè)多邊形的例子的圖;圖12是示出了在逐象素執(zhí)行沖突確定并且逐象素合并塊的情況下合并兩個(gè)多邊形的另一個(gè)例子的圖;圖13是一個(gè)流程圖,它說(shuō)明了在逐像素執(zhí)行沖突確定并逐像素合并塊的情況下的合并處理;圖14是示出了在逐象素執(zhí)行沖突確定并且逐標(biāo)記合并塊的情況下合并兩個(gè)多邊形的一個(gè)例子的圖;圖15是示出了在逐象素執(zhí)行沖突確定并且逐標(biāo)記合并塊的情況下合并兩個(gè)多邊形的另一個(gè)例子的圖;圖16是一個(gè)流程圖,它說(shuō)明了在逐像素執(zhí)行沖突確定并以逐標(biāo)記合并塊的情況下的合并處理;圖17是示出了在逐標(biāo)記執(zhí)行沖突確定并且逐標(biāo)記合并塊的情況下合并兩個(gè)多邊形的一個(gè)例子的18是示出了在逐標(biāo)記執(zhí)行沖突確定并且逐標(biāo)記合并塊的情況下合并兩個(gè)多邊形的另一個(gè)例子的圖19是一個(gè)流程圖,它說(shuō)明了在逐標(biāo)記執(zhí)行沖突確定并逐標(biāo)記合并塊的情況下的合并處理;圖20是說(shuō)明根據(jù)這個(gè)實(shí)施例的一種塊數(shù)據(jù)存儲(chǔ)/讀取機(jī)制的框圖;圖21是說(shuō)明圖20中的存儲(chǔ)/讀取機(jī)制中的處理的流程圖;圖22是說(shuō)明根據(jù)這個(gè)實(shí)施例的另一種塊數(shù)據(jù)存儲(chǔ)/讀取機(jī)制的框圖;圖23是一個(gè)流程圖,它說(shuō)明了在圖22中的存儲(chǔ)/讀取機(jī)制中用于確定一個(gè)記錄的步驟,像素處理器就是從這個(gè)記錄開(kāi)始處理的;圖24是說(shuō)明當(dāng)存在若干個(gè)相同的位置標(biāo)記的時(shí),標(biāo)記的沖突確定的圖;圖25是說(shuō)明確定一個(gè)標(biāo)記的處理原理圖,其中像素?cái)?shù)據(jù)就是通過(guò)使用一個(gè)表而被存儲(chǔ);圖26是說(shuō)明圖25中表的內(nèi)容的圖;圖27是示出了一個(gè)例子的圖,這個(gè)例子說(shuō)明了在通過(guò)使用該邏輯電路確定標(biāo)記的情況下的邏輯電路;圖28是說(shuō)明了塊是由矩形形狀內(nèi)鄰接定位的像素組成的一個(gè)例子的圖;圖29是說(shuō)明了塊是由相互遠(yuǎn)離而被定位的像素組成的一個(gè)例子的圖;圖30是示出了裝備有根據(jù)該實(shí)施例圖像再現(xiàn)裝置的實(shí)時(shí)三維圖形系統(tǒng)的硬件結(jié)構(gòu)的實(shí)例圖;圖31是示出了根據(jù)該實(shí)施例圖像再現(xiàn)裝置的結(jié)構(gòu)的實(shí)例圖;以及圖32示出了根據(jù)該實(shí)施例圖像再現(xiàn)裝置的結(jié)構(gòu)的另一實(shí)例圖。
實(shí)施例的詳細(xì)說(shuō)明在該實(shí)施例中,在光柵化處理中,在啟動(dòng)/DDA(數(shù)字微分分析)處理之后,安排了一個(gè)緩沖器,若干個(gè)多邊形的光柵化結(jié)果被緩沖和合并,然后被像素處理器處理。下面將給出進(jìn)一步的細(xì)節(jié)。
圖3是說(shuō)明在這個(gè)實(shí)施例中的合并光柵化結(jié)果的原理圖。如圖3中所示,在該實(shí)施例中,介紹了“塊”的概念,其中相鄰的若干像素被集合在一起。在圖3的例子中,一個(gè)塊是由8×8=64個(gè)像素組成。在該實(shí)施例中,這個(gè)塊是一個(gè)段。通過(guò)使用塊的概念,這就保證了連續(xù)插入的像素是不在相同位置,然后像素處理器將該塊進(jìn)行處理。在小的基本圖形(矩形、多邊形)里,在一個(gè)塊中有效像素的比例很低,因此執(zhí)行如圖3中所示的合并。在圖3的實(shí)施例中,將兩個(gè)基本圖形合并并表示成為一個(gè)塊中的像素。
圖4是示出了根據(jù)該實(shí)施例圖像再現(xiàn)裝置的基本結(jié)構(gòu)框圖。如圖4中所示,在根據(jù)該實(shí)施例的圖像再現(xiàn)裝置中,在光柵化器10和像素處理器10中附加地插入了塊合并裝置100和塊數(shù)據(jù)緩沖器110。
光柵化器10在圖像存儲(chǔ)器上逐象素執(zhí)行擴(kuò)展多邊形的處理。逐個(gè)像素的顏色是由內(nèi)插的顏色確定的,內(nèi)插的顏色是通過(guò)用一種叫做平滑陰影的方法給每個(gè)頂點(diǎn)的。光柵化器10將作為光柵化結(jié)果的逐像素的數(shù)據(jù)輸出到塊合并裝置100。
塊合并裝置100將逐個(gè)像素的數(shù)據(jù)轉(zhuǎn)換為逐塊的數(shù)據(jù),并執(zhí)行數(shù)據(jù)的合并。將由合并產(chǎn)生的數(shù)據(jù)輸出到塊數(shù)據(jù)緩沖器110。在塊合并裝置100中,在合并塊的時(shí)候,基于每個(gè)像素的濃度,會(huì)拋棄具有比較深的濃度的像素?cái)?shù)據(jù)。也就是說(shuō),塊合并裝置100具有濃度測(cè)試的功能。塊數(shù)據(jù)緩沖器110是一個(gè)數(shù)據(jù)緩沖器,并且像素處理器20就是從這塊數(shù)據(jù)緩沖器110中獲取塊數(shù)據(jù)。
像素處理器20處理合并了的塊數(shù)據(jù)。也就是,像素處理器20對(duì)塊數(shù)據(jù)執(zhí)行稱為零緩沖器算法的隱藏面消除算法(濃度測(cè)試功能)。甚至就是在塊合并裝置100具有濃度測(cè)試功能的時(shí)候,像素處理器20也需要執(zhí)行用來(lái)校正隱藏面消除的濃度測(cè)試。
如圖4中所示的圖像再現(xiàn)裝置具有最基本的結(jié)構(gòu),將一個(gè)塊數(shù)據(jù)緩沖器110和一個(gè)像素處理器10提供給一個(gè)塊合并裝置100。在塊數(shù)據(jù)緩沖器110中同時(shí)地存儲(chǔ)一塊或更多的塊數(shù)據(jù)是可能的。
圖5是說(shuō)明該圖像再現(xiàn)裝置的結(jié)構(gòu)的一個(gè)變型的框圖。在圖5的例子中,提供若干像素處理器20給一個(gè)塊合并裝置100,并且在每一個(gè)像素處理器20上固定了一個(gè)存儲(chǔ)器30。在圖5的例子中,提供兩個(gè)像素處理器20給一個(gè)塊合并裝置100。每個(gè)像素處理器20要處理的塊數(shù)據(jù)由塊的位置(X坐標(biāo)、Y坐標(biāo))固定地確定。在塊數(shù)據(jù)緩沖器110和像素處理器20之間建立了一一對(duì)應(yīng),并且塊合并裝置100確定由哪一個(gè)像素處理器20來(lái)處理塊數(shù)據(jù)。
圖6是說(shuō)明該圖像再現(xiàn)裝置的結(jié)構(gòu)的另一個(gè)變型的圖。在圖6的例子中,通過(guò)總線來(lái)連接像素處理器20和存儲(chǔ)器30。該總線可以是單總線或多總線。當(dāng)存儲(chǔ)器30在不同于像素處理器20的芯片上形成的時(shí),圖6中的例子有效的。在這種情況下,每一個(gè)像素處理器20可以訪問(wèn)存儲(chǔ)器30的全部區(qū)域。
圖7是說(shuō)明該圖像再現(xiàn)裝置的結(jié)構(gòu)的又一個(gè)變型的圖。在圖7的例子里,提供了多個(gè)像素處理器20,但是,沒(méi)有限制塊數(shù)據(jù)緩沖器110和像素處理器20之間的連接關(guān)系。也就是,每個(gè)像素處理器20要處理的塊數(shù)據(jù)是任選的,并且當(dāng)像素處理器20可用時(shí)處理下一個(gè)塊數(shù)據(jù)。換句話說(shuō),每一個(gè)像素處理器20可以處理任何位置中的塊數(shù)據(jù)。因此,像素處理器20之間的負(fù)荷分配變得簡(jiǎn)單。然而,需要一個(gè)不能同時(shí)處理相同位置上的塊的機(jī)制。
圖8是詳細(xì)說(shuō)明根據(jù)該實(shí)施例的塊合并裝置100的結(jié)構(gòu)框圖。如圖8所示,根據(jù)該實(shí)施例的塊合并裝置100包括像素合并器120、屏蔽緩沖器122、數(shù)據(jù)緩沖器124以及信號(hào)發(fā)生器126。
像素合并器120檢查由不同圖元所產(chǎn)生的像素是否合并。在圖8的例子中,將塊數(shù)據(jù)緩沖器110中所存儲(chǔ)的塊所包含的像素的深度也輸入到像素合并器120。因此,像素合并器120將存儲(chǔ)在塊數(shù)據(jù)緩沖器110中的像素?cái)?shù)據(jù)的濃度和從光柵化器10輸入的像素?cái)?shù)據(jù)進(jìn)行比較,并拋棄具有比較深的濃度的像素?cái)?shù)據(jù)。即可以說(shuō),圖8中的塊合并裝置100也具有濃度測(cè)試功能。
屏蔽緩沖器122將每一個(gè)像素是否被執(zhí)行寫(xiě)入作為一個(gè)狀態(tài)保存在塊數(shù)據(jù)緩沖器110中。這個(gè)狀態(tài)由每像素1位數(shù)據(jù)組成。
數(shù)據(jù)緩沖器124臨時(shí)地保存每個(gè)像素的參數(shù)?;赗P狀態(tài)和溢出標(biāo)志,信號(hào)發(fā)生器126確定是否刷新塊數(shù)據(jù)緩沖器110,并啟動(dòng)像素處理器20的控制器。
覆蓋(coverage)和像素參數(shù)是從光柵化器10輸入的數(shù)據(jù)。覆蓋是指示像素參數(shù)是有效還是無(wú)效的信息,也就是說(shuō),覆蓋是指示其處于三角形之內(nèi)或之外的信息。RP狀態(tài)是指示像素處理器20是否在進(jìn)行處理中的狀態(tài)信息,它是從像素處理器20輸入的。
從數(shù)據(jù)緩沖器124輸出到塊數(shù)據(jù)緩沖器110的塊數(shù)據(jù)是32位×每像素(6至8個(gè)參數(shù)),它在每個(gè)周期被寫(xiě)入到塊數(shù)據(jù)緩沖器110。塊數(shù)據(jù)緩沖器110確定輸入的塊數(shù)據(jù)是涉及哪一個(gè)塊的,然后將塊數(shù)據(jù)寫(xiě)入到確定的塊中。像素合并器120確定塊數(shù)據(jù)是否實(shí)際寫(xiě)入。也就是,在執(zhí)行了寫(xiě)處理的時(shí)候,像素合并器120將寫(xiě)信號(hào)輸出到塊數(shù)據(jù)緩沖器110。
圖9是示出了塊數(shù)據(jù)緩沖器110和像素處理器20之間的連接關(guān)系。在圖9所示的例子中,提供了16個(gè)塊數(shù)據(jù)緩沖器110和32個(gè)像素處理器20。因此,理論上講,塊數(shù)據(jù)緩沖器110和像素處理器20具有比率為16∶32的全X條結(jié)構(gòu),但是在該實(shí)施例中,采用了將四個(gè)塊數(shù)據(jù)緩沖器110和八個(gè)像素處理器20連接到四根256位總線中的每一根的結(jié)構(gòu)。用1024位的總線將塊合并裝置100和塊數(shù)據(jù)緩沖器110相連。
圖10詳細(xì)地示出了根據(jù)該實(shí)施例的塊合并裝置100的另一種配置的結(jié)構(gòu)框圖。在這個(gè)例子里,將如圖10中所示的信息組提供給每一個(gè)像素。因此,在這個(gè)實(shí)施例中,圖10中所示的信息組的數(shù)目必須和標(biāo)記中的像素的數(shù)目相同。由于在這個(gè)實(shí)施例中,2×2=4個(gè)像素組成一個(gè)標(biāo)記,所以對(duì)于一個(gè)標(biāo)記需要四個(gè)如圖10所示的信息組。
如圖10所示,相應(yīng)于一個(gè)像素的塊合并裝置100包括塊數(shù)據(jù)地址計(jì)算器130、塊刷新控制器132、緩沖器134、值比較電路136以及AND電路138。
塊數(shù)據(jù)地址計(jì)算器130計(jì)算出塊數(shù)據(jù)緩沖器110中的一個(gè)地址,這個(gè)塊數(shù)據(jù)緩沖器110中保存了包括要處理的像素的X和Y坐標(biāo)的塊數(shù)據(jù)。
塊刷新控制器132確定從光柵化器10輸入的像素或標(biāo)記數(shù)據(jù)與塊刷新控制器132中的像素或標(biāo)記數(shù)據(jù)是否互相沖突。換句話說(shuō),塊刷新控制器132根據(jù)數(shù)據(jù)的像素濃度來(lái)確定留下哪個(gè)數(shù)據(jù)。
當(dāng)數(shù)據(jù)互相沖突的時(shí)候,塊刷新控制器132恰好在這時(shí)將塊數(shù)據(jù)緩沖器110中的塊數(shù)據(jù)發(fā)送到像素處理器20,定義一個(gè)新的塊,并將從光柵化器10輸入的像素?cái)?shù)據(jù)寫(xiě)入新的塊。此外,如果基于像素濃度等等能夠確定要留下的數(shù)據(jù),塊合并裝置100確定是從光柵化器10輸入的像素?cái)?shù)據(jù)被拋棄,還是從光柵化器10輸入的像素?cái)?shù)據(jù)被重寫(xiě)入塊數(shù)據(jù)緩沖器110。
緩沖器134是簡(jiǎn)單的FIFO,并且保存有上述處理期間從光柵化器10輸入的像素?cái)?shù)據(jù)。值比較電路136將從光柵化器10輸入的像素濃度濃度1與塊數(shù)據(jù)緩沖器110中的像素濃度濃度2進(jìn)行比較。然后,它根據(jù)濃度1濃>度2、濃度1≥濃度2、濃度1≤濃度2、濃度1<濃度2、濃度1≠濃度2、濃度1濃=度2以及常規(guī)重寫(xiě)來(lái)確定一個(gè)值比較結(jié)果。也就是說(shuō),基于值比較電路136的比較結(jié)果,塊合并裝置100執(zhí)行濃度測(cè)試并放棄從光柵化器10輸入的像素?cái)?shù)據(jù)和塊數(shù)據(jù)緩沖器110中相同位置的像素?cái)?shù)據(jù)中的一個(gè)。
在從光柵化器10輸入的像素是無(wú)效的并且塊數(shù)據(jù)緩沖器110中的像素是也無(wú)效的時(shí)候,AND電路138執(zhí)行AND操作。
圖11和圖12是說(shuō)明了逐像素地合并塊的處理原理圖,圖11是說(shuō)明了當(dāng)多邊形并列地安排在不同的塊中時(shí)的合并的圖,而圖12說(shuō)明了當(dāng)多邊形在不同的塊中相互重疊的時(shí)的合并的圖。
在如圖11和12所示的合并處理中,逐像素地確定各塊中的像素是否相互沖突,并以逐像素地來(lái)合并塊。在圖11中的例子中,假定存儲(chǔ)在塊數(shù)據(jù)緩沖器110中的塊1和從光柵化器10輸入的塊2在相同的位置。在圖11中的例子中,存儲(chǔ)在塊數(shù)據(jù)緩沖器110中的塊1中的像素?cái)?shù)據(jù)與從光柵化器10輸入的塊2中的像素?cái)?shù)據(jù)不互相重疊。因此將來(lái)自兩個(gè)多邊形的像素?cái)?shù)據(jù)合并到一個(gè)塊1中,并且作為一個(gè)塊數(shù)據(jù)存儲(chǔ)在塊數(shù)據(jù)緩沖器110中。因此,這兩個(gè)多邊形的像素由一個(gè)像素處理器20來(lái)進(jìn)行處理。
另一方面,在圖12中的例子中,存儲(chǔ)在塊數(shù)據(jù)緩沖器110中的塊1中的像素?cái)?shù)據(jù)和從光柵化器10輸入的塊2中的像素?cái)?shù)據(jù)彼此重疊。也就是,這些像素?cái)?shù)據(jù)在相同的X坐標(biāo)和Y坐標(biāo)上。因此,僅僅將塊2中的新的像素加到塊1中沒(méi)有數(shù)據(jù)存在的像素上,而將剩余的塊2中的像素生成作為新的塊2的像素。因此,這兩個(gè)多邊形的像素被分別地作為兩塊塊數(shù)據(jù)存儲(chǔ)在塊數(shù)據(jù)緩沖器110中,并分別地由像素處理器20來(lái)進(jìn)行處理。
在如圖11和圖12中所示的合并方法中,占空系數(shù)增加了,但是,下一像素的第一推導(dǎo)計(jì)算根據(jù)合并的結(jié)果而不同。
圖13是一個(gè)用于說(shuō)明象圖11和圖12中所示那樣,逐個(gè)像素的合并處理的流程圖。如圖13所示,確定包括從光柵化器10輸入的光柵化的位置的塊,是否存在于塊數(shù)據(jù)緩沖器110中,如果這個(gè)塊存在,那么獲取這個(gè)塊(步驟S110)。步驟S110中的這個(gè)處理是由塊合并裝置100的塊數(shù)據(jù)地址計(jì)算器130來(lái)執(zhí)行。
然后,塊合并裝置100獲取一個(gè)標(biāo)記中的像素(步驟S120)。接下來(lái),塊合并裝置100確定要合并的兩個(gè)塊是否在相同的位置,以及在各標(biāo)記中是否有任何像素發(fā)生了沖突(步驟S130)。當(dāng)沒(méi)有任何像素發(fā)生沖突的時(shí)候(步驟S130否),附加地將像素?cái)?shù)據(jù)寫(xiě)入到現(xiàn)有的塊中(步驟S170)。
另一方面,如果有任何像素發(fā)生了沖突(步驟S130是),那么,僅僅將不沖突的像素附加地寫(xiě)入到現(xiàn)有的塊,并從寫(xiě)的數(shù)據(jù)中刪除已經(jīng)寫(xiě)入的像素?cái)?shù)據(jù)(步驟S140)。接下來(lái),在刷新了塊(步驟S150)之后,塊合并裝置100將塊清零(步驟S160)。然后,塊合并裝置100將剩余的像素?cái)?shù)據(jù)寫(xiě)入到這個(gè)新的塊中。
從步驟130到步驟170的處理是由塊合并裝置100的塊刷新控制器132來(lái)執(zhí)行的。關(guān)于沖突是否發(fā)生了的狀態(tài)確定是由值比較電路136和AND電路138來(lái)執(zhí)行的。
然后,光柵化器10來(lái)確定光柵化是否結(jié)束了(步驟S180)。當(dāng)光柵化沒(méi)有結(jié)束的時(shí)候(步驟S180否),光柵化器10移到下一個(gè)標(biāo)記(步驟S190),如果在移動(dòng)之后存在一個(gè)包括光柵化位置的塊,獲取這個(gè)塊(步驟S200),然后,重復(fù)上述從步驟S120開(kāi)始的處理。步驟S200的處理是由塊合并裝置100的塊數(shù)據(jù)地址計(jì)算器130來(lái)執(zhí)行的。
另一方面,在步驟S180中,確定光柵化已經(jīng)結(jié)束之后(步驟S是),結(jié)束這個(gè)處理。
圖14和圖15是說(shuō)明以逐個(gè)標(biāo)記為基礎(chǔ)的合并塊的處理原理圖。如上所述,在該實(shí)施例中,一個(gè)標(biāo)記是由2×2=4個(gè)像素組成的。圖14是當(dāng)多邊形并列地安排在不同的塊中時(shí),說(shuō)明合并的圖,而圖15說(shuō)明了當(dāng)多邊形在不同的塊中相互重疊的時(shí)候的合并的圖。
在如圖14和15所示的合并處理中,以逐個(gè)像素為基礎(chǔ)確定各塊中的像素是否相互沖突,并以逐個(gè)標(biāo)記為基礎(chǔ)來(lái)合并塊。在圖14中的例子中,存儲(chǔ)在塊數(shù)據(jù)緩沖器110中的塊1中的像素?cái)?shù)據(jù),和從光柵化器10輸入的塊2中的像素?cái)?shù)據(jù)并沒(méi)有逐個(gè)像素地重疊。因此將由兩個(gè)多邊形生成的像素?cái)?shù)據(jù)合并到一個(gè)塊1中,并且作為一個(gè)塊數(shù)據(jù)存儲(chǔ)在塊數(shù)據(jù)緩沖器110中。因此,這兩個(gè)多邊形的像素由一個(gè)像素處理器20來(lái)進(jìn)行處理。
另一方面,在圖15中的例子中,存儲(chǔ)在塊數(shù)據(jù)緩沖器110中的塊1中的像素?cái)?shù)據(jù)和從光柵化器10輸入的塊2中的像素?cái)?shù)據(jù),以逐個(gè)像素為基礎(chǔ)地彼此重疊。也就是,這些像素?cái)?shù)據(jù)在相同的X坐標(biāo)和Y坐標(biāo)上。因此僅僅將塊2中的沒(méi)有像素沖突的標(biāo)記作為新的像素(標(biāo)記)加到塊中,也就是,當(dāng)一個(gè)標(biāo)記中的四個(gè)像素中的任何一個(gè)和現(xiàn)有的標(biāo)記中的像素沖突的時(shí)候,不將這四個(gè)像素加到現(xiàn)有的塊中。將剩余的塊2中的像素(標(biāo)記)寫(xiě)入到新的塊2的像素(標(biāo)記)中。從而,這兩個(gè)多邊形的像素作為兩塊塊數(shù)據(jù)分別地存儲(chǔ)在塊數(shù)據(jù)緩沖器110中,并分別地由像素處理器20來(lái)進(jìn)行處理。
與如圖11和圖12中所示的合并方法相比,圖14和圖15中所示的合并方法一樣的方面是,占空系數(shù)輕微增加了,下一像素的第一推導(dǎo)計(jì)算根據(jù)合并的結(jié)果而不同。
圖16是一個(gè)用于說(shuō)明象圖14和圖15中所示的逐個(gè)標(biāo)記的合并處理流程圖。圖16中所示的合并處理,與圖13中所示的合并處理在步驟S220不同。
也就是,在圖16中,在步驟120之后,需要確定是否在相同的位置存在一個(gè)塊,以及在組成塊的標(biāo)記中的任何一個(gè)像素是否發(fā)生了沖突(步驟SS220)。當(dāng)沒(méi)有任何沖突發(fā)生的時(shí)候(步驟S220否),將標(biāo)記作為像素?cái)?shù)據(jù)寫(xiě)入到現(xiàn)有的塊中(步驟S170)。
另一方面,如果標(biāo)記中的任一像素發(fā)生了沖突(步驟S220是),那么,刷新塊(步驟S150)并將塊清零(步驟S160)。也就是,將標(biāo)記中的同時(shí)處理的四個(gè)像素全部寫(xiě)入到現(xiàn)有的塊數(shù)據(jù)緩沖器110或是寫(xiě)入到新生成的塊中。
圖17和圖18是說(shuō)明以逐個(gè)標(biāo)記為基礎(chǔ)地執(zhí)行沖突確定,并以逐個(gè)標(biāo)記為基礎(chǔ)合并塊的處理原理的圖。圖17是說(shuō)明了當(dāng)多邊形并列地安排在不同的塊中的時(shí)候的合并的圖,而圖18說(shuō)明了當(dāng)多邊形在不同的塊中相互重疊的時(shí)候的合并的圖。
在如圖17和18所示的合并處理中,以逐個(gè)標(biāo)記為基礎(chǔ)確定各塊中的像素是否相互沖突,并以逐個(gè)標(biāo)記為基礎(chǔ)來(lái)合并塊。在圖17中的例子中,基于逐個(gè)象素,存儲(chǔ)在塊數(shù)據(jù)緩沖器110中的塊1中的像素?cái)?shù)據(jù),和從光柵化器10輸入的塊2中的像素?cái)?shù)據(jù)彼此并不重疊,但是基于逐個(gè)標(biāo)記,它們就互相重疊。
因此,將由兩個(gè)多邊形生成的像素?cái)?shù)據(jù)合并到塊1和塊2中。從而,這兩個(gè)多邊形地像素由一個(gè)像素處理器20來(lái)進(jìn)行處理。
相似地,圖18中的例子也一樣,基于逐個(gè)標(biāo)記,存儲(chǔ)在塊數(shù)據(jù)緩沖器110中的塊1中的像素?cái)?shù)據(jù)和從光柵化器10輸入的塊2中的像素?cái)?shù)據(jù)彼此重疊。也就是,當(dāng)已經(jīng)將像素?cái)?shù)據(jù)寫(xiě)入到相同位置上的標(biāo)記中的時(shí)候,不論相同位置上的像素?cái)?shù)據(jù)是否實(shí)際上存在,標(biāo)記互相沖突是確定的。
因此僅僅將塊2中沒(méi)有發(fā)生沖突的標(biāo)記附加地寫(xiě)入到塊1,換句話說(shuō)就是,如果已經(jīng)將像素?cái)?shù)據(jù)已經(jīng)寫(xiě)入了位于相同位置的現(xiàn)有標(biāo)記,那么不需要將相同位置上的標(biāo)記加到現(xiàn)有的塊中。將塊2中剩余的像素(標(biāo)記)寫(xiě)入到新的塊2。從而,這兩個(gè)多邊形的像素作為兩塊塊數(shù)據(jù)分別地存儲(chǔ)在塊數(shù)據(jù)緩沖器110中,并分別地由像素處理器20來(lái)進(jìn)行處理。
圖17和圖18中所示的合并方法中,占空系數(shù)增加了,但在標(biāo)記中對(duì)下一像素的第一推導(dǎo)計(jì)算是不變的。由此,合并機(jī)制可以簡(jiǎn)化。也就是,通過(guò)僅僅確定存儲(chǔ)在塊數(shù)據(jù)緩沖器110中的塊數(shù)據(jù)以逐個(gè)標(biāo)記為基礎(chǔ)是有效還是無(wú)效,就能確定是否能將包括從光柵化器10輸入的有效像素的標(biāo)記,附加地的寫(xiě)入塊數(shù)據(jù)緩沖器110中。
圖19是一個(gè)用于說(shuō)明象圖17和圖18中所示的逐個(gè)標(biāo)記的合并處理的流程圖。圖19中所示的合并處理,與圖16中所示的合并處理在步驟S240不同。
也就是,在圖19中的合并處理中,在步驟120之后,需要確定是否在相同的位置存在一個(gè)塊,以及是否已經(jīng)將像素?cái)?shù)據(jù)寫(xiě)入到了相同位置上的標(biāo)記中(步驟SS240)。當(dāng)沒(méi)有將像素?cái)?shù)據(jù)寫(xiě)入到相同位置上的標(biāo)記的時(shí)候(步驟S240否),將標(biāo)記作為像素?cái)?shù)據(jù)寫(xiě)入到現(xiàn)有的塊中(步驟S170)。
另一方面,如果已經(jīng)將像素?cái)?shù)據(jù)寫(xiě)入到了相同位置上的標(biāo)記中(步驟SS240是),那么,刷新塊(步驟S150)并將塊清零(步驟S160)。然后,將這個(gè)標(biāo)記中的像素?cái)?shù)據(jù)寫(xiě)入到新的塊中。
順便說(shuō)一句,到目前為止,通過(guò)圖11至圖19說(shuō)明的塊的合并中,還沒(méi)有考慮每一個(gè)像素的濃度,這點(diǎn)是闡明了的。也就是執(zhí)行從圖11至圖19中的合并的塊合并裝置100,被認(rèn)為是不包括濃度測(cè)試功能的,或是被認(rèn)為是在再現(xiàn)例如半透明的多邊形這樣的不能濃度測(cè)試的多邊形的時(shí)候使用的。
圖20是示出了一種存儲(chǔ)/讀取機(jī)構(gòu)的實(shí)施例圖,這種存儲(chǔ)/讀取機(jī)構(gòu)允許塊合并裝置100從塊數(shù)據(jù)緩沖器110讀取塊數(shù)據(jù),并且允許像素處理器20從塊數(shù)據(jù)緩沖器110獲取塊數(shù)據(jù)。在圖20中的例子中,存儲(chǔ)/讀取機(jī)構(gòu)是由多個(gè)合并數(shù)據(jù)緩沖器200組成的。合并數(shù)據(jù)緩沖器200的有效標(biāo)記v、比較標(biāo)志c以及塊位置x和y是通過(guò)塊合并裝置100的塊數(shù)據(jù)地址計(jì)算器130形成的。塊數(shù)據(jù)d指示塊數(shù)據(jù)緩沖器110中塊數(shù)據(jù)的存儲(chǔ)區(qū)域。
塊數(shù)據(jù)緩沖器110中的記錄可以分類為,正在由像素處理器20處理的塊,正在等待像素處理器20處理的有效塊,以及已經(jīng)被像素處理器20處理了的無(wú)效塊。
有效標(biāo)志v指示有效塊數(shù)據(jù)是否存儲(chǔ)在合并數(shù)據(jù)緩沖器200的每一個(gè)記錄中。圖20中的例子示出,當(dāng)有效標(biāo)志v為1的時(shí)候,該記錄有效,而當(dāng)有效標(biāo)志v為0的時(shí)候,該記錄無(wú)效。
比較標(biāo)志c指示該記錄是否是要用塊合并裝置100來(lái)比較的塊。在圖20的例子中,當(dāng)比較標(biāo)志c為1的時(shí)候,塊合并裝置100將塊的記錄與從光柵化器10輸入的塊進(jìn)行比較,而當(dāng)比較標(biāo)志c為0的時(shí)候,它不進(jìn)行比較。當(dāng)塊合并裝置100新寫(xiě)入一個(gè)記錄的時(shí)候,比較標(biāo)志c開(kāi)啟,設(shè)置為1。在寫(xiě)入時(shí)發(fā)生了沖突的時(shí)候,記錄的比較標(biāo)志c關(guān)閉,設(shè)置為0。也就是,關(guān)于已經(jīng)合并了的塊,它的比較標(biāo)記c為0。同樣關(guān)于由像素處理器20開(kāi)始其的處理的記錄,它的比較標(biāo)記c也設(shè)為0。因此,在處理中,通過(guò)塊合并裝置100可以避免在塊中的錯(cuò)誤的重寫(xiě)入。
塊位置x和y保存塊的X和Y坐標(biāo)(位置信息)。在圖20的例子中,塊位置x和y各為14位的信息。塊合并裝置100能夠根據(jù)這些塊位置x和y,確定在相同位置上的塊是否存在于塊數(shù)據(jù)緩沖器110中。
塊數(shù)據(jù)d是8×8=64像素的信息。也就是,塊數(shù)據(jù)d是記錄中的具體像素?cái)?shù)據(jù)。
塊合并裝置100指定這些有效標(biāo)記v、比較標(biāo)記c以及塊位置x和y來(lái)訪問(wèn)塊數(shù)據(jù)緩沖器110。在命中的情況下,塊合并裝置100能夠獲取塊數(shù)據(jù)d,但是在沒(méi)有命中的情況下,沒(méi)有塊數(shù)據(jù)存在,因此新生成一個(gè)塊。
開(kāi)始指針(begin pointer begin)是指示下一個(gè)要處理的塊數(shù)據(jù)記錄的指針。因此,像素處理器20從由開(kāi)始指針指示的記錄中取出塊數(shù)據(jù)并處理它。當(dāng)由像素處理器20進(jìn)行的處理開(kāi)始時(shí),開(kāi)始指針移動(dòng)到下一個(gè)記錄。
關(guān)于處理已經(jīng)開(kāi)始的記錄,像素處理器20將比較標(biāo)記c設(shè)置為0。此外,關(guān)于其處理已經(jīng)結(jié)束的記錄,像素處理器20將有效標(biāo)記v設(shè)置為0。
圖21是說(shuō)明圖20中的存儲(chǔ)/讀取機(jī)構(gòu)的處理內(nèi)容的流程圖。如圖21所示,第一次獲取了標(biāo)記位置(步驟S300)。然后獲取一個(gè)塊位置(步驟S310)。
接下來(lái),獲取像素處理器數(shù)(M)。該像素處理器數(shù)(M)是用于指定多個(gè)像素處理器20中的哪一個(gè)來(lái)執(zhí)行處理的信息。通過(guò)指定來(lái)執(zhí)行處理的像素處理器20,來(lái)指定執(zhí)行塊合并的塊合并裝置100。步驟S300、步驟S310和步驟S320的處理是由光柵化器10來(lái)實(shí)現(xiàn)的。
其后,指定的塊合并裝置100搜索合并數(shù)據(jù)緩沖器200,并確定作為一個(gè)將被處理的目標(biāo)的那個(gè)塊現(xiàn)在是否存在于塊數(shù)據(jù)緩沖器110中(步驟S330)。
當(dāng)作為要處理的目標(biāo)的那個(gè)塊存在于合并數(shù)據(jù)緩沖器200中時(shí)(步驟S330是),需要確定像素之間是否發(fā)生了沖突(步驟S350)。
當(dāng)在像素之間沒(méi)有發(fā)生沖突的時(shí)候(步驟S350否),將從光柵化器10輸入的標(biāo)記寫(xiě)入到合并數(shù)據(jù)緩沖器200中的塊數(shù)據(jù)d中(步驟S370)。
當(dāng)在步驟S350中,確定像素之間發(fā)生了沖突的時(shí)候(步驟S350是),或是在上述的步驟S330中,確定作為要處理的目標(biāo)的塊沒(méi)有存在于合并數(shù)據(jù)緩沖器200中時(shí)(步驟S330否),塊合并裝置100一直等待直到檢測(cè)到一個(gè)無(wú)效塊。換句話說(shuō)就是,它一直等待直到檢測(cè)到允許新的寫(xiě)入。然后,將標(biāo)記寫(xiě)入到新的塊(步驟S370)。
步驟S330、步驟S350、步驟S360、以及步驟S370中的處理是由塊合并裝置100來(lái)實(shí)現(xiàn)的。
在步驟S370之后,需要確定光柵化是否結(jié)束(步驟S380)。當(dāng)光柵化沒(méi)有結(jié)束的時(shí)候(步驟S380否),執(zhí)行到下一個(gè)標(biāo)記的移動(dòng)(步驟S390),然后重復(fù)上述從步驟S300開(kāi)始的處理。
另一方面,當(dāng)光柵化結(jié)束了的時(shí)候(步驟380是),這個(gè)處理結(jié)束了。步驟S380和步驟S390中的處理是由光柵化器10來(lái)實(shí)現(xiàn)的。
圖22是示出了存儲(chǔ)/讀取機(jī)構(gòu)的結(jié)構(gòu)一種變型的圖。如圖22中所示的存儲(chǔ)/讀取機(jī)構(gòu)是通過(guò)將一個(gè)合并狀態(tài)緩沖器210加到合并數(shù)據(jù)緩沖器200上來(lái)配置的。
合并狀態(tài)緩沖器210包括相同位置的塊的順序o,以及塊中無(wú)效的像素?cái)?shù)f。相同位置的塊的順序o是一種如下情況的信息,即當(dāng)多個(gè)相同位置的上的塊存在于塊數(shù)據(jù)緩沖器110的時(shí)候,用來(lái)指定它們的生成順序的信息。也就是,當(dāng)在某個(gè)位置只有一個(gè)塊存在的時(shí)候,相同位置的塊的順序o為0,而當(dāng)有兩個(gè)塊存在的時(shí)候,第一個(gè)生成塊的相同位置的塊順序o為0,第二個(gè)生成塊的相同位置的塊順序o為1。以下,與上述相似,每一次生成相同位置上的塊,相同位置的塊的順序o的值逐一增加。另一方面,將正在被像素處理器20處理的記錄的相同位置的塊順序o存儲(chǔ)為15,這是最大值。
塊中無(wú)效的像素?cái)?shù)f是指示有多少無(wú)效的塊數(shù)據(jù)存在于記錄中的信息。在這個(gè)實(shí)施例中,無(wú)效的像素?cái)?shù)的可能值是0至64。然而,將正在被像素處理器20處理的記錄的塊中無(wú)效的像素?cái)?shù)f存儲(chǔ)為127,這是最大值。
此外,如圖22中所示的塊數(shù)據(jù)緩沖器110,指示下一個(gè)要被像素處理器20處理的記錄的開(kāi)始指針不存在。當(dāng)像素處理器20試圖從塊數(shù)據(jù)緩沖器110獲取塊數(shù)據(jù)的時(shí)候,它選擇塊中具有最小無(wú)效的像素?cái)?shù)f的記錄,并從這個(gè)記錄開(kāi)始處理。在圖22的例子中,塊中最小無(wú)效的像素?cái)?shù)f是3,因此像素處理器20從這個(gè)記錄獲取塊數(shù)據(jù)并處理它。
當(dāng)存在多個(gè)相同位置的塊時(shí),選擇具有最小的相同位置的塊順序o的記錄。接下來(lái),按照塊數(shù)據(jù)生成的順序來(lái)執(zhí)行像素處理器20中的處理。
關(guān)于通過(guò)像素處理器20啟動(dòng)其處理的記錄,將比較標(biāo)記c設(shè)為0,以及將相同位置的塊順序o和塊中無(wú)效的像素?cái)?shù)f各自設(shè)為最大值。此外,將所有的相同位置的塊的順序o的值減去一。當(dāng)像素處理器20中的處理結(jié)束的時(shí)候,將有效標(biāo)記v設(shè)為0。
還應(yīng)注意到,如圖22中所示的塊數(shù)據(jù)緩沖器110的合并處理和圖21中是一樣。但是,確定從哪個(gè)記錄開(kāi)始由像素處理器20進(jìn)行處理的過(guò)程,與圖21中的不同。
圖23是說(shuō)明確定從那個(gè)記錄開(kāi)始由像素處理器20進(jìn)行處理的過(guò)程流程圖。
如圖23中所示,像素處理器20重復(fù)地訪問(wèn)合并狀態(tài)緩沖器210中的各個(gè)記錄,選擇塊中具有最小無(wú)效像素?cái)?shù)f和最小相同位置的塊的順序o的記錄,并獲取這個(gè)記錄中的塊數(shù)據(jù)d(步驟S410),然后,它開(kāi)始處理獲取到的塊數(shù)據(jù)d(步驟S420)。
接下來(lái),需要確定是否有任何其它相同位置的塊存在于塊數(shù)據(jù)緩沖器110中(步驟S430)。如果沒(méi)有其它相同位置的塊存在(步驟S430否),結(jié)束處理。
另一方面,如果存在其它相同位置的塊,將所有相同位置的塊的順序o的值減去一,(步驟S440)。然后,結(jié)束處理。
圖24是說(shuō)明與上述內(nèi)容不同的合并處理的原理圖。一個(gè)2×2的方框代表一個(gè)標(biāo)記。這里假定標(biāo)記SP1至SP6是按照時(shí)間的順序輸入的。
在輸入標(biāo)記SP1的這一時(shí)刻,生成新的標(biāo)記SP10(父標(biāo)記),并將像素?cái)?shù)據(jù)存儲(chǔ)在其中。接著,輸入標(biāo)記SP2,但是,標(biāo)記SP2中的像素?cái)?shù)據(jù)與現(xiàn)有的標(biāo)記SP10中的像素?cái)?shù)據(jù)相沖突,因此生成一個(gè)新的標(biāo)記SP11(子標(biāo)記),并將該像素?cái)?shù)據(jù)存儲(chǔ)在其中。
其后,輸入標(biāo)記SP3,由于標(biāo)記SP3中的像素?cái)?shù)據(jù)不和第一標(biāo)記SP10中的像素?cái)?shù)據(jù)相沖突,所以將它存儲(chǔ)在標(biāo)記SP10中。
然后,輸入標(biāo)記SP4,但是,這個(gè)標(biāo)記SP4中的像素?cái)?shù)據(jù)和現(xiàn)有的標(biāo)記SP10和SP11中的像素?cái)?shù)據(jù)相沖突,由此,生成一個(gè)新的標(biāo)記SP12(孫標(biāo)記),并將像素?cái)?shù)據(jù)存儲(chǔ)在其中。
其后,輸入標(biāo)記SP5,但是,這個(gè)標(biāo)記SP5中的像素?cái)?shù)據(jù)和現(xiàn)有的標(biāo)記SP10、SP11和標(biāo)記SP12中的像素?cái)?shù)據(jù)相沖突,由此,生成一個(gè)新的標(biāo)記SP13(曾孫標(biāo)記),并將像素?cái)?shù)據(jù)存儲(chǔ)在其中。
接下來(lái),輸入SP6,由于標(biāo)記SP6中的像素?cái)?shù)據(jù)不和現(xiàn)有的標(biāo)記SP11中的像素?cái)?shù)據(jù)相沖突,所以將它存儲(chǔ)在標(biāo)記SP11中。
如上所述,在圖24中的例子中,當(dāng)在相同的位置上存在多個(gè)標(biāo)記的時(shí)候,從現(xiàn)有的標(biāo)記中找到一個(gè)其中沒(méi)有沖突發(fā)生的標(biāo)記。
圖25是說(shuō)明一種用于確定通過(guò)使用表300而將輸入的標(biāo)記中的像素?cái)?shù)據(jù)進(jìn)行存儲(chǔ)的方法的圖。在圖25中,將現(xiàn)有的標(biāo)記(在這個(gè)例子中是,父標(biāo)記、子標(biāo)記和孫標(biāo)記)和新輸入的標(biāo)記輸入到表300?;谳斎氲臉?biāo)記和存儲(chǔ)在表300中的信息,表300輸出新輸入的標(biāo)記將要寫(xiě)入其處的標(biāo)記。在這個(gè)例子里,新輸入的標(biāo)記可以寫(xiě)入子標(biāo)記中,并輸出這個(gè)信息。
如圖26中所示,在表300中存儲(chǔ)相應(yīng)于分別存儲(chǔ)在父標(biāo)記、子標(biāo)記、孫標(biāo)記和曾孫標(biāo)記中所有模式的像素?cái)?shù)據(jù)、以及存儲(chǔ)在新輸入的標(biāo)記中的所有模式的像素?cái)?shù)據(jù)的輸出的目標(biāo)。
圖27是示出了通過(guò)邏輯電路配置表300的一實(shí)施例圖。如圖27中所示,這個(gè)邏輯電路是通過(guò)組合如圖所示的AND電路AN1、NOR電路NR1以及OR電路OR1來(lái)構(gòu)成的。
在每一個(gè)標(biāo)記中,1指示像素?cái)?shù)據(jù)存在的情況,0指示沒(méi)有像素?cái)?shù)據(jù)存在的情況。通過(guò)輸入有關(guān)新輸入的標(biāo)記中的像素?cái)?shù)據(jù)、父標(biāo)記、子標(biāo)記、孫標(biāo)記和曾孫標(biāo)記的位置信息,可輸入2位的操作結(jié)果a[1]、a
。
當(dāng)操作結(jié)果a[1]、a
是1、1的時(shí)候,這意味著寫(xiě)入的目標(biāo)是父標(biāo)記;當(dāng)操作結(jié)果a[1]、a
是1、0的時(shí)候,這意味著寫(xiě)入的目標(biāo)是子標(biāo)記;當(dāng)操作結(jié)果a[1]、a
是0、1的時(shí)候,這意味著寫(xiě)入的目標(biāo)是孫標(biāo)記;當(dāng)操作結(jié)果a[1]、a
是0、0的時(shí)候,這意味著寫(xiě)入的目標(biāo)是曾孫標(biāo)記。
圖28示出以與上述描述相似的信息組形式組成的塊的例子。在圖28中,一個(gè)塊是由4×4=16個(gè)像素組成的。因此,圖28示出八個(gè)塊。如果每個(gè)塊是由被定位在矩形中相互鄰接的像素組成的,那么,鄰接的像素之間的的操作是很便利的。
圖29示出了一個(gè)塊是以交錯(cuò)的形式組成的例子。在圖29中,一個(gè)單元是由8×8=64個(gè)像素組成。在一個(gè)單元中,位于“1”中的像素被定義為一個(gè)塊;位于“2”中的像素被定義為一個(gè)塊;位于“3”中的像素被定義為一個(gè)塊;位于“4”中的像素被定義為一個(gè)塊。也就是,塊定義為彼此之間遠(yuǎn)離的一組像素。
假定這里存在四個(gè)像素處理器20,這四個(gè)像素處理器可以分立地處理四個(gè)塊。也就是,根據(jù)圖29中的一個(gè)方面,像素處理器20中的負(fù)荷分配變得很容易。
這個(gè)實(shí)施例用于實(shí)時(shí)三維圖形系統(tǒng)諸如圖30中所示游戲機(jī)。一個(gè)控制器1、一個(gè)DVD驅(qū)動(dòng)器2、一個(gè)硬盤驅(qū)動(dòng)器3以及一個(gè)通信裝置4連接到低速總線,而圖像再現(xiàn)裝置8也經(jīng)由總線橋5連接到這里。一個(gè)外部存儲(chǔ)器21和一個(gè)CPU6連接到圖像再現(xiàn)裝置8。
用于游戲等等的應(yīng)用軟件存儲(chǔ)在設(shè)置在DVD驅(qū)動(dòng)器2中的媒介(DVD)中,通過(guò)CPU6并借助于CPU存儲(chǔ)器7來(lái)執(zhí)行所述應(yīng)用軟件,并且通過(guò)執(zhí)行不同種類的處理來(lái)更新三維空間數(shù)據(jù),以便響應(yīng)來(lái)自控制器1的用戶的操作。因此,多邊形數(shù)據(jù)從CUP6傳輸?shù)綀D像再現(xiàn)裝置8,并且執(zhí)行諸如上述的圖像再現(xiàn)操作。
特別地,CPU6從CPU存儲(chǔ)器7中獲取頂點(diǎn)數(shù)據(jù)來(lái)再現(xiàn)物體,而CPU6完成幾何處理。將幾何處理的結(jié)果傳送到圖像再現(xiàn)裝置8。圖像再現(xiàn)裝置8在這完成光柵化處理,在光柵化處理結(jié)束的時(shí)候發(fā)送完成通知到CPU6,并等待來(lái)自CPU6的下一個(gè)數(shù)據(jù)。通過(guò)重復(fù)這樣的處理,執(zhí)行再現(xiàn)處理。
頂點(diǎn)數(shù)據(jù)包括多樣的信息,例如頂點(diǎn)的坐標(biāo)、顏色、紋理數(shù)據(jù)和法向矢量等,然后CPU6執(zhí)行必要的操作。
作為從圖像再現(xiàn)裝置8輸出的再現(xiàn)結(jié)果的圖像數(shù)據(jù),通過(guò)D/A轉(zhuǎn)換器9變成視頻信號(hào)輸出,然后它被傳送到?jīng)]有示出的顯示器來(lái)顯示。該顯示器可以是專用顯示器,也可以是TV、計(jì)算機(jī)等的顯示器。顯示器上的顯示區(qū)叫做屏幕。
圖31借助于模塊而示出了根據(jù)該實(shí)施例的圖像再現(xiàn)裝置8的實(shí)例圖。圖像再現(xiàn)裝置8的結(jié)構(gòu)可以是圖4、圖5、圖6和圖7中的任意一種。從幾何處理裝310,將多邊形上的數(shù)據(jù)輸入到圖像再現(xiàn)裝置8的光柵化器10。幾何處理裝置310可以是CPU6。在圖31的例子中,存儲(chǔ)器30存在于圖像再現(xiàn)裝置8的內(nèi)部。
圖32示出了圖像再現(xiàn)裝置8的一個(gè)變型,存儲(chǔ)器30存在于圖像再現(xiàn)裝置8的外部。也就是,存儲(chǔ)器30可存在圖像再現(xiàn)裝置8的內(nèi)部或外部。
如上所述,根據(jù)該實(shí)施例,通過(guò)保證每一個(gè)像素?cái)?shù)據(jù)在不同的像素位置上,可以將像素處理器20確定像素位置現(xiàn)在是否正在被處理的這個(gè)步驟省略。
此外,通過(guò)將矩形形狀中相互鄰接的像素?cái)?shù)據(jù)整合塊,可以提高局域性,并且能夠提高讀取紋理數(shù)據(jù)等等的效率。
進(jìn)一步地,相互遠(yuǎn)離的像素?cái)?shù)據(jù)作為一個(gè)塊而被共同處理,像素處理器20之間的負(fù)載分布可以很容易。
此外,像素處理器20可以順次從塊數(shù)據(jù)緩沖器110中獲取塊數(shù)據(jù),并順序處理它。特別地,由于提供了多個(gè)像素處理器20,像素處理器20可以分別地處理塊數(shù)據(jù),因此可以提高像素處理器20的有效率。
另外,塊合并裝置100把像素?cái)?shù)據(jù)不互相沖突的多個(gè)塊合并成一個(gè)塊,因此可以減少由像素處理器20處理的塊數(shù)。
此外,介紹了由兩個(gè)或多個(gè)像素方塊組成的“標(biāo)記”的概念,而合并塊的處理是在逐個(gè)標(biāo)記的基礎(chǔ)上來(lái)執(zhí)行的,因此鄰域的計(jì)算成為可能。例如,能夠從鄰近的像素?cái)?shù)據(jù)的差值中獲得第一推導(dǎo)值。
再者,由于提供了多個(gè)塊數(shù)據(jù)緩沖器110,即使在一些多邊形的處理逸出了一個(gè)塊數(shù)據(jù)緩沖器110的范圍的時(shí)候,可以保存塊數(shù)據(jù)直到另一個(gè)多邊形的處理再次進(jìn)入這個(gè)塊數(shù)據(jù)緩沖器110的范圍。
進(jìn)一步地,如果存儲(chǔ)在塊數(shù)據(jù)緩沖器110中的塊的坐標(biāo)位置是固定的,可以減少?gòu)膲K數(shù)據(jù)緩沖器110到像素處理器20的接線。
此外,如果由塊數(shù)據(jù)緩沖器110來(lái)執(zhí)行濃度測(cè)試,那么像素處理器20就不能處理最后成為隱藏面的像素。
權(quán)利要求
1.一種圖像再現(xiàn)裝置,包括段發(fā)生器,配置為基于輸入的像素?cái)?shù)據(jù),生成一組包括不同位置的像素的段;以及像素處理器,配置為順次地處理由段發(fā)生器生成的段中包括的像素?cái)?shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的圖像再現(xiàn)裝置,其中,所述段是一組定位在矩形形狀內(nèi)相互鄰接的像素。
3.根據(jù)權(quán)利要求1所述的圖像再現(xiàn)裝置,其中,所述段是一組定位為相互遠(yuǎn)離的像素。
4.一種圖像再現(xiàn)裝置,包括數(shù)據(jù)緩沖器,配置為保存多邊形的光柵化的結(jié)果,其中,數(shù)據(jù)緩沖器將互相不沖突的光柵化的結(jié)果合并,并將它們作為一個(gè)光柵化的結(jié)果來(lái)保存;以及像素處理器,配置為從數(shù)據(jù)緩沖器獲取光柵化的結(jié)果,并順次地處理包括在光柵化結(jié)果中的像素?cái)?shù)據(jù)。
5.根據(jù)權(quán)利要求4所述的圖像再現(xiàn)裝置,進(jìn)一步地包括一個(gè)段發(fā)生器,它被配置為基于輸入的像素?cái)?shù)據(jù),生成一組包括不同位置的像素的段,并將它們作為光柵化的結(jié)果存儲(chǔ)在數(shù)據(jù)緩沖器中,其中,段生成器讀取已經(jīng)存儲(chǔ)在數(shù)據(jù)緩沖器中相同坐標(biāo)位置上的光柵化結(jié)果,然后當(dāng)讀取光柵化結(jié)果中所包含的像素?cái)?shù)據(jù)和輸入的像素?cái)?shù)據(jù)相互不沖突的時(shí)候,將讀取的光柵化結(jié)果中所包含的像素?cái)?shù)據(jù)和輸入的數(shù)據(jù)合并,并將它們作為一個(gè)光柵化的結(jié)果存儲(chǔ)到數(shù)據(jù)緩沖器中。
6.根據(jù)權(quán)利要求5所述的圖像再現(xiàn)裝置,其中當(dāng)合并多個(gè)光柵化結(jié)果的時(shí)候,段發(fā)生器在兩個(gè)或多個(gè)像素方塊的合并單元中執(zhí)行合并處理。
7.根據(jù)權(quán)利要求4所述的圖像再現(xiàn)裝置,其中,數(shù)據(jù)緩沖器有多個(gè)。
8.根據(jù)權(quán)利要求7所述的圖像再現(xiàn)裝置,其中,在每一個(gè)數(shù)據(jù)緩沖器中所存儲(chǔ)的段的坐標(biāo)位置是固定的。
9.根據(jù)權(quán)利要求4所述的圖像再現(xiàn)裝置,其中,段發(fā)生器包括濃度測(cè)試的功能。
10.一種圖像再現(xiàn)的方法,包括基于輸入的像素?cái)?shù)據(jù),生成一組包括在不同位置中的像素的段;以及順次地處理包括在生成的段中的像素?cái)?shù)據(jù)。
11.根據(jù)權(quán)利要求10所述的圖像再現(xiàn)的方法,其中,段是一組定位在矩形形狀內(nèi)相互鄰接的像素。
12.根據(jù)權(quán)利要求10所述的圖像再現(xiàn)的方法,其中,段是一組定位為相互遠(yuǎn)離的像素。
13.一種圖像再現(xiàn)的方法,包括保存多邊形的光柵化結(jié)果,將相互不沖突的光柵化結(jié)果合并,并將它們作為一個(gè)光柵化的結(jié)果來(lái)保存;以及從數(shù)據(jù)緩沖器獲取光柵化結(jié)果,并順次地處理包括在光柵化的結(jié)果中的像素?cái)?shù)據(jù)。
14.根據(jù)權(quán)利要求13所述的圖像再現(xiàn)的方法,進(jìn)一步包括生成基于輸入的像素?cái)?shù)據(jù),生成一組包括在不同位置中的像素的段,并將它們作為光柵化的結(jié)果存儲(chǔ)在數(shù)據(jù)緩沖器中;讀取已經(jīng)存儲(chǔ)在數(shù)據(jù)緩沖器中相同坐標(biāo)位置上的光柵化結(jié)果;以及當(dāng)讀取的光柵化結(jié)果中所包含的像素?cái)?shù)據(jù)和輸入的像素?cái)?shù)據(jù)相互不沖突的時(shí)候,將讀取的光柵化結(jié)果中所包含的像素?cái)?shù)據(jù)和輸入的數(shù)據(jù)合并,并將它們作為一個(gè)光柵化的結(jié)果存儲(chǔ)到數(shù)據(jù)緩沖器中。
15.根據(jù)權(quán)利要求14所述的圖像再現(xiàn)的方法,其中,當(dāng)合并多個(gè)光柵化結(jié)果的時(shí)候,合并處理是在兩個(gè)或多個(gè)像素方塊的合并單元中執(zhí)行的。
16.根據(jù)權(quán)利要求13所述的圖像再現(xiàn)的方法,其中,數(shù)據(jù)緩沖器有多個(gè)。
17.根據(jù)權(quán)利要求16所述的圖像再現(xiàn)的方法,其中,在每一個(gè)數(shù)據(jù)緩沖器中所存儲(chǔ)的段的坐標(biāo)位置是固定的。
18.根據(jù)權(quán)利要求13所述的圖像再現(xiàn)的方法,其中,當(dāng)將光柵化結(jié)果存儲(chǔ)到數(shù)據(jù)緩沖器的時(shí)候,執(zhí)行濃度測(cè)試,并將具有比較深的濃度的像素?cái)?shù)據(jù)拋棄。
19.一種圖形系統(tǒng)包括存儲(chǔ)要再現(xiàn)的物體的頂點(diǎn)數(shù)據(jù)的存儲(chǔ)器;CPU,配置為從存儲(chǔ)器中讀出頂點(diǎn)數(shù)據(jù)來(lái)執(zhí)行處理,并將處理的結(jié)果作為像素?cái)?shù)據(jù)輸出;以及圖像再現(xiàn)裝置包括段發(fā)生器,配置為基于輸入的像素?cái)?shù)據(jù),生成一組包括不同位置的像素的段;以及像素處理器,配置為順次地處理由段發(fā)生器生成的段中包括的像素?cái)?shù)據(jù)。
全文摘要
這里公開(kāi)的圖像再現(xiàn)裝置包括一個(gè)段發(fā)生器,它被配置為基于輸入的像素?cái)?shù)據(jù),生成一組包括不同位置的像素的段;以及一個(gè)像素處理器,它是被配置為順次地處理由段發(fā)生器生成的段中包括的像素?cái)?shù)據(jù)。
文檔編號(hào)G06T19/00GK1551048SQ20041004308
公開(kāi)日2004年12月1日 申請(qǐng)日期2004年4月28日 優(yōu)先權(quán)日2003年4月28日
發(fā)明者齋藤敬弘, 森健一 申請(qǐng)人:株式會(huì)社東芝