Лічильник (електроніка)

Двухразрядного двійковий асинхронний лічильник, що підсумовує з послідовною організацією переносу на JK-тригерах.
4-х бітний синхронний послідовний лічильник із наскрізним прискореним переносом використовує JK-тригери

Лічильник числа імпульсів - пристрій, на виходах якого виходить двійковий ( двійково-десятковий) код, який визначається числом надійшли імпульсів. Лічильники можуть будуватися на двоступеневих D-тригерах, T-тригерах і JK-тригерах.

Основний параметр лічильника - модуль рахунку - максимальне число одиничних сигналів, яке може бути злічило лічильником. Лічильники позначають через СТ (від англ. Counter).


1. Класифікація

Лічильники класифікують:

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

2. Двійкові лічильники

Схему двійкового лічильника можна отримати за допомогою формального синтезу, однак більш наочним шляхом представляється евристичний. Таблиця істинності двійкового лічильника - послідовність двійкових чисел від нуля до 2 ^ n-1 , Де n - розрядність лічильника. Спостереження за розрядами чисел, що становлять таблицю, приводить до розуміння структурної схеми двійкового лічильника. Стану молодшого розряду при його перегляді за відповідним стовпцем таблиці показують чергування нулів і одиниць виду 01010101 ..., що природно, оскільки молодший розряд приймає вхідний сигнал і переключається від кожного вхідного впливу. У наступному розряді спостерігається послідовність пар нулів і одиниць виду 00110011 ... . У третьому розряді утворюється послідовність з четвірок нулів і одиниць 00001111 ... і т.д. З цього спостереження видно, що наступний за старшинством розряд перемикається з частотою, в два рази меншою, ніж даний.

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


3. Двійкові лічильники з паралельним переносом

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

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

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

Це означає, що при переході зі стану 7 в стан 8 на входах лічильника на короткий час з'являться стану 6; 4; 0. Ці додаткові стани можуть викликати помилкову роботу інших пристроїв.

З метою зменшення часу протікання перехідних процесів можна реалізувати лічильник у варіанті з подачею вхідних імпульсів одночасно на всі тригери. У цьому випадку отримаємо лічильник з паралельним переносом.

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

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

Максимальною швидкодією володіють синхронні лічильники з паралельним перенесенням, структуру яких знайдемо евристично, розглянувши процеси додавання одиниці до двійковим числам і віднімання її з них.


4. Лічильники з послідовно-паралельним переносом

У зв'язку з обмеженнями на побудову лічильників з паралельним переносом великої розрядності широке поширення одержали лічильники з груповою структурою, або лічильники з послідовно-паралельним переносом. Розряди таких лічильників розбиваються на групи, усередині яких організується принцип паралельного перенесення. Самі ж групи з'єднуються послідовно з використанням кон'юнкторов, що формують перенесення в наступну групу при одиничному стані всіх тригерів попередніх. При одиничному стані всіх тригерів групи прихід чергового вхідного сигналу створить перенесення з цієї групи. Ця ситуація готує міжгруповий кон'юнктор до прямого пропускання вхідного сигналу на наступну групу.

У найгіршому для швидкодії випадку, коли перенос проходить через всі групи і надходить на вхід останньої,

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

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

У розвинених серіях ІС зазвичай мається по 5 ... 10 варіантів двійкових лічильників, виконаних у вигляді 4-х розрядних груп (секцій). Каскадування секцій може виконуватися шляхом їх послідовного включення по ланцюгах переносу, організації паралельно-послідовних переносів або для більш складних лічильників з двома додатковими керуючими входами дозволу рахунку та дозволу переносу шляхом організації паралельних переносів і в групах і між ними.

Особливістю двійкових лічильників синхронного типу є наявність ситуацій з одночасним перемиканням всіх його розрядів (наприклад, для підсумовуючого лічильника при переході від кодової комбінації 11 ... 1 до комбінації 00 ... 0 при переповненні лічильника і виробленні сигналу переносу). Одночасне перемикання багатьох тригерів створює значний струмовий імпульс в ланцюгах живлення ЦУ і може призвести до збою в їх роботі. Тому в керівних матеріалах по використанню деяких БІС / НВІС програмованої логіки, зокрема, є обмеження на розрядність двійкових лічильників заданою величиною k (наприклад, 16). При необхідності застосування лічильника більшої розрядності рекомендується переходити до коду Грея, для якого переходи від однієї кодової комбінації до іншої супроводжуються перемиканням всього одного розряду. Правда, для отримання результату рахунки в двійковому коді доведеться використовувати додатково перетворювач коду, але це є платою за позбавлення від струмових імпульсів великої інтенсивності в ланцюгах живлення.


Примітки

  1. А.С.Галкін, В.П.Грібок і В.М.Казаков. Кільцевій лічильник на потенційних логічних елементах - www.ee.bgu.ac.il/ ~ kushnero / ternary / Binary coded ternary/SU1466009 Ring counter on potential logic elements.pdf, Binary coded ternary / АС SU1466009.
  2. Лічильники. Лічильник Джонсона. - dssp.karelia.ru / ~ ivash/ims/t13/TEMA7.HTM # JTELL