Može li netko napraviti 3D grafičku karticu od nule? Dylan Barrie je želio otkriti i proveo je četiri godine pokušavajući. Rezultat je bio kompletan GPU koji teoretski može pokrenuti stariji softver za igranje na Windowsima.
Dylan Barrie je programer igara i ljubitelj hardvera. Tijekom posljednjih četrnaest godina svoje karijere u industriji igara, Barrie se prvenstveno fokusirao na softversku stranu grafičkog renderiranja. Međutim, počeo je razvijati prilagođeni, full-stack GPU prije četiri godine u svoje slobodno vrijeme.

Barrie je rekao da je proces stvaranja grafičke kartice od temelja bio paklen, ali nakon četiri godine marljivosti, konačno može podijeliti svoje napore sada kada je dizajn dodatne kartice u biti gotov. FuryGPU je “pravi hardverski GPU” izgrađen na Xilinx Zynq UltraScale+ FPGA dizajnu. Kartica koristi prilagođeni PCB i spaja se na glavno računalo putem PCIe utora.
FuryGPU može podržati hardverske značajke ekvivalentne “high-end” grafičkoj kartici iz sredine 1990-ih, s punim softverom i paketom upravljačkih programa za moderne verzije Windowsa. GPU može renderirati igre iz tog desetljeća s brzinom sličica u sekundi u stvarnom vremenu. Barrie će na kraju izdati hardverske sheme, softver i upravljačke programe putem open source licence.
Proizvođač hardvera rekao je da je odlučio izgraditi grafički procesor od nule jer nije znao “stvarne detalje” o tome kako GPU rade. Budući da je “izuzetno upoznat” s procesom 3D renderiranja sa strane softvera, Barrie je shvatio da bi stvaranje GPU-a moglo biti izvediv, iako zastrašujući osobni projekt.
Proveo je “bezbrojne sate” učeći kako rade FPGA čipovi i kako izgraditi dizajn čipova kroz opis hardvera, verifikaciju i implementacijski jezik SystemVerilog . Dizajniranje sheme za PCIe grafičku karticu bio je “herkulovski napor”, rekao je Barrie. Možda ne iznenađuje da je pisanje upravljačkih programa za Windows bio najbolniji zadatak projekta.
Programer je napisao prilagođeni grafički API za komunikaciju s GPU-om i stvorio Windows kernel drivere za upravljanje prikazom i audio signalima. FuryGPU može pokretati originalni Quake objavljen 1996. – sa “solidnih” 60 sličica u sekundi, što bi bilo pravo zadovoljstvo za igrače 90-ih.
Barrie planira napisati više o svojoj avanturi stvaranja GPU-a na svom blogu FuryGPU, počevši s jedinicama teksture kartice . Također želi optimizirati svoju prilagođenu verziju Quakea da radi mnogo brže.









