Обзор отладочной платы ALINX AXU15EGB

в 8:17, , рубрики: timeweb_статьи
Давненько ко мне в руки не попадалось ничего интересного, но ситуация поменялась 🙂. Попутным ветром принесло тут платку, и я решил, мол, а почему бы мне не сделать на неё небольшой обзорчик? Итак, отладочная плата с Zynq MPSoC от небезызвестной компании Alinx, которая торгует всяким интересным на Aliexpress.

Давайте посмотрим вместе, что есть на этой плате и какие возможности предоставляет разработчикам данный отладочный набор.

Кому интересно – добро пожаловать под кат!

Обзор отладочной платы ALINX AXU15EGB - 1

Нетехническая сторона вопроса

Для начала коснусь нетехнических особенностей данной платы. Данная отладка стоит просто космических денег – около 400 тысяч рублей. Такая стоимость явно неподъёмна для простых энтузиастов и подходит лишь для профессиональной разработки или для компаний, которые готовы выделить достаточно денег на приобретение.

Но мне показалось, что эта плата даёт возможности соразмерно ее стоимости. Рассмотрим её возможные применения:

  1. Automotive применения, для организации помощи водителю, бортовых систем с анализом данных с видеокамер;
  2. Для организации систем беспроводной связи, SDR и т.п.;
  3. Сетевые применения, где требуются мультигигабитные скорости, за счёт наличия на борту двух интерфейсов для подключения SFP/SFP+ и медного порта Ethernet. Количество портов также можно увеличить за счёт установки дополнительных плат на FMС HPC интерфейс и сделать полноценный коммутатор или маршрутизатор.
  4. Высокоскоростной обмен и обработка данных с использованием параллельных вычислений в очень емкой ПЛИС и очень богатого на возможности высокоскоростного интерконнекта c ARM-ядрами.
  5. Применение в областях машинного обучения, искусственного интеллекта и потокового распознавания в видеонаблюдении и аналитики с потоковой обработкой видеопотока в качестве 4К.
  6. Область аэрокосмических применений и многие другие.

Поковыряв документацию я нашел целую кучу изображений с применением данной платы. Среди них:

– обнаружение машин:

Обзор отладочной платы ALINX AXU15EGB - 2

– обнаружение людей:

Обзор отладочной платы ALINX AXU15EGB - 3

– детекция огня:

Обзор отладочной платы ALINX AXU15EGB - 4

– обнаружение проблем и дефектов:

Обзор отладочной платы ALINX AXU15EGB - 5

– обнаружение нарушения целостности проводников на PCB:

Обзор отладочной платы ALINX AXU15EGB - 6

Вот бы иметь время все эти примеры раскурить и написать статьи на тему создания подобных проектов 😀. Но идём дальше.

Общее описание комплекта поставки

Рассмотрим, используя изображения с сайта продавца, комплект поставки этой платы. Отладочный комплект ALINX AXU15EG состоит из двух основных компонент: SoM и материнская плата с интерфейсами.

В качестве ключевого узла SoM выступает SoC Zynq UltraScale+ MPSoC, XCZU15EG-2FFVB1156I с классом скорости 2, который содержит в себе четырехъядерный процессор с ядрами Cortex-A53 и двухъядерный Cortex-R5F для реалтайм вычислений и ПЛИС UltraScale с 746550 System Logic Cells, 682560 Flip-Flops, 274080 CLB LUT и многим другим. В общем, прям жЫр 🙂.

В сборе это хозяйство выглядит следующим образом:

Обзор отладочной платы ALINX AXU15EGB - 7

Так выглядит SoM модуль с обеих сторон:

Обзор отладочной платы ALINX AXU15EGB - 8

Обзор отладочной платы ALINX AXU15EGB - 9

Помимо этого в комплекте имеется JTAG отладчик Alinx AL321 на чипе FTDI FT232H, который позволяет достаточно быстро осуществлять операции отладки в отличие от достаточно медленных чипов, которые идут в Platform Cable USB, типа DLC9LP.

Выглядит он вот так и поставляется с microUSB-кабелем и кабелем подключения к отладочному разъёму:

Обзор отладочной платы ALINX AXU15EGB - 10

Для питания платы используется блок питания на +12V DC на 36W (3A):

Обзор отладочной платы ALINX AXU15EGB - 11

Для загрузки ПО и битстрима идет в комплекте MicroSD Flash карта, может быть поставлена и на 16 Гб и на 32 Гб. Мне повезло, и в этом комплекте была флешка на 32Гб. Хотя для работы на начальном этапе более чем достаточно и 4 Гб флешки:

Обзор отладочной платы ALINX AXU15EGB - 12

Плюсом ещё докладывают Card Reader для microSD карт:

Обзор отладочной платы ALINX AXU15EGB - 13

В качестве ещё одного элемента поставки можно отдельно отметить систему охлаждения основного чипа в виде 30W Fan Cooler:

Обзор отладочной платы ALINX AXU15EGB - 14

В качестве приятного дополнения и защиты от случайных механических воздействий имеется в комплекте плексигласовый защитный корпус:

Обзор отладочной платы ALINX AXU15EGB - 15

Обратная сторона платы, к слову, выглядит следующим образом:

Обзор отладочной платы ALINX AXU15EGB - 16

Внимательные читатели увидят на шелкографии надпись AXU9EGB 1.1. Но пусть не смущает эта надпись, несущая плата, видимо, используется во многих комплектах поставки.

Дополнительные модули

Помимо этого у Alinx можно приобрести разные модули, которые устанавливаются в 40-пиновый разъем GPIO:

— Dual Channel 14bit 125Msps DA BNC Analog Output Module AD9767;

Обзор отладочной платы ALINX AXU15EGB - 17

— Multi-channel 16 bit 200ksps Synchronous Sampling AD Module AD7606;

Обзор отладочной платы ALINX AXU15EGB - 18

— Dual-channel 65MSPS 12bit AD analog to digital signal conversion module AD9238;

Обзор отладочной платы ALINX AXU15EGB - 19

— 7-inch Touch Screen Module;

Обзор отладочной платы ALINX AXU15EGB - 20

— модуль для установки в MIPI-интерфейс в виде 5MP камеры на контроллере OV5640;

Обзор отладочной платы ALINX AXU15EGB - 21

Также продаются разные модули для установки на FMC-разъем, среди которых:

— Alinx FH1223 FMC HPC to 4-Channel SFP Optical Fiber Interface Adapter Card;

Обзор отладочной платы ALINX AXU15EGB - 22

— Alinx FL2121 4-way 1000M Gigabit Ethernet LPC;

Обзор отладочной платы ALINX AXU15EGB - 23

— Alinx FMC HDMI CARD Daughter Board Input Output 1080p;

Обзор отладочной платы ALINX AXU15EGB - 24

— Alinx FL1404 FMC to 4-way MIPI module LPC interface;

Обзор отладочной платы ALINX AXU15EGB - 25

— Alinx FL9613 FMC LPC to 4-Channel AD 12-bit 250 MSPS;

Обзор отладочной платы ALINX AXU15EGB - 26

— Alinx FH9712 16 channel GMSL2/GMSL1 autopilot camera acquisition module MAX96712;

image

— Alinx FL1010 FMC LPC Interface to 40-Pin Expansion Ports;

Обзор отладочной платы ALINX AXU15EGB - 28

— Alinx FL0214 FMC LPC to Dual Lens MIPI 1.3 Megapixel IMX214 CMOS Camera;

Обзор отладочной платы ALINX AXU15EGB - 29

— Alinx FH1226 FMC HPC to Cameralink Adapter;

Обзор отладочной платы ALINX AXU15EGB - 30

…и многие другие, их можно найти на сайте Alinx или на Aliexpress. Как говорится, любой каприз за ваши деньги. Возможностей для реализации огромного спектра задач – целая уйма.

Zynq Ultrascale+ MPSoC

Широкими мазками опишу возможности центрального элемента данной отладки. Вот так возможности Zynq MPSoC отразили Xilinx в своих документах на данный чип:

Обзор отладочной платы ALINX AXU15EGB - 31

Если рассматривать чип с точки зрения внутреннего технического устройства, то приводится следующая блок-схема:

Обзор отладочной платы ALINX AXU15EGB - 32

