Проектирование дополнений со встроенным резервированием для отказоустойчивости в критических системах
В критических системах, таких как аэрокосмический контроль полета, имплантируемые медицинские устройства и автоматизация промышленных процессов, целостность сбора данных не подлежит обсуждению. Аналоговые к цифровым преобразователи (ADC) служат мостом между непрерывными физическими явлениями и цифровой областью, переводя сигналы датчиков в точные числовые значения для принятия решений в режиме реального времени. Одна битовая ошибка в считывании ADC может каскадировать в катастрофические последствия - непреднамеренное изменение тяги двигателя, дефибриллятор, обеспечивающий неправильную дозировку, или система безопасности химического завода, не реагирующая. Чтобы защититься от таких сбоев, инженеры все чаще обращаются к методологиям проектирования, которые встраивают избыточность непосредственно в архитектуру ADC. Эта статья исследует принципы, стратегии и практические реализации встроенного избыточности для отказоустойчивых ADC, предоставляя всеобъемлющее руководство для системных архитекторов, которые должны сбалансировать производительность, стоимость и надежность в критически важных для безопасности средах.
Понимание неисправности толерантности в ADC
Допуск по неисправности - это способность системы продолжать работать правильно при наличии аппаратных или программных сбоев. В контексте ADC сбои могут быть в целом классифицированы на три типа:
- Тяжелые (постоянные) неисправности: Физические дефекты, такие как короткие дорожки, открытые соединения или застрявшие биты, которые сохраняются до ремонта.
- Мягкие (переходные) неисправности: Временные возмущения, вызванные электромагнитными помехами (EMI), излучением (например, одномерные расстройства в космических приложениях) или сбои в электроснабжении. Они не оставляют постоянных повреждений, но могут повредить результаты преобразования.
- Перемежающиеся неисправности: Повторяющиеся сбои, которые появляются при определенных условиях (температура, напряжение) и исчезают, что делает их особенно трудными для диагностики.
Устойчивый к неисправностям ADC должен обнаружить наличие любой из этих неисправностей и перейти на известный хороший путь, исправить ошибочные данные или изящно ухудшить производительность без потери функции системного уровня. Конечной целью является достижение определенной метрики надежности, такой как среднее время между отказом (MTBF), уровень целостности безопасности (SIL) или уровень обеспечения проектирования (DAL) для авиации, минимизируя накладные расходы.
Стратегии проектирования для избыточных ADC
Увольнение может быть реализовано на нескольких уровнях: на уровне компонентов (индивидуальные транзисторы или конденсаторы), на уровне блоков ADC (сравнительные устройства, схемы выборки и удержания) или на уровне системы (множественные полные ADC). Выбор зависит от критичности приложения, приемлемой стоимости и доступной области кремния. Ниже мы рассмотрим преобладающие стратегии.
Параллельное увольнение
Параллельное резервирование использует несколько каналов ADC, работающих одновременно. Простейшей формой является двойной избыточный ADC: два идентичных преобразователя оцифровывают один и тот же аналоговый вход, и их выходы сравниваются цифровым логическим блоком. Если выходы совпадают в пределах допуска, результат принимается; если они не согласны, поднимается флаг ошибки и используется предварительно заданное безопасное значение, или система входит в диагностический режим.
Более надежный подход - это трехмодульный резервирование (TMR) , где три ADC работают параллельно, и большинство избирателей выбирает выход, который появляется по крайней мере в двух из трех каналов. TMR может маскировать один сбой - если один ADC производит поврежденное чтение, другие два голоса перекрывают его. Это широко используется в авионике и космических системах, где часто встречаются нарушения, вызванные излучением. Однако TMR утрояет потребление энергии и площадь кремния, и несоответствия в смещении, выигрыше или времени между тремя путями должны быть тщательно откалиброваны, чтобы избежать систематических ошибок, которые побеждают механизм голосования.
- Синхронизация: Все ADC должны отбирать данные в одно и то же время, чтобы избежать перекоса выборки. Для этого требуется тщательное распределение часов и сопоставленная маршрутизация аналогового ввода.
- Отклонение и калибровка коэффициента усиления: Различия в эталонных напряжениях или внутренних конденсаторах могут вызывать патологические закономерности, когда два АЦП сходятся в неправильном значении.
- Выпускной арбитраж: Схема голосования должна быть разработана для обработки метастабильных состояний и сбоев при переходе двух выходов вблизи границы принятия решения.
Компонентная избыточность
Вместо того, чтобы воспроизводить весь ADC, некоторые конструкции вводят запасные подсхемы, которые могут быть активированы по требованию. Например, резервный банк компараторов с одним резервным компаратором на стадии во флэш-памяти ADC. Если компаратор выходит из строя (например, застрял на логическом максимуме), встроенный самотест (BIST) обнаруживает аномалию и свопы в запасном с использованием eFuses или энергонезависимой памяти.
Аналогично, последовательные аппроксимирующие регистры (SAR) ADC могут включать избыточные конденсаторы в подблоке цифровой-аналоговый преобразователь (DAC). Во время запуска или автономного обслуживания система тестирует каждый массив и отключает неисправные сегменты, перенастраивая алгоритм преобразования для использования только функциональных элементов. Этот подход является экономичным по сравнению с полным дублированием ADC, потому что резервируются только наиболее подверженные отказу части. Например, в 16-битном SAR ADC конденсатор DAC доминирует в области; добавление небольшого избыточного банка (~ 10% дополнительной емкости) может позволить грациозную деградацию до 15- или 14-битного разрешения, если первичный банк выходит из строя.
Обнаружение и исправление ошибок (EDAC)
Методы EDAC заимствуют из цифровых коммуникаций и систем памяти для защиты цифровых выходов ADC. В типичной схеме каждый результат преобразования сопровождается битами проверки ошибок, такими как коды Хэмминга, циклические проверки избыточности (CRC) или коды Рида-Соломона, которые позволяют приемнику обнаруживать и даже исправлять определенные ошибки.
Для ADC, которые выводят последовательные данные (например, SPI или LVDS), CRC, добавленный в конце каждого кадра преобразования, позволяет хосту-микроконтроллеру проверять целостность. Если происходит несоответствие CRC, хост может запросить повторную передачу или использовать предиктор (например, предыдущее значение), в то время как образцы ADC. Внутри ADC, четность или ECC могут быть применены к внутренним регистровым файлам, удерживающим калибровочные коэффициенты, предотвращая повреждение значений отделки, которые будут тихо ухудшать производительность.
Передовым примером является пространственный EDAC в сочетании с избыточностью: два ADC вычисляют одно и то же преобразование, и результаты отправляются по отдельным путям передачи данных (различные ПХД, разные протоколы). Система приема сравнивает их и использует CRC для проверки каждого пути, достигая как обнаружения ошибок, так и выравнивания с отказами общего режима в одном пути.
Самотестирование и мониторинг
Проактивное обнаружение неисправностей снижает вероятность того, что сбой остается незамеченным, пока система уже не будет повреждена. АЦП со встроенным самотестом (BIST) могут периодически вводить известное опорное напряжение или образец теста и сравнивать оцифрованное значение с ожидаемым диапазоном. Общие реализации BIST:
- На кристалле эталонное тестирование: Точный эталон напряжения подключается к входу ADC в течение испытательного цикла. Результат преобразования проверяется на известное эталонное значение для обнаружения ошибок дрейфа или усиления.
- Тест на обратную связь: Выход ADC подается обратно в DAC (или собственный DAC ADC в типах SAR), а оцифрованный обратный цикл сравнивается с оригинальным цифровым словом.
- Следующие таймеры: Таймер контролирует завершение преобразования ADC. Если преобразование занимает слишком много времени (указывает на состояние подвешивания), сторожевой пес утверждает сброс или запускает переключатель резервирования.
Схемы мониторинга состояния здоровья также могут отслеживать температуру, напряжение питания и тактовую частоту, помечая предупреждения, когда эти параметры отклоняются от безопасных рабочих порогов. Такие данные могут быть зарегистрированы для поддержки прогнозного обслуживания и анализа после инцидента.
Реализация увольнения на практике
Хотя стратегии, описанные выше, концептуально просты, их практическая реализация требует тщательного управления компромиссами. Наиболее очевидное напряжение между надежностью и потреблением ресурсов. TMR утрояет мощность и площадь; EDAC добавляет задержку; BIST занимает площадь вымирания и время испытаний. Инженеры должны выполнить режимы отказа, эффекты и диагностический анализ (FMEDA) , чтобы определить, какие ошибки наиболее вероятны и как каждая схема избыточности снижает остаточный коэффициент отказов.
Моделирование надежности
Стандартные показатели, такие как коэффициент отказов безопасности (SFF) и вероятность опасного отказа за час (PFH), используются в стандартах безопасности IEC 61508. Для подсистемы ADC, диаграмма блоков надежности (RBD) моделирует параллельные пути или ворота для голосования. Моделирование Монте-Карло может определить вероятность отказа от общей причины (например, сбой часов, влияющий на все ADC одновременно). Для смягчения сбоев от общей причины избыточные ADC должны иметь независимые источники питания, источники часов и физическое разделение на печатной плате.
Накладные расходы на калибровку и синхронизацию
Параллельные массивы ADC требуют межADC калибровки, чтобы соответствовать смещению, увеличению и времени. Неисправность в самом калибровочном DAC может ввести систематическую ошибку, которую голосование не может исправить. Конструкции высокой надежности часто включают выделенную точную ссылку и контроллер калибровки, который проверяется через его собственную избыточность. Синхронизация становится особенно сложной, когда ADC имеют разное время преобразования (например, ADC дельта-сигма против SAR), поэтому дизайнеры обычно используют идентичные устройства в избыточном наборе.
Арбитраж и логика голосования
Схема голосования в системе TMR должна быть закаленной радиацией, если используется в космосе или высотных приложениях. Стандартная логика CMOS может быть нарушена одним событием; тройные проекты избирателей с петлей обратной связи помогают предотвратить постоянную блокировку. Кроме того, избиратель должен справиться с случаем, когда два ADC выходят из строя с одним и тем же неправильным выходом (двойной ошибкой) изящно, часто путем принуждения заранее определенного безопасного состояния.
Стоимость vs. анализ выгод
Для автомобильных силовых агрегатов ADC, регулируемых ISO 26262, избыточность обычно добавляет 20-30% к стоимости смерти, но это оправдано целевым рейтингом ASIL (уровень целостности безопасности автомобилей). В недорогих потребительских медицинских устройствах более дешевой альтернативой является использование одного ADC с самотестом, который проверяет конверсию против вторичного ADC с низким разрешением, принимая более низкий диагностический охват. Компромисс должен быть задокументирован в случае безопасности.
Преимущества встроенного увольнения
Инвестирование в избыточную архитектуру ADC приводит к количественным улучшениям в нескольких измерениях:
- Усиление надежности и доступности системы: Излишние АЦП поддерживают обработку сигнала датчика даже при выходе из строя одного или нескольких каналов преобразователя, уменьшая незапланированные простои в промышленных процессах или предотвращая прерывание миссий в аэрокосмической отрасли.
- Сниженный риск повреждения или потери данных: Замыкания обнаружения и коррекции ошибок предотвращают поступление ошибочных измерений в контрольные замыкания, избегая колебаний или небезопасных команд привода.
- Повышение безопасности в критически важных приложениях: Соблюдение стандартов функциональной безопасности, таких как DO-254 (авионика), IEC 61508 (промышленный) и ISO 26262 (автомобильный) часто требует избыточности на уровне компонентов.
- Расширенный срок службы: Возможность изящно ухудшаться (например, с 16-битной до 14-битной точности) позволяет системе продолжать функционировать после отказа первого компонента, откладывая вмешательства по техническому обслуживанию.
Прикладные тематические исследования
Аэрокосмический: Космический аппарат НАСА Орион использует избыточные АЦП в своей системе экологического контроля и жизнеобеспечения. Каждый датчик давления питает три отдельных канала АЦП, выходы которых большинством голосов используются для корректировки атмосферы кабины. Этот подход TMR был проверен на лету, чтобы пережить однобитные возмущения от космических лучей.
Медицинские имплантаты: Имплантируемые кардиовертер-дефибрилляторы (ICD) полагаются на ADC для восприятия сердечных сигналов. Одно неверное преобразование может вызвать ненужный шок или пропустить смертельную аритмию. Ведущие производители используют двойные избыточные SAR-ADC со встроенным самотестом, который работает во время каждого сердечного цикла, переключая каналы, если одно преобразование не проходит проверку внутренней консистенции.
Промышленная автоматизация:] В системах управления газовыми турбинами с рейтингом SIL-3 АЦП, контролирующие интенсивность пламени и температуру, спроектированы с параллельной избыточностью и часовым таймером. Если преобразователь сообщает значение за пределами ожидаемого диапазона или не завершает преобразование, контроллер безопасности автоматически использует избыточный канал и сигнализирует о запросе на техническое обслуживание.
Новые тенденции и будущие направления
Ландшафт отказоустойчивости быстро развивается. На чипе избыточность движется к самоисцеляющимся схемам: ADC, которые могут автоматически перенаправлять пути сигналов вокруг неисправных компонентов с помощью массивов наноразмерных переключателей или мемристоров. Исследования таких учреждений, как MIT и Стэнфорд, демонстрируют ADC, которые могут переносить до 30% дефектных клеток, перенастраивая алгоритм преобразования в реальном времени.
Машинное обучение для прогнозирования обнаружения неисправностей является еще одним рубежом. Путем мониторинга тонких выходных шумовых паттернов, температурных коэффициентов и задержки конверсии нейронная сеть на чипе может предсказать надвигающиеся сбои (например, увеличение теплового шума компаратора) за несколько дней до возникновения жесткого сбоя, давая командам обслуживания окно для действий.
Кроме того, методы, закаленные конструкцией (RHBD) , которые сочетают избыточность со специальными методами компоновки (например, транзисторы с закрытыми вратами, защитные кольца), принимаются в коммерческих готовых (COTS) ADC для спутников с низкой околоземной орбитой, снижая табу на использование потребительских ИС в космосе.
Заключение
Проектирование АЦП со встроенным резервированием — это не просто страховой полис — это фундаментальное требование для систем, где человеческая жизнь, капитальные активы или успех миссии висят на волоске. Объединив параллельные архитектуры, запасные компоненты, коды, исправляющие ошибки, и самодиагностику, инженеры могут создавать передние концы сбора данных, которые изящно выдерживают одиночные и множественные ошибки. Ключ заключается в понимании конкретных режимов отказа целевой среды, выполнении строгого анализа надежности и балансировании глубины резервирования с практическими ограничениями мощности, площади и стоимости.
Для дальнейшего чтения, проконсультируйтесь со следующими авторитетными ресурсами:
- Texas Instruments Application Report SBAA395 — «Излишний ADC дизайн для функциональной безопасности в автомобильных системах»
- Аналоговое устройство Техническая статья MS-2158 - «Недопустимая передача данных для критически важных приложений»
- Технический меморандум НАСА — «Управление увольнением для аналого-цифровых преобразователей в космических полетах»
- IEEE Paper — «Тройно-модульная резервная SAR ADC для авионики»
Внедряя эти принципы с самого раннего этапа проектирования, инженеры могут поставлять подсистемы ADC, которые не только отвечают, но и превосходят требования надежности критически важных систем завтрашнего дня.