Часть 1. Платформа быстрого прототипирования Analog Devices/Xilinx SDR: возможности, преимущества и инструменты
Между концепцией беспроводной системы и её практическим воплощением существует значительный разрыв. Для преодоления этого разрыва обычно привлекаются команды инженеров с самыми разными навыками (радиочастотные технологии, программное обеспечение, цифровые сигнальные процессоры, HDL и встраиваемые системы на базе Linux®), и во многих случаях проекты срываются на ранних этапах разработки из-за сложности координации различных проектных групп.
В этой статье, состоящей из четырёх частей, мы рассмотрим достижения в области платформ и инструментов, которые позволяют разработчикам быстро моделировать и создавать прототипы беспроводных систем, а также прокладывать путь к их внедрению в производство. В качестве реального примера мы создадим прототип беспроводной программно-определяемой радиосистемы, которая принимает и декодирует сигналы automatic dependent surveillance broadcast (ADS-B), чтобы определять и сообщать о местоположении, высоте и скорости коммерческих самолётов, пролетающих поблизости. Для этого нам понадобятся MATLAB® и Simulink, а также навыки интеграции аппаратного и программного обеспечения. Аппаратной платформой станет система прототипирования программно-определяемых радиосистем (SDR) от Analog Devices/Xilinx®.
С помощью MATLAB и Simulink® будут выполнены следующие задачи:
Разработка алгоритмов обработки сигналов, используемых для декодирования сообщений ADS-B
Моделирование радиочастотного приёмопередатчика, принимающего сигналы ADS-B
Генерация кода на языках C и HDL
Проверка HDL-кода с использованием записанных и текущих данных на целевом приёмопередатчике и ПЛИС
Конечным результатом станет работающая система радиочастотной программно-определяемой радиосвязи на готовом к использованию оборудовании, которое мы доставим в местный аэропорт и проверим его производительность и функциональность.
В первой части этой статьи, состоящей из четырёх частей, мы расскажем о системе прототипирования SDR от Analog Devices/Xilinx, её возможностях и преимуществах, а также дадим краткое описание процесса работы с инструментом. Во второй части мы рассмотрим сигналы automatic dependent surveillance broadcast (ADS-B) и объясним, как декодировать их информацию в MATLAB и Simulink при моделировании. В третьей части мы расскажем и покажем, как использовать аппаратно-программный контур (HIL) и захватывать сигналы с помощью целевого приёмопередатчика, при этом обрабатывая сигнал на хосте в Simulink для проверки. В четвёртой части мы покажем, как взять алгоритм, разработанный во второй части и проверенный в третьей, и с помощью HDL Coder и Embedded Coder от MathWorks сгенерировать код и развернуть его на производственном оборудовании. В конце мы протестируем платформу с реальными сигналами ADS-B в аэропорту.
Введение
В условиях экспоненциального роста количества способов и средств коммуникации, которыми пользуются люди, простая и экономичная модификация радиоустройств стала критически важной задачей для бизнеса. В связи с этим в последнее время широко применяется программно-определяемая радиотехнология, поскольку она обеспечивает гибкость, экономическую эффективность и мощность, необходимые для развития коммуникаций.1 Цель SDR-системы — максимально реализовать алгоритмы модуляции/демодуляции и обработки данных в программном обеспечении и перепрограммируемой логике, чтобы систему связи можно было легко перенастроить, просто обновив программное обеспечение и перепрограммируемую логику, без внесения каких-либо изменений в аппаратную платформу.
С появлением устройств "система на кристалле" (SoC), таких как Xilinx Zynq® все программируемые SoC, сочетающие в себе универсальность центрального процессора и вычислительную мощность ПЛИС, позволяют разработчикам объединить функции обработки данных системы SDR в одном устройстве, одновременно интегрируя дополнительные задачи обработки. Сложные задачи обработки, такие как алгоритмы модуляции/демодуляции данных, передаются программируемой логике устройства, в то время как такие задачи, как декодирование и визуализация данных, мониторинг и диагностика системы, а также пользовательский интерфейс, передаются процессору.
В то же время создание прототипов беспроводных систем было предметом дискуссий на протяжении десятилетий, но только в последние годы превратилось в полноценный процесс проектирования для ПЛИС — от создания модели до полной реализации — благодаря развитию инструментов моделирования, таких как MATLAB и Simulink от MathWorks. Создание прототипов беспроводных систем меняет подход к работе инженеров и учёных, перенося задачи проектирования из лабораторий и полевых условий на настольные компьютеры.2 Теперь можно смоделировать всю беспроводную систему, например, программно-определяемую радиосистему, что позволит инженеру наблюдать за поведением и настраивать её до того, как она будет внедрена в реальных условиях. Это даёт ряд преимуществ, таких как ускорение интеграции системы и снижение зависимости от доступности оборудования. Кроме того, после создания модели SDR в Simulink можно автоматически сгенерировать код на языках C и HDL для реализации на системах на кристалле Zynq, что экономит время и позволяет избежать ошибок, связанных с ручным кодированием. Риск дополнительно снижается благодаря привязке системной модели к среде быстрого прототипирования, которая позволяет тестировать систему SDR в реальных условиях.
В этой первой части серии из четырёх статей мы расскажем о системе быстрого прототипирования SDR от Analog Devices/Xilinx, её возможностях и преимуществах, а также дадим краткое описание процесса работы с инструментом. В статье показано, как технология радиочастотных интегральных схем Analog Devices, а также аппаратное и программное обеспечение для эталонного проектирования требуют меньших навыков проектирования, что позволяет клиентам снизить риски и ускорить выход на рынок.
Zynq for SDR
Для выполнения комплекса задач по обработке данных, передаче информации и работе с пользовательским интерфейсом требуются усовершенствованные системы SDR, которые предъявляют разные требования к пропускной способности и ограничениям в режиме реального времени. Аппаратная платформа, выбранная для реализации такой системы, должна быть надёжной и в то же время масштабируемой, чтобы в будущем можно было улучшать и расширять систему. Программируемые системы на кристалле Xilinx Zynq-7000 All Programmable SoC отвечают этим требованиям, предоставляя высокопроизводительную систему обработки данных в сочетании с программируемой логикой, как показано на рисунке 1.3 Сочетание программируемой логики и системы обработки данных обеспечивает превосходную мощность параллельной обработки, производительность в режиме реального времени, высокую скорость вычислений и универсальность подключения.

