Счетчики
Счетчиком называют последовательностное устройство, предназначенное для счета числа поступающих на его вход импульсов и фиксации этого числа на N выходах в виде N-разрядного двоичного кода. Основой для построения счетчиков служат триггеры. Состояние, в которое переходит счетчик после k-vo входного импульса, определяется сигналами . на выходах триггеров. Счетчики работают по циклическому принципу. Максимальное число К входных импульсов, после которого счетчик возвращается в исходное состояние, называется коэффициентом пересчета или модулем счета.
Классификация счетчиков
По коэффициенту пересчета различают:
- • двоичные счетчики, в которых коэффициент пересчета К = 2N (N = 1, 2, 3. ). Число разрядов N двоичных счетчиков равно числу триггеров;
- • счетчики с произвольным коэффициентом пересчета К, среди которых выделяют десятичные счетчики с К = 10* (I = 1, 2, 3. ).
По последовательности счета входных импульсов счетчики разделяют на три группы:
- • суммирующие счетчики, в которых с приходом каждого входного импульса в пределах счетного цикла к содержимому счетчика прибавляется единица (прямая последовательность счета);
- • вычитающие счетчики, в которых с приходом каждого входного импульса в пределах счетного цикла содержимое счетчика уменьшается на единицу (обратная последовательность счета);
- • реверсивные счетчики, в которых реализуются прямая и обратная последовательности счета.
По способу организации переноса сигнала между отдельными триггерами выделяют:
- • счетчики с последовательным переносом, или асинхронные счетчики, в которых входной импульс поступает лишь на первый триггер, а каждый последующий триггер переключается выходным сигналом предыдущего, т.е. входной импульс последовательно переносится на выход счетчика;
- • счетчики с параллельным переносом, или синхронные счетчики, в которых входные импульсы поступают на все триггеры счетчика одновременно.
Рассмотрим принципы построения суммирующих и вычитающих асинхронных счетчиков на примере 4-разрядных устройств.
Общая характеристика счетчиков
Счетчиком называется типовой функциональный узел компьютера, предназначенный для счета входных импульсов. Счетчик представляет собой связанную цепочку Т-триггеров, образующих память с заданным числом устойчивых состояний (Рис. 5.12)
Рисунок 5.12-Логическая структура счетчика
Разрядность счетчика п равна числу Т-триггеров. Каждый входной импульс изменяет состояние счетчика, которое сохраняется до поступления следующего сигнала. Значения выходов триггеров счетчика Qn,Qn-1, … Q1 -отображают результа счета в принятой системе счисления.
Логическая функция счетчика обозначаете буквами СТ (counter).
Список микроопераций счетчика включает:
-предварительную установку в начальное состояние,
-инкремент или декремент хранимого слова,
-выдачу слов параллельным кодом и др.
Входные импульсы могут поступать на счетчик как периодически, так и произвольно распределенными во времени. Амплитуда и длительность счетных импульсов должны удовлетворять техническим требованиям для используемых серий микросхем.
Счетчик является одним из основных функциональных узлов компьютера, а также различных цифровых управляющих и информационно-измерительных систем.
Основное применение счетчиков:
• образование последовательности адресов команд программы (счетчик команд или программный счетчик);
• подсчет числа циклов при выполнении операций деления, умножения, сдвига (счетчик циклов);
• получение сигналов микроопераций и синхронизации; аналого-цифровые преобразования и построение электронных таймеров (часов реального времени).
Счетчик характеризуется модулем и емкостью счета.
Модуль счета КСч определяет число состояний счетчика.
Модуль двоичного n -разрядного счетчика выражается целой степенью двойки М = 2 n .
После счета числа импульсов NBx = Ксч счетчик возвращается в начальное состояние. Таким образом, модуль счета, который часто называют коэффициентом пересчета, определяет цикл работы счетчика, после которого его состояние повторяется. Поэтому число входных импульсов и состояние счетчика однозначно определены только для первого цикла.
Емкость счета Nmаx определяет максимальное количество входных импульсов, которое может зафиксировать счетчик при одном цикле работы.
Емкость счета NСч=Ксч — 1 при условии, что работа счетчика начинается с нулевого начального состояния.
В счетчиках используются три режима работы: управления, накопления и деления.
В режиме управления считывание информации производится после каждого аходного счетного импульса, например, в счетчике адреса команд.
В режиме накопления главным является подсчет заданного числа импульсов либо счет в течение определенного времени.
В режиме деления (пересчета) основным является уменьшение частоты поступления импульсов в Ксч раз.
Большинство счетчиков может работать во всех режимах, однако в специальных счетчиках-делителях состояния в процессе счета могут изменяться в произвольном порядке, что позволяет упростить схему узла.
Счетчики классифицируют по следующим признакам:
• способу кодирования — позиционные и непозиционные;
• модулю счета — двоичные, десятичные, с произвольным постоянным или переменным (программируемым) модулем;
• направлению счета — простые (суммирующие, вычитающие) и реверсивные;
• способу организации межразрядных связей — с последовательным, сквозным, параллельным и комбинированным переносами (заемом);
• типу используемых триггеров — Т, JK, D в счетном режиме;
• элементному базису — потенциальные, импульсные и потенциально-импульсные.
В счетчиках с позиционным кодированием числовое выражение текущего состояния счетчика определяется формулой:
N =
Qi = rn Qn + rn-1 Qn-1 + … + r1 Q1
где ri -вес i- го разряда;
Qi — значение выхода i- го разряда;
п — число разрядов.
Нулевое значение всех разрядов обычно принимается за начальное состояние счетчика. Остальные состояния нумеруют по числу поступивших входных импульсов.
В счетчиках с непозиционным кодированием (например, в кодах Грея) разряды не имеют постоянных весов и каждом набору состояний Qn, Qn-1,…Q1 приписывается определенное количество входных импульсов.
В компьютерах преимущественно используют счетчики с позиционным кодированием.
По виду переходов простые счетчики (Сч) подразделяются на суммирующие (прямого счета) и вычитающие (обратного счета).
В суммирующих счетчиках каждый прибавляемый импульс U + увеличивает состояние на единицу, то есть реализуется микрооперация инкремента Сч: = Сч + 1.
В вычитающих счетчиках каждый вычитаемый импульс U — уменьшает состояние на единицу, то есть реализуется микрооперация декремента Сч: = Сч — 1.
Реверсивные счетчики имеют переходы в прямом и обратном направлениях, что позволяет считать прибавляемые и вычитаемые импульсы.
К временным характеристикам счетчиков относятся:
— время установления (переключения) кода.
Разрешающая способность tpc -определяется минимальным интервалом времени между двумя входными импульсами, при котором еще сохраняется работоспособность счетчика. Параметр tpc задают временем переключения tT первого (младшего) триггера счетчика, то есть tpc = tT, поскольку он переключается под воздействием каждого входного импульса.
Быстродействие счетчика определяется максимальной частотою Fm поступления входных импульсов в режиме деления и вычисляется по формуле: Fm = 1/tT.
Bремя установления кода tуст отсчитывается от начала входного импульса до момента получения нового состояния. Данный параметр позволяет рассчитать быстродействие счетчика в режиме управления из соотношения: FmK = 1/(tуст + tсч), где tсч — время считывания информации.
Межразрядные связи обеспечивают выработку сигналов переноса в старшие разряды при суммировании импульсов и сигналов заема — при вычитании.
От вида реализации межразрядных связей существенно зависят параметры tyct и Fm.k.
В счетчиках с последовательными переносами триггеры переключаются поочередно после каждого входного импульса в направлении от младших разрядов к старшим. Такие счетчики называются последовательными или асинхронными. В счетчиках с параллельными переносами триггеры переключаются одновременно после каждого входного импульса, такие счетчики называются параллельными или синхронными.
Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:
Схемотехническая реализация элементов вычислительной техники
Счетчиком называется электронная схема, предназначенная для подсчета числа сигналов, поступающих на его счетный вход . Счетчики используются в устройстве управления компьютера при построении распределителей импульсов и организации циклов, в счетчиках команд для формирования адреса выполняемой команды при естественном порядке выполнения и в некоторых других устройствах ЭВМ. Также счетчики широко применяются в качестве самостоятельных узлов в различных системах цифровой автоматики.
Суть работы счетчика заключается в изменении на единицу зафиксированного в нем значения с приходом каждого счетного сигнала. Счетчики принято подразделять на суммирующие, вычитающие и реверсивные. Суммирующие счетчики увеличивают свое значение , вычитающие – уменьшают, а реверсивные могут работать как на прибавление, так и на вычитание в зависимости от сигналов управления. Параметром, определяющим информационную емкость счетчика, является модуль пересчета, равный числу внутренних состояний. Это значение проставляется на УГО после аббревиатуры CT (Рис. 5.12).

