До сих пор предполагалось, что сигнал на входе триггера может принимать только два состояния: логический ноль и логическая единица. Однако синхроимпульс может прийти в любой момент времени, в том числе и в момент смены состояния сигнала на входе триггера. Если синхросигнал попадёт точно на момент перехода входным сигналом порогового уровня, то триггер на некоторое время может попасть в неустойчивое метастабильное состояние, при котором напряжение на его выходе будет находиться между уровнем логического нуля и логической единицы. Это может привести к нарушению правильной работы цифрового устройства.
Состояние метастабильности триггера подобно неустойчивому состоянию шарика, находящегося на вершине конического холма. Такая ситуация иллюстрируется рисунком 8.12. Обычно триггер не может долго находиться в состоянии метастабильности и быстро возвращается в одно из стабильных состояний. Время нахождения в метастабильном состоянии зависит от уровня шумов схемы и использованной технологии изготовления микросхем.
Временные параметры триггера в момент возникновения состояния метастабильности и выхода из этого состояния приведены на рисунке 8.13. Время tSU (register setup time or tSU) на этом рисунке это минимальное время перед синхроимпульсом, в течение которого логический уровень сигнала должен оставаться стабильным для того, чтобы избежать метастабильности выхода триггера. Время tH (register hold time or tH) это минимально необходимое время удержания стабильного сигнала на входе триггера для того, чтобы избежать метастабильности его выхода. Время состояния метатастабильности случайно и зависит от многих параметров. На рисунке 8.13 оно обозначено tMET.
Вероятность того, что время метастабильности превысит заданную величину, экспоненциально уменьшается с ростом времени, в течение которого выход триггера находится в метастабильном состояние:
,
где t – это коэффициент обратно пропорциональный коэффициенту усиления и полосе пропускания элементов, входящих в состав триггера.
Склонность триггеров к метастабильности обычно оценивается величиной, обратной скорости отказов. Это значение выражается как интервал времени между отказами. Его можно определить по формуле:
,
где t0 = tSU – tH;
fс – тактовая частота;
fd– частота с которой меняются входные данные.
Для оценки этой величины, приведём пример таблицы для двух микросхем. Последняя строчка этой таблицы эквивалентна времени метастабильности tMET = 5 нс.
Таблица 8.4 – Сравнительные характеристики КМОП и Bi-КМОП триггеров
Условия измерения
SN74ACT
SN74ABT
fc = 33МГц, fd = 8МГц
8400 лет
8.1´109 лет
fc = 40МГц, fd = 10МГц
92 дня
1400 лет
fc = 50МГц, fd = 12МГц
-
2 часа
Метастабильное состояние не всегда приводит к неправильной работе цифрового устройства. Если время ожидания устройства после прихода импульса синхронизации достаточно велико, то триггер может успеть перейти в устойчивое состояние, и это будет не заметно. То есть если заранее учитывать время метастабильности tmet , то метастабильность никак не скажется на работе остальной цифровой схемы. Если же это время будет неприемлемым для работы схемы, то можно последовательно включить два триггера, как это показано на рисунке 8.14. Это снизит вероятность возникновения метастабильного состояния.
Рисунок 8.14 – Схема снижения вероятности возникновения метастабильного состояния
Приведем еще один пример. Проведем сравнение MBTF для тех же микросхем, что и в предыдущем примере. Время метастабильности tMET = 5 нс для 50МГц, tMET = 5 нс для 67МГц, tMET = 5 нс для 80МГц.
Таблица 8.5 – Сравнительные характеристики КМОП и Bi-КМОП триггеров