Система обработки данных в Zynq SoC состоит из двухъядерного процессора ARM®Cortex®-A9 в сочетании с сопроцессором NEON и расширениями для операций с плавающей запятой, которые ускоряют выполнение программного обеспечения. На двухъядерном процессоре ARM можно использовать встроенную систему Linux или операционную систему реального времени, чтобы в полной мере использовать возможности системы. Процессор является автономным устройством и может использоваться без необходимости настройки программируемой логики, что крайне важно для разработчиков программного обеспечения, которые хотят начать писать код параллельно с разработчиками аппаратного обеспечения, проектирующими структуру FPGA.
Что касается программируемой логики, устройство содержит до 444 000 логических ячеек и 2200 блоков цифровой обработки сигналов, которые обеспечивают высокую пропускную способность, позволяя устройству Zynq справляться с различными сложными задачами по обработке сигналов. Пять высокоскоростных межсоединений AMBA®-4 AXI с высокой пропускной способностью обеспечивают тесную связь программируемой логики с процессорной системой.4
Гибкая широкополосная радиочастотная микросхема приёмопередатчика AD9361 для программно-определяемых радиосистем
В последние годы (уже, скорее, десятилетия, — прим. пер.) компания Analog Devices выпустила на рынок революционные продукты для программно-определяемых радиосистем, отвечающие всё более растущим требованиям и системным архитектурам. Одними из самых важных продуктов Analog Devices в этой области являются интегрированные радиочастотные приёмопередатчики AD9361/AD9364. AD9361 (2 × 2)5 и AD9364 (1 × 1)6 — это высокопроизводительные интегральные микросхемы радиочастотных приёмопередатчиков с высокой степенью интеграции, предназначенные для использования в программно-определяемых радиосистемах в таких областях, как инфраструктура беспроводной связи, системы оборонной электроники, радиочастотное испытательное оборудование и контрольно-измерительные приборы, а также универсальные программно-определяемые радиоплатформы. Устройства сочетают в себе радиочастотный входной каскад с гибкой секцией основной полосы частот со смешанным сигналом и встроенными синтезаторами частот, что упрощает разработку за счёт настраиваемого цифрового интерфейса для подключения к процессору или ПЛИС. Микросхемы работают в диапазоне от 70 МГц до 6 ГГц, охватывая большинство лицензированных и нелицензированных диапазонов, и поддерживают ширину канала от менее 200 кГц до 56 МГц за счёт изменения частоты дискретизации, цифровых фильтров и децимации. Все эти параметры можно настроить в устройствах AD9361 и AD9364.7 На рисунке 2 представлена блок-схема устройства AD9361.

