Комбінаційні арифметичні вузли 2 страница



Один з можливих способів нарощування розрядності суматорів показано на рис. 7.37. У випадку, коли для нарощування використані суматори з паралельним перенесенням, схема, що наведена на рис. 7.37, є суматором з паралельно-послідовним перенесенням, у випадку використання суматорів з послідовним перенесенням ця схема - суматор с послідовним перенесенням.

Рис. 7.37. Нарощування розрядності суматорів  

При нарощуванні розрядності для організації паралельного перенесення між суматорами можуть бути використані схеми прискореного перенесення, які випускаються як самостійні вироби у складі деяких серій інтегральних мікросхем. Для прикладу наведемо чотирьохрозрядні мікросхеми прискореного перенесення КР1533ИП4 (SN74LS182), КР1531ИП4 (74F182).

Рис. 7.38. Умовне графічне зображення мікросхеми КР1594ИМ6

Двійкові суматори входять до складу серій інтегральних мікросхем ТТЛШ і КМОНТЛ. На рис. 7.38, як приклад, показано умовне графічне зображення і цокольовка мікросхеми комплементарної МОН-транзисторної логіки КР1594ИМ6 (функціональний аналог HD74ACT283). Це чотирьохрозрядний суматор з паралельним перенесенням сумісний за рівнями напруги і струмами навантаження з мікросхемами ТТЛШ. Параметри деяких мікросхем чотирьохрозрядних суматорів з паралельним перенесенням наведені в табл. 7.7.

Таблиця 7.7

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

 

Параметр

Мікросхеми та їх функціональні аналоги

КР1531ИМ6 (74F283) К561ИМ1 (CD4008BMS) КР1554ИМ6 (HD74AC283) КР1594ИМ6 (HD74ACT283)

Uсс, В

4,5÷5,5 5÷20 2÷6 2÷6

I1сп, (IccH), мА

36

0,01 (15 В)

0,008 (5,5 В)

0,008 (5,5 В)

I0сп, (IccL), мА

36

U0вих, (UОL), В

≤ 0,5 ≤ 0,05 ≤ 0,1 ≤ 0,1

U1вих, (UОH), В

³ 2,5 Uсс - 0,05 Uсс - 0,1 Uсс - 0,1

I1вх (IIH), мкА

5 0,1 0,1 0,1

I0вх (IОL), мА

-1,2 1×10-4 1×10-4 1×10-4

I0вих (IОL), мА

≤ -60 ≤ 2,4 ≤ 50 ≤ 50
tPLH, нс

P0®Si

7,0

7,0

310 (10 В)

9,5 (5 В)

8,5 (5 В)

11,5 (5 В)

10,0 (5 В)

tPHL, нс
tPLH, нс

Ai або Bi®Si

7,0

7,0

320 (10 В)

11,5 (5 В)

11,0 (5 В)

13,0 (5 В)

12,0 (5 В)

tPHL, нс
tPLH, нс

P0®P

5,7

5,4

100 (10 В)

7,5 (5 В)

8,0 (5 В)

9,0 (5 В)

10,0 (5 В)

tPHL, нс

 

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

7.3.4. Двійково-десятковий суматор. Суматори багаторозрядних десяткових чисел будують на основі елементарних однорозрядних двійково-десяткових суматорів, що виконують операцію складання двійкових тетрад, які відображують десяткові цифри в двійково кодованій десятковій системі числення (див. підрозділ 1.2). Тому однорозрядний двійково-десятковий суматор можна реалізувати на основі чотирьохрозрядних двійкових суматорів. Такий однорозрядний двійково-десятковий суматор повинен формувати значення однорозрядної десяткової суми в двійково-десятковому коді і значення десяткового перенесення P10 з урахуванням правил десяткової арифметики.

Оскільки при додаванні тетрад двійково-десяткового коду значення суми може перевищувати число 910 = 10012, потрібна корекція результату. Така корекція повинна виконуватись при виникненні десяткового перенесення (P10 = 1), шляхом віднімання від тетради результату числа 1010 = 10102. Оскільки в двійковій арифметиці віднімання заміняється додаванням у доповняльному коді, корекція результату може бути здійснена шляхом додавання до результату доповняльного коду числа мінус десять, тобто [-10102]д = 01102. Отже для побудови однорозрядного десяткового суматора потрібні два чотирьохрозрядних двійкових суматори, один з яких буде додавати двійкові тетради десяткових цифр, а другий – здійснювати корекцію результату.

Для визначення схеми формування десяткового перенесення розглянемо P10, як функцію змінних S4, S3, S2, S1 на виході суматора, який додає тетради десяткових цифр. Цю функцію описує таблиця справжності на рис. 7.39а, а її мінімізація методом діаграм Вейча показана на рис. 7.39б.

S4 S3 S2 S1 P10
0 0 0 0 0
0
1 0 0 1 0
1 0 1 0 1
1 0 1 1 1
1 1 0 0 1
1 1 0 1 1
1 1 1 0 1
1 1 1 1 1

 

а б

Рис. 7.39. Таблиця справжності для функції десяткового

перенесення  P10 (а)  і  результати її мінімізації  методом

діаграм Вейча (б)

Результат мінімізації можна записати у вигляді логічного рівняння:

                                P10 = S4S3 + S4S2.               (7.44)

Слід зазначити, що десяткове перенесення виникає також при значеннях суми тетрад 1610, 1710 і 1810, коли на виході P чотирьохрозрядного двійкового суматора, який додає тетради виникає двійкове перенесення P = 1, тому співвідношення (7.44) треба доповнити:

                     P10 = S4S3 + S4S2 + P = . (7.45)

З урахуванням вище викладеного та співвідношення (7.45) можна побудувати схему однорозрядного двійково-десяткового суматора (рис. 7.40). Тетради двійкового коду десяткових цифр подаються на входи A1¸A4 і B1¸B4 суматора DD1. Якщо при додаванні тетрад P10 = 0, то суматор DD2 додає до результату число 00002 і він передається на вихід без зміни. При виникненні десяткового перенесення P10 = 1 до результату складання тетрад додається число 01102, тобто відбувається десяткова корекція суми.

Рис. 7.40. Схема однорозрядного двійково-десяткового суматора  

На базі однорозрядних двійково-десяткових суматорів (рис. 7.40) нескладно побудувати багаторозрядний паралельний десятковий суматор з послідовним перенесенням шляхом об’єднання виходів P10 і входів P0 суматорів сусідніх розрядів у напрямку від молодших десяткових розрядів до старших. В такому суматорі тетради двійково-десяткового коду одночасно подаються на входи відповідних однорозрядних двійково-десяткових суматорів.

7.3.5. Реалізація операції віднімання на двійкових суматорах. В двійковій арифметиці операція віднімання чисел А = AnAn-1…Ai…A2A1, B = BnBn-1…Bi…B2B1 може бути замінена операцією додавання, якщо від’ємник представити у оберненому або доповняльному коді. Дійсно, різницю двох чисел можна записати як A - B = A + (-B), звідкіля випливає, що різниця може бути замінена алгебраїчною сумою зменшуваного і негативного від’ємника. Оскільки для подання від’ємних чисел в цифровій техніці використовують обернений і доповняльний коди (див. підрозділ 7.2.8), то у загальному випадку різницю двох чисел можна записати як

A – B = A + [-B]з = A + [-B]д =

        = AnAn-1…Ai…A2A1 +  = (7.46)

       = AnAn-1…Ai…A2A1 +  +1.

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

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

На рис. 7.41 наведені схеми увімкнення суматорів для реалізації віднімання чотирьохрозрядних двійкових чисел A = A4A3A2A1 і B = B4B3B2B1.

Зазначимо, що числа A і B, що надходять на входи суматорів (рис. 7.41) можуть бути представлені, як у беззнаковому, так і у знаковому форматі з фіксованою крапкою. У випадку знакового формату біти чисел A4 і B4 будуть знаковими, а знак результату буде відображати біт суми S4.

а б

Рис. 7.41. Схеми увімкнення суматора для виконання операції

віднімання в оберненому (а) і доповняльному (б) кодах

 

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

Рис. 7.42. Схема арифметичного вузла для виконання операцій складання і віднімання

При наявності на вході керування In низького рівня напруги U0 (In = P0 = 0) елементи „сума за модулем 2” працюють як повторювачі, тому операнд B передається на входи суматора без зміни і вузол виконує операцію складання A + B. Коли сигнал на вході In має високий рівень U1 (In = 1), елементи „сума за модулем 2” працюють як інвертори. Операнд B передається на входи суматора в оберненому коді, а підсумовування одиниці P0 = In = 1 забезпечує виконання операції віднімання з результатом у доповняльному коді.

7.3.6. Матричні помножувачі. Арифметично-логічні пристрої сучасних комп’ютерів виконують арифметичну операцію множення не мікропрограмним, а апаратним шляхом. Добуток двійкових чисел апаратним шляхом можна отримати за допомогою матричних помножувачів. Такі цифрові вузли будують на основі суматорів і елементарних помножувачів, що формують добуток M однорозрядних двійкових чисел A×і B.

Для визначення схеми однорозрядного помножувача розглянемо арифметичний добуток M, як булеву функцію логічних змінних A, B. Таблиця справжності функції M, побудована з урахуванням правил двійкової арифметики для операції множення, наведена на рис. 7.43а. З неї випливає, що арифметична операція множення однорозрядних двійкових чисел співпадає з логічною операцією кон’юнкція. Саме тому кон’юнкцію називають логічним множенням.

A B M
0 0 1 1 0 1 0 1 0 0 0 1

 

а б

Рис. 7.43. Таблиця справжності однорозрядного двійкового помножувача (а)  і його схема (б)

Таким чином арифметичне множення двох однорозрядних двійкових чисел можна реалізувати на логічному елементі 2І (рис. 7.43б). Побудову помножувачів багаторозрядних двій-кових чисел розглянемо на прикладі множення цілих чисел, а саме чотирьохрозрядного числа A = A4A3A2A1 і двохрозрядного числа B = B2B1. Будемо вважати, що числа представлені в беззнаковому форматі з фіксованою крапкою, тобто всі біти формату є цифровими. Саме в беззнаковому форматі виконується сама процедура множення чисел в АЛП комп’ютера, для чого попередньо числа у знаковому форматі перетворюються у беззнаковий формат, а знак добутку визначається з урахуванням значення знакових бітів співмножників.

Структура матричних помножувачів тісно пов’язана зі структурою математичних виразів, що описують операцію множення, зокрема з відомою схемою „множення стовпчиком”. Така схема у випадку чотирьохрозрядного множеного A = A4A3A2A1 і двохрозрядного множника B = B2B1. має вигляд:

                               A4           A3           A2           A1

                            ´

                                                                        B2           B1

                    

                           A4B1       A3B1        A2B1       A1B1

    +

       A4B2       A3B2       A2B2        A1B2           

M6      M5            M4             M3            M2          M1  

 

Звідкіля для значень розрядів добутку Mі (і = 1, 2,...,6) випливають наступні співвідношення:

                           ,    (7.47)

де знаком „+” позначена арифметична операція складання, а P1 ¸ P4 -значення перенесень, що виникають при додаванні розрядів часткових добутків.

Оскільки однорозрядні арифметичні добутки AiBi, як показано вище, можна отримати за допомогою логічних елементів 2І, для побудови матричного помножувача згідно (7.47) потрібно вісім таких елементів. З співвідношення (7.47) також випливає, що для порозрядного складання добутків AiBi для отримання добутку багаторозрядних чисел A і B потрібен чотирьохрозрядний двійковий суматор, у схемі якого формуються і враховуються внутрішні перенесення P1 ¸ P4 (див. підрозділ 7.3.3). Схема матричного помножувача показана на рис. 7.44.

Рис. 7.44. Схема матричного помножувача двійкових чисел

На виході схеми формується двійкове число M6M5M4M3M2M1   у  беззнаковому форматі, яке є добутком чотирьохзначного A4A3A2A1 і двохзначного B2B1 чисел у такому ж форматі. Час виконання операції множення tM складає

tM = tзп кон + tS,  (7.48)

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


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

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






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