Как правильно контролировать напряжения питания

Как правильно контролировать напряжения питания цифровых схем (микроконтроллеров, ПЛИС, ОЗУ)? (Я наткнулся на этот вопрос, когда работал над системами, критически важными для безопасности)

Что я видел, так это наличие АЦП, которые регулярно измеряют напряжение питания, но такие схемы плохо справляются со сбоями, поскольку большую часть времени АЦП не измеряет в нужный момент. Глюки могут привести к повреждению памяти, что может привести к катастрофическим последствиям. Кроме того, взглянув на http://www.analog.com/media/en/technical-documentation/product-selector-card/Supervisorsfd.pdf , кажется, что некоторая устойчивость к обнаружению сбоев кажется даже желательной. Что имеет смысл, потому что, пока глюк не имеет определенной ширины или глубины, он не оказывает никакого влияния.

Но я также наткнулся на некоторые ИС (например, RTC), которые, помимо их обычной схемы понижения напряжения, имеют некоторое обнаружение фронта для обнаружения внезапных подъемов или падений напряжения питания.

Подводя итог, не желательно ли иметь помимо обычного «статического» контроля напряжения (с такими вещами, как АЦП или компараторы) некоторую схему, которая может обнаруживать выбросы (достаточно большой ширины, чтобы иметь влияние)?

Спросите себя, чего вы пытаетесь достичь, и есть ли у простого «продукта» какая-то особая потребность в самоконтроле источника питания. Какое оборудование требуется для самоконтроля источников питания и почему? К какому типу продукта может относиться ваш вопрос? И, когда вы обнаруживаете сбой, что вы с этим делаете или что вы должны с этим делать?
Многие электронные системы не имеют какой-либо формы контроля питания и просто полагаются на источник питания для подачи правильного напряжения. Большинство этих систем работают нормально. Наличие системы контроля энергоснабжения также не гарантирует критически важной для безопасности работы. Вы должны избегать попадания в ловушку изучения возможной проблемы, делать все, чтобы избежать ее, но пропустить другие (более важные) проблемы, которые могут быть в вашей системе.
@Andyaka Нет, простому продукту это обычно не нужно. Случай RTC особенный, так как сбои могут плохо сказаться на точности часов. С другой стороны, это нужно системам, критичным к безопасности, но как раз там я был удивлен, что часто там просто АЦП, который ИМХО не защищает цифровую схему должным образом. Если обнаружен достаточно большой сбой, система небезопасна и должна принять меры, чтобы вернуться в безопасное состояние (сбросить или перезагрузить соответствующую память).

Ответы (3)

Но если происходит «коричневое отключение» и напряжение падает ниже определенного значения, то наличие АЦП для отслеживания ситуации не поможет.

«Электронный предохранитель» — это то, что я использовал в прошлом для текущих неисправностей. У TPS2420 тоже есть UVLO, но его нельзя настроить, на некоторых других электронных предохранителях они есть. Детали этого типа имеют контакт неисправности, и вы можете установить ток неисправности.

введите описание изображения здесь

Если вы хотите контролировать напряжение на предмет «провалов», это хорошая схема, которая используется во многих силовых ИС, или вы можете построить ее с дискретными компонентами:

введите описание изображения здесь

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

Проблема в том, что как только ваш запас нестабилен, все ставки сняты. Любой сбой, из-за которого Vcc становится ниже минимального порога в схеме процессора или аналогичном, является действительно плохой новостью.

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

Существуют различные способы контроля напряжения питания. Одним из простых и эффективных решений является микросхема сброса при включении питания, такая как DS1233AZ-15+.

https://www.digikey.com/products/en?keywords=DS1233AZ-15%2B-ND

Прочитайте лист данных, чтобы понять, как это работает. Вы можете создать свою собственную схему супервизора, используя высокоскоростной компаратор и источник опорного напряжения. Выборка напряжения питания с помощью АЦП, вероятно, не требуется, если вам не нужен журнал данных. Скорее всего, вам просто нужно знать, если что-то случилось, и действовать соответственно.