Пример построения асинхронного трехразрядного двоичного суммирующего счетчика приведен на Рис. 5.13.

Для построения этого счетчика использованы JK-триггеры с динамической синхронизацией по спаду синхросигнала. Каждый JK— триггер в счетчике включен в режим инвертирования своего состояния при переключении синхросигнала с высокого уровня на низкий (см. Табл. 5.10). Идеализированная временная диаграмма работы этого счетчика показана на Рис. 5.14.

С увеличением разрядности асинхронного счетчика увеличивается его задержка и, следовательно, уменьшается быстродействие . В том числе и поэтому, реальные микросхемы счетчиков строятся на основе синхронных триггерных схем.
Обычно счетчик имеет вход установки в нулевое состояние (асинхронный сброс составляющих его триггеров в «0»). Некоторые счетчики имеют цепи установки в произвольное начальное состояние, с которого уже будет начинаться операция счета.
Счетчики
Счетчиками называют устройства, ведущие счет числа импульсов. Они строятся из разрядных схем, связанных с друг с другом и содержащих триггеры и логические элементы.
Специфичной для счетчиков является операция инкрементации (+1) или декрементации (-1), то есть изменение содержимого на единицу. Кроме того, в них выполняются и такие микрооперации, как установка в исходное состояние, хранение, выдача слов и др.
Счетчик характеризуется прежде всего модулем счета (емкостью М). Он переходит при поступлении входных сигналов из состояния в состояние, после каждых М сигналов возвращаясь к началу цикла.
Счетчики классифицируют по значению модуля, направлению счета, способу организации межразрядных связей.
По значению модуля счета различают двоичные (М=2 n ), двоично-кодированные (с произвольным модулем, но кодированием состояний двоичными кодами) и др.
По направлению счета счетчики делят на суммирующие (прямого счета), вычитающие (обратного счета) и реверсивные (с изменением направления счета).
По способу организации межразрядных связей различают счетчики с последовательным, параллельным и комбинированным переносами.
Основными режимами работы счетчиков являются регистрация числа поступивших на вход импульсов и деление частоты.
В первом режиме в счетчике фиксируется его содержимое (цифровой код), а во втором – выходными сигналами являются импульсы переполнения счетчика.
Быстродействие счетчика характеризуется следующими параметрами:
— временем установления кода tk, отсчитываемым от начала входного сигнала до момента установления нового состояния;
временем распространения переноса tП (от начала входного до начала выходного, вызванного входными данными);
максимальной частотой входных импульсов FMAX;
минимальными длительностями единичного и нулевого полутактов входного сигнала t1 и t0.
Счетчики удобно строить на Т или J-K (при J=K=1) триггерах, функционирующих как одноразрядный двоичный счетчик.
Двоичные счетчики.
Модуль двоичного счетчика – целая степень числа 2 (М=2 n ), а его выходное состояние выражается двоичным кодом Qn-1…..Q0, считываемым по выходам триггеров разрядов.
Структуры двоичных счетчиков можно получить по таблицам двоичного счета, либо методам формального синтеза.
Рассмотрим последовательность двоичных чисел от 0 до М-1: для 4-х разрядного счетчика таблицы прямого и обратного счета имеют вид:
Из таблицы видно, что триггер младшего разряда переключается от каждого входного сигнала (нули и единицы чередуются в Q0 поодиночке).
В следующем разряде – парами, затем четверками, восьмерками и так далее – частота переключений каждого следующего триггера уменьшается вдвое по сравнению с частотой переключений предыдущего.
Следовательно, счетчик можно построить как цепочку последовательно включенных триггеров, каждый из которых обладает свойством деления частоты на два. Однако, это справедливо как для суммирующего, так и для вычитающего счетчиков, нужно дополнительно установить вид связей между триггерами.
В таблице прямого счета соседний старший разряд изменяет состояние при переходе данного разряда из единицы в ноль. Значит суммирующий счетчик – цепочка из триггеров с инверсным динамическим управлением, либо двухступенчатых MS триггеров рассмотренных ранее.
Эквивалент I варианта – цепочка триггеров с прямым динамическим управлением, но сигнал снимается с выхода .
Для схем с обратным счетом из таблицы видно: переключение следующего – при переходе предыдущего из 0 в 1.
Схема вычитающего счетчика – цепочка триггеров с прямым динамическим управлением (либо варианты).


