Двійкові шифратори виконують операцію, зворотну стосовно операції дешифратора: вони перетворять код "1 з N" у двійковий. При порушенні одного з 5 входів шифратора на його виході формується двійковий код номера збудженої вхідної лінії. Повний двійковий шифратор має 2n входів і n виходів. Пріоритетні шифратори виконують більш складну операцію. При роботі ЕОМ і в інших пристроях часто зважується задача визначення, пріоритетного претендента на користування яким-небудь ресурсом. Трохи конкурентів виставляють свої запити на обслуговування, що не можуть бути задоволені одночасно. Потрібно вибрати того, кому надається право першочергового обслуговування. Найпростіший варіант рішення зазначеної задачі - присвоєння кожному джерелу запитів фіксованого пріоритету. Наприклад, група з восьми запитів R7...R0 (R від англійського Request) формується так, що вищий пріоритет має джерело номер сім, а далі пріоритет зменшується від номера, до номера. Самий молодший пріоритет у нульового джерела —він буде обслуговуватися тільки при відсутності всіх інших запитів. Якщо маються одночасно кілька запитів, обслуговується запит з найбільшим номером. Пріоритетний шифратор виробляє на виході двійковий номер старшого запиту. Легко бачити, що при наявності всього одного збудженого входу пріоритетний шифратор працює так само, як і двійковий. Тому в серіях елементів двійковий шифратор як самостійний елемент може бути відсутнім. Режим його роботи - окремий випадок роботи пріоритетного шифратора. Покажчики старшої одиниці вирішують у сутності ту ж задачу, що і пріоритетні шифратори, але виробляють результат в іншій формі - у виді коду "1 з N". Таким чином, при наявності на входах декількох збуджених ліній (запитів) на виході буде порушена лише одна, що відповідає старшому запиту. Число входів у цьому випадку дорівнює числу виходів схеми. Покажчики старшої одиниці застосовуються в пристроях нормалізації чисел із крапкою, що плаває, і так далі. У промислових серіях елементів маються шифратори пріоритету для восьмирозрядних і десятирозрядних слів. Функціонування їх відображається в табл. 1.1.
Робота пріоритетного шифратора
Таблиця 1.1.
E1 | R7 | R6 | R5 | R4 | R3 | R2 | R1 | R0 | a2 | a1 | a0 | G | E0 |
X | X | X | X | X | X | X | |||||||
X | X | X | X | X | X | ||||||||
X | X | X | X | X | |||||||||
X | X | X | X | ||||||||||
X | X | X | |||||||||||
X | X | ||||||||||||
X | |||||||||||||
X | X | X | X | X | X | X | X |
Таблиця цілком характеризує роботу пріоритетного шифратора при всіх можливих комбінаціях сигналів; Е1 — сигналу дозволу роботи даного шифратора: Е0 - сигналу, вироблюваного на виході даного шифратора при відсутності запитів на його входах для дозволу роботи наступного (молодшого) шифратора при нарощуванні розмірності шифраторів: G- сигналу, що відзначає наявність запитів на вході даного шифратора; R7.....R0- запитів на входах шифратора: а2...а0— значень розрядів вихідного двійкового коду, що формує номер старшого запиту. Усі перераховані сигнали формуються за умови Е1 =1 (робота шифратора дозволена). При Е1 = 0 незалежно від станів входів запитів усі вихідні сигнали шифратора стають нульовими. З таблиці можна одержати наступні вираження для функцій а2,а1,а0, E0,G.