DSP System Toolbox

DSP System Toolbox предоставляет алгоритмы, приложения и дисплеи для проектирования, симуляции и анализа систем обработки сигналов в MATLAB и Simulink. Вы можете моделировать системы ЦОС в реальном времени для беспроводной связи, радаров, аудио, медицинских устройств, IoT и других применений.

С помощью DSP System Toolbox вы можете проектировать и анализировать КИХ, БИХ, многоскоростные, многоступенчатые и адаптивные фильтры. Вы можете передавать сигналы от переменных, файлов данных и сетевых устройств для разработки и верификации систем. Приложения Time Scope, Spectrum Analyzer и Logic Analyzer позволяют динамически визуализировать и измерять потоковые сигналы. Для прототипирования на настольных компьютерах и развертывания на встраиваемых процессорах, включая архитектуры ARM Cortex, продукт поддерживает генерацию кода C/C++. Он также поддерживает бит-точное моделирование с фиксированной точкой и генерацию HDL-кода для фильтров, БПФ, ОБПФ и других алгоритмов.

Алгоритмы доступны в виде функций MATLAB, системных объектов и блоков Simulink.

DSP System Toolbox

Возможности

  • Потоковая обработка сигналов в MATLAB: обработка потоковых сигналов в MATLAB.
  • Блоки обработки сигналов и линейной алгебры для Simulink: используйте библиотеку блоков алгоритмов обработки сигналов для фильтров, преобразований и линейной алгебры.
  • Создание односкоростных и многоскоростных КИХ, БИХ и адаптивных фильтров: используйте обширные алгоритмы проектирования и реализации фильтров для КИХ, БИХ, многоступенчатых, многоскоростных и адаптивных фильтров.
  • Дисплеи сигналов, анализаторы и измерения: выполняйте визуализацию во временной или частотной области, измерения и анализ потоковых сигналов в MATLAB и Simulink.
  • Моделирование и симуляция с фиксированной точкой: создавайте цифровые фильтры и генерируйте эффективный, синтезируемый и портируемый Verilog и VHDL код для реализации в ПЛИС или ASIC.
  • Генерация кода C и C++ для настольных компьютеров и встраиваемых процессоров: генерируйте исходный код C и C++ или MEX-функцию, настроенную на производительность из ваших алгоритмов обработки сигналов и системных моделей.
  • Генерация HDL-кода для ПЛИС и ASIC: разрабатывайте цифровые фильтры и генерируйте эффективный, синтезируемый, и портируемый VHDL и Verilog код для реализации в FPGA или ASIC.

Ключевые особенности

  • Потоковая обработка сигналов в MATLAB
  • Блоки обработки сигналов и линейной алгебры для Simulink
  • Односкоростные, многоскоростные, КИХ, БИХ и адаптивные фильтры
  • Time Scope, Spectrum Analyzer и Logic Analyzer для визуализации и измерения потоковых сигналов
  • Моделирование и симуляция алгоритмов обработки сигналов с фиксированной точкой
  • Поддержка генерации кода C и С++
  • Поддержка генерации HDL-кода

Потоковая обработка сигналов в MATLAB

Код MATLAB, реализующий основной цикл потоковой передачи (слева). Временная область (вверху справа) и анализатор спектра (внизу справа) визуализируют и измеряют живые сигналы по мере их генерации и обработки
Код MATLAB, реализующий основной цикл потоковой передачи (слева). Временная область (вверху справа) и анализатор спектра (внизу справа) визуализируют и измеряют живые сигналы по мере их генерации и обработки

DSP System Toolbox предоставляет платформу для обработки потоковых сигналов в MATLAB. Продукт включает библиотеку алгоритмов обработки сигналов, оптимизированных для обработки потоковых сигналов, таких как односкоростные и многоскоростные фильтры, адаптивная фильтрация и БПФ. Продукт идеально подходит для проектирования, симуляции и развертывания решений обработки сигналов для таких сфер, как аудио, биомедицина, связь, управление, сейсмика, сенсоры и речь. 

