Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
DE3.doc
Скачиваний:
20
Добавлен:
19.11.2019
Размер:
1.54 Mб
Скачать

3.2.2. Пристрої зсуву

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

П рипустимо, що нам необхідно спроектувати пристрій, на вхід якого подаються дані по лініях d3 d2 d1 d, котрі необхідно передавати на вихідні лінії y3 y2 y1 y0 зі зсувом від 0 до 3 розрядів у залежності від значення адресного двійкового коду А (рис. 3.16). Оскільки при одночасному виконанні зсуву можливі лише чотири комбінації, то для їх забезпечення достатньо мати лише дві нитки адресного слова А = a1 a0 . Тоді функціональні залежності для кожного з виходів yi матимуть наступний вигляд:

(3.10)

З формул (3.10) витікає, що схема зсуву складається з чотирьох мультиплексорів, адресні входи яких з’єднані паралельно, а розряди шини даних приєднані до загальної шини даних зі зсувом одна відносно іншої на один розряд (рис. 3.17).

Рис. 3.17

3.2.3. Селектори-мультиплексори

Порівняно з мультиплексорами ТТЛ, мультиплексори, виготовлені за КМОН-технологією, мають суттєву різницю, яка полягає в використанні двонаправлених ключів, керованих через спеціальний перетворювач кодів. Тому схема комутації такого приладу має вигляд, приведений на рис. 3.18.

Рис. 3.18

Особливість такої схеми полягає у тому, що ключі DD5…DD8, як відмічалось у Розділі ІІ, мають двонаправлену провідність, низький опір і однаково проводять як імпульсні, так і аналогові сигнали. Це відкриває можливість використовувати їх не тільки для комутації входів на вихід Y, а й розв’язувати ряд задач іншого характеру.

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

Інший приклад використання таких приладів – це застосування їх у якості демультиплексорів. Робота у такому режимі полягає в тому, що двійковий цифровий код може подаватись на вхід Y, а зніматись побітово з виходів , забезпечуючи тим самим перетворення послідовного формату в паралельний.

Прикладом мультиплексора КМОН, що побудований за таким принципом, можна назвати мікросхему К564КП2 (4051BDC, CD4051BCM) – мультиплексор 8:1 і мультиплексор 2(4:1).

3.3. Кодуючі та декодуючі пристрої

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

Найпростішим перетворювачем кодів можна вважати кодер, який, незалежно від коду, що подається на його вхід (прямий чи зворотний), на виході завжди видає прямий код (рис. 3.19).

Схема в кожному біті перетворювача реалізує операцію:

,

у зв’язку з чим при наявності у знаковому розряді одиниці (від’ємне число) код порозрядно інвертується, а при передається без змін.

У багатьох серіях такий перетворювач може бути реалізований на мікросхемі ЛП5.

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

Розглянемо декілька прикладів розробки перетворювачів кодів.

Приклад 3.10. Створити перетворювач двійкового коду в прямий код семисегментних індикаторів для відображення цифр десяткової системи числення.

Розв’язання. Умовне розміщення світлодіодів матриці семисегментного індикатора наведене на рис. 3.20.

Рис. 3.20

Відповідно до нього, створюємо таблицю істинності перетворювача (Табл. 3.5), приписуючи значення логічної “1” тому світлодіодові, що засвічується при відображенні цифри, та логічного “0” – у протилежному випадку.

Використовуючи Табл. 3.5, можемо записати логічні функції роботи кожного світлодіода у ДДНФ:

Даний перетворювач кодів може бути реалізований в базисі ЛЕ І-АБО-НІ.

Звернемо увагу на те, що проектованим комбінаційним пристроєм не використовуються комбінації вхідних сигналів від 1010 до 1111, яким відповідають десяткові числа від 10 до 15, тобто логічні функції, котрі описують роботу світлодіодів семисегментного індикатора, є неповністю визначеними. Довизначивши їх одиницями і скориставшись даними Табл. 3.5, представляємо кожну логічну функцію у вигляді карти Карно (рис. 3.21) й мінімізуємо.

