Параллельно – параллельный четырехразрядный регистр на RS – триггерах
Схема предназначена для хранения двоичной информации в параллельном входе на выходах D0 … D3 и поступления на входа A, B, C и D. Запись и перезапись информации в регистре осуществляется с помощью управляемых сигналов «Запись» и «Сброс».
В момент включения схемы состояние выходов триггеров не определено. Кнопка «Запись» в нормальном состоянии подает на 2 входа D1, D2, D3, D4 уровень 0. Независимо оттого, что на 2 входах этих элементов на выходе 1. Кратковременно нажимается кнопка «Сброс», т.е. на R – входах кратковременно 0, S=1. Поэтому D0 … D3 равно 0. Когда нам необходимо в регистр записать входную информацию, кратковременно нажимается кнопка «Запись», при этом на 2 входах элемента D1, D2, D3, D4 подается уровень логической единицы, а это означает, что если, например, А=1, то на выходе 0. Этот ноль подается на S-вход D5, R=1 – в триггер запишется 1, т.е. А= D0. Если, например, А=0, «Запись» равна 1, на выходе элемента D1 – 1. Следовательно, триггер D5 сохранит предыдущее состояние (0), т.е. А= D0 .
D – триггер
Существенным недостатком RS – триггера является то, что момент изменения его состояния фактически нам не известен, т.е. его переключение зависит не от нас, а от некого текущего состояния на его входах. Этот недостаток преодолевается с помощью динамических триггеров. Используют 2 типа таких триггеров: D – триггер и JK – триггер.
D – триггер представляет собой устройство имеющее 4 входа и 2 выхода. Его изображают следующим образом:
Входа S и R (установка, сброс) являются входами стандартного RS – триггера, входящего (встроенного) в D – триггер. Эти входа имеют высший приоритет по сравнению с остальными входами триггера. Это означает, что если хотя бы на одном из этих двух входов присутствует уровень логического нуля, то в независимости от того, что в этот момент на других входах D и C, весь триггер работает по правилам обычного RS – триггера. Когда S=R=1 включается собственно D – триггер. D – информационный вход, C – тактирующий. Направление стрелки у С – входа указывает на то, что триггер тактируется (чувствует) передним фронтом тактового импульса. Передний фронт – изменение из низкого уровня в высокий, а задний фронт, наоборот, из высокого в низкий.
Правило работы D – триггера состоит в следующем (S=R=1),что информация (0 или1) присутствует на информационном входе D, записывается в триггер (на Q - выход) в момент появления переднего фронта импульса на тактирующий вход C.
Примеры.
1.)
2.)
Счетный триггер
Образуется из D – триггера, при непосредственном соединении - выхода с D – входом.
На схеме входа S и R некуда не подключены (висят в воздухе). По принятым соглашениям все входа логических элементов, которые никуда не подключены, имеют значения равные 1(S=R=1).
ГТИ – генератор тактовых импульсов – устройство, на выходе которого формируется напряжение прямоугольной формы, амплитуда этого напряжения соответствует уровню логической единицы, а период следования импульсов задается нужным.
Так как в момент включения схемы мы не можем сказать чему равно Q, то для простоты примем Q=0.
В начальный момент времени Q=0, следовательно, =1=D. Передний фронт тактового импульса от ГТИ (t=0) перепишет 1 с D – входа на Q – выход, следовательно, станет равным 0 и равным D. Состояние триггера, до прихода следующего переднего фронта тактового импульса, не изменится. Следующий передний фронт изменит состояние триггера на противоположное. И т.д. – процедура циклически повторяется. Заметим, что период следования импульсов на прямом выходе триггера в два раза больше периода следования импульсов от ГТИ.
Счетчики
Это устройство, которое широко применяется в различных цифровых системах, в том числе и в ЭВМ.
Счетчик – устройство, состояние выхода которого зависит от количества событий на его выходе. Часто состояние выхода равно количеству событий на входе. Различают следующие виды счетчиков:
· На сложение – когда состояние счетчика увеличивается на +1 с каждым новым событием.
· На вычитание - когда состояние счетчика уменьшается на -1 с каждым новым событием.
· Реверсивный счетчик – счетчик, направление счета которого можно изменить, при помощи управляемых сигналов.
Счетчик на сложение
На схеме представлен трехразрядный двоичный счетчик, собранный на трех счетных триггерах таким образом, что каждый следующий триггер тактируется от инверсного выхода предыдущего. Источником событий будем считать тактовые импульсы от ГТИ, а выходом - двоичный параллельный код с прямых выходов триггеров. Причем, младший значащий разряд слева - Q0, а старший справа - Q2.
До начала эксперимента (t=0), кнопка «Сброс» нажата, т.е. на все R – входа подается низкий уровень напряжения Земли. На всех S – входах в это время 1 и по правилам работы RS – триггера (Q0=Q1=Q2=0) следует, что не все - выхода равны 1, следовательно, D – входа равны 1.
N | Q2 | Q1 | Q0 |
В момент времени t0 кнопку «Сброс» отпускаем, т.е. S=R=1, включаются D-триггера. Передний фронт первого тактового импульса, поступающего на С – вход первого (левого) триггера переписывает 1 с D – входа на Q0 – выход. На уровень изменится из 1 в 0 – это задний фронт и С – вход второго триггера его не ощущает, поэтому 2 и 3 триггера своего состояния не изменят. В результате поступления первого тактового импульса имеем: Q0=1, Q1=0, Q2=0. Второй тактовый импульс перепишет 0 с D – входа на выход Q0, изменит свое состояние из 0 в 1 – это передний фронт, который подается на С – вход второго триггера, поэтому 1 с D – входа второго триггера перепишется на Q1 – выход, изменит свое состояние из 1 в 0 – задний фронт, поэтому третий триггер своего состояния не изменит. В результате имеем, Q0=0, Q1=1, Q2=0. Нетрудно видеть, что двоичный счетный код на выходе счетчика точно равен количеству (N) тактовых импульсов от ГТИ на входе счетчика.
Длина счетчика – величина, которая указывает на максимальное число, до которого может считать счетчик и определяется количеством счетных триггеров в счетчике. В нашем случае длина счетчика равна 23=8 (2N).
Счетчик на вычитание
Строится так же, как и счетчик на сложение с той лишь разницей, что каждый следующий триггер тактируется не от инверсного выхода предыдущего, а от прямого выхода.
N | Q2 | Q1 | Q0 |
Реверсивный счетчик
Это такой счетчик, направление счета которого может быть изменено под действием управляющих сигналов. Заметим, что счетчик на сложение отличается от счетчика на вычитание тем, что каждый следующий триггер тактирует не от прямого выхода предыдущего, а от инверсного выхода предыдущего. Т.е. схема реверсивного счетчика должна уметь коммутировать (переключать) тактирующий вход следующего триггера к прямому или инверсному выходам предыдущего.
Схема ключа «Управление» состоит из одного инвертора, 2 элементов 2 – И и одного элемента 2 – ИЛИ. При положении ключа «Управление» нормально замкнутым контакт +5В. На 2 вход верхнего элемента 2 – И поступает 1, а на второй вход нижнего элемента 2 – И через инвертор подается 0. В соответствии с таблицей истинности для элемента 2 – И на выходе нижнего элемента, в независимости от того чему равно «в», будет 0, выход верхнего элемента 2 – И будет равен «а». Докажем это. Если «а»=0, то , т.е. «а». Если «а»=1,то , т.е. «а». На выходе элемента 2 – ИЛИ будет 0 + «а», т.е. «С» = «а». Если ключ «Управление» переключить, то на 2 верхнем входе элемента 2 - И будет 0 и на выходе его будет 0. На втором входе нижнего элемента 2 – И через инвертор подается 1, следовательно, выход этого элемента будет равен «в». 0 + «в» на элементе 2 – ИЛИ на выходе даст «в» = «С». И в этом случае на С – вход следующего триггера подаются тактирующие импульсы от инверсного выхода предыдущего триггера, счетчик будет работать на сложение.
В качестве коммутирующего элемента использовали элемент 2 – 2И – ИЛИ.
Счетчик заданной длины
Часто бывает необходимо, чтобы счетчик считал не только до числа 2N, где N – количество счетных триггеров в счетчике, а мог бы считать до любого меньшего числа, после чего остановиться или начать счет с нуля.
Рассмотрим, например, счетчик, который считает до 12, после чего сбрасывается и начинает счет заново.
Толстой линией на схеме изображена так называемая ШИНА. Такой способ используется в тех случаях, когда на схеме много соединений, которые если показать сильно затруднят чтение схемы. Шина представляет собой условное обозначение жгута проводников (изолированные друг от друга), каждый из которых присвоен номер на входе и такой же на выходе.
RS – триггер в конце нужен для того, чтобы 4 D – триггера работали одинаково, т.к. они не совершенны и сбрасывают за разное время.
Схема управления этим счетчиком состоит из элемента 4 – И – НЕ и RS – триггера. Входа элемента 4 – И – НЕ подключены к соответствующим прямым или инверсным выходам триггеров счетчика. Т.к. схема 4 – И – НЕ должна срабатывать только на заданной кодовой комбинации (например, 1100), то правила подключения его входов к счетчику следующие: если данный разряд кодовой комбинации =1, то этот вход элемента 4 – И – НЕ подключается к прямому выходу соответствующего триггера; если разряд в числе =0, то соответствующий вход элемента 4 – И – НЕ подключается к инверсному выходу соответствующего триггера.
В примере 2 младших разряда равны 0, поэтому 1-й и 2-й входа элемента 4 – И – НЕ подключены к инверсным выходам 2 триггеров счетчика.
Когда счетчик досчитает до заданного числа (на прямых выходах триггеров считывается заданная кодовая комбинация) за счет правильного подключения 4 – И – НЕ на его входах будет четыре 1, следовательно, на выходе 0. Этот ноль подается на S – вход RS – триггера. На R – входе в это время от ГТИ - 1. Следовательно, на инверсном выходе RS – триггера - 0. Этот 0 подается на все R – входа триггеров счетчика. Если хотя бы один из триггеров изменит свое состояние на противоположное, то на выходах элемента 4 – И – НЕ уже не будет 4-х единиц. Следовательно, на выходе будет 1, т.е. в этот момент времени у RS – триггера S=1 и R=1 по правилам его работы он сохраняет предыдущее состояние. Через некоторое время от ГТИ на R – вход RS – триггера поступит 0 (S=1) и RS – триггер опрокинется, т.е. на инверсном выходе 1, следовательно, на всех R – входах триггеров счетчика 1 и счетчик начинает считать заново.
Линейные дешифраторы
Это устройство, имеющее избирательно реагировать на заданные входные ситуации (события).
Для цифровых систем линейная дешифрация означает, что некой заданной кодовой комбинации на входе будет соответствовать определенная реакция на выходе.
Линейный дешифратор на 10
Выход каждого из элемента 4 – И является соответствующим выходом дешифратора. Например, 1-ый элемент D1 декодирует кодовую (входную) комбинацию 4 нуля, т.е. на его выходе должна быть 1, а на всех остальных выходах дешифратора - 0. Для того чтобы на выходе D1 был 0 необходимо на его входах иметь 4 единицы, поэтому его входа подключены к соответствующим выходам инверторов. Если соответствующий разряд на кодовом входе равен 0, то на некоторый элемент 4 – И мы его подаем через инвертор. Если разряд равен 1, то он подключается к соответствующему элементу непосредственно.
На схемах электрических принципиальных дешифраторы изображают так: