Самодельный GPU на RISC-V у Matthias Balwierz, известного как Bitluni, уже использует 8192 микроконтроллера и тянет 2161 Вт. Формально это не только видеокарта, но и монитор: к каждому чипу он припаял RGB-светодиод.

Идея звучит как шутка из эпохи DOS, но проект вполне реальный. Balwierz хотел собрать дисплей, а в итоге пришел к конструкции, где каждый микроконтроллер отвечает за один светящийся пиксель. Так он убрал отдельную матрицу и упростил часть схемы.

8192 ядра вместо CUDA: как устроена сборка

Balwierz сначала планировал отдельный экран, но быстро уперся в цену и сложность разводки. Поэтому он выбрал прямую схему: каждый QingKe CH570 считает свой пиксель и сразу зажигает припаянный к нему RGB-светодиод.

Продолжение после рекламы

Полноценный вариант должен получить разрешение 320 x 200. Это 64 000 пикселей, то есть 64 000 микроконтроллеров. Цифры знакомые тем, кто помнит старые DOS-игры. Для Full HD потребовалось бы уже больше двух миллионов чипов, и тут домашняя сборка быстро превращается в склад электроники.

Текущая версия ограничилась 8192 чипами. Balwierz разбил конструкцию на платы по 16 x 32 «пикселя» и собрал их в круговую компоновку. Внешне она напоминает суперкомпьютер Cray-1, только вместо классических индикаторов тут целая россыпь RGB-точек.

Изображение к статье: Моддер собрал GPU на 8192 RISC-V-чипах: 2161 Вт дома
  • Чип: QingKe CH570 с 32-битным RISC-V CPU
  • Частота: до 100 МГц
  • Связь: USB-контроллер, 2,4 ГГц-трансивер и Bluetooth 5.0 LE
  • Цена: $0,13 за микроконтроллер, около 10 рублей
  • Управление: каждые 32 MCU контролирует более мощный CH32V

Для одного чипа $0,13 выглядит смешно. Но для массива 320 x 200 только микроконтроллеры потянут больше чем на $8000, около 620 000 рублей. И это без плат, питания, сборки, брака и времени за паяльником.

2161 Вт и 655 А: питание тут сложнее графики

Самая жесткая цифра проекта — не количество ядер, а питание. Каждый MCU потребляет около 10 мА, но при 8192 штуках выходит 2161 Вт, или примерно 655 А при 3,3 В. На бумаге один чип скромный, в сумме получается небольшой обогреватель.

Balwierz взял блок питания Corsair WS3000 ATX и добавил собственные преобразователи с 12 В на 3,3 В. Такой ток нельзя просто прогнать через пару дорожек на плате. Тут уже начинается инженерия уровня серверного железа, только собранная из доступных компонентов.

Он сам спроектировал печатные платы, силовые цепи, интерфейсные и тестовые платы. Для него это первый опыт с шестислойной PCB. По ходу работы он уперся в ограничения сервиса JLCPCB по проектированию таких плат.

Изображение к статье: Моддер собрал GPU на 8192 RISC-V-чипах: 2161 Вт дома

Изначально Balwierz хотел залить всю конструкцию в иммерсионное охлаждение. Он даже просчитал подходящий акриловый контейнер. Потом отказался от этой идеи из-за цены и экологических соображений.

Прошивка через 3D-принтер выглядит почти разумно

Самый красивый хак в проекте связан не с графикой, а с программированием тысяч одинаковых чипов. Balwierz напечатал на 3D-принтере трехконтактную вилку, закрепил ее на каретке принтера и написал Python-скрипт для прямой подачи G-code.

Принтер стал координатным станком. Он подводит контакты к нужному микроконтроллеру на плате, а скрипт последовательно прошивает MCU. Руками повторять эту операцию тысячи раз — надежный способ возненавидеть собственный проект к вечеру.

Продолжение после рекламы

До конкуренции с Nvidia тут, конечно, дистанция космическая. Но ценность проекта не в FPS и не в трассировке лучей. Мы видим редкий случай, когда человек дома собирает видеоподсистему снизу вверх: от питания и PCB до прошивки каждого «пикселя».

Текущая версия использует 8192 микроконтроллера, а полная матрица 320 x 200 потребует 64 000 QingKe CH570; только чипы для нее стоят больше $8000, около 620 000 рублей.

Рейтинг: 0 / 5. Оценок: 0

Рекомендуем почитать

Оставьте комментарий

Перед оставлением комментария, пожалуйста, ознакомьтесь с правилами комментирования.