Структуры двух счетчиков.
Полученные счетчики называются последовательными (или счетчики с последовательным переносом) – каждый триггер переключается выходным сигналом предыдущего. Временные состязания сигналов отсутствуют – триггеры переключаются поочередно, один за другим.
Максимальное время установления последовательных счетчиков наблюдается при переходах, сопровождающихся переключением всех разрядов (например от 1111 к 0000). Это время пропорционально числу разрядов счетчика и времени переключения триггеров: время установления кода: ,
В режиме деления частоты быстродействие определяется , максимальная входная частота (но есть фазовый сдвиг между входной и выходной последовательностями).
В режиме регистрации кода нельзя подавать очередной входной сигнал, пока не зафиксировано предыдущее состояние счетчика, поэтому в таком режиме
— быстродействие в n раз меньше.
Параллельные (синхронные, с параллельным переносом) счетчики – имеют максимальное быстродействие, поскольку в них все разряды переключаются одновременно.
Добавление единицы к двоичному числу:
111000 Результат отличается от исходного числа только в младших разрядах до первого нулевого включительно.
Изменение состоит в инвертировании состояний.
Структура счетчика с параллельным переносом содержит разрядные триггеры и конъюнкторы, анализирующие состояния предыдущих разрядов. При поступлении входного сигнала переключаются только те триггеры, для которых все предыдущие были в единичном состоянии.

Время установления счетчика не зависит от разрядности и равно:
Структурная схема параллельного счетчика на JK-триггерах типа MS (TB1). Конъюнкторы могут отсутствовать если предусмотрены группы входов J и K, связанные по И. В этом случае .

Частотные возможности параллельного и последовательного счетчиков в режиме деления частоты идентичны (если не говорить о фазовых сдвигах).
В параллельных счетчиках все разряды переключаются одновременно, их структуре свойственны временные состязания сигналов. Эти состязания исключаются при использовании MS триггеров.
Обычно разрядность параллельного счетчика ограничена наличием необходимых элементов в используемой серии ИМС. Второе ограничение – рост нагрузки на выходы триггеров по мере увеличения числа разрядов счетчика.
Счетчик с параллельно-последовательным переносом имеет структуру:

Имеет в цепях межгрупповых переносов конъюнкторы, формирующие перенос в следующую группу при единичном состоянии всех триггеров предыдущей.
В наихудшем, с точки зрения быстродействия, случае, когда перенос проходит всю цепь и поступает на вход последней группы, время установления кода:
— время установления кода в группе.
Если группа – счетчик с параллельным переносом:
Счетчик со сквозным переносом можно рассматривать как предельный случай группового типа, когда группа является одноразрядной:

Входной сигнал распространяется по цепочке конъюнкторов от младшего разряда до первого, содержащего ноль. Дальнейшее распространение переноса блокируется соответствующим конъюнктором. Распространяясь по цепочке сигнал переноса переключает триггеры и все младшие разряды счетчика, включая первый нулевой, инвертируется, что и требуется для реализации счетного режима.
Максимальное время установки:
По сравнению с последовательным счетчиком схема со сквозным переносом выигрывает в той мере, в какой задержка конъюнктора в данной серии меньше времени распространения в триггере.
Реверсивные счетчики изменяют направление счета под воздействием управляющего сигнала либо при смене точки подачи считаемых сигналов.
В первом случае схема имеет счетный и управляемый входы, во втором – два счетных входа.
Наиболее распространенный способ построения реверсивных счетчиков – переключение межразрядных связей.

