март 29, 2024

Ентусиаст създаде видеокарта от нулата и успешно подкара играта Quake на нея

Разработчикът на софтуер за игри Дилън Бари е създал своя собствена видеокарта. Проектът с наименование FuryGPU, който той реализира сам в свободното си време му отнема цели 4 години. През този период Бари успява значително да подобри знанията си в областта на инженерните науки, а именно в разработването на видеокарти и тяхното програмиране.

Неговата PCIe графична карта, базирана на платформата Xilinx FPGA е в състояние да стартира играта Quake.

Идеята за създаване на собствена видеокарта хрумва на Бари, след като вижда проекта на друг ентусиаст – Бен Етер, който е „построил“ програмируем 8-битов компютър от нулата. Както можете да видите на снимката, FuryGPU прилича на типичен PCIe графичен ускорител отпреди 20 години. Тя обаче е оборудвана със съвременни DisplayPort и HDMI видеоконтактори.

Не само хардуерът е създаден в рамките на този проект. Според Бари най-трудната част от разработката всъщност е била написването на драйверите за Windows.

За да премине от макетната платка към проектирането на видеокартата, Бари изучава самостоятелно SystemVerilog. Това е език за описание и проверка на хардуера и софтуерния пакет за проектиране на електроника KiCAD EDA/CAD. Той казва, че му е било необходимо огромно усилие, за да се проектира веригата FuryGPU с 4-канален PCIe, дори и с вградената в SoM схема FPGA. След като сглобява FuryGPU, той започва да пише софтуер за нея.

Според ентусиаста, разработването на драйвера за Windows за FuryGPU е било „най-болезнената“ част от целия проект. Въпреки, че последните 14 години от основната му дейност са били свързани със софтуер за графично рендиране в индустрията за разработка на игри. Първоначално Бари е искал само да създаде видеокарта и да докаже, че тя работи. С развитието на проекта обаче ентусиастът си поставя за цел да постигне приемливо ниво на производителност на видеокартата в класическата компютърна игра Quake.

След като написва драйвера за Windows, той пише и потребителски API за връзка с графичния процесор, драйвери за ядрото на Windows за дисплей и звук. В крайна сметка се получава „пълноценна видеокарта, способна да подкара Quake при 60 кадъра в секунда“.

FuryGPU е проект с отворен код. Бари ще публикува статия на уебсайта на проекта, в която ще опише подробно целия процес на разработване, ще публикува схеми, драйвери, API, допълнителни материали, както и порт на играта Quake, оптимизиран за неговата видеокарта.

source

Сподели: