Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OCE_5.doc
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
17 Мб
Скачать
☆

13.9. Арифметично-логічні вузли

Суматор призначений для арифметичного додавання двох чисел. При додаванні двох багаторозрядних двійкових чисел у кожному i-му розряді знаходиться сума трьох чисел по модулю два (доданки Аі, Ві і перенос, що поступив із молодшого розряду Рі) і формується сигнал переносу в старший розряд Pі+1. Складем таблицю істинності однорозрядного суматора (табл. 13.6). На основі аналізу таблиці запишемо логічні функції для вихідних величин:

Таблиця 13.6

Вхід

Вихід

Доданки

Перенос

Сума

Перенос

Аі

Bi

Pi

Sі

Рі+1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

0

0

0

0

1

1

1

1

0

1

1

0

1

0

0

1

0

0

0

1

0

1

1

1

По цих функціях можна побудувати суматор на інверторах, елементах І і елементах АБО (рис. 13.24, а). Для додавання двох багаторозрядних двійкових чисел використовують багаторозрядні суматори, що представляють собою в найпростішому виді послідовне з'єднання однорозрядних суматорів (рис. 13.24, в).

Сигнал переносу, що виникає на виході кожного і-розряду, є одним із трьох доданків для наступного однорозрядного суматора. Усі проміжні сигнали переносу (обведені пунктиром) на зовнішні виходи сумматора не надходять. Швидкодія суматора з послідовним формуванням сигналу переносу визначається випадком, коли при додаванні А і В одиниця переносу виникає послідовно в кожнім розряді, і, отже, час підсумовування буде найбільшим і рівним Тзат.п=ntзат.п - час затримки поширення сигналу переносу в одному розряді. Для підвищення швидкодії створюють схеми суматорів з паралельним переносом, принцип побудови яких подібний побудові лічильників з наскрізним переносом (синхронні лічильники).

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

Рис. 13.24. Суматор

Розв’язання цієї задачі (визначення рівності двох багаторозрядних чисел А і В) може бути розбите на два етапи. На першому встановлюють рівність кожного розряду двох чисел (Аі=Ві=1 чи Аі=Ві=0). Логічним елементом, що виконує цю операцію, є суматор по модулю два, для якого справедлива рівність Y= яка показує, що вихідний сигнал, Y має низький рівень тільки при А=В. На другому етапі з'ясовують, чи мають вихідні сигнали всіх суматорів по модулю два низький рівень. Цю операцію виконує багатовходовий елемент І для вхідних сигналів низького рівня. Вихідний сигнал 0 цього елемента, мабуть, дорівнює: .

Таким чином, цифровий компаратор (рис. 13.25), що складається з п елементів, які виконують операцію додавання по модулі 2, і одного п-входового елемента І (по інверсних сигналах), буде мати вихідний рівень Q=l при А=В і Q=0 при АВ. Число п повинне дорівнювати максимально можливій розрядності чисел А і В.

Рис. 13.25. Цифровий компаратор

А

Рис. 13.26. Арифметично-логічний пристрій

рифметично-логічний пристрій. Будь-який пристрій обробки цифрової інформації містить операційний блок, що складається з послідовної і комбінаційної частин. Комбінаційна частина виконує арифметичні і логічні операції над двома багаторозрядними словами і тому складається із суматора, вузла порівняння й інших схем, що виконують різні логічні операції. Однак на практиці доцільніше використовувати спеціальний арифметично-логічний вузол, що міг би здійснювати всі необхідні операції і був би виконаний у вигляді однієї мікросхеми. Такі стандартні вузли арифметично-логічних пристроїв (АЛП), що входять до складу різних серій (наприклад К155ИПЗ, К561ИПЗ), мають умовно-графічне позначення, показане на рисунку 13.26.

Ці ІМС призначені для дій із двома чотирирозрядними двійковими словами А і В. Результат виконання логічних перетворень і арифметичних дій надходить у виді чотирирозрядного слова на виходи F. Крім того, є вхід Ро і вихід Р сигналів переносу, окремий вихід ознаки рівності даних А=В і виходи змінних G0 і G1, які використовуються для нарощування розрядності АЛП при об'єднанні декількох мікросхем. Для полегшення нарощування розрядності обидва сигнали переносу (Р0 і Р1) інверсні стосовно вхідних сигналів А і В, тобто, коли А і В задаються в позитивній логіці, сигналу переносу відповідає низький рівень напруги.

У залежності від набору керуючих сигналів S мікросхема виконує одну з 16 логічних (при S4=1) і одну із 16 арифметично-логічних операцій (при S4=0). При цьому логічні операції виконуються порозрядно над кожною парою однойменних вхідних слів (входи і виходи переносу відключаються), а арифметичні над чотирирозрядними словами з урахуванням сигналу переносу. Реалізовані АЛП функції представлені в таблиці 13.7.

При S4=0 АЛП настроюється на виконання логічно-арифметичних операцій. Порядок дій при цьому такий, що спочатку виконуються необхідні логічні перетворення над вхідними словами (при цьому переноси не враховуються), а потім — арифметичні дії додавання і віднімання з врахуванням переносу Р0.

Операція додавання виконується АЛП, при подачі керуючих сигналів S4, .... S0, які настроюють його на роботу в якості суматора. Для того щоб не ускладнювати конструкцію АЛУ, операцію віднімання (для якої був би потрібний спеціальний пристрій) заміняють додаванням (виконуваним суматором) зменшуваного з від'ємником, представленим у спеціальному коді. Розглянемо цю дію докладніше.

Віднімання двійкових чисел, записаних у прямому коді, подібне відніманню в десятковій системі:

А 10111 23

В 1110 14

F 1001 9

Таблиця 13.7

Вибір функції

Логічна операція S4=1

Арифметично-логічна операція

S4=0

S3

S2

S1

S0

0

0

0

0

F=

0

0

0

1

0

0

1

0

0

0

1

1

0

1

0

0

0

1

0

1

0

1

1

0

0

1

1

1

1

0

0

0

1

0

0

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

Позначення:

V — логічне додавання;

• — логічне множення;

 — додавання по модулю два

+ — арифметичне додавання;

— — арифметичне віднімання;

F=А+A — зсув вліво на один розряд.

Стрілками показана операція «позика», яка проводиться для тих розрядів, для яким від'ємник більший зменшуваного. У десятковій системі займана одиниця старшого розряду дорівнює десятьом одиницям сусіднього молодшого розряду, а в двійковій — двом одиницям молодшого розряду.

Для заміни операції віднімання операцією додавання приходиться представляти від'ємник В в додатковому коді. Додатковий код утвориться зі зворотного (інверсного) коду добавленням до нього одиниці. Так, чотирирозрядний від'ємник В, представлений в прямому коді Впр=В4ВЗВ2В1, може бути представлений й у зворотному коді Взв= і в додатковому коді Вдоп=Взв+1.

Очевидно, для чотирирозрядних чисел, записаних у цих кодах, справедливі рівності

Впр+Взв=1111;

Впр+Вдоп=Впр+Взв+1=1111+1=10 000;

Впр=10 000-Вдоп=10 000-Взв-1.

Отже, операцію віднімання можна представити у виді

Апр-Впр=Апр+Вдоп-10 000.

У такий спосіб в АЛП при виконанні операції віднімання вхідний операнд В перетвориться в додатковий код, а віднімання числа 10 000 проводиться без допомоги спеціальних схем, тільки з використанням сигналу переносу в старший (п'ятий) розряд. Правда, при цьому результат арифметичних дій на виході АЛУ буде також представлений у зворотному коді.

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