В счетчиках, имеющих входы параллельной загрузки имеется возможность программирования (изменения) модуля пересчета в каждом цикле счета.
Схема счетчика с программируемым модулем пересчета, представлена на рис. 119.
999
Рис. 119
В данной схеме модуль пересчета можно изменять с помощью загружаемого числа (dm) при j=const или методом переключения выхода дешифратора Kj при dm=const.
Выключение программирования осуществляется сигналом , в этом случае на выходах дешифратора устанавливаются лог. 1, L=1 - запрет загрузки.
Связь между числом dm, модулем пересчета счетчика и номером состояния счетчика можно выразить следующим выражением:
,
где М - модуль пересчета, i - состояние счетчика.
Схема программирования модуля пересчета с заданием дополнительного числа (рис. 120).
Рис. 120
В данной схеме задаются два числа: число dm загружается в счетчик, число Аj поступает на цифровой компаратор.
С выхода компаратора формируется управляющий сигнал Kj=0, когда dm=Аj. По этому сигналу осуществляется загрузка нового dm и, следовательно, меняется модуль пересчета.
Для изменения модуля пересчета счетчика (в постоянном режиме) можно использовать выход старшего переноса (рис. 121, а).
Рис. 121
В данной схеме счетчик имеет модуль пересчета 16. Для реализации M=11 на вход D поступает код dm=5. При появлении сигнала P4 осуществляется счет до 11 (5+11)=16. Эта схема чаще называется делителем с переменным коэффициентом деления. Для переключения счетчика из режима счета в режим загрузки можно использовать и выходы счетчика (Q0...Qi). Эти же сигналы можно использовать для задания числа dm. На рис. 121, б представлена схема делителя на 10.
Для программирования модуля пересчета можно использовать вход R - сброс в нулевое состояние.
В этом случае схема с синхронным сбросом реализует счетчик по mod9, а при асинхронном сбросе - счетчик по mod8, т.к. сброс происходит мгновенно при появлении "1" на Q3 (рис. 122, а).
Рис. 122
Для небольшого количества фиксированных модулей пересчета проще использовать режим переключения dm с помощью дополнительных логических элементов. Вариант такой схемы представлен на рис. 122,б.
В исходном состоянии предполагается, что все триггера установлены в нулевом состоянии, поэтому на инверсных выходах формируется логическая "1". При U=0 (режим вычитания) дополнительные логические элементы формируют входные сигналы, триггеров используя "нижние половинки", поэтому состояние счетчика при поступление каждого синхроимпульса будет уменьшаться на единицу.
В интегральном исполнении выпускаются двоичные и двоично-десятичные реверсивные счетчики (аналогично простым суммирующим счетчикам).
Счетчик 555ИЕ13 с двумя переносами и двумя входами синхроимпульса, с асинхронной загрузкой L=0. RC - Ripple Carry - последовательный перенос (рис. 124, б).
Два входа С позволяют тактировать счетчик как передним фронтом, так и задним, причем один из входов используется как разрешение счета.
Как и для обычных счетчиков, двоичным реверсивным соответствуют двоично-десятичные: ИЕ1610 - ИЕ172; ИЕ1210 - ИЕ132
Кроме того, выпускается универсальный - 4-разрядный двоичный/двоично-десятичный реверсный счетчик, 564ИЕ14 (рис. 124, в).
Сигнал ML (Modulo) - управляет модулем пересчета счетчика.
ML (Module)=1 - двоичный;
ML (Module) =0 - десятичный.
Каскадирование реверсивных счетчиков осуществляется аналогичными методами, как и для простых счетчиков.