Описание курса
Этот двухдневный курс познакомит с проектированием и разработкой программного обеспечения для Xilinx Zynq SoC с помощью Software Development Kit (SDK). Узнаете основные концепции, инструменты и методы, необходимые на этапе проектирования программного обеспечения. Тема является всеобъемлющей, охватывающей разработку и реализацию пакетов поддержки аппаратуры (BSP) для доступа и управления ресурсами автономной библиотеки Xilinx. Основные темы включают использование драйверов устройств, отладку и интеграцию пользовательского приложения. В курсе также даются практические советы по реализации, чтобы разработчик мог принимать правильные решения по проектированию и сократить циклы проектирования до минимума. Дается достаточно практической информации, чтобы начать разработку приложений для ARM® Cortex-A9 и MicroBlaze процессоров. Кроме того, этот курс охватывает разработку программных приложений для встраиваемых систем Xilinx, основанных на процессоре MicroBlaze.
Продолжительность
3 дня
Кому будет полезен курс?
Инженерам, заинтересованным в разработке и внедрении систем, разработке программного обеспечения, отладке программ на основе автономных библиотек Xilinx
Что нужно знать заранее?
• Опыт программирования на C или C++, включая основные приемы отладки
• Полное понимание встраиваемых процессорных систем, включая драйверы устройств, обработку прерываний, написание/изменение сценариев, пользовательских программ и действий загрузчика
Программное обеспечение
Vivado Design Suite
Отладочная плата
Zynq-7000 ZedBoard или Kintex-7 FPGA KC705
По завершении курса вы будете иметь все необходимые навыки для того чтобы:
• Эффективно использовать инструменты Xilinx SDK
• Писать базовые пользовательские приложения в Xilinx SDK и запускать их на встраиваемых процессорных системах
• Использовать отладчик приложений
• Применять техники программирования для улучшения функциональности
• Сохранять и обновлять приложения при изменении аппаратной части встраиваемых процессорных систем
Структура курса
День 1
• Обзор разработки программного обеспечения для встраиваемых систем
• Методология быстрого проектирования встраиваемых систем
• Лабораторная работа 1: Знакомство с архитектурой системы на кристалле Zynq7000
• Лабораторная работа 2: Знакомство с архитектурой MicroBlaze
• Лабораторная работа 3: Работа с инструментами SDK
• Лабораторная работа 4: Системный отладчик
День 2
• Лабораторная работа 5: Разработка автономного приложения (Standalone/BareMetal/без ОС)
• Поддержка C для автономных приложений (Standalone/BareMetal/без ОС)
• Лабораторная работа 6: Файловая система (для Standalone)
• Лабораторная работа 7: Работа со скриптом линковщика
• Введение в механизмы прерывания
• Лабораторная работа 8: Прерывания: особенности программного обеспечения
День 3
• Операционные системы: знакомство и концепции
• Linux: основы
• Лабораторная работа 9: Обзор разработки приложения для Linux
• Написание кода с применением середы Xilinx для Linux
• Лабораторная работа 10: Знакомство с загрузкой
• Лабораторная работа 11: Знакомство с профилированием
• Пояснение организации драйвера для устройств
• Лабораторная работа 12: Разработка собственного драйвера
Описание лабораторных работ
Лабораторная работа 1
Знакомство с архитектурой системы на кристалле Zynq7000. Работа с Vivado IP Integrator для создания проекта под систему на кристалле Zynq и настройки процессора.
Лабораторная работа 2
Знакомство с архитектурой MicroBlaze. Работа с Vivado IP Integrator для создания проекта под процессор MicroBlaze и исследование зависимости производительности от настроек ядра.
Лабораторная работа 3
Работа с инструментами SDK. Знакомство с инструментами Eclipse чаще всего используемых при разработке приложений.
Лабораторная работа 4
Системный отладчик. Работа с системным отладчиком в SDK, контроль выполнения программы и изменений в памяти.
Лабораторная работа 5
Разработка автономного приложения (Standalone/BareMetal/без ОС). Создание простейшего приложения на основе вложенных файлов. Проверка настроек BSP и генерация скрипта линковщика. Использование документации на API для завершения логики программы. Проверка работы программы на отладочной плате.
Лабораторная работа 6
Файловая система (для Standalone). Создание приложения, работающего с файловой системой XilMFS.
Лабораторная работа 7
Работа со скриптом линковщика. Правка скрипта линковщика для повышения производительности системы за счет использования различных участков памяти.
Лабораторная работа 8
Прерывания: особенности программного обеспечения. Замещение циклического опроса таймера работой по прерываниям. Добавление поддержки работы с таймером в исходный код. Загрузка и проверка приложения.
Лабораторная работа 9
Обзор разработки приложения для Linux. Работа с портами ввода/вывода (GPIO), подключенным в отладочной плате.
Лабораторная работа 10
Знакомство с загрузкой. Создание загрузочного образа на основе предлагаемого bit-файла и приложения.
Лабораторная работа 11
Знакомство с профилированием. Профилирование программы, анализ отчетов и проверка производительности при множественных вызовах.
Лабораторная работа 12
Разработка собственного драйвера. Создание шаблона для драйвера и добавление предоставляемого драйвера для LCD в BSP.
Ответы на частые вопросы
Да, работаем в обычном режиме.
Да, подойдут. Для инженеров без опыта разработки мы предлагаем базовые курсы, которые начинаются с основ и постепенно переходят к более сложным темам.
Да, выдаем сертификат после прохождения обучения.
В классе либо онлайн.
Занятия в классе состоят из лекций, обсуждения вопросов и лабораторных работ. Занимаемся полный рабочий день. Начинаем в 10:00 и заканчиваем около 18:00.
Занятия онлайн максимально приближены к занятиям в классе. Для лекций и обсуждения вопросов используем Yandex Telemost, Google Meet или подобные платформы. Для выполнения лабораторных работ нужно будет подключиться к лабораторным ПК по VPN. Работаете в режиме удаленного рабочего стола через программу RealVNC Viewer.
Требования к ПК:
• Быстрый интернет
• Два монитора, один из которых с разрешением не менее 1920х1080
• Гарнитура (наушники с микрофоном)
Минимум 1, максимум 4.
Нет, не нужно. Мы выбираем удобные для вас даты и занимаемся.
Обычно мы занимаемся с 10:00 до 18:00.
Да, учебное место укомплектовано компьютером с двумя мониторами, программным обеспечением и отладочной платой.
1. Презентации
2. Лабораторные работы и архив с исходниками для выполнения лабораторных работ
Занятия согласовываются индивидуально. Выбираем удобные для вас даты и занимаемся.
1. Оставляете заявку на сайте
2. Мы с вами связываемся, отвечаем на все вопросы и согласовываем даты занятий
3. Оплачиваете счет (возможна оплата как для физических, так и юридических лиц)
4. Проводим обучение
Занятия проводятся в нашем учебном классе по адресу: Москва, пр-т Вернадского, д.78
В Санкт-Петербурге нет, но вы можете пройти обучение онлайн, чтобы не ехать к нам в Москву.
Да, по предварительной договоренности. Наш учебный класс находится по адресу: Москва, пр-т Вернадского, д.78
За одного человека.
Мы выставляем счет на оплату (возможна оплата как для физических, так и юридических лиц).
Нет, только 100% предоплата.
100% предоплата по счету.
Да, мы работаем с юридическими лицами. Обучение от организации возможно.
Да, оставьте заявку на сайте и мы свяжемся для обсуждения вашего проекта.