Чтобы помочь клиентам сократить время выхода на рынок и общие трудозатраты на разработку, компания Analog Devices пошла ещё дальше и предложила решения на основе программно-определяемых радиосистем в рамках полноценной экосистемы с возможностью беспрепятственного подключения к ПЛИС, что обеспечивает быстрое прототипирование и разработку комплексных радиосистем. Платы для быстрой разработки и прототипирования AD-FMCOMMSx-EBZ представляют собой семейство высокоскоростных аналоговых модулей FMC, оснащённых гибкими радиочастотными приёмопередатчиками AD9361 или AD9364 или дискретной сигнальной цепью, которая легко подключается к платформе разработки Xilinx FPGA. Эти платы полностью настраиваются с помощью программного обеспечения без каких-либо аппаратных изменений. В комплект входят загружаемые драйверы для Linux и «голые» программные драйверы, схемы, компоновка платы и справочные материалы по проектированию, которые можно найти на соответствующих вики-сайтах Analog Devices. В таблице 1 приведены характеристики различных платформ FMCOMMSx.
Таблица 1. Платформы FMCOMMSx
Платформа |
Особенности |
AD-FMCOMMS5-EBZ |
Эта плата для быстрого прототипирования SDR с двумя микросхемами гибких приёмопередатчиков AD9361 2 × 2 обеспечивает полную синхронизацию четырёх приёмных и четырёх передающих каналов, что позволяет создать любое подмножество системы MIMO 4 × 4. Поддерживаются широкополосные порты с диапазоном частот от 70 МГц до 6 ГГц и настроенные порты с частотой 2,4 ГГц. Страница с описанием AD-FMCOMMS5-EBZ: https://wiki.analog.com/resources/eval/user-guides/ad-fmcomms5-ebz |
AD-FMCOMMS4-EBZ |
Эта плата для быстрого прототипирования SDR с гибким радиочастотным приёмопередатчиком AD9364 с конфигурацией 1 × 1 может быть настроена программно для обеспечения максимальной радиочастотной производительности в диапазоне от 2400 до 2500 МГц или для работы во всём диапазоне радиочастотной настройки AD9364 от 70 МГц до 6 ГГц для прототипирования и разработки систем. Справочная страница ресурса AD-FMCOMMS4-EBZ: https://wiki.analog.com/resources/eval/user-guides/ad-fmcomms4-ebz |
AD-FMCOMMS3-EBZ |
Эта версия платы для быстрого прототипирования SDR с 2 × 2 разъёмами, оснащенная гибкой микросхемой радиочастотного приемопередатчика AD9361, поддерживает полный диапазон радиочастотной настройки AD9361 от 70 МГц до 6 ГГц. Этот комплект идеально подходит для разработчиков систем беспроводной связи, которым нужна унифицированная платформа для разработки с широкими возможностями настройки. Страница с описанием AD-FMCOMMS3-EBZ: https://wiki.analog.com/resources/eval/user-guides/ad-fmcomms3-ebz |
AD-FMCOMMS2-EBZ |
Эта плата для быстрого прототипирования SDR с 2 × 2 разъемами, оснащённая гибкой микросхемой радиочастотного приёмопередатчика AD9361, настроена на максимальную радиочастотную производительность в диапазоне от 2400 до 2500 МГц. Этот комплект идеально подходит для радиочастотных инженеров, которым нужна оптимизированная система, соответствующая техническим характеристикам AD9361 в указанном диапазоне радиочастотного спектра. Страница с описанием AD-FMCOMMS2-EBZ: https://wiki.analog.com/resources/eval/user-guides/ad-fmcomms2-ebz |
Платформа для быстрого прототипирования Zynq SDR
Эталонный дизайн
Вместе с платформами FMCOMMSx компания Analog Devices предоставляет полный фреймворк Vivado с программной инфраструктурой на базе Linux и bare metal, которую можно использовать как для создания прототипов, так и в составе конечной производственной системы. На рисунке 3 показана инфраструктура Analog Devices Zynq для поддержки плат FMCOMMSx.

