Рис. 3.23. Синхронная D-защелка
Такая схема требует 11 транзисторов. Более сложные схемы (именно они обычно используются на практике) могут хранить 1 бит всего на 6 транзисторах.
Триггеры
Многие схемы при необходимости выбирают значение на определенной линии в заданный момент времени и запоминают его. В такой схеме, которая называется триггером (flip-flop), смена состояния происходит не тогда, когда синхронизи рующий сигнал равен 1, а при переходе синхронизирующего сигнала с 0 на 1 (фронт) или с 1 на 0 (спад). Следовательно, длина синхронизирующего импульса не имеет значения, поскольку переходы происходят быстро.
Подчеркнем еще раз различие между триггером и защелкой. Триггер запускается перепадом сигнала, а защелка запускается уровнем сигнала. Обратите внимание, что в литературе эти термины часто путают. Многие авторы используют термин «триггер», когда речь идет о защелке, и наоборот1.
Существуют несколько подходов к разработке триггеров. Например, если бы существовал способ генерирования очень короткого импульса на фронте синхронизирующего сигнала, этот импульс можно было бы подавать в Б-защелку. В действительности такой способ существует. Соответствующая схема показана на рис. 3.24, а.
Рис. 3.24. Генератор импульса (а); временная диаграмма для четырех точек на схеме (б)
На первый взгляд может показаться, что выход вентиля И всегда будет нулевым, поскольку функция И от любого сигнала с его инверсией дает 0, но на самом деле ситуация несколько сложнее. При прохождении сигнала через инвертор происходит небольшая, но все-таки не нулевая задержка. Данная схема работает именно благодаря этой задержке. Предположим, мы измеряем напряжение в четырех точках: я, Ь, с и (1. Входной сигнал в точке а представляет собой длинный синхронизирующий импульс (нижний график на рис. 3.24, б). Сигнал в точке Ъ показан над ним. Отметим, что этот сигнал инвертирован и подается
В отечественной литературе термин «защелка» (latch) вообще не используется, говорят о триггерах. Однако при этом вводится понятие Т-триггера, который и является «настоящим» триггером. — Примеч. научн. ред.
с некоторой задержкой. Время задержки зависит от типа инвертора и обычно составляет несколько наносекунд.
Сигнал в точке с тоже подается с задержкой, но эта задержка обусловлена только временем прохождения сигнала (со скоростью света). Если физическое расстояние между точками а и с составляет, например, 20 микрон, тогда задержка на распространение сигнала равна 0,0001 не, что, конечно, незначительно по сравнению с временем прохождения сигнала через инвертор. Таким образом, сигнал в точке с практически идентичен сигналу в точке а.
Когда входные сигналы Ь и с подвергаются операции И, в результате получается короткий импульс, длина которого (А) равна вентильной задержке инвертора (обычно 5 не и ниже). Выходной сигнал вентиля И — данный импульс, сдвинутый из-за задержки вентиля И (верхний график на рис. 3.24, б). Этот временной сдвиг означает только то, что Б-защелка активизируется с определенной задержкой после фронта синхронизирующего импульса. Он никак не влияет на длину импульса. В памяти со временем цикла в 50 не импульс в 5 не (который сообщает, когда нужно выбирать линию V) достаточно короткий, и в этом случае полная схема может быть такой, как на рис. 3.25. Следует упомянуть, что такая схема триггера проста для понимания, но на практике обычно используются более сложные триггеры.