Рассмотрим подробнее встроенный четырехъядерный ARM-процессор, и я приведу несколько его отличительных особенностей:

  • Архитектура основного процессора ARMv8-A с рабочей частотой CPU до 1.5 GHz;
  • Медиапроцессор с поддержкой инструкций NEON Advanced SIMD;
  • Floating Point Unit (FPU) с поддержкой вычислений одинарной и двойной точности;
  • CoreSight и Embedded Trace Macrocell (ETM) для расширенных функций отладки;
  • Accelerator Coherency Port (ACP);
  • AXI Coherency Extension (ACE);
  • Два кэша размером 32 KB L1 и кэш L2 1 MB.

Отдельной фишкой данного SoC является наличие двухъядерного процессора Cortex-R5F с Real-Time Processing Unit (RPU):

  • Основан на архитектуре ARMv7-R c рабочей частотой до 600 MHz;
  • Floating Point Unit (FPU) с поддержкой вычислений одинарной и двойной точности;
  • CoreSight и Embedded Trace Macrocell (ETM) для расширенных функций отладки;
  • Кэш в 32KB L1 и кэш в 128 KB TCM c ECC.

Помимо этого присутствует On-Chip Memory:

  • 256KB on-chip RAM (OCM) в PS с ECC;
  • 36 Mb on-chip RAM (UltraRAM) c ECC в PL;
  • 35 Mb on-chip RAM (block RAM) c ECC в PL;
  • 11 Mb on-chip RAM (distributed RAM) в PL.

Для графики на чипе есть отдельный GPU ARM Mali-400 MP2 с частотой до 600 MHz:

  • Поддержка OpenGL ES 1.1 и 2.0;
  • Поддержка OpenVG 1.1.

Контроллеры памяти:

  • Мультипротокольный контроллер динамической памяти;
  • Контроллер памяти с шириной шины в 32 или 64 бита с поддержкой DDR4, DDR3, DDR3L, или LPDDR3 памяти и 32-битный интерфейс для LPDDR4;
  • Поддержка ECC для 32-битного и 64-битного режима работы;
  • Адресное пространство до 32GB;
  • Интерфейсы для статической памяти eMMC 4.51, NAND с поддержкой ONFI3.1 и SPI/QSPI интерфейс для подключения NOR Flash;
  • Два контроллера DMA, с 8 каналами каждый и поддержкой Memory-to-memory, memory-to-peripheral, peripheral-to-memory и scatter-gather транзакций.

Также на борту имеется поддержка последовательных трансиверов:

  • Четыре PS-GTR трансивера с поддержкой скорости в 6.0 Gb/s;
  • Поддержка SGMII tri-speed Ethernet.

Очень богат данный чип на выделенные периферийные устройства ввода-вывода и интерфейсы:

  • PCI Express Gen2 x1, x2, или x4 с Root complex и End Point конфигурации;
  • Serial-ATA 3.1 (SATA) с поддержкой скорости передачи данных в 1.5, 3.0, и 6.0 Gb/s
  • Display Port контроллер с поддержкой рейтов до 5.4 Gb/s и двумя Tx-линиями, без поддержки Rx поддерживающий режимы работы 4K@30Hz или 1080P@60Hz;
  • Четыре 10/100/1000 Ethernet MAC и интерфейсами GMII, RGMII, SGMII;
  • Два контроллера USB 3.0/2.0 для Device/Host/OTG с поддержкой до 12 эндпоинтов и Super-speed, high- speed, full-speed, и low-speed режимов работы;
  • Два CAN 2.0B совместимых интерфейса;
  • Стандартные UART, SPI, I2C, RTC, WatchDog контроллеры;
  • 78 MIO (PS) и 96 EMIO (PL) выводов GPIO.

Для реализации интерконнекта используется ARM AMBA AXI4-based контроллер. Ну и многое другое.

Область программируемой логики PL

Тут тоже очень богато. Перечислю доступные ресурсы, предоставляемые ПЛИС:

  • 746550 System Logic Cells;
  • 682560 CLB Flip-Flops;
  • 341280 CLB LUTs;
  • 42660 Logic Array Block;
  • 11.3 Mb Distributed RAM;
  • 744 Block RAM Blocks;
  • 26.2 Mb Block RAM;
  • 112 UltraRAM Blocks;
  • 31.5 Mb UltraRAM;
  • 3528 DSP Slices;
  • Clock Signal Management (CMT) 4 штуки;
  • 24 GTH Transceiver 16.3Gb/s;
  • Transceiver Fractional PLLs 12 штук;
  • DSP блоки с 27 x 18 знаковыми вычислениями, 48-битным adder/accumulator и 27-битным pre-adder.

