ТИПОВІ ПРИСТРОЇ ОБЧИСЛЮВАЛЬНИХ СИСТЕМ

(Для самостійного вивчення)

 

Вхідний контроль:

1 Які типові цифрові пристрої Ви знаєте?

2 Чим відрізняються комбінаційні і послідовнісні пристрої?

3 Які елементи є основою для побудови цифрових пристроїв?

 

До типових пристроїв мікропроцесорних систем можна віднести такі пристрої: двійкові суматори, цифрові компаратори, арифметично-логічний пристрій, запам’ятовувальні пристрої, пристрої введення-виведення інформації, таймери, програмовані логічні інтегральні схеми (ПЛІС) тощо.

 

Суматори

 

Суматор – це вузол обчислювальної системи, що виконує арифметичне додавання кодів двійкових чисел. Суматор будується з комбінаційних схем, які виконують додавання двох однорозрядних двійкових чисел a i b, формують однорозрядний сигнал їхньої суми – S і сигнал перенесення в наступний старший розряд – C. Такі пристрої називають напівсуматорами і вони є елементною базою для побудови повних суматорів. Умовне графічне позначення такої схеми показано на рис. 4.1.

 
 

 

 


Рисунок 4.1 – Умовне графічне позначення комбінаційного напівсуматора

 

Схема повного однорозрядного суматора буде різнитися тим, що одним із вхідних сигналів, додатково до операндів a i b, буде значення вхідного перенесення, яке буде додаватися до результату. Алгоритм роботи повного однорозрядного суматора можливо описати за допомогою таблиці істиності – табл. 4.1.

 

Таблиця 4.1 – Таблиця істиності однорозрядного суматора

Вхідне перенесення c Додаток a Додаток b Вихідне перенесення C Сума S

 


 

Закінчення табл. 4.1
Вхідне перенесення c Додаток a Додаток b Вихідне перенесення C Сума S

 

За даними цієї таблиці можливо виконати синтез схеми повного суматора. Після чого буде видно, що ця схема є поєднанням схем двох напівсуматорів. Схему повного суматора показано на рис. 4.2.

 
 

 


Рисунок 4.2 – Схема повного однорозрядного суматора

 

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

Багаторозрядні суматори будуються як схеми паралельного з’єднання повних однорозрядних суматорів з послідовними лініями міжрозрядних перенесень. Приклад схеми такого суматора показано на рис. 4.3.

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

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

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

Тпер = τ∙n,

де τ – затримка сигналу в одному розряді суматора; n – кількість розрядів. Видно, що ця величина швидко зростатиме зі збільшенням кількості розрядів.


 
 

 


Рисунок 4.3 – Схема n-розрядного комбінаційного паралельного суматора

 

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

Для усунення цього недоліку, можливо використовувати схему суматора з паралельним перенесенням. В такому суматорі додавання виконується як порозрядна операція і вхідне перенесення для кожного старшого розряду формується незалежно від формування перенесення у попередньому молодшому розряді. Для всіх розрядів сигнали перенесення також формуються паралельно. Формування сигналів перенесення відбувається в результаті формування й оброблення додаткових двох сигналів: розповсюдження перенесення (CRP – Carry Propagation) і генерування перенесення (Carry Generation). Затримка отримання суми в такому суматорі складається із однакових значень затримки перенесення для всіх розрядів, які не залежать від кількості розрядів. Слід зазначити, що апаратні затримки в такій схемі швидко зростають відповідно до збільшення кількості розрядів, тому в чистому вигляді такий тип суматора майже не використовується. Для незначної кількості розрядів (до 8) промисловість випускає спеціальні мікросхеми – схеми прискореного перенесення.

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

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

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

 

Контрольні питання:

1 Яке призначення схеми суматора?

2 Які умови формування сигналів на виходах однорозрядного суматора?

3 В чому полягає причина низької швидкодії паралельного суматора?

4 Якими способами можливо підвищити швидкодію суматора?

 

Контрольні питання підвищеної складності:

1 В чому полягає принцип групового перенесення?

2 Поясніть причину формування затримки сигналу у схемі паралельного суматора?

 

Цифрові компаратори

 

Вхідний контроль:

1 Який пристрій називається компаратором?

2 Для чого використовується компаратор?

 

Цифровим компаратором називають функціональний вузол обчислювальної техніки, який порівнює два багаторозрядних числа A i B між собою і результат порівняння подає у вигляді сигналів співвідношення між ними A = B, A < B, A > B.

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

- якщо результат дорівнює 0, то це є ознакою того, що значення A i B співпадають;

- якщо результат не дорівнює 0, а вихідне переповнення дорівнює 1, то A < B;

- якщо вихідне переповнення дорівнює 0, то це є ознакою, що A > B.

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

Умовне графічне позначення компаратора, який показано на рис. 4.4, наведено на рис. 4.5.

Для нарощування розрядності вхідних даних цифрові компаратори дозволяється каскадувати, для чого набір вхідних сигналів компаратора доповнюють вихідними сигналами попереднього каскаду A = B, A < B, A > B (рис. 4.5). Формування кінцевого результату порівняння відбувається з урахуванням цих сигналів.

 
 

 


Рисунок 4.4 – Функціональна схема чотирирозрядного

цифрового компаратора

 
 

 

 


Рисунок 4.5 – Умовне графічне позначення чотирирозрядного

цифрового компаратора

 

Контрольні питання:

1 Як виконується порівняння двох двійкових чисел у цифровому компараторі?

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

 

Контрольні питання підвищеної складності:

1 На підставі якої ознаки приймається рішення, що A = B?

2 На підставі яких ознак приймається рішення, що A > B?