Роль программного обеспечения в усилителях Arcam

0
723
Роль программного обеспечения в усилителях Arcam

Роль программного обеспечения в усилителях ArcamКрис Манн,
главный инженер по программному обеспечению,
отдел глобального инжиниринга,
Harman Luxury Audio Group

 

Современный усилитель, помимо оснащения входами различных форматов, должен поддерживать модули цифровой обработки аудиосигнала от сторонних производителей и управление по IP-протоколу.

К примеру, новый интегральный усилитель Arcam SA30 снабжён аналоговыми и цифровыми входами, встроенным стриминговым модулем, поддерживающим, в том числе, протокол Apple AirPlay2, осуществляет коррекцию настроек звучания под акустические особенности помещения (Dirac), реверсивный звуковой канал HDMI ARC и управляется через RS232 и по IP, включая поддержку Control4 и других систем управления.

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

Программное решение

Роль программного обеспечения в усилителях Arcam

В конструкции усилителя используется большое количество периферийных блоков. Это кнопки на передней панели, кодеры, светодиоды, аналогово-цифровые (АЦП) и цифро-аналоговые преобразователи (ЦАП), цифровые (SPDIF) приёмники и передатчики, регуляторы громкости, дисплеи, модули TCP/IP и т.п.

Эти устройства управляются программным обеспечением, в задачу которого входят мониторинг и приём данных от входов для обработки данных и передача команд к периферийным устройствам, управляющим потоком сигналов к выходам.

Структура программного обеспечения

Для связи с периферийными блоками может использоваться ряд таких протоколов низкого уровня, как SPI, I2C и RS232 (все они требуют различных подходов). Значительная доля этой связи может осуществляться стандартными «структурными» модулями, которые поставляются сторонними производителями микропроцессоров или разрабатываются собственными силами и уменьшают объём кодировки приложений. Тем не менее, иногда требуется индивидуальный код. Это необходимо из соображений эффективности или для уменьшения размера кода в ситуациях, где микропроцессор имеет ограниченные возможности обработки данных.

Проблемы разработки

Роль программного обеспечения в усилителях Arcam

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

Это увеличивает число проблем разработки программного обеспечения:

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

  • Прерывание приостанавливает цикл управления во время его обработки.

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

Один из основных подходов к устранению этих проблем состоит в том, чтобы разделить обработку на несколько небольших шагов: вместо того, чтобы принимать или отправлять большое количество данных за один цикл, данные хранятся в буфере и обрабатываются небольшими «порциями». Это видно в общем подходе к прерываниям, где код, обрабатывающий прерывание, должен быть выполнен как можно быстрее, что обычно подразумевает сохранение данных, собранных в прерывании, для последующей обработки в цикле управления.

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

Связь между процессорами

Роль программного обеспечения в усилителях Arcam

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

Смотрим в будущее

Конструкция «усилителя будущего» потребует внедрения всё новых, более совершенных технологий стриминга и использования интернет для доставки контента. И роль программного обеспечения в этом процессе невозможно недооценивать!

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, напишите ваш комментарий!
Ваше имя