Основні поняття, класифікація



 

Описані в розділах 4 – 6 логічні, тригерні та допоміжні елементи цифрових пристроїв використовують для створення більш складних функціонально закінчених утворень у складі схеми комп’ютера – цифрових вузлів. Визначення поняття цифрового вузла зв’язано з елементарними діями, які виконує процесор комп’ютера. Такими діями є елементарні арифметичні та логічні операції, вибірка, запис і пересилка інформації представленої у двійковій формі та інші. Ці елементарні дії називають мікроопераціями. Мікрооперації виконуються над багаторозрядними двійковими кодами – словами. Функціональні вузли комп’ютерної схемотехніки – це схеми, які виконують мікрооперації перетворення і зберіганням двійкових слів. Функціональні вузли реалізують на основі цифрових елементів (базових логічних елементів, тригерів) і поділяють на вузли комбінаційного та послідовнісного типу.

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

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

Послідовнісними називають функціональні вузли, стан яких визначається як вхідними сигналами у даний момент часу, так і попереднім станом виходів вузла. Характерною ознакою схеми таких вузлів є наявність зворотних зв’язків, тобто наявність у схемі вузла тригерних елементів пам’яті, яким такі зв’язки притаманні (див. розділ 5).

Послідовнісні функціональні вузли це накопичувальні регістри та регістри зсуву, лічильники, накопичувальні суматори, розподілювачі тощо.

Розглянемо найбільш розповсюджені у комп’ютерній схемотехніці функціональні вузли цифрових пристроїв.

Комбінаційні функціональні вузли

 

7.2.1. Дешифратори. Дешифратори це цифрові вузли призначені для перетворення двійкового коду в унітарний код. Унітарний код містить логічну „1” тільки в одному біті, у інших бітах – логічний „0”. Позиція логічної „1” в унітарному коді визначає значення десяткового числа, яке цей код відображує.

Дешифратори, зокрема, широко використовуються в адресних запам’ятовуючих пристроях (ЗП) комп’ютера, де вони згідно двійковому коду адреси комірки пам’яті формують унітарний код, єдина логічна одиниця якого забезпечує вибірку певної комірки пам’яті в запам’ятовуючому масиві ЗП для запису або зчитування з неї інформації.

Дешифратори поділяють на повні та неповні. Повний дешифратор має n входів і N = 2n виходів. У неповному дешифраторі, який має n входів, кількість виходів N < 2n. Іноді для характеристики кількості входів та виходів дешифраторів використовують параметр - конфігурація дешифратора, який записують як n ´ N.

Принципи побудови дешифраторів розглянемо на прикладі повного дешифратора, який має конфігурацією 2 ´ 4. Таблиця справжності, що описує логіку роботи такого дешифратора і його умовне графічне зображення на електричних принципових схемах показані на рис. 7.1. Зазначимо, що числа, якими позначені входи дешифратора на його умовному зображенні, є вагами двійкового коду x2x1 (у загальному випадку така вага для i-того розряду двійкового коду xnxn-1…xi… x2x1 дорівнює 2i-1), а число, що позначає кожний вихід дешифратора співпадає з десятковим еквівалентом вхідного двійкового коду, при якому на цьому виході з’являється логічна одиниця (рис. 7.1б). Позначення DC, на умовному зображенні дешифратора (рис. 7.1б) походить від його англійської назви decoder.

 

x2 x1 y3 y2 y1 y0
0 0 1 1 0 1 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0

 

а б

Рис. 7.1. Повний дешифратор 2 ´ 4: а – умовне

зображення; б – таблиця справжності

 

З таблиці справжності дешифратора (рис. 7.1б) видно, що функції його виходів y3, y2, y1, y0 є конституентами одиниці. Тому логіку роботи дешифратора з конфігурацією 2 ´ 4 описує система логічних рівнянь:

                                                      (7.1)

У загальному випадку, коли повний дешифратор має n входів, логіка його роботи описується рівняннями:

                         yj = Kj(xn,xn-1,…xi,…x2,x1),        (7.2)

де j= 0, 1, 2,..., 2i-1,..., 2n-1, а Kj(xn,xn-1,…xi,…x2,x1) – конституенти одиниці від n булевих змінних xn, xn-1, …xi, …x2, x1.

З (7.1) випливає, що для реалізації у булевому базисі повного дешифратора з конфігурацією 2 ´ 4 потрібні чотири логічних елементи 2І і два інвертори. Схема такого дешифратора, в якій з’єднання виконані відповідно з рівняннями (7.1), показана на рис. 7.2а.

Дешифратори можуть мати інверсні виходи. В цьому випадку в схемі на рис. 7.2а замість елементів 2І використовують елементи Шеффера 2І-НЕ. Такі дешифратори перетворюють двійковий код в інверсний унітарний код, який має логічний „0” тільки у одному розряді, в інших розрядах - логічні „1”. Позиція логічного нуля визначає десяткове число, яке відображує інверсний унітарний код.

а б

Рис. 7.2. Схема повного дешифратора 2´4 (а) і умовне

зображення дешифратора зі стробуючим входом V (б)

 

Дешифратори можуть мати стробуючий вхід V. Організація такого входу в схемі дешифратора показана на рис. 7.2а пунктирною лінією, а умовне зображення дешифратора зі стробуючим входом - на рис. 7.2б. При наявності на вході V сигналу низького рівня напруги U0 (V = 0), який є активним для логічних елементів І, на всіх виходах дешифратора логічні нулі і його робота блокована (унітарний код не формується при будь-якому вхідному двійковому коді). Стробуючий сигнал високого рівня U1 (V = 1) дозволяє роботу дешифратора. Логіка роботи повного дешифратора n´2n, який має стробуючий вхід, описується системою рівнянь:

                        yj = V×Kj(xn,xn-1,…xi,…x2,x1),     (7.3)

де j = 0, 1, 2,..., 2i-1,..., 2n-1.

Дешифратори реалізовані за схемою на рис. 7.2а відносять до класу лінійних. Для таких схем характерним є одноступеневе декодування вхідних n-розрядних двійкових кодів за допомогою 2n вихідних логічних елементів. Завдяки цьому таки цифрові вузли називають одноступеневими або паралельними. Одноступеневі дешифратори забезпечують перетворення кодів з мінімальною затримкою, тому їх використовують в швидкодіючих цифрових пристроях. Слід однак зазначити, що збільшення розрядності вхідного коду n веде до зростання навантаження на виходи вхідних логічних елементів схеми дешифратора (на рис. 7.2а інверторів). Оскільки таке навантаження обмежене коефіцієнтом розгалуження Kроз (див. підрозділ 4.2), типове значення якого, зокрема, для ЛЕ ТТЛШ Kроз = 10, то лінійні дешифратори використовують тільки для перетворення двійкових кодів з розрядністю n ≤ 4. Тому повні дешифратори реалізовані за лінійною схемою, що входять до складу серій інтегральних мікросхем малого та середнього ступеня інтеграції, звичайно мають конфігурацію 2´4, 3´8 і 4´16.

Прикладом повного дешифратора з конфігурацією 2´4 є мікросхеми КР1554ИД14 (MC74AC139) і КР1594ИД14 (MC74ACT139), які містять по два дешифратора зі стробуючим входом. На рис. 7. 3 показані умовне зображення цих мікросхем та логічна структура одного дешифратора.

З таблиці справжності на рис. 7.4 видно, що при високому рівні напруги U1 на вході V (V = 1), не залежно від логічного стану інших входів дешифратора, на всіх його виходах логічна одиниця, тобто інверсний унітарний код не формується. Це обумовлено тим, що активний сигнал рівня напруги U0 з виходу інвертора ( ), який надходить на елементи І-НЕ схеми дешифратора (рис. 7.3б), забезпечує на їх виходах логічну одиницю не залежно від логічного стану інших входів цих елементів. Роботу дешифратора дозволяє сигнал низького рівня напруги U0 (V = 0), при якому на входи елементів І-НЕ (рис. 7.3б) надходить пасивний сигнал , який не блокує формування інверсного унітарного коду на виходах дешифратора.

а б

Рис. 7.3. Мікросхеми КР1554ИД14 і КР1594ИД14: а - умовне

графічне зображення; б – схема дешифратора

 

До складу деяких серій інтегральних мікросхем ТТЛШ і ТТЛ входять неповні дешифратори з конфігурацією 4´10: КР1531ИД22 (74F537), К155ИД1 (SN74141). Ці мікросхеми перетворюють чотирьохбітовий двійковий код десяткових цифр (тетради), який використовується у двійково кодованому десятковому коді, у десятирозрядний унітарний код. Такі мікросхеми, зокрема, використовують у цифрових вимірювальних приладах для управління індикаторами, що відображують цифри десяткових чисел.

x2 x1 y3 y2 y1 y0
1 0 0 0 0 ´ 0 0 1 1 ´ 0 1 0 1 1 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1

 

Рис. 7.4. Таблиця справжності дешифраторів КР1554ИД14 і КР1594ИД14

