Лабораторна робота № 3
Проектування кс
Мета роботи: вивчення засобів проектування КС з одним виходом, визначення їхньої складності і швидкодії.
Основні положення
Синтез КС на логічних елементах можна розбити на три етапи.
На першому етапі, виходячи з таблиці істинності, що описує роботу комбінаційної схеми, знаходять мінімальну диз’юнктивну нормальну форму (МДНФ) функції або її заперечення.
Якщо функція, що описує роботу синтезуючої схеми, є не повністю визначена (задана не на всіх наборах), то заздалегідь виробляють оптимальне її довизначення (таке, при якому функція буде мати більш просту МДНФ). На цьому перший етап закінчується.
На другому етапі функцію записують в так званій операторній формі, т.ч. в вигляді суперпозиції операторів логічних елементів. Оператором логічного елементу називають функцію, що реалізується цим елементом. Якщо число входів у операторів достатньо велике, то отримання операторного запису функції зводиться до її подання в одній із стандартних канонічних нормальних форм. Таких форм вісім.
На прикладі мднф функції, заданою діаграмою Вейча на мал.. 1
Х2
Х3
-
0
0
1
1
1
1
1
0
_ _ _ Х1 Мал.1
F(x1,x2,x3) = x2x3 v x1x2 v x2x3
Покажемо спосіб отримання всіх нормальних форм.
Позначати нормальні форми будемо шляхом вказівки внутрішньої і зовнішньої функції розкладу.
Так, у ДНФ внутрішньою функцією є функція І, а зовнішньою АБО, т.ч. ДНФ є формою І-АБО.
Взявши подвійне заперечення МДНФ функції і застосувавши декілька разів правило де-Моргана, послідовно отримаємо наступні нормальні форми:
_ _ _
F(x1,x2,x3) = x2x3 v x1x2 v x2x3 = (Форма І/АБО)
________________
================ ____ ____ ____
_ _ _ _ _ _ (Форма І-НІ/І-НІ)
= x2x3 v x1x2 v x2x3 = x2x3 v x1x2 v x2x3
____________________
_ _ _
(x2 v x3 )( x1 v x2)(x2 v x3) (Форма АБО/І-НІ)
_____ _____ _____
_ _ _
(x2 v x3 ) v ( x1 v x2) v (x2 v x3) (Форма АБО-НІ/АБО)
Отримавши МДНФ заперечення заданої функції тобто
_ _ _ _
F(x1,x2,x3) = x2x3 v x1x2x3
Запишемо ще чотири нормальні форми
__________
_ _ _
F(x1,x2,x3) = x2x3 v x1x2x3 = (Форма І/АБО/НІ)
___ _____
_ _ _
= x2x3 v x1x2x3 = (Форма І-НІ/І)
_ _
= (x2 v x3) (x1 v x2 v x3) = (Форма АБО/І)
___________________
================= ______ __________
_ _ _ _
= (x2 v x3) (x1 v x2 v x3) = (x2 v x3) v (x1 v x2 v x3) =
(форма АБО-НI/АБО-НI)
Нормальні форми дозволяють отримати К. С. з двома рівнями (каскадами) логічних елементів, якщо елементи мають необхідне число входів.
Якщо ж число входів р елементів менше, ніж вимагається для реалізації отриманої нормальної форми, то змінні об'єднують в групи, що містять не більше р елементів, і використовують співвідношення вигляду
x1 , x2 ,…., xm = (x1 … xq) … (xs … xm);
x1 v x2 v….v xm = (x1 v…v xq) v…v (xs v…v xm);
__________________
___________ ====== ======
x1 , x2 ,…., xm = (x1 … xq) … (xs … xm);
________________________
_____________ ======== ========
x1 v x2 v….v xm = (x1 v…v xq) v…v (xs v…v xm);
Число груп змінних також не повинно перевищувати р. В противному випадку означені перетворення виконують по відношенню до груп змінних. Такі перетворення дозволяють уявити задану функцію в операторній формі з урахуванням числа входів елементів.
Отримана в цьому випадку форма не буде нормальною, так як за рахунок додаткового каскадування елементів К.С. буде містити більш 2х рівнів.
На третьому етапі по операторним представленням функцій складається КС. Задана система елементів дозволяє реалізовувати одне або декілька операторних представлень функцій. Наприклад, за наявності елементів І, АБО, і І-НI можна використати в якості вхідної одну з п'яти нормальних форм (І/АБО, І-НI/І-НI, АБО/І-НI, І-НI/І, АБО/I) для отримання відповідних операторних представлень з урахуванням числа входів елементів.
Для вибору однієї схеми з декількох можливих необхідно порівнювати їх за заданими параметрами. Найбільш часто такими параметрами є складність і швидкодія схем.
Існує декілька засобів оцінки складності:
складність по Квайну (К), що визначається як сумарне число входів всіх логічних елементів;
складність по числу логічних елементів М;
складність по числу умовних корпусів мікросхем, що визначається формулою
N =
Де r – число типів мікросхем, mi – кількість мікросхем і-го типа; ni – число виводів мікросхем і-го типу. В якості умовного використовується корпус ІМС на 14 виводів.
Параметри К, М доцільно використати при проектуванні інтегральних схем, бо їхня вартість залежить від площі кристалу, що пропорційній числу логічних елементів і числу їхніх входів.
Оцінка N зручна при порівнянні складності приладів, побудованих на мікросхемах.
Швидкодія комбінаційних схем залежить від тимчасових параметрів логічних елементів t01, t10, затримку сигналів, що характеризують елементом (час переходу вихідного сигналу від одного логічного рівня до іншого). На практиці використовують середнє значення часу затримки t = (t01 + t10)/2 або максимальне t*= max (t01 , t10).
Наприклад, для комбінаційної схеми на однотипних елементах середній час затримки сигналів визначається як T = Lt , де L – рівень схеми, що дорівнює кількості елементів, які складають найдовший ланцюг елементів. Якщо є елементи з різною затримкою, то в схемі визначається шлях, що вимагає максимального часу розповсюдження сигналів.
При реалізації б.ф. в ряді випадків можна зменшити кількість корпусів мікросхем, використовуючи мікросхеми середнього ступеня інтеграції, наприклад, дешифратори і мультиплексори.
Оскільки дешифратор на n входів реалізує всі конституенти одиниці, то для реалізації перемикальної функції від n змінних достатньо з допомогою елементів АБО отримати диз’юнкцію конституент одиниць тих наборів, на яких функція приймає одиничні значення. Якщо дешифратор має інверсні виходи то в відповідності з правилом де – Моргана замість елементу АБО слідує використати елементи І-НІ.
Наприклад, функцію
_ _
Y= x1x2x3 v x1x2x3 v x1x2x3 = 3 v 5 v 7 , представлену в СДНФ, можна реалізувати з допомогою трихвхідного дешифратора з прямими (мал. 2а) або інверсними (мал. 2б) виходами.
DC 0
X3 1 1
2
X2 2 3
4 1 Y
X1 5
4 6
7
Мал.2а.
DC 0
X3 1 1
2
X2 2 3
4 & Y
5
X1 4 6
7
Мал.2б.
Мультиплексор з N інформаційними входами і k=log2N керуючими входами дозволяють виключити k з n змінних перемикальної функції, уявивши її через залишкові функції, кожна з яких залежить не більш ніж від n-k змінних.
Так функція y = f(xn, …x1) може бути представлена в формі
_ _ _ _
У = x1x2f0(xn,…,x3) v x1x2f1(xn,…,x3) v x1x2f2(xn,…,x3) v x1x2f3(xn,…,x3),
де f0, f1, f2, f3 залишкові функції від n-2 змінних. Схема, відповідна такому поданню функції, показана на мал. 3
Xn
f0 0 MS
X3 1
2
f1 3 f
S
f2 X1 2
X2 1
f3
Мал. 3.
Залишкові функції можуть бути реалізовані будь-яким засобом. Зокрема, кожна з них може бути подана через свої залишкові функції з використанням мультиплексорів. В кожному конкретному випадку необхідно оцінити складність схем при тому або іншому засобі реалізації функції. Помітимо, що складність схем залежить від того, що змінні виключаються. Для отримання найбільш простої схеми може знадобитися перебір всіх комбінацій, що виключають змінні.
При реалізації функцій від чотирьох змінних з використанням мультиплексора, який має два керуючих входи, можна виключити шість різних пар змінних (х4х3, х4х2, х4х1, х3х2, х3х1, х2х1). При виключенні кожної пари змінних діаграму Вейча заданої функції (мал. 4) можна розглядати як чотири самостійні діаграми для залишкових функцій.
Х3
-
Х4
10
0
1
Х2
01
1
0
0
1
0
0
0
1
1
1
Х1 Мал. 4.
На мал. 5 показані всі шість варіантів визначення залишкових функцій. Змінні, що виключаються, вказані біля діаграм для кожного варіанту.
X4X3 X4X2 X3
1
0
0
1
1
0
0
1
0
1
1
0
X2
0
1
1
0
0
1
0
0
0
1
1
1
0
1
0
0
0
1
1
1
X4X1
X3
1
0
0
1
0
1
1
0
X1
1
0
0
1
X2 X4
1
0
0
0
0
1
1
0
1
1
1
0
0
1
0
0
0
1
1
1
X3X2
1
0
0
1
X3
1
0
0
1
0
1
1
0
0
1
0
0
0
1
1
0
0
1
0
0
0
1
1
1
0
1
1
1
X1
Мал. 5.
Схеми на елементах, що відповідають кожному варіанту, показані на малюнку 6.
_ _ X4X3
Х2 Y0 =X2
X1 Y1 = X1
X
__________
____
____ _ _
Y2=Y3=
X1X2·X1X2
X2 &
_&
X1
_
X2 &
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
_ X4X2
X1 ____
X3 & Y0 = X1X3
X1 Y1 =X1X3
X3 & & _
_Y2=X1
X1
`X1 Y3=X1
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
_ X4X1 ___ __ __
Х2 & & Y0=X3X2
_
Х3 ____
__
X3 & Y1=X3X2
X2 _
_ Y2=X2
X2
X2 Y3=X2
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
X1 ____ X3X2
X4 & & Y0 = X1X4
Y1 = X1X4 Х4
_
X1 & _________
_& ___ ___
X4 & _ _
X1 Y2 =X4X1 X4X1
X1 Y3 =X1
---------- _ ----------------------------------------------------------------------------------- _ -------------------------------------
X2 Y0 = X2 X3X1 _ _________
X4 ___
_& _ _ ____
X2 & Y1=X4X2 X4X2
X4 & _
X2 & Y2=X4X2
X4 ____
_ & _
X2 Y3=X4X2
-----------_ -----------------------------------------------------------------------------------------------------------------------------
X4 ____ X2X1 __
X3 & Y0=X4X3
_ _
X4 Y1=X4
0Y2=0
_
X4 ____
_& _ _
X3 Y3=X4X3
Мал. 6.
Найбільш простою реалізацією заданої функції є при вилученні за допомогою мультиплексора змінних Х1 і Х2 (мал. 7).
При побудові схем слід враховувати вантажну спроможність виходів мікросхем і, при необхідності, усувати перевантаження відповідною розв'язкою.
_
X4
& _ 0 MS
X3 Х4 1
0 2
3 У
_ S
Х4 X2 2
_ & X1 1
Х3
Мал. 7.