近年來,計(jì)算機(jī)圖形學(xué)應(yīng)用越來越廣泛,尤其是三維(3D)繪圖。3D繪圖使用3D模型和各種影像處理產(chǎn)生具有三維空間真實(shí)感的影像,應(yīng)用于虛擬真實(shí)情況以及多媒體的產(chǎn)品上,且多半是使用低成本的實(shí)時(shí)3D計(jì)算機(jī)繪圖技術(shù)為基礎(chǔ)。在初期3D圖形學(xué)剛起步時(shí),由于圖形簡單,因此可以利用CPU來運(yùn)算,但隨著圖形學(xué)技術(shù)的發(fā)展,所要繪制的圖形越來越復(fù)雜,這時(shí)如果單純依賴CPU來處理,不能達(dá)到實(shí)時(shí)的要求,因此需要專門的硬件來加速圖形處理,GPU(圖形處理單元)因此出現(xiàn)了。不過由于3D圖形加速硬件的復(fù)雜性和短壽命,這極大地提高了對硬件開發(fā)環(huán)境的需要。為了更好的對設(shè)計(jì)進(jìn)行更改和測試,不能僅僅用專門定制的方法來設(shè)計(jì),需要其他的方:硬件描述語言(HDL)和FPGA。 隨著計(jì)算機(jī)繪圖規(guī)模的需要,借助輔助硬件資源,來提高圖形處理單元(GPU)處理速度的需求越來越普遍。自從15年前現(xiàn)場可編程門陣列(FPGA)開始出現(xiàn)以來,其在可編程硬件領(lǐng)域所起的作用越來越大。它們在速度、體積和速度方面都有了很大的提高。這意味著FPGA在以前只能使用專用硬件的場合越來越重要。其中一個(gè)應(yīng)用領(lǐng)域就是3D圖形渲染,在這個(gè)研究領(lǐng)域里人們正在利用具有可編程性能的FPGA來幫助改進(jìn)圖形處理單元(GPU)的性能。 能夠在廉價(jià)、可動態(tài)重新配置的FPGA上實(shí)現(xiàn)復(fù)雜算法來輔助硬件設(shè)計(jì)。本文的設(shè)計(jì)就是通過在FPGA上實(shí)現(xiàn)3維圖形幾何處理管線部分功能來提高圖形處理速度。具體實(shí)現(xiàn)中使用硬件描述語言(Verilog HDL)進(jìn)行邏輯設(shè)計(jì),并發(fā)現(xiàn)問題解決問題。 本文主要特色如下: 1.針對幾何變換換子系統(tǒng),提出一種硬件實(shí)現(xiàn)方案,該方案能對基本的幾何變換如:平移、縮放、旋轉(zhuǎn)和投影進(jìn)行操作。首先構(gòu)造出總體變換矩陣,隨后進(jìn)行矩陣乘法運(yùn)算,再進(jìn)行投影變換,最后輸出變換座標(biāo)。提出一種脈動陣列結(jié)構(gòu),用于兩個(gè)矩陣的乘法運(yùn)算。找到一種快捷的方法來實(shí)現(xiàn)矩陣相乘,將能大大提高系統(tǒng)的效率。 2.對于3D圖形裁剪,文中描述了一種裁剪引擎,它能夠處理3D圖形中的裁剪、透視除法以及視口映射的功能。硬件實(shí)現(xiàn)的難度取決于裁剪算法的復(fù)雜程度。我們在Sutherland-Hodgman裁剪算法的基礎(chǔ)上提出一種新的裁剪算法,該算法通過去除冗余頂點(diǎn)以提高處理速度,同時(shí)利用編碼來判斷線段可見性的方法使得硬件實(shí)現(xiàn)變得很容易。 3.最后,我們在FPGA上實(shí)現(xiàn)了幾何變換以及三維裁剪,并與C語言的模擬結(jié)果對比發(fā)現(xiàn)結(jié)果正確,且三維裁剪能夠以3M個(gè)三角形/s的速度運(yùn)行,滿足了圖形流水中的實(shí)時(shí)性要求。
標(biāo)簽:
三維圖形
幾何
算法
上傳時(shí)間:
2013-04-24
上傳用戶:yerik