Неизвестное об известном,
или Что такое метастабильность триггеров
Андрей СТРОГОНОВ, д. т. н.
Метастабильность — явление, присущее всем триггерам (однотактным и двухтактным), вне зависимости от технологии изготовления — биполярная, КМОП или БиКМОП, в результате которой триггер может сбиться (происходит приостановка срабатывания триггера, которая воспринимается как отказ). Метастабильность проявляется в быстродействующих системах на базе ПЛИС и при синхронизации асинхронных сигналов. Устранить этот эффект невозможно, можно лишь уменьшить его вероятность [1].
Модель двухтактного триггера (триггер, тактируемый фронтом синхросигнала, или триггер типа Master/Slave), представленная на рис. 1, используется для анализа метастабильности. Усилитель может принимать два устойчивых состояния, которые соответствуют полярности входного напряжения. В момент начала тактового периода ключ S2 размыкается, ключ S1 замыкается — и конденсатор C заряжается до входного напряжения Vin (рис. 1). К моменту завершения тактового периода ключ S2 замыкается, а ключ Sj размыкается — и усилитель под
действием положительной обратной связи через резистор Я1 переходит в режим насыщения, при котором сигнал на выходе имеет амплитуду, равную напряжению питания, и полярность, соответствующую полярности входного напряжения. В момент размыкания ключа 51 не должно происходить изменение логического уровня сигнала Уы, иначе при двухуровневом сигнале на входе конденсатор может разрядиться. Напряжение на конденсаторе Ус влияет на время, которое необходимо для перехода триггера в одно из устойчивых состояний, при замыкании
ключа S2. В этом режиме напряжение на выходе усилителя определяется следующей зависимостью [1]:
Vout(t) = Vm eK,“ (1)
где K — постоянная времени, зависящая от полосы пропускания усилителя и параметров ключей S1 и S2; tmxt — задержка срабатывания триггера вследствие метастабильности.
Два интервала времени tSU (время установки сигнала) и th (время удержания сигнала) образуют окно принятия решения (рис. 2а, табл. 1). На этом отрезке времени триггер берет выборку сигнала на входе данных и решает, нужно ему изменять выходной сигнал или нет. Если асинхронный информационный сигнал DATA на входе триггера изменяется за пределами этого окна, то гарантируется его переход в одно из устойчивых состояний, не позднее времени tpd (нормальная задержка распространения информационного сигнала от входа до выхода Q триггера, отсчитывается по переднему фронту синхроимпульса CLK, иногда обозначают tCO). Если информационный сигнал D меняется в пределах этого окна, может возникнуть метастабильность и просуществовать до окончания интервала tmet (рис. 2б) [2]. Чем больше это окно, тем больше вероятность, что триггер попадет в метастабильное состояние. Если метастабильность превышает интервал tmet, то есть tmet > tpj, то это фиксируется как отказ. Из таблицы 1 видно, что у современных семейств логических ИС средней степени интеграции окно принятия решения меньше, и следовательно, вероятность попадания в ме-тастабильное состояние меньше. Внутри окна принятия решения существует критическая точка td, которая может быть определена как tSU - th. При приближении к этой точке задержка переключения триггера tpd начинает
g Разомкнут 2 Замкнут -д Разомкнут -1 Замкнут
.
Vc -v„„. -
г
Начало такта -
к S., замыкается и на емкость С поступает входной сигнал Vin
S2 размыкается, разрывая контур положительной обратной связи
Задержка передачи сигнала с входа на выход усилителя
Рис. 1. Модель триггера для анализа метастабильности и временные диаграммы его работы
CLK CLK
" ldk ’
DATA ^
(Зи= X X data / і Значение \ V меняется /
Окно принятия решения
*su th *su th
X
H
X
в
Состояние метастабильности *met
Рис. 2. Анализ метастабильности работы триггера, тактируемого фронтом синхросигнала:
а) нормальная работа триггера; б) метастабильное поведение (метастабильность отсчитывается от переднего фронта синхроимпульса)
Триггер tsu, нс ^ нс ^otak нс
74C74 100 0 100
74HC74 20 0 20
74HCT74 20 0 20
7474 20 5 25
74ALS74 15 10 25
74LS74 20 0 20
74S74 3 2 5
74AC74 4 0,5 4,5
74ACT74 3 1 4
74ACTQ74 3 1,5 4,5
Рассмотрим расчет среднего времени между отказами для синхронизирующего устройства, состоящего из двух последовательно включенных триггеров с общим синхросигналом, в предположении, что второй триггер не подвержен метастабильности.
При изменении асинхронного сигнала Data в пределах окна принятия решения длительность пребывания выхода Q триггера в мета-стабильном состоянии описывается экспоненциальной зависимостью [2-6]:
стота синхросигнала CLK на тактовом входе триггера; fDATA — частота асинхронного информационного сигнала DATA, поступающего на вход данных (число изменений сигнала DATA); С1 и С2 — константы, зависящие от электрических характеристик триггера и технологического процесса изготовления БИС. В наихудшем случае, если fDATA = 0,5fCLK, то [3]:
MTBF =
о ,5xqx/^.
(З)
(С2Ыте!)
расти пропорционально логарифму разности между фактическим временем установления и временем установления, соответствующего критической точке. td для различных типов триггеров может составлять от 10 до 100 пс.
У различных производителей БИС параметры метастабильности определяются по-разному [2]. Производители заказных БИС, такие как Texas Instruments и Chaney, отсчитывают время выхода из метастабильности по переднему фронту синхроимпульса (рис. 2). Производители ПЛИС — Altera и Xilinx — под метастабильностью понимают время, которое должно быть прибавлено к нормальному времени задержки tCO (рис. 3) [2-6].
Таблица 1. Окно принятия решения для триггеров 74xx74 различных серий
MTBF-
CxXfcLK^fП.
(2)
где ЫТБР — среднее время между отказами синхронизирующего устройства; С1К — ча-
Константу С1 связывают с критической точкой td, ответственной за вероятность наступления метастабильного состояния в каждом переходе входного сигнала, а С2
Рис. 4. Схема метода по изучению характеристик метастабильности и временные диаграммы
Рис. 5. Зависимость среднего времени наработки на отказ MTBF от tmet Рис. 6. Метастабильные характеристики ИС 74 серии фирмы Texas Instruments
описывает скорость наступления этого состояния [5].
На рис. 4 показана схема метода по исследованию характеристик метастабильности триггеров ПЛИС фирмы Xilinx [4, 5]. Подобный метод использует и фирма Altera [6]. Если асинхронный сигнал Data меняется в пределах окна принятия решения вследствие несоблюдения временных требований по установке и удержанию сигнала DATA, то выход триггера 1 будет находиться в метаста-бильном состоянии (или логический ноль, или логическая единица). Триггеры 1 и 2 включены по принципу простейшей схемы синхронизирующего устройства, которое за определенное время позволяет выйти из ме-тастабильного состояния. В этом случае период синхроимпульса берется большим, чем время tmet. Поэтому к моменту появления второго переднего фронта синхроимпульса с учетом времени установки-удержания триггера 2 выход QB становится копией сигнала DATA.
Выходной сигнал QА триггера 1 параллельно поступает на триггер 2, который записывается в нем по переднему фронту синхроимпульса, и на триггер 3, который записывается по срезу синхроимпульса. В случае если выход QА будет находиться в метаста-бильном состоянии, то триггер 3 по первому срезу фронта синхроимпульса CLK может зафиксировать наличие логического нуля на выходе QА. По второму переднему фронту синхроимпульса выход QB установится в положение логической единицы, и на выходе логического элемента исключающего ИЛИ фиксируется логическая единица, которая будет записана в триггер 4 по срезу второго синхроимпульса. Эта единица распознается как отказ вследствие наличия метастабильности. 16-разрядный счетчик подсчитывает число таких отказов.
На рис. 5 показана связь метастабильности со средним временем между отказами ПЛИС фирмы Altera. Константы С1 и С2 определяются следующим образом [6]:
С2=
ALnjMTBF)
А/
Ln MTBF2-Ln MTBFl
С\ =
0(C2xt^)
MTBF xfCLK X fDATA
(4)
(5)
Ln{MTBFxfCLKxfDATAx Cj)
(6)
Ln 10 -Ln 10~ 19,5-10,5
= 1,02—. не
Для наихудшего случая определим константу Q по формуле:
2xexp (C2xtmJ MTBFxfCLK
2xexp(l,02x19,5) _10_,c. 10 xlO
Подставим полученные значения в формулу (2) и получим формулу для определения MTБF 74ЛЬ8 серии:
В качестве примера рассмотрим расчет констант С1 и С2 по рис. 6 для ИС 74ЛЬ8 серии фирмы Т1 [3]. Произвольно выберем MTБF1 = Ш2 с и MTБF2 = 102 с. По графику определим величины tmet1 = 10,5 нс и tmef2 = 19,5 нс и рас-
MTBF -
Увеличение или уменьшение значения константы С1 перемещает зависимость MTБF от tmet вверх или вниз, то есть масштабирует MTБF линейно. Константа С2 влияет на угол наклона зависимости MTБF от tmet. Увеличение частоты тактового сигнала ^1К приводит к сдвигу вправо зависимость MTБF от те( и к снижению значения MTБF.
Зарубежные фирмы-производители БИС и ПЛИС дают информацию по константам С1 и С2. Задаваясь требуемым значением MTБF, можно рассчитать время те( [6]:
8,7x10 xfCLKxfDATA
-. (7)
Проведем расчет времени выхода из метастабильности при величине ЫТБР1000 лет при работе синхронизирующего устройства с частотой 25 МГц и 100 000 изменений асинхронного информационного сигнала
Таблица 2. Расчет времени выхода из метастабильности при величине МТВР 1000 лет при работе синхронизирующего устройства
Фирма производитель Серия, тип ИС С1, c С2, 1/нс tmet, нс
Altera FLEX10K, FLEX 8000, FLEX 6000 1,01 x 10-13 12,68 1,79
MAX9000 2,98x10-17 5,023 2,91
74TTLxx 2,9x10-4 0,74 60,17
74LSxx 4,8x10-3 0,74 63,96
TI* 74ALSxx 8,7 x 10-6 1 41,02
74ASxx 1,4x10s 4 14,98
74Fxx 1,9x10" 9,2 7,8
74HCxx 1,46x10-6 0,55 71,34
Xilinx XC4005E-3 0,1 x10-9 16,1 1,84
* Параметры метастабильности для логических ИС
различных серий фирмы Т1 рассчитаны
для наихудшего случая, когда ^дтд = 0,5(ак.
и
считаем С2:
MTBF = 10 -3 X С C2xtmet
(9)
бильном состоянии триггера синхронизирующего устройства составляет:
tmet = ^ЬК - ^ и = (1//с!К) '%и.
При СЬК =10 МГц, ^АтА =100 кГц и %и = 25 нс допустимое время составляет 75 нс, а MTБF синхронизирующего устройства составит:
(1,02x75)
МТВРП5 нс) =------------^-------------------= 6,4 хЮ18 лет.
8,7x10 хЮ МГцхЮО кГц
При С1К = 16 МГц допустимое время в метастабильном состоянии составит 37,5 нс, а MTБF:
(1,02x37,5
MTBF(37,5 нс) =
МГцхЮО кГц
- = 97 лет.
Рис. 7. Среднее время между отказами для триггеров КЛБ и блоков B/B ПЛИС фирмы Xilinx (f data =1 МГц, fCLK = 10 МГц)
в секунду (fDATA = 105 Гц) по справочным данным (табл. 2). За 1 год приближенно примем 3х107 с. Согласно таблице 2 серия 74HCxx проигрывает другим сериям по представленным в таблице показателям.
Покажем, что незначительное увеличение tmet сильно влияет на величину MTBF. Предположим что мы проектируем синхронизирующее устройство с MTBF 1 год на ПЛИС EPF8452A c fDATA = 2 МГц и fCLK = 10 МГц и константами С1 и С2, указанными в таблице 1:
tmet = (Ln (3x107x10x106x2x106xC1))/C2 = 1,41 нс. (8)
В технической документации фирмы Altera при проектировании отказоустойчивых синхронизирующих устройств рекомендуется найденное значение tmet прибавить к задержке tCO и повторно провести временной анализ. Если требуется спроектировать синхронизирующее устройство с MTBF 10 лет, то время выхода из метастабильности составит 1,59 нс.
Фирма Xilinx использует формулу (1) для расчета MTBF. В техническом отчете [4,5] приводятся экспериментально определенные значения константы С2 для триггеров тактируемых фронтом синхросигнала конфигурируемых логических блоков (КЛБ, CLB) и для триггеров блоков ввода/вывода (В/В, IOB). Например, для ПЛИС XC4005E-3: С2 = 16,1 1/нс для триггеров КЛБ и С2 = 19,4 1/нс для триггеров блоков В/В. Константа Q для рассмотренных в отчете серий ПЛИС задается С1 = 0,1 нс. При синхронизации асинхронного информационного сигнала триггеров КЛБ и блоков В/В, изменяющегося с частотой fDATA = 1 МГц, тактовым сигналом с частотой fCLK =10 МГц, среднее время между отказами определяется по формуле [4]:
При увеличении fCLK до 20 МГц, то есть на 20%, MTBF синхронизирующего устройства уже составит 6800 с, или примерно 2 ч.
Если синхронизирующее устройство состоит из двух триггеров, то MTBF может быть найдено по формуле [7]:
AC2'X.tmet{i
MTBF = -
-хё
2)
(10)
Предположим, что в синхронизирующем устройстве используются два триггера 74ЛЬ874. При /сЬК =10 МГц, /0АтА =100 кГц, %и = 25 нс среднее время между отказами составит:
(1,02x75)
MTBF(15 нс) =
ejxlO^xlO МГцхЮО кГц ~ 27 млн. лет.
хё
(1,02x75),
На рис. 7 показана зависимость среднего времени между отказами для триггеров КЛБ и блоков В/В ПЛИС фирмы Xilinx (fDATA = 1 МГц, fCLK = 10 МГц). На рисунке видно, что если при проектировании высокоскоростных систем на ПЛИС фирмы Xilinx учитывать задержки срабатывания триггеров вследствие метастабильности 2-3 нс, то MTBF, обусловленное этим явлением, может быть более миллиона лет.
При расчете схемы синхронизирующего устройства, состоящего из одного триггера, на ИС средней степени интеграции, например на ИС типа 74ALS74 (TI), допустимое время пребывания в метаста-
Общей рекомендацией по снижению метастабильности является: использование триггеров с более высоким быстродействием, то есть с большим значением С2; использование цепочки последовательно включенных триггеров с общим синхросигналом, то есть на каждом асинхронном входе должно последовательно стоять два или более триггера для увеличения допустимого tmet; увеличение длительности периода синхросигнала, что приводит к уменьшению вероятности попадания информационного сигнала DATA в окно метастабильности, а также использование триггеров с иммунитетом к метастабильности, например ИС (ИС серии 74F50XXX фирмы Philips Semiconductors) [8]. ■
Литература
1. Джонсон Г. В., Грэхем М. Конструирование высокоскоростных цифровых устройств: начальный курс черной магии. Пер. с англ. М.: Издательский дом «Вильямс», 2006.
2. Уэйкерли Д. Ф. Проектирование цифровых устройств. Том I / Пер. с англ. М.: Постмаркет, 2002.
3. Texas Instruments. Metastable response in 5-v logic circuits. sdya006.pdf. February 1997.
4. www.xilinx.com. Xilinx_metastable_recovery_2.pdf. Metastability recovery in Xilinx FPGAs.
5. www.xilinx.com. Xapp094.pdf. Application note. Metastable Recovery. XAPP 094 November 24, 1997 (Version 2.1).
6. www.altera.com. Metastability in Altera Devices. Application Note 42. May 1999, ver.4. an042.pdf.
7. Texas Instruments. Chris Wellheuser. Metastability performance of clocked FIFOs. First-In, First-Out Technology. Advanced System Logic — Semiconductor Group. SCZA004A.pdf.
8. Philips Semiconductors. 74F50109. Synchronizing dual J-K positive edge-triggered flip-flop with metastable immune characteristics. Product specification. IC15. Data Handbok. 1990. Sep. 14.