ΣSigmaStudio English

Real Time Variant


Редактор вариантов (Variant Editor) — это инструмент SigmaStudio, который помогает пользователям использовать различные вариации (варианты) их исходного аудиопотока, уже запрограммированного во внешней памяти.

Вариант — это набор параметров из текущей схемы. Модуль Real Time Variant позволяет пользователям создавать несколько вариантов. Выбор параметров для варианта может быть выполнен перетаскиванием из окна захвата (Capture window) в форму конфигурации варианта. Адреса и значения параметров варианта сохраняются в EEPROM после образа самозагрузки. Адрес для каждого варианта в EEPROM может быть либо обновлен пользователем, либо сгенерирован автоматически.

Модуль позволяет пользователям динамически выбирать вариант через внешний входной пин. Он принимает входной индекс в формате 32.0 для выбора текущего варианта из EEPROM. Модуль считывает вариант (набор параметров), соответствующий входному индексу, из EEPROM и заменяет фактические параметры во время выполнения при каждом изменении входного индекса.
Real Time Variant

Входные пины

NameFormat [int/dec] - [control/audio]Function Description
Pin 0: Variant Indexint- controlДействует как индекс выбора для копирования данных варианта.

Выходные пины

Алгоритм не содержит выходных пинов.

Алгоритм Grow

Модуль в настоящее время не поддерживает функцию grow/add, поддерживается только один экземпляр.

Конфигурации

Выполните следующие шаги для настройки модуля real time variant.

  • Создайте аудиопоток SigmaStudio, который компилируется без ошибок.
  • Перетащите модуль 'Real Time Variant' и подключите к нему источник DC. Затем измените формат фиксированной точки источника DC на 32.0

Конфигурации

  • Нажмите на изображение Конфигурации, чтобы открыть окно редактора вариантов.
  • Очистите окно захвата в SigmaStudio. Затем измените параметр любого модуля на желаемое значение. Изменения параметров будут отображаться в окне захвата.

Конфигурации

  • Выберите желаемые записи параметров (включая записи Safeload) из окна захвата. Перетащите эти параметры в редактор вариантов.

Конфигурации

  • Чтобы добавить другой вариант, просто щелкните правой кнопкой мыши в левой части окна, под предыдущим режимом. Появится окно с пунктами меню и множеством опций. Выберите опцию 'Add Mode'.

Конфигурации

  • Чтобы придать значимость дизайну варианта, рекомендуется давать вариантам описательные имена. Для этого просто дважды щелкните по имени варианта, имя будет выделено и готово к редактированию. Альтернативный способ изменить имя — щелкнуть по нему правой кнопкой мыши и выбрать «Rename…»

Конфигурации

  • Перетаскивайте параметры из окна захвата в другие режимы вариантов аналогичным образом.
  • После того как все варианты настроены, нажмите кнопку 'Save' в редакторе вариантов. Это сохранит информацию о вариантах в формате XML. (Файл сохраняется в том месте, где находится схема)

Конфигурации

  • Нажмите кнопку 'Update' на вкладке редактора вариантов. Это обновит таблицу вариантов с адресом EEPROM и размером варианта. Редактор вариантов также отображает текущую длину программы и объем памяти, который программа займет в Self-Boot EEPROM.

Конфигурации

  • Пользователь может изменить автоматически рассчитанные адреса вариантов в EEPROM, сняв флажок с опции 'Auto Calculate Variant Addresses'.
  • Обновите свойства EEPROM и свойства SPI/I2C на вкладке 'EEPROM Editor'. Адрес I2C для EEPROM предполагается равным 0xA0 (8-битный адрес), а выбор ведомого для SPI равен 0.

Конфигурации

  • Пользователь может протестировать информацию о вариантах перед программированием внешней памяти. Найдите кнопку с зеленой стрелкой над значком белого окна (последняя кнопка). При наведении курсора на эту кнопку должна появиться подсказка “Launch Sequencer Window”. Нажмите на нее, и появится автономное окно секвенсора с четырьмя кнопками в виде сетки. Нажатие на любую из этих кнопок должно привести к соответствующему изменению текущей программы, выполняемой на DSP. Аналогичным образом, выбрав имя варианта и нажав серую стрелку, вы загрузите параметры этого варианта на DSP.

Конфигурации

  • Обратите внимание, что при любом изменении в схеме необходимо нажимать кнопку Update для обновления адресов параметров в окне вариантов.
  • Когда все варианты работают должным образом, пора программировать внешнюю память. Чтобы начать этот процесс, перейдите на вкладку 'Hardware Configuration'. Затем щелкните правой кнопкой мыши по ИС и выберите опцию 'Write Last Compilation through DSP'.

Конфигурации

  • Появится окно “EEPROM Properties”. Заполните это окно соответствующими спецификациями производителя памяти. В этом примере мы используем 1-Мбит последовательную EEPROM с шиной SPI. Эта информация будет использоваться для программирования всей программы и памяти данных вместе с информацией о вариантах в EEPROM, используя эти параметры для загрузки программы во время загрузки в DSP при самозагрузке.

Конфигурации

  • После завершения программирования EEPROM сбросьте плату и измените индекс выбора варианта (модуль DC), чтобы выбрать другие варианты. Значение DC 0 выберет первый вариант, значение DC 1 выберет второй вариант и так далее.

Использование GPIO для выбора вариантов

Для выбора вариантов вместо модуля DC можно использовать GPIO.

  • Подключите GPIO к модулю Binary to Decimal.
  • Выход модуля 'Binary to Decimal' может быть подключен к 'Real Time Variant Module', как показано ниже.

Использование GPIO для выбора вариантов

  • Настройте используемые пины GPIO в окне регистров как входные многоцелевые пины.

Использование GPIO для выбора вариантов Приведенная ниже таблица показывает соответствие значения GPIO выбору варианта.

GPIO_0 GPIO_1 Выход модуля BinToDec (32.0) Выбранный режим варианта
0 0 0 Режим варианта 0
1 0 1 Режим варианта 1
0 1 2 Режим варианта 2
1 0 3 Режим варианта 3

Поддерживаемые ИС

  1. ADAU145x

Real Time Variant в SigmaStudio: настройка и параметры

Real Time Variant — это модуль Master Control Port в среде SigmaStudio, предназначенный для процессоров семейства ADAU (SigmaDSP) от Analog Devices. Он позволяет динамически переключать наборы параметров аудиопрограммы, уже загруженной во внешнюю память, без остановки работы схемы. Вариант в данном контексте — это совокупность значений параметров модулей текущего проекта, которые могут оперативно заменяться в процессе выполнения. Принцип работы модуля основан на чтении данных из EEPROM. Адреса и значения параметров для каждого варианта сохраняются во внешней памяти после образа самозагрузки. Модуль принимает входной индекс в формате 32.0 через внешний управляющий пин. При изменении значения на этом входе модуль считывает соответствующий набор параметров из EEPROM и заменяет ими фактические параметры алгоритмов в реальном времени. Важно отметить, что модуль не имеет выходных пинов и поддерживает только один экземпляр в проекте — функция grow/add для него недоступна. Для настройки Real Time Variant в проекте SigmaStudio необходимо создать корректно компилируемый аудиопоток и подключить ко входу модуля источник DC с форматом фиксированной точки 32.0. Далее открывается редактор вариантов (Variant Editor). Параметры для вариантов выбираются через окно захвата (Capture window): после изменения нужных значений модулей они появляются в этом окне, откуда перетаскиваются в форму конфигурации. Для создания нескольких вариантов используется пункт «Add Mode» в контекстном меню редактора.