Методы потоковой обработки сигналов позволяют обрабатывать непрерывно текущие потоки данных, что часто может ускорить моделирование путем разделения входных данных на кадры и обработки каждого кадра по мере его получения. Например, потоковая обработка сигналов в MATLAB позволяет обрабатывать многоканальное аудио в режиме реального времени. 

Потоковая обработка сигналов обеспечивается с помощью библиотеки компонентов алгоритмов ЦОС, называемых Системными объектами, для представления алгоритмов, управляемых данными, источников и приемников. Системные объекты позволяют создавать потоковые приложения путем автоматизации таких задач, как индексирование данных, буферизация и управление состоянием алгоритмов. Системные объекты MATLAB можно смешивать со стандартными функциями и операторами MATLAB. 

Вы можете использовать приложения Time Scope и Spectrum Analyzer для визуализации и измерения потоковых сигналов. 

Вы можете применять односкоростные, многоскоростные и адаптивные фильтры к потоковым данным, используя алгоритмы, оптимизированные для потоковых сигналов и данных. 

Код MATLAB, реализующий основной цикл потоковой передачи (слева). Временная область (вверху справа) и анализатор спектра (внизу справа) визуализируют и измеряют живые сигналы по мере их генерации и обработки Код MATLAB, реализующий основной цикл потоковой передачи (слева). Временная область (вверху справа) и анализатор спектра (внизу справа) визуализируют и измеряют живые сигналы по мере их генерации и обработки

Библиотека алгоритмов проектирования, реализации и тестирования систем ЦОС

Частичные списки алгоритмов обработки сигналов, доступные в MATLAB, отображаются в справке командной строки или обнаруживаются через автозаполнение
Частичные списки алгоритмов обработки сигналов, доступные в MATLAB, отображаются в справке командной строки или обнаруживаются через автозаполнение
Частичные списки алгоритмов обработки сигналов, доступные в MATLAB, отображаются в справке командной строки или обнаруживаются через автозаполнение Частичные списки алгоритмов обработки сигналов, доступные в MATLAB, отображаются в справке командной строки или обнаруживаются через автозаполнение

DSP System Toolbox предоставляет более 350 алгоритмов, оптимизированных для проектирования, реализации и валидации потоковых систем - будь то функции MATLAB или системные объекты MATLAB. Алгоритмы поддерживают типы данных с плавающей точкой двойной и одиночной точности. Большинство алгоритмов также поддерживают целочисленные типы данных, а также типы данных с фиксированной точкой, для которых требуется Fixed-Point Designer. 

В MATLAB категории алгоритмов включают:

Многоскоростные cистемы

Эффективное преобразование частоты дискретизации с произвольными факторами. Указанные примеры включают код MATLAB, демонстрирующий различные реализации структуры и анализ затрат, в том числе структуры Фэрроу
Эффективное преобразование частоты дискретизации с произвольными факторами. Указанные примеры включают код MATLAB, демонстрирующий различные реализации структуры и анализ затрат, в том числе структуры Фэрроу

DSP System Toolbox в MATLAB поддерживает многоскоростную обработку для преобразования частоты дискретизации и моделирования систем, в которых необходимо взаимодействовать с различными частотами дискретизации или тактовыми частотами. Многоскоростной функционал включает в себя многоступенчатые и многоскоростные фильтры, такие как halfband КИХ и БИХ фильтры, полифазные фильтры, CIC-фильтры и фильтры Фэрроу. Он также включает в себя операции с сигналами, такие как интерполяция, децимация и произвольное преобразование частоты дискретизации. 

Эффективное преобразование частоты дискретизации с произвольными факторами. Указанные примеры включают код MATLAB, демонстрирующий различные реализации структуры и анализ затрат, в том числе структуры Фэрроу Эффективное преобразование частоты дискретизации с произвольными факторами. Указанные примеры включают код MATLAB, демонстрирующий различные реализации структуры и анализ затрат, в том числе структуры Фэрроу

