FPGA(現(xiàn)場(chǎng)可編程門(mén)陣列)是一種可重構(gòu)的微芯片——已經(jīng)被證明可以運(yùn)行一款用C語(yǔ)言編寫(xiě)的3D光線追蹤游戲,其效率是x86 CPU的50倍,而功耗僅為后者的2%,這可能為未來(lái)編程效率的提高指明了道路。
這是由來(lái)自阿根廷的開(kāi)發(fā)人員Victor SuarezRovere和來(lái)自賓夕法尼亞州的系統(tǒng)工程師Julian Kemmerer所完成的,文末可以下載他們所提供的白皮書(shū)PDF。
FPGA采用的是ArtyA7,一款售價(jià)約 280 美元的 Xilinx Artix-7100T FPGA 開(kāi)發(fā)板,采用 28 納米工藝,具有 101,440 個(gè)邏輯單元(FPGA 的邏輯單元包含可以實(shí)現(xiàn)任何邏輯功能的查找表,使芯片具有可編程性),并且它的功耗不到一瓦。它所針對(duì)的 CPU是 Ryzen 7 4800H,這是一款基于 7 nm 工藝構(gòu)建的八核 16 線程筆記本電腦處理器,默認(rèn) TDP 為 45W。R7 4700G 目前的售價(jià)約為 240 美元。
這款在這兩個(gè)截然不同的平臺(tái)上運(yùn)行的游戲名為《spheres VsShapes》,在情節(jié)、角色或?qū)嶋H玩法方面似乎沒(méi)有太多內(nèi)容,但確實(shí)有很多光線追蹤,比如一個(gè)閃亮的金屬球在棋盤(pán)般的環(huán)境中彈跳,這反映在它閃亮的球形表面上。
兩個(gè)平臺(tái)都以1080p和每秒50幀的速度渲染游戲,但FPGA使用660毫瓦,而R7需要35W,相差53倍。據(jù)推測(cè),如果FPGA使用與CPU相同的7nm工藝,F(xiàn)PGA的功耗可能會(huì)降低到110毫瓦。
整個(gè)事情的關(guān)鍵是Kemmerer發(fā)明的Pipeline C 和Suarez。你可以在GitHub上找到它們。"游戲的像素渲染和動(dòng)畫(huà)邏輯是基于浮點(diǎn)和矢量數(shù)學(xué)運(yùn)算的。所有的游戲代碼都是用一種簡(jiǎn)潔的語(yǔ)法來(lái)表達(dá)的,可以直接轉(zhuǎn)化為數(shù)字電路。他們?cè)谡撐闹袑?xiě)道:"這個(gè)設(shè)計(jì)目前的目標(biāo)是一塊具有全高清數(shù)字視頻輸出的FPGA板,而且這個(gè)工作流程還允許使用未經(jīng)修改的源代碼在普通PC上實(shí)時(shí)運(yùn)行游戲。"這使得開(kāi)發(fā)-測(cè)試迭代的速度比傳統(tǒng)的硬件設(shè)計(jì)工具快得多。對(duì)于相同的工作負(fù)荷,計(jì)算效率比使用現(xiàn)代CPU要好50倍以上,而芯片的體積要小一個(gè)數(shù)量級(jí)。"
"Sphery VsShapes "作為一個(gè)圖形演示相當(dāng)不錯(cuò),這意味著未來(lái)的編程是更有趣的--特別是當(dāng)FPGA將開(kāi)始出現(xiàn)在AMD芯片中。我們計(jì)劃將整個(gè)系統(tǒng)移植到RISC-V上,并設(shè)計(jì)一個(gè)支持流水線的開(kāi)源ASIC,這也為微控制器的世界提供了可能性?!边@些代碼可以被轉(zhuǎn)換成邏輯電路,在現(xiàn)成的CPU上運(yùn)行,或者在微控制器上開(kāi)發(fā)硬件/軟件外設(shè),而無(wú)需更改代碼?!盨uarez和Kemmerer在結(jié)論中寫(xiě)道。"我們獲得的結(jié)果很容易重復(fù),因?yàn)椴牧虾苋菀撰@得,而且不貴"。
審核編輯 :李倩
-
FPGA
+關(guān)注
關(guān)注
1629文章
21729瀏覽量
602977 -
C語(yǔ)言
+關(guān)注
關(guān)注
180文章
7604瀏覽量
136683 -
光線追蹤
+關(guān)注
關(guān)注
0文章
183瀏覽量
21473
原文標(biāo)題:效率提升50倍!采用相同的C語(yǔ)言程序,28納米FPGA跑3D光線追蹤游戲輕松擊敗7納米x86!
文章出處:【微信號(hào):zhuyandz,微信公眾號(hào):FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論