В этой рассматриваются синхронные счетчики, их алгоритмы работы, параметры, типовые схемы включения, а также способы реализации на их основе некоторых часто встречающихся функций.
Синхронные (или параллельные) счетчики представляют собой наиболее быстродействующую разновидность счетчиков. Наращивание их разрядности при соблюдении определенных условий не приводит к увеличению полной задержки срабатывания. То есть можно считать, что именно синхронные счетчики работают как идеальные счетчики, все разряды которых срабатывают одновременно, параллельно. Задержка срабатывания счетчика в этом случае примерно равна задержке срабатывания одного триггера. Достигается такое быстродействие существенным усложнением внутренней структуры микросхемы.
Вместе с тем недостатком синхронных счетчиков является более сложное управление их работой по сравнению с асинхронными счетчиками и с синхронными счетчиками с асинхронным переносом. Поэтому синхронные счетчики целесообразно применять только в тех случаях, когда действительно требуется очень высокое быстродействие, очень высокая скорость переключения разрядов. Иначе усложнение схемы управления может быть не оправдано.
Рис. 10.1. Временная диаграмма работы синхронных двоичных счетчиков
Временная диаграмма работы синхронного счетчика (рис. 10.1) отличается от временной диаграммы синхронного счетчика с асинхронным переносом способом формирования сигнала переноса, используемого при каскадировании счетчиков для увеличения разрядности. Сигнал переноса CR (от английского "Carry") вырабатывается в данном случае тогда, когда все выходы счетчика устанавливаются в единицу (при прямом счете) или в нуль (при обратном, инверсном счете). Входной тактовый сигнал в образовании сигнала переноса при этом не участвует.
При каскадировании (совместном включении для увеличения разрядности), например, двух счетчиков тактовые входы С обоих счетчиков объединяются, а сигнал переноса первого счетчика подается на вход разрешения счета (ECT) второго счетчика. В результате второй счетчик будет считать каждый шестнадцатый входной тактовый импульс (так как он будет срабатывать только при переносе от первого счетчика). Выходные сигналы второго счетчика будут переключаться по фронту общего тактового сигнала одновременно с выходными сигналами первого счетчика. Условием правильной работы будет в данном случае следующее: за период тактового сигнала должен успеть выработаться сигнал переноса первого счетчика.
Рис. 10.2. Синхронные счетчики стандартных серий
В стандартные серии микросхем входят несколько разновидностей синхронных (параллельных) счетчиков (рис. 10.2). Различаются они способом счета (двоичные или двоично-десятичные, реверсивные или не реверсивные) и управляющими сигналами (наличием или отсутствием сигнала сброса). Все счетчики считают по положительному фронту тактового сигнала, все имеют выход переноса CR и входы расширения для каскадирования. Все счетчики имеют возможность параллельной записи информации.
Таблица 10.1. Режимы работы счетчиков ИЕ9 и ИЕ10
Входы
Режим
-R
-EWR
ECR
ECT
C
Х
Х
Х
Х
Сброс
Х
Х
0 1
Параллельная запись
Х
Х
Хранение
Х
Х
Хранение
0 1
Прямой счет
Счетчики ИЕ9 и ИЕ10 отличаются друг от друга только тем, что ИЕ9 — двоично-десятичный, а ИЕ10 — двоичный. Микросхемы имеют вход асинхронного сброса –R, по нулевому уровню на котором все выходы счетчика сбрасываются в нуль. Счет (только прямой) производится по положительному фронту на тактовом входе С. Параллельная запись осуществляется синхронно, по положительному фронту на тактовом входе С при установленном в нуль сигнале разрешения записи –EWR. Сигналы ECR ("Enable Carry" — разрешение переноса) и ECT ("Enable Count" — разрешение счета) используются при каскадировании микросхем. Разница между этими сигналами в том, что сигнал ECR не только запрещает счет, как сигнал ECT, но еще и запрещает выработку сигнала переноса CR. Счет идет при единичных сигналах на обоих входах ECT и ECT и при единичном сигнале на входе –EWR. Положительный сигнал переноса CR вырабатывается при максимально возможном коде на выходах счетчика (15 для ИЕ10 и 9 для ИЕ9) и при положительном сигнале на входе ECR. Таблица режимов работы счетчиков ИЕ9 и ИЕ10 представлена в табл. 10.1.
Счетчики ИЕ12 (двоично-десятичный) и ИЕ13 (двоичный) отличаются от ИЕ9 и ИЕ10 тем, что они реверсивные, то есть допускают как прямой, так и обратный счет. Кроме того, у них несколько другое управление. Считают они также по положительному фронту тактового сигнала С при нулевом уровне на входе разрешения счета ECT. Прямой счет осуществляется при нулевом уровне на входе управления U/D, обратный — при единичном уровне на входе U/D. Переключение уровней на входах U/D и ECT допускается только при положительном сигнале на тактовом входе С. Сброс счетчиков ИЕ12 и ИЕ13 в нуль не предусмотрен, зато имеется возможность асинхронной параллельной записи информации по нулевому уровню сигнала параллельной записи –WR.
Положительный сигнал на выходе параллельного переноса CR появляется при достижении максимального кода (15 для ИЕ13 и 9 для ИЕ12) при прямом счете или при достижении нулевого кода при обратном (инверсном) счете. Имеется также выход последовательного переноса Р, отрицательный импульс на котором вырабатывается при положительном сигнале CR и повторяет отрицательный импульс на тактовом входе С (аналогично рассмотренным ранее счетчикам ИЕ6 и ИЕ7).
Режимы работы счетчиков ИЕ12 и ИЕ13 представлена в табл. 10.2.
Таблица 10.2. Режимы работы счетчиков ИЕ12 и ИЕ13
Входы
Режим
-WR
U/D
-ECR
C
Х
Х
Х
Параллельная запись
Х
Х
Хранение
0 1
Прямой счет
0 1
Обратный счет
Микросхемы ИЕ16 (двоично-десятичный счетчик) и ИЕ17 (двоичный счетчик) отличаются от рассмотренных синхронной параллельной записью по фронту тактового сигнала С, возможностью прямого и обратного счета и отсутствием сигнала сброса в нуль.
Срабатывают счетчики ИЕ16 и ИЕ17 по положительному фронту тактового сигнала С. При нулевом уровне на входе разрешения записи -EWR по фронту сигнала С в счетчик записывается информация со входов данных D1, D2, D4, D8. При единичном уровне на входе –EWR по положительному фронту сигнала С происходит счет. Направление счета определяется входом U/D: при единице на этом входе счет прямой, при нуле — обратный. Имеются два входа расширения: вход разрешения счета –ECT и вход разрешения переноса –ECR. Различаются эти два входа тем, что сигнал –ECR не только запрещает счет, как сигнал –ECT, но еще и запрещает выработку сигнала переноса. Переключение уровней на входах U/D, –ECT и –ECR надо производить только при единичном уровне на тактовом входе С.
Отрицательный сигнал переноса –CR (синхронный) вырабатывается при достижении на выходах счетчика максимального кода (15 для ИЕ7 или 9 для ИЕ16) при прямом счете или нулевого кода при обратном счете.
Режимы работы счетчиков ИЕ16 и ИЕ17 приведены в табл. 10.3.
Таблица 10.3. Режимы работы счетчиков ИЕ16 и ИЕ17
Входы
Режим
-EWR
U/D
-ECT
-ECR
C
Х
Х
Х
0 1
Параллельная запись
0 1
Прямой счет
0 1
Обратный счет
Х
Х
Х
Хранение
Х
Х
Х
Хранение
Возможности применения синхронных (параллельных) счетчиков очень широки. Достаточно сказать, что они без всяких проблем могут заменить во всех схемах как асинхронные (последовательные) счетчики, так и синхронные счетчики с асинхронным (последовательным) переносом. При необходимости достижения максимального быстродействия они имеют большие преимущества по сравнению со всеми другими счетчиками. Их выходной код устанавливается одновременно при любом количестве разрядов без применения дополнительных выходных регистров (которые требовались в случае асинхронных счетчиков и синхронных счетчиков с асинхронным переносом).
Мы рассмотрим здесь всего несколько схем, иллюстрирующих характерные особенности именно синхронных счетчиков.
Сначала остановимся на методах каскадирования счетчиков. В отличие от других типов счетчиков, синхронные счетчики можно соединять различными способами, причем способ соединения различен для разного количества микросхем. В качестве примера возьмем микросхемы ИЕ17.
Рис. 10.3. Объединение двух счетчиков ИЕ17
При объединении двух счетчиков (рис. 10.3) никаких проблем не возникает: выход переноса –CR младшего счетчика соединяется со входом разрешения счета старшего счетчика –ECT. На входы –ECR обоих счетчиков подается нулевой уровень. Условие правильной работы будет простым и легко выполнимым: период тактового сигнала С не должен быть меньше, чем задержка выработки сигнала переноса CR.
Рис. 10.4. Объединение трех счетчиков ИЕ17
При объединении трех счетчиков ситуация несколько усложняется (рис. 10.4). Сигнал с выхода переноса первого счетчика подается на входы -ECT второго и третьего счетчиков. Сигнал с выхода переноса второго счетчика подается на вход -ECR третьего счетчика. В результате третий счетчик будет считать только тогда, когда имеется перенос как у первого, так и у второго счетчика. На рисунке для простоты не показано подключение входных и выходных сигналов, не участвующих в каскадировании.
Условие правильной работы схемы остается тем же, что и в случае двух счетчиков: период тактового сигнала С не должен быть меньше задержки выработки сигнала переноса CR.
При объединении четырех (и более) счетчиков уже возникает проблема, так как у старших счетчиков не остается свободных управляющих входов для собирания всех сигналов переноса более младших счетчиков. Поэтому в данном случае используется способность входного сигнал –ECR запрещать выходной сигнал переноса -CR (рис. 10.5). На четвертый и последующие счетчики подаются уже сигналы переноса не со всех предыдущих счетчиков, а только с первого и с предыдущего. На рисунке для простоты не показано подключение входов и выходов, не участвующих непосредственно в каскадировании.
Рис. 10.5. Объединение четырех счетчиков ИЕ17
При таком включении происходит уже накапливание задержки сигналов переноса. Максимальной задержка будет для сигнала переноса второго счетчика. Условие правильной работы всех счетчиков будет следующее: период тактового сигнала С не должен быть меньше, чем максимальная суммарная задержка сигналов переноса до входа последнего счетчика. При объединении четырех счетчиков в эту максимальную задержку входят задержка сигнала переноса –CR микросхемы относительно фронта сигнала С и задержка сигнала переноса –CR относительно сигнала –ECR. При объединении пяти счетчиков добавится еще одна задержка сигнала переноса –CR относительно сигнала –ECR и т.д. Поэтому с увеличением количества объединяемых счетчиков будет снижаться допустимая тактовая частота.
При необходимости объединения большого количества счетчиков (большего четырех) можно избежать накопления суммарной задержки переноса, включив на входах старших счетчиков -ECT логические элементы ИЛИ с нужным числом входов. Эти элементы должны собирать все сигналы переноса с более младших счетчиков, то есть на их выходах должен быть нуль тогда, когда сигналы -CR всех предыдущих счетчиков нулевые. При этом, правда, в суммарную задержку переноса, которая не должна превышать периода тактового сигнала С, войдут задержки этих самых элементов ИЛИ.
В любом случае при выполнении условия правильной работы счетчиков схема будет работать как идеальный счетчик, то есть все разряды многокаскадного счетчика будут переключаться одновременно.
А теперь рассмотрим некоторые схемы на основе синхронных счетчиков.
Управляемый делитель частоты с коэффициентом пересчета, задаваемым входным кодом, реализуется на синхронных счетчиках довольно просто (рис. 10.6). Сигнал переноса -CR старшего счетчика подается на вход разрешения записи –EWR. Счетчики работают в режиме обратного счета (на вход U/D подан сигнал логического нуля).
Рис. 10.6. Управляемый делитель частоты
При достижении всеми счетчиками нулевого кода вырабатывается сигнал переноса -CR, переводящий счетчики в режим параллельной записи входного управляющего кода. Следующим положительным фронтом тактового сигнала С входной код записывается в счетчики. Это приводит к новому циклу счета от входного кода до нуля.
Коэффициент пересчета делителя частоты равен (N+1), где N — входной код, который может принимать значения от 1 до (2n–1), где n — количество разрядов кода. Условие правильной работы делителя частоты следующее: период тактового сигнала не должен быть меньше полной задержки переноса. Длительность выходного сигнала делителя частоты равна периоду тактовой частоты.
Следующая схема — формирователь временного интервала заданной длительности (рис. 10.7) демонстрирует, как надо использовать выходной сигнал переноса синхронных счетчиков при необходимости организации разового (не периодического) цикла работы.
Работа формирователя начинается по короткому отрицательному импульсу "–Старт", перебрасывающему управляющий триггер в единицу и начинающему выходной сигнал. Положительный сигнал с выхода триггера переводит 8-разрядный синхронный счетчик из режима параллельной записи входного кода в режим счета (по входу –EWR). Счет на уменьшение идет по положительным фронтам тактового сигнала с генератора. Когда счетчик досчитает до нуля, следующим положительным фронтом тактового сигнала нулевой сигнал переноса –CR будет записан в триггер. Тем самым будет завершен выходной сигнал, а счетчик будет переведен в режим параллельной записи. Следующий цикл работы формирователя начнется по сигналу "–Старт".
В данном случае триггер, обрабатывающий сигнал переноса, работает синхронно со счетчиками, так как тактируется тем же (положительным) фронтом единого тактового сигнала. Длительность выходного сигнала будет находиться в интервале от NT до (N+1)T, где Т — период тактового сигнала с генератора, а N — входной код от 0 до 2510.
Посмотрим, как на синхронных счетчиках можно построить генератор прямоугольных импульсов с регулируемыми длительностью импульса и длительностью паузы, который был рассмотрен в предыдущем разделе (см. рис. 9.28 и 9.29). Будем ориентироваться на достижение максимального быстродействия, то есть на максимально возможную тактовую частоту.
Схема управления будет мало отличаться от схемы рис. 9.29, поэтому мы остановимся только на схеме счетчиков импульса и паузы. Выберем разрядность обоих этих счетчиков равной 16. Тогда схема счетчиков импульса и паузы (рис. 10.8) будет включать в себя восемь микросхем счетчиков ИЕ17 и выходной триггер, а также логические элементы 4ИЛИ-НЕ для уменьшения задержек переноса. В данном случае очень удобно брать JK-триггер, так как он имеет два информационных входа и тактовый вход.
Триггер тактируется отрицательным фронтом сигнала С, а счетчики — положительным фронтом, поэтому для обеспечения синхронной работы всей схемы по одному фронту тактового сигнала сигнал на вход С триггера подается через инвертор.
Рис. 10.8. Синхронные счетчики импульса и паузы для генератора прямоугольных импульсов
Суть работы схемы остается прежней: 16-разрядные счетчики импульса и паузы работают по очереди, что определяется управляющими сигналами с выходов триггера (прямого и инверсного). Счетчики считают на уменьшение (в режиме инверсного счета) от кода, параллельно записанного в них, до нуля.
До начала работы (сигнал "Разр." нулевой) оба счетчика находятся в состоянии параллельной записи и записывают в себя код импульса и паузы. После прихода положительного сигнала разрешения генерации "Разр." начинает счет верхний по рисунку счетчик (счетчик паузы).
Когда счетчик паузы досчитывает до нуля, его сигнал переноса записывается в триггер по входу J и перебрасывает выход триггера в единицу, что переводит счетчик паузы из состояния счета в состояние параллельной записи и запрещает поступления сигнала на вход J. Одновременно переходит в состояние счета нижний по рисунку счетчик (счетчик импульса), который, в свою очередь досчитав до нуля, перебрасывает триггер в нуль по входу К. Этот процесс периодически повторяется, пока разрешена генерация (то есть сигнал "Разр." — положительный).