Счётчик (электроника)

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Двухразрядный двоичный асинхронный суммирующий счётчик с последовательной организацией переноса на JK-триггерах.
4-х битный синхронный последовательный счётчик со сквозным ускоренным переносом использующий JK-триггеры

Счётчик числа импульсов — устройство, на выходах которого получается двоичный (двоично-десятичный) код, определяемый числом поступивших импульсов. Счётчики могут строиться на двухступенчатых D-триггерах, T-триггерах и JK-триггерах.

Основной параметр счётчика — модуль счёта — максимальное число единичных сигналов, которое может быть сосчитано счётчиком. Счётчики обозначают через СТ (от англ. counter).

Классификация[править | править вики-текст]

Счётчики классифицируют:

  • по числу устойчивых состояний триггеров
    • на двоичных триггерах
    • на троичных триггерах[1]
    • на n-ичных триггерах
  • по модулю счёта:
    • двоично-десятичные (декада);
    • двоичные;
    • с произвольным постоянным модулем счёта;
    • с переменным модулем счёта;
  • по направлению счёта:
    • суммирующие;
    • вычитающие;
    • реверсивные;
  • по способу формирования внутренних связей:
    • с последовательным переносом;
    • с ускоренным переносом;
      • с параллельным ускоренным переносом;
      • со сквозным ускоренным переносом;
    • с комбинированным переносом;
    • кольцевые;
  • по способу переключения триггера:
    • синхронные;
    • асинхронные;
  • Счётчик Джонсона[2]

Двоичные счетчики[править | править вики-текст]

Схему двоичного счетчика можно получить с помощью формального синтеза, однако более наглядным путем представляется эвристический. Таблица истинности двоичного счетчика — последовательность двоичных чисел от нуля до 2^n-1, где n - разрядность счётчика. Наблюдение за разрядами чисел, составляющих таблицу, приводит к пониманию структурной схемы двоичного счетчика. Состояния младшего разряда при его просмотре по соответствующему столбцу таблицы показывают чередование нулей и единиц вида 01010101..., что естественно, т. к. младший разряд принимает входной сигнал и переключается от каждого входного воздействия. В следующем разряде наблюдается последовательность пар нулей и единиц вида 00110011... . В третьем разряде образуется последовательность из четверок нулей и единиц 00001111... и т.д. Из этого наблюдения видно, что следующий по старшинству разряд переключается с частотой, в два раза меньшей, чем данный.

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

Двоичные счетчики с параллельным переносом[править | править вики-текст]

Выше рассмотрены схемы двоичных последовательных счетчиков, то есть таких счетчиков, в которых при изменении состояния определенного триггера возбуждается последующий триггер, причем триггеры меняют свои состояния не одновременно, а последовательно. Если в данной ситуации должны изменить свои состояния n триггеров, то для завершения этого процесса потребуется n интервалов времени, соответствующих времени изменения состояния каждого из триггеров. Такой последовательный характер работы является причиной двух недостатков последовательного счетчика: меньшая скорость счета по сравнению с параллельными счетчиками и возможность появления ложных сигналов на выходе схемы. В параллельных счетчиках синхронизирующие сигналы поступают на все триггеры одновременно.

Последовательный характер переходов триггеров счетчика является источником мощных сигналов на его выходах. Например, в счетчике, ведущем счет в четырехразрядном двоичном коде с “весами” 8-4-2-1, при переходе от числа 7_{10} = 0111_2 к числу 8_{10} = 1000_2 на выходе появится следующая последовательность сигналов:

0111 ->ð 0110 ->ð 0100 ->ð 0000 ->ð 1000

Это означает, что при переходе из состояния 7 в состояние 8 на входах счетчика на короткое время появятся состояния 6; 4; 0. Эти дополнительные состояния могут вызвать ложную работу других устройств.

С целью уменьшения времени протекания переходных процессов можно реализовать счетчик в варианте с подачей входных импульсов одновременно на все триггеры. В этом случае получим счетчик с параллельным переносом.

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

Параллельные счетчики имеют более высокое быстродействие по сравнению с последовательными, поскольку синхронизирующие импульсы поступают на все триггеры одновременно.

Максимальным быстродействием обладают синхронные счетчики с параллельным переносом, структуру которых найдем эвристически, рассмотрев процессы прибавления единицы к двоичным числам и вычитания ее из них.

Счетчики с последовательно-параллельным переносом[править | править вики-текст]

В связи с ограничениями на построение счетчиков с параллельным переносом большой разрядности широкое распространение получили счетчики с групповой структурой, или счетчики с последовательно-параллельным переносом. Разряды таких счетчиков разбиваются на группы, внутри которых организуется принцип параллельного переноса. Сами же группы соединяются последовательно с использованием конъюнкторов, формирующих перенос в следующую группу при единичном состоянии всех триггеров предыдущих. При единичном состоянии всех триггеров группы приход очередного входного сигнала создаст перенос из этой группы. Эта ситуация подготавливает межгрупповой конъюнктор к прямому пропусканию входного сигнала на следующую группу.

В наихудшем для быстродействия случае, когда перенос проходит через все группы и поступает на вход последней,

tУСТ = t • (ĺ — 1) + tГР

где ĺ — число групп, tГР — время установления кода в группе.

В развитых сериях ИС обычно имеется по 5…10 вариантов двоичных счетчиков, выполненных в виде 4-х разрядных групп (секций). Каскадирование секций может выполняться путем их последовательного включения по цепям переноса, организации параллельно-последовательных переносов или для более сложных счетчиков с двумя дополнительными управляющими входами разрешения счета и разрешения переноса путем организации параллельных переносов и в группах и между ними.

Особенностью двоичных счетчиков синхронного типа является наличие ситуаций с одновременным переключением всех его разрядов (например, для суммирующего счетчика при переходе от кодовой комбинации 11…1 к комбинации 00…0 при переполнении счетчика и выработке сигнала переноса). Одновременное переключение многих триггеров создает значительный токовый импульс в цепях питания ЦУ и может привести к сбою в их работе. Поэтому в руководящих материалах по использованию некоторых БИС/СБИС программируемой логики, в частности, имеется ограничение на разрядность двоичных счетчиков заданной величиной k (например, 16). При необходимости применения счетчика большей разрядности рекомендуется переходить к коду Грея, для которого переходы от одной кодовой комбинации к другой сопровождаются переключением всего одного разряда. Правда, для получения результата счета в двоичном коде придется использовать дополнительно преобразователь кода, но это является платой за избавление от токовых импульсов большой интенсивности в цепях питания.

См. также[править | править вики-текст]

Примечания[править | править вики-текст]

Ссылки[править | править вики-текст]