На этой схеме высокого уровня показано, как эталонная разработка Analog Devices распределена по системе на кристалле Xilinx Zynq. Выход HDMI используется для вывода интерфейса Linux на монитор, а клавиатура и мышь подключаются к системе через порт USB 2.0. Процессор ARM Cortex-A9 работает под управлением Ubuntu Linux от Analog Devices. Сюда входят драйверы ввода-вывода Linux, необходимые для взаимодействия с аппаратным обеспечением Analog Devices FMCOMMS, пользовательское приложение IIO Oscilloscope (Scope)8 для мониторинга и управления, сервер libiio9, который позволяет в режиме реального времени получать данные и управлять системой по протоколу TCP, а также клиенты, работающие на удалённом компьютере, и дополнительные пользовательские приложения, включающие код на языке C, сгенерированный Embedded Coder для модели Simulink контроллера.
Программная инфраструктура
Все драйверы ADI для Linux основаны на подсистеме промышленного ввода-вывода (Industrial I/O, IIO) Linux, которая теперь включена во все основные ядра Linux. IIO Scope — это приложение с открытым исходным кодом для Linux, разработанное компанией Analog Devices. Оно работает на двухъядерных процессорах ARM Cortex-A9 в Xilinx Zynq и позволяет отображать данные в реальном времени, полученные с любой платы Analog Devices FMC, подключённой к платформе Xilinx Zynq. Данные можно отображать в виде графиков во временной, частотной области или в виде созвездия. Для сохранения собранных данных с целью дальнейшего анализа поддерживаются различные популярные форматы файлов, такие как значения, разделённые запятыми, или файлы данных MATLAB с расширением .mat. IIO Scope предоставляет графический пользовательский интерфейс для изменения или просмотра конфигурации плат Analog Devices FMC. Сервер libiio позволяет в режиме реального времени получать данные и управлять системой по протоколу управления передачей (TCP) с помощью клиентов, работающих на удалённом компьютере.10 Сервер работает на встроенном устройстве под управлением Linux и обеспечивает обмен данными в режиме реального времени по протоколу TCP между устройством и удалённым клиентом. Эта библиотека абстрагируется от низкоуровневых деталей аппаратного обеспечения и предоставляет простой, но полноценный программный интерфейс, который можно использовать для сложных проектов. Модульная архитектура, продуманный API и встроенные сетевые возможности позволяют пользователям создавать приложения, работающие не только на устройстве, к которому подключены устройства ввода-вывода, но и удалённо, через сеть. Изначально она была ориентирована на Linux, но теперь её можно использовать и в Windows, подключившись к удалённому серверу библиотеки. Она написана на языке C и распространяется по лицензии LGPL. Есть привязки для C#, Python и MATLAB. Клиент MathWorks IIO11 доступен в виде системного объекта для интеграции в собственные приложения MATLAB и Simulink. Он предназначен для обмена данными по Ethernet с аппаратной системой ADI, подключённой к платформе FPGA/SoC под управлением дистрибутива ADI Linux, что позволяет модели MATLAB или Simulink выполнять следующие функции:
Потоковая передача данных на целевой объект и обратно
Управление настройками целевого устройства
Контроль различных целевых параметров
Системный объект ввода-вывода доступен как в MATLAB, так и в Simulink, в зависимости от того, вызывает ли пользователь его из скрипта MATLAB или встраивает в системный блок MATLAB. Программное обеспечение Linux и инфраструктура HDL, предоставляемые компанией ADI для платформ FMCOMMS, — это отличная среда для создания прототипов программно-определяемых радиосистем в сочетании с инструментами MathWorks и Xilinx. Кроме того, она содержит готовые к использованию компоненты, которые можно интегрировать в программно-определяемую радиосистему, что позволяет сократить время и затраты на переход от концепции к производству.
Чтобы помочь клиентам быстро и легко освоиться с системным объектом IIO, мы предоставляем несколько примеров на MATLAB и Simulink, основанных на этом интерфейсе, таких как приёмник сигнальных фреймов,12 передатчик и приёмник QPSK,13 а также передатчик и приёмник LTE.14 В этих примерах платформы FMCOMMSx настраиваются с помощью системного объекта IIO и используются в качестве радиочастотных интерфейсных устройств, которые передают или принимают аналоговые сигналы по радиоканалу. Эти сигналы передаются на целевое устройство или от него через системный объект IIO. Вся остальная обработка сигналов происходит в MATLAB или Simulink. На рисунке 4 представлен снимок экрана с примером beacon frame receiver, на котором показано типичное соединение между системным объектом IIO и другими блоками Simulink.

Поддержка MathWorks для Zynq
Поддержка SDR на базе Zynq в MathWorks осуществляется по следующим четырём направлениям:
1. Модель AD9361 в Simulink
Поскольку AD9361 представляет собой интегрированный радиочастотный приёмопередатчик, проверка сигнала и контроль внутренней работы микросхемы практически невозможны. По этой причине компании MathWorks и Analog Devices совместно разработали модель SimRF™ для AD9361, позволяющая имитировать работу микросхемы, чтобы клиенты могли точно видеть, что происходит внутри и как ведёт себя микросхема в различных условиях тестирования, которые сложно воспроизвести в реальных условиях. SimRF предоставляет библиотеку компонентов и механизм моделирования для проектирования радиочастотных систем с использованием эквивалентных блоков основной полосы частот, таких как усилители, микшеры и блоки S-параметров. Это полезный и подходящий инструмент для моделирования радиочастотного приёмопередатчика AD9361. Модель радиочастотного приёмопередатчика AD9361 Agile на системном уровне, показанная на рисунке 5, в точности воспроизводит функциональность AD9361 и доступна пользователям в виде пакета аппаратной поддержки MathWorks.15

Модели SimRF были протестированы в лабораторных условиях с помощью спектральных измерений мощности. Определены характеристики шума и нелинейности приёмопередатчика на разных частотах и уровнях мощности. Затем модели были доработаны таким образом, чтобы генерировать те же характеристики, что подтверждает их универсальность.
С помощью модели SimRF приёмопередатчика AD9361 пользователи могут делать следующее:
Прогнозирование влияния радиочастотных помех на тестовые сигналы
Использование эталонных сигналов и сигналов LTE
Генерация или импорт тестовых векторов и оценка влияния нелинейности, шума, коэффициента усиления, фазового сдвига, спектральной утечки и других особенностей, присущих радиочастотному передатчику и приёмнику.
Ввод помех и анализ результатов во временной или частотной области.
2. Набор функций и инструментов для систем связи и цифровой обработки сигналов
Продукты MathWorks, такие как Communications System Toolbox,™16 Signal Processing Toolbox,™17 DSP System Toolbox,™18 и SimRF19, содержат стандартные отраслевые алгоритмы и приложения для системного анализа, проектирования и настройки программно-определяемых радиосистем. Все эти инструменты позволяют создавать высокоточные программно-определяемые радиомодели, которые можно использовать для проверки поведения и производительности системы связи перед её физической реализацией.
3. Рабочее окружение Simulink для Zynq
MATLAB и Simulink от MathWorks — это среды для многодоменного моделирования и проектирования на основе моделей, которые хорошо подходят для моделирования программно-определяемых радиосистем с алгоритмами связи. Алгоритмы связи регулируют коэффициент усиления, смещение частоты, задержку и другие параметры, часто для лучшей синхронизации между передатчиком и приёмником. Оценка алгоритмов связи с помощью моделирования — эффективный способ определить, насколько программно-определяемая радиосистема соответствует требованиям, а также сократить время и затраты на разработку алгоритмов, прежде чем приступать к дорогостоящим испытаниям на оборудовании. На рисунке 6 показан эффективный процесс разработки алгоритма коммуникации, состоящий из следующих этапов:
Создание точной SDR-модели с помощью библиотек, предоставляемых средой проектирования на основе моделей.
Имитация поведения системы, чтобы убедиться, что она работает должным образом.
Генерация исходного кода на языке C и HDL для тестирования и реализации в режиме реального времени.
Тестирование алгоритмов связи с помощью прототипа.
После того как во время моделирования и тестирования на прототипе будет доказана удовлетворительная производительность системы SDR, можно приступать к её внедрению в конечную производственную систему.

4. Интеграция платформы Simulink с Zynq SDR Kit
После того как система SDR будет полностью протестирована в среде моделирования с помощью таких инструментов, как Embedded Coder®20 и HDL Coder™21 от MathWorks, пользователь может сгенерировать код на языке C с помощью Embedded Coder и VHDL или Verilog с помощью HDL Coder, а затем развернуть код на прототипе оборудования для тестирования, а затем — на конечном производственном устройстве. На этом этапе определяются требования к программному и аппаратному обеспечению, такие как использование фиксированной запятой и соблюдение временных параметров. Автоматическая генерация кода помогает сократить время, необходимое для перехода от концепции к реальной реализации системы, и позволяет избежать ошибок при ручном кодировании, гарантируя соответствие фактической реализации SDR модели. На рисунке 7 показан реальный процесс, состоящий из шагов, необходимых для моделирования системы SDR в Simulink и переноса её в конечную производственную систему на базе Xilinx Zynq SoC.

Первый шаг — моделирование и симуляция системы SDR в Simulink. На этом этапе алгоритм связи разбивается на блоки, реализованные программно, и блоки, которые будут реализованы с помощью программируемой логики. После разделения на блоки и завершения симуляции модель SDR преобразуется в код на языке C и HDL с помощью Embedded Coder и HDL Coder. Для проверки работоспособности алгоритма связи и дальнейшей настройки модели SDR перед переходом к этапу реального производства используется система прототипирования на базе Zynq. На этапе производства автоматически сгенерированный код на языке C и HDL интегрируется в сложную производственную систему. Такой подход гарантирует, что к моменту запуска в производство алгоритм связи будет полностью проверен и протестирован, а это значительно повышает надёжность системы. Пакеты аппаратной поддержки Zynq для Embedded Coder и HDL Coder упрощают программирование платформы Zynq, предоставляя среду для комплексного проектирования аппаратного и программного обеспечения, моделирования и верификации, которая интегрирует в рабочий процесс проектирование на основе моделей, обеспечивая быстрые циклы разработки и помогая выявлять и исправлять ошибки проектирования и спецификации на ранних этапах.22
Заключение
В этой статье проиллюстрированы требования и тенденции к современным системам SDR, а также инструменты и системы, которые MathWorks, Xilinx и Analog Devices выводят на рынок, чтобы соответствовать этим требованиям и способствовать созданию более производительных SDR-решений. Благодаря сочетанию инструментов проектирования на основе моделей и автоматической генерации кода от MathWorks с мощными микросхемами Xilinx Zynq и интегрированными радиочастотными приёмопередатчиками Analog Devices проектирование, верификация, тестирование и внедрение систем SDR могут быть более эффективными, чем когда-либо, что приводит к повышению производительности радиосистем и сокращению времени вывода их на рынок. Платформы Analog Devices FMCOMMS в сочетании с однокристальной системой Avnet Zynq-7000 AP SoC представляют собой отличную среду для создания прототипов SDR-алгоритмов, разработанных с помощью MATLAB и Simulink от MathWorks. Платформы FMCOMMS поставляются с набором эталонных проектов с открытым исходным кодом, которые могут послужить отправной точкой для всех, кто хочет оценить систему и начать новый SDR-проект.
В следующей статье этой серии мы рассмотрим процесс проектирования SDR, рассмотрев характеристики сигналов automatic dependent surveillance broadcast (ADS-B) и объяснив, как декодировать их информацию в MATLAB/Simulink в режиме моделирования.
Дополнительную информацию по темам, затронутым в этой статье, а также документацию, видео и примеры дизайна можно найти в разделе «Ссылки».
Ссылки
1 “What is Software-Defined Radio?” Wireless Innovation Forum.
2 Model-Based Design. MathWorks.
3 Zynq-7000 All Programmable SoC. Xilinx.
4 Hill, Tom. “Motor Drives Migrate to Zynq SoC with Help from MATLAB.” Xcell Journal, Issue 87, Second Quarter, 2014. (оригинальная ссылка не работает, нашел в поисковике новую, — прим. пер.)
5 AD9361.
6 AD9364.
7 “Software-Defined Radio Solutions from Analog Devices.” Analog Devices.
8 IIO Oscilloscope. Analog Devices Wiki.
9 Simulink Libiio. Analog Devices Wiki.
10 What Is Libiio? Analog Devices Wiki.
11 IIO System Object. Analog Devices Wiki.
12 Beacon Frame Receiver Example. Analog Devices Wiki.
13 QPSK Transmitter and Receiver Example. Analog Devices Wiki. (в оригинале ссылка ведёт на Beacon Frame Receiver Example, — прим. пер.)
14 LTE Transmitter and Receiver Example. Analog Devices.
15 AD9361.
16 “Communications System Toolbox.” MathWorks.
17 “Signal Processing Toolbox.” MathWorks.
18 “DSP System Toolbox.” MathWorks.
19 SimRF. MathWorks.
20 “HDL Coder.” MathWorks.
21 “Embedded Coder.” MathWorks.
22 “Xilinx Zynq Support from Simulink.” MathWorks.
LinkToOS
Публиковался перевод этой работы в журнале “Компоненты и технологии” 2016-3.