Блоки обработки сигналов для проектирования, реализации и валидации систем ЦОС

Библиотека блоков DSP System Toolbox для обработки сигналов, доступных в Simulink (вверху), а также расширенные представления решателей линейных систем (внизу слева) и преобразований (внизу справа)
Библиотека блоков DSP System Toolbox для обработки сигналов, доступных в Simulink (вверху), а также расширенные представления решателей линейных систем (внизу слева) и преобразований (внизу справа)

Блоки Simulink для обработки сигналов поддерживают типы данных двойной и одиночной точности с плавающей точкой и целочисленные типы данных. Они также поддерживают типы данных с фиксированной точкой при использовании Fixed-Point Designer. 

Блоки обработки сигналов в DSP System Toolbox включают:

Библиотека блоков DSP System Toolbox для обработки сигналов, доступных в Simulink (вверху), а также расширенные представления решателей линейных систем (внизу слева) и преобразований (внизу справа) Библиотека блоков DSP System Toolbox для обработки сигналов, доступных в Simulink (вверху), а также расширенные представления решателей линейных систем (внизу слева) и преобразований (внизу справа)

Моделирование многоскоростных систем

Модель сигма-дельта АЦП в Simulink показывает сигналы, работающие на нескольких частотах дискретизации
Модель сигма-дельта АЦП в Simulink показывает сигналы, работающие на нескольких частотах дискретизации
Модель сигма-дельта АЦП в Simulink показывает сигналы, работающие на нескольких частотах дискретизации Модель сигма-дельта АЦП в Simulink показывает сигналы, работающие на нескольких частотах дискретизации

В Simulink продукт поддерживает многоскоростную обработку для преобразования частоты дискретизации и моделирования систем, в которых необходимо взаимодействовать с различными частотами дискретизации или тактовыми частотами. Многоскоростные блоки фильтров включают в себя многокаскадные и многоскоростные фильтры, такие как CIC, FIR rate conversion, FIR interpolator и decimator, а также Банк фильтров для Диадического анализа. 

Разработка односкоростных и многоскоростных КИХ, БИХ и адаптивных фильтров

Примеры создания фильтров в MATLAB
Примеры создания фильтров в MATLAB

DSP System Toolbox предоставляет обширные алгоритмы проектирования и реализации фильтров для КИХ, БИХ, многоступенчатых, многоскоростных и адаптивных фильтров. Можно проектировать фильтры нижних частот, верхних частот, полосовые, режекторные и других типов. Вы можете реализовать их с помощью структур фильтров, таких как прямая форма КИХ, перекрытие-добавление КИХ, БИХ секции второго порядка (Biquad), каскадный allpass и решетчатые структуры. 

Вы можете создавать фильтры с помощью приложения Filterbuilder, кода MATLAB или блоков Simulink. Кроме того, можно проанализировать эффекты квантования с фиксированной точкой для КИХ и БИХ фильтров и определить оптимальную длину слова для коэффициентов фильтра. 

Можно также создать настраиваемые фильтры, в которых можно настраивать ключевые параметры фильтра, такие как пропускная способность и коэффициент усиления, во время выполнения.

Цифровые фильтры, которые вы разрабатываете с помощью DSP System Toolbox в MATLAB, также могут использоваться в моделях системного уровня в Simulink. В продукте имеется готовая к использованию библиотека блоков фильтров для проектирования, моделирования и реализации низкочастотных, высокочастотных и других фильтров непосредственно в Simulink. 