И многое другое, что можно очень долго перечислять…

SoM и его содержимое

Теперь настало время препарировать схематик SoM-а и подробнее посмотреть, что на нём есть и какие компоненты установлены. Начнем с того, что он состоит из 4-ёх 120 пиновых коннекторов, которые установлены так, чтобы SoM было невозможно воткнуть на плату в неправильном положении. Освежим в воспоминаниях картинку:

Обзор отладочной платы ALINX AXU15EGB - 33

Теперь подробнее рассмотрим верхнюю часть SoM-а:

Обзор отладочной платы ALINX AXU15EGB - 34

Питание на SoM

Для того, чтобы сформировать набор разных напряжений, на SoMе установлен PMIC-котроллер TPS6508640RSKR в связке с большим количеством обвязки в виде линейных, синхронных, импульсных преобразователей и большого числа пассивных компонентов:

Обзор отладочной платы ALINX AXU15EGB - 35

В целом всё достаточно просто, потом можете посмотреть самостоятельно схематик и сделать свои выводы.

Тактирование на SoM

На SoM установлен основной осциллятор 33.3333 MHz и низкочастотный генератор 32.768 kHz для RTC:

Обзор отладочной платы ALINX AXU15EGB - 36

И дополнительно на SoM имеется генератор дифференциального тактового сигнала в 200MHz:

Обзор отладочной платы ALINX AXU15EGB - 37

В целом достаточно стандартно и под стать всей периферии и сложности самой платы.

Оперативная память на SoM

На SoM-е установлено 6 чипов DDR4, часть из которых подключена к PS-части, а другая часть к PL. Если быть несколько конкретнее то:

  • К PS-части подключено 4 чипа DDR4 MT40A512M16LY-062E общим объёмом 4 Гбайта c 64-битной шириной полосы пропускания;
  • К PL-части подключено 2 чипа DDR4 MT40A512M16LY-062E общим объёмом 1 Гбайт с шириной пропускания в 32 бита.

Максимальная рабочая скорость DDR4, подключенной к PS, может достигать 1200 МГц со скоростью передачи данных в 2400 Мбит/с. Подключается эта память к интерфейсу памяти BANK504 PS.

Максимальная скорость DDR4 SDRAM, подключенная к PL, также может достигать 1200 МГц с такой же скоростью передачи данных. И подключается эта память к BANK64 в PL.

Постоянная память на SoM

Если рассматривать постоянную память, на SoM установлено следующее:

  • eMMC MTFC8GAKAJCN-4M объемом 64 Гбайта;
  • QSPI Flash MT25QL512ABB1EW9-0SIT объёмом 64 Мбайта, подключенный к QSPI0 PS-части;
  • QSPI Flash MT25QL512ABB1EW9-0SIT объёмом 64 Мбайта, подключенный к QSPI1 PS-части;
  • I2C EEPROM 24LC04B-I/SN объёмом 4 Кбит.

Содержимое отладочной платы

Как я уже упоминал выше, плата состоит из двух основных компонентов – SoM c Zynq и несущей платой, которая предоставляет возможность подключения периферийных устройств и сетевых подключений.

Перечислю все основные возможности, которые предоставляет несущая плата:

  • PS High Speed интерфейс PCIe Gen2 x4 с интерфейсом M.2;
  • 2 разъема USB3.0 и 2 разъема USB 2.0;
  • 2 разъема SATA 3.1
  • mini-DisplayPort с возможность передачи 4K@30Hz или 1080P@60Hz;
  • PS Gigabit Ethernet;
  • PL Gigabit Ethernet;
  • SD/SDIO интерфейс для подключения microSD карт;
  • 2 UART microUSB интерфейса для подключения к PS и PL
  • 2 CAN 2.0B интерфейса;
  • 2 RS-485 интерфейса;
  • MIPI-интерфейс;
  • FMC-интерфейс, к которому можно подключить Alinx FMC модули;
  • PL Ethernet 12.5Gb/s x16, идущие на порта для подключения SFP+;
  • Температурный сенсор LM75;
  • Real Time Clock с батарейным держателем;
  • 40 пиновый GPIO интерфейс;
  • 4 LED;
  • 1 кнопка сброса и 2 пользовательских кнопки.

