А сейчас давайте рассмотрим действие входных сигналов на состояние защелки. Предположим, что 5 принимает значение 1, в то время как (2=0. Тогда входные сигналы верхнего вентиля равны 1 и 0, что ведет к выходному сигналу 2=0. Это изменение делает оба входа в нижний вентиль равными 0, и, следовательно, выходной сигнал равняется 1. Таким образом, установка 5 в значение 1 переключает состояние с 0 на 1. Установка Я в значение 1, когда защелка находится в состоянии 0, не вызывает изменений, поскольку выход нижнего вентиля НЕ-ИЛИ равен 0 как для входов 10, так и для входов И.
Использовав подобную аргументацию, легко увидеть, что установка 5 в значение 1 при состоянии защелки 1 (то есть при (1= 1) не вызывает изменений, но установка Я в значение 1 приводит к изменению состояния защелки. Таким образом, если 5 принимает значение 1, то (} равняется 1 независимо от предыдущего состояния защелки. Сходным образом переход Я в значение 1 вызывает () = 0. Схема «запоминает», какой сигнал был последним: 5 или К Используя это свойство, мы можем строить компьютерную память.
Синхронные вН-защелки
Часто удобно, чтобы защелка меняла состояние только в определенные моменты. Чтобы достичь этой цели, немного изменим основную схему и получим синхронную вИ-защелку (рис 3.22).
Рис. 3.22. Синхронная БЯ-защелка
Эта схема имеет дополнительный синхронизирующий вход, который по большей части равен 0. Если этот вход равен 0, то оба выхода вентилей И равны 0, и независимо от значений 5 и защелка не меняет свое состояние. Когда значе ние синхронизирующего входа равно 1, действие вентилей И прекращается, и состояние защелки становится зависимым от 5 и Для обозначения факта появления единицы на синхронизирующем входе часто используются термины включение и стробирование.
До сих пор мы не выясняли, что происходит, когда 5 = = 1. И по понятным причинам: когда и и 5 в конце концов возвращаются к 0, схема становится недетерминированной. Единственное приемлемое состояние при 5 = Я = 1 — это (2 = (2 = 0, но как только оба входа возвращаются к 0, защелка должна перейти в одно из двух устойчивых состояний. Если один из входов принимает значение О раньше, чем другой, оставшийся в состоянии 1 «побеждает», потому что именно единичный вход управляет состоянием защелки. Если оба входа переходят к О одновременно (что очень маловероятно), защелка выбирает одно из своих устойчивых состояний произвольным образом.
Синхронные 0-защелки
Чтобы разрешить ситуацию с неопределенностью 811-защелки (неопределенность возникает в случае, если 5 = = 1), нужно не дать ей возникнуть. На рис. 3.23 изображена схема защелки только с одним входом Б. Так как входной сигнал в нижний вентиль И всегда является обратным кодом входного сигнала в верхний вентиль И, ситуация, когда оба входа равны 1, никогда не возникает. Когда И = 1 и синхронизирующий вход равен 1, защелка переходит в состояние (2=1. Когда Б = О и синхронизирующий вход равен 1, защелка переходит в состояние (2=0. Другими словами, когда синхронизирующий вход равен 1, текущее значение Б отбирается и сохраняется в защелке. Такая схема, которая называется синхронной Э-защелкой, представляет собой память объемом 1 бит. Сохраненное значение всегда доступно на выходе (?. Чтобы загрузить в память текущее значение Д нужно пустить положительный импульс по линии синхронизирующего сигнала.