Логические элементы оперируют сигналами двух типов: "высокий логический уровень" (1) и "низкий логический уровень" (0), которые характеризуются различным уровнем напряжения: полное напряжение питания принимается в качестве уровня "логической единицы", а нулевое напряжение - в качестве уровня "логического нуля".
В идеальном случае все сигналы логических элементов существовали бы в виде этих двух предельных уровней напряжения, и никогда бы от них не отклонялись (например, ниже полного напряжения для "высокого уровня", или выше нуля для "низкого уровня".) Однако в реальности уровни напряжения цифровых сигналов практически никогда не достигают этих идеальных величин.

Вследствие наличия паразитных падений напряжения в схемах на транзисторах, наводок, длины линии передачи сигнала и т.д.. Поэтому для логических схем интерпретируют сигналы как логическую единицу или логический нуль, даже в тех случаях, когда напряжение сигналов лежит в диапазоне между полным напряжением питания и нулём, то есть номинально не соответствует ни тому ни другом показателю.

Номинальное напряжение питания для логических радиоэлементов (микросхем) и номинальное значение логического 0 и логической 1

Элементы ТТЛ работают при номинальном напряжении питания 5 вольт, +/- 0,25 вольт. В идеале, сигнал высокого логического уровня должен быть равен ровно 5,00 В, а сигнал низкого уровня - ровно 0,00 вольт. Однако в реальных элементах ТТЛ не могут быть обеспечены подобные точные уровни напряжения, поэтому они могут принимать сигналы высокого и низкого уровней даже при значительном отклонении напряжения от идеальных величин. "Приемлемые" напряжения входного сигнала лежат в диапазоне от 0 до 0,8 вольт для низкого логического уровня, и от 2 до 5 вольт для высокого логического уровня. "Приемлемые" напряжения выходного сигнала (уровни напряжения, гарантируемые производителем элемента в указанных вариантах нагрузки) лежат в диапазоне от 0 до 0,5 вольт для низкого логического уровня, и от 2,7 до 5 вольт для высокого логического уровня.


 
Если бы на вход элемента ТТЛ поступил сигнал напряжения в диапазоне от 0,8 до 2 вольт, то мы не получили бы гарантированной реакции схемы. Подобный сигнал будет рассматриваться как неопределённый, и в этом случае ни один производитель не даст гарантии того, к какому логическому уровню отнесёт схема подобный сигнал.
Как вы видите, диапазон допусков по уровням выходного сигнала меньше, чем в случае для входного сигнала. Это необходимо для обеспечения того, что цифровой сигнал, поступающий с выхода одного элемента логики на вход другого элемента, воспринимался бы таковым же, но с учетом условий потери и воздействия на него. Разница допусков между входным и выходным сигналами называется запасом схемы по помехоустойчивости. Для ТТЛ-схем, запас помехоустойчивости для низкого логического уровня представляет разность между 0,8 В и 0,5 В (т.е. 0,3 В), в то время как запас помехоустойчивости для высокого уровня равен 0,7 В (2,7 В - 2,0 В). Проще говоря, запас помехоустойчивости есть некий запас на паразитное или шумовое напряжение, которое может быть наложено на исходный сигнал, прежде чем принимающая схема может неверно его проинтерпретировать.


 
Спецификации входных и выходных сигналов схем КМОП логических элементов совершенно отличны от уровней напряжения, используемых для ТТЛ-элементов. Для КМОП-элементов, работающих при напряжении питания 5 вольт, приемлемые напряжения входного сигнала лежат в диапазоне от 0 до 1,5 вольт для низкого логического уровня, и от 3,5 до 5 вольт для высокого логического уровня. "Приемлемые" напряжения выходного сигнала (уровни напряжения, гарантируемые производителем элемента при указанном варианте нагрузки) лежат в диапазоне от 0 до 0,05 вольт для низкого логического уровня, и от 4,95 до 5 вольт для высокого логического уровня.


 
Представленные значения дают понять, что запас помехоустойчивости КМОП логических элементов гораздо больше аналогичного показателя ТТЛ-элементов: 1,45 вольт как для логического нуля, так и для логической единицы, против максимального запаса в 0,7 В в случае ТТЛ. Другими словами, КМОП-схемы могут выдержать более чем вдвое высокий наложенный шум на входе без ошибок интерпретации сигнала как логического нуля или единицы.
Запас помехоустойчивости КМОП логических схем становится ещё больше при более высоких рабочих напряжениях. В отличие от элементов ТТЛ, напряжение питания которых не превышает 5 вольт, напряжение питания КМОП-схем может достигать 15 (а в некоторых случаях и 18) вольт. Ниже показаны приемлемые уровни логических нуля и единицы, для выхода и входа КМОП-ИС, работающих при напряжении питания 10 и 15 вольт соответственно:

 Запас помехоустойчивости может быть выше того, что показано на предыдущем рисунке. На рисунке показан худший из возможных вариантов поведения сигнала на основании спецификаций производителя. На практике логическая схема может выдержать сигналы высокого логического уровня со значительно меньшим напряжением и сигналы низкого логического уровня с гораздо большим напряжением чем указано.