Помимо этого на плате имеется служебный переключатель для выбора источника загрузки:

Обзор отладочной платы ALINX AXU15EGB - 38

Фото переключателя на плате:

Обзор отладочной платы ALINX AXU15EGB - 39

А также имеется 6 SMA интерфейсов для подключения GTH-трансивера.

Проанализировав состав платы, я накидал схему, отображающую всё, что есть на плате:

Обзор отладочной платы ALINX AXU15EGB - 40

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

Питание

Плата запитывается от 12В через самый обычный штыревой разъём, подойдёт любой качественный блок питания с выходным напряжением 12В и мощностью 36W.

Обзор отладочной платы ALINX AXU15EGB - 41

Помимо этого на плате имеется несколько преобразователей из 12V в целевые напряжения. Из 12V в 5V:

Обзор отладочной платы ALINX AXU15EGB - 42

Из 12V в 3.3V:

Обзор отладочной платы ALINX AXU15EGB - 43

И из 12V в 1.8V:

Обзор отладочной платы ALINX AXU15EGB - 44

Плюсом к этому на плате имеются и тест-поинты для контроля качества питания.

Источники тактирования

Очень интересным компонентом на плате является программируемый источник тактовой частоты Si5332BD11025-GM2, который позволяет генерировать весь необходимый спектр тактовых частот для всей необходимой периферии:

Обзор отладочной платы ALINX AXU15EGB - 45

JTAG разъем

Для отладочных целей на плате имеется стандартный для всех отладок JTAG-интерфейс для подключения отладчика:

Обзор отладочной платы ALINX AXU15EGB - 46

Сеть

Данная плата также предоставляет обширные возможности для реализации сетевых сценариев. В первую очередь обратим внимание на два медных Ethernet-разъема. Первый – подключен к PS-части Zynq. Линии MDIO из раъема идут к PHY Ethernet от Realtek RTL8211F. От PHY к PS идёт подключение через интерфейс RGMII:

Обзор отладочной платы ALINX AXU15EGB - 47

Второй подключен к программируемой логике по тому же принципу с тем же PHY Ethernet-контроллером:

Обзор отладочной платы ALINX AXU15EGB - 48

Помимо этого на плате установлен разъём для подключения 2-ух SFP/SFP+ модулей. Оба SFP-разъема подключаются к PL-логике устройства:

Обзор отладочной платы ALINX AXU15EGB - 49

Помимо этого имеется ещё генератор дифференциального тактового сигнала для работы трансиверов SiT9121AI-2B1-33E125.000000 с выходной тактовой частотой в 125МГц:

Обзор отладочной платы ALINX AXU15EGB - 50

Помимо вполне стандартных сетевых интерфейсов на плате имеется подключение через SMA-разъемы к GTH-интерфейсам с возможностью передачи данных до 100 Гбит/с:

Обзор отладочной платы ALINX AXU15EGB - 51

Интерфейс FMC

На плате имеется FMC-разъем для подключения большого количества различных модулей, которые я перечислил в начале статьи. Схематик ввиду большого его размера – прикладывать тут не буду. Приведу лишь фото интерфейса:

Обзор отладочной платы ALINX AXU15EGB - 52

Интерфейсы USB

В части USB-подключений плата также предоставляет целую кучу возможностей. На плате установлен USB3.1 хаб GL3523T-QFN76, который подключен к соответствующей части PS-части Zynq MPSoC:

Обзор отладочной платы ALINX AXU15EGB - 53

К хабу подключены 2 USB3.0 и 2 USB2.0 разъема. Правда, на схеме все 4 почему-то обозначены как USB3.0-разъема:

Обзор отладочной платы ALINX AXU15EGB - 54

Помимо этого на плате установлен USB2.0 PHY контроллер USB3320C-EZK-TR, который подключен к USB-хабу:

Обзор отладочной платы ALINX AXU15EGB - 55

Интерфейс microSD

На плате имеется SD-разъём для подключения внешнего накопителя данных или источника загрузки. Разъём на плате подключается к Zynq, осуществляется через расширитель портов SDIO с преобразователем уровня логического сигнала 1TXS02612RTWR:

Обзор отладочной платы ALINX AXU15EGB - 56

Интерфейс SATA

Ещё одна интересная возможность, которая предоставляется платой – это возможность подключить до 2-х SATA устройств, будь то SSD или HDD:

Обзор отладочной платы ALINX AXU15EGB - 57

Обзор отладочной платы ALINX AXU15EGB - 58

Интерфейс M.2

Приятная особенность платы – наличие M.2 разъёма с ключом М. Сюда возможно подключить любое подходящее PCI-e устройство, например, SSD-диск подходящего форм-фактора:

Обзор отладочной платы ALINX AXU15EGB - 59

Интерфейс Display Port

Для подключения внешнего дисплея вместо HDMI на плате использован интерфейс Display Port:

Обзор отладочной платы ALINX AXU15EGB - 60

Обзор отладочной платы ALINX AXU15EGB - 61

Обзор отладочной платы ALINX AXU15EGB - 62

Обзор отладочной платы ALINX AXU15EGB - 63

Интерфейс MIPI

Для подключения внешних мультимедиа-устройств, будь то дисплей или камера – на плате предусмотрен интерфейс MIPI:

Обзор отладочной платы ALINX AXU15EGB - 64

Интерфейс CAN

В случае, если плата разрабатывается под какие-либо automotive-применения, – выведен интерфейс CAN с подключением в клеммный разъем HT3.96-4P к контроллеру SN65HVD232 через преобразователь логических уровней TXS0102DCU. Сигнальные линии подключаются к PS-части Zynq:

Обзор отладочной платы ALINX AXU15EGB - 65

Интерфейс RS-485

Для промышленных применений на плате реализован вывод интерфейса RS-485 через приемопередатчик MAX3485ESA. Подключается к PL-части Zynq:

Обзор отладочной платы ALINX AXU15EGB - 66

Обзор отладочной платы ALINX AXU15EGB - 67

Температурный I2C сенсор

Для случаев, когда потребуется мониторинг внешней температуры, – на плате имеется I2C температурный сенсор LM75DM-33R2, который подключается к PS-части Zynq:

Обзор отладочной платы ALINX AXU15EGB - 68

Батарейка

На плате имеется батарейный держатель, который снабжает соответствующий банк питания в PS-части:

Обзор отладочной платы ALINX AXU15EGB - 69

EEPROM

Помимо всего прочего на плате имеется I2C EEPROM 24LC04 объёмом 4 Кбит, которая подключена к PS-части устройства:

Обзор отладочной платы ALINX AXU15EGB - 70

UART-интерфейсы

Для коммуникации с внешними устройствами и работы с консолью Zynq – на плате имеется два интерфейса UART: первый подключен к PS-части устройства, второй подключен к PL-части устройства. В обоих случаях подключение осуществляется с использованием USB-to-UART конвертера CP2102N-A01-GQFN28R по miniUSB-порту:

Обзор отладочной платы ALINX AXU15EGB - 71

К PS-части UART-интерфейс подключается через преобразователь логических уровней 3.3V-to-1.8V TXS0102DCU:

Обзор отладочной платы ALINX AXU15EGB - 72

Интерфейсы GPIO

В дополнение к широчайшим возможностям отладки – на плате имеется стандартная 40-пиновая гребенка с GPIO-пинами:

Обзор отладочной платы ALINX AXU15EGB - 73

LED & Buttons

Для того, чтобы реализовать простую индикацию и базовое взаимодействие с пользователем – на плате имеется несколько LED-индикаторов и кнопок.

Первый – индикатор питания 3.3V и второй LED подключен к PS-части:

Обзор отладочной платы ALINX AXU15EGB - 74

Имеется второй LED-индикатор, который подключен к PS-части:

Обзор отладочной платы ALINX AXU15EGB - 75

Третий LED-индикатор подключен к PL-части:

Обзор отладочной платы ALINX AXU15EGB - 76

Четвёртый, служебный, индикатор используется для того, чтобы обозначить, что загрузка bitstream в FPGA прошла успешно:

Обзор отладочной платы ALINX AXU15EGB - 77

Плюсом к этому на плате расположено несколько кнопок. Первая – используется для включения питания платы, вторая – подключена к PL-части, а третья – подключена к PS-части:

Обзор отладочной платы ALINX AXU15EGB - 78

Обзор отладочной платы ALINX AXU15EGB - 79

