Триггеры. Триггер - это схема с двумя состояниями, каждое из которых при определенных условиях на входах поддерживается постоянным (т.е. стабильным). Каждому из этих состояний ставится в соответствие логическое значение, которое «хранит» триггер (если на выходе триггера высокий уровень напряжения - «1» и «О» - в противном случае). Таким образом, в цифровых устройствах с памятью для представления значений каждой переменной, которую нужно хранить для использования в настоящем или в будущем, следует использовать отдельный триггер. Совокупное состояние запоминающего устройства, реализованного на триггерах, представляет собой просто комбинацию состояний этих триггеров.
Вообще говоря, у триггера должна быть по крайней мере одна выходная линия, представляющая логическое значение, соответствующее состоянию триггера. Когда на выходной линии логическая 1, говорят, что триггер установлен, в противном случае говорят, что триггер сброшен. Триггер имеет несколько входных линий, сигналы на которых (вместе с текущим состоянием триггера) определяют следующее состояние триггера. От функций входных линий зависит тип триггера.
Простейшим триггером является RS-триггер. RS-триггер имеет два входа и два выхода. Входы и выходы триггера имеют свои обозначения. Один из входов триггера называется установочным входом и обозначается буквой S (от английского set - установить), а другой -входом сброса и обозначается буквой R (от reset - сбросить). Триггер (рис. 6.6) имеет два симметричных выхода. На одном выходе (условно называемом прямым выходом) сигнал представляется без отрицания (выход Q), а на другом - с отрицанием ( Q - инверсный выход).
По способу подачи переключающих сигналов (в зависимости от комбинации входных сигналов) триггеры делятся на RS-, MS-, D-, JK-, Т-триггеры.
Рис. 6.6. Графическое обозначение RS-триггера
Триггеры бывают переключающиеся уровнем и фронтом тактирующего сигнала (импульса). Несмотря на большую разновидность триггеров, практически все триггеры строятся на базе RS-триггеров.
RS-триггер. Важным методом, используемым для описания функционирования RS-триггера, является метод таблиц состояний (таблиц переходов). Таблица состояний (рис. 6.7, а) RS-триггера в сокращенной форме (эту таблицу называют также управляющей таб
лицей) содержит два входных аргумента (сигналы R и S) и один вьь ходной сигнал Q (функция). Хотя и триггеры имеют два выхода один прямой Q, а другой - инверсный Q, в описании триггера и в таблице состояний указывают лишь состояние прямого выхода Q.
Из таблицы состояний триггера видно, что при подаче на вход R уровня лог. «1» триггер принимает состояние логического «О», а при подаче управляющего сигнала на вход S - состояние «1». Следует отметить также, что если до подачи управляющего сигнала, напри-мер, на вход R, триггер находился в состоянии логического «О», его состояние не изменится и после подачи сигнала R. Если на обоих входах триггера имеются уровни логического «О» - это состояние соответствует режиму хранения и триггер сохраняет предыдущее со-стояние. В таблице это состояние обозначено условно Q0, при подаче на входы R и S одновременно уровня «1» триггер будет находиться б неопределенном состоянии, поэтому такое сочетание сигналов R и S называется запрещенной комбинацией управляющих сигналов и в таблице состояний обозначается буквой а.
Сокращенная таблица состояний триггера отражает лишь динамику изменения состояния триггера и не учитывает свойство триггера запоминать единицу информации. Полная таблица состояний триггера должна учитывать влияние (на процесс управления) значения предыдущего состояния триггера Q0, причем Q0 представляется как входная переменная.
Особенность RS-триггера заключается в том, что при подаче одновременно на входы R и S сигнала, соответствующего логической 1, состояние триггера становится неопределенным: на обоих выходах Q и Q установится уровень «1», а после снятия с входов управляющих сигналов, в силу случайных причин, триггер может установиться в состояние «О» либо «1». Очевидно, что для нормальной работы триггера необходимо исключить указанное сочетание входных сигналов, приводящее к неопределенному состоянию, что можно осуществить, предусмотрев выполнения запрещающего условия R ? S=l.
Схема RS-триггера, реализованного в базисе И-НЕ, приведена на рис. 6.7, б. Из анализа схемы рис. 6.7, б, очевидно, что простой RS-триггер можно сконструировать, соединив «крест-накрест» два элемента И-НЕ.
Входные линии триггера обозначены, как S и R , поскольку
триггер устанавливается при S =0 и сбрасывается при R =0. Такой триггер иногда называют RS-триггер с инверсными входами или конъюнктивной бистабильной ячейкой.
Схема RS-триггера, реализованная в базисе И-НЕ в соответствии с таблицей состояний, приведена на рис. 6.7, в.
Схема RS-триггера, выполненная на элементах базиса ИЛИ-НЕ, приведена на рис. 6.8, а. Временные диаграммы, поясняющие работу RS-триггера, приведены на рис.
Из временных диаграмм (рис. 6.8, б) следует, что рассмотренные выше RS-триггеры опрокидываются, т.е. управляются сигналами R и S в любой момент времени. В тех случаях, когда длительности управляющих сигналов не синхронизированы (не согласованы), триггер может находиться в неопределенном состоянии (интервалы времени /4, ts), и поэтому такие триггеры называют асинхронными. Триггер, построенный на базе элементов ИЛИ-НЕ, называют также дизъюнктивной бистабильной ячейкой. Бистабильные ячейки, помимо самостоятельного применения, входят в качестве составного узла в триггеры других типов.
Синхронный RS-триггер. Синхронные триггеры снабжаются д0. полнительным входом, по которому поступает синхронизирующий (тактирующий) сигнал. При этом изменение состояния триггера про. исходит (при наличии управляющего сигнала) только в те моменты времени, когда на специальный синхровход триггера поступает тактирующий импульс (рис 6.9, я). Синхронный RS-триггер строится в соответствии с рис. 6.9, б, а его условное изображение на принципиальных и функциональных схемах приведено на рис. 6.9, в. Синхронизирующий вход обозначается буквой С.
Временные диаграммы, поясняющие работу синхронного триггера (а), схема реализации (б) и условное обозначение (в)
Входные сигналы S и R являются разрешающими, а на входе С -исполнительными, по которым происходит переключение триггера. Следует отметить, что для надежной работы триггера необходимо, чтобы длительность переключающего сигнала была (синхронизирующего сигнала) на входе С не меньше времени переключения триггера. Временем переключения (срабатывания, установки) триггера называется время, которое проходит от момента изменения входных сигналов до соответствующего изменения состояния выходов. Время изменения состояния выходов определяется задержками распространения сигнала логическими элементами, входящими в состав триггера.
Двухступенчатый RS-триггер. Рассмотренные схемы RS-триггеров являются одноступенчатыми. Применение одноступенчатых RS-триггеров в качестве самостоятельных запоминающих элементов ограничено. Это связано с неустойчивой работой цифрового автомата, память которой выполнена на одноступенчатых RS-триггерах. При формировании сигналов переключения триггера S(/), R(/) участвуют, наряду с
внешними логическими сигналами, сигналы Q(t) и Q (t). Переключение одноступенчатого триггера под действием сигналов S(/) и R(t) вызывает изменение значений сигналов Q(t) и Q (т), а их изменение может привести к изменениям сигналов S(0 или R(r) в том же такте времени / и, как следствие, к ложному срабатыванию триггера. Для устойчивой работы
триггера необходимо, чтобы сигналы Q(f) и Q (t) изменялись только после прекращения действия входного сигнала S(*) или R(t). Это требование выполняется в двухступенчатых триггерах (MS-триггерах). Базовыми схемами для построения двухступенчатых триггеров являются одно» ступенчатые RS-триггеры.
Двухступенчатый триггер состоит из двух секций (ступеней), соединенных каскадно, как показано на рис. 6.10, а, причем каждая секция содержит по синхронному RS-триггеру. Первая секция, ведущая или М-секция (М происходит от английского MASTER), принимает информацию с входных линий S и R. Состояние выходов ведущей секции подается на вторую секцию, ведомую, или S-секцию (S происходит от английского SLAVE).
Для ведущего триггера используется обычная синхронизация, в то время как для ведомого триггера импульс синхронизации инвертируется. Изменение состояния выхода ведущего триггера будет происходить в момент появления положительного фронта (переднего фронта положительного импульса) импульса синхронизации, и эти изме
нения будут переданы на входы ведомого триггера. Однако никакие изменения на выходе ведомого триггера не будут происходить до тех пор, пока не появится положительный фронт инвертированного импульса синхронизации, т.е. отрицательный (задний фронт) фронт исходного синхроимпульса. Следовательно, изменения на выходах не будет до тех пор, пока не завершится импульс синхронизации. На рис. 6.10, б, показаны временные диаграммы работы триггера. На функциональных схемах двухступенчатый триггер изображается в соответствии с рис. 6.10, в. Символ ТТ в поле условного обозначения означает, что триггер двухступенчатый.
Двухступенчатые триггеры могут опрокидываться как передним, так и задним фронтом тактирующих импульсов. На рис. 6.10, в приведено обозначение двухступенчатого триггера, управляемого перед-ним фронтом тактирующего (синхро-) импульса. Если триггер тактируется задним фронтом синхроимпульса, то на схеме (вход С) черточка имеет наклон влево.
D-триггер. D-триггер (от английского DELAY) называют информационным триггером, также триггером задержки. D-триггер бывает только синхронным. Он может управляться (переключаться) как уровнем тактирующего импульса, так и его фронтом. Для триггера типа D, состояние в интервале времени между сигналом на входной линии и следующим состоянием триггера формируется проще, чем для любого другого типа. По синхроимпульсу D-триггер принимает то состояние, которое имеет входная линия, согласно управляющей таблице состояний, приведенной на рис. 6.11, а. На рис. 6,11, б, при-ведены временные диаграммы, поясняющие его работу.
Как следует из управляющей таблицы, D-триггер имеет как минимум две входные линии: одна - для подачи синхроимпульсов; другая - информационных
Обычно, в одном корпусе ИМС содержится два D-триггера, управляемых фронтом. D-триггеры в интегральном исполнении имеют также дополнительные асинхронные входы управления S и R. Функции асинхронных входов не зависят от сигналов синхронизации. Отметим, что асинхронные входы имеют и другие типы триггеров. Поскольку дополнительные входы «предустановка» и «очистка», с помощью которых триггер может быть установлен в нужное состояние независимо от сигналов на других входах, включая синхронизирующий, работают независимо от синхронизации, их называют асинхронными.
Входы «предустановки» и «очистки» напоминают соответствующие входы S и R обычного не синхронизируемого RS-триггера. При подаче «1» на вход R и «О» на вход S (рис. 6.13) триггер устанавливается в состояние «О». При подаче «1» на оба эти входа поведение триггера не определено, т.е. комбинация S=l, R=l является запрещенной. При подаче на эти входы «1» поведение триггера полностью определяется другими входными сигналами и синхросигналом.
JK-триггер. Среди триггеров особое место занимают триггеры, имеющие более широкие функциональные возможности Все JK-триггеры синхронные и двухступенчатые, т.е. синхронизиру. ются фронтом синхроимпульса.
Упрощенная таблица (таблица управления) состояний Л<-триггера содержит четыре строки (рис. 6.14).
Из таблицы состояний видно, что для первых трех строк (наборов переменных) входы J и К играют роль входов S и R RS-триггера. Однако, для четвертого набора переменных, когда J=K=1 состояние триггера сильно отличается от состояния RS-триггера. Для RS-триггера - это запрещенная комбинация входных переменных, а в JK-триггере меняется (инвертируется) предыдущее состояние.
S
*J
ТТ
&
к
&
<
R
Рис, 6.15. Схемное обозначение ИМС JK-триггера, выпускаемого промышленностью
Выпускаемые промышленностью ИМС JK-триггеры могут иметь несколько входов (до трех) J и такое же количество входов К9 объединенных схемами конъюнкций (рис. 6.15).
Как следует из рис. 6.15, выпускаемые промышленностью JK-триггеры в виде интегральных микросхем также имеют асинхронные входы установки «О» и «1»(R и S входы, соответственно).
Т-триггер. Т-триггер - это счетный триггер. Т-триггер имеет один вход (вспомогательные входы принудительной установки «О» и «1» не рассматриваются), куда подают тактирующие (счетные) импульсы. После подачи каждого тактирующего импульса состояние Т-триггера меняется в обратное (инверсное) предыдущему состоянию (аналогично состоянию JK-триггера при комбинации входных переменных J=l и К=). Т-триггеры строятся только на базе
Временные диаграммы, поясняющие принцип работы счетного триггера, приведены на рис. 6Л 8. Из временных диаграмм следует, что переключение состояния счетного триггера, выполненного на базе D-триггера, происходит в моменты поступления передних фронтов синхроимпульсов. Частота следования импульсов на выходе счетного триггера в два раза меньше частоты входных синхроимпульсов, что позволяет их использовать в качестве делителей частоты. Если один счетный триггер позволяет делить частоту на два, то для реализации делителя частоты на четыре потребуется два триггера, соединенных последовательно и т.д. Регистры. Наиболее распространенным узлом цифровой техники и устройств автоматики являются регистры, Регистры строятся на базе синхронных одно- и двухступенчатых RS- и D-триггеров. Регистры могут быть реализованы также на базе Ж-тригтеров. По способу приема и выдачи информации регистры делятся на следующие группы: с параллельным приемом и выдачей (рис. 6.19, а); с последовательным
приемом и выдачей (рис. 6.19, б); с последовательным приемом и параллельной выдачей (рис. 6.19, в); с параллельным приемом и последовательной выдачей (рис. 6.19, г); комбинированные, с различными способами приема и выдачи (рис. 6.19, д) и реверсивные.
Vo-Рис. 6.19. Функциональные схемы основных типов регистров
Регистры хранения (памяти). Регистры с параллельным приемом и выдачей информации служат для хранения информации и называются регистрами памяти или хранения. Изменение хранящейся информации в регистре памяти (запись новой информации) осуществляется после установки на входах D0...Dm новой цифровой комбинации (информации) при поступлении определенного уровня или фронта синхросигнала (синхроимпульса) С на вход «С» регистра. Количество разрядов записываемой цифровой информации определяется разрядностью регистра, а разрядность регистра, в свою очередь, определяется количеством триггеров, образующих этот регистр. В качестве разрядных триггеров регистра памяти используются синхронизируемые уровнем или фронтом триггеры. Регистры памяти могут быть реализованы на D-триггерах, если информация поступает на входы регистра в виде однофазных сигналов и на RS-триггерах, если информация поступает в виде парафазных сигналов. В некоторых случаях регистры могут иметь вход для установки выходов в состояние «О». Этот асинхронный вход называют входом R «сброса» триггеров регистра. На рис. 6.20 приведены схемы четырехразрядных регистров памяти на D- и RS-триггерах, синхронизируемых уровнем и фронтом синхроимпульсов (обычно четыре триггера объединены в одном корпусе ИМС).
Рис. 6.20. Регистры хранения: на D-триггерах, синхронизируемых уровнем синхроимпульса (я), фронтом (б) и на RS-триггерах. синхронизируемых фронтом (в)
Регистры сдвига. Регистры с последовательным приемом или выдачей информации называются сдвиговыми регистрами или регистрами сдвига. Регистры сдвига могут выполнять функции хранения и преобразования информации. Они могут быть использованы для построения умножителей и делителей чисел двоичной системы счисления, т.к. сдвиг двоичного числа влево на один разряд соответствует умножению его на два, а сдвиг вправо - делению на два. Регистры сдвига широко используются для выполнения различных временных преобразований цифр0. вой информации: последовательное накопление последовательной циф. ровой информации с последующей одновременной выдачей (преобразование последовательной цифровой информации в параллельный код) или одновременный прием (параллельный прием) информации с последую., щей последовательной выдачей (преобразование параллельного кода в последовательный). Регистры сдвига могут служить также в качестве элементов задержки сигнала, представленного в цифровой форме. Действительно, регистры с последовательным приемом (вводом) и выводом осуществляют задержку передачи информации на т+ тактов -число разрядов регистра) машинного времени. Регистры сдвига обычно реализуются на D-трштерах (рис. 6.21, а) или на RS-триггерах (рис. 6.21,
б) , где для ввода информации в первый разряд включается инвертор
(первый разряд представляет собой D-триггер). Следует отметить, что
все регистры сдвига строятся на базе двухступенчатых триггеров, син-
хронизируемых фронтом синхроимпульса. Разрядность регистров сдви-
га, как и у регистров хранения, определяется количеством триггеров,
входящих в их состав. На рис. 6.21 приведены схемы четырехразрядных
регистров сдвига, реализованных на D- и RS-триггерах, а временные диа-
граммы, поясняющие" работу регистра сдвига, приведены на рис. 6.22.
Вывод параллельной информации из регистра сдвига (рис. 6,21,
в) осуществляется при подключении всех триггеров регистра к от-
дельным выводам (на рис. 6.21, а и б, эти выводы показаны штрихо-
выми линиями). Как было сказано выше, регистры сдвига синхрони-
зируются фронтом тактирующих импульсов, т.е. запись новой ин-
формации в триггеры регистра происходит в течение очень короткого
времени - за время длительности фронта синхроимпульса, вернее, в
момент поступления соответствующего фронта синхроимпульса.
Обычно, это «время» значительно меньше времени распространения
сигнала, т.е. времени переключения триггера регистра в новое со-
стояние. Работу регистра сдвига рассмотрим на примере схемы, при-
веденной на рис. 6.21, а.
Можно предположить, что в начале все триггеры регистра находятся в состоянии логического нуля, т.е. Qo=0, Qi=0, Q2=0, СЬ=0. Если на входе D-триггера Т| имеет место логический 0, то поступление синхроимпульсов на входы «С» триггеров не меняет их состояния.
Как следует из рис. 6.21, синхроимпульсы поступают на соответствующие входы всех триггеров регистра одновременно и записывают в них то, что имеет место на их информационных входах. На информационных входах триггеров Т2, ТЗ, Т4 - уровни логического
«О», т.к. информационные входы последующих триггеров соединены с выходами предыдущих триггеров, находящихся в состоянии логического «О», а на вход «D» первого триггера, по условию примера, подается «О» из внешнего источника информации. При подаче на вход «D» первого триггера «1», с приходом первого синхроимпульса, в этот триггер запишется «1», а в остальные триггеры - «О», т.к. к моменту поступления фронта синхроимпульса на выходе триггера Т1 «ещё» присутствовал логический «О». Таким образом, в триггер Т1 записывается та информация (тот бит), которая была на его входе «D» в момент поступления фронта синхроимпульса и т.д.
При поступлении второго синхроимпульса логическая «1» с выхода первого триггера запишется во второй триггер, и в результате происходит сдвиг первоначально записанной «1» с триггера ТІ в триггер Т2, из триггера Т2 в триггер ТЗ и т.д. (рис. 6.22). Таким образом, производится последовательный сдвиг поступающей на вход регистра информации (в последовательном коде) на один разряд вправо в каждом такте синхроимпульсов.
Рис. 6.21. Регистры сдвига: на D-триггерах (а), RS-триггерах (б) и комбинированный регистр на D-триггерах (б')
После поступления т синхроимпульсов (на рис. 6.21 и рис. 6.22 т=4) регистр оказывается полностью заполненным разрядами числа вводимого через последовательный ввод «D», В течение следующих четырех синхроимпульсов производится последовательный поразрядный вывод из регистра записанного числа, после чего регистр оказывается полностью очищенным (регистр окажется полностью очищенным только при условии подачи на его вход уровня «О» в режиме вывода записанного числа).
Кольцевые счетчики. На базе регистров сдвига можно построить кольцевые счетчики - счетчик Джонсона. Счетчик Джонсона имеет коэффициент пересчета вдвое больше числа составляющих его триггеров. В частности, если счетчик состоит из трех триггеров (т=3), то он будет иметь шесть устойчивых состояний. Счетчик Джонсона используется е системах автоматики в качестве распределителей импульсов и т.д
Таблица состояний счетчика Джонсона (рис. 6.23) содержит 2т (т - количество триггеров в составе регистра) строк и //^столбцов.
Количество разрядов счетчика определяется количеством триггеров (рис. 6.23). Рассмотрим схему трехразрядного счетчика Джонсона, выполненного на базе D-триггеров (регистр сдвига реализован на D-триггерах). Как следует из рис. 6.23, я, для построения кольцевого счетчика достаточно соединить инверсный выход последнего триггера регистра (последнего разряда) с входом «D» (с входом, предназначенным для ввода последовательной информации) первого триггера.
Предположим, что в начале все триггеры находятся в состоянии «О», т.е. Qo= Qi=Q2=0. При этом на входе «D» первого триггера будет
уровень «1», т.к <22 =1. Первым синхроимпульсом в триггер Т1 запишется «1», вторым - единица запишется в первый триггер, из первого - во второй и т.д. до тех пор, пока на всех выходах регистра не будет «1». После заполнения регистра единицами на инверсном выходе
триггера ТЗ появится q2 =0 и четвертым синхроимпульсом в Т1 запишется логический «0» (рис. 6.23, б).
После поступления последующих трех синхроимпульсов регистр обнуляется и на его вход «D» снова подается уровень «1». Таким образом, цикл повторения состояния кольцевого счетчика состоит из шести тактов синхросигнала. Как видим, при счете в начале от первого триггера до последнего триггера распространяется «волна единиц», а затем «волна нулей». Код, в котором работает счетчик Джонсона, называют кодом Либау-Крейга.
Генераторы чисел. На базе кольцевых счетчиков можно реализовать генераторы различных двоичных чисел. Вывод генерируемых чисел можно осуществлять как в параллельном, так и в последовательном коде.
В качестве примера рассмотрим работу трехразрядного (очевидно, что количество разрядов может быть и более трех) генератора чисел, реализованного на базе D-триггеров. Генератор чисел представим как совокупность трехразрядного регистра сдвига и комбинационного устройства КУ, выходной сигнал которого служит «источником» информации для регистра сдвига (рис. 6.24).
Рис. 6.24. Структурная схема трехразрядного генератора чисел на D-триггерах
Входными переменными КУ являются выходные сигналы р^ рядных триггеров регистра сдвига Q0, Qb Ch- Цикл повторения чисел определяется 2т - тактами синхросигнала (максимальный цикл). ? таблице состояний генератора чисел использованы (рис. 6.25) Сде. дующие обозначения: Nn - десятичный эквивалент двоичного числа реализуемого в параллельном коде; D - функция аргументов Q0j Q2. Эту функцию можно рассматривать как последовательный код
N„
Q2
Он
Go
Q
0
0
0
0
1
1
0
0
1
1
3
0
1
1
1
7
1
1
1
0
6
1
1
0
1
5
1
0
1
0
2
0
1
0
0
4
1
0
0
0
Рис. 6.25. Таблица состояний трехразрядного генератора чисел
Использование регистров сдвига в кольцевых схемах представляет практический интерес, так как его структурные схемы состоят из повторяющихся триггерных цепей, обладают наращиваемостью и пригодны для различных применений.
Электронные счетчики и делители частоты. На базе счетных триггеров можно построить цифровое устройство, получившее название электронного счетчика. Электронные счетчики (далее просто счетчики) позволяют вести подсчет электрических импульсов, количество которых (поступивших на вход счетчика) представляется обычно в параллельном коде. Счетчики могут отличаться модулем счета и типом счетной последовательности, которая, в частности, может быть двоичной, двоично-кодированной десятичной, в коде Грея I! т.п. Цифровые устройства, выполненные по схеме счетчика, но имеющие один счетный вход и один выход, называются делителями частоты. Таким образом, любой счетчик может служить в качестве делителя частоты, если используется информация только одного из его выходов. Так как счетчики и делители имеют единую структуру, основное внимание будет уделено синтезу счетчиков.
Счетчики и делители подразделяются на асинхронные и синхронные. У синхронных счетчиков все разрядные триггеры синхронизируются параллельно одними и теми же синхроимпульсами, поступающими из источника этих импульсов. Асинхронные счетчики имеют последовательную синхронизацию, т.е. каждый последующий разрядный триггер синхронизируется выходными импульсами триггера предыдущего разряда. Асинхронные счетчики иногда называют последовательными, а синхронные счетчики - параллельными.
Синхронные счетчики, в свою очередь, подразделяются на параллельно-синхронные и последовательно-синхронные. Параллельные счетчики имеют более высокую скорость счета, чем асинхронные.
Счетчики, независимо от способа синхронизации, подразделяются на счетчики прямого счета (суммирующие) и на счетчики обратного счета (вычитающие). В интегральном исполнении выпускаются также реверсивные счетчики, в которых имеется специальный вход для переключения режима работы, т.е. направления счета. Многие типы счетчиков, выпускаемые промышленностью в интегральном исполнении, имеют дополнительные входы предустановки, позволяющие использовать эти счетчики в режиме регистра памяти.
В качестве разрядных триггеров счетчиков и делителей могут быть использованы двухступенчатые D-триггеры, Т- и JK-триггеры.
Счетчики относятся к последовательностным устройствам с циклически повторяющейся последовательностью состояний. Число, соответствующее количеству импульсов (поступивших на вход счетчика), при котором счетчик «возвращается» в исходное состояние, называется модулем или коэффициентом счета. Модуль счета обычно обозначают буквой М (или Ксч). Например, максимальный модуль счета счетчика из двух триггеров равен М = 22 = 4, трех триггеров - М = 23 = 8 и т.д. В общем случае для л-разрядного счетчика М = 2". Модуль счета счетчика численно совпадает с модулем деления делителя частоты. Счетчик по модулю 8 позволяет реализовать (без дополнительных схемных затрат) делитель частоты на 8. Это значит, что данный делитель делит частоту входной импульсной последовательности на 8.
Асинхронный двоичный счетчик. Асинхронный двоичный счетчик представляет собой совокупность последовательно соединенных триггеров (D- или JK-), каждый из которых ассоциируется с битом в двоичном представлении числа. Если в счетчике т триггеров, то число возможных состояний счетчика равно 2Ш, и, следовательно, модуль счета М также равен 2т Счетная последовательность в двоичном суммирующем счетчике начинается с нуля и доходит до максимального числа 2ПМ, после чего снова проходит через нуль и повторяется. В вычитающем двоичном счетчике последовательные двоичные числа перебираются в обратном порядке, и при повторении последовательности максимальное число следует за нулем.
Как видно из рис. 6.26, а, синхронизирующие входы всех триг геров, кроме крайнего левого (T1), соединены с выходами предыдущих триггеров.. Поэтому состояние триггера меняется в ответ на изменение состояния предыдущего триггера.
Из таблицы состояния счетчика (рис. 6.26, б) легко заметить, что значение разряда в выбранной позиции меняется тогда, когда в сосед-ней справа позиции состояние переходит из «1» в «0», управление триггерами осуществляется задним фронтом синхроимпульсов (отрицательным перепадом напряжения импульса синхронизации). Временные диаграммы, поясняющие работу асинхронного суммирующего счетчика, приведены на рис. 6.26, в.
Счетчики обратного счета (вычитающие счетчики). На рис. 6.27, а приведена схема асинхронного трехразрядного двоичного вычитающего счетчика, построенного на базе D-трштеров. Отметим, что условия для изменения состояний триггеров зычитающих счетчиков аналогичны условиям для суммирующих счетчиков с той лишь разницей, что они должны «опираться» на значения инверсных, а не прямых выходов триггеров. Следовательно, рассмотренный выше счетчик можно превратить в вычитающий, просто переключив входы «С» триггеров с выходов Q (предыдущих) на выходы Q. Когда в качестве разрядных триггеров используются D-триггеры, синхронизируемые передним фронтом синхроимпульсов, для получения вычитающего счетчика (асинхронного) входы «С» последующих триггеров соединяются с прямыми выходами предыдущих, так же как в счетчике прямого счета, построенного на
Рис. 6.27. Схема а) и временные диаграммы вычитающего трехразрядного счетчика на D-триггерах б)
Работа вычитающего счетчика на D-триггерах наглядно иллюстрирована на рис. 6.27, б. Из рис. 6.27 следует, что после нулевого состояния всех триггеров, с приходом первого синхроимпульса они устанавливаются в состояние «1». Поступление второго синхроимпульса приводит к уменьшению этого числа на одну единицу и т.д. После поступления восьмого импульса все триггеры снова обнуляются и цикл счета повторяется, что соответствует модулю счета М=8.
В некоторых случаях необходимо, чтобы счетчик мог работать как в прямом, так и в обратном направлении счета. Такие счетчики называются реверсивными. Реверсивные счетчики могут быть как асинхронного, так и синхронного типа. Они строятся путем применения логических коммутаторов (мультиплексоров) в цепях связи между триггерами. Так, например, асинхронный реверсивный двоичный счетчик можно построить, если обеспечить подачу сигналов с прямого (при суммировании) или с инверсного (при вычитании) выхода предыдущего Ж- или Т-триггера на счетный вход последующего. ^ случае, когда реверсивный счетчик строится на базе D-триггерон управляемых передним фронтом, для получения режима прямого сче~ та следует соединить инверсный выход предыдущего со счетным входом последующего триггера.
Все рассмотренные типы счетчиков могут быть использованы в цифровых устройствах «умеренного» быстродействия, когда частота следования синхроимпульсов не превышает критического значения при котором время задержки установки триггеров последних (стар, ших) разрядов счетчика становится соизмеримым с длительностью периода входных тактовых импульсов. В связи с этим асинхронные счетчики строятся на относительно небольшое количество разрядов, так как при большем количестве разрядов выходные сигналы триггеров старших разрядов появляются позднее, чем управляющие фронты синхроимпульсов (поступающих на вход первого триггера).
Параллельные счетчики (синхронные счетчики). Как было уже сказано выше, параллельные счетчики бывают двух типов: синхронные параллельные и синхронные последовательные.
Синхронный последовательный счетчик. По способу подачи синхроимпульсов такие счетчики параллельные, т.е. синхроимпульсы поступают на все триггеры счетчика параллельно, а по способу управления (подачи управляющих импульсов) - последовательные. Схема синхронного последовательного
Рис. 6.28. Синхронный последовательный суммирующий счетчик на JK-триггерах
Синхронный последовательный счетчик обладает повышенным быстродействием, однако, за счет последовательного формирования управляющих уровней на входы «J» и «К» счетных триггеров быстродействие несколько уменьшается. От этого недостатка лишены параллельные синхронные счетчики, в которых формирование управляющих уровней и их подача на соответствующие входы триггеров счетчика осуществляется одновременно, т.е. параллельно. Пример реализации параллельного синхронного счетчика иллюстрирован на рис. 6.29.
Поскольку счетчик имеет одну общую линию синхронизации, состояние триггеров меняется синхронно, т.е. те триггеры, которые по синхроимпульсу должны изменить свое состояние, делают это одновременно, что существенно повышает быстродействие синхронных счетчиков.
Счетчики с произвольным коэффициентом счета. Принцип построения подобного класса счетных устройств состоит в исключении нескольких состояний обычного двоичного счетчика, являющихся избыточными для счетчиков с коэффициентом пересчета, отличающимися от двоичных. При этом избыточные состояния исключаются с помощью обратных связей внутри счетчика.
Число избыточных состояний для любого счетчика определяется из следующего выражения:
М=2Ш-#СЧ,
где М - число запрещенных состояний; Ксч - требуемый коэффициент счета; 2т - число устойчивых состояний двоичного счетчика.
Задача синтеза счетчика с произвольным коэффициентом счета заключается в определении необходимых обратных связей и минимизации их числа. Требуемое количество триггеров определяется из выражения
П= [l0g2 Ксч]>
где [Iog2 /Сі] -двоичный логарифм заданного коэффициента пересчета Ксч, округленный до ближайшего целого числа.
В каждом отдельном случае приходится применять какие-то конкретные методы получения требуемого коэффициента пересчета.
Существует несколько методов получения счетчиков с заданным коэффициентом пересчета Ксн. Один их этих методов заключается в немедленном сбросе в «О» счетчика, установившегося в комбинацию, соответствующему числу Ксч, Его называют также методом автосброса. Рассмотрим пример реализации счетчика с KZH= методом автосброса. Очевидно, что «сбрасывая» двоичный четырехразрядный счетчик на нуль каждый раз, когда он будет принимать состояние 1010, можно обеспечить «возврат» счетчика в исходное состояние после каждых десяти импульсов. Подобный прием удобно применять при использовании счетчиков в интегральном исполнении, имеющих ячейки конъюнкции (И) на входах установки в нуль, как это сделано в микросхеме К1533ИЕ5. В данном примере (рис. 6.30) организованы соединения, обеспечивающие коэффициент пересчета Ксч =10.
Как следует из рис. 6.30, роль ячейки, выявляющей факт достижения кодовой комбинации 1010 на выходах счетчика, играет ячейка И, уже имеющаяся на
В таблице, приведенной на рис. 6.30, поясняются конфигурации соединений для получения различных коэффициентов пересчета с помощью счетчика К1533ИЕ5. Наиболее очевидные варианты получения коэффициентов (2, 4, 8, 16) в таблице не указаны. В графе «Соединения» таблицы указано, какие выводы микросхемы должны быть соединены между собой: например, указание 1-12 означает, что нужно соединить вывод 1 с выводом 12. В строках «Ввод» и «Выход» таблицы указаны номера выводов микросхемы, на которые следует подавать входные импульсы и с которых надлежит снимать выходные, соответственно. Следует отметить, что ИМС К1533ИЕ5 состоит из четырех счетных триггеров, один из которых имеет раздельные выводы входа и выхода, а остальные три триггера соединены последовательно по схеме асинхронного счетчика.
Синтез счетчика с произвольным коэффициентом счета. Один из методов проектирования счетчиков с заданным коэффициентом счета заключается в построении таблицы переходов, в первых столбцах которых будут отражены текущие состояния триггеров счетчика, а в последующих - следующие за ними состояния. Анализ таблицы позволяет установить те переходы, которые должны быть «сделаны» триггерами, входящими в состав счетчика. Затем с помощью управляющей таблицы соответствующего триггера находятся значения логических функций на управляющих входах триггеров, позволяющие осуществить эти переходы.
Рассмотрим пример синтеза синхронного двоично-десятичного счетчика на базе JK-триггеров. На рис. 6.31 показан граф, поясняющий последовательность переходов десятичного счетчика, в таблице
В правой части таблицы 6.1 приведены значения входных сигна-лов четырех триггеров. Для поиска этих значений должны быть пр0., анализированы реализованные переходы, а затем с помощью управ, ляющей таблицы определены соответствующие значения «J» и «к» входов триггеров.