Синхронные SR-защелки .
Часто удобно, чтобы защелка меняла состояние только в определенные моменты. Чтобы обеспечить это используются синхронные SR-защелки:
Эта схема имеет дополнительный синхронизирующий вход. Если этот вход равен 0, то оба выхода вентилей И равны 0, не зависимо от значения S и R и защелка не меняет своего состояния.
Когда значение синхронизирующего входа равно 1, состояние защелки становится зависимым от S и R. Для обозначения факта появления единицы на синхронизирующем входе часто используются термины включение и стробирование.
В случае когда S = R = 1, . И когда и R, и S в конце концов возвращаются к 0, схема становится неопределенной. Если один из входов принимает значение 0 раньше, чем другой, оставшийся в состоянии 1 «побеждает», потому что именно единичный вход управляет состоянием защелки.
Если оба входа переходят к 0 одновременно (что очень маловероятно), защелка выбирает одно из своих устойчивых состояний произвольным образом.
Синхронные D-защелки.
Чтобы разрешить такую ситуацию с неопределенностью SR-защелки, нужно не дать возникнуть такой ситуации. На рисунке изображена схема защелки только с одним входом D.
![]() |
Так как входной сигнал в нижний вентиль И всегда является обратным кодом входного сигнала в верхний вентиль И, ситуация, когда оба входа равны 1 или 0, никогда не возникает. При наличии стробирующего импульса (то есть равного 1):
Когда D = 1, защелка переходит в состояние Q = 1.
Когда D = 0, защелка переходит в состояние Q = 0.
Другими словами, когда синхронизирующий вход равен 1, текущее значение D отбирается и сохраняется в защелке.
Такая схема, которая называется синхронной D-защелкой, представляет собой память объемом 1 бит. Сохраненное значение всегда доступно на выходе Q. Чтобы загрузить в память текущее значение D, нужно пустить положительный импульс по линии синхронизирующего сигнала.
Такая схема требует 11 транзисторов. Более сложные схемы (именно они обычно используются на практике) могут хранить 1 бит всего на 6 транзисторах.
Триггеры.
Многие схемы памяти при необходимости выбирают значение на определенной линии в заданный момент времени и запоминают его.
В такой схеме, которая называется триггером (flip-flop) смена состояния происходит не тогда, когда синхронизирующий сигнал равен 1, при переходе синхронизирующего сигнала с 0 на 1 (по фронту) или с 1 на 0 (по спаду).
Следовательно, длина синхронизирующего импульса не имеет значения, поскольку переходы происходят быстро.
Различие между триггером и защелкой заключается в том, что триггер запус кается перепадом сигнала, а защелка запускается уровнем сигнала.
В литературе эти термины часто путают. Многие авторы используют термин «триггера, когда речь идет о защелке, и наоборот. В отечественной литературе термин "защелка" ( latch) вообще не используется, говорят о триггерах. Однако при этом вводится понятие Т- триггера, который и является «настоящим» триггером
Существуют несколько подходов к разработке триггеров. Например, путем генерирования очень короткого импульса на фронте синхронизирующего сигнала, который подается в D-защелку,
![]() |
При стробирущем сигнале равном 0, комбинация сигналов на входе 3 – го вентиля НЕ-И - 10, а на его выходе значение сигнала равное 0.
При появления положительного импульса на стробирующем входе (строб =1), за счет небольшой (не более 5 нс) задержки прохождения сигнала через инвертор 2, комбинация сигналов на входе 3 – го вентиля НЕ-И - 11, а на его выходе устанавливается значение сигнала равное 1.
После срабатывания инвертора 2, комбинация сигналов на входе 3 – го вентиля НЕ-И - 01, а на его выходе опять устанавливается значение сигнала равное 0. При этом длительность синхронизирующего сигнала ни как не влияет на работу триггера.
Такая схема триггера проста для понимания, но на практике обычно используются более сложные триггеры.
Стандартные обозначения защелок и триггеров показаны на рис. 3.26.
![]() |
На рис. 3.26 а изображена защелка, состояние которой загружается тогда, когда синхронизирующий сигнал СК (от слова clock) равен 1, в противоположность защелке, изображенной на рис. 3.26, б, у которой синхронизирующий сигнал обычно равен 1, но переходит на 0, чтобы загрузить состояние из линии D.
На рис. 3.26, в и г изображены триггеры. О том, что это триггеры, а не защелки, говорит уголок на синхронизирующем входе.
Триггер на рис, 3.26, в изменяет состояние на фронте синхронизирующего импульса (переход от 0 к 1)т тогда как триггер на рис, 3.26, г изменяет состояние на спаде (переход от 0 к 1).
Многие (хотя не все) защелки и триггеры также имеют выход , а у некоторых есть два дополнительных входа: Set (установка) или Preset (предварительная установка) и Reset (сброс) или Clear (очистка). Первый вход (Set или Preset) устанавливает Q = 1, а второй (Reset или Clear) устанавливает Q=0.
Регистры
Регистры памяти - простейший вид регистров. Их назначение хранить двоичную информацию небольшого объема в течение короткого промежутка времени.
Эти регистры представляют собой набор синхронных триггеров, каждый из которых хранит один разряд двоичного числа.
Ввод (запись, загрузка) и вывод (считывание) информации производится одновременно на всех разрядах параллельным кодом.
Запись обеспечивается тактовым импульсом. С приходом очередного тактового импульса происходит обновление записанной информации.
Сигналы на выходах триггеров характеризуют выходную информацию. Считывание может производиться в прямом или в обратном коде (в последнем случае - с инверсных выходов ).
Регистры памяти (хранения) представляют собой, по существу, наборы триггеров с независимыми информационными входами и (обычно) общим тактовым входом.
Схема «восьми битного» регистра, показана на рисунке. Здесь все синхронизирующие линии связаны вместе и управляются выводом 11. Инвертирующие входы синхронизации аннулируются инвертором, связанным с выводом 11, поэтому триггеры запускаются при переходе от 0 к 1. Все восемь сигналов очистки CLR тоже объединены, поэтому, когда вывод 1 переходит в состояние 0, все триггеры переходят в состояние 0.
Вывод 11 инвертируется на входе, а затем инвертируется снова при каждом сигнале СК так как входной сигнал не имеет достаточной мощности. При этом входной инвертор используется в качестве усилителя, чтобы запустить все восемь триггеров
![]() | ![]() | ||
Две такие микросхемы могут работать параллельно, образуя 16-разрядный регистр. Для этого нужно соединить соответствующие выводы 1 и 11 обеих микросхем.