Мікросхема КР1531ИД22 має виходи з трьома станами і входи, що дають можливість цілеспрямовано встановлювати вихідний унітарний код в прямій або інверсній формі.

Мікросхема К155ИД1 має „високовольтні” виходи розраховані на сумісну роботу з цифровими газорозрядними індикаторами. Конструктивно такий індикатор являє собою скляний балон, наповнений інертним газом неоном, в якому на тонких металевих стійках розташовані один за одним (пакетом) дротяні катоди виконані у формі цифр від 0 до 9. Функцію анода виконує тонка сітка розташована перед пакетом цифр. На анод подають досить велику напругу (близько 200 В) від позитивного полюса джерела постійного струму. При підключенні одного з катодів індикатора до негативного полюсу джерела (загальної шини), поблизу цього катода виникає тліючий електричний розряд, оранжево-червоне світіння якого повторює форму увімкнутого знаку індикатора. Чотири входи дешифратора К155ИД1 підключають до виходів двійково-десяткового лічильника, а десять виходів дешифратора з’єднують з відповідними катодами газорозрядного індикатора (рис. 7.5).

Рис. 7.5. Електрична принципова схема керування газорозрядним індикатором за допомогою дешифратора К155ИД1

Чотирьохбітовий двійковий код десяткової цифри, що надходить з двійково-десяткового лічильника, перетворюється дешифратором в інверсний унітарний код. Логічний нуль (U0) в цьому коді з’являється на виході дешифратора, який з’єднаний з катодом виконаним у формі десяткової цифри, двійковий код якої надійшов на входи дешифратора. При цьому на інших виходах дешифратора діють рівні логічної одиниці U1. Схемотехнічно наявність логічного нуля на виході дешифратора К155ИД1 відповідає відкритому стану його вихідного „високовольтного” транзистора, який з’єднує цей вихід з загальною шиною. Тому катод індикатора, підключений до нього, з’єднується з негативним полюсом джерела постійного струму (220 В) і починає світитися. Катоди індикатора, що підключені до інших виходів дешифратора, не світяться, оскільки „високовольтні” транзистори цих виходів закриті і зв’язок катодів з негативним полюсом джерела живлення обірваний.

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

Параметри деяких інтегральних мікросхем дешифраторів, які входять до складу серій транзисторно-транзисторної логіки Шотткі (серії 1533, 1531) і комплементарної МОН-транзисторної логіки (серії 1554, 1594, 1564) наведені в табл. 7.1.

Таблиця 7.1

Параметри інтегральних мікросхем дешифраторів

 

Параметр КР1533ИД4 SN74ALS155 КР1531ИД22 74F537 КР1554ИД14 MC74AC139 КР1594ИД14 MC74ACT139 1564ИД3 74HC154 КР1531ИД7 74F138
Конфігурація 2 ´ 4 4 ´ 10 2 ´ 4 4 ´ 16 3 ´ 8
Ucc, В 4,5 - 5,5 4,5 - 5,5 2,0– 6,0 2,0 – 6,0 4,5 - 5,5
I0сп, (IccL), мА 7 44 0,008 0,008 (6 В) 13
U0вх, (UIL), В < 0,8 < 0,8 < 1,65 (5,5 В) < 1,2 (6 В) < 0,8
U1вх, (UIH), В > 2 > 2 > 3,85 (5,5 В) > 4,2 (6 В) > 2
I0вх (IIL), мА - 0,1 - 0,6 0,001 (5,5 В) 0,001 (6 В) - 0,6
I1вх (IIH), мА 0,02 0,02 0,001 (5,5 В) 0,001 (6 В) 0,005
U0вих, (UOL), В < 0,5 < 0,5 < 0,1 (Ucc=5,5 В; IOL = 50 мкА) < 0,26 (6 В) < 0,5
U1вих, (UOH), В > 2 > 2,4 > 5,4 (Ucc=5,5 В; IOH = 50 мкА) > 5,48 (6 В) > 2,5
I0вих (IОL), мА 8 24 24 5,2 (6 В) 24
I1вих (IОH), мА - 0,4 - 3,0 - 24 5,2 (6 В) - 1,0
tзп0,1 (tPLH), нс 3 – 14 4,5 – 14 8,0 (3,3 В) 6,5 (5,0 В)

190 (2 В)

38 (4,5 В)

32 (6 В)

5,6
tзп1,0 (tPHL), нс 3 – 12 3 – 11 7,0 (3,3 В) 5,5 (5,0 В) 6,1

7.2.2. Нарощування розрядності дешифраторів. Коли кількості входів дешифратора n > 4 використання лінійної схеми побудови дешифраторів є недоцільним, оскільки призводить до швидкого зростання загальної кількості виводів мікросхеми і перевантаження виходів вхідних логічних елементів схеми дешифратора. У зв’язку з цим при n > 4 дешифратори будують за багатоступеневою схемою, що складається з декількох лінійних вузлів з числом входів n < 5, які з’єднують між собою двома способами.

Рис. 7.6.  Схематичне зображення структури дешифратора n ´ N при пірамідальному  способі нарощування розрядності