Обзор отладочной платы ALINX AXU15EGB - 80

В общем, достаточно стандартный набор. Теперь перейдём к рассмотрению того, что поставляется с платой в части примеров и SDK для работы с платой.

BSP и примеры проектов идущие в комплекте

В комплекте с платой идёт архив размером 7.2 Гбайт, в котором представлено самое подробное описание отладки:

  • Механические размеры и dxf-файлы плат;
  • Схематики на каждый из компонент;
  • Большое количество примеров.

Если просто перечислить набор примеров, то получится примерно следующий список.

Примеры для работы с периферией из ПЛИС и baremetal-приложений в PS-части:

  1. Подключение LED к PL-части с параллельным использованием логического анализатора ILA;
  2. Использование PLL в PL-части для генерации различных частот;
  3. PS RAM;
  4. ROM;
  5. FIFO;
  6. Кнопки и GPIO;
  7. PWM;
  8. UART PL;
  9. RS485 PL;
  10. PL DDR4 RAM;
  11. HDMI out (с использованием FMC-платы);
  12. HDMI in (с использованием FMC-платы);
  13. Примеры с семисегментным дисплеем;
  14. Ethernet BER тест;
  15. Пример использования GTH-интерфейса;
  16. PS Hello World;
  17. PS RTC;
  18. PS MIO;
  19. PS UART;
  20. PS CAN;
  21. PS I2C;
  22. PS Display Port;
  23. PS SD Card;
  24. PS Network;
  25. PS Network with remote applications;
  26. PS Sysmon;
  27. PS EMIO;
  28. PS AXI GPIO;
  29. PS RS485;
  30. PL Ethernet;
  31. Custom PWM IP;
  32. Dualcore AMP;
  33. FreeRTOS;
  34. PL read write PS DDR;
  35. BRAM test;
  36. DMA Loopback;
  37. AD7606 DMA;
  38. AD9708 DMA;
  39. AD9280 DMA with Display Port;
  40. AD9238 DMA with Display Port;
  41. AD7606 DMA with Display Port;
  42. AD9767;
  43. AN5642 + SD Card;
  44. AN5642 + LwIP;
  45. AN5641 + MIPI + Displya Port;
  46. LCD + Touch;
  47. AD9280 + LwIP;
  48. AD9238 + LwIP;
  49. AD7606 + LwIP;
  50. LED + QSPI + SDCard.

В комплекте также множество примеров работы с периферией из Linux:

  1. Сборка petalinux и куча примеров для него;
  2. Сборка драйверов для Linux;
  3. Драйверы для Char-устройств;
  4. Device Tree;
  5. Pinctl GPIO подсистема в Linux;
  6. Concurrent system calls;
  7. Чтение GPIO;
  8. Таймеры;
  9. Прерывания;
  10. Система ввода/вывода;
  11. Неблокируемый ввод/вывод;
  12. Асинхронный ввод/вывод;
  13. Работа с платформой с Device Tree;
  14. I2C;
  15. USB;
  16. SPI;
  17. UART;
  18. Работа с блочными устройствами;
  19. Работа с сетевыми устройствами;
  20. DMA Loop;
  21. Работа с тачсенсорами;
  22. Работа с LCD-дисплеями;
  23. Работа с ADC AD9238 и AD7606 в Linux;
  24. Работа с DAC AD9767 из Linux.

В теории по каждому из этих примером можно было бы написать целую книгу или цикл статей. Данный BSP я выложил в своем телеграм-канале по Zynq.

Заключение

Долго думал, чем завершить данный обзор. Плата, конечно, стоит очень дорого и обычному энтузиасту недоступна, но объём возможностей и ресурсов, которые она предоставляет в итоге, – точно соответствует её цене. Мне показалось интересным заглянуть за пределы доступного, поковырять что-то недоступное и предоставить это общественности. Возможно, чуть позже напишу статью по теме сборки Linux под Ultrascale+ потому что там своих граблей оказалось навалено невероятно много и всё оказалось не настолько тривиально, как в Zynq-7000. И есть пара кейсов на рассмотрение, связанных с PL Ethernet и AXI ENET, но это уже предмет отдельного разговора.

Спасибо, что дочитали до конца. До встречи в следующих статьях! 🙂


Автор: Андрей

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js