stringtranslate.com

Метастабильность (электроника)

Рисунок 1. Иллюстрация метастабильности в синхронизаторе , где данные пересекаются между доменами часов. В худшем случае, в зависимости от времени, метастабильное состояние в D s может распространиться на D out и через следующую логику в большую часть системы, вызывая неопределенное и непоследовательное поведение.

В электронике метастабильность — это способность цифровой электронной системы сохраняться в течение неограниченного времени в нестабильном равновесии или метастабильном состоянии. [1] В цифровых логических схемах цифровой сигнал должен находиться в определенных пределах напряжения или тока , чтобы представлять логический уровень «0» или «1» для правильной работы схемы; если сигнал находится в запрещенном промежуточном диапазоне, это может вызвать неправильное поведение в логических вентилях, к которым применяется сигнал. В метастабильных состояниях схема может быть неспособна установиться в стабильном логическом уровне «0» или «1» в течение времени, необходимого для правильной работы схемы. В результате схема может действовать непредсказуемым образом и может привести к сбою системы, иногда называемому «сбоем». [2] Метастабильность — это пример парадокса Буриданова осла .

Метастабильные состояния являются неотъемлемыми чертами асинхронных цифровых систем и систем с более чем одним независимым доменом синхронизации . В самосинхронных асинхронных системах арбитры разработаны так, чтобы система могла продолжить работу только после разрешения метастабильности, поэтому метастабильность является нормальным состоянием, а не состоянием ошибки. [3] В синхронных системах с асинхронными входами синхронизаторы разработаны так, чтобы сделать вероятность сбоя синхронизации приемлемо малой. [4] Метастабильные состояния можно избежать в полностью синхронных системах, когда выполнены требования к времени установки и удержания входа на триггерах.

Пример

Рисунок 2. Пример защелки NOR Set–Reset

Простой пример метастабильности можно найти в защелке SR NOR , когда оба входа Set и Reset являются истинными (R=1 и S=1), а затем оба переходят в состояние ложных (R=0 и S=0) примерно в одно и то же время. Оба выхода Q и Q изначально удерживаются на уровне 0 одновременными входами Set и Reset. После того, как оба входа Set и Reset изменятся на ложные, триггер (в конечном итоге) окажется в одном из двух стабильных состояний, одно из которых Q и Q истинны, а другое ложно. Конечное состояние будет зависеть от того, какой из R или S вернется к нулю первым, хронологически, но если оба перейдут примерно в одно и то же время, результирующая метастабильность с промежуточными или колебательными уровнями выходного сигнала может занять произвольно много времени, чтобы перейти в стабильное состояние.

Арбитры

В электронике арбитр — это схема, предназначенная для определения того, какой из нескольких сигналов прибудет первым. Арбитры используются в асинхронных схемах для упорядочивания вычислительных действий для общих ресурсов с целью предотвращения одновременных некорректных операций. Арбитры используются на входах полностью синхронных систем, а также между доменами часов в качестве синхронизаторов для входных сигналов. Хотя они могут минимизировать возникновение метастабильности до очень низких вероятностей, все арбитры, тем не менее, имеют метастабильные состояния, которые неизбежны на границах областей пространства входных состояний, что приводит к различным выходам. [5]

Синхронные цепи

Рисунок 3. Этот 4-битный сдвиговый регистр действует как синхронизатор. Поскольку несинхронизированные входные данные0 проходят через каждую стадию триггера, вероятность того, что они останутся метастабильными, резко уменьшается, поскольку на каждой стадии доступен почти целый тактовый цикл для разрешения возможной метастабильности из предыдущей стадии.

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

Синхронизирующие схемы используются для снижения вероятности метастабильности при получении асинхронного ввода или при передаче сигналов между различными доменами синхронизации. Синхронизаторы могут иметь форму каскада D-триггеров (например, сдвигового регистра на рисунке 3). [7] Хотя каждый каскад триггера добавляет дополнительный тактовый цикл задержки к потоку входных данных, каждый каскад предоставляет возможность разрешить метастабильность. Такие синхронизаторы могут быть спроектированы для снижения метастабильности до незначительной, но приемлемой скорости.

Триггеры Шмитта также могут использоваться для снижения вероятности метастабильности, но, как продемонстрировал исследователь Чейни в 1979 году, даже триггеры Шмитта могут стать метастабильными. Он также утверждал, что невозможно полностью устранить возможность метастабильности от несинхронизированных входов в течение конечного времени и что «существует множество теоретических и экспериментальных доказательств того, что область аномального поведения существует для каждого устройства, имеющего два стабильных состояния». Перед лицом этой неизбежности оборудование может только снизить вероятность метастабильности, а системы могут попытаться изящно обработать случайное метастабильное событие. [8]

Виды отказов

Хотя метастабильность хорошо изучена и известны архитектурные методы ее контроля, она продолжает оставаться причиной отказов оборудования.

Серьёзные ошибки компьютеров и цифрового оборудования , вызванные метастабильностью, имеют захватывающую социальную историю. Многие инженеры отказывались верить, что бистабильное устройство может войти в состояние, которое не является ни истинным , ни ложным , и имеет положительную вероятность того, что оно останется неопределённым в течение любого заданного периода времени, хотя и с экспоненциально уменьшающейся вероятностью с течением времени. [9] [10] [11] [12] [13] Однако метастабильность является неизбежным результатом любой попытки сопоставить непрерывную область с дискретной. На границах в непрерывной области между областями, которые сопоставляются с различными дискретными выходами, точки, произвольно близко расположенные друг к другу в непрерывной области, сопоставляются с различными выходами, принимая решение о том, какой выход выбрать, сложный и потенциально длительный процесс. [14] Если входы в арбитр или триггер поступают почти одновременно, схема, скорее всего, пересечёт точку метастабильности. Метастабильность остаётся плохо изученной в некоторых кругах, и различные инженеры предложили свои собственные схемы, которые, как говорят, решают или отфильтровывают метастабильность; Обычно эти схемы просто перемещают возникновение метастабильности из одного места в другое. [15] Микросхемы, использующие несколько источников тактовых импульсов, часто тестируются с помощью тестовых тактовых импульсов, которые имеют фиксированные фазовые соотношения, а не независимых тактовых импульсов, дрейфующих друг мимо друга, которые будут наблюдаться во время работы. Обычно это явно предотвращает возможность обнаружения или сообщения о метастабильном режиме отказа, который возникнет в полевых условиях. Правильное тестирование на метастабильность часто использует тактовые импульсы с немного разными частотами и обеспечивает правильную работу схемы.

Смотрите также

Ссылки

  1. ^ Томас Дж. Чейни и Чарльз Э. Молнар (апрель 1973 г.). «Аномальное поведение схем синхронизатора и арбитра» (PDF) . IEEE Transactions on Computers . C-22 (4): 421–422. doi :10.1109/TC.1973.223730. ISSN  0018-9340. S2CID  12594672.
  2. ^ Чейни, Томас Дж. «Моя работа над всем метастабильным или я и мой глюк» (PDF) . Архивировано из оригинала (PDF) 2015-12-08 . Получено 2015-11-05 .
  3. ^ Джон Бейнбридж (2002). Асинхронная система на кристалле. Springer. стр. 18. ISBN 978-1-85233-598-4.
  4. ^ Чейни, Томас Дж. ""Перепечатка Технического меморандума № 10, "Феномен сбоя" (1966)"".Университет Вашингтона в Сент-Луисе
  5. ^ Ричард Ф. Тиндер (2009). Проектирование и анализ асинхронных последовательных машин: комплексное развитие проектирования и анализа машин и систем с независимыми от часов состояниями. Morgan & Claypool Publishers. стр. 165. ISBN 978-1-59829-689-1.
  6. ^ Климан, Л.; Кантони, А. «Метастабильное поведение в цифровых системах», декабрь 1987 г.. IEEE Design & Test of Computers . 4 (6): 4–19. doi : 10.1109/MDT.1987.295189. S2CID  1895434.
  7. ^ APDahlen (2023-10-19). "Реализация синхронизатора тактовой частоты на Verilog". Форум электронных компонентов и инженерных решений DigiKey . Архивировано из оригинала 2023-12-05 . Получено 2024-02-17 .
  8. ^ Чейни, Томас (1979). «Комментарии к «Заметке о сбое в работе синхронизатора или блокировки»». Труды IEEE по компьютерам . C-28 (10): 802–804. doi :10.1109/TC.1979.1675252. ISSN  0018-9340.
  9. ^ Харрис, Сара; Харрис, Дэвид (2015). Цифровое проектирование и архитектура компьютеров: издание ARM. Morgan Kaufmann. стр. 151–153. ISBN 978-0128009116.
  10. ^ Ginosar, Ran (2011). «Метастабильность и синхронизаторы: учебное пособие» (PDF) . Исследовательский центр систем VLSI . Кафедра электротехники и компьютерных наук, Технион — Израильский технологический институт, Хайфа., стр. 4-6
  11. ^ Ксантопулос, Фукидид (2009). Синхронизация в современных системах СБИС . Springer Science and Business Media. стр. 196. ISBN 978-1441902610., стр. 196, 200, ур. 6-29
  12. ^ "A Metastability Primer" (PDF) . Application Note AN-219 . Phillips Semiconductor. 1989 . Получено 2017-01-20 .
  13. ^ Арора, Мохит (2011). Искусство архитектуры оборудования: методы и приемы проектирования цифровых схем. Springer Science and Business Media. ISBN 978-1461403975., стр. 4-5, ур. 1-1
  14. ^ Лесли Лэмпорт (февраль 2012 г.) [декабрь 1984 г.]. "Принцип Буридана" (PDF) . Получено 09.07.2010 .
  15. ^ Ран Гиносар. «Четырнадцать способов обмануть ваш синхронизатор» ASYNC 2003.

Внешние ссылки