В пірамідальному або каскадному способі дешифратор з конфігурацією n´N будують як багатокаскадну пірамідальну структуру (рис. 7.6) на основі повних лінійних дешифраторів зі стробуючим входом V, які мають n0 < 5 входів і N0 =  виходів. Загальну кількість каскадів L такої структури розраховують за формулою:

         L = ]n/n0[, (7.4)

де квадратні зворотні дужки позначають округлення до більшого найближчого цілого.  Кількість ki (i = 1,2,…L) дешифраторів n0 ´ N0 в кожному каскаді можна визначити за формулою

                                  ,                    (7.5)

з якої випливає, що загальна кількість M лінійних дешифраторів з конфігурацією n0 ´ N0, потрібних для побудови дешифратора з конфігурацією n ´ N, визначається як

               .  (7.6)

На підставі формули суми геометричної прогресії (7.6) можна записати у вигляді:

     . (7.7)

У випадку, коли дешифратор n ´ N є повним, тобто N = 2n співвідношення (7.7) приймає вигляд:

                   .       (7.8)

Інформаційні входи дешифраторів з конфігурацією n0 ´ N0 одного й того ж каскаду побітово об’єднують між собою, а виходи дешифраторів i- того каскаду з’єднують зі стробуючим входами дешифраторів i-1- го каскаду. Молодшим бітам вхідного двійкового коду дешифратора n ´ N відповідають побітово об’єднані входи дешифраторів першого каскаду, а старшим бітам – побітово об’єднані входи дешифраторів останнього L-того каскаду.

Пірамідальні дешифратори мають меншу швидкодію, оскільки час затримки поширення сигналу для них у L разів більшій (L – кількість каскадів) ніж для дешифраторів реалізованих за лінійною схемою, тобто

 

               .  (7.9)

 

Окрім цього пірамідальні дешифратори мають нерівномірне навантаження входів, яке збільшується при зростанні кількості каскадів вузла.

Розглянемо пірамідальний спосіб нарощування розрядності дешифраторів на прикладі дешифратора 4 ´ 16, який треба реалізувати на основі лінійних дешифраторів з конфігурацією 2 ´ 4 (рис. 7.2б). Згідно (7.4) такий дешифратор має L = 4/2 = 2 каскади, а кількість дешифраторів 2 ´ 4 в них згідно (7.5) дорівнює: k1 =]16/4[ = 4; k2 = ]4/4[ = 1, тобто для реалізації дешифратора 4 ´ 16 потрібні п’ять дешифраторів 2 ´ 4. З урахуванням викладених вище особливостей об’єднання входів і виходів дешифраторів n0 ´ N0 у пірамідальній структурі дешифратора з конфігурацією n ´ N одержимо схему показану на рис. 7.7. Оскільки в цій схемі біти вхідного двійкового коду x8x4x2x1 надходять на дешифратори всіх каскадів одночасно, швидкодія обмежується послідовним у часі розповсюдженням стробуючого сигналу V між каскадами дешифратора, причому джерелом такого сигналу для кожного каскаду є виходи дешифраторів попереднього каскаду. Оскільки пірамідальний дешифратор на рис. 7.7 має два каскади, затримка поширення сигналу для нього у двічі більша за tзп лінійних дешифраторів, на яких він побудований.

Рис. 7.7. Дешифратор 4 ´ 16 реалізований пірамідальним  способом на дешифраторах с конфігурацією 2 ´4

Принцип дії пірамідального дешифратора на прикладі коду x8x4x2x1 = 1101 = 1310 ілюструє рис. 7.7. Завдяки x8x4=11 дешифратор 2 ´ 4 другого каскаду формує унітарний код 1000, який сигналами V=0 блокує роботу трьох дешифраторів 2 ´ 4 першого каскаду (на їх виходах код 0000, не залежно від стану входів) і сигналом V=1 дозволяє роботу тільки одного дешифратора цього каскаду. Оскільки на входи дешифраторів першого каскаду надходить код x2x1 = 01, на виході неблокованого дешифратора унітарний код 0010, одиниця якого займає 13 позицію унітарного коду y15y14y13y12y11y10y9y8y7y6y5y4y3y2y1y0 = 0010000000000000 на виході пірамідального дешифратора. Номер цієї позиції співпадає з десятковим числом, що відображає двійковий код 1101 на входах дешифратора.

Інший спосіб нарощування розрядності дешифраторів полягає в створенні двомірної матричної структури з логічних елементів, яка керується по рядкам і стовпцям сигналами, що надходять з виходів лінійних дешифраторів. Приклад дешифратора 4 ´ 16 з матричною структурою, побудованого на основі дешифраторів 2 ´ 4 і логічних елементів 2І показано на рис. 7.8. В схемі на рис. 7.8 можна використовувати також логічні елементи 2І-НЕ для реалізації дешифратора з інверсним унітарним кодом.

Матричні дешифратори з конфігурацією n ´ N мають двоступеневу структуру. Першу ступень складають два лінійних або пірамідальних повних дешифратора DD1, DD2. Друга ступень – це двомірна матриця у стовпцях і рядках якої розташовані логічні елементи 2І (рис. 7.8), на виходах яких формується вихідний унітарний N- розрядний код. Один зі входів кожного логічного елемента 2І з’єднаний з лінією рядка, інший - з лінією стовпця матриці. Вхідний n-розрядний двійковий код матричного дешифратора розділяється на дві частини, що складаються з nH старших і nL молодших його розрядів. Розряди nH подають на дешифратор DD1,  виходи якого з’єднаних з лініями рядків матриці ЛЕ, а розряди nL - на дешифратор DD2,  виходи якого з’єднані з лініями стовпців матриці ЛЕ. Така організація забезпечує одночасну появу логічних одиниць на обох входах тільки одного елемента 2І з N = ´  логічних елементів матриці, а саме того, який розташований на перетині лінії рядка та стовпця, по яким надходить логічна одиниця унітарного коду з дешифраторів DD1, DD2 (рис. 7.8). Саме на виході цього елемента 2І з’являється єдина одиниця N-розрядного вихідного унітарного коду матричного дешифратора (на рис. 7.8 це показано для коду x8x4x2x1 = 1101 = 1310).

Рис. 7.8. Схема матричного дешифратора 4 ´ 16  

При nH = nL = n/2 матриця ЛЕ квадратна, як на рис. 7.8, у загальному випадку nH ≠ nL – прямокутна. Швидкодія матричних дешифраторів обмежена часом затримки поширення сигналу tзп DC дешифраторів рядка DD1 і стовпця DD2 матриці та затримкою логічних елементів tзп л, що її утворюють  Для матричних дешифраторів, завдяки двоступеневій структурі,

                                tзп n´N мат = tзп DC + tзп л        (7.10)

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

Виконаємо оцінку кількості ЛЕ потрібних для побудови пірамідальних і матричних повних дешифраторів з конфігурацією n ´ 2n, виходячи з того, що така побудова здійснюється на основі лінійних дешифраторів з конфігурацією n0 ´ 2n0, для яких n0 ≤ 4. З схеми повного лінійного дешифратора (рис. 7.2а) випливає, що в загальному випадку для його побудови потрібно

                                     Kлін = n0 + 2n0               (7.11)

логічних елементів (n0 – інверторів і 2n0 – елементів І).

Оскільки число лінійних дешифраторів в схемі повного пірамідального дешифратора визначається (7.8), з урахуванням (7.11), для кількості логічних елементів Kпір у схемі такого дешифратора одержимо наступний вираз:

            . (7.12)

Кількість логічних елементів в схемі матричного дешифратора Kмат з конфігурацією n ´ 2n розрахуємо для випадку квадратної матриці, тобто коли nH = nL = n/2.

Якщо n задовольняє умові n/2 ≤ n0, то дешифраторами рядка і стовпця матриці логічних елементів можуть бути лінійні дешифратори, кількість входів яких n0 ≤ 4. В цьому випадку доцільно використати при побудові матричного дешифратора два лінійні дешифратори з кількістю входів n0 = n/2. Оскільки кількість логічних елементів 2І в матриці дорівнює 2n = 22n0, з урахуванням (7.11) для Kмат отримаємо наступний вираз:

             (n0 = n/2, n ≤ 8). (7.13)

Оскільки максимальна кількість входів лінійного дешифратора n0 = 4, на їх основі можна побудувати матричні дешифратори з кількістю входів не більше n = 8. Для побудови дешифраторів з n > 8 треба використовувати дешифратори рядка і стовпця з розрядністю, що нарощена пірамідальним або матричним способами. У випадку, коли використовуються дешифратори побудовані пірамідальним способом, кількість логічних елементів яких визначається співвідношенням (7.12), для Kмат можна отримати наступний вираз:

. (7.14)

Розрахунок за формулами (7.12) і (7.14) для дешифратора двійкового коду з розрядністю n = 20 при використанні лінійних дешифраторів з n0 = 4 дає значення Kмат » 1,0595×106 і Kпір » 1,3981×106. Таким чином, до переваг дешифраторів з матричною структурою, порівняно з пірамідальними дешифраторами, слід віднести не тільки більш високу швидкодію, але й на ~ 30% меншу кількість логічних елементів, необхідних для їх побудови.

7.2.3. Шифратори. Шифратори – це комбінаційні цифрові вузли, які виконують функцію зворотну дешифраторам, тобто перетворюють унітарний код у двійковий. У загальному випадку шифратори мають N входів і n виходів, які кількісно зв’язані між собою співвідношенням: n = ]log2N[, де зворотні квадратні дужки позначають округлення до найближчого більшого цілого. Шифратори поділяють на повні і неповні. В повних шифраторах зв’язок між кількістю входів N і виходів n визначає співвідношення N = 2n, в неповних – умова n > log2N. Так само як для дешифраторів кількості входів та виходів шифратора можна охарактеризувати параметром конфігурації N´n.

В комп’ютерній техніці шифратори використовують у схемах контролерів клавіатури та переривань. Зокрема в контролері клавіатури сигнал від натискання клавіші, який, у сукупності з сигналами від інших не натиснутих клавіш, утворює унітарний код, за допомогою шифратора перетворюється у 8-ми бітовий двійковий скен-код, 7 біт якого являють собою ідентифікаційний номер натиснутої клавіші. Далі цей скен-код трансформується у внутрішню форму подання символів у комп’ютері – код ASCII або розширений код.

Принципи побудови шифраторів розглянемо на прикладі неповного шифратора з конфігурацією 10 ´ 4, призначеного для перетворення 10 бітового унітарного коду десяткових чисел (цифр) від 0 до 9 в 4-х бітовий двійковий код. Таблиця справжності такого шифратора і його умовне зображення показані на рис. 7.9.

Нагадаємо, що числа 8, 4, 2, 1, які позначають виходи шифратора на умовному зображенні і використані як індекси функцій його виходів, є значеннями вагових множників біт двійкового коду. Позначення CD на умовному зображенні походить від англійського слова coder.

Десятко-ве число

Вхідний унітарний код

Вихідний

двійковий код

x9 x8 x7 x6 x5 x4 x3 x2 x1 x0 y8 y4 y2 y1
0 1 2 3 4 5 6 7 8 9 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 0 0 0 1 0 1 0 1 0 1 0 1

 

а б

Рис. 7.9. Таблиця справжності (а) і умовне

зображення (б) неповного шифратора 10 × 4

 

З таблиці справжності (рис. 7.9а) видно, що логічна одиниця з’являється на виході шифратора 1, коли вона є в розрядах вхідного унітарного коду з непарними номерами. Тому функцію виходу 1 шифратора y1(x9,x8,…x1,x0) можна визначити, як диз’юнкцію його вхідних булевих змінних xi з індексами i = 1, 3, 5, 7, 9. Міркуючи подібним чином, можна прийти до висновку, що функція виходу y2(x9,x8,…x1,x0) є диз’юнкцією змінних xi з індексами i = 2, 3, 6, 7, функція y4(x9,x8,…x1,x0) це диз’юнкція змінних xi з індексами i = 4, 5, 6, 7, а функція y8(x9,x8,…x1,x0) визначається диз’юнкцією змінних з і =8,9.

Таким чином, шифратор з конфігурацією 10 ´ 4 описують рівняння:

                               (7.15)

 

з яких випливає, що для його реалізації в булевому базисі потрібні 2 логічних елемента 4АБО, елемент 5АБО та елемент 2АБО. Якщо замість логічних елементів АБО використати елементи Пірса АБО-НЕ, то отримаємо шифратор з інверсними виходами. Для переходу до базису Шеффера І-НЕ треба двічі виконати інверсію лівої і правої частин рівнянь (7.15) і застосувати закон де Моргана. Це приводить до наступних рівнянь:

                                     ,      (7.16)

з яких випливає, що шифратор реалізований в базисі І-НЕ має інверсні входи. Зазначимо також, що у співвідношення (7.15), (7.16) не входить булева змінна x0, тому мікросхеми шифраторів звичайно не мають входу 0.

Схема неповного шифратора 10 ´ 4 з прямими і інверсними виходами, побудованого на логічних елементах АБО-НЕ, і його умовне графічне зображення на електричних принципових схемах показані на рис. 7.10. На рис. 7.10а з’єднання ліній x9…x0, по яким надходить унітарний код, зі входами елементів АБО-НЕ виконано згідно логічним рівнянням (7.15).

а б

Рис. 7.10. Шифратор 10 ´ 4 в базисі АБО-НЕ з прямими та

інверсними виходами: а – схема; б – умовне зображення

 

Розглянемо ще один вид шифраторів - пріоритетний шифратор, який, зокрема, застосовується в контролері переривань комп’ютера.

Робота контролера переривань комп’ютера організована таким чином, що про наявність переривань контролеру повідомляє спеціальний, в загальному випадку N-розряд-ний двійковий код запитів переривань, кожен біт якого пов’язаний з одним із N можливих переривань. Логічна одиниця в будь-якому біті цього коду (наявність запиту переривань) свідчить про те, що переривання, за яке відповідає цей біт, мало місце, логічний нуль (нема запиту) – про відсутність такого переривання. Одночасна поява декількох одиниць в коді запитів переривань вказує на те, що виникло декілька переривань, обумовлених різними причинами. В цьому випадку їх обробка за допомогою спеціальних програм починається з переривання з найбільшим пріоритетом. Запит переривань з найбільшим пріоритетом в схемі контролера переривань виділяє пріоритетний шифратор. Такий шифратор перетворює N-розрядний код запитів переривань в унітарний N-розрядний код, в якому логічна одиниця розташована в тому ж самому біті, що й одиниця коду запитів переривань, яка відповідає перериванню з найбільшим пріоритетом (звичайно це крайня ліва одиниця коду, тобто одиниця розташована у найстаршому з бітів, що містять логічні одиниці). Отриманий таким чином унітарний код пріоритетний шифратор перетворює у двійковий код, який має назву вектор переривань. Вектор переривань процесор комп’ютера використовує для пошуку в пам’яті відповідної програми обробки переривань.

Таким чином, пріоритетний шифратор окрім схеми звичайного шифратора, яка була розглянута вище, містить схему, що перетворює код „m із N” (у загальному випадку 0 ≤ m ≤ N) в унітарний код „1 із N”.

Принципи побудови пріоритетних шифраторів розглянемо на прикладі шифратора з конфігурацією 10´4. Насамперед побудуємо схему перетворення коду „m із 10” в унітарний код „1 із 10”. Вхідні логічні змінні для такої схеми позначимо як R0, R1, … R8, R9 (першою буквою англійського слова Request - запит). Ці змінні утворюють двійковий код R9R8…Ri...R1R0, в якому пріоритет бітів зростає при збільшенні номеру біта. Тому змінна з найбільшим номером (у даному випадку R9) має найбільший пріоритет. Схема перетворення коду „m із 10” в унітарний код „1 із 10” повинна залишати у вихідному коді x9x8…xi…x1x0 тільки одну одиницю із m одиниць вхідного коду R9R8…Ri...R1R0, а саме ту, яка у коді R9R8…Ri...R1R0 займає біт з найбільшим номером. Оскільки змінна R9 має найбільший номер, то коли R9 = 1, не залежно від значень інших бітів Ri, в унітарному коді x9 =1, тобто у загальному випадку x9 = R9. Кожна інша вихідна змінна xi, при умові Ri = 1, повинна приймати одиничне значення, тільки тоді, коли значення вхідних змінних R9, R8,…Ri+1 дорівнюють нулю. Це приводить до рівнянь, що описують логіку роботи перетворювача коду „m із 10” в унітарний код „1 із 10”:

                    (7.17)

з яких, зокрема видно, що вихідна змінна xi дорівнює нулю, якщо інверсія диз’юнкції змінних з більшими індексами дорівнює нулю, а це буде у тому випадку, коли хоча б одна з цих змінних дорівнює одиниці. У тому випадку, коли всі ці змінні дорівнюють нулю, інверсія їх диз’юнкції дорівнює одиниці і xi = Ri. З (7.17) випливає, що для побудови перетворювача коду „m із 10” в код „1 із 10” потрібні вісім елементів 2І і стільки же елементів АБО-НЕ з кількістю входів від 2 до 8. З’єднання такого перетворювача кодів з шифратором створює пріоритетний шифратор, схема якого показана на рис. 7.11.

Рис. 7.11. Схема пріоритетного шифратора 10´4  

Як приклад пріоритетного шифратора 10 ´ 4 розглянемо мікросхему КР1564ИВ3 (функціональні аналоги 74HC147 і 74HCT147).

Таблиця справжності і умовне графічне зображення мікросхеми КР1564ИВ3 показані на рис. 7.12. Мікросхема має інверсні входи і виходи, тому активним сигналом для неї є логічний „0”. Символ ´ означає, що логічна змінна Rі може мати будь-яке значення. Пріоритетний шифратор формує інверсний двійковий код, десятковий еквівалент якого відповідає номеру старшого розряду вхідного коду шифратора, в якому логічний „0”.

R9 R8 R7 R6 R5 R4 R3 R2 R1 y8 y4 y2 y1
1 1 1 1 1 1 1 1 1 1 1 1 1
0 ´ ´ ´ ´ ´ ´ ´ ´ 0 1 1 0
1 0 ´ ´ ´ ´ ´ ´ ´ 0 1 1 1
1 1 0 ´ ´ ´ ´ ´ ´ 1 0 0 0
1 1 1 0 ´ ´ ´ ´ ´ 1 0 0 1
1 1 1 1 0 ´ ´ ´ ´ 1 0 1 0
1 1 1 1 1 0 ´ ´ ´ 1 0 1 1
1 1 1 1 1 1 0 ´ ´ 1 1 0 0
1 1 1 1 1 1 1 0 ´ 1 1 0 1
1 1 1 1 1 1 1 1 0 1 1 1 0

 

а б

Рис. 7.12. Мікросхема КР1564ИВ3: а – таблиця справжності;

б – умовне графічне зображення

 

Параметри пріоритетного шифратора КР1564ИВ3 (74HC147, 74HCT147) при температурі 25 оС наведені в табл. 7.2.

 

Таблиця 7.2

Параметри інтегральної мікросхеми КР1564ИВ3

 

Параметр Значення Вимір при Ucc, В Одиниця виміру
Діапазон робочих температур -55 - + 125 - оС
Напруга живлення, Ucc 2 – 6 - В
Струм споживання, Icc 8 5,5 мкА
Максимальний вихідний струм, I0вих (IОL) 25 5,5 мА

Час затримки поширення сигналу tPHL/tPLH

60 2,0

нс

18 4,5
15 6,0
Вхідна ємність, CIN 5 - пФ

7.2.4. Мультиплексори. Мультиплексори це комбінаційні цифрові вузли, які комутують інформацію, що надходить по декільком вхідним каналам на один вихідний канал. З цього випливає, що мультиплексор має N інформаційнихвходів, кожен з яких роздільно у часі може бути з’єднаним з його виходом, тобто мультиплексор дозволяє здійснювати часове розділення інформації, яка одночасно надходить від різних джерел. Вибір конкретного входу мультиплексора, що з’єднується з його виходом здійснюється за допомогою двійкового коду Am-1…Aj…A1A0, який подається на m адресних входів мультиплексора. Тому мультиплексор – це цифровий вузол, який у загальному випадку має m + N входів (N ≤ 2m) і один вихід. Комутаційні можливості мультиплексора визначає параметр, який має назву „конфігурація” і записується у вигляді N®1.

В комп’ютерній техніці мультиплексори використовують у модемах для перетворення паралельного коду, що надходить з комп’ютера, в послідовний код, який використовується для передачі інформації в мережі, у запам’ятовуючих пристроях зі структурою 2DM (див. підрозділ 8.3.4), для мультиплексування шин даних та для інших цілей.

Принципи побудови мультиплексорів розглянемо на прикладі мультиплексора з конфігурацією 4®1, який має 4 інформаційні (D0, D1, D2, D3) і 2 адресні входи (A0, A1). Комутаційна таблиця такого мультиплексора і його умовне графічне зображення наведені на рис. 7.13.

Значення сигналів на адресних входах Інформаційний вхід, що комутується на вихід Y
А1 = x2 А0 = x1 Y
0 0 1 1 0 1 0 1 D0 D1 D2 D3

 

а б

Рис. 7.13. Мультиплексор з конфігурацією 4®1:

а – комутаційна таблиця; б – умовне графічне зображення

 

Позначення MUX (рис. 7.13б), що вказує на функціональне призначення вузла, походить від назви мультиплексора англійською мовою multiplexer. В полі зображення мультиплексора замість MUX використовують також позначення MS.

З комутаційної таблиці (рис. 7.13а) видно, що для кожного набору булевої функції Y(x1,x2) її значення дорівнює значенням логічної функції Dj (0 ≤ j ≤3) тільки на одному зі входів мультиплексора. Це свідчить про те, що функція виходу мультиплексора Y може бути реалізована, як диз’юнкція кон’юнкцій конституент одиниці і логічних функцій входів Dj:

       Y = . (7.18)

Дійсно, з співвідношення (7.18) випливає, що для будь-якого набору на адресних входах мультиплексора, наприклад, набору 01, з усіх кон’юнкцій змінних x1, x2 і їх інверсій тільки кон’юнкція  дорівнює 1, всі інші - 0, тому функція Y = D0×0 + D1×1 + D2×0 + D3×0 = D1. Таким чином з виходом мультиплексора Y з’єднується вхід, десятковий номер якого співпадає з десятковим числом, яке відображує двійковий код на адресних входах мультиплексора.

У випадку довільної кількості інформаційних входів мультиплексора N=2m рівняння (7.18) приймає вигляд:

                       ,       (7.19)

де Dj - значення логічного сигналу на j-тому інформаційному вході; Kj(x1,x2,…xm) - конституента одиниці від m булевих змінних на адресних входах мультиплексора, яка відповідає j-тому інформаційному входу,  - логічна сума (диз’юнкція).

З рівняння (7.18) випливає, що для реалізації мультиплексора 4®1 у булевому базисі потрібні два інвертори, чотири логічних елемента 3І і один елемент 4АБО. Схема такого мультиплексора показана на рис. 7.14. З’єднання логічних елементів в цій схемі виконано згідно (7.18).

Порівняння логічної структури мультиплексора 4®1 з логічною структурою дешифратора 2´4 (рис. 7.2а) показує, що такий дешифратор є вбудованим в схемі мультиплексора. Саме він виконує функцію вибору інформаційного входу Dj, що з’єднується з виходом мультиплексора Y.

Окрім адресних і інформаційних входів мультиплексори можуть мати стробуючий вхід, який на рис. 7.14 показано пунктирною лінією і позначено як V. При наявності на вході V логічного нуля (V = 0), який є активним для логічної операції кон’юнкція, на виході елементів I (рис. 7.14),  а  тому  і на  виході  мультиплексора  буде  логічний

Рис. 7.14. Схема мультиплексора 4®1

нуль (Y = 0) при будь-якому логічному стані входів мультиплексора Dj. Тому сигнал низького рівня напруги U0 на стробуючому вході V мультиплексора (V = 0) забороняє його роботу, а сигнал високого рівня напруги U1 (V = 1), який є пасивним для логічної операції кон’юнкція, дозволяє роботу мультиплексора. Існують схеми мультиплексорів, які у вихідному колі використовують логічний елемент АБО з трьома вихідними станами. До входу EZ цього елемента, призначеного для встановлення у стан високого імпедансу, підключають вхід OE мультиплексора (рис. 7.14, OE - абревіатура від англійської назви Output Enable - дозвіл виводу). При сигналі логічної одиниці на вході OE (логічного нуля у випадку інверсного входу  елемента АБО) вихід мультиплексора Y встановлюється у Z- стан, що можна розглядати як заборону роботи мультиплексора. Однак на відміну від мультиплексора зі стробуючим входом V, на виході якого у стані заборони низький рівень напруги U0 (Y = 0), тобто вихід підключений до загальної шини (землі), в мультиплексорі з трьома вихідними станами вихід Y одночасно відключений як від землі, так і від шини живлення, тому він не впливає на стан лінії передачі логічних сигналів до якої підключений мультиплексор.

Мультиплексори КМОНТЛ будують не тільки за схемою, подібною тій, що наведена на рис. 7.14, але й з використанням двоспрямованих ключів (див. підрозділ 2.3.5) і дешифратора, який цими ключами керує. На рис. 7.15 показана організація такої схеми на прикладі мультиплексора з конфігурацією 4®1. Ця схема містить дешифратор DC з конфігурацією 2´4 і чотири двоспрямованих ключа. На рис. 7.15 показано схему тільки одного ключа, інші ключі мають таку ж саму схему і умовно зображені у вигляді прямокутників з пунктирним контуром.

Рис. 7.15. Функціональна схема мультиплексора 4®1 КМОНТЛ на двоспрямованих ключах  

В схемі на рис. 7.15 власне двоспрямований ключ утворюють транзистори VT5 і VT4. КМОН-ключ на транзисторах VT1 і VT2 формує керуючі сигнали для двоспрямованого ключа, а транзистор VT3 виконує допоміжну функцію. Зазначимо, що безпосередньо об’єднані між собою виводи двоспрямованих ключів утворюють вихід мультиплексора Y, а інші їх виводи є входами мультиплексора Dj. Оскільки для живлення ключів використовується однополярна напруга +Ucc, вони здатні комутувати аналогові електричні сигнали з будь-яким рівнем напруги Uвх в інтервалі 0 В < Uвх < +Ucc (див. підрозділ 2.3.5). Тому мультиплексори КМОНТЛ, побудовані з використанням двоспрямованих ключів, на відміну від цифрових мультиплексорів, розглянутих вище (рис. 7.14), здатні комутувати як цифрові, так і аналогові електричні сигнали, у зв’язку з цим такі мультиплексори називають аналогово-цифровими.

Розглянемо роботу аналого-цифрового мультиплексора КМОНТЛ (рис. 7.15) більш докладніше. Дешифратор перетворює двійковий код A1A0 в чотирьохрозрядний унітарний код з високим рівнем напруги U1 = +Ucc тільки в одному розряді, номер якого дорівнює значенню десяткового числа, що відповідає двійковому коду A1A0, в інших розрядах - рівень напруги U0 = 0 В.

Транзистор VT2 закритий, а VT1 відкритий для тих ключів мультиплексора, на які з виходів дешифратора надходить низький рівень напруги U0. В наслідок цього різниця потенціалів між затвором і підкладкою транзисторів двоспрямованого ключа VT4, VT5 дорівнює нулю. Канали в цих транзисторах не утворюються, вони закриті і тому входи мультиплексора, що комутуються через ці транзистори, відключені від його виходу Y.

Транзистор VT2 відкритий, а VT1 закритий для того ключа мультиплексора, на який з дешифратора надходить напруга U1 = Ucc. Через відкритий VT2 низький рівень потенціалу землі підключається до затворів p-канальних транзисторів VT4, VT3 і між їх затворами і підкладками виникає різниця потенціалів 0 В - (+Uсс) = -Uсс, яка веде до утворення p-каналу, тобто відкриває ці транзистори. Одночасно високий рівень напруги U1 = +Ucc, що надходить на затвор n-канального транзистора VT5, створює між його затвором і підкладкою різницю потенціалів Uсс - 0 В =Uсс, яка забезпечує утворення n-каналу, тобто транзистор VT5 також відкривається. Таким чином, відкриті транзистори VT4, VT5 забезпечують з’єднання входу мультиплексора з номером, який дорівнює десятковому еквіваленту двійкового коду A1A0 з виходом Y. Величина опору, через який з’єднуються між собою вхід і вихід мультиплексора, визначається опором каналів паралельно включених транзисторів VT4 і VT5. Слід зазначити, що завдяки меншій рухливості дірок ніж електронів в кремнії, опір n-МОН транзистора більш чутливий до варіації напруги між затвором і підкладкою (затвором і витоком) ніж опір p-МОН транзистора. Це призводить до неузгодженої зміни опорів каналів транзисторів VT4, VT5 при відкриванні двоспрямованого ключа. Для усунення цього недоліку використовують допоміжний p-канальний транзистор VT3 (рис. 7.15). Після його відкривання змінюється потенціал підкладки n-МОН канального транзистора VT5, а тому і керуюча опором каналу VT5 напруга. Це забезпечує узгоджену поведінку опорів каналів транзисторів VT4 і VT5 і, як наслідок, зменшення опору відкритого двоспрямованого ключа в діапазоні аналогових напруг 0 В < Uвх < +Ucc, які він комутує.

При наявності на вході V дешифратора логічного нуля його робота заборонена. Цьому стану відповідають сигнали низького рівня U0 на всіх виходах дешифратора. В цьому випадку всі двоспрямовані ключі схеми мультиплексора (рис. 7.15) закриті, вихід Y відключений від шини живлення та загальної шини і тому знаходиться у Z- стані.

Мультиплексори, як самостійні вироби, входять до складу багатьох серій інтегральних мікросхем ТТЛШ і КМОНТЛ. Інформація про деякі такі мікросхеми і їх параметри наведена в табл. 7.3, табл. 7.4 і табл. 7.5.

 

Таблиця 7.3

Інтегральні мікросхеми мультиплексорів ТТЛШ

 

Мікросхема Функціональний аналог Конфі-гурація Функціональне призначення
КР1533КП11 SN74ALS257N

2®1

Чотири мультиплексора з трьома станами виходу

КР1531КП11 74F257PC
КР1533КП14 SN74ALS258N

2®1

Чотири мультиплексора з трьома станами і інверсним виходом

КР1531КП14 74F25
КР1533КП2 SN74ALS153N

4®1

Два мультиплексора зі стробуючим входом

КР1531КП2 74F153PC
КР1533КП12 SN74ALS253N

4®1

Два мультиплексора з трьома станами виходу

1531КП12 54F253FM
КР1533КП7 SN74ALS151N

8®1

Мультиплексор зі

стробуючим входом

КР1531КП7 74F151N
КР1533КП15 SN74ALS251N

8®1

Мультиплексор з трьома станами виходу

КР1531КП15 74F251PC
1533КП16 SN54ALS157

2®1

Чотирьохрозрядний

мультиплексор

КР1531КП16 74F157FM

 

Таблиця 7.4

Інтегральні мікросхеми мультиплексорів КМОНТЛ

 

Мікросхема Функціональ-ний аналог Конфі-гурація Функціональне призначення
КР1561КП5 MC14053BCP 2®1 Три мультиплексора
1564КП11 MM54HC257

2®1

Чотири мультиплексора з трьома станами виходу

КР1554КП11 74AC257N
КФ1594КП11 74ACT257D
КР1561КП1 CD4052B

4®1

Два мультиплексора зі стробуючим входом

1564КП2 MM54HC153
КР1554КП2 74AC153N
КР1594КП2 74ACT153N
КР1561КП2 CD4051B

8®1

Мультиплексор зі стробуючим входом

1564КП7 MM54HC151
КР1554КП7 74AC151N
КР1594КП7 74ACT151N
1564КП15 MM54HC251

8®1

Мультиплексор з трьома станами виходу

КР1554КП15 74AC251N
КР1594КП15 74ACT251N
КР1564КП16 MM74HC157

2®1

Чотирьохрозрядний

мультиплексор

КФ1554КП16 74AC157D

Таблиця 7.5

Параметри деяких інтегральних мікросхем

мультиплексорів

 

Параметр

Мікросхема

КР1533КП2 КР1531КП2 КР1561КП1 1564КП15 КР1594КП7
Ucc, В 4,5÷5,5 4,5÷5,5 3÷20 2÷6 2÷6
Icc, мА 7,5 12 1×10-5 8×10-6 0,6
I1вих (IОH), мА -2,6 -1 - -25 -75
I0вих (IОL), мА 24 20 - 25 75
Робочі темпе-ратури, оС 0 ÷ +70 -55÷+125 -55÷+125 -65÷+150 -40÷ +85
tзп0,1 (tPLH), нс Aj ® Y 5 ÷ 21 4,5 ÷ 10,5

450 (5 В)

 

120 (15 В)

26 (5 В) 3,5÷ 15,5 (5 В)
tзп1,0 (tPHL), нс Aj ® Y 5 ÷ 21 3,5 ÷ 9,0 27 (5 В) 4,0÷ 16,5 (5 В)
tзп0,1 (tPLH), нс Dj ® Y 3 ÷ 10 3 ÷ 7 - 22 (5 В) 3,5÷ 11,5 (5 В)
tзп1,0 (tPHL), нс Dj ® Y 4 ÷ 15 2,5 ÷ 6,5 - 24 (5 В) 3,5 ÷12,0 (5 В)
tзп0,1 (tPLH), нс V ® Y 5 ÷ 18 4,5 ÷ 9,0

200 (5 В)

 

70 (15 В)

19 (5 В) 2,5 ÷ 9,0 (5 В)
tзп1,0 (tPHL), нс V ® Y 5 ÷ 18 3,0 ÷ 7,0 19 (5 В) 2,5 ÷ 9,5 (5 В)

 

7.2.5. Нарощування розрядності мультиплексорів. Згідно таблиць 7.3 і 7.4 до складу серій інтегральних мікросхем входять мультиплексори з кількістю інформаційних входів не більше восьми. В тому випадку, коли потрібен мультиплексор з більшою кількістю інформаційних входів, його створюють на базі мультиплексорів з меншою кількістю таких входів. Це, як і у випадку дешифраторів (див. підрозділ 7.2.2), здійснюють шляхом з’єднання певним чином мультиплексорів з меншою розрядністю. Таке з’єднання називають нарощуванням розрядності або каскадуванням мультиплексорів. Існують різні способи нарощування розрядності мультиплексорів. Розглянемо найбільш поширений з них – пірамідальний спосіб.

В цьому випадку, як й при каскадуванні дешифраторів, мультиплексор з конфігурацією N®1 будують як багатокаскадну структуру (рис. 7.16) на основі мультиплексорів з конфігурацією N0®1 (N0 < N), які мають m0 = log2N0 адресних входів. Зазначимо, що на відміну від дешифраторів, які для каскадування пірамідальним способом повинні мати стробуючий вхід, у випадку мультиплексорів наявність такого входу не обов’язкова.

Рис. 7.16. Схематичне зображення структури мультиплексора N ® 1 при пірамідальному способі нарощування розрядності

З урахуванням того, що мультиплексор з конфігурацією N ® 1 має m = log2N адресних входів, загальна кількість каскадів пірамідальної структури дорівнює:

, (7.20)

де зворотні квадратні дужки позначають округлення до більшого найближчого цілого. Кількість ki (i = 1,2,…L) мультиплексорів N0®1 в кожному каскаді визначає формула (7.5), з якої випливає, що загальна кількість M таких мультиплексорів, потрібних для побудови мультиплексора з конфігурацією N ® 1, визначається формулою:

. (7.21)

Адресні входи Aj мультиплексорів з конфігурацією N0®1 одного й того ж каскаду побітово об’єднують між собою. Виходи мультиплексорів i- того каскаду з’єднують з інформаційними входами мультиплексорів i+1- го каскаду. Молодшим бітам вхідного двійкового коду на адресних входах мультиплексора N®1 відповідають побітово об’єднані адресні входи мультиплексорів першого каскаду, а старшим бітам – побітово об’єднані адресні входи мультиплексорів останнього L-того каскаду.

Мультиплексори з пірамідальною структурою, як і дешифратори з подібною структурою, мають меншу швидкодію, оскільки час затримки поширення сигналу для них у L разів більшій (L – кількість каскадів) ніж відповідний параметр для мультиплексорів, на яких побудовано багатокаскадний мультиплексор, тобто

            . (7.22)

Нарощування мультиплексорів пірамідальним способом розглянемо на прикладі мультиплексора з конфігурацією 32®1 (N=32), який треба побудувати на мультиплексорах з конфігурацією 4®1 (N=4). За формулою (7.20) визначаємо кількість рівнів пірамідальної структури L = ]log232/log24[ = ]5/2[ = 3, а за формулою (7.21) - загальну кількість мультиплексорів 4 ® 1: M = ]2-1(26-1)/(22-1)[ = 11. Кількість мультиплексорів на кожному рівні пірамідальної структури можна обчислити за формулою (7.5). На підставі цієї формули одержимо: k1 = ]32/4[ = 8, k2 = ]32/42[ = 2, k3 = ]32/43[ = 1. З урахуванням цих результатів і правил об’єднання входів і виходів мультиплексорів у пірамідальній структурі можна побудувати схему мультиплексора 32®1 так, як показано на рис. 7.17.

Рис. 7.17. Схема мультиплексора 32®1, реалізованого пірамідальним способом на мультиплексорах 4®1

В схемі на рис. 7.17 показані тільки чотири з восьми мультиплексорів першого рівня пірамідальної структури. Проілюструємо принцип дії такого мультиплексора на прикладі, коли на його адресних входах двійковий код 110012 = 2510. В цьому випадку на адресних входах мультиплексорів 4®1 першого рівня пірамідальної структури код 012 = 110, який забезпечує комутацію на вихід цих мультиплексорів інформаційних входів D1 (відмічені хрестиками). На адресних входах двох мультиплексорів другого рівня код 102 = 210, який забезпечує комутацію входів D2 (відмічені хрестиками), а на останньому третьому рівні, завдяки адресному коду 012 = 110, до виходу мультиплексора Y підключено інформаційний вхід D1. Як можна бачити на рис. 7.17, зв’язок виходу мультиплексора Y через помічені хрестиками інформаційні входи є тільки зі входом D25 мультиплексора 32 ® 1, номер якого співпадає з десятковим числом, якому відповідає двійковий коду 11001, що надійшов на адресні входи мультиплексора.

7.2.6. Мультиплексор, як універсальний логічний елемент. Мультиплексор, що має m адресних входів може бути використаним, як логічний елемент, здатний реалізувати будь-яку логічну функцію з кількістю аргументів від одного до m+1 аргументу.

x2 x1 Y
0 0 1 1 0 1 0 1 1 0 1 0

 

а б

Рис. 7.18. Таблиця справжності булевої функції (а) і її реалізація на мультиплексорі 4 ® 1 (б)

При реалізації булевої функції від m аргументів значення аргументів БФ подають на адресні входи мультиплексора, а на інформаційні входи, згідно таблиці справжності, - значення БФ, які відповідають наборам, що утворюють аргументи, подані на адресні входи мультиплексора. На рис. 7.18б показана реалізація булевої функції двох аргументів (таблиця справжності на рис. 7.18а) за допомогою мультиплексора з конфігурацією 4®1, який має m = 2 адресних входи.

Мультиплексор сприймає набір БФ, як адрес інформаційного входу, який він комутує на вихід Y. Тому на виході мультиплексора Y з’являється значення логічної змінної 0 або 1, яке подано на відповідний інформаційний вхід згідно таблиці справжності булевої функції.

При реалізації на мультиплексорі, що має m адресних входів, булевої функції від m+1 аргументу сукупність наборів БФ розділяють на підгрупи, таким чином, щоб старші біти наборів таких підгруп мали однакові значення логічних змінних. Після цього на підставі таблиці справжності визначають значення булевої функції на наборах, що об’єднані в підгрупу. Це значення може дорівнювати 0, 1 або прямому x1 чи інверсному  значенню аргументу, що відповідає  молодшому біту  наборів. Булеві аргументи старших бітів наборів подають на адресні входи мультиплексора, а на інформаційні входи, згідно таблиці справжності, - значення 0, 1, x1 або . На рис. 7.19 показано реалізацію булевої функції трьох аргументів (таблиця справжності на рис. 7.19а) за допомогою мультиплексора, який має m = 2 адресних входи.

x3 x2 x1 Y
0 0 0 0 0 1 0   Y = x1 1
0 0 1 1 0 1 1 Y = 1 1
1 1 0 0 0 1 0 Y = 0 0
1 1 1 1 0 1 1 Y = 0 0

 

а б

Рис. 7.19. Таблиця справжності булевої функції (а)

і її реалізація на мультиплексорі 4 ® 1 (б)

 

В таблиці справжності (рис. 7.19а) показано поділ наборів на підгрупи і наведені значення, які приймає булева функція Y в цих підгрупах. На рис. 7.19б показано, яким чином треба увімкнути мультиплексор для реалізації на його виході Y булевої функції згідно таблиці справжності на рис. 7.19а.

7.2.7. Демультиплексори. Демультиплексор виконує функцію зворотну мультиплексору, тобто роздільно у часі комутує інформацію, яка надходить по одному вхідному інформаційному каналу, на декілька вихідних каналів. Вибір виходу демультиплексора, до якого буде підключено його єдиний інформаційний вхід, відбувається за допомогою n-розрядного двійкового коду, що подається на n адресних входів демультиплексора. Тому демультиплексори у загальному випадку мають n+1 вхід і N = 2n виходів. Комутаційні можливості демультиплексорів характеризують параметром конфігурації, який записують у вигляді 1® N.

Таблиця справжності, що описує логіку роботи демультиплексора з конфігурацією 1®4, який має m = log24 = 2 адресних входи, показана на рис. 7.20. Тут D - булева змінна на інформаційному вході демультиплексора; x1, x2 - булеві змінні на адресних входах демультиплексора; y0, y1, y2, y3 – функції виходів демультиплексора.

D x2 x1 y3 y2 y1 y0
0 1 1 1 1 ´ 0 0 1 1 ´ 0 1 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0

 

Рис. 7.20. Таблиця справжності демультиплексора 1 ® 4

З таблиці справжності випливає, що функції виходів демультиплексора при D = 1 є конституентами одиниці, а при D = 0, не залежно від стану змінних x1, x2, на адресних входах, вони дорівнюють логічному нулю. Тому ці функції можуть бути записані як кон’юнкція конституенти одиниці і логічної змінної D на інформаційному вході демультиплексора:

                                       .              (7.23)

У загальному випадку демультиплексор з конфігурацією 1®2n, який має n адресних входів, описується системою логічних рівнянь

 

                         Yj = D×Kj(xn,xn-1,…xi,…x2,x1), (7.24)

 

де j = 0, 1, 2,..., 2i-1,..., 2n-1, а Kj(xn,xn-1,…xi,…x2,x1) – конституенти одиниці від n булевих змінних xn,xn-1,…xi,…x2,x1.

Порівняння логічного рівняння (7.24) з логічними рівнянням (7.3) для повного дешифратора зі стробуючим входом V показує, що вони співпадають, якщо D = V. Таким чином, дешифратор зі стробуючим входом може виконувати функцію демультиплексора, якщо стробуючий вхід V використовувати як інформаційний вхід демультиплексора, а інші входи дешифратора - як адресні входи демультиплексора. Тому дешифратори зі стробуючим входом називають дешифраторами-демультиплексорами.

Демультиплексори, як самостійні вироби не входять до складу серій інтегральних мікросхем, оскільки в якості таких цифрових вузлів може бути використаний дешифратор, який має стробуючий вхід. Такими дешифраторами-демультиплексорами є мікросхеми: КР1531ИД7 (74F138), КР1533ИД4 (SN74ALS155), КР1533ИД7 (SN74ALS138A), КР1561ИД6 (MC14555B), КР1554ИД14 (MC74AC139), 1564ИД3 (MC54HC154) та інші.

Зазначимо також, що мультиплексори КМОНТЛ, котрі побудовані на двоспрямованих ключах (див. рис. 7.15), які є симетричними до передачі інформації в обох напрямках, поєднують функції мультиплексора і демультиплексора. Їх називають мультиплексорами-демультиплексорами, селекторами-мультиплексорами, селекторами, і позначають на умовних графічних зображеннях як MS або (1«N). Такими мікросхемами, зокрема, є аналогові мультиплексори-демультиплексори: КР1561КП1 (CD4052B) (1«4); КР1561КП2 (CD4052B) (1«8); КР1561КП5 (MC14053B) (1«2).

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

Широке розповсюдження в комп’ютерній техніці отримали прямий, обернений і доповняльний коди, які забезпечують подання знака числа і заміну операції віднімання додаванням.

Ці коди, зокрема, зв’язані з поданням цілих чисел в форматах з фіксованою крапкою (комою) і виконанням арифметичних операцій над ними. В сучасній комп’ютерній техніці використовується знаковий і беззнаковий формати чисел з фіксованою крапкою, які у загальному випадку n-розрядних двійкових чисел мають вигляд:

                   - беззнаковий формат,

                  - знаковий формат,

де xi (i = 1,2,…n) – цифрові розряди (біти), xзн – знаковий розряд (біт), значення якого дорівнює 0 для додатних чисел і 1 – для від’ємних чисел.

Беззнаковий формат використовується для подання модулів чисел. Всі біти в цьому форматі є цифровими. Знаковий формат з фіксованою крапкою застосовують для подання цілих чисел зі знаком. Подання n-розрядного додатного двійкового числа X в прямому [X]п, зворотному [X]з і доповняльному [X]д кодах має однаковий вигляд:

 

             [X]п = [X]з = [X]д = 0.xn-1…xi…x2x1,   (7.25)

 

де крапкою відділено знаковий біт від цифрових бітів. Наприклад, додатне двійкове число X = +1001010 в форматі довжиною один байт має однаковий вигляд для усіх вище перерахованих кодів: [X]п = [X]з = [X]д = 0.1001010.

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

в прямому коді [X]п = 1.xn-1…xi…x2x1;            (7.26)

в оберненому коді [X]о = 1. ;     (7.27)

в доповняльному коді [X]д = 1. . (7.28)

Наприклад, число X = -1001010 в цих кодах має вигляд: [X]п = 1.1001010; [X]о = 1.0110101; [X]д = 1.0110110.

Рис. 7.21. Схема перетворювача прямого коду в обернений код

Перетворювач прямого коду в обернений код згідно (7.25), (7.27) повинен без зміни передавати на вихід цифрові біти числа xi при значенні знакового біту xзн = 0 і інвертувати їх, коли xзн = 1. З виразу для булевої функції виключальне АБО Y = x2 + x1  (див. табл. 4.1) випливає, що вона приймає значення Y = x1, коли x2 = 0 і Y = , коли x2 = 1. Тому, якщо прийняти x2 = xзн, а x1 = xi, то функції виходів Yзн, Yi (i = 1, 2, …, n-1) перетворювача n-розрядного прямого коду xзн.xn-1…xi…x2x1 в обернений код Yзн.Yn-1…Yi…Y2Y1 можна описати логічними рівняннями:

 

Yзн = xзн; Yi = xзн+xi  = , i=1, 2, …, n-1, (7.29)

 

з яких випливає схема перетворювача (рис. 7.21).

Перетворювач прямого коду в доповняльний код має більш складну схему ніж перетворювач прямого коду в обернений код. Згідно (7.28) доповняльний код від’ємного двійкового числа утворюється з його оберненого коду додаванням до молодшого розряду одиниці. Тому операція перетворення прямого коду в доповняльний не є порозрядною і виконується складніше ніж для оберненого коду.

Принципи побудови схеми перетворювача прямого коду в доповняльний розглянемо на прикладі чотирьохрозрядних двійкових чисел, подання яких в прямому коді має вигляд [X]п = xзн.x4x3x2x1. Схема повинна перетворювати цей код в доповняльний, тобто [X]д = Yзн.Y4Y3Y2Y1, Yзн = xзн. У випадку, коли xзн = 0 відповідність між цифровими бітами кодів визначається співвідношеннями: Y4 = x4; Y3 = x3; Y2 = x2; Y1 = x1. З урахуванням (7.28) відповідність між цифровими бітами прямого і доповняльного кодів у випадку xзн = 1 можна записати у вигляді таблиці справжності, показаної на рис. 7.22а.

Результати мінімізації булевих функцій Y4, Y3, Y2, Y1, заданих таблицею справжності (рис. 7.22а), методом діаграм Вейча наведені на рис. 7.22б – 7.22д. Вони приводять до наступних логічних співвідношень:

 

Y4 = x3+ x1+ x2+x4  =  (x3+x2+x1) +

+ x4  = x4 Å(x3 + x2 + x1);

Y3 = x2 + x1 + x3  =  (x2 + x1) + x3  =

= x3 Å(x2 + x1);

Y2 = x2  + x1 = x2 Åx1; Y1 = x1.

 

Прямий код

Доповняльний код

x4 x3 x2 x1 Y4 Y3 Y2 Y1
0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

а

б в
г д

Рис. 7.22. Таблиця справжності перетворювача прямого коду в

доповняльний код (а) та діаграми Вейча для функцій виходу

перетворювача: б – Y4; в – Y3; г – Y2; д – Y1

Врахувавши те, що при xзн = 0 вихідний код перетворювача повторює значення вхідного коду, отримані співвідношення можна записати у вигляді:

            Y4 = x4Å(x3+ x2+x1)xзн; Y3 = x3Å(x2+x1)xзн;

         Y2 = x2Åx1xзн;   Y1 = x1.                           (7.30)

У загальному випадку n-розрядного знакового формату чисел з фіксованою крапкою функції виходів перетворювача прямого коду в доповняльний описують рівняння:

Yn = xзн; Y1 = x1; , j = 2, 3,…, n-1. (7.31)

Схема перетворювача прямого коду в доповняльний код у випадку n=5, побудована на підставі логічних рівнянь (7.30), показана на рис. 7.23.

Рис. 7.23. Схема перетворювача прямого коду в доповняльний код  

Цей перетворювач характеризується високою швидкодією, оскільки час встановлення вихідного коду для нього визначається трьома затримками поширення сигналу (в логічних елементах АБО, І та сума за модулем 2). Слід, однак зазначити, що при зростанні розрядності n вхідного двійкового коду пропорційно зростає також й необхідне число входів елементів АБО, яке обмежено зверху коефіцієнтом об’єднання за входомKоб, що для інтегральних логічних елементів звичайно не перевищує восьми.

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

В цифровій техніці для відображення десяткових чисел використовують семисегментні індикатори на основі електролюмінісцентних приладів, рідких кристалів або світлодіодних матриць (рис. 7.24). Кількість семисегментних індикаторів, що потрібна для відображення десяткового числа визначається його розрядністю. Десяткова цифра, що виводиться з комп’ютера в двійково кодованій десятковій системі числення (див. підрозділ 1.2), поступає на вхід перетворювача двійково-десяткового коду в код керування семисегментним індикатором, виходи якого a, b, c, …, f, g підключають до відповідних виводів сегментів індикатора (рис. 7.24а).

а б

Рис. 7.24. Семисегментний індикатор (а) і відображення

на ньому десяткових цифр (б)

 

Одиничне значення вихідного сигналу перетворювача викликає світіння сегмента, підключеного до цього виходу, а комбінація одиничних сигналів на виходах перетворювача утворює зображення десяткової цифри (рис. 7.24б).

x4 x3 x2 x1 Ya Yb Yc Yd Ye Yf Yg
0 0 0 0 1 1 1 1 1 1 0
0 0 0 1 0 1 1 0 0 0 0
0 0 1 0 1 1 0 1 1 0 1
0 0 1 1 1 1 1 1 0 0 1
0 1 0 0 0 1 1 0 0 1 1
0 1 0 1 1 0 1 1 0 1 1
0 1 1 0 1 0 1 1 1 1 1
0 1 1 1 1 1 1 0 0 0 0
1 0 0 0 1 1 1 1 1 1 1
1 0 0 1 1 1 1 1 0 1 1
1 0 1 0 ~ ~ ~ ~ ~ ~ ~
1 0 1 1 ~ ~ ~ ~ ~ ~ ~
1 1 0 0 ~ ~ ~ ~ ~ ~ ~
1 1 0 1 ~ ~ ~ ~ ~ ~ ~
1 1 1 0 ~ ~ ~ ~ ~ ~ ~
1 1 1 1 ~ ~ ~ ~ ~ ~ ~

 

Рис. 7.25. Таблиця справжності перетворювача двійково-десят-кового  коду  в  код  керування семисегментним  індикатором

Відповідність між двійковим кодом десяткової цифри x4x3x2x1 і кодом на виходах перетворювача YaYbYcYdYeYfYg, який потрібен для залучення відповідних сегментів індикатора для відображення цифри, встановлює таблиця справжності (рис. 7.25). З неї видно, що булеві функції виходів такого перетворювача Ya, Yb, Yc, …, Yf, Yg є частково визначеними. Результати їх мінімізації методом діаграм Вейча, з урахуванням особливостей мінімізації частково визначених БФ (див. підрозділ 3.1.6.) показані на рис. 7.26.

а б в
г д е
   
  ж  

Рис. 7.26. Діаграми Вейча для булевих функцій виходу

перетворювача двійково-десяткового коду в код

керування семисегментним індикатором

 

На підставі рис. 7.26 отримаємо наступну систему рівнянь для булевих функцій виходів перетворювача:

            (7.32)

Для побудови схеми перетворювача в базисі І-НЕ з урахуванням закону де Моргана перепишемо (7.32) у вигляді:

                (7.33)

 

Схема перетворювача, побудованого згідно (7.33), показана на рис. 7.27.

Рис. 7.27. Схема перетворювача двійково-десяткового коду в код керування семисегментним індикатором  

Перетворювачі двійково-десяткового коду в код керування семисегментним індикатором входять до складу деяких серій ІМС. Як приклад розглянемо мікросхему 1564ИД23 (функціональний аналог MM54HC4511), умовне графічне зображення якої наведено на рис. 7.28.

Рис. 7.28. Умовне графічне зображення мікросхеми 1564ИД23  

Тетраду x4x3x2x1 двійкового коду десяткової цифри подають на входи A ¸ D (D = x4, C = x3, B = x2, A = x1) мікросхеми, а її виходи a, b, c, …, f, g підключають до відповідних виводів індикатора. Мікросхема має внутрішній чотирьохрозрядний буферний регістр на D-тригерах, що дає можливість зберігати вхідну тетраду двійково-десят-кового коду. Вхід LE (latch enable – дозвіл защіпки) використовується для дозволу такого зберігання, яке відбувається при подачі на цей вхід високого рівня напруги U1 (LE = 1) і наявності таких же рівнів напруги на входах LT та BI. Вхід LT (lamp test – тест лампи) використовується для тестування індикатора. При наявності напруги низького рівня U0 (LT = 1) на цьому вході, не залежно від стану входів BI та LE, на всі сегменти індикатора подається сигнал високого рівня напруги, тому, якщо індикатор не пошкоджений, всі його сегменти випромінюють світло і він відображує цифру вісім. Вхід BI (blanking indication - гасіння індикації) використовується для дозволу чи заборони індикації. При наявності на цьому вході низького рівня U0 (на вході LT повинен бути високий рівень U1) на всіх виходах перетворювача низький рівень напруги U0 і сегменти індикатора не випромінюють світло, тобто відбувається гасіння. Для дозволу індикації на керуючих входах мікросхеми повинна бути комбінація логічних сигналів LE = 0 (U0), LT = 1 (U1), BI = 1 (U1).

Параметри мікросхеми 1564ИД23, призначеної для перетворення коду 8421 в код керування семисегментним індикатором, наведені в табл. 7.6.

Таблиця 7.6

Параметри мікросхеми 1564ИД23 при температурі 25 оС

 

Параметр Значення Вимір при Ucc, В Одиниця виміру
Напруга живлення, Ucc 2 - 6 - В
Мінімальна вхідна напруга висо-кого рівня, U1вх, (UIH) 1,5 3,15 4,2 2 4,5 6,0 В
Максимальна вхідна напруга низького рівня, U0вх, (UIL) 0,5 1,35 1,8 2 4,5 6,0 В
Мінімальна вихідна напруга ви-сокого рівня, U1вих, (UOH) 3,98   5,48   4,5 (струм ≤ 6,0 мА) 6,0 (струм ≤ 7,8 мА) В
Максимальна вихідна напруга низького рівня, U0вх, (UOL) 0,26   0,26   4,5 (струм ≤ 4,0 мА) 6,0 (струм ≤ 5,2 мА В
Максимальний вхідний струм ±0,1 6,0 мкА
Максимальний вихідний струм, IOUT ±25 - мА
Максимальний струм, спожива-ний у стані спокою, Icc 8,0 6,0 мкА
Максимальний час затримки по-ширення сигналу tзп1,0 (tPHL), tзп0,1 (tPLH) 300 60 51 2 4,5 6,0 нс
Максимальна вхідна ємність, CIN 5 – 10 - пФ

 

 


Дата добавления: 2018-04-05; просмотров: 1209; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!