Alpha Omega Engineering

«Alpha Omega» — один из ведущих производителей оборудования и расходных материалов для нейрохирургии и нейрофизиологических исследований. Поскольку компания выпускает клинические устройства, они должны проходить сертификацию, включая FDA. Я горжусь тем, что работал в этой компании и участвовал в разработке лучшего в мире оборудования и программного обеспечения, помогающих нам получать знания о функционировании мозга, а пациентам — вернуться к нормальной жизни.

Опыт работы

  • Начал в сентябре 2019, закончил в марте 2024.
  • Должность: эксперт по разработке встраиваемого программного обеспечения (DSP Software Expert)

Аппаратная часть, за которую я отвечал, собирала данные с электродов, погружённых в ткань мозга, фильтровала их, удаляла шумы и передавала на компьютер нейрохирурга или нейрофизиолога, где пользовательский интерфейс отображал эту информацию. Нейрохирург принимал решение о выполнении стимуляции (то есть подаче тока в мозг) на одном из электродов, и аппаратная часть получала эту команду, обрабатывала её, настраивала систему для стимуляции и управляла стимуляцией.

„Incept” system
Устройство „Incept”, основанное на первой версии „AlphaRS”. Поддерживает 128 электродов; фильтрация, удаление шумов, сортировка данных и поиск закономерностей в сигналах выполняются на микроконтроллере. Фотография: Alpha Omega.

Я принимал участие в разработке нескольких продуктов, в основном предназначенных для научно-исследовательской деятельности. Ниже я расскажу о некоторых вызовах, с которыми я успешно справился.

Устройство „AlphaRS”.
Устройство „AlphaRS”, вышедшее на рынок в 2021.
Фотография: Alpha Omega.

Моя работа над устройством «AlphaRS»

«AlphaRS», сокращение от «Alpha [Omega] Recording System», — одно из самых передовых решений для нейрофизиологических исследований. Это был не прототип, а продаваемый продукт, но он также послужил основой для нескольких поколений более совершенных систем, каждая из которых адаптировалась под разные задачи и имела свои уникальные преимущества, благодаря чему клиент мог выбрать то устройство, которое лучше всего соответствовало его потребностям.

Устройство «AlphaRS» было частично основано на коде предыдущего поколения системы для нейрофизиологических исследований, «AlphaLab SNR», тоже разработанной «Alpha Omega». Однако в процессе адаптации к новому оборудованию код был значительно изменён. Например, DSP, использовавшийся в системе «SNR», имел всего три ядра, тогда как DSP в «AlphaRS» имеет 8 ядер с большей частотой. Каждое ядро в «AlphaRS» отвечало за определённую задачу: некоторые ядра собирают данные с электродов, другие выполняют алгоритмы подавления шума и фильтрации, а третьи упаковывают данные и отправляют их на компьютер хирурга. Балансировка нагрузки достигается за счёт распределения данных, получаемых с контактных площадок, между ядрами.

Интересные задачи, которые я решил во время работы над этим проектом:

Значительное ускорение загрузки устройства «AlphaRS»

Разработка механизма проверки и валидации пользовательской лицензии

Система „AlphaRS Pro”.
Устройство „AlphaRS Pro”, вышедшее на рынок в 2024.
Фотография: Alpha Omega.

Моя работа над устройством «AlphaRS Pro»

«AlphaRS Pro» — это следующее поколение семейства «AlphaRS». Оно поддерживает 1024 контактные площадки между нейронами и электродами, что генерирует огромный объём данных, — речь идёт о гигабайтах в секунду. Поэтому использование Ethernet-соединения для передачи собранных данных больше не представлялось возможным. Я оценил возможность использования Ethernet-соединения с большей пропускной способностью, но DSP, использовавшийся в «AlphaRS», также достиг предела своих возможностей как по объёму памяти, так и по вычислительной мощности, поэтому решение пришлось искать в совершенно другой плоскости.

Было решено использовать иной подход: собирать данные во внешнем устройстве, как и раньше; оцифровывать их с помощью аналогово-цифровых преобразователей (A2D); но вместо использования DSP — передавать данные напрямую в основной компьютер нейрохирурга через соединение Thunderbolt, которое связывает оборудование для сбора данных в отдельном устройстве напрямую с шиной PCIe компьютера нейрохирурга. Затем, зарегистрировав оборудование в Windows® с помощью соответствующего драйвера, устройство для сбора данных получает доступ к контроллеру памяти компьютера, и мы можем использовать DMA (прямой доступ к памяти) для передачи собранных данных. Используя соединение PCIe с двумя линиями, можно достичь скорости передачи до 40 Гбит/с.

Диаграмма устройства „AlphaRS Pro”.
Фотография: Alpha Omega.

Вся остальная обработка данных выполняется с помощью множества потоков (англ. „threads”) на компьютере нейрохирурга, частично на графической карте, а для передачи данных между драйвером устройства и пользовательским интерфейсом используется двойная буферизация. Пользовательский интерфейс получает данные из оперативной памяти, как и раньше, — но данных стало значительно больше, — поэтому объём необходимых изменений в пользовательском интерфейсе был сведён к абсолютному минимуму.

Интересные задачи, которые я решил во время работы над этим проектом:

Создание системы реального времени, работающей под Windows