Embedded-разработчик (Zynq FPGA, STM32)
Описание от работодателя
Обязанности:
Полный цикл разработки: анализ ЧТЗ на разработку программного обеспечения, проектирование, кодирование, отладка на реальном железе, документирование.
Разработка и поддержка программного обеспечения для встраиваемых систем на базе SoC Xilinx Zynq (включая серии 7000 и UltraScale+ MPSoC)
Разработка «bare-metal» приложений для Zynq 7000 и UltraScale+ MPSoC.
Настройка DMA, обработка прерываний, работа с AXI-шиной.
Разработка GUI приложений на QT для взаимодействия с аппаратной частью.
Мы ожидаем от кандидата:
Высшее техническое образование (радиотехника, электроника, вычислительная техника, физика).
Опыт embedded разработки от 3-х лет.
Наличие опыта работы в САПР Vivado (SDK/Vitis).
Опыт работы с интерфейсами: UART, SPI, I2C, TCP/IP, Ethernet, QSPI Flash
Понимание работы контроллера прерываний Xilinx GIC / NVIC.
Умение работать с осциллографом, анализатором протоколов и другим лабораторным оборудованием для отладки на плате.
Уверенное владение C и C++
Использование в работе Git, CMake.
Будет преимуществом:
Написание драйверов и модулей ядра Linux, для Zynq 7000 и UltraScale+ MPSoC.
Наличие опыта в сборке и конфигурировании ядра Linux, загрузчика U-Boot, Device Tree.
Опыт организации взаимодействие Qt-приложения с драйверами, ПЛИС и периферией через ioctl, sysfs, shared memory, DMA-буферы.
Опыт работы с U-Boot, PetaLinux или Yocto
Практические навыки ручной раскладки кода и данных по физическим адресам SoC (DDR, OCM, BRAM) через скрипты компоновщика
Умение проектировать многоуровневые системы приоритетов прерываний, минимизировать время задержки (Interrupt Latency)