В дополнение к обычным алгоритмам проектирования КИХ и БИХ фильтров, DSP System Toolbox поддерживает специализированные фильтры и методы проектирования, такие как:

  • Продвинутые equiripple КИХ фильтры, в том числе минимального порядка, с ограниченными пульсациями и минимальной фазой;
  • Найквиста, halfband КИХ и полифазные БИХ фильтры, обеспечивающие реализации с линейной фазой, минимальной фазой и квазилинейной фазой, а также методы equiripple, с наклонной полосой заграждения и оконные методы;
  • CIC-интерполяторы и дециматоры для реализации без умножителей в программно-определяемом радио, а также сигма-дельта преобразователи;
  • Оптимизированный многоступенчатые конструкции, позволяющие оптимизировать количество каскадных ступеней для достижения наименьшей вычислительной сложности;
  • Фильтры с дробной задержкой, включая реализацию с использованием структур фильтров Фэрроу, хорошо подходящих для настраиваемых приложений фильтрации;
  • Фильтры БИХ Allpass с произвольной групповой задержкой, позволяющие компенсировать групповые задержки других фильтров БИХ для получения близкой к линейной фазовой характеристики в полосе пропускания;
  • Решетчатые волновые цифровые БИХ-фильтры для надежной реализации;
  • КИХ и БИХ фильтры с произвольной АЧХ и ФЧХ, позволяющие реализовать любую спецификацию.
Примеры создания фильтров в MATLAB Примеры создания фильтров в MATLAB

Адаптивные фильтры

Идентификация системы с помощью адаптивной RLS-фильтрации показывает, как настраивать параметры во время выполнения с помощью пользовательского интерфейса.
Идентификация системы с помощью адаптивной RLS-фильтрации показывает, как настраивать параметры во время выполнения с помощью пользовательского интерфейса.
Идентификация системы с помощью адаптивной RLS-фильтрации показывает, как настраивать параметры во время выполнения с помощью пользовательского интерфейса. Идентификация системы с помощью адаптивной RLS-фильтрации показывает, как настраивать параметры во время выполнения с помощью пользовательского интерфейса.

DSP System Toolbox предоставляет несколько методов адаптивной фильтрации в MATLAB и Simulink. Эти методы широко используются для таких задач, как идентификация системы, оценка спектра, эквализация и подавление шума. Поддерживаются фильтры на основе LMSRLSaffine projectionfast transversal, в частотной областирешетчатые и фильтры Калмана. Продукт включает алгоритмы анализа этих адаптивных фильтров, включая отслеживание коэффициентов, кривых обучения и сходимость.

Многоскоростные и многоступенчатые фильтры и анализ

Отклики equiripple реализации и соответствующей многоскоростной и многоступенчатой реализации в fvtool
Отклики equiripple реализации и соответствующей многоскоростной и многоступенчатой реализации в fvtool

DSP System Toolbox обеспечивает проектирование и реализацию многоскоростных фильтров, в том числе полифазных интерполяторов, дециматоров, преобразователей частоты дискретизации, halfband КИХ и halfband БИХ, фильтров Фарроу и CIC-фильтров и компенсаторов, а также поддержку многоступенчатых методов проектирования. Продукт также предоставляет специализированные функции анализа для оценки вычислительной сложности многоскоростных и многоступенчатых фильтров. 

Отклики equiripple реализации и соответствующей многоскоростной и многоступенчатой реализации в fvtool Отклики equiripple реализации и соответствующей многоскоростной и многоступенчатой реализации в fvtool

Сигнальные дисплеи, анализаторы и измерения

Time Scope для визуализации и измерения во временной области многоканальных сигналов
Time Scope для визуализации и измерения во временной области многоканальных сигналов
Time Scope для визуализации и измерения во временной области многоканальных сигналов Time Scope для визуализации и измерения во временной области многоканальных сигналов

DSP System Toolbox предоставляет дисплеи и логирование данных для визуализации во временной или частотной области, измерений и анализа потоковых сигналов в MATLAB и Simulink. Дисплеи содержат инструменты для измерений и статистики, знакомые пользователям осциллографов и анализаторов спектра промышленного стандарта. 

Продукт также предоставляет Logic Analyzer для отображения переходов во временных сигналах, что полезно при отладке моделей, ориентированных на реализацию в HDL. 

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

