Супервизор питания, Reset IC, watchdog или sequencer: что выбрать
Устройство может нормально работать от 3,3 В и всё же периодически зависать при включении, медленном разряде или краткой просадке. Причина в том, что микроконтроллер успевает выйти из reset до стабилизации генератора и периферии, исполняет код ниже гарантированного напряжения либо получает питание через сигнальный вывод. В многоканальной системе добавляется неправильный порядок шин. Встроенный brownout detector полезен, но не всегда контролирует внешнюю память, питание FPGA, DC/DC power-good и состояние программы. Внешний reset supervisor, watchdog и sequencer решают разные задачи. Их выбирают по таблице состояний питания и отказов, а не по общему слову «супервизор».
Исходные данные для контроля питания
| Параметр | Что зафиксировать | Что по нему выбирают |
|---|---|---|
| Шины питания | Номиналы, допуски, порядок и ramp rate | Число каналов и sequence logic |
| Порог логики | Minimum operating и guaranteed reset voltage | Threshold и hysteresis supervisor |
| Время | Startup, oscillator lock, discharge и retry | Reset delay и таймеры sequencer |
| Отказ ПО | Допустимый интервал без обслуживания | Обычный, оконный или Q&A watchdog |
| Выход reset | Active level, open-drain/push-pull, domain | Совместимость с MCU, FPGA и power-good цепями |
Разделите четыре функции
Voltage supervisor сравнивает одну или несколько шин с порогом и формирует reset или power-good. Reset IC может также обрабатывать кнопку, задавать задержку и обеспечивать определённый уровень выхода при очень низком питании. Watchdog следит за активностью программы. Sequencer управляет порядком включения и выключения нескольких источников.
Одна микросхема иногда объединяет функции, но это нужно подтвердить по datasheet. Наличие watchdog не означает контроль перенапряжения, а output RESET не обязательно способен удерживать несколько разных доменов.
Составьте карту шин и зависимостей
Для каждой шины укажите номинал, допуск источника, минимальное напряжение нагрузки, максимальное безопасное напряжение, время нарастания, допустимый порядок и источники обратного питания. Затем нарисуйте зависимости: например, 1,0 В ядра до 1,8 В I/O, а 3,3 В периферии только после стабильной опоры АЦП.
Отдельно определите выключение. Некоторые процессоры требуют обратной последовательности или максимальной разницы между шинами. Sequencer должен корректно обработать и нормальную команду shutdown, и внезапное исчезновение входа.
Как выбрать порог undervoltage
Порог должен быть выше минимального гарантированного напряжения нагрузки с запасом, но ниже минимального нормального напряжения источника. Учитывают tolerance supervisor и шум. Если диапазоны пересекаются, компонентом проблему не решить — нужно ужесточить источник или пересмотреть требования.
Пример: шина 3,3 В имеет допуск ±3 %, поэтому её нормальный минимум 3,201 В. MCU гарантирован до 3,000 В. Supervisor с номинальным порогом 3,08 В и допуском ±1,5 % срабатывает между 3,034 и 3,126 В. Нижняя граница выше 3,000 В, верхняя ниже 3,201 В — окно существует. Следует добавить динамический запас и проверить реальные спецификации точного MPN.
Гистерезис предотвращает дребезг reset
Если питание медленно проходит порог или имеет пульсацию, компаратор без гистерезиса многократно переключается. Встроенный hysteresis создаёт разные уровни срабатывания и отпускания. Но слишком малый гистерезис не перекроет шум, а слишком большой задержит восстановление.
Не подменяйте гистерезис временной задержкой. Hysteresis отвечает на амплитуду, timeout — на устойчивость состояния во времени. Для шумной шины нужны оба параметра и правильная развязка.
Задержка reset после восстановления
После достижения порога источнику, генератору, PLL и внешней памяти требуется время. Reset timeout должен удерживать процессор до завершения худшего старта. К нему добавляют допуски RC/таймера и медленный ramp при холоде.
Если supervisor предлагает программируемую задержку внешним конденсатором, проверьте ток вывода и утечку платы. Большой конденсатор рядом с загрязнённым разъёмом может давать непредсказуемую задержку. Цифрово заданный интервал обычно повторяемее.
Open-drain или push-pull reset
Open-drain позволяет объединить несколько источников reset по проводной логике и согласовать уровень подтяжкой. Нужно рассчитать ток, время нарастания R_PULLUP × C_LINE и состояние при отключённом питании supervisor. Push-pull даёт быстрые фронты, но его нельзя без проверки соединять с другим активным выходом.
Уточните активный уровень и гарантированное состояние выхода, когда V_CC почти ноль. Некоторые выходы при медленном старте могут кратко стать неопределёнными; для критичной системы выбирают glitch-free поведение.
Brownout и короткие просадки
Супервизор имеет propagation delay и минимальную длительность импульса, которую гарантированно распознаёт. Очень короткая просадка может не вызвать reset, но нарушить работу логики. С другой стороны, реакция на любой наносекундный выброс создаст ложные перезапуски.
Задайте маску или фильтр по реальному профилю питания. Просадку измеряют у выводов MCU, а не только на выходе лабораторного источника. Проверяют пуск двигателя, передачу радио, включение подсветки и hot-plug периферии.
Watchdog контролирует программу, но не доказывает её правильность
Простой watchdog ждёт периодический фронт. Если программа зависла в цикле, который всё ещё переключает вывод, контроль бесполезен. Оконный watchdog запрещает слишком раннее и слишком позднее обслуживание, а challenge-response требует вычислить ответ на изменяющийся запрос и лучше обнаруживает неверный поток исполнения.
Сервис watchdog размещают после набора проверок: завершены критические задачи, обновлены входы, связь и память. Не обслуживайте его из независимого таймерного прерывания без подтверждения состояния основной программы.
Рассчитайте окно watchdog
Пусть основной цикл в норме занимает 8–20 мс, а при разрешённой операции flash — до 55 мс. Если watchdog открыт от 5 до 80 мс, обычное обслуживание проходит, а зависание выявляется не позже 80 мс плюс reset timeout. Нужно также исключить обслуживание быстрее 5 мс при ошибочном частом цикле.
Длительные операции лучше дробить на контролируемые этапы или переводить watchdog в документированный режим, а не глобально выключать. После reset причина сохраняется в энергонезависимом журнале, иначе полевой «самовосстановившийся» отказ останется невидимым.
Sequencer для нескольких шин
Sequencer принимает power-good предыдущего источника и только затем разрешает следующий. Задержка по времени без обратной связи не подтверждает, что напряжение действительно поднялось. Для отключения нужен обработчик fault: немедленно снять все enable, выключить только зависимый домен или выполнить безопасную последовательность.
Проверяют число каналов, точность порогов, логику enable, возможность margining, EEPROM/OTP, fault log и поведение при потере собственного питания. Для FPGA и MPU важна синхронизация reset с завершением всех шин.
Практический сценарий трёх шин
Предположим, плата имеет 5 В входа, 3,3 В I/O и 1,2 В ядра FPGA. После появления 5 В включается 1,2 В. Его power-good должен быть стабильным 2 мс, затем разрешается 3,3 В. Когда обе шины выше нижних порогов и PLL clock valid, общий reset удерживается ещё 20 мс.
При падении 3,3 В ниже порога reset утверждается немедленно, а 1,2 В выключается согласно допустимой последовательности. Watchdog MCU имеет окно 10–100 мс; код обслуживает его только после успешного обмена с FPGA и проверки питания. В тесте вход медленно изменяют вверх и вниз, вводят провалы разной длительности и обрывают каждый power-good.
Примеры из каталога ChipBaza
TPS3808G01DBVR показывает регулируемый вариант supervisor, а TPS3808G33DBVR — вариант с порогом для определённой шины. Сходство обозначений не позволяет менять их местами: порог, точность, delay, output topology и temperature grade проверяют по полному MPN.
Если системе нужен multirail sequence или challenge-response watchdog, семейство простых reset-контроллеров может быть недостаточно. Каталожный пример помогает найти класс, но архитектуру определяет таблица отказов.
Типовые ошибки
- ставить порог ровно на minimum MCU без допуска;
- считать внутренний brownout контролем всех шин;
- путать hysteresis и reset timeout;
- объединять push-pull outputs;
- обслуживать watchdog из таймерного IRQ без проверки системы;
- включать шины по задержке, не читая power-good;
- тестировать только быстрое включение лабораторного БП;
- не сохранять причину reset.
Чек-лист перед выпуском
- построены карта шин и порядок on/off;
- порог имеет окно между min load и min supply;
- учтены tolerance, hysteresis, noise и propagation delay;
- reset удерживается до готовности clock/memory/periphery;
- output topology совместима с pull-up и другими источниками;
- watchdog контролирует полезный поток исполнения;
- fault каждого power-good имеет определённую реакцию;
- медленный ramp, brownout и повторный старт испытаны;
- reset cause доступна диагностике.
Источники для технической проверки
Параметры и ограничения сверяйте с актуальной документацией производителя для полного артикула и нужного исполнения.
Следующий шаг
Проверьте артикулы и количество до отправки заявки
Загрузите спецификацию в BOM-сервис или пришлите полный код производителя менеджеру. Если точное совпадение не доказано, позиция останется на ручной проверке.