В ИМС 155 ИЕ 7 (555) в одном корпусе СИС размещен четырехразрядный параллельный двоичный реверсивный счетчик. Счетчик имеет регулярную структуру, один разряд его:

Схема имеет вход общей установки в нуль (сброс) R, параллельный вход записи D4, тактируемый сигналом С.
По входу прямого счета создается суммирующий счетчик, поскольку работает конъюнктор 1, а 2 блокирован нулевым сигналом, снимаемым с инвертора. При подаче сигналов на вход обратного счета создается вычитающий счетчик, так как точка съема сигнала с триггеров переносится на инверсные выходы (конъюнктор 1 блокирован – на — единичный сигнал). Инверсии сигналов переноса и заема Р4 и Z4 используются как входные сигналы следующей группы (другой ИМС). Инверторы являются общими и играют роль усилителей – формирователей входных сигналов. Совместное включение 2-х ИМС, дающее 8 разрядный двоичный счетчик (типичен для схем групповых счетчиков с последовательно-параллельным переносом):

Двоично-кодированные счетчики с произвольным модулем.
Иногда нужны счетчики с модулем счета, не выражаемым целой степенью двойки, то есть произвольным. Такие счетчики реализуются различными способами. Широко распространен и используется в ИМС способ исключения лишних состояний в двоичном счетчике.
Чтобы построить счетчик с модулем К2 n берут двоичный счетчик с модулем М=2 n , так чтобы его разрядность n отвечала условию: . Разность L=M-K дает число лишних состояний, подлежащих исключению.
Способы исключения лишних состояний многочисленны. Исключение в качестве лишних некоторого числа первых состояний счетчика приводит к нулевому начальному состоянию и регистрации в счетчике кода с избытком.
Исключение последних состояний позволяет сохранить естественный порядок счета. Сложность реализации обоих вариантов одинакова.
В счетчиках с исключением последних состояний счет ведется обычным способом вплоть до достижения кода К-1. Далее последовательность переходов счетчика в направлении роста регистрируемого числа должна быть прервана, и следующее состояние должно быть нулевым (при естественном порядке счета). При этом счетчик будет иметь К состояний.
Способ построения счетчиков рассмотрим на примере К=10.
Проведем построение декадного счетчика формализованным путем.
Таблица его функционирования:
Универсальный способ основан на совместном использовании таблиц переходов счетчика и таблиц функционирования триггеров, выбранных для их реализации.
Для JK (который выбираем) таблица функционирования.


Из таблицы видно, что триггер младшего разряда переключается от каждого входного импульса, то есть работает в счетном режиме. Следовательно, .
Зная функции возбуждения триггеров, строим схему:

Часто применяются счетчики с модулем счета М + 1 = 2 n + 1. Использование приема увеличения модуля двоичного счетчика на единицу позволяет получить подсхемы, совместное применение которых дает возможность реализовать любой требуемый модуль счета К. Для этого модуль К представляется через слагаемые или множители, каждый из которых легко реализуется (равен М или М + 1). Например, можно использовать представления:
3 = 2 + 1; 5 = 4 + 1; 6 = 3*2; 7 = 6 + 1; 9 = 8 + 1; 11 = 10 + 1; и т.д.
Схему с увеличенным на единицу модулем счета М + 1 можно построить тем же способом, что применен для построения счетной декады. Результат следующий:

Схема содержит обычный двоичный счетчик в качестве средней части, не включающий первый и последний каскады. В первом и последнем каскадах входы постоянно равны «1», вход J1 получает сигнал в виде перекрестной обратной связи, а вход J последнего триггера получает сигнал в виде конъюнкции входов всех предыдущих триггеров.
При нулевом исходном состоянии схема работает следующим образом. В первом триггере при J1 = 1, а это сохраняется до переключения старшего триггера, осуществляется режим счетного триггера. Пока все предшествующие последнему разряду триггеры не заполнятся единицами, происходит обычный двоичный счет. Такой счет идет до числа 011…11, появление которого открывает группу входов J последнего триггера. После этого состояния возникает состояние: 000…00, так как переключится только последний триггер.
Таким образом, прибавление к некоторому числу разрядов счетчика еще одного разряда здесь приводит к появлению еще одного внутреннего состояния счетчика (в обычном двоичном счетчике это приводит к удвоению числа внутренних состояний).
Для схемы с К = 9 последовательность состояний имеет вид:

Счетчик с К = 9 применяется в схемах контроля и часто используется как часть других счетчиков. Схема в данном случае имеет всего два разряда – первый и последний.

В отечественных и зарубежных сериях имеется счетчик ИЕ 4, используемый как делитель частоты.

На втором и третьем триггерах собрана схема с К = 3. Если подавать входные сигналы на вход , то получим счетчик с К = 3*2 = 6 по выходу Q4 и счетчик с К = 3 по выходу Q = 3.
Если соединить выход Q1 с входом , а входные сигналы подать на вход , то по выходам , , получаются делители частоты на 2, 6 и 12.
Входы и дают управляемую установку нуля, если на один из них подавать управляющий (разрешающий) сигнал, а на второй – тактирующий.
Декадные счетчики ИЕ 2.
Содержат счетный триггер и счетчик с К = 5 на триггерах , , (построенный методом увеличения на единицу модуля 4):

Счетчик в обычном двоичном коде реализуется при соединении выхода с входом . Элементы 1 и 2 дают схему управляемой записи состояний нуля и максимального числа – девяти. В схеме обеспечивается естественный порядок счета, поскольку счет до пяти в триггерах , , производится однократно в каждом цикле.
Рассмотренные счетчики обладают «жесткой» структурой, то есть изменение модуля счета ведет к изменению всей схемы.
Для ряда применений важна легкость изменения модуля. Такая возможность реализуется в счетчиках с управляемым сбросом в нулевое состояние.
Эти счетчики в начале цикла работают как обычные двоичные, а в определенный момент в цепи сброса формируется активный сигнал (например, единичный) и следующим тактовым сигналом весь счетчик сбрасывается в ноль, возвращаясь к началу цикла.
Ясно, что уравнения функций возбуждения в счетчике с управляемым сбросом в нуль должны отличаться от подобных уравнений простого двоичного счетчика введением сигнала сброса R. Описанному выше функционированию счетчика соответствуют функции возбуждения:
В соответствии с этими функциями возбуждения разряд счетчика имеет вид:

Модуль счета задается набором на входах конъюнктора таких переменных, которые обеспечивают сброс при достижении счетчиком состояния М –1. Например, для построения декадного счетчика нужно набрать на входах конъюнктора числа 1001 ( ).
Самовосстановление после сбоев.
Рассмотрим вопрос, общий для всех схем с исключением лишних состояний. Лишние состояний исключаются в том смысле, что они не используются при нормальном функционировании схемы. Однако эти состояния могут существовать, возникая из-за сбоев или при подаче на схему напряжения питания. Возникает вопрос о поведении схемы, в которой возникло то или иное «лишнее» состояние. Выгоден вариант поведения схемы в котором лишние состояния существуют временно и по истечении нескольких машинных тактов исчезают без специальных внешних воздействий. Схемы, имеющие такое свойство, называют самовосстанавливающимися после сбоев.
Чтобы выявить наличие (отсутствие) самовосстановления после сбоя анализируют работу схемы с учетом не только рабочих состояний (как при синтезе счетчика), но и лишних состояний (аналитически или экспериментально).
Для примера исследуем свойства декадного счетчика. Строим таблицу функционирования счетчика, приняв в качестве исходных состояний лишние (от 10 до 15). Следующие состояния получим зная функции, определяющие переходы триггеров.
