Как достичь низкого энергопотребления в Dsp процессорах для устройств Iot Edge
В быстро расширяющемся мире IoT периферийные устройства в значительной степени полагаются на цифровые сигнальные процессоры (DSP) для выполнения обработки данных в реальном времени для приложений, начиная от улучшения звука и распознавания изображений до синтеза датчиков и прогностического обслуживания. Однако, поскольку эти устройства становятся более распространенными в развертываниях с питанием от батареи или энергосберегающими, управление энергопотреблением в DSP имеет решающее значение для продления срока службы батареи устройства, снижения теплового напряжения и обеспечения устойчивой работы в течение длительного времени. Эта статья обеспечивает всестороннее исследование эффективных стратегий достижения низкого энергопотребления в процессорах DSP для периферийных устройств IoT, охватывающих дизайн оборудования, оптимизацию программного обеспечения, операционные методы и новые тенденции.
Понимание потребления энергии в DSP
DSPs - это специализированные микропроцессоры, предназначенные для высокоскоростных численных расчетов, часто использующие операции с множественным накоплением (MAC), фундаментальные для фильтрации, FFT и свертки. Их энергопотребление регулируется теми же физическими принципами, что и другие схемы CMOS, но характер рабочих нагрузок DSP - высокая вычислительная плотность, повторяющиеся операции и ограничения в реальном времени - создает уникальные возможности и проблемы для снижения мощности.
Общая мощность, потребляемая чипом DSP, может быть разбита на два основных компонента:
- Динамическая мощность (P динамическая): Пропорциональная квадрату напряжения питания (V2), тактовой частоте (f) и активности переключения (α). Она доминирует во время активных вычислений.
- Статическая мощность (P static): В значительной степени определяется токами утечки (порог и утечка затвора), которые текут даже когда процессор простаивает. Статическая мощность становится более значительной на продвинутых узлах процесса (например, 28 нм и ниже).
Эффективная конструкция с низким энергопотреблением должна быть ориентирована на оба компонента. В то время как динамическая мощность может быть уменьшена за счет снижения напряжения и частоты, статическая мощность требует таких методов, как определение мощности, многопороговая CMOS (MTCMOS) и тщательное смещение. Кроме того, иерархия памяти DSP, пути передачи данных и логика управления способствуют общему потреблению. Для устройств с краем IoT цель не обязательно сводит к минимуму пиковую мощность, но минимизирует среднюю энергию за операцию при соблюдении сроков в реальном времени и требований к пропускной способности обработки.
Стратегии уровня оборудования для низкого энергопотребления
Аппаратные дизайнеры разработали богатый набор схем и архитектурных методов, которые составляют основу маломощных DSP. Эти методы могут применяться во время проектирования или динамически во время работы.
Динамическое натяжение и частотное масштабирование (DVFS)
DVFS является одним из наиболее эффективных методов управления динамической мощностью. За счет снижения напряжения питания и тактовой частоты в периоды низкого вычислительного спроса квадратичная зависимость между напряжением и динамической мощностью дает значительную экономию. Например, вдвоее напряжение может снизить динамическую мощность до 75%, но только если частота масштабируется соответствующим образом для поддержания времени цепи. Современные DSP, такие как серия TI TMS320C5000, реализуют DVFS с несколькими рабочими точками (например, полная скорость, половина скорости, низкое напряжение), выбранные программным обеспечением на основе рабочей нагрузки. Приложения Texas Instruments отмечает детальная реализация DVFS для систем DSP с ультранизкой мощностью.
Силовое голодание и тонкозернистые транзисторы сна
Силовое галстукование отключает холостые блоки от источника питания с помощью высоковольтных спящих транзисторов, практически исключая статическую мощность в неиспользуемой логике. Это особенно выгодно для DSP с несколькими специализированными ускорителями (например, FFT-двигателями, декодерами Viterbi). Разделяя чип на энергетические домены, которые могут быть независимо выключены, галочка питания уменьшает ток утечки, который в противном случае истощал бы батарею, даже когда ядро неактивно. Реализация требует тщательного контроля задержки пробуждения и тока в рывке.
Часы бьются
Часовое вещание является стандартной техникой, которая отключает тактовый сигнал к шлепанцам и логическим блокам, когда они не переключаются. В типичном DSP до 30-40% динамической мощности потребляется распределительной сетью часов. Вставляя сигналы включения на уровне регистр-переноса (RTL), стреловидное вещание часов может сэкономить значительную энергию в холостые периоды в пределах тактового цикла. Коммерческие инструменты синтеза автоматически вставляют логику стреловидности часов, но ручная оптимизация паттернов данных и логика управления может дать дополнительную экономию.
Адаптивное биасинг тела (ABB)
ABB регулирует пороговое напряжение (Vt) транзисторов, применяя напряжение смещения к подложке (телу). Перемещение вперед тела (FBB) снижает Vt, увеличивая скорость за счет более высокой утечки, в то время как обратное смещение тела (RBB) повышает Vt, чтобы уменьшить утечку, но замедляет цепь. Для DSP, которые работают в взрывных рабочих нагрузках, ABB может динамически отменять производительность и статическую мощность - например, применение RBB во время спящих режимов и FBB во время активных вычислений. Расширенные конструкции объединяют ABB с DVFS для совместного напряжения и порогового управления.
Много-Vt клеточные библиотеки и варианты процессов
Литейные заводы предлагают стандартные библиотеки ячеек с несколькими пороговыми значениями напряжения: низковольтные (быстрые, протекающие), стандартные-Vt и высоковольтные (медленные, низкие утечки). Тщательная стратегия синтеза назначает высоковольтные ячейки некритическим путям для снижения статической мощности, в то время как низковольтные ячейки используются только на критичных синхронизирующих путях. Этот метод, известный как многопороговый CMOS (MTCMOS), может уменьшить утечку на 50-70%, не влияя на производительность.
Оптимизация памяти и кэша
Память часто доминирует над бюджетом мощности системы DSP, особенно для устройств IoT, которые передают большие наборы данных датчиков. Методы включают в себя: использование меньших SRAM на чипе или регистровых файлов вместо DRAM вне чипа, реализацию многобанковских воспоминаний с избирательной активацией банка и использование ячеек без обновления для хранения малой мощности. Например, архитектура DSP CEVA-BX1 использует иерархическую систему памяти с несколькими доменами мощности для снижения энергии доступа к памяти.
Методы оптимизации программного обеспечения
В то время как аппаратное обеспечение обеспечивает зазор, оптимизация программного обеспечения определяет, насколько эффективно используется забор. Написание кода с поддержкой питания для DSP требует внимания к арифметической сложности, потоку данных и решениям управления.
Алгоритм выбора и приближения
Выбор правильного алгоритма может существенно повлиять на потребление энергии. Например, FFT с фиксированной точкой может потреблять меньше энергии, чем версия с плавающей точкой, потому что она использует меньшие пути передачи данных и меньшую пропускную способность памяти. Во многих контекстах IoT приемлемы приблизительные вычислительные методы, где DSP жертвует некоторой точностью для меньшей мощности. Алгоритмы синтеза датчиков для акселерометров или микрофонов часто переносят уменьшенное битовое или частотное разрешение. Линейная фильтрация с коротким конечным импульсным ответом (FIR) фильтр может быть более эффективной, чем фильтр бесконечного импульсного ответа (IIR), если IIR требует повторных операций обратной связи.
Оптимизация кода для сокращенных циклов
Каждая выполняемая инструкция потребляет энергию. Оптимизация размера кода (с использованием небольших следов инструкций), разворот петли (для уменьшения накладных расходов при балансировке размера кода) и эффективное использование инструкций DSP (например, двух-MAC, нулевых накладных циклов или SIMD) может уменьшить количество циклов на 30-50%. Опции компилятора, такие как с флагами настройки мощности или встроенная сборка для критических внутренних циклов, распространены в средах разработки DSP, таких как TI Code Composer Studio или Xtensa Xplorer.
Паттерны доступа к данным и памяти
Перемещение данных между уровнями памяти стоит дорого. Оптимизация локализации данных - обеспечение того, что часто доступные данные остаются в кэше L1 или локальной памяти - уменьшает количество высокоэнергетических внечиповых доступов к памяти. Такие методы, как упаковка данных, предварительная выборка программного обеспечения (если поддерживается) и передача на основе DMA, могут заставлять ядро DSP работать с локальными данными, в то время как контроллер DMA обрабатывает массовое движение данных в фоновом режиме. Кроме того, сокращение числа операций записи в энергонезависимую память (например, флэш-память) может продлить срок службы устройства и сэкономить энергию.
Планирование задач и цикличность обязанностей на уровне ОС
На более сложных периферийных устройствах, работающих под управлением RTOS или облегченного планировщика, планирование задач может быть оптимизировано для питания. Например, группирование вычислительно-интенсивных задач вместе позволяет DSP входить в состояние глубокого сна на более длительные интервалы. Операционные системы реального времени, такие как FreeRTOS, могут интегрироваться с фреймворками управления питанием, которые запускают переходы DVFS или холостые потоки для вызова инструкций WFI (Wait For Interrupt).
Оперативные стратегии
Помимо аппаратного и программного обеспечения, операционные решения на системном уровне могут еще больше снизить потребление энергии без перепроектирования DSP.
Продвинутый режим сна и холостого хода
Большинство современных DSP предлагают несколько состояний сна, от легкого сна (где ядро остановлено, но часы на периферийных устройствах остаются активными) до глубокого сна (где весь чип выключен, за исключением небольшой ОЗУ, поддерживаемой аккумулятором). Выбор состояния сна зависит от задержки пробуждения. Для устройств с IoT-краем выгодно быстро переходить между активными и спящими состояниями, чтобы избежать потери энергии в течение коротких периодов простоя. Некоторые DSP, такие как Аналоговые устройства серии ADSP-BF70x , достигают времени пробуждения менее 10 микросекунд от определенных состояний с низкой мощностью.
Обработка событий и прерываний
Вместо датчиков опроса или потоков данных, событийные архитектуры позволяют DSP оставаться в режиме малой мощности до тех пор, пока конкретный триггер (например, пересечение порога датчика, входящий пакет) не активирует обработку. Это снижает среднюю мощность, потому что DSP активен только тогда, когда есть осмысленная работа. Краевые устройства часто объединяют микроконтроллер малой мощности, который контролирует события пробуждения, и DSP, который включается только для сложной обработки.
Управление данными датчиков и локальная обработка
Передача каждого образца в облако или центральный сервер потребляет значительную энергию для беспроводной связи - часто больше, чем сама обработка. Выполняя извлечение функций, сжатие или обнаружение аномалий локально на DSP, устройство может отправлять только небольшие пакеты данных. Например, интеллектуальный микрофон DSP может запускать всегда включенный алгоритм обнаружения ключевых слов с использованием небольшой нейронной сети, потребляя всего несколько милливатт, в то время как основной процессор остается в спящем режиме. Руководящие принципы управления энергией ARM иллюстрируют, как объединить сенсорные концентраторы и DSP для эффективной обработки краев.
Адаптивная обработка и настройка Runtime
Устройства, которые динамически корректируют свою обработку на основе условий окружающей среды, таких как снижение частоты выборки, когда звук не обнаруживается, или снижение разрешения изображения, когда освещение плохое, могут реализовать значительную экономию энергии. Модели машинного обучения могут использоваться для прогнозирования моделей рабочей нагрузки и запуска превентивных DVFS или состояний сна, создавая адаптивный цикл управления энергией.
Передовые технологии для сверхнизких DSP
По мере того, как передовые устройства IoT продвигаются к сбору энергии и работе без батарей, исследователи и лидеры отрасли изучают более агрессивные методы с низким энергопотреблением.
Пороговые вычисления (NTC)
Работа DSP при напряжении питания, близком к пороговому напряжению транзистора (Vth), может снизить динамическую мощность на порядок. Однако схемы NTC становятся чрезвычайно чувствительными к изменениям процесса и значительно снижают максимальную частоту. Некоторые реализации DSP используют двухрежимный подход: почти пороговый домен для задач с низкой пропускной способностью (например, фоновый мониторинг) и высоковольтный домен для обработки разрывов. Исследования Мичиганского университета и других продемонстрировали, что ядра NTC DSP достигают энергоэффективности ниже 10 pJ/цикл.
Субпороговая операция
Для чрезвычайно низкоскоростных приложений (например, датчик температуры, периодическая регистрация) DSP могут быть разработаны с напряжением питания ниже Vth. Эта подпороговая область дает наименьшую возможную энергию за цикл, но со скоростями в диапазоне кГц. Такие конструкции требуют специализированных стандартных библиотек ячеек и тщательного синхронизации и обычно используются в специализированных узлах датчиков, а не в периферийных устройствах IoT общего назначения.
Интеграция энергосбережения
ДСП, которые собирают энергию из солнечных, тепловых или вибрационных источников, должны иметь возможность работать с прерывистой мощностью. Это требует сверхнизкой мощности в режиме ожидания (субмикроватт) и быстрого времени запуска. Некоторые архитектуры ДСП включают в себя небольшой, всегда включенный блок управления питанием, который может разбудить ядро при хранении достаточной энергии. В сочетании с энергонезависимой памятью система может состояние контрольной точки и возобновить после отказа питания.
Аналоговое и смешанное совместное производство сигналов
Вместо оцифровки всех данных датчиков и обработки в цифровом домене, фронт-энды аналоговой обработки могут выполнять раннюю обработку сигналов (например, фильтрацию, обнаружение оболочки или корреляцию) при очень низкой мощности. Это снижает требования к пропускной способности и разрешению на аналого-цифровом преобразователе (ADC) и DSP. Устройства, такие как Максим MAX78000 [FLT: 1]], интегрируют сверточный ускоритель нейронной сети, который работает непосредственно на аналоговых данных от датчика камеры, потребляя милливатты для классификации изображений в реальном времени.
Реальные приложения и тематические исследования
Многочисленные коммерческие DSP демонстрируют эффективность этих стратегий.TI TMS320C5517, например, представляет собой DSP с фиксированной точкой, который использует DVFS вместе с шестью независимыми доменами мощности и несколькими уровнями тактового сопряжения. В типичном аудиоприложении он может достигать активного энергопотребления 0,15 мВт/МГц и резервной мощности менее 50 мкВт. CEVA-X2 архитектура нацелена на голосовой IoT и использует комбинацию электропитания, многовольтовых ячеек и продвинутого контроллера сна для достижения 20 мкА в глубоком сне при сохранении контекста. Другим заметным примером является Cadence Tensilica HiFi 5 DSP, используемый во многих аудио краевых устройствах, который может работать на 28 нм с энергоэффективностью 40 мкВт/МГц для всегда включенной голосовой активации.
В исследованиях, в проекте Princeton PULP (Parallel Ultra-Low Power) были разработаны DSP-ядра с открытым исходным кодом, которые повышают энергоэффективность ниже 1 pJ/цикла. Их подход сочетает в себе почти пороговые вычисления с мелкозернистыми часами и многоядерной кластерной тканью для параллельной обработки. Эти конструкции используются в носимых устройствах и интеллектуальных датчиках, где мощность является основным ограничением.
Проблемы и торговые связи
Хотя существует много маломощных методов, они приходят с компромиссами, которые системные дизайнеры должны ориентироваться:
- Перформанс против мощности: Агрессивное масштабирование напряжения снижает скорость; это может не соответствовать срокам в реальном времени для сигналов с высокой пропускной способностью (например, HD-видео или широкополосный радар).
- Зона и стоимость: Добавление доменов мощности, спящих транзисторов и нескольких доменов регуляторов увеличивает площадь кристалла и сложность упаковки. Для чувствительных к затратам IoT-устройств добавленный кремний может быть неоправданным.
- Проектная сложность: Внедрение DVFS, ABB или NTC требует сложного прошивки управления питанием и точного измерения напряжения/температуры.
- Утечка в продвинутых узлах: При 16 нм и ниже статическая мощность может доминировать даже при хорошей оптимизации. На чипе память и аналоговые схемы особенно подвержены утечке, иногда требуя специальных литейных вариантов, таких как ULL (сверхнизкая утечка) транзисторы.
- Программное обеспечение накладные расходы: Программное обеспечение с программным обеспечением Power-aware требует от разработчиков думать об энергии как ресурсе, который может конфликтовать с переносимостью времени на рынок или кода.
Будущие тенденции в маломощном DSP для IoT
Неустанный толчок к автономному интеллекту приводит к нескольким новым тенденциям:
- Нейроморфные вычисления: Нейроморфные вычисления: Нейросети, управляемые событиями, могут обрабатывать данные датчиков с чрезвычайно низкой мощностью, поскольку только активные нейроны потребляют энергию. Такие компании, как BrainChip и SynSense, разрабатывают ядра SNN, которые работают вместе с традиционными DSP для всегда включенного вывода.
- Гетерогенная интеграция (Chiplets): Будущие SoC могут комбинировать чиплет DSP с низким утечкой с высокопроизводительным чиплетом ускорителя, каждый на своем собственном оптимизированном технологическом узле, подключенном через расширенную упаковку. Это позволяет каждому блоку использовать лучшую технологию для своих требований к мощности и скорости.
- AI-Driven Power Management: Сами модели машинного обучения могут использоваться для прогнозирования рабочей нагрузки и регулировки напряжения или режимов сна более агрессивно, чем обычные алгоритмы.
- На чипе хранение энергии и питание памяти: Небольшие суперконденсаторы или тонкопленочные батареи, интегрированные в чип, могут обеспечить временную энергию для обработки разрыва, позволяя DSP работать при меньшей средней мощности от основной батареи.
- Стандартизация API-интерфейсов Power: Отраслевые группы, такие как Yocto Project и Linux Power Management, работают над стандартизацией интерфейсов для DVFS и состояний сна, что облегчает разработку портативного прошивки DSP с программным обеспечением с поддержкой питания.
Заключение
Достижение низкого энергопотребления в процессорах DSP для устройств IoT edge является многогранной задачей, которая требует тщательной оркестровки аппаратных, программных и системных стратегий. От основополагающих методов DVFS, энергозависимости и тактового зависания до алгоритмической оптимизации и операции, основанной на событиях, каждый элемент способствует целостному энергетическому бюджету. Поскольку устройства edge требуют все более длительного времени автономной работы и большей вычислительной мощности, дизайнеры должны использовать передовые подходы, такие как почти пороговые вычисления, аналоговая совместная обработка и адаптивное управление питанием.
Реализуя методы, обсуждаемые в этой статье, разработчики могут продлить срок службы батареи устройства, повысить эффективность работы и поддержать устойчивые развертывания IoT, создавая будущее, в котором передний интеллект является мощным и энергозависимым.