Time Scope отображает сигналы во временной области и поддерживает различные сигналы: непрерывные, дискретные, фиксированного размера, переменного размера, данные с плавающей точкой, данные с фиксированной точкой и N-мерные сигналы для многоканальной системы ввода-вывода. Time Scope позволяет отображать несколько сигналов либо на одной оси, где каждый входной сигнал имеет разные размеры, частоты дискретизации и типы данных, либо на нескольких каналах данных на разных дисплеях в окне дисплея. Time Scope выполняет анализ, измерение и статистику, включая среднеквадратическое значение (RMS), пик-пик, среднее и медианное значение. 

Spectrum Analyzer вычисляет частотный спектр различных входных сигналов и отображает его либо в линейном, либо в логарифмическом масштабе. Spectrum Analyzer выполняет измерения и анализ, такие как измерения гармонических искажений (THD, SNR, SINAD, SFDR), измерения интермодуляционных искажений третьего порядка (TOI), измерения коэффициента мощности смежного канала (ACPR), комплементарная кумулятивная функция распределения (CCDF), и коэффициент пиковой-к-средней мощности (PAPR). Режим спектрограммы в Spectrum Analyzer показывает, как просматривать изменяющиеся во времени спектры, и позволяет автоматически обнаруживать пики. 

DSP System Toolbox предоставляет дополнительное семейство инструментов визуализации, которые можно использовать для отображения и измерения различных сигналов или данных, включая вещественные или комплексные данные, векторы, массивы и кадры любого типа данных, включая входные последовательности данных с фиксированной точкой, двойной точностью или заданную пользователем. Некоторые инструменты визуализации могут отображать потоковые данные или сигналы в 3D-формате, чтобы можно было анализировать данные до тех пор, пока симуляция не остановится. 

Моделирование и симуляция с фиксированной точкой

Системный объект FFT MATLAB, который предоставляет свойства для настройки спецификации типа данных с фиксированной точкой для аккумулятора, произведения и выходных данных
Системный объект FFT MATLAB, который предоставляет свойства для настройки спецификации типа данных с фиксированной точкой для аккумулятора, произведения и выходных данных

С помощью DSP System Toolbox и Fixed-Point Designer можно моделировать алгоритмы обработки сигналов с фиксированной точкой, а также анализировать влияние квантования на поведение и производительность системы. Вы также можете генерировать С код с фиксированной точкой из кода MATLAB или модели Simulink. 

Вы можете настроить системные объекты MATLAB и блоки Simulink в продукте для режимов работы с фиксированной точкой, что позволяет выполнять анализ и оптимизацию компромисса проектирования, выполняя симуляцию с различными длинами слов, масштабированием, обработкой переполнения и выбором метода округления до того, как вы вложились в конкурентное оборудование. 

Режимы с фиксированной точкой поддерживаются для многих алгоритмов ЦОС, включая БПФ, фильтры, статистику и линейную алгебру. DSP System Toolbox автоматизирует настройку системных объектов и блоков для работы с фиксированной точкой. 

Системный объект FFT MATLAB, который предоставляет свойства для настройки спецификации типа данных с фиксированной точкой для аккумулятора, произведения и выходных данных Системный объект FFT MATLAB, который предоставляет свойства для настройки спецификации типа данных с фиксированной точкой для аккумулятора, произведения и выходных данных

Создание фильтров с фиксированной точкой

Анализ шума квантования фильтра с фиксированной точкой, где ограничивающие условия для фильтра не выполняются и затухание в полосе заграждения недостаточное из-за длины слова в 8 бит
Анализ шума квантования фильтра с фиксированной точкой, где ограничивающие условия для фильтра не выполняются и затухание в полосе заграждения недостаточное из-за длины слова в 8 бит
Анализ шума квантования фильтра с фиксированной точкой, где ограничивающие условия для фильтра не выполняются и затухание в полосе заграждения недостаточное из-за длины слова в 8 бит Анализ шума квантования фильтра с фиксированной точкой, где ограничивающие условия для фильтра не выполняются и затухание в полосе заграждения недостаточное из-за длины слова в 8 бит

В DSP System Toolbox функции проектирования фильтров и приложение Filterbuilder позволяют создавать фильтры с плавающей точкой, которые можно преобразовать к типам данных с фиксированной точкой с помощью Fixed-Point Designer. Такой процесс разработки упрощает проектирование и оптимизацию фильтров с фиксированной точкой и позволяет анализировать эффекты квантования. 

Генерация кода C и C++ для настольных компьютеров и встраиваемых процессоров

Используя DSP System Toolbox с MATLAB Coder и Simulink Coder, вы можете генерировать исходный код C и C++ или MEX-функцию, настроенную для производительности ваших алгоритмов обработки сигналов и системных моделей в MATLAB и Simulink соответственно. 
Сгенерированный код можно использовать для ускорения, быстрого прототипирования, внедрения и развертывания или для интеграции системы в процессе разработки продукта.

Ускорение для десктопных приложений

Вы можете создать эффективный и компактный исполняемый код, MEX-функцию, настроенную на производительность, чтобы ускорить вычислительно-затратные алгоритмы в вашей симуляции. Вы можете ускорить алгоритмы с плавающей и фиксированной точкой, включая фильтры, БПФ, статистику и линейную алгебру в MATLAB и Simulink.
Чтобы ускорить потоковую симуляцию на основе кадров, dspunfold использует развертывание DSP для распределения вычислительной нагрузки в сгенерированной функции MEX по нескольким потокам.

Автономное выполнение и интеграция с другими средами

С помощью DSP System Toolbox вы также можете использовать сгенерированный код C из кода MATLAB или модели Simulink для развертывания и прототипирования на десктопе путем создания автономного исполняемого файла вашего алгоритма. Этот автономный исполняемый файл по-прежнему может быть настроен непосредственно из MATLAB или Simulink в режиме реального времени с помощью компонентов UDP. Поскольку этот автономный исполняемый файл работает в отличном от кода MATLAB или модели Simulink потоке, он улучшает производительность алгоритма в реальном времени. 

Сгенерированный код C ваших алгоритмов обработки сигналов может быть интегрирован в виде скомпилированной библиотеки в другое программное обеспечение, такое как пользовательский симулятор или стандартное ПО для моделирования, такое как SystemC.

Оптимизированная генерация кода C для процессоров ARM Cortex

Используя DSP System Toolbox с надстройкой аппаратной поддержки для ARM Cortex-A или ARM Cortex-M и Embedded Coder, вы можете генерировать оптимизированный код C из системных объектов MATLAB или блоков Simulink для ключевых алгоритмов ЦОС, таких как БПФ, КИХ и Biquad фильтры. Сгенерированный код обеспечивает вызовы оптимизированных подпрограмм для библиотеки ARM Cortex-A Ne10 или библиотеки CMSIS ARM Cortex-M. Ключевым преимуществом является немедленное увеличение производительности по сравнению со стандартным кодом C. Вы также можете выполнить проверку кода и профилирование с помощью тестирования в режиме процессор-в-контуре (PIL).

Генерация HDL-кода для разработки на ПЛИС и ASIC

Генерация HDL-кода для программируемой модели КИХ-фильтра
Генерация HDL-кода для программируемой модели КИХ-фильтра

Используя DSP System Toolbox с Filter Design HDL Coder в MATLAB, вы можете создавать цифровые фильтры и генерировать эффективный, синтезируемый и портируемый код VHDL и Verilog для реализации в ПЛИС или ASIC. Можно также автоматически создавать тестбенчи VHDL и Verilog для симуляции, тестирования и верификации сгенерированного кода. 

Использование DSP System Toolbox с HDL Coder обеспечивает синтезируемую и читаемую генерацию кода VHDL и Verilog для проектов вашей системы. Эта поддержка включает алгоритмы, оптимизированные для использования ресурсов и производительности, такие как фильтры, БПФОБПФ и NCO. 

Генерация HDL-кода для программируемой модели КИХ-фильтра Генерация HDL-кода для программируемой модели КИХ-фильтра

Услуги

Сервисы

Тренинги

Публикации

Мероприятия