Рис. 3.21

Після мінімізації знаходимо:

Т ехнічна реалізація вказаних функції в базисі І-АБО-НІ не викликає складностей.

Табл. 3.5 відповідає логіці роботи дешифратора К564ИД5 (CD4056BE, HCC4056BD, TC4056BF). Умовне графічне позначення дешифратора К564ИД5 приведено на рис. 3.22.

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

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

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

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

Карти Карно для вихідних функцій перетворювача прямого двійкового коду в доповнюючий приведені на рис. 3.23.

Рис. 3.23

Мінімізовані значення логічних функцій:

З аналізу приведених формул можна знайти загальний вигляд функції для і-го розряду вихідної функції:

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

Аналогічно вирішуються задачі і при проектуванні двійково-десяткових перетворювачів кодів (Див. Розділ І). Наприклад, для перетворення двійково-десяткового коду в код “з надлишком 3” економніше використовувати суматор, що додає число 11 (3 – в двійковому коді) до молодших розрядів числа.

У залежності від характеру перетворення інформації, ці операції називають шифруванням або дешифруванням (широко використовується також термінологія кодування та декодування). Шифрування полягає у перетворенні m-розрядного коду з km байдужих наборів вхідних змінних в однозначно відповідний йому n-розрядний код з меншим числом розрядів (n < m) і байдужих наборів. Під байдужими наборами в будь-якому коді маються на увазі ті набори, які не використовуються при перетворенні. Пристрої, які виконують вказані операції, називаються відповідно шифраторами та дешифраторами (кодерами та декодерами).

Приклад 3.12. Розробити схему шифратора для перетворення десяткового коду з клавіатури калькулятора в відповідний йому двійково-десятковий код.

Розв’язання. Приймемо, що при натисканні відповідної клавіші (0...9) низький рівень відповідного сигналу перетвориться в чотирьохрозрядний двійковий код від 0000 до 1001. Таблиця шифратора “з 10 в 4” (і, відповідно, дешифратора “з 4 в 10”) приводиться нижче (Табл. 3.6).

З Табл. 3.6 витікає, що для кожної клавіші вхідного коду характерною є лише одна з можливих комбінацій 1 та 0. До решти комбінацій проектований кодер повинен бути байдужим.

Аналогічно, у вихідних комбінаціях значень не використовуються набори від 1010 до 1111.

Реалізація такого перетворювача може бути виконана з використанням формул:

Табл. 3.6 близька до таблиці станів шифратора К555ИВ3 з тією лише різницею, що виходи останнього y0y3 – інвертовані.

До складу кодуючих пристроїв часто входить пристрій для виділення старшої одиниці. Робота цього пристрою полягає в тому, що одиниця на виході і-го розряду при наявності одиниці на його вході можлива лише тоді, коли на входах всіх старших розрядів мають місце нулі. Тобто для чотирьохрозрядного перетворювача слова x3 x2 x1 x0 в y3 y2 y1 y0 повинні бути справедливими наступні співвідношення:

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

Технічна реалізація модуля на базі ТТЛ-елементів І-НІ приведена на рис. 3.24.

Логіка роботи схеми описується формулами:

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

У мікросхемах ТТЛ подібним пріоритетним шифратором є мікросхема К1533ИВ1 (зарубіжні аналоги – 74148PC, SN74148N).

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

Рис. 3.25

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

Дешифратор “з 4 в 10” також описується таблицею, аналогічною табл. 3.6.

Наприклад, мікросхема К561ИД1 (зарубіжні функціональні аналоги – 4028BDC, BU4028B, CD4028AD) є перетворювачем прямого чотирьохрозрядного двійково-десяткового коду в прямий десятковий, який часто називають унітарним кодом, оскільки сигнал логічної “1” (“0”) може бути лише на одному з виходів (див. рис. 3.26).

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]