Джон Ф.Уэйкерли Проектирование цифровых устройств. Том I (2002) (1095889), страница 172
Текст из файла (страница 172)
В результате прн каждом однократном нажатии кнопки сигналы на входе ВИI Е и на вьпкше 0ВВ«несколько раз изменяют свои значения. Талое 8.2. Защелки и триггеры 777 вление называется дребезгаи контакта (сопгасг Ьоипсе). В типичном случае продолжительность дребезга составляет 10-20 мс, а это очень большое время с очки зрения скорости, с которой переключаются логические вентили. В зависимости от условий применения переключателей наличие дребезга может быть существенным или несущественным. Например, конфигурация некоторых компьютеров задается миниатюрными переключателями, которые называют ЫРяпереключагнеляии (ИР ззн(гсЬез), поскольку они имеют те же размеры, что и ИС в 0!р-коРпУсе, то есть в коРпУсе с двУхРЯдным Расположением выводов, Поскольку, как правило, изменение конфигурации компьютера с помощью такого переключателя осуществляется лишь тогда, когда компьютер выключен, дребезг контактов не имеет значения.
Дребезг контакта становится проблемой, когда путем замыкания или размыкання ключа подается сигнал о том или ином событии и ведется подсчет числа этих событий (например, когда считаются круги во время гонок). В этом случае нам необходима схема (или подходящая программа для микропроцессорной системы), обеспечивающая защиту огп дребезга (ЫеЬоипсе), в результате чего вырабатывалось бы только одиночное изменение сигнала (или одиночный импульс) на каждое внешнее воздействие.
*8.2.3. Простейшая схема защиты отдребезга Защита от дребезга является хорошим примером применения простейшего последовательностного устройства — элемента с двумя устойчивыми состояниями, рассмотренного в параграфе 7.1. Им можно воспользоваться так, как показано на рис. 8.5.
В этой схеме применяется однополюсный переключатель на два направления, устроенный таким образом, что при переключении подвижный контакт сначала размыкается с одним из неподвижных контактов и только потом замыкается на другой неподвижный контакт. Поэтому в процессе переключения подвижный контакт в течение некоторого времени пребывает в «плавающем» состоянии, где-то посередине между неподвижными контактами. Рис. 8.5. По- давлениедребезга прн переключении входного сигнала с помощью элемента сдвумя устойчивыми состояниями (6(ч0 — земля) (а) 741.804 74Ь804 нажатия 8У/ пересе сспрнвсновенне гтп ~он— 8»Н 1 ~<н оно— 08«Н 778 Глава 8.
Практическая разработке схем последовательной логики До нажатия кнопки на верхний неподвижный контакт подается 0 В, поэтому логическое значение сигнала яЧЧ равно О, а на выходе верхне~о инвертора удерживается сигнал с логическим значением 1, которым определяется потенциал ЯчЧ Е нижнего неподвижного контакта.
Когда кнопка нажимается и соединение между подвижным и верхним неподвижным контактом разрывается, петля обратной связи в элементе с двумя устойчивыми состояниями удерживает значение ЯЧЧ на уровне 1' „(= 0.5 В для ТТЛ-схем серии ЕЯ), что, по-прежнему, соответствуетлогическому О. Затем, когда подвижный контакт впервые касается нижнего неподвижного контакта, схема некоторое время ведет себя самым необычным образом.
Верхний инвертор элемента с двумя устойчивыми состояниями пытается удерживать логическую 1 на сигнальной линии ЯЧЧ 1.; при этом верхний транзистор в его выходной цепи открыт и поэтому точка ЯЧЧ Ечерез малое сопротивление соединена с шиной питания +5 В. А тут вдруг нижний неподвижный контакт механически соединяется с землей, заставляя потенциал ЯЧЧ 1 стать равным 0.0 В. Ничего удивительного, что механическое воздействие побеждает, Спустя короткое время 130 нс для ИС 74ЕЯ04) логический О, механически удерживаемый на линии ЯЧЧ ~, проходит через два инвертора, образующие элемент с двумя устойчивыми состояниями, так что верхний инвертор отказывается от тщетных усилий по поддержанию на линии ЯЧЧ Е логической 1, а вместо нее выдает логический О.
Но теперь нет больше необходимости в замыкании выхода верхнего инвертора на землю: петля обратной связи в элементе с двумя устойчивыми состояниями удерживает логический 0 на линии ЯЧЧ Е даже в том случае, когда подвижный контакт отскакивает от нижнего неподвижного контакта. 10н отскакивает не очень далеко и не касается снова верхнего неподвижного контакта.) Достоинство этой схемы по сравнению с другими вариантами зашиты от дребезга заключается в малом расходе ресурса по числу микросхем годна треть ИС 74ЬЯ04), в отсутствии резисторов, подтягивающих входы вентилей к шине питания, и в возможности получения входного сигнала любой полярности (с высоким или низким активным уровнем). Если все же необходимо избежать замыкания выходов вентилей на землю даже на короткое время, то подобную схему можно собрать на Яй-защелке с резисторами, подтягивающими ее входы к шине питания, как показано на рис.
8.6. Рис. 8.6. Подавление дребезга при переключеииивходногосигналас помощью Я1З-защелки 8.2. Защелки и триггеры 779 КОГДА ЛИШНИЕ ДОСТОИНСТВА НИ К ЧЕМУ Котя схема, приведенная на рис. 8.5, весьма привлекательна, ее не следует применять при использовании быстродействующих КМОП-вентилей типа 74АОТ04, которые способны отдавать большой ток со стороны выхода при высоком уровне сигнала на нем. Замыкание таких выходов на землю на короткое время не приводит к повреждению микросхем, но в результате этого в шине питания и в земляной шине возникает импульс помехи, который может привести к нежелательному срабатыванию каких-то других ухюв в системе.
Схема защиты от дребезга на ннверторах функционирует вполне успешно, будучи собрана на более простых микросхемах типа НСТ и ЕЗ-ТТ1. '8.2.4. Шинный фиксатор уровня В разделе 3.7.3 н в параграфе 5.6 были рассмотрены схемы стремя состояниями и объединение выходов таких схем в шину с тремя состояниями. В любой момент времени не более чем одна из схем выдает сигнал на шину; иногда ни одна из схем не является источником сигнала, и тогда шина оказывается в «плавающем» состоянии Если к шине подключены входы быстродействующих КМОП-вентилей н шина оставлена в плавающем состоянии надолго (в случае схем с большим быстродействием- на время, превышающее один-два периода тактового сигнала), то могут происходить разные неприятности. В частности, из-за шумов, перекрестных помех и других эффектов на высокоимпедансной шине, пребывающей в плавающем состоянии, может возникнуть напряжение, близкое к порогу переключения КМОП- схем по входу, что, в свою очередь, приведет к протеканию чрезмерно больших токов по выходным цепям этих схем.
По этой причине желательно соединять шины резисторами с источником питания, чтобы при их переходе в плавающее состояние на них быстро устанавливался логический сигнал высокого уровня. Так обычно и поступают. Но резисторы, подтягивающие потенциал шины к напряжению питания, — не ~акое уж хорошее решение: они стоят денег и занимают ценное «жнзненное пространство» на печатной плате. В случае сверхбыстродействующих схем трудной задачей является выбор сопротивления этих резисторов. Если сопротивление слишком велико и шина переходит в третье состояние с низкого уровня сигнала, то изменение потенциала шины от низкого уровня до высокого происходит медленно из-за большой постоянной времени йС, и напряжение на подключенных к шине ~ходах слишком долго остается вблизи порога переключения.
Если сопротивление резистора, подтягиваю щего шину к источнику питания, слишком мало, то схемы, которым предстоит выдавать на шину сигнал низкого уровня, должны будут допускать втекание в них со стороны выхода слишком большого тока. Решение этой проблемы состоит в исключении резистора, подтягивающего шину к источнику питания, и замене его активным шинным фиксаторач уровня Фщ ЬоИег си сил), показанным на рис. 8.7. В этой схеме нет ничего нового: это — элемент с двумя устойчивыми состояниями с резистором л в одной из ветвей петли обратной связи. Вывод! НООТ данной схемы соединяется с сигнальной лини- 780 Глава 8. Практическая разработка схем последовательной логики ей шины с тремя состояниями, уровень которой эта схема должна булет удерживать.
Кода схема, выдававшая на шину сигнал нгпкого или высокого уровня, запирается и ее выход переходит в третье состояние, правый инвертор фиксатора уровня удерживает сигнальную линию в ее прежнем состоянии. При изменении сигнала, выдаваемого на линию, с низкого уровня на высокий или в обратном направлении схема, служащая источником этого сигнала, должна допускать вытекание или втекание со стороны ее выхода небольшого дополнительного тока, протекающего по резистору л, чтобы преодолеть действие фиксатора уровня. Этот дополнительный ток течет лишь короткое время, которое необходимо элементу с двумя устойчивы ми состояниями, чтобы переключиться из одного состояния в другое.
Рис. 8.7. Шинный фиксатор уровня !ГРООТ Сопротивление резистора л выбирается из соображений компромисса между малым током, затрачиваемым на преодоление действия фиксатора уровня (большое значение л), и хорошей помехоустойчивостью удержания шины в текущем состоянии (малое значение )г). Приведем типичный пример: в случае 3.3-вольтовых КМОП-схем семейства ЮС максимальное значение тока, который может быть затрачен на преодоление действия фиксатора уровня, равно 500 мкА; поэтому )г 3.3~0.0005 = 6.6 кОм.
Шинные фиксаторы уровня часто бывают встроены в такие ИС средней степени интеграции, как 8-разрядный шинный КМОП-буфер илн приемопередшчик. Для шинных фиксаторов уровня не требуется дополнительных выводов, и они занимают очень мало места на поверхности кристалла, так что их можно иметь, по существу, бесплатно. Нет никакой проблемы в том, чтобы к одной и той же линии были подключены несколько (и) фиксаторов уровня при условии, что схемы, служащие источниками сигналов, выдаваемых на шину, допускают протекание по их выходным цепям в течение нескольких наносекунд (при переключении) и-кратного тока, затрачиваемого на преодоление действия всех фиксаторов уровня. Заметьте, что в случае, когда к шине подключены ТТЛ-входы, применение шинных фиксаторов уровня, как правило, не рационально (см. задачу 8.25), 8.2.5.