И наоборот, исключительно малые показанные запасы помехоустойчивости - гарантирующие выходное состояние сигналов высокого и низкого логических уровней с точностью до 0,05 вольта напряжения питания - практически реальны. Такие "добротные" уровни выходного напряжения будут доступны только при минимальной нагрузке. При значительном втекающем или вытекающем токе схемы выходное напряжение не будет поддерживаться на этих оптимальных уровнях, что обусловлено наличием внутреннего сопротивления каналов выходных МОП-транзисторов логических элементов.

Помехоустойчивость при единичных (разовых) скачках напряжения, появления помехи (наводки)

В пределах "неопределённого" диапазона для любого входа логического элемента, будет иметься точка разделения актуального сигнала низкого уровня от диапазона действительного входного сигнала высокого уровня. То есть, где-то между наименьшим напряжением сигнала высокого логического уровня и наибольшим напряжением сигнала низкого логического уровня гарантированного производителем, существует порог напряжения, при котором логическая схема будет менять интерпретацию сигнала с высокого на низкий и наоборот. В случае большей части логических схем, это напряжение соответствует одной определённой точке:

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


 
Подобная проблема характерна также для аналоговых ОУ-компараторов напряжения. В случае одиночной пороговой точки смены логического уровня наличие значительного шума может привести к неверной интерпретации логического уровня на выходе.


 
Эту проблему можно решить путём введения в цепь усилителя положительной обратной связи. В случае операционного усилителя необходимо соединить выход с неинвертирующим входом через резистор. Схемы подобного типа называются триггерами Шмитта. Триггеры Шмитта идентифицируют логический уровень сигнала согласно двум пороговым уровням: при нарастающем напряжении (VT+), и при падающем напряжении (VT-):


 
На схемах триггеры Шмитта изображаются с символом «гистерезиса». Гистерезис, вызванный положительной обратной связью в схеме логического элемента, придаёт схеме дополнительную помехоустойчивость. Триггеры Шмитта часто используются в схемах с высокой вероятностью шума на входе, а также в тех случаях когда ошибочно интерпретированный сигнал на выходе приведёт к некорректной работе системы в целом.
Различные требования по уровням напряжения ТТЛ- и КМОП-элементов создают определённые проблемы при использовании в одной схеме элементов двух типов. Хотя работа КМОП логических элементов может осуществляться при том же напряжении питания 5,00 В, которое необходимо для элементов ТТЛ, выходные уровни напряжения ТТЛ логики несовместимы с входными требованиями по напряжению для КМОП-схем.
Возьмём к примеру ТТЛ-элемент НЕ-И, сигнал с выхода которого подаётся на вход КМОП-инвертора. Питание обоих элементов составляет 5,00 В (Vcc). Если с выхода элемента ТТЛ приходит сигнал логического нуля (т.е. между 0 и 0,5 В), то он будет верно интерпретирован на входе КМОП-схемы как сигнал низкого логического уровня (т.е. сигнал между 0 и 1,5 В):


 
Однако, если с выхода элемента ТТЛ приходит сигнал логической единицы (т.е. между 5 и 2,7 В), то он может быть неверно интерпретирован на входе КМОП-схемы как сигнал высокого логического уровня (т.е. ожидается сигнал между 5 и 3,5 В):


 
Такое несоответствие может привести к тому, что "правильный" сигнал высокого уровня на выходе ТТЛ- элемента (правильный с точки зрения стандартов ТТЛ) будет лежат в "неопределённом" диапазоне входа КМОП-схемы, и быть неверно воспринят как сигнал логического нуля принимающим элементом. Простым решением этой проблемы может стать повышение сигнала логической единицы элемента ТТЛ с помощью нагрузочного повышающего резистора:


 
Однако потребуется гораздо более серьёзная переделка схемы, если питание КМОП-схемы выше 5 вольт:


 
Проблемы не возникнет в случае логического нуля, однако всё обстоит совершенно иначе в случае сигнала высокого логического уровня с выхода элемента ТТЛ. Диапазон выходного напряжения 2,7-5 В с выхода элемента ТТЛ совершенно не соответствует приемлемому диапазону 7-10 В КМОП логической схемы. Если мы используем ТТЛ-схемы с открытым коллектором, то нагрузочный резистор, включённый в шину питания Vdd 10 вольт, поднимет сигнал высокого логического уровня до полного напряжения питания КМОП логической схемы. Поскольку в схеме с открытым коллектором в наличии только втекающий ток, напряжение логической единицы полностью определяется тем напряжением питания, к которому подключён повышающий резистор, что помогает решить проблему несоответствия уровней напряжения.


 
Благодаря прекрасным характеристикам выходного напряжения КМОП схем, проблем при подключения ТТЛ элемента к выходу КМОП схемы обычно не возникает. Единственной серьёзной проблемой может стать токовая нагрузка, поскольку КМОП-схема должна обеспечивать втекающий ток на каждый вход элемента ТТЛ в случае логического нуля.
Если КМОП-схема питается от источника напряжения выше 5 вольт (Vcc), то возникнет проблема. Напряжение логической единицы КМОП-схемы выше 5 вольт не будет находиться в диапазоне допустимых входные параметров элемента ТТЛ. Решением этой проблемы может стать инвертор с "открытым коллектором" на дискретном NPN-транзисторе, используемом для соединения двух логических схем:


 
Повышающий резистор Rpullup используется опционально, поскольку входы элементов ТТЛ принимают высокий логический уровень, когда находятся в плавающем состоянии, что и произойдёт, когда выход КМОП-схемы будет низким, а транзистор будет находиться в состоянии отсечки. Конечно, важным последствием такого решения является логическая инверсия, создаваемая транзистором: когда на выходе КМОП-схемы будет сигнал логического нуля, элемент ТТЛ будет "видеть" логическую единицу и наоборот. Однако, если принимать эту инверсию во внимание, то корректная работа схемы не будет нарушена.

Комментарии  

+1 #3 Евгений 15.03.2019 06:25
Просто и понятно!
Спавсибо.
1111111111111111111111111111111111
+3 #2 Николай 12.01.2019 10:53
Спасибо! Годная статья! Очень наглядно про уровни. В старых учебниках про ТТЛ серию (Шило и иже с ними) было много абстракции и приходилось додумывать самому.
+1 #1 павел 27.12.2018 19:56
толково грамотно доходчиво! 111111111111111 111111111111111 111111111111111 111111111111111 